Python中的多任务回归
mutar的Python项目详细描述
MuTaR是多任务回归的稀疏模型集合。Mutar模型 相关线性序列上的正则回归拟合 模型(X_1,y_1)…(X_k,y_k)并遵循scikit-learn’sAPI。 与scikit learn的多任务套索相比,MuTaR允许采用不同的设计 每个任务的X。在
Mutar模型包括:
- 独立线性模型:
- 独立套索估计量
- 独立重加权(自适应)Lasso估计量
- 组规范多任务线性模型:
- GroupLasso:Group Lasso是一个l1/l2正则化回归,具有相同的跨任务功能支持(Yuan and Lin, J. R Statistical Society 2006)。在
- DirtyModelDirtyModel:Dirty model是套索群的一个推广,具有部分特征重叠。它们是使用复合l1/l2和l1正则化(Jalali et al., NeurIPS 2010)来定义的。在
- 多层Lasso是一个非凸模型,它进一步增强了稀疏性,并鼓励与乘积分解(Lozano and Swirszcz, ICML 2012)部分重叠。在
- 最优运输正则化模型:
- 多任务Wasserstein是一种稀疏回归模型,任务间的相关特征根据定义的几何关系接近。(Janati et al., AISTATS 2019)。在
- ReMTWReMTW:重加权MTW是MTW的一个非凸变量,它促进了更稀疏性,并减少了L1范数引起的振幅偏差。这两个模型都是用一个伴随的参数实现的,用于推断每个任务的标准差并相应地调整正则化的数量。在
安装
要安装MuTaR的最新版本:
pip install -U mutar
要获取当前的开发版本:
^{pr2}$我们建议创建这个最小的conda env
conda env create --file environment.yml conda activate mutar-env git clone https://github.com/hichamjanati/mutar cd mutar python setup.py develop
示例
>>>importnumpyasnp>>>frommutarimportGroupLasso>>># create some X (n_tasks, n_samples, n_features)>>>X=np.array([[[3.,1.],[2.,0.]],[[0.,2.],[-1.,3.]]])>>>print(X.shape)(2,2,2)>>># and target y (n_tasks, n_samples)>>>y=np.array([[-3.,1.],[1.,-2.]])>>>print(y.shape)(2,2)>>>gl=GroupLasso(alpha=1.)>>>coef=gl.fit(X,y).coef_>>>print(coef.shape)(2,2)>>># coefficients (n_features, n_tasks)>>># share the same support>>>print(coef)[[-0.80.6][-0.-0.]]
文件
请参阅文档并在MuTaR webpage处使用示例。在
- 项目
标签: