2017-02-28 7 views
2

私は今、ニューラルネットワークを学ぶので、この質問をどこから始めるべきか分かりません。私は文章とラベルのペアを持つ大きなデータベースを持っています。たとえば、次のようにPython3テキストラベリング

i want take a photo < photo 
i go to take a photo < photo 
i go to use my camera < photo 
i go to eat something < eat 
i like my food < eat 

ユーザーが新しい文を記述する場合、私はすべてのラベルaccurancyスコアを確認したい:

<写真「私は私のカメラを使用した後、私は、ベッドに入る」:0.9000、食べる:0.4000を、...

質問はどこから始めることができますか? Tensorflowと学ぶscikitがよさそうだが、この文書は、正確さを示していけないclassificationt:新しいデータのための

答えて

1
import numpy as np 
from sklearn.linear_model import LogisticRegression 
from sklearn.feature_extraction.text import TfidfVectorizer 
from sklearn.preprocessing import LabelEncoder 
from sklearn import metrics 

sentences = ["i want take a photo", "i go to take a photo", "i go to use my camera", "i go to eat something", "i like my food"] 

labels = ["photo", "photo", "photo", "eat", "eat"] 

tfv = TfidfVectorizer() 

# Fit TFIDF 
tfv.fit(traindata) 
X = tfv.transform(traindata) 

lbl = LabelEncoder() 
y = lbl.fit_transform(labels) 

xtrain, xtest, ytrain, ytest = cross_validation.train_test_split(X, y, stratify=y, random_state=42) 

clf = LogisitcRegression() 
clf.fit(xtrain, ytrain) 
predictions = clf.predict(xtest) 

print "Accuracy Score = ", metrics.accuracy_score(ytest, predictions) 

:\

new_sentence = ["this is a new sentence"] 
X_Test = tfv.transform(new_sentence) 
print clf.predict_proba(X_Test) 
+0

を? [OK]を、しかし、どのように私はすべてのラベルに新しいランダムな文章をチェックできますか? – esemve

+0

更新された回答を参照してください –

+0

Thxはたくさんありますが、私の最後の質問です:それは仕事ですが、例えば私が何かを食べに行くような既存の文章を検索すると、0.55 0.44です。食べ物カテゴリの列車データ:\最初の数字は写真ではなく、2番目の数字は食べ物カテゴリですか?それとも、そうでない場合は、どのような数字がどのカテゴリになるのでしょうか? – esemve