跳到内容

该MATLAB软件包能够有效计算带弹性网(L1和L2)惩罚的多项式logistic回归的遗漏交叉验证误差。计算基于分析近似,这可以避免重新优化并减少大量计算时间。Python版本:https://github.com/T-Obuchi/Accele公司

许可证

T-Obuchi/加速CVonMLR_matlab

文件夹和文件

姓名姓名
上次提交消息
上次提交日期

最新提交

 

历史

17承诺
 
 
 
 
 
 
 
 

存储库文件导航

加速CVonMLR_matlab

带弹性网正则化的多项式logistic回归的近似交叉验证

这是一个自由软件,您可以根据GNU通用公共许可证第3版或更高版本的条款重新发布和/或修改它。有关详细信息,请参阅LICENSE.txt。

分发此程序是希望它有用,但没有任何保证;甚至没有适销性或特定用途适用性的暗示保证。

描述

使用估计的权重向量wV(瓦特)给定特征数据X(X)和班级Y代码弹性网正则化惩罚的多项式logistic回归(第一层规范和L2级范数),该程序计算并返回一个近似的leave-one-out估计量(LOOE)及其预测似然的标准误差。所有必需的代码都在“routine”文件夹中。请注意,此程序本身不包含任何要获取的解算器wV(瓦特)。请使用其他分布式程序。

用法

对于多项式logistic回归(>2)类,

[,错误]=acv_mlr公司(wV(瓦特),X(X),Y代码,,λ2)

输入:

  • wV(瓦特):估计的权重向量N个*维度的
  • X(X):的特征向量集M(M)*N个维度的
  • Y代码:的M(M)*表示相应特征向量所属类别的维数二进制矩阵
  • λ2:的系数L2级规范。如果没有这个论点,λ2设置为默认值λ2=0

输出:

  • :遗漏估计器的近似值
  • 错误:遗漏估计器的近似标准误差

有关更多详细信息,请键入help acv_mlr。

如果acv_mlr公司需要很长的运行时间,请尝试进一步简化的近似值

[,错误]=saacv_mlr公司(wV(瓦特),X(X),Y代码,,λ2)

在我们的实验中,acv_mlr公司如果N个几百或更少,但是saacv_mlr公司越大越快N个。对于小数据和模型,这些近似值不一定很快,因此我们建议对此类情况执行文字交叉验证。有关详细信息,请参阅参考。

对于二项logistic回归(logit模型),

[,错误]=acv_日志(w个,X(X),Y代码,λ2)

输入:

  • w个:估计的权重向量N个维度的
  • X(X):的特征向量集M(M)*N个维度的
  • Y代码:的M(M)*2表示相应特征向量所属类别的维数二进制矩阵
  • λ2:的系数L2级规范。如果没有这个论点,λ2设置为默认值λ2=0

输出与多项式情况相同。logit模型的进一步简化近似实现于saacv_日志

演示

在“demo”文件夹中,可以使用多项式和二项式逻辑回归的演示代码,分别是demo_LOOEapprox_mlr.m和demo_LOEApprox_logit.m。

要求:glmnet(https://web.stanford.edu/~hastie/glmnetmatlab/)需要获得这些演示代码中的权重向量。

参考文献

小渊聪(Tomoyuki Obuchi)和川岛美久(Yoshiyuki Kabashima):“加速多项式逻辑回归的交叉验证$ell_1$-正规化”,arXiv:1711.05420

关于

该MATLAB软件包能够有效计算带弹性网(L1和L2)惩罚的多项式logistic回归的遗漏交叉验证误差。计算基于分析近似,这可以避免重新优化并减少大量计算时间。Python版本:https://github.com/T-Obuchi/Accele网站

话题

资源

许可证

星星

观察者

叉子

发布

未发布版本

包装

未发布包