5章情報抽出
名前が何だというの? バラと呼んでいるけど、
ほかの名前で呼んでも、甘い香りに変わりはないわ。
—— ウィリアム・シェイクスピア『ロミオとジュリエット』
私たちは、電話でのショートメッセージやメール、趣味や仕事、時事問題を知るために読む長文など、毎日大量のテキストに触れています。このようなテキストには、価値のある情報がたくさん含まれています。ここでの「情報」という言葉の意味は、その文脈によって変わります。重要なイベント名や人名を指すこともあれば、人名や場所、組織などの間の関係を指すこともあります。情報抽出(Information Extraction:IE)とは、テキストから関連する情報を抽出するNLPのタスクです。情報抽出を実際のアプリケーションに応用した例としては、Googleで有名人の名前を検索したときに、右側に表示される短い説明文が挙げられます。
データベースや表のような構造化データや、Webページのようなマークアップされている半構造化データと比べると、テキストは非構造化データの一種です。たとえば、データベースでは、データがどこにあるかはスキーマに基づいて探せばわかります。しかし、テキストの場合、構成は自由で、スキーマが定められていないことがほとんどです。そのため、テキストからの情報抽出は難しいのです。テキストにはさまざまな情報が含まれています。定型的なパターンで表せる情報(住所、電話番号、日付など)は、正規表現などのパターンベースの技術を使って比較的簡単に抽出できます。それはたとえ、テキスト自体が非構造化データであってもです。ただ、それ以外の情報(人名、テキスト中の固有表現間の関係、カレンダーのイベントの詳細など)を抽出するには、より高度な言語処理が必要になります。 ...
Get 実践 自然言語処理 ―実世界NLPアプリケーション開発のベストプラクティス now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.