1

私がやりたいことは、生の自然なテキストを解析し、日付を説明するすべてのフレーズを見つけることです。

日付へのすべての参照がマークアップされた、かなり大きなコーパスがあります。

I met him <date>yesterday</date>.
Roger Zelazny was born <date>in 1937</date>
He'll have a hell of a hangover <date>tomorrow morning</date>

日付フレーズを解釈したくありません。ただ見つけてください。それらが日付であるという事実は関係ありません (実際には日付でさえありませんが、詳細で退屈させたくありません)、基本的には可能な値の制限のないセットです。値自体の文法はコンテキストフリーとして近似できますが、手動で構築するのは非常に複雑であり、複雑さが増すにつれて誤検出を回避することがますます難しくなります。

私はこれが少し遠いショットであることを知っているので、すぐに使えるソリューションがそこに存在するとは思っていませんが、どのような技術や研究を使用できる可能性がありますか?

4

2 に答える 2

6

学界や産業界で使用されている一般的なアプローチの 1 つは、条件付きランダム フィールドに基づいています。基本的に、これは特別な確率モデルです。最初にマークアップされたデータでトレーニングすると、特定のテキスト内の特定の種類のエンティティにラベルを付けることができます。

スタンフォード自然言語処理グループのシステムの 1 つを試すこともできます: Stanford Named Entity Recognizer

ツールをダウンロードするときは、いくつかのモデルがあることに注意してください。最後のモデルが必要です。

スタンフォード NER には、CoNLL 用にトレーニングされた 4 クラス モデル、MUC 用にトレーニングされた 7 クラス モデル、およびこれらのクラス セットの共通部分の両方のデータ セットでトレーニングされた 3 クラス モデルが含まれています。

3クラス 場所、人、組織

4 クラス 場所、人、組織、その他

時間、場所、組織、人、お金、パーセント、日付の7クラス

アップデート。実際にそのツールをオンラインで試すことができます ここ. 分類子を選択し、muc.7class.distsim.crf.ser.gz日付を含むテキストを試してください。「昨日」は認識しないようですが、例えば「20世紀」は認識します。結局のところ、これは CRF トレーニングの問題です。


スタンフォード NER のスクリーンショット

于 2012-03-12T22:55:53.113 に答える
4

CRF はトレーニングがかなり遅く、人間が注釈を付けたデータを必要とするため、自分で行うのは簡単ではないことに注意してください。これに対する回答を読んで、人々が実際にどのようにそれを行うことが多いかを示す別の例を読んでください。現在の学術研究とはあまり共通していません.

于 2012-03-12T23:52:24.483 に答える