이 코드가 있습니다. 두 가지 기능이 있습니다. 두 기능을 함께 훈련 시키려면 어떻게해야합니까?하나 대신 두 가지 기능을 훈련하십시오.
from textblob import TextBlob, Word, Blobber
from textblob.classifiers import NaiveBayesClassifier
from textblob.taggers import NLTKTagger
import re
import nltk
def get_word_before_you_feature(mystring):
keyword = 'you'
before_keyword, keyword, after_keyword = mystring.partition(keyword)
before_keyword = before_keyword.rsplit(None, 1)[-1]
return {'word_after_you': before_keyword}
def get_word_after_you_feature(mystring):
keyword = 'you'
before_keyword, keyword, after_keyword = mystring.partition(keyword)
after_keyword = after_keyword.split(None, 1)[0]
return {'word_after_you': after_keyword}
classifier = nltk.NaiveBayesClassifier.train(train)
lang_detector = NaiveBayesClassifier(train, feature_extractor=get_word_after_you_feature)
lang_detector = NaiveBayesClassifier(train, feature_extractor=get_word_before_you_feature)
print(lang_detector.accuracy(test))
print(lang_detector.show_informative_features(5))
이것은 내가 얻는 결과입니다.
word_before_you = '할']을 참조 : 2.2 = generi : 1.0
word_before_you = generi '때']을 참조 = 1.1 : 1.0
그것은 마지막 기능을 얻을 것으로 보인다. 분류 자에게 하나의 기능 대신 두 가지 기능을 모두 교육시키는 방법은 무엇입니까?
감사합니다. 이제 작동합니다! – user3078335