Nltk: Demo Brill Tagger Rusak

Dibuat pada 9 Sep 2017  ·  6Komentar  ·  Sumber: nltk/nltk

Saya perhatikan bahwa dalam buku (bagian 6, contoh 6.1), kode yang disarankan adalah: nltk.tag.brill.demo()

Ketika saya menjalankan ini saya mendapatkan kesalahan berikut: AttributeError: module 'nltk.tag.brill' has no attribute 'demo'

Apakah saya melewatkan sesuatu?

book resolved tests

Komentar yang paling membantu

Apa yang dilakukan @campionfellin berhasil. Terima kasih!

Mungkin buku seharusnya bukan nltk.tag.brill.demo() menjadi:

from nltk.tbl import demo as brill_tagger
brill_tagger.demo()

Semua 6 komentar

Ada beberapa reorganisasi basis kode nltk yang terjadi untuk modul penanda Brill, lihat https://github.com/nltk/nltk/commits/develop/nltk/tag/brill.py

Saat ini demo penanda Brill berada di https://github.com/nltk/nltk/blob/develop/nltk/tbl/demo.py , jadi dalam kode:

import nltk
nltk.tbl.demo()

Saya khawatir itu tidak berhasil juga. Saya mendapatkan kesalahan impor pada map_tag :

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Compilers\Python\lib\site-packages\nltk\__init__.py", line 128, in <module>
    from nltk.chunk import *
  File "C:\Compilers\Python\lib\site-packages\nltk\chunk\__init__.py", line 157, in <module>
    from nltk.chunk.api import ChunkParserI
  File "C:\Compilers\Python\lib\site-packages\nltk\chunk\api.py", line 15, in <module>
    from nltk.chunk.util import ChunkScore
  File "C:\Compilers\Python\lib\site-packages\nltk\chunk\util.py", line 13, in <module>
    from nltk.tag.mapping import map_tag
  File "C:\Compilers\Python\lib\site-packages\nltk\tag\__init__.py", line 68, in <module>
    from nltk.tag.brill         import BrillTagger
  File "C:\Compilers\Python\lib\site-packages\nltk\tag\brill.py", line 16, in <module>
    from nltk.tbl import Feature, Template
  File "C:\Compilers\Python\lib\site-packages\nltk\tbl\__init__.py", line 29, in <module>
    from nltk.tbl.demo import demo
  File "C:\Compilers\Python\lib\site-packages\nltk\tbl\demo.py", line 18, in <module>
    from nltk.corpus import treebank
  File "C:\Compilers\Python\lib\site-packages\nltk\corpus\__init__.py", line 66, in <module>
    from nltk.corpus.reader import *
  File "C:\Compilers\Python\lib\site-packages\nltk\corpus\reader\__init__.py", line 59, in <module>
    from nltk.corpus.reader.tagged import *
  File "C:\Compilers\Python\lib\site-packages\nltk\corpus\reader\tagged.py", line 18, in <module>
    from nltk.tag import str2tuple, map_tag
ImportError: cannot import name 'map_tag'

Hei, saya tidak mendapatkan kesalahan ini, menggunakan python v2.7.10. Versi apa yang Anda gunakan? Ini adalah keluaran saya:

>>> import nltk
>>> from nltk.tbl import demo as issue1828
>>> issue1828.demo()
Loading tagged data from treebank...
Read testing data (200 sents/5251 wds)
Read training data (800 sents/19933 wds)
Read baseline data (800 sents/19933 wds) [reused the training set]
Trained baseline tagger
    Accuracy on test set: 0.8345
Training tbl tagger...
TBL train (fast) (seqs: 800; tokens: 19933; tpls: 24; min score: 3; min acc: None)
Finding initial useful rules...
    Found 12960 useful rules.

           B      |
   S   F   r   O  |        Score = Fixed - Broken
   c   i   o   t  |  R     Fixed = num tags changed incorrect -> correct
   o   x   k   h  |  u     Broken = num tags changed correct -> incorrect
   r   e   e   e  |  l     Other = num tags changed incorrect -> incorrect
   e   d   n   r  |  e
------------------+-------------------------------------------------------
  23  23   0   0  | POS->VBZ if Pos:PRP@[-2,-1]
  16  17   1   0  | NN->VB if Pos:-NONE-@[-2] & Pos:TO@[-1]
  15  16   1   0  | VBN->VBD if Pos:PRP@[-1]
  12  12   0   0  | VBP->VB if Pos:MD@[-2,-1]

dan seterusnya...

Terima kasih @campionfellin untuk memverifikasi.

@MrDupin bisakah Anda memberi kami detail versi Anda sehingga kami dapat membantu Anda?

Selain itu, saya pikir akan lebih baik untuk menambahkan demo ini ke salah satu dari unittest di nltk/test/unit sehingga fungsionalitas demo ini dapat diuji dalam pengujian CI otomatis. Ada yang siap untuk ini?

@stevenbird Kami juga harus mengubah kode untuk buku online juga di https://github.com/nltk/nltk_book/edit/master/book/ch05.rst juga.

Apa yang dilakukan @campionfellin berhasil. Terima kasih!

Mungkin buku seharusnya bukan nltk.tag.brill.demo() menjadi:

from nltk.tbl import demo as brill_tagger
brill_tagger.demo()

Menambahkan demo ke unittest di #2099

Contoh buku harus diselesaikan dengan https://github.com/nltk/nltk_book/pull/204

Apakah halaman ini membantu?
0 / 5 - 0 peringkat