2016-06-28 3 views
1

Ich versuche, verschiedene Klassifikator für dieses Beispiel in scikit-learn Website http://scikit-learn.org/stable/tutorial/text_analytics/working_with_text_data.html zu erkunden. Der folgende Code verursachte jedoch einen Fehler: ValueError: Festlegen eines Array-Elements mit einer Sequenz.Python Fehler ein Array-Element mit einer Sequenz

from sklearn.feature_extraction.text import CountVectorizer 
from sklearn.feature_extraction.text import TfidfTransformer 
import tensorflow.contrib.learn as skflow 

data = ["I so handsome. I just broke the mirror!","I am a normal guy."] 
label = np.array([0,1]) 

#CountVectoriser 
count_vect = CountVectorizer() 
X_train_counts = count_vect.fit_transform(data) 

#TfidfTransformer 
tfidf_transformer = TfidfTransformer() 
X_train_tfidf = tfidf_transformer.fit_transform(X_train_counts) 

#Classifier 
clf = skflow.TensorFlowLinearClassifier(n_classes=2) 
clf.fit(X_train_tfidf, label) 

Antwort

2

Die TensorFlowLinearClassifier behandelt nicht CSR Matrix als Eingabe, können Sie den Fortschritt in that issue folgen.


Was Sie jetzt tun können, ist X_train_tfidf auf eine numpy Matrix konvertieren, bevor es zu clf.fit() Fütterung:

clf.fit(X_train_tfidf.toarray(), label)