したがって、neuralnetパッケージを試して、その使用法と考えられる実装を理解しています。私はSPECTFに働いてる初めてSPECTハートデータセットを使用したneuralnet Rパッケージを使用
は、ここでデータセットが利用可能に聞く:私は予測に興味 https://archive.ics.uci.edu/ml/machine-learning-databases/spect/SPECTF.test
変数は、最初の列です。 実際にSPECTF.testとSPECTF.trainをマージし、test_とtrain_(スケーリングされたすべての変数)のRでランダムに分割します。次のように私は、ニューラルネットワークをセットアップするR-ブログのチュートリアル後
> str(train_)
'data.frame': 200 obs. of 45 variables:
$ V1 : num 1 1 0 1 1 1 1 1 1 1 ...
$ V2 : num 0.783 0.75 0.733 0.767 0.75 ...
$ V3 : num 0.75 0.633 0.6 0.783 0.7 ...
$ V4 : num 0.636 0.886 0.795 0.841 0.545 ...
...
$ V45: num 0.71 0.855 0.797 0.913 0.754 ...
> str(test_)
'data.frame': 67 obs. of 45 variables:
$ V1 : num 0 0 0 0 0 0 0 0 0 0 ...
$ V2 : num 0.583 0.6 0.6 0.633 0.683 ...
$ V3 : num 0.7 0.617 0.783 0.917 0.617 ...
$ V4 : num 0.955 0.705 0.705 0.75 0.727 ...
...
$ V45: num 0.899 0.812 0.899 0.797 0.797 ...
:THITは、彼らがどのように見えるかです
n <- names(train_)
f <- as.formula(paste("train_[,1] ~", paste(n[!n %in% "train_[,1]"], collapse = " + ")))
nn <- neuralnet(f,data=train_,hidden=2,linear.output=T)
そして、それがスムーズに動作します。この時点まで、私はしよう
pr.nn <- compute(nn,test_[,2:45])
をしかし、それは戻って私が解決する方法を理解していないこのエラーは、私を与える:テストデータの予測を行う
を10> pr.nn <- compute(nn,test_[,2:45])
Error in neurons[[i]] %*% weights[[i]] : non-conformable arguments
ご協力いただきありがとうございます。このコミュニティは素晴らしいリソースです!
ありがとうございました!あなたの答えは完璧です!私が質問を投稿した後でなければ、問題は数式の定義にあると理解しましたが、内部で使用されている構文についての良い参考文献は見つかりませんでした。反対のコードでは、すべての変数をすばやく選択する方法については明確です。再度、感謝します! – carloab
将来、このような状況では、モデルオブジェクト($ n $ call)の$ call属性を調べることをお勧めします。 nnオブジェクトを作成するために使用された式が表示されます。これは問題の内容を認識した場所です。 – ZachTurn