statsmodels.sandbox.regression.gmm.LinearIVGMM.fit

LinearIVGMM.fit(start_params=None, maxiter=10, inv_weights=None, weights_method='cov', wargs=(), has_optimal_weights=True, optim_method='bfgs', optim_args=None)

使用GMM估计参数并返回GMMResults

待办事项:权重和协方差参数仍需与其他模型中的类似选项保持一致, 请参阅 RegressionResult.get_robustcov_results

Parameters:
start_paramsarray (optional)

参数ub最小化的起始值。如果为None,则调用fitstart方法获取起始值。

maxiterint or ‘cue’

迭代GMM中的迭代次数。可以通过设置maxiter=0或1来获得一步估计。如果maxiter较大,则迭代将在达到maxiter或参数收敛时停止(TODO:目前尚无收敛标准选项。)如果maxiter == ‘cue’,则计算连续更新的GMM,该方法在最小化GMM目标函数的过程中更新权重矩阵。CUE估计使用一步参数作为起始值。

inv_weightsNone or ndarray

初始权重矩阵的逆。如果未给出inv_weights,则使用方法start_weights,该方法依赖于子类,对于IV子类,inv_weights = z’z,其中z是工具变量,否则使用单位矩阵。

weights_methodstr, defines method for robust

这里的选项与 statsmodels.stats.robust_covariance 类似,默认是异方差一致性,HC0

当前可用的方法是

  • cov : HC0,可选地进行自由度修正

  • hac :

  • iid : 未测试,仅适用于Z*u情况,IV情况下u作为与Z无关的误差

  • ac : 尚未可用

  • 集群 : 尚未连接

  • 来自 robust_covariance 的其他内容

wargs`tuple or dict,

weights_method 的必需和可选参数

  • centered : bool, 表示是否在计算权重和协方差矩阵时对矩进行中心化处理,适用于所有 weight_methods

  • ddof : 整数 自由度修正,目前仅适用于cov

  • maxlag : 整数 HAC计算中包含的滞后数,仅适用于hac

  • 其他人尚未完成,例如用于聚类稳健的组

has_optimal_weights: If true, then the calculation of the covariance

matrix 假设我们具有最优的 GMM,其中 \(W = S^{-1}\)。 默认值为 True。 TODO: 在 onestep 之后,我们是否希望有不同的默认值?

optim_methodstr, default is ‘bfgs’

数值优化方法。目前并非所有在LikelihoodModels中可用的优化器都已连接。

optim_argsdict

数值优化器的键值参数。

Returns:
resultsinstance of GMMResults

这也作为属性结果附加

注释

警告:一步估计,maxiter 为 0 或 1,仍然存在问题(至少与 Stata 的 gmm 相比)。 默认情况下,它使用异方差稳健的协方差矩阵,但假设权重矩阵是最优的。 请参阅结果实例中的 cov_params 选项。

与权重矩阵相同的选项也适用于计算参数估计的协方差矩阵的估计。


Last update: Oct 16, 2024