2017-03-16 1 views
0

POS 태그 작성자와 관련하여 가장 동적 인 코퍼스는 트리 뱅크 코퍼스입니다. 그러나 Brown Corpus Just는 HMM과 TnT tagger로 결과를 산출하기를 거절합니다. 그것에 대한 설명이 있습니까?갈색 코퍼스가 HMM 및 TnT 태그 작성기로 결과를 얻지 못함

size = int(len(brown.tagged_sents())*0.9) 
train = brown.tagged_sents()[:size] 
test = brown.tagged_sents()[size:] 
trainer = hmm.HiddenMarkovModelTrainer() 
tagger = trainer.train_supervised(train) 
print(tagger.evaluate(test)) 

tnt_tagger = tnt.TnT() 
tnt_tagger.train(train) 
print(tnt_tagger.evaluate(test)) 
+0

말할 코드가 없어도 설명하기가 어렵습니다. – Denziloe

+0

크기 = INT (LEN (brown.tagged_sents()) * 0.9) = 열차 brown.tagged_sents() : 크기] 시험 brown.tagged_sents =() 크기 :] 트레이너 hmm.HiddenMarkovModelTrainer =() 태거 = trainer.train_supervised (train) 인쇄 (tagger.evaluate (test)) – Djokester

+0

감사합니다. 질문에 넣고 코드 블록으로 포맷하십시오. – Denziloe

답변

1

코드는 정확합니다. hmm 태그 작성자입니다. "결과를 산출하기를 거부한다"는 것이 실제로 의미하는 바가 무엇인지 말하지는 않겠지 만 아마도 교수형에 처한 것처럼 보일 것입니다. 그렇지 않습니다. 이러한 알고리즘을 사용하여 모델을 훈련하는 데 오랜 시간이 걸리므로 nltk는 일반적으로 속도를 고려하여 설계되지 않았으므로 교육의 주된 목표는 교육입니다.

100- 문장 훈련 세트로 코드를 테스트하면 제대로 작동하는지 확인할 수 있습니다. (당신은 여전히 ​​조금 기다려야 할 것입니다).

train = brown.tagged_sents()[:100] 
test = brown.tagged_sents()[100:200] 

TnT 코드는 알 수없는 단어를 독자적으로 지원하지 않기 때문에 다른 문제입니다. help(tnt)을 참조하십시오.

관련 문제