插入符号中的神经网络:用于分类的错误模型类型

时间:2016-12-24 22:21:55

标签: r

我试图训练一个模型用#34; neuralnet"来预测一个连续的数字变量。 Caret包中的方法。执行以下代码行时,将引发以下错误:

  

train.default出错(Cadence_IVs,Cadence_Train_Response,method =   " neuralnet",:用于分类的错误模型类型

NN_Cadence <- train(Cadence_IVs, Cadence_Train_Response, method = "neuralnet", layer1 = 10, layer2 = 5, decay = 0.1, linear.output = TRUE)

这是数据看起来喜欢的,有105,000行:

RiderID     Index      Date      Time  Average_Gradient  Max_Gradient   Distance   Highest_point  Speed         Power      Cadence
1           27330   3/28/2011  8:19:36       0              6.2          5132.29     12.8          47.9653271    63.3        71.5 
15           991    1/29/2016  6:05:04     -1.5              0            242.9       52.3         10.5608695    267.2       72.6 
15           979    1/29/2016  6:51:19       0               0           581.97      -23           10.03396552   239.2       77.6 
12          49047   4/14/2013  7:45:52       0              3.5           471.2       45.4         18.848        383.6       140.4 
11          46677   5/30/2015  15:25:44    -7.8            -2.6           410.7       124.4        18.66818182   98.3        97.9 

&#34; RiderID&#34;被编码为因子,&#34;日期&#34;被编码为Date变量。时间被编码为字符,但被排除在Cadence_IV之外。所有其他变量都编码为&#34;数字&#34;数据类型,包括响应变量,即&#34; Cadence。&#34;

Cadence_IVs是除Cadence和Time之外的所有列的矩阵。 Cadence_Train_Response是Cadence值的一列矩阵。

非常感谢任何帮助。如果我错过了任何可能有用的细节,请告诉我。

1 个答案:

答案 0 :(得分:1)

来自插入符号的神经网络仅处理回归并且需要3个参数,即1-3层。

您必须在调谐网格中提供这些参数。这是一个例子,希望你明白这一点。

tunegrid <- expand.grid(.layer1=4:6, .layer2=2, .layer3=0)
train(mpg ~ cyl + vs + am + carb, data = mtcars, method="neuralnet", tuneGrid = tunegrid)