GitHub

您所在的位置:网站首页 回归算法python GitHub

GitHub

#GitHub| 来源: 网络整理| 查看: 265

算法包说明

封装了三种回归:OLS,岭回归,lasso回归算法。支持多重共线性的自动推断。 岭回归回归和OLS都有解析解,是直接解析解出,无需设置epoach参数,对于岭回归只需要自定义合适的lambda(罚函数前面的系数)。 Lasso回归需要设置一个固定的epoach,因为暂时使用的是批量梯度下降算法,有空我会更新成更合适岭回归的坐标轴下降算法进行实现。Lasso回归的迭代初始点是服从高斯分布的随机数,如果想要固定结果,请给numpy.random()模块设置一个确定的种子以保证结果的一致性。 带罚函数项的算法部分的lambda的选取,需要自行选取,暂时没做lambda的只能选取,以后,我可能会更新。

使用的方法

下载这个包,然后在同文件目录下import本包然后就可以使用Regression类了。 初始化回归器的时候请注意,特征矩阵不需要补一列全1列,因为我在算法包里会给你补全,传入原始特征矩阵和标签向量就可以。 计算结果说明:train()方法会返回一个权重向量beta,其中第一个维度是截距项,其他部分依次对应特征向量的列对应的特征的权重。 batch_predict()方法直接传入矩阵,他可以做批量数值的预测,返回预测值构成的向量。

Regression的构造函数定义和参数说明注释里有写。我这里只介绍构造参数中的mode。

mode == 'auto': 自动判别数据集有没有多重共线性,如果没有就使用OLS;否则使用岭回归进行解析。 mode == 'Ridge': 直接采用岭回归算法 mode == ‘Lasso’ 直接采用Lasso回归算法

测试案例没有跑很多,我就试了一下波士顿房价预测,效果还算可以。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3