Ultralytics YOLO27: ウェイトリストに登録する
YOLOのライセンス
Ultralytics用語集に戻る

Named Entity Recognition (NER)

固有表現認識(NER)は、テキスト内の人名、組織名、地名、日付、金額を検出し、それぞれにエンティティの種類を割り当てます。

固有表現認識(NER)は、実世界の対象を指すテキスト範囲を見つけ、人物、組織、場所、日付、金額などの種類を各範囲に付与する自然言語処理(NLP)タスクです。「Marie Curie taught at the University of Paris from 1906」という文では、NERモデルは「Marie Curie」を人物、「University of Paris」を組織、「1906」を日付として識別します。これにより、メール、レポート、契約書、文字起こしを、検索エンジン、ナレッジグラフ、分析ツール、プライバシーツールが利用できる構造化レコードに変換できます。1990年代のMessage Understanding Conferencesによって、NERは標準的な評価タスクとなり、CoNLL-2003共有タスクでは、今もベンチマークで使われている4種類、人物、場所、組織、その他が定められました。OntoNotes 5.0などのより大規模な体系では、日付、数量、製品、イベントなどを含む18種類が定義されています。

NERの仕組み#

NERは通常、系列ラベリングとして扱われます。トークナイザーがテキストをトークンに分割し、モデルはBIOスキームに従って各トークンにタグを割り当てます。B-はエンティティの開始、I-はエンティティ内のトークン、Oはどのエンティティにも属さないトークンを示すため、「University of Paris」のような複数語の名前もまとまりとして扱えます。このコードは、モデルが予測したタグをエンティティ範囲に変換します。

# Token-level BIO tags, as predicted by an NER model for one sentence
tokens = ["Marie", "Curie", "taught", "at", "the", "University", "of", "Paris", "from", "1906", "."]
tags = ["B-PER", "I-PER", "O", "O", "O", "B-ORG", "I-ORG", "I-ORG", "O", "B-DATE", "O"]

# Merge each B- tag with the I- tags that follow it into one entity span
entities = []
for token, tag in zip(tokens, tags):
    if tag.startswith("B-"):
        entities.append([token, tag[2:]])
    elif tag.startswith("I-") and entities and entities[-1][1] == tag[2:]:
        entities[-1][0] += f" {token}"

print(entities)

構造化された出力であり、下流システムが保存してクエリする[['Marie Curie', 'PER'], ['University of Paris', 'ORG'], ['1906', 'DATE']]が出力されます。

タグを予測するモデルは、過去30年間で変化してきました。初期のシステムでは、手書きルールや既知の名前のリストであるガゼッティアが使われていました。隠れマルコフモデルや条件付き確率場などの統計的タグ付け器は、大文字表記や単語の接尾辞など、手作業で設計された特徴量を使ってアノテーション済みテキストから学習しました。2016年には、CRF出力層を備えた双方向LSTMネットワークが特徴量を自ら学習するようになり、その後、ファインチューニングされたTransformerが登場しました。BERTはCoNLL-2003テストセットでF1スコア92.8を達成しました。自己注意機構により、これらのモデルは文全体を文脈として利用できます。そのため、「Apple released a new phone」では「Apple」が組織としてタグ付けされ、「I ate an apple」ではタグ付けされません。システムはエンティティ単位の適合率、再現率、F1スコアで評価され、予測範囲と種類の両方が参照データと完全に一致した場合にのみ正解となります。

新しいモデルでは、固定されたラベルセットを使いません。GLiNERは、コンパクトな双方向Transformerで、エンティティの種類名を入力として受け取り、学習時に見ていない種類についても一致する範囲を見つけます。また、大規模言語モデルは、スキーマをプロンプトで指定し、構造化出力を求めることでエンティティを抽出します。

  • エンティティリンキング:認識した各言及を、Wikidataなどのナレッジベース内の特定の項目に結び付けます。そのため、「Paris」が都市を指すのか、Paris Hiltonを指すのかを特定できます。
  • 関係抽出:どの人物がどの組織に所属しているかなど、エンティティ間のつながりを見つけます。多くの場合、NERの出力を基に処理します。
  • 感情分析:テキストが表す意見を測定します。NERはレビューが何について述べているかを特定し、感情分析は書き手がそれについてどう感じているかを測定します。
  • 物体検出:NERにおける画像の対応タスクで、画像内の領域を特定し、それぞれにクラスラベルを付与します。

GLiNERのオープンラベルの考え方は、ビジョン分野にも直接対応するものがあります。YOLOE-26は、Ultralytics YOLO26のオープンボキャブラリー版です。推論時にクラス名をテキストプロンプトとして受け取り、学習カテゴリに含まれないクラスも含め、該当するクラスの物体を検出・セグメンテーションします。

実際のアプリケーション#

文書処理では、固有表現認識(NER)と光学文字認識(OCR)を組み合わせます。請求書、契約書、フォームをスキャンし、OCRでテキストを読み取り、NERでベンダー、日付、合計金額などのフィールドを抽出して、会計・コンプライアンスシステムに渡します。本番パイプラインでは、不確かな予測を人に確認してもらい、修正結果から学習します。

  • 個人識別情報(PII)のマスキング:MicrosoftのオープンソースPresidioなどのプライバシーツールは、NERとパターンルールを組み合わせ、テキストの共有や学習への利用に先立って、氏名、住所、口座番号を検出してマスキングします。
  • 臨床テキストマイニング:臨床NERは、医師の記録から薬剤、投与量、症状、診断を抽出するため、病院や研究者が大量の記録を検索・分析できます。
  • 検索とレコメンデーション:ニュースサイトやコンテンツプラットフォームは、記事に登場する人物、企業、場所のタグを付けます。これにより、エンティティ検索や関連記事の推薦が可能になります。

ソリューションを見る

スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、自然保護、地理空間分析に活用できます。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOを活用して航空宇宙分野でコンピュータビジョンを導入し、航空機検査、滑走路上のFOD検出、空港の地上業務、複合材の欠陥検出に活用できます。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る

AIの未来を一緒に築きましょう!

機械学習の未来に向けた歩みを始めましょう