前提・実現したいこと
svmの説明関数を3次元の状態のまま分類を行いたいと思っています。
Python3.7.4で現在SVMを実装しようとしています。
目的関数(data_ofj)はnp.ndimで”1”
説明関数(data_sets)はnp.ndimで”3”
という状況でfit関数にかけてみていますが、以下のようなエラーに悩まされています。
原因としては説明変数(data_sets)が3次元ではいけないことまでは分かったのですが、fit関数はどのようにしても2次元に落とし込まないといけないのでしょうか。
よろしくお願いいたします。
発生している問題・エラーメッセージ
ValueError: Found array with dim 3. Estimator expected <= 2.
該当のソースコード
Python
1 X_train, X_test, Y_train, Y_test = train_test_split(data_ofj, data_sets, test_size=0.3) 2 print(np.shape(Y_train)) 3 clf = SVC(kernel="rbf", C=1000, gamma=0.01) 4 clf.fit(Y_train, X_train) 5 test_pre = clf.predict(Y_test) 6
試したこと
一度、説明関数をreshapeやtranspose,stackを使い、無理やり2次元にした際にはできたのですが画像のピクセル値ではなく、時間に依存するデータですのでどうしてもそのまま使いたいと思っています。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/06 07:05
2019/12/06 07:12 編集
2019/12/06 07:17
2019/12/09 00:43