2017-03-01 1 views
0

그래, NaiveBayes Movie Review Classifier를 교육 했으므로 ... (내가 복사하여 txt 파일에 붙여 넣은 웹 사이트에서) 부정적 리뷰에 대해 실행하면 'pos'를 얻는 ... 나는 틀린 무엇인가하고있다? 여기에 아래의 코드입니다 :부정적 리뷰에서 'pos'테스트 받기

import nltk, random 
from nltk.corpus import movie_reviews 
documents = [(list(movie_reviews.words(fileid)), category) 
for category in movie_reviews.categories() 
for fileid in movie_reviews.fileids(category)] 
random.shuffle(documents) 
all_words = nltk.FreqDist(w.lower() for w in movie_reviews.words()) 
word_features = list(all_words)[:2000] 

def document_features(document): 
    document_words = set(document) 
    features = {} 
    for word in word_features: 
     features['contains({})'.format(word)] = (word in document_words) 
    return features 

featuresets = [(document_features(d), c) for (d,c) in documents] 
train_set, test_set = featuresets[100:], featuresets[:100] 
classifier = nltk.NaiveBayesClassifier.train(train_set) 

print(nltk.classify.accuracy(classifier, test_set)) 
classifier.show_most_informative_features(5) 
>>>0.67 
>>>Most Informative Features 
     contains(thematic) = True    pos : neg =  8.9 : 1.0 
     contains(annual) = True    pos : neg =  8.9 : 1.0 
     contains(miscast) = True    neg : pos =  8.7 : 1.0 
     contains(supports) = True    pos : neg =  6.9 : 1.0 
    contains(unbearable) = True    neg : pos =  6.7 : 1.0 

f = open('negative_review.txt','rU') 
fraw = f.read() 
review_tokens =nltk.word_tokenize(fraw) 
docfts = document_features(review_tokens) 

classifier.classify(docfts) 
>>> 'pos' 

UPDATE 여러 번 재 실행중인 프로그램을 한 후에는, 지금은 정확하게 누군가가 나에게 이유를 이해하는 데 도움이 ... 내 부정적인 리뷰가 부정적인 분류? 아니면이 평범한 마법인가?

답변

1

분류자가 100 % 정확하지 않습니다. 더 나은 테스트는 여러 영화 리뷰를 통해 분류 자의 동작을 확인하는 것입니다. 분류기의 정확도는 67 %로 1/3의 검토가 잘못 분류됩니다. 다른 분류 기준이나 다른 기능 (n-gram 및 word2vec 시도)을 사용하여 모델을 개선 할 수 있습니다.

+0

NaiveBayes 분류 자만 사용하도록 과제가 지정되었습니다./ –

+0

코드에 아무 문제가 없으며 기능을 향상시켜야합니다. 적중해야 할 특정 정확도 임계 값이 있습니까? – megadarkfriend

+0

nah ... 실제로 이상한 것은 몇 번 다시 실행 한 후입니다 ... 실제로 부정적인 리뷰를 부정적인 것으로 분류합니다! 이것은 매우 이상합니다 ... 나는이 실행 스크린 샷을 찍어 내 과제 아래 게시 할 것입니다! 또한 정확도가 0.7로 상승했습니다! 이 마법이야? –

관련 문제