場所参照表現タグ付きコーパス Ver 0.1 (2015/05/25)

概要

本コーパスは,Twitterからランダムにサンプリングしたテキストに現れる,「特定の場所を著者が想定している」と判断できる表現に対して,実際にどのエンティティを指しているかを人手で判断しエンティティ情報を付与したコーパスです.GeoNLPなどのジオパーズシステム,エンティティリンキングシステム等の開発や評価に利用することを想定して構築されました.

本コーパスには以下のような特徴があります.

制限

現在のところ,まだ規模は大きくありません(10000ツイート/500エンティティ規模,詳しくは統計をご覧ください)が,プレビューとして公開しています. また,以下のような制限があることをご承知ください.

ダウンロードリンク

データ仕様

タグ付きコーパス・および辞書はJSON形式で提供されます.1行が1ツイートを表すオブジェクトになっています。

母集団コーパスのサンプリング方法

ボットや定形ツイート(Foursquare, Swarm等)をできるだけ排除するため,以下の手順でフィルタリングを行ったコーパスに対してアノテーションを付与しています.NL研論文におけるランダムサンプリングサブコーパスに相当します(フィルタードサブコーパスの提供予定は現時点ではありません).

  1. 2014年8月〜11月にツイートされた日本語ツイート(言語の誤判定もわずかに含まれます)のうち,Mention, RTではないもの
  2. ツイートに用いられたクライアント(ツイートの"source"フィールド)がホワイトリスト(現在非公開)に含まれるもの

JSON Schemaによる形式的な定義

簡単なバリデートスクリプト(validate.rb)を同梱しています. 同梱の schema.json もご覧ください.

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "properties" : {
        "id_str": {
            "type" : "string",
            "description" : "ツイートのIDを表します.Twitter APIの id_strがそのまま入っています."
        },
        "lre_annotation":{
            "type" : "array",
            "description" : "該当ツイートに付与されたアノテーション結果の配列です",
            "items" : {
                "type" : "object",
                "required" : ["surface", "start", "end", "entityClass", "entities"],
                "properties" : {
                    "surface" : {
                        "description" : "アノテートされたLREのツイート上の表層を表します",
                        "type" : "string"
                    },
                    "start" : {
                        "description" : "アノテートされたLREのツイート上の文字列の開始位置(n文字目から)を表します",
                        "type" : "integer"
                    },
                    "end" : {
                        "description" : "アノテートされたLREのツイート上の文字列の終了位置(n文字目まで)を表します",
                        "type" : "integer"
                    },
                    "entityClass" : {
                        "description" : "アノテーターによって付与された表現の種類を表します",
                        "enum" : [
                            "facility", "facility-OOG", "facility-UNSP", "location", "location-OOG", "location-UNSP",
                            "rail", "road", "generic", "fiction", "other"
                        ]
                    },
                    "note" : {
                        "type" : "string",
                        "description" : "アノテーターによるコメントがある場合,ここに挿入されます"
                    },
                    "entities" : {
                        "description" : "アノテーターによって付与されたエンティティの配列です.エンティティはGeoJSON Feature Object(http://geojson.org/geojson-spec.html)としてエンコードされることを想定していますが,施設名のエンティティに関してはYahoo!ロコのURLを残して他の情報は削除しています.",
                        "type" : "array",
                        "items" : {
                            "type" : "object",
                            "description" : "GeoJSON Feature オブジェクトに対する最低限のバリデーターです",
                            "required" : ["geometry", "type"],
                            "properties" : {
                                "geometry" : {
                                    "type" : "object",
                                    "properties" : {
                                        "coordinates" : {
                                            "type" : "array", "minItems": 2,
                                            "items": [ { "type": ["number",null] }, { "type": ["number",null] } ],
                                            "additionalItems": false
                                        }
                                    }
                                },
                                "type" : { "type" : "string" }
                            }
                        }
                    }
                }
            }
        }
    },
    "required" : [
        "id_str","lre_annotation"
    ]
}

データ例

配布するデータには text フィールドは含まれません.

地名を含む例

{
  "id_str": "526281203054XXXXXX",
  "text": "新宿を久しぶりに闊歩した",
  "lre_annotation": [
    {
      "start": 0,
      "end": 2,
      "surface": "新宿",
      "note": "",
      "entityClass": "location",
      "entities": [
        {
          "properties": {
            "altnames": [
              "新宿",
              "新宿区"
            ],
            "note": "",
            "address": "新宿区歌舞伎町1−4−1",
            "prefix": "",
            "suffix": "区/",
            "ne_class": "市区町村/特別区",
            "address_level": 3,
            "code": "lasdec:131041/jisx0402:13104",
            "entry_id": 13104,
            "hypernym": "東京都",
            "body": "新宿",
            "surface": "新宿区"
          },
          "geometry": {
            "coordinates": [
              139.70343,
              35.6939
            ],
            "type": "Point"
          },
          "type": "Feature"
        }
      ]
    },
  ]
}

施設への参照を含む例

