Saat mencoba memuat punkt
tokenizer ...
import nltk.data
tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')
... a LookupError
dibesarkan:
> LookupError:
> *********************************************************************
> Resource 'tokenizers/punkt/english.pickle' not found. Please use the NLTK Downloader to obtain the resource: nltk.download(). Searched in:
> - 'C:\\Users\\Martinos/nltk_data'
> - 'C:\\nltk_data'
> - 'D:\\nltk_data'
> - 'E:\\nltk_data'
> - 'E:\\Python26\\nltk_data'
> - 'E:\\Python26\\lib\\nltk_data'
> - 'C:\\Users\\Martinos\\AppData\\Roaming\\nltk_data'
> **********************************************************************
>>> nltk.download()
Jawaban:
Saya punya masalah yang sama. Pergilah ke shell python dan ketik:
Kemudian muncul jendela instalasi. Buka tab 'Model' dan pilih 'punkt' dari bawah kolom 'Identifier'. Kemudian klik Unduh dan itu akan menginstal file yang diperlukan. Maka itu harus bekerja!
sumber
tokenizer = nltk.data.load('nltk:tokenizers/punkt/english.pickle')
kemudian harus bekerja dan Anda dapat menggunakan tokenizer seperti:tokenizer.tokenize('The cat. The mat. It Sat.')
. Di sini nltk mencoba menyelesaikan jalur relatiftokenizers/punkt/english.pickle
terhadap beberapa lokasi. Misalnya pada Windows terlihat dalam%APPDATA%\nltk_data\tokenizers\punkt\english.pickle
atauC:\nltk_data\tokenizers\punkt\english.pickle
(sama untuk D: dan E :). Jadi, jika Anda memastikan file punkt.zip terbuka ritsleting sedemikian rupa sehingga salah satu lokasi tersebut ada, ia harus dapat menemukannya.NLTK_DATA
variabel lingkungan Anda untuk menunjuk ke folder nltk_data sehingga%NLTK_DATA%\tokenizers\punkt\english.pickle
ada.ssh
koneksi) tidak akan ada jendela GUI dan dengan demikian tidak ada tab 'Model'.Anda bisa melakukannya seperti ini.
Anda dapat mengunduh tokenizers dengan mengirimkan
punkt
sebagai argumen kedownload
fungsi. Token kata dan kalimat kemudian tersedia padanltk
.Jika Anda ingin men-download semuanya yaitu
chunkers
,grammars
,misc
,sentiment
,taggers
,corpora
,help
,models
,stemmers
,tokenizers
, tidak lulus argumen seperti ini.Lihat ini untuk wawasan lebih lanjut. https://www.nltk.org/data.html
sumber
python -c "import nltk; nltk.download('punkt')" [nltk_data] Downloading package punkt to /home/my_user/nltk_data... [nltk_data] Error downloading 'punkt' from [nltk_data] <https://raw.githubusercontent.com/nltk/nltk_data/gh- [nltk_data] pages/packages/tokenizers/punkt.zip>: HTTP Error [nltk_data] 503: first byte timeout
Inilah yang bekerja untuk saya sekarang:
sentences_tokenized adalah daftar daftar token:
Kalimat diambil dari contoh notebook ipython yang menyertai buku "Mining the Social Web, 2nd Edition"
sumber
Dari bash command line, jalankan:
sumber
nltk_data
ke direktori home saya dan menyimpan punkt ke dalamnya. Saya punya Fedora 27, Py3.6.Ini bekerja untuk saya:
Di windows Anda juga akan mendapatkan nltk downloader
sumber
Sederhana
nltk.download()
tidak akan menyelesaikan masalah ini. Saya mencoba di bawah ini dan itu berhasil untuk saya:dalam
nltk
folder buattokenizers
folder dan salinpunkt
folder Anda ketokenizers
folder.Ini akan berhasil.! struktur folder harus seperti yang ditunjukkan pada gambar! 1
sumber
nltk memiliki model tokenizer yang sudah dilatih sebelumnya. Model sedang mengunduh dari sumber web yang telah ditentukan secara internal dan disimpan di jalur paket nltk yang diinstal saat menjalankan panggilan fungsi berikut.
Misalnya 1 tokenizer = nltk.data.load ('nltk: tokenizers / punkt / english.pickle')
Misal 2 nltk.download ('punkt')
Jika Anda memanggil kalimat di atas dalam kode Anda, Pastikan Anda memiliki koneksi internet tanpa perlindungan firewall.
Saya ingin berbagi cara alter-net yang lebih baik untuk menyelesaikan masalah di atas dengan pemahaman yang lebih dalam.
Ikuti langkah-langkah berikut dan nikmati tokenisasi kata bahasa Inggris menggunakan nltk.
Langkah 1: Pertama unduh model "english.pickle" mengikuti jalur web.
Tautan goto " http://www.nltk.org/nltk_data/ " dan klik "unduh" pada opsi "107. Model Tokenizer Punkt"
Langkah 2: Ekstrak file "punkt.zip" yang diunduh dan cari file "english.pickle" dari file tersebut dan letakkan di drive C.
Langkah 3: salin tempel kode berikut dan jalankan.
Beri tahu saya, jika Anda menghadapi masalah
sumber
Di Jenkins ini dapat diperbaiki dengan menambahkan kode seperti seperti ini ke Virtualenv Builder di bawah tab Build :
python -m nltk.downloader punkt
sumber
saya menemukan masalah ini ketika saya mencoba melakukan penandaan pos di nltk. cara saya mendapatkannya dengan benar adalah dengan membuat direktori baru bersama dengan direktori corpora bernama "taggers" dan menyalin max_pos_tagger dalam direktori taggers.
semoga berhasil juga untuk Anda. semoga sukses !!!
sumber
Di Spyder, buka shell aktif Anda dan unduh nltk menggunakan di bawah 2 perintah. import nltk nltk.download () Maka Anda akan melihat jendela pengunduh NLTK terbuka seperti di bawah ini, Buka tab 'Models' di jendela ini dan klik 'punkt' dan unduh 'punkt'
sumber
Periksa apakah Anda memiliki semua perpustakaan NLTK.
sumber
Data tokenizers punkt cukup besar di lebih dari 35 MB , ini bisa menjadi masalah besar jika seperti saya Anda menjalankan nltk di lingkungan seperti lambda yang memiliki sumber daya terbatas.
Jika Anda hanya membutuhkan satu atau mungkin beberapa tokenizer bahasa, Anda dapat secara drastis mengurangi ukuran data hanya dengan memasukkan bahasa-bahasa tersebut.
.pickle
file .Jika semua yang Anda butuhkan hanya mendukung bahasa Inggris maka ukuran data nltk Anda dapat dikurangi menjadi 407 KB (untuk versi python 3).
Langkah
nltk_data/tokenizers/punkt
jika menggunakan python 3 tambahkan folder lainPY3
sehingga struktur direktori baru Anda terlihat sepertinltk_data/tokenizers/punkt/PY3
. Dalam kasus saya, saya membuat folder ini di root proyek saya..pickle
file untuk bahasa yang ingin Anda dukung kepunkt
folder yang baru saja Anda buat. Catatan: Pengguna Python 3 harus menggunakan acar dariPY3
folder. Dengan file bahasa Anda dimuat seharusnya akan terlihat seperti: example-folder-stucturenltk_data
folder Anda ke jalur pencarian, dengan asumsi data Anda tidak ada di salah satu jalur pencarian yang telah ditentukan . Anda dapat menambahkan data menggunakan variabel lingkunganNLTK_DATA='path/to/your/nltk_data'
. Anda juga dapat menambahkan jalur khusus saat runtime di python dengan melakukan:CATATAN: Jika Anda tidak perlu memuat data saat runtime atau bundel data dengan kode Anda, akan lebih baik untuk membuat
nltk_data
folder di lokasi bawaan yang nltk cari .sumber
nltk.download()
tidak akan menyelesaikan masalah ini. Saya mencoba di bawah ini dan itu berhasil untuk saya:di
'...AppData\Roaming\nltk_data\tokenizers'
folder, ekstrakpunkt.zip
folder yang diunduh di lokasi yang sama.sumber
Di
Python-3.6
saya bisa melihat saran di traceback. Itu cukup membantu. Oleh karena itu saya akan mengatakan kalian memperhatikan kesalahan yang Anda dapatkan, sebagian besar waktu jawaban berada dalam masalah itu;).Dan kemudian seperti yang disarankan oleh orang lain di sini baik menggunakan terminal python atau menggunakan perintah seperti
python -c "import nltk; nltk.download('wordnet')"
kita dapat menginstalnya dengan cepat. Anda hanya perlu menjalankan perintah itu sekali dan kemudian akan menyimpan data secara lokal di direktori home Anda.sumber
Saya memiliki masalah serupa ketika menggunakan folder yang ditetapkan untuk banyak unduhan, dan saya harus menambahkan jalur data secara manual:
unduhan tunggal, dapat dicapai sebagai diikuti (berfungsi)
Kode ini berfungsi, artinya nltk mengingat jalur pengunduhan yang dilewati dalam pengunduhan unduhan. Di nads lain jika saya mengunduh paket berikutnya saya mendapatkan kesalahan yang sama seperti yang dijelaskan oleh pengguna:
Banyak unduhan menimbulkan kesalahan:
Kesalahan:
Sumber daya punkt tidak ditemukan. Silakan gunakan Pengunduh NLTK untuk mendapatkan sumber daya:
import nltk nltk.download ('punkt')
Sekarang jika saya menambahkan jalur data ntlk dengan jalur unduh saya, ini berfungsi:
Ini berfungsi ... Tidak yakin mengapa bekerja dalam satu kasus tetapi tidak yang lain, tetapi pesan kesalahan tampaknya menyiratkan bahwa itu tidak memeriksa ke folder unduhan kedua kalinya. NB: menggunakan windows8.1 / python3.7 / nltk3.5
sumber