Bantuan tentang NER di NLTK

12

Saya telah bekerja di NLTK untuk sementara menggunakan Python. Masalah yang saya hadapi adalah tidak ada bantuan yang tersedia untuk melatih NER di NLTK dengan data khusus saya. Mereka telah menggunakan MaxEnt dan melatihnya pada ACE corpus. Saya telah mencari di web banyak tetapi saya tidak dapat menemukan cara yang dapat digunakan untuk melatih NER NLTK.

Jika ada yang bisa memberi saya tautan / artikel / blog dll yang dapat mengarahkan saya ke Format Pelatihan Data yang digunakan dalam pelatihan NER NLTK sehingga saya dapat menyiapkan Data saya pada format tertentu. Dan jika saya diarahkan ke tautan / artikel / blog dll yang dapat membantu saya MELATIH NER NLTK untuk data saya sendiri.

Ini adalah pertanyaan yang banyak dicari dan paling sedikit dijawab. Mungkin bermanfaat bagi seseorang di masa depan yang bekerja dengan NER.

Sarmad
sumber
Diposting silang
Franck Dernoncourt

Jawaban:

4

Pelatihan model, terkait dengan ekstraksi informasi , pada umumnya, dan diberi nama entitas pengakuan / resolusi (APM) , khususnya, dijelaskan secara rinci dalam Bab 7 dari NLTK Book , tersedia online di URL ini: http: //www.nltk .org / book / ch07.html .

Selain itu, saya pikir Anda mungkin menemukan jawaban terkait yang berguna di situs Cross Validated Ini memiliki banyak referensi ke sumber yang relevan tentang NER dan topik terkait serta berbagai perangkat lunak terkait .

Aleksandr Blekh
sumber
Mereka tidak menyebutkan cara melatih model NER pada data khusus, dapatkah Anda memberi tahu cara melakukannya?
Hima Varsha
1
@HimaVarsha Saya bukan ahli di bidang ini. Namun, ... Saya rasa model NLTK NER sudah dipra-terlatih pada conll2000 corpus, karenanya tidak ada info dalam buku NLTK. Periksa sumber daya berikut: 1. nltk-trainer.readthedocs.io (kemungkinan besar yang Anda butuhkan; mungkin bagian Pelatihan IOB Chunkers ). 2. sujitpal.blogspot.com/2012/11/… (mungkin bermanfaat juga). 3. nlp.stanford.edu/software/crf-faq.shtml#a (jika Anda menggunakan atau akan memutuskan untuk menggunakan perangkat lunak Stanford NER).
Aleksandr Blekh
Saya pikir implementasi stanfordcrf memang mengambil data kustom, tetapi NTLK NER datang hanya pra-terlatih. Pelatihan IOB Chunkers baru saja selesai, bukan? Atau apakah ia melakukan NER?
Hima Varsha
@HimaVarsha Harap lebih memperhatikan saran yang Anda dapatkan. Jika Anda membaca posting melalui tautan # 2 di atas dengan cermat, Anda akan melihat bahwa kode di sana menjalankan pelatihan model NER dan menjalankannya. Saya tidak berpikir saya dapat membantu Anda di luar saran di atas.
Aleksandr Blekh
3

Apakah artikel ini cukup baik? http://www.succeed-project.eu/wiki/index.php/NLTK#Input_format_for_training

Ada penjelasan tentang bagaimana seharusnya corpus.

Data Anda harus dalam format IOB (chunktag tag kata) untuk membuatnya berfungsi.
Eric NNP B-PERSON
adalah VB O CEO
AT B-NP
NN I-NP
dari IN O
Google NNP B-ORGANISASI

MaticDiba
sumber
1
Akan ideal untuk mengirim ringkasan artikel yang singkat dalam jawaban ini.
sheldonkreger
1

Saya menemukan tutorial ini cukup membantu: Panduan lengkap untuk membangun Named Entity Recognizer Anda sendiri dengan Python. Ia menggunakan korpus Groningen Meaning Bank (GMB) untuk melatih potongan NER-nya.

Setelah itu Anda dapat memeriksa tutorial ini dari orang yang sama: Melatih Sistem NER Menggunakan Dataset Besar Di mana ia menggunakan scikit belajar untuk meningkatkan kinerja sistemnya.

Akhirnya beberapa tutorial yang sangat berguna dapat ditemukan di sini: NLTK tutorial Orang ini memiliki saluran youtube dengan banyak tutorial di banyak mata pelajaran (ML, NLP, Python ...)

Semoga ini bisa membantu.

Iraklis Moutidis
sumber