質問編集履歴

1 初心者マークつける

benkyouchuu

benkyouchuu score 24

2018/01/11 00:12  投稿

sklearn、RandomForestを使ったマルチラベルでの分類器の評価の際のエラー
現在、sklearnのRandomForestを使った分類器を作成しています。
# 分類器について
ラベル:ユーザの年と性別のフラグ
data:文書
文書を入れると分類され結果、文書のユーザと性別がわかるようにしたいです。
学習は可能なのですが、評価方法がわからず困っております。
# 評価方法
accuracy_scoreを使ったシンプルなものを検討していますが、実際に実行すると
```ここに言語を入力
ValueError: multiclass-multioutput is not supported
```
と出てしまい、前に進めません。
ソース
---
```ここに言語を入力
def machine_learning(db):
dates =[]
labels = []
dictionary=get_dictionary(db)
for age in range(1,3):
for gender_flag in range(0,1):
descriptions = []
for data in db.profile.find({"age": age*10,"gender": gender_flag}).limit(1000):
descriptions.append(data['description'].encode('utf-8'))
tagger = MeCab.Tagger('-Ochasen')
for description in descriptions:
words=[]
nodes = tagger.parseToNode(description)
while nodes:
if nodes.feature.split(',')[0] == '名詞':
word = nodes.surface.decode('utf-8')
words.append(json.dumps(word, ensure_ascii=False))
nodes = nodes.next
labels.append([age,gender_flag])
tmp = dictionary.doc2bow(words)
dense = list(gensim.matutils.corpus2dense([tmp], num_terms=len(dictionary)).T[0])
dates.append(dense)
data_train_s, data_test_s, label_train_s, label_test_s = train_test_split(dates, labels, test_size=0.4)
estimator = RandomForestClassifier(random_state=777)
estimator.fit(data_train_s, label_train_s)
predicted = estimator.predict(data_test_s)
# get the accuracy
print accuracy_score(np.ndarray(label_test_s), predicted)
```
どうか助けてください。。。。
この問題で4時間ぐらい悩んでいます。
また、マルチラベルで他にいい方法があれば提案して頂けたら嬉しいです。
よろしくお願いします。
  • Python

    22223 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Python 2.7

    1716 questions

    Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

  • Python 3.x

    15350 questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

  • 機械学習

    2003 questions

    機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る