5

たとえば、次のようなよく知られたフレーズのプル (リスト) があるとします。このような1000。そして今、私はユーザーにテキストボックスに自由なテキストを入力してもらいたいと思っています.NLPエンジンを使ってテキストを消化し、プルから最も関連性の高い10個のフレーズを見つけてください。

  1. 最も簡単な実装は言葉で見ることができると思いました。毎回1つの単語を選び、何らかの方法で類似点を探します。どちらかわからない?
  2. 私が最も恐れているのは、サポートしなければならない語彙のサイズです。私はある種のデモの単一の開発者であり、表に単語を入力するという考えは好きではありません...
  3. 無料の NLP エンジンを探しています。私はそれが書かれている言語にとらわれませんが、それは無料でなければなりません.API呼び出しによって課金されるオンラインサービスのようなものではありません..
4

2 に答える 2

3

TextBlob と ConeptNet は、この問題に対する十分な解決策ではないようです!

于 2013-09-17T10:17:07.617 に答える
2

TextBlobは Python 用の使いやすい NLP ライブラリであり、無料でオープン ソースです (寛容な MIT ライセンスの下でライセンスされています)。優れたNLTKパターンライブラリの優れたラッパーを提供します。

問題に対する簡単なアプローチの 1 つは、指定されたテキストから名詞句を抽出することです。

TextBlob docsの例を次に示します。

from text.blob import TextBlob

text = '''
The titular threat of The Blob has always struck me as the ultimate movie
monster: an insatiably hungry, amoeba-like mass able to penetrate
virtually any safeguard, capable of--as a doomed doctor chillingly
describes it--"assimilating flesh on contact.
Snide comparisons to gelatin be damned, it's a concept with the most
devastating of potential consequences, not unlike the grey goo scenario
proposed by technological theorists fearful of
artificial intelligence run rampant.
'''

blob = TextBlob(text)
print(blob.noun_phrases)
# => ['titular threat', 'blob', 'ultimate movie monster', ...]

これは出発点になる可能性があります。そこから、コメントやTF-IDFで言及されている類似方法など、他の方法を試すことができます。また、TextBlob を使用すると、名詞句抽出用のモデルを簡単に交換できます。

完全開示: 私は TextBlob の作成者です。

于 2013-09-17T02:47:20.317 に答える