リソースu'tokenizers / punkt / english.pickle 'が見つかりません


96

私のコード:

import nltk.data
tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')

エラーメッセージ:

[ec2-user@ip-172-31-31-31 sentiment]$ python mapper_local_v1.0.py
Traceback (most recent call last):
File "mapper_local_v1.0.py", line 16, in <module>

    tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')

File "/usr/lib/python2.6/site-packages/nltk/data.py", line 774, in load

    opened_resource = _open(resource_url)

File "/usr/lib/python2.6/site-packages/nltk/data.py", line 888, in _open

    return find(path_, path + ['']).open()

File "/usr/lib/python2.6/site-packages/nltk/data.py", line 618, in find

    raise LookupError(resource_not_found)

LookupError:

Resource u'tokenizers/punkt/english.pickle' not found.  Please
use the NLTK Downloader to obtain the resource:

    >>>nltk.download()

Searched in:
- '/home/ec2-user/nltk_data'
- '/usr/share/nltk_data'
- '/usr/local/share/nltk_data'
- '/usr/lib/nltk_data'
- '/usr/local/lib/nltk_data'
- u''

このプログラムをUnixマシンで実行しようとしています。

エラーメッセージに従って、UNIXマシンからPythonシェルにログインし、次のコマンドを使用しました。

import nltk
nltk.download()

そして、d-ダウンローダーとl-リストオプションを使用して、利用可能なすべてのものをダウンロードしましたが、それでも問題は解決しません。

私はインターネットで解決策を見つけるために最善を尽くしましたが、上の手順で述べたのと同じ解決策を得ました。


回答:


170

alvasの回答に追加するには、punktコーパスのみをダウンロードできます。

nltk.download('punkt')

ダウンロードallはやりすぎのように聞こえます。それがあなたが望むものでない限り。


nltkコーパス名をお寄せいただきありがとうございます。
オースティンA

nltk.download( 'punkt')を機能させるには、最新のnltkバージョン3.2.5にアップグレードする必要がありました。
charles gomes 2017年

これは、上記のコードを実行した後に得られるものです。[nltk_data] punktの読み込みエラー:<urlopenエラー[Errno 111]接続[nltk_data]が拒否されました>
Paul

以前の問題に関しては、VPNをオフにするだけで済みました。
ポール

59

punktモデルのみをダウンロードする場合:

import nltk
nltk.download('punkt')

必要なデータ/モデルがわからない場合は、NLTKから人気のあるデータセット、モデル、タガーをインストールできます。

import nltk
nltk.download('popular')

上記のコマンドを使用すると、GUIを使用してデータセットをダウンロードする必要はありません。


34

私は解決策を得ました:

import nltk
nltk.download()

NLTKダウンローダーが起動したら

d)ダウンロードl)リストu)更新c)構成h)ヘルプq)終了

ダウンローダー> d

どのパッケージをダウンロードしますか(l = list; x = cancel)?識別子> punkt


25

シェルから実行できます:

sudo python -m nltk.downloader punkt 

人気のNLTKコーパス/モデルをインストールする場合:

sudo python -m nltk.downloader popular

すべての NLTKコーパス/モデルをインストールする場合:

sudo python -m nltk.downloader all

ダウンロードしたリソースを一覧表示するには:

python -c 'import os; import nltk; print os.listdir(nltk.data.find("corpora"))'
python -c 'import os; import nltk; print os.listdir(nltk.data.find("tokenizers"))'

10
import nltk
nltk.download('punkt')

Pythonプロンプトを開き、上記のステートメントを実行します。

sent_tokenize関数は、のインスタンス使用PunktSentenceTokenizerから nltk.tokenize.punktモジュール。このインスタンスはすでにトレーニングされており、多くのヨーロッパ言語で適切に機能します。したがって、文の終わりと新しい文の始まりを示す句読点と文字がわかります。


9

同じことが最近起こったのですが、「punkt」パッケージをダウンロードするだけで動作します。

「利用可能なすべてのものをダウンロード」した後で「リスト」(l)を実行すると、すべてが次の行のようにマークされていますか?

[*] punkt............... Punkt Tokenizer Models

この行に星が付いている場合は、それがあり、nltkがそれをロードできるはずです。


1
@ supreeth-mekaさん、解決策を見つけてよかったです。それが私が提案したものです。私の回答を「承認済み」としてマークできますか?
eeelnico 2014年

5

次のように入力してPythonコンソールに移動します

$ python

あなたのターミナルで。次に、Pythonシェルで次の2つのコマンドを入力して、それぞれのパッケージをインストールします。

>> nltk.download( 'punkt')>> nltk.download( 'averaged_perceptron_tagger')

これで問題は解決しました。


2

私の問題は私が電話したことでした nltk.download('all')、ルートユーザーとしてましたが、最終的にnltkを使用したプロセスは、コンテンツがダウンロードされた/ root / nltk_dataにアクセスできない別のユーザーでした。

そのため、ダウンロードの場所から、NLTKが探しているパスの1つに次のようにすべてを再帰的にコピーしました。

cp -R /root/nltk_data/ /home/ubuntu/nltk_data

2
  1. 次のコードを実行します。

    import nltk
    nltk.download()
  2. この後、NLTKダウンローダーが飛び出します。

  3. すべてのパッケージを選択します。
  4. punktをダウンロードしてください。

2

次のインポートにもかかわらずエラーが発生しました、

import nltk
nltk.download()

しかしグーグルコラボのためにこれは私の問題を解決しました。

   !python3 -c "import nltk; nltk.download('all')"


1

フォルダを再配置する必要がありますフォルダをフォルダに移動tokenizersしてnltk_dataください。nltk_dataフォルダーを含むcorporaフォルダーを含む tokenizersフォルダーがある場合、これは機能しません


1

私にとっては上記のいずれも機能しなかったので、すべてのファイルをWebサイトhttp://www.nltk.org/nltk_data/から手動でダウンロードし、「nltk_data」内の「tokenizers」ファイルに手動で配置しました"フォルダ。きれいな解決策ではありませんが、それでも解決策です。



0

私は同じ問題に直面しました。すべてをダウンロードした後も、まだ「punkt」エラーが発生しました。WindowsマシンのC:\ Users \ vaibhav \ AppData \ Roaming \ nltk_data \ tokenizersでパッケージを検索したところ、 'punkt.zip'がそこにあります。どういうわけか、zipがC:\ Users \ vaibhav \ AppData \ Roaming \ nltk_data \ tokenizers \ punkに抽出されていないことに気付きました。zipを解凍すると、音楽のように機能しました。



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