R multinom()函数在100次迭代后停止,原因是什么?

R multinom()函数在100次迭代后停止,原因是什么?,r,statistics,regression,R,Statistics,Regression,我有相当多的数据,它有80列,大约22万行 当我试图使用nnet的multinom()函数对无序的多分类数据执行多元逻辑回归时,该函数似乎在100次迭代后停止: # weights: 322 (270 variable) initial value 807521.728781 iter 10 value 191523.940813 iter 20 value 163085.728004 iter 30 value 146262.378340 iter 40 value 139398

我有相当多的数据,它有80列,大约22万行 当我试图使用
nnet
multinom()
函数对无序的多分类数据执行多元逻辑回归时,该函数似乎在100次迭代后停止:

# weights:  322 (270 variable)
initial  value 807521.728781 
iter  10 value 191523.940813
iter  20 value 163085.728004
iter  30 value 146262.378340
iter  40 value 139398.851395
iter  50 value 134606.101687
iter  60 value 133588.725646
iter  70 value 133253.102380
iter  80 value 133129.328709
iter  90 value 133098.717752
iter 100 value 133095.661773
final  value 133095.661773 
stopped after 100 iterations
我还尝试使用
VGAM
vglm()
,但它给了我以下错误:

Error in outer(X, Y, FUN, ...) : allocMatrix: too many elements specified

一个可能的解释是,我的微型macbook air不适合这份工作,但我想知道,对于我目前拥有的数据集,我还必须执行什么样的多项式逻辑回归?

如果您查看
的帮助,multinom
表示它调用
nnet
..
nnet
的附加参数。其中一个参数是
maxit
,默认为100。将其作为参数添加到最大迭代次数中


您还可以查看有关
vglm
错误的信息。

如果您查看
multinom()
的文档,您会看到它包含一个参数
,用于“nnet的附加参数”

然后,查看的文档,您将看到以下用法:

nnet(x, y, weights, size, Wts, mask,
linout = FALSE, entropy = FALSE, softmax = FALSE,
censored = FALSE, skip = FALSE, rang = 0.7, decay = 0,
maxit = 100, Hess = FALSE, trace = TRUE, MaxNWts = 1000,
abstol = 1.0e-4, reltol = 1.0e-8, ...)

您遇到的问题是默认的
maxit
为100。尝试将
maxit=1000
(或任何您想要的)添加到
multinom()
参数中。我还没有测试过这个(我需要你包含可复制的样本数据),但我认为它会起作用。

@Edward你的答案更完整,所以我建议你取消删除它。@Edward请随意放回你的答案或相应地编辑我的答案。你的更完整@安德烈取消了我的回答。谢谢