statsmodels.genmod.generalized_线性_模型.GLM.fit¶
-
GLM.fit(start_params=
None, maxiter=100, method='IRLS', tol=1e-08, scale=None, cov_type='nonrobust', cov_kwds=None, use_t=None, full_output=True, disp=False, max_start_irls=3, **kwargs)[source]¶ 拟合给定族的广义线性模型。
- Parameters:¶
- start_paramsarray_like,
optional 对数似然最大化解决方案的初始猜测。 默认值是特定于族的,由
family.starting_mu(endog)给出。如果给出了 start_params,则初始均值将计算为np.dot(exog, start_params)。- maxiter
int,optional 默认值为100。
- method
str 默认是‘IRLS’用于迭代重加权最小二乘法。 否则使用梯度优化。
- tol
float 收敛容差。默认值为 1e-8。
- scale
strorfloat,optional scale 可以是 ‘X2’、‘dev’ 或一个浮点数 默认值是 None,对于 Gamma、Gaussian 和 Inverse Gaussian,使用 X2。 X2 是皮尔逊卡方除以 df_resid。 对于 Binomial 和 Poisson 族,默认值是 1。 dev 是偏差除以 df_resid
- cov_type
str 要计算的参数估计协方差矩阵的类型。
- cov_kwdsdict-like
计算参数估计协方差的额外参数。
- use_tbool
如果为真,则使用学生t分布进行推理。
- full_outputbool,
optional 设置为 True 以在 Results 对象的 mle_retvals 属性中获取所有可用输出。输出内容取决于求解器。有关更多信息,请参阅 LikelihoodModelResults 注释部分。如果方法是 IRLS,则不使用此设置。
- dispbool,
optional 设置为 True 以打印收敛消息。如果方法是 IRLS,则不使用。
- max_start_irls
int 用于获取梯度优化起始值的IRLS迭代次数。仅在method设置为‘IRLS’以外的值时相关。
- atol
float,optional (适用于IRLS拟合) 必须满足的绝对容差标准。默认为
tol。当满足以下条件时,达到收敛:\(rtol * prior + atol > abs(current - prior)\)- rtol
float,optional (适用于IRLS拟合) 必须满足的相对容差标准。默认为0,表示
rtol未被使用。 当满足以下条件时,收敛达到: \(rtol * 先前值 + atol > abs(当前值 - 先前值)\)- tol_criterion
str,optional (适用于IRLS拟合) 默认为
'deviance'。可以选择性地设为'params'。- wls_method
str,optional (适用于IRLS拟合) 选项包括‘lstsq’、‘pinv’和‘qr’,用于指定在IRLS优化中使用哪种线性代数函数。默认值为lstsq,它使用与‘pinv’相同的基于SVD的方法,但在迭代过程中更快。‘lstsq’和‘pinv’通过基于各自numpy.linalg函数的rcond截断小的奇异值来正则化奇异和近奇异情况下的估计。‘qr’仅适用于非奇异和非近奇异的情况。
- optim_hessian{‘eim’, ‘oim’},
optional (可用于scipy优化器拟合)当使用‘oim’——默认选项时,拟合过程中使用观测到的Hessian。‘eim’是期望的Hessian。这可能会提供更稳定的拟合,但增加了Hessian正确指定的假设。
- start_paramsarray_like,
注释
如果方法为‘IRLS’,则可以使用一个额外的关键字‘attach_wls’。目前这仅用于内部使用,并且在未来的版本中可能会发生变化。如果‘attach_wls’为真,则IRLS迭代的最终WLS实例将附加到结果实例中,作为results_wls属性。