はじめて機械学習を使ってみるにあたって、
麻雀の役をscikit-learnを使って学習させたいと思っています。
萬子・筒子・索子をそれぞれリストで並ばせて、
tile_data = ['1-Bam', '2-Bam', '3-Bam', '4-Bam', '5-Bam', '6-Bam', '7-Bam', '8-Bam', '9-Bam',
'1-Char', '2-Char', '3-Char', '4-Char', '5-Char', '6-Char', '7-Char', '8-Char', '9-Char',
'1-Dot', '2-Dot', '3-Dot', '4-Dot', '5-Dot', '6-Dot', '7-Dot', '8-Dot', '9-Dot',
'East', 'South', 'West', 'North', 'Blank', 'Fortune', 'Center']
各牌に対する要素番号で、これの番号とする
例[0, 0, 0] == [1索,1索,1索]
これの後にランダムに牌の組み合わせを生成し、
train用とlabel用の配列を作りました各500*3, 500
(1: 役 0: 無役)
train label
[1, 1, 1] == [1]
[1, 2, 3] == [1]
[1, 2, 4] == [0]
[1, 2, 2] == [0]
などなど
機械学習用のデータの加工の仕方がわからず
これをそのまま
data = [1, 1, 1]
clf = svm.LinearSVC()
clf.fit(train, label)
clf.predict(data)
として実行してみるとエラーが以下のように出ます。
DeprecationWarning: Passing 1d arrays as data is deprecated in 0.17 and will raise ValueError in 0.19. Reshape your data either using X.reshape(-1, 1) if your data has a single feature or X.reshape(1, -1) if it contains a single sample.
DeprecationWarning)
どなたか理由を教えていただければと思います。
また今回のエラーの直接的な解決策でなくてもいいので、代替案などあったらそれも幸いです。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。