scikit-learn 线性回归 LinearRegression 参数详解
scikit-learn 线性回归 LinearRegression 参数详解
- LinearRegression 参数详解
- 参考文献
LinearRegression 参数详解
# 从 sklearn 中引入线性模型模块
from sklearn import linear_model
# 建立线性回归对象 reg
reg = linear_model.LinearRegression(fit_intercept=True,copy_X=True,n_jobs=-1,positive=False)
fit_intercept
: 是 bool 值只支持 True /False, 默认是 True
意思是,模型是否拟合截距项 w0w_0w0 一般情况下我们都需要拟合 w0w_0w0 也就是我们使用 True 选项,但是对于一些已经中心化的数据,其截距项可以确定为 0 我们就可以使用 False 选项,不拟合截距项。
例如:
# 从 sklearn 中引入线性模型模块
from sklearn import linear_model
# 建立线性回归对象 reg
reg = linear_model.LinearRegression(fit_intercept=False)
# 通过建立的对象拟合数据 x 为 [[0, 0], [1, 1], [2, 2]], y 为 [0, 1, 2]
reg.fit([[0, 0], [1, 1], [2, 2]], [0, 1, 2])
# 拟合的参数系数如下 y = 0.5x1 + 0.5x2
print(reg.coef_)
print(reg.intercept_)
作为对比我们看另一个例子
# 从 sklearn 中引入线性模型模块
from sklearn import linear_model
# 建立线性回归对象 reg
reg = linear_model.LinearRegression(fit_intercept=True)
# 通过建立的对象拟合数据 x 为 [[0, 0], [1, 1], [2, 2]], y 为 [0, 1, 2]
reg.fit([[0, 0], [1, 1], [2, 2]], [0, 1, 2])
# 拟合的参数系数如下 y = 1.1102230246251565e-16 + 0.5x1 + 0.5x2
print(reg.coef_)
print(reg.intercept_)
我们可以看到这两个拟合结果一个截距项确定为 0,一个截距项是非常接近 0 的数,这就是 fit_intercept 参数的作用。
copy_X
: 是 bool 值只支持 True /False, 默认是 True
意思是我们的特征矩阵 X 是否需要拷贝,如果拷贝一份的话 scikit-learn 做的运算不会影响我们的原始数据,否则我们的 X 矩阵有可能会被覆盖。一般而言这个选项我们都使用 True,毕竟我们不希望原始数据被修改。
n_jobs
是 int 型,默认是 None (在这种情况下相当于 1)
意思是使用多少个 processor 完成这个拟合任务,通常来说对于少量数据我们可以使用默认选项 None,但是对于数据量较大且我们电脑 CPU 性能较好且有多核的情况下我们可以使用 -1 这个参数,调用所有 processor 为我们计算,减少运算所使用的时间。
positive
是 bool 型,默认是 False
意思是拟合的系数是否限制为正数,一般来说我们都使用 False 选项。
使用 True 选项往往是因为实际问题中参数存在限制,比如一些有具体含义的参数(必须是正数),需要注意的是 True 选项可能只支持 dense array (个人理解就是不支持带约束的稀疏矩阵的相关运算)。
参考文献
https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LinearRegression.html#sklearn.linear_model.LinearRegression
scikit-learn 线性回归 LinearRegression 参数详解相关推荐
- 调包侠福音!机器学习经典算法开源教程(附参数详解及代码实现)
Datawhale 作者:赵楠.杨开漠.谢文昕.张雨 寄语:本文针对5大机器学习经典算法,梳理了其模型.策略和求解等方面的内容,同时给出了其对应sklearn的参数详解和代码实现,帮助学习者入门和巩固 ...
- 最详细的Catboost参数详解与实例应用
集成学习的两大准则:基学习器的准确性和多样性. 算法:串行的Boosting和并行的Bagging,前者通过错判训练样本重新赋权来重复训练,来提高基学习器的准确性,降低偏差!后者通过采样方法,训练出多 ...
- CI流水线配置文件参数详解(一)
文章目录 4. 参数详解(一) 4.1 ``script`` 4.2 ``image`` 指定使用Docker镜像.如 ``iamge:name`` ,暂时忽略. 4.3 ``before_scrip ...
- 内存性能参数详解(转载)
内存性能参数详解 先说说最有效提高你机器内存性能的几个参数:CL,TRP,TRCD CAS Latency "列地址选通脉冲潜伏期" BIOS中可能的其他描述为:tCL.CAS L ...
- spring boot 实战 / 可执行war启动参数详解
概述 上一篇文章<spring boot 实战 / mvn spring-boot:run 参数详解>主要讲解了spring boot 项目基于maven插件启动过程中借助profil ...
- plot参数详解python_30行Python代码实现3D数据可视化
作者:潮汐 来源:Python技术 欢迎来到编程教室~ 我们之前的文章中有讲解过不少 Matplotlib 的用法,比如: 完成这50个Matplotlib代码,你也能画出优秀的图表 25个常用Mat ...
- Ehcache配置参数详解
ehcache配置参数详解 <?xml version="1.0" encoding="UTF-8"?><ehcache><dis ...
- PHP date函数参数详解
PHP date函数参数详解 作者: 字体:[增加 减小] 类型:转载 time()在PHP中是得到一个数字,这个数字表示从1970-01-01到现在共走了多少秒,很奇怪吧 不过这样方便计算, 要找 ...
- ping ip 端口_学生会私房菜【20200305期】——Ping命令及其常用参数详解
一命令原理 Ping是ICMP的一个典型应用.Ping是检测网络连通的常用工具,同时也能收集其他相关信息.用户可以在Ping命令中指定不同参数,如ICMP报文长度.发送的ICMP报文个数.等待回复响应 ...
最新文章
- Linux 汇编语言开发指南
- 独家 | 在Python编程面试前需要学会的10个算法(附代码)
- 1060. [ZJOI2007]时态同步【树形DP】
- Centos7安装mariadb galera cluster数据库集群 详解
- windows下 apache 二级域名相关配置
- 就业指导——招聘信息的获取、简历投递和指导、HR面试指导
- 2019黑马python面试资料_2019最新Python黑马头条推荐系统项目
- python怎么暂停爬虫_python Python爬虫防封杀方法集合
- 劳务费计算用matlab实现
- VS C++ memcpy() 用于double、int、结构体
- 机器人自动化《RPA应用场景和发展趋势》
- 树莓派4B刷openwrt软路由系统,树莓派做有线路由器的扩展实现各种自定义操作
- 《简约至上:交互设计四策略》导读
- 004coursera网站中的VTT字幕的使用
- win11电脑中文用户名修改成英文用户名
- OSChina 周五乱弹 —— 生命诚可贵,改 BUG 价更高?
- 如何使用Nmap扫描所有TCP和UDP端口?
- SpringBoot使用Freemarker导出word模板(OpenXML)
- 嵌入式名工程师,为什么有些人月薪8K,而有些人年薪40K值得深思
- 杂记 SpaceX如何利用人工智能