固有表現抽出
お客様のドメイン向けに定義したタキソノミーに沿ったエンティティのスパン。必要な場合は入れ子や重なりのあるエンティティにも対応します。
- 標準タイプとドメイン固有タイプ
- 入れ子・不連続のスパン
- 正規形への正規化
- 読みと表記ゆれの紐づけ
日本語NLP
固有表現抽出、関係抽出、意図・トピック分類、センチメント、自然言語推論、分割。お客様のパイプラインが実際に使うトークナイザーに合わせてアノテーションします。
日本語には語の間に空白がありません。したがって、スパンのアノテーションはすべて、誰かが下さなければならない境界の判断に依存します。その判断が後工程のトークナイザーと合っていなければ、ラベルは整列しません。
英語なら「Toyota Motor Corporation」は明らかに3トークンで、問題はエンティティがどこで始まりどこで終わるかだけです。日本語では 株式会社トヨタ自動車 は切れ目のない1つの文字列で、正当なアノテーションが少なくとも4通りあります。株式会社 を含めるか否か、自動車 を含めるか否か、全体を1つのエンティティとするか、長いものの中に短いものを入れ子にするか。
どれも正当な選択です。大事なのは、毎回同じ選択をすること、それが明文化されていること、そしてモデルが使うトークナイザーに触れても壊れないことです。トークンの途中に落ちるスパンの境界は、BIOタグでは黙って動かさない限り表現できないからです。
ですから当社は、アノテーション開始前にトークナイザーと境界のルールを固定します。そして、どんなタグ形式をご希望の場合でも、その下に文字オフセットを付与します。後から再トークナイズしても、再アノテーションが要らないようにするためです。
要点
タスク種別
スパンのタスクと文書単位のタスクでは壊れ方が違うため、レビュー基準も分けます。
お客様のドメイン向けに定義したタキソノミーに沿ったエンティティのスパン。必要な場合は入れ子や重なりのあるエンティティにも対応します。
エンティティ同士のつながり。誰が誰に何をしたか、どの値がどのフィールドに属するか、どの句がどの語を修飾するか。
発話単位または文書単位での、意図、トピック、振り分けカテゴリ、ポリシーラベル。単一ラベルにも複数ラベルにも対応します。
文書、文、または観点(アスペクト)単位の極性と感情。日本語のビジネステキストで実際に必要になるのは、最後のアスペクト単位です。
含意、言い換え、意味的類似度のペア。加えて、評価セットに識別力を与えるハードネガティブ。
日本語固有の論点
日本語のスパンアノテーションのプロジェクトでは、この4つが最初の1時間で必ず出てきます。
日本語は分かち書きしないため、スパンの境界は辞書引きではなく判断になります。形態素解析器が違えば同じ文の分割も変わり、一方に合わせたラベルは他方には整列しません。
当社の対応 解析器と辞書をキックオフで固定し、スパンは文字オフセットで保持して再トークナイズに耐えるようにし、境界の取り決めは実例とともに明記します。
株式会社 は社名の前にも後ろにも付き、(株)と略されることも、まったく省かれることもあります。これをエンティティのスパンに含めるかどうかで、後工程の文字列照合がすべて変わります。
当社の対応 法人格の接頭辞・接尾辞、略記、括弧書きの異表記を一つのルールでまとめて扱い、表層のスパンと並べて正規形を記録します。
日本語は区切りなしに名詞を連ねます。個人情報保護管理者 は、意味を持つ単位を少なくとも3つ含む1つの文字列です。エンティティがどこで切れるかは事実ではなく、判断です。
当社の対応 ガイドラインで、エンティティのタイプごとに最長一致か最短一致かの方針を定めます。両方が本当に必要な場合は入れ子を認めます。アノテーター個々の選択に委ねません。
動詞と形容詞は活用し、助詞は直前の語にそのまま付きます。これらを含めるか外すかで、コーパス全体にわたってスパンの境界が1〜2文字ずれます。
当社の対応 活用語尾と付属する助詞をスパンに含めるかどうかをルールで明示し、トークンの途中で終わるスパンを自動チェックで検出します。
プロセス
価値の大半は、アノテーションが始まる前、タキソノミーと境界のルールの段階で生まれます。
ラベルセット、解析器と辞書、スパンの表現方法を合意します。アノテーションが、その行き先であるパイプラインと合うようにするためです。
小さなサンプルにアノテーションし、お客様のドメインで本当に曖昧になる構文を洗い出します。これがガイドラインの実例になります。
アノテーターが同じセットを独立にラベル付けします。一致率は境界とラベルで別々に計測します。壊れる理由が違うからです。
レビュー工程を伴う本番アノテーションと、判断の相違に対する文書での裁定。裁定はそのままガイドラインに反映します。
文字オフセットとご指定のタグ形式、タキソノミーのバージョン、ラベル別の件数、QAレポートを添えて納品します。
納品
どの表層形式をお選びいただいても、文字オフセットは必ず含めます。再アノテーションなしで再トークナイズできるようにするためです。
| タスク | 標準出力 | その他の対応形式 |
|---|---|---|
| 固有表現 | 文字オフセット付きJSONL | CoNLL-U、BIO/BILOU、brat standoff |
| 関係とイベント | スパン参照付きJSONL | brat standoff、カスタムのグラフJSON |
| 分類 | JSONLまたはCSV | ワンホットまたはマルチラベルの行列 |
| センチメント | アスペクトのスパン付きJSONL | CSV、文単位のラベル |
| NLIと類似度 | JSONLのペア | CSV、ベンチマーク形式のTSV |
品質
スパンのデータセットは、ラベルの正解率が優秀でも境界が使い物にならないことがあります。当社は両方を計測します。
よくあるご質問
日本語のスパンアノテーションの範囲を決める段階で、よく出てくるご質問。
お客様のパイプラインが使っているものを使います。IPAdicまたはUniDicのMeCab、Sudachi、Juman++、あるいはお客様のモデル自身のサブワードトークナイザー。キックオフで固定するのは、スパンの境界が一つの分割にしか整列しないからです。その下に文字オフセットを保持しておくので、あとから解析器を変えても、再アノテーションではなく再エクスポートで済みます。
はい。当社のものを押しつけるより、お客様のものを採用したいと考えています。そのうえで行うのは、まずサンプルで負荷をかけて試すことです。既存のタキソノミーには、実運用で重なることが判明するカテゴリが2つか3つあるのが普通で、それをパイロットで見つけるほうが、5万件が終わってから見つけるよりはるかに安く済みます。
タスク次第としか言えません。きれいなテキスト上の切れ味のよいエンティティタイプなら、高い一致率にすぐ到達します。アスペクトベースのセンチメントや細粒度の意図タキソノミーはそうなりません。そうならないと主張するプロジェクトは、たいてい納品物より易しいものを測っています。当社はパイロットで得たラベル別の実測値を報告し、あるカテゴリが実用に足る一致率に届かない場合は、そう申し上げたうえでカテゴリの変更を提案します。
はい。タキソノミーが本当に必要とする場合に対応します。理由はたいてい、日本語の複合名詞と組織名です。入れ子のルールはガイドラインに明記し、自動で検証します。許可されているのに規定されていない入れ子は、確実に不整合の温床になるからです。
はい。モデル出力の修正は大量作業では効率的ですが、注意点は他と同じです。修正工程はモデルの死角を引き継ぎがちです。そこで修正工程をゼロからのサンプルと突き合わせて計測し、実際に何を拾えているかをお伝えします。評価セットについては、ゼロからアノテーションします。
テキスト・NLP
ラベルセットと、実際の日本語テキストのサンプルをお送りください。パイロットにアノテーションし、境界とラベルの一致率を報告し、量を増やしたときに持ちこたえないカテゴリをお伝えします。
データをご共有いただく前にNDAを締結します。パイロットの要件定義は無料です。