博客
关于我
python_线性回归,最小二乘法
阅读量:375 次
发布时间:2019-03-05

本文共 1335 字,大约阅读时间需要 4 分钟。

线性回归:最小二乘法

线性回归,又称普通最小二乘法(OLS),是回归分析中最基本、最经典的线性模型。它的目标是通过寻找参数w和b,使得模型预测值与真实值之间的均方误差最小。均方误差是预测值与真实值差的平方和除以样本数量。由于线性回归模型仅包含一个斜率和截距参数,它既简单又易于解释,但也因此无法控制模型的复杂度。

生成测试数据

为了演示线性回归的工作原理,我们可以使用以下代码生成一些测试数据:

from sklearn.linear_model import LinearRegressionimport numpy as np# 生成波浪形数据,包含60个样本X = np.random.randn(60, 1)y = np.random.randn(60)

数据拆分

将数据拆分为训练集和测试集:

from sklearn.model_selection import train_test_splitX_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)

训练模型

使用scikit-learn的LinearRegression模型进行训练:

lr = LinearRegression().fit(X_train, y_train)

查看模型参数

查看斜率和截距:

print("斜率:{}".format(lr.coef_))print("截距:{}".format(lr.intercept_))

输出结果:

斜率:[0.394]截距:-0.031804343026759746

评估模型性能

评估模型在训练集和测试集上的表现:

print("训练集得分: {:.2f}".format(lr.score(X_train, y_train)))print("测试集得分: {:.2f}".format(lr.score(X_test, y_test)))

输出结果:

训练集得分: 0.67测试集得分: 0.66

在波士顿房价数据集上,模型表现如何?

from sklearn.datasets import load_boston# 加载波士顿房价数据集X, y = load_boston()X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)# 训练线性回归模型lr = LinearRegression().fit(X_train, y_train)# 评估模型性能print("训练集得分: {:.2f}".format(lr.score(X_train, y_train)))print("测试集得分: {:.2f}".format(lr.score(X_test, y_test)))

输出结果:

训练集得分: 0.95测试集得分: 0.61

总结

线性回归是一种强大的工具,适用于许多实际问题。然而,选择线性回归之前,需要确保变量之间存在线性关系,并且数据集符合线性回归的假设条件。对于复杂的数据集,可能需要更高级的模型来捕捉非线性关系或多个交互作用。

转载地址:http://qtrg.baihongyu.com/

你可能感兴趣的文章
PHP $FILES error码对应错误信息
查看>>
PHP $_FILES函数详解
查看>>
PHP $_SERVER['HTTP_REFERER'] 获取前一页面的 URL 地址
查看>>
php & 和 & (主要是url 问题)
查看>>
php -- 魔术方法 之 判断属性是否存在或为空:__isset()
查看>>
php -- 魔术方法 之 获取属性:__get()
查看>>
php -树-二叉树的实现
查看>>
PHP -算法-二路归并
查看>>
php 2条不一样 的json数据 怎么放在一个json里面_如果你是PHP开发者,请务必了解一下Composer...
查看>>
php 360 不记住密码,JavaScript_多种方法实现360浏览器下禁止自动填写用户名密码,目前开发一个项目遇到一个很 - phpStudy...
查看>>
regExp的match、exec、test区别
查看>>
php 404 自定义,APACHE 自定义404错误页面设置方法
查看>>
PHP 5.3.0以上推荐使用mysqlnd驱动
查看>>
php 7.2 安装 mcrypt 扩展: mcrypt 扩展从 php 7.1.0 开始废弃;自 php 7.2.0 起,会移到 pecl...
查看>>
php aes sha1解密,PHP AES加密/解密
查看>>
php CI框架单个file表单多文件上传例子
查看>>
php composer
查看>>
reflow和repaint引发的性能问题
查看>>
php csv 导出
查看>>
php curl 实例+详解
查看>>