5

既存のものよりも平易な英語入力を受け入れるカレンダー アプリケーションを作成したいと考えています。私はスタンフォード大学の NLP を見つけましたが、これはクールに思えますが、この種のタスクに役立つかどうか疑問に思っていました。それを何かに使用している人々の例を見つけることができません。アプリは実際に言語を理解する必要がありますか? 存在する自然な英語のカレンダーは、キーワード/パターンを探してそのように解析しようとしているようですが、アプリはそれよりもうまくいくと思います.

私の本当の質問: 本当に便利なアプリを作成するために、NLP または別の (公開されている) 英語パーサーを使用している人々の例を見つける方法を誰か教えてくれませんか?

4

4 に答える 4

3

NLTKをチェックしてください。

NLTK は、人間の言語データを扱う Python プログラムを構築するための主要なプラットフォームです。分類、トークン化、ステミング、タグ付け、解析、セマンティック推論のための一連のテキスト処理ライブラリとともに、WordNet などの 50 を超えるコーパスおよび語彙リソースへの使いやすいインターフェイスを提供します。

NLTKを使用した解析の例:

>>> import nltk
>>> rd_parser = nltk.RecursiveDescentParser(grammar)
>>> sent = 'Mary saw a dog'.split()
>>> for t in rd_parser.nbest_parse(sent):
...     print t
(S (NP Mary) (VP (V saw) (NP (Det a) (N dog))))

NLTK には、オンラインで入手できる優れた無料の書籍が付属しています: http://nltk.googlecode.com/svn/trunk/doc/book/book.html

IBM からの優れた概要: http://www.ibm.com/developerworks/linux/library/l-cpnltk/index.html

PS: あなたに似た別の SO の質問: Using integers/dates as terminal in NLTK parser

于 2012-06-22T18:30:48.390 に答える
1

数年後、NodeJS を中心とした NLP の重要な新技術が登場しました。状況の概要については、こちらを参照してください: http://www.quora.com/Are-there-any-JavaScript-natural-language-processing-projects

しかし、ここに +1 の質問の例があります。私も同じ質問を探していたからです...ほんの数年後です。

NLP の実際の例... JavaScript で?

これが私の答えでした...

ステップ 1 - ボイラープレート ノード サーバー:

install npm

npm install nodebootstrap

nodebootstrap naturalNode

cd naturalNode && npm install

node app

//これにより、localhost:3000 で実行されているノード ブートストラップ アプリが提供されます。

簡単なノード サーバーのセットアップに関する完全な情報については、https ://github.com/stonebk/nodeboilerplate を参照してください。

ステップ 2 - Natural ライブラリを含める:

GitHub Natural Library にアクセスして、何ができるかを確認してください...

https://github.com/NaturalNode/natural

走る:

npm install natural 

(NaturalNode という名前のブートストラップ サーバー内)

ステップ 3 - 例を実行する:

上記のリンクのサンプル コードを app.js ブートストラップ ファイルに含めます。

var natural = require('natural'),
  tokenizer = new natural.WordTokenizer();
console.log(tokenizer.tokenize("your dog has fleas."));
// [ 'your', 'dog', 'has', 'fleas' ]

サーバーを実行すると、自然ライブラリに完全にアクセスでき、フロントエンド インターフェイスで拡張できます。

説明書に抜けがあれば教えて...

于 2015-05-26T00:56:07.383 に答える
0

プログラミング言語を指定しなかったので、Nattyという Java ライブラリをお勧めします。作者が何か知っていれば、彼の lib を使用した実際のアプリケーションについて作者に尋ねることができます。

于 2012-06-22T15:48:02.150 に答える