機械学習を使用してテキストから特定の情報を抽出する方法は?


7

以下のようなテキストがあり、通常2/3の文と100〜200文字のテキストがあるとします。

ジョニーはウォルマートから50ドルの牛乳を買いました。今、彼はたったの20ドルしか残していない。

抽出したい

人名:ジョニー

使用済み:50ドル

残金:20ドル。

使用した場所:ウォルマート。

私はリカレントニューラルネットワークに関する多くの資料を調べてきました。RNNでcs231nビデオを見て、次のキャラクター予測を理解しました。これらのケースでは、確率を使用して次の文字を見つけるために出力クラスとして使用できる26文字のセットがあります。しかし、ここでは出力クラスがわからないため、問題はまったく異なるように見えます。出力は、テキスト内の単語や数字に依存します。ランダムな単語や数字を使用できます。

畳み込みニューラルネットワークでもテキストの特徴を抽出できることをQuoraで読みました。それもこの特定の問題を解決できるかどうか疑問に思いますか?


2
計算言語学は非常に激しい分野であり、必ずしも誰かがどれだけ費やしたかを教えてくれるわけではありません。代わりに、主語、動詞、間接オブジェクトなどを見つけるようなことを行います。文の構造と単語の「タイプ」の強力な基盤に大きく依存しています。私がフィールドで読んだことから、計算言語学のモデルは、一度にいくつかのモデルを利用して、あなたが望んでいるタイプの目標を達成します。
Ryan Honea

回答:


8

ここで提起する問題は、名前付きエンティティ認識(NER)または名前付きエンティティ抽出と呼ばれます。

この問題に使用できる複数のテクノロジー(ニューラルネットワークは不要)があり、それらのいくつかは非常に成熟しています。プラグインが簡単なソリューションについては、たとえばこのリポジトリを参照するか、Python ne_chunk_sentsNLTKモジュールから関数を適用してみてください。


1

依存関係の解析を調べてもらえると思います。ファクトタプルは、依存関係グラフのエッジから抽出できます。

ここに画像の説明を入力してください

PS1 NLPで何かしたい場合は、cs231nではなくcs224nをチェックしてください。また、cs224には依存関係解析のためのDLに関するセクションが含まれていることを思い出してください。

PS2依存関係ツリーは、スタンフォードニューラルネットワークの依存関係パーサーから取得されます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.