一个可扩展的软件包,用于拟合具有成对特征交互的稀疏线性回归模型,在强层次结构下。

hierScale的Python项目详细描述


等级

Hussein Hazimeh和Rahul Mazumder

麻省理工学院

简介

hierScale是一个可伸缩的工具包,用于拟合稀疏线性回归模型和成对的特征交互。优化是在strong hierarchy(SH)约束下完成的:交互系数只有在其相关联的主要特征系数非零时才是非零的。这个约束可以增强稀疏交互模型的可解释性,还可以降低未来的数据收集成本;请参见(Hazimeh and Mazumder, 2020)中的讨论。

更正式地说,给定一个主要特性的数据矩阵X和一个响应向量y,该工具箱适用于以下模型的凸松弛

其中X_i表示X的第i列(特征),并且*表示元素乘法。L0范数使系数具有稀疏性,而约束则加强了SH。关于如何导出上述问题的凸松弛的详细信息,请参见(Hazimeh and Mazumder, 2020)。对正则化路径(即,在lambda_1和lambda_2的网格上)进行优化。我们使用近端梯度下降(PGD)进行优化,同时使用新的近端筛选和梯度筛选规则,使PGD的速度提高了4900倍以上

安装

层次结构是用python3编写的。它在内部使用Gurobi(用于解决检查最优性条件所需的LPs)。在安装hierScale之前,请确保安装了Gurobi及其Python接口(gurobiby)。

要安装hierScale,请运行以下命令:

pip install hierScale

快速入门

在Python中,假设将数据X和y存储为numpy数组,请运行以下命令以适应正则化路径:

^{pr2}$

参考文献

Learning Hierarchical Interactions at Scale: A Convex Optimization Approach

Bibtex引文如下:

@inproceedings{hazimeh_mazumder_2020,
  author    = {Hussein Hazimeh and
               Rahul Mazumder},
  title     = {Learning Hierarchical Interactions at Scale: A Convex Optimization Approach},
  booktitle = {The 23nd International Conference on Artificial Intelligence and Statistics,
               {AISTATS} 2020, 3-5 June 2020, Palermo, Sicily, Italy},
  series    = {Proceedings of Machine Learning Research},
  volume    = {108},
  publisher = {{PMLR}},
  year      = {2020},
  url       = {https://arxiv.org/abs/1902.01542},
}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
ARM(I.Mx6)的JAVA运行时环境(JRE)   java Dojo插件在Struts 2中不起作用   java我正在读取图像并对其进行更改。但这些更改不会被保存   java如果main方法包含在main中调用的实例的定义,那么它怎么可能在类中拥有main方法呢?   java opencv3视频捕获(windows)不工作   java有关于如何在我的应用程序中使用JEditTextArea的教程吗?   java如何使用Javalin的swagger/OpenAPI用户界面读取数组formParams?   如何从Java将JSON文件导入mongodb   函数式编程Java Streams如何根据函数输出正确过滤   java Eclipse Tomcat安装程序   JavaFX程序关闭或失去连接时的java PHP函数   java禁用控制台的调试spring日志   javascript为什么ajax方法调用错误函数?   java JOptionPane。在小程序中打开两次showinputdialog