{
  "id_str": "527412572522XXXXXX",
  "text": "今日の映画はMOVIXでしかやってないから珍しく利府なう",
  "lre_annotation": [
    {
      "start": 6,
      "end": 11,
      "surface": "MOVIX",
      "note": "",
      "entityClass": "facility",
      "entities": [
        {
          "properties": {
            "url": "http://loco.yahoo.co.jp/place/649c171a7fdb49261e4700d1501b93b8c022f067/"
          },
          "geometry": {
            "coordinates": [
              null,
              null
            ],
            "type": "Point"
          },
          "type": "Feature"
        }
      ]
    },
    {
      "start": 24,
      "end": 26,
      "surface": "利府",
      "note": "",
      "entityClass": "location",
      "entities": [
        {
          "properties": {
            "altnames": [
              "利府",
              "利府町"
            ],
            "note": "",
            "address": "宮城郡利府町利府字新並松4",
            "prefix": "",
            "suffix": "町/",
            "ne_class": "市区町村/町",
            "address_level": 3,
            "code": "lasdec:044067/jisx0402:04406",
            "entry_id": 2310,
            "hypernym": "宮城県/宮城郡",
            "body": "利府",
            "surface": "利府町"
          },
          "geometry": {
            "coordinates": [
              140.97684,
              38.33084
            ],
            "type": "Point"
          },
          "type": "Feature"
        }
      ]
    }
  ]
}

entityClassについて

表現が指し示すであろうエンティティの種類を表す情報です.以下の11種類のタグが存在します.

タグ 説明
facility 施設名 仙台駅、ハチ公前、東北大学
facility-UNSP 施設名であることは確かだが,どのエンティティを指しているか文脈からは分からなかったもの 職場、駅、といった一般名詞による参照表現が多く含まれます
facility-OOG 施設名であることは確かだが,該当するエンティティが辞書に収録されていないもの 海外の施設(ホワイトハウス、自由の女神等)や、電話番号が付与されないエンティティ(高速ICなど)が漏れる傾向があることが分かっています。
location 地名 仙台、渋谷、片平
location-UNSP 地名であることは確かだが,どのエンティティを指しているか文脈からは分からなかったもの 市、県、といった代名詞的な表現が多く含まれます
location-OOG 地名であることは確かだが,該当するエンティティが辞書に収録されていないもの 外国の地名、東三河などの広域地名が含まれます
rail 鉄道路線を表す表現 京浜東北線、仙石線、田園都市線
road 道路を表す表現 4号線、東北道、外環
generic 総称的な表現(今後の分析のため、「特定の」場所を指していない場所表現の一部にタグを付与しています)(NL研論文の分析対象外)  英語の "a hospital" に訳されるような、不定の「病院」に対するメンション等
fiction どこかの場所を指していることは確かであるが,現実世界の場所ではないもの(NL研論文の分析対象外) ゲームの中のエンティティ、小説の中のエンティティなど
other 場所を指している可能性はあるがそうでない可能性もあり,分析が難しいもの(NL研論文の分析対象外) 「川崎のリーダー」という文脈における川崎(サッカーチームかもしれないし、川崎市かもしれない)

エンティティの表現

単一の点を表す GeoJSON Feature Object として表現されています.仕様については,GeoJSONのドキュメントをご覧ください.

ガゼッタ(辞書)について

以下の辞書を利用しています.地名辞書はコーパスに同梱されています.

アノテーションの品質について

2名でアノテーションを行ったところ,表現のバウンダリアノテーションを文字単位で評価したκ値は0.892でした.また,エンティティ付与のアノテーション結果においては,82%程度の事例において,付与したエンティティが完全に一致するという結果が得られています.逆に言えば,2割弱の表現にはアノテーター間で異なるエンティティが付与されます.そのような事例の一部については[1]の文献をご覧ください。

ただし,今回公開するデータとは別のデータで測定した結果であり,あくまで参考値としてお考えください.

コーパスの統計サマリ

エンティティの種別 タグが付与された表現数 エンティティが付与された表現数 Out of Gazetteer(OOG) Underspecified(UNSP)
地名 406 298 14 94
施設名 545 221 43 281
合計 951 519 57 375

ライセンス/連絡先

地名辞書には,GeoNLP 付属のものを一部修正して使わせて頂いております.

アノテーションされたコーパスは

クリエイティブ・コモンズ・ライセンス

クリエイティブ・コモンズ 表示 - 非営利 4.0 国際 ライセンスの下に提供されています.

同梱されている地名辞書のライセンスについては,街区レベル位置参照情報ならびに、GeoNLP 利用規約をご参照ください.

Reference

  1. 松田耕史, 佐々木 彬, 岡崎直観, 乾健太郎. 場所参照表現タグ付きコーパスの構築と評価. 情報処理学会研究報告 自然言語処理(NL), 2015-NL-220(12), pp.1-10, January 2015.
  2. Koji Matsuda, Akira Sasaki, Naoaki Okazaki, and Kentaro Inui. Annotating Geographical Entities on Microblog Text. LAW IX (The 9th Linguistic Annotation Workshop), pp.XX-XX, June 2015.