多项式逻辑回归中的权重过多并且代码运行了几个小时

Shi*_*e_R 1 r machine-learning neural-network nnet

我有一个 DF(train_market) 有 8523 行和 12 列,如图所示在此输入图像描述

我正在做多项逻辑回归模型来获取 test_data 上的 ITem_Outlet_Sales。但是运行模型的代码一起运行了几个小时

 model <- nnet(Item_Outlet_Sales~.,train_market,family="multinomial",size = 5574900,softmax=TRUE)
Run Code Online (Sandbox Code Playgroud)

我尝试了下面显示的其他两个,但仍然运行了几个小时,我应该做哪些更改才能完成它

 model <- multinom(Item_Outlet_Sales~.,train_market,family="multinomial")
 model <- nnet(Item_Outlet_Sales~.,train_market,family="multinomial",size = 5574900,softmax=TRUE)
Run Code Online (Sandbox Code Playgroud)

我得到第二个代码的错误

Error in nnet.default(X, Y, w, mask = mask, size = 0, skip = TRUE, softmax = TRUE,  : 
 too many (5574828) weights
Run Code Online (Sandbox Code Playgroud)

所以将 size =5574900 保留在第三个并尝试,这有帮助。

小智 5

一般来说,包MaxNWts中存在控制权重最大数量的争论。nnet因此,设置MaxNWts为足够大的整数(例如MaxNWts =10000000)应该可以完成这项工作:

model <- nnet(Item_Outlet_Sales~.,train_market,family="multinomial",size = 5574900,softmax=TRUE,MaxNWts =10000000)
Run Code Online (Sandbox Code Playgroud)