Skip to content

テキストアノテーション

テキストアノテーションの完全ガイド。分類、マルチラベル付け、評価、自由記述を扱い、コピーして使える設定で各種のテキストタスクを Potato で組み立てる方法を解説します。

テキストアノテーションとは、書かれた言語にラベルを付けることです。文書をカテゴリに分類する、記事中の話題をタグ付けする、文章の質を評価する、あるいは修正を書く、といった作業を指します。自然言語処理で最も一般的なアノテーションタスクであり、Potato がそもそも作られたのもこのためです。 本ガイドは文書全体を対象とするテキストタスクを扱います。テキスト内部の領域を標示する場合は、スパンアノテーションを参照してください。

テキストタスクの概観

  • 文書分類:テキスト全体に対して 1 つのラベル(テキスト分類)。
  • マルチラベル付け:話題やコンテンツ警告など、複数のラベルを同時に付与する。
  • 評価とスコア付け:質や感情の強さなど、尺度上の位置。
  • 自由記述:書かれた回答、言い換え、修正。

分類:文書ごとに 1 つのラベル

テキストアノテーションの主力です。カテゴリが互いに排他的な場合は radio を使います。

yaml
annotation_schemes:
  - annotation_type: radio
    name: sentiment
    description: "What is the overall sentiment of this review?"
    labels: [Positive, Negative, Neutral]
    sequential_key_binding: true

sequential_key_binding はラベルを 123 キーに割り当て、アノテーターが手をキーボードから離さずに済むようにします。数千件規模の作業では、これは大きな高速化になります。動作する例として、ライブの感情分析デザインを参照してください。

マルチラベル:複数のタグを一度に

複数のラベルが同時に当てはまる場合は multiselect を使います。選択数の上下限をガイドラインに合わせて設定します。

yaml
annotation_schemes:
  - annotation_type: multiselect
    name: content_warnings
    description: "Select every content warning that applies."
    labels: [Violence, Profanity, Sexual content, Self-harm, None]
    min_selections: 1
    max_selections: 5

コンテンツモデレーションは典型的なマルチラベルのテキストタスクです。毒性検出デザインは、カテゴリとハイライトしたスパンを組み合わせています。

尺度上でテキストを評価する

カテゴリではなく程度を捉えるには、リッカート尺度を使います。

yaml
annotation_schemes:
  - annotation_type: likert
    name: helpfulness
    description: "How helpful is this answer?"
    size: 5
    min_label: "Not helpful"
    max_label: "Very helpful"

黙従バイアスや、いくつの段階を使うべきかといった尺度設計の落とし穴については、評価尺度を参照してください。

自由記述と修正

最も有用なラベルが、アノテーターが書く一文――根拠、書き換え、書き起こし――である場合もあります。これをカテゴリと組み合わせ、関連するときにだけ表示します。

yaml
annotation_schemes:
  - annotation_type: radio
    name: factuality
    description: "Is the claim supported by the source?"
    labels: [Supported, Contradicted, Not enough info]
  - annotation_type: text
    name: evidence
    description: "Quote the sentence that supports your choice."
    label_requirement:
      required: false

一貫したテキストラベルを得る

テキストは曖昧なので、一貫性はインターフェースそのものではなく、その周辺のプロセスから生まれます。

  1. 「判断できない」という選択肢を備えた、緻密なガイドラインを書く。
  2. 複数のアノテーターに同じ項目を重複して付けてもらう。
  3. アノテーター間一致度を追跡し、不一致を裁定する。
  4. LLM による事前アノテーションで大規模な作業を加速し、その提案を手作業で検証する。

さらに読む