我正在使用 python statsmodels 包使用我的数据来训练 GLM 模型(泊松族)。我拥有的数据包含数值和分类值。我对数值进行了标准化,并对分类值进行了单热编码(放弃第一级)。当我将数据拟合到模型中时,出现以下异常:
~/miniconda3/envs/losscost/lib/python3.7/site-packages/insite/losscost/losscost.py in evaluate(self, x, control, peril_descs)
271 family=sm.families.Poisson(link=sm.families.links.log()),
272 )
--> 273 freq_fitted = freq_glm.fit()
274 freq_results[name].append(freq_fitted)
275
~/miniconda3/envs/losscost/lib/python3.7/site-packages/statsmodels/genmod/generalized_linear_model.py in fit(self, start_params, maxiter, method, tol, scale, cov_type, cov_kwds, use_t, full_output, disp, max_start_irls, **kwargs)
1025 return self._fit_irls(start_params=start_params, maxiter=maxiter,
1026 tol=tol, scale=scale, cov_type=cov_type,
-> 1027 cov_kwds=cov_kwds, use_t=use_t, **kwargs)
1028 else:
1029 self._optim_hessian = kwargs.get('optim_hessian')
~/miniconda3/envs/losscost/lib/python3.7/site-packages/statsmodels/genmod/generalized_linear_model.py in _fit_irls(self, start_params, maxiter, tol, scale, cov_type, cov_kwds, use_t, **kwargs)
1163 wls_mod = reg_tools._MinimalWLS(wlsendog, wlsexog,
1164 self.weights, check_endog=True,
-> 1165 check_weights=True)
1166 wls_results = wls_mod.fit(method=wls_method)
1167 lin_pred = np.dot(self.exog, wls_results.params)
~/miniconda3/envs/losscost/lib/python3.7/site-packages/statsmodels/regression/_tools.py in __init__(self, endog, exog, weights, check_endog, check_weights)
46 if check_weights:
47 if not np.all(np.isfinite(w_half)):
---> 48 raise ValueError(self.msg.format('weights'))
49
50 if check_endog:
ValueError: NaN, inf or invalid value detected in weights, estimation infeasible.
Run Code Online (Sandbox Code Playgroud)
我尝试仅对数值进行训练,效果很好。导致此问题的原因可能是什么?
您可以像这样在 fit 调用中添加关键字参数,看看它是否有帮助:
model = sm.GLM(...)
model.fit(method="lbfgs")
Run Code Online (Sandbox Code Playgroud)
我认为 Inf/NaN 位于 IRLS 权重中。IRLS 的鲁棒性略低于直接优化。
另外,请确保您的设计矩阵不是单一的:
model = sm.GLM(...)
u, s, vt = numpy.linalg.svd(model.exog, 0)
print(s)
Run Code Online (Sandbox Code Playgroud)
s 的所有元素(奇异值)都应严格为正。
如果您仍然遇到问题,您的模型的样本量和尺寸是多少?
| 归档时间: |
|
| 查看次数: |
6092 次 |
| 最近记录: |