Numpy Statsmodels逻辑回归收敛问题
我试图在一个大的设计矩阵(约200列)上运行statsmodels中的逻辑回归。这些特征包括许多交互、分类特征和半稀疏(70%)整数特征。虽然我的设计矩阵实际上并没有病态,但它似乎有点接近(根据Numpy Statsmodels逻辑回归收敛问题,numpy,mathematical-optimization,numerical-methods,logistic-regression,statsmodels,Numpy,Mathematical Optimization,Numerical Methods,Logistic Regression,Statsmodels,我试图在一个大的设计矩阵(约200列)上运行statsmodels中的逻辑回归。这些特征包括许多交互、分类特征和半稀疏(70%)整数特征。虽然我的设计矩阵实际上并没有病态,但它似乎有点接近(根据numpy.linalg.matrix\u秩,它是满秩的tol=1e-3,而不是tol=1e-2)。因此,我很难让逻辑回归与statsmodels中的任何方法收敛。以下是我迄今为止所尝试的: method='newton':在1000次迭代后没有收敛;在尝试反转Hessian矩阵时引发了奇异矩阵Lina
numpy.linalg.matrix\u秩
,它是满秩的tol=1e-3
,而不是tol=1e-2
)。因此,我很难让逻辑回归与statsmodels中的任何方法收敛。以下是我迄今为止所尝试的:
:在1000次迭代后没有收敛;在尝试反转Hessian矩阵时引发了奇异矩阵method='newton'
LinalError
:警告可能会丢失精度。声称在0次迭代后收敛,显然没有实际收敛method='bfgs'
:声称它已经收敛,但模型的伪R平方为负,许多系数仍然为零(并且与他们使用条件更好的子模型收敛到的值非常不同)。我试着将method='nm'
调到xtol
,但没有成功1e-8
:报告的fit_正则化(方法='l1')
。然后,在尝试计算受限Hessian逆时,提出了一个奇异矩阵不等式约束不兼容(退出模式4)
LinalError