《机器学习实战》利用回归预测数值型数据的算法理解及程序调试

predict函数 R_第四十讲 R-线性回归:预测模型及可信区间 线性回归的一个主要目标是基于一个或多个预测变量来预测结果值。(我们也用它来研究两个变量的相关性,同时校正其他混杂因素)。那么,当我们取得了预测模型后,根据该预测模型对新数据进行预测得出的预测值是什么?这个预测值的可信度如何呢?今天的讲解中,我们会给出答案。1. 建立线性回归我们首先建立一个简单的线性回归模型,该模型根据速度预测汽车的停车距离。# 加载数据 data("cars", package ... 阅读详情

一、引言

回归可以做很多事情,例如销售量预测,本片文章简单介绍一下线性回归,引入局部平滑技术使得更好的拟合数据,最后针对鲍鱼年龄进行预测,进行程序测试和算法的一些分析

二、线性回归算法

2.1 算法介绍

目的:预测数值型的目标值

得到求取目标值的回归方程、回归系数


求这些回归系数w的过程称为回归

数据存放在矩阵X,回归系数存放在向量W中

对于给定的输入数据X’,预测结果

如何确定权值W的值呢?我们拥有一些x和对应的y,找出使得误差(预测出的y值与真实y值之间的差值)最小的W,使用该误差的简单累加能使得正差值与负差值相互抵消,这里采用平方误差。



令上式等于零,解得w的最优解 (这是一个估计值)

程序中采用NumPy库的矩阵方法OLS(普通最小二乘法),可以实现上述功能。

2.2 程序调试

2.2.1 数据集ex0.txt


2.2.2 数据可视化(散点图)


2.2.3 线性回归拟合出的最佳回归曲线


2.2.4 预测值yHat序列和真实值y序列的匹配程度,需要计算这两个序列的相关系数。

numpy库中通过命令corrcoef(yEstimate,yActual)来计算预测值与真实值得相关性


对角线的值为1,yHat和yMat对自己的匹配是最完美的,预测值yHat与实际值yMat的匹配度为98.64%。

三、局部加权线性回归

3.1 算法介绍

线性回归有可能出现欠拟合现象,因为求的是具有最小均方差的无偏估计值,这样就无法得到较好的预测效果,所以我们在估计中引入一些偏差,从而降低预测的均方误差,局部加权线性回归(LWLR)就是其中一种,给待测点附近的点赋予一定的权重,在这个子集上基于最小均方差来进行普通的回归,每次预测需要实现选出对应的数据子集。

解出回归系数w: ,W是一个矩阵,用来给每个数据点赋予权重;

LWLR使用“核函数“来对附近的点赋予更高的权重,核函数的类型可以自由选择,这次仍采用高斯核函数

这样就构建了一个只含有对角元素的权重矩阵W,并且点x与x(i)越近,w(i,i)将会越大,上述核函数公式还包含参数k,k决定了对附近的点赋予多大的权重。

LWLR也存在一个问题,增加了计算量,因为对每个点做预测是都必须使用整数个数据集。

3.2 程序调试

3.2.1 数据集ex0.txt

数据可视化见2.2.2

3.2.2 k在三种取值下的拟合结果

<1>k=1.0


此时权值很大,如同将所有的数据视为等权重,得出的最佳拟合直线与标准回归一致,出现欠拟合。

<2>k=0.01


得到了较好的效果,抓住了数据的潜在模式。

<3>k=0.003

纳入了很多的噪声点,拟合的直线与数据点过于接近,出现过拟合。

四、预测鲍鱼的年龄

4.1 数据集 abalone.txt


4.2 分析预测误差


可以看出,使用较小的核函数会得到较低的误差,但不能再所有的数据集上使用最小的核函数,因为可能会造成过拟合,对新数据集不一定能达到最好的预测效果。

4.3 新数据集上的误差分析


核函数大小等于10时的误差最小,但是在训练数据集中误差是最大的。

4.4 简单线性回归的误差分析


简单线性回归达到了与 LWLR类似的效果。

五、总结与体会
六、参考文献

【1】《机器学习实战》

非常感谢阅读!如有不足之处,请留下您的评价和问题。
【ML】机器学习数据集:sklearn中回归数据集介绍 在机器学习的教程中,我们会看到很多的demo,这些demo都是基于python中自带的数据集。今天我们将介绍三个用于回归预测的数据集。 阅读详情

相关推荐

Silvaco TCAD仿真例库——肖特基二极管反向击穿特性(案例)

本文详细介绍了使用Silvaco TCAD仿真例库分析肖特基二极管反向击穿特性的完整流程。通过搭建带保护环的器件结构,配置关键物理模型,并执行反向偏压扫描,深入探讨了雪崩击穿机制、电场分布及设计参数(如漂移区浓度、保护环)对击穿电压的影响,为功率半导体设计与可靠性分析提供了实用的虚拟实验方法。

weixin_29165465的博客 389

线性回归之数值预测

线性回归 给定500 * 2的表,即500行2列的表,列用xy表示,得到模型并做出预测。 x y 3.283938217 4.902920282 0.1234343224 1.8292920292 5.020202020202 10.192929292929 9.232343543 7.39339393939 在平面直角坐标系中,xy可以表示成一个点,得到y=wx+b表达式,使得直角坐标系上的点在这条直线上的距离尽可能短。我们需要不断调整w和b的值,最终得到最优解。 当只有一

qq_36180997的博客 1314

OpenVINS实战指南:从环境搭建到RGB-D相机实时建图

本文提供了一份详细的OpenVINS实战指南,涵盖从Ubuntu与ROS环境搭建、依赖安装与编译调试,到连接RGB-D相机进行实时建图的完整流程。重点解决了RealSense D435i等设备的驱动配置、话题对齐及常见问题,并分享了传感器标定与性能优化技巧,帮助开发者快速实现稳定高效的视觉惯性里程计系统。

weixin_29201313的博客 484

【机器学习实战】第8章 预测数值型数据:回归

第8章 预测数值型数据:回归 http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default">> 回归(Regression) 概述 我们前边提到的分类的目标变量是标称型数据,而回归则是对连续型的数据做出处理,回归的目的是预测数值型数据的目标值。 回归 场景 回归的目的是预测数值型的目标值。

片刻 - ApacheCN 1499

State of GPT (ChatGPT 原理及现状介绍)

要用 RLHF 的一个简单的原因就是 RLHF 模型效果更好,下面的图来源于 InstructGPT 论文,PPO (RLHF 算法) 后的模型生成的答案更被人类喜欢。karpathy 认为 RLHF 有用的原因是判别比生成更容易,让标注员去写一些 SFT 的 QA 数据对是比较难的,如果有一个 SFT 模型生成一些数据让标注员判断哪个更好就简单很多。,GPT4 最强,前三个都是 RLHF 模型,其他模型都是 SFT 模型。伯克利做的模型评测榜单。

kebijuelun的博客 3578

QMT与通达信代码实战:从预警到交易的自动化实现

本文详细介绍了如何利用QMT量化交易平台与通达信软件实现从预警到交易的全自动化。通过读取通达信预警生成的板块文件,QMT策略可自动执行买卖指令,有效解决手动交易滞后问题。文章提供了完整的代码框架、核心原理拆解及实盘注意事项,帮助投资者构建高效、纪律性的自动化交易系统。

ansible6ops的博客 648

大乐透python预测程序_python简易的大乐透数据获取及初步分析

1 #-*- coding: utf-8 -*-2 """3 @auther UKC_unknowcry4 @date 2020-4-185 @desc 简单的彩票分析及ui6 @filename Lottery_ui.py78 """910 importos11 importsys12 importdatetime13 importtkinter as tk14 importtkinter.me...

weixin_39717029的博客 1330

OFDM基本原理

OFDM基础介绍,包括OFDM的核心思想,数学推导了OFDM信号的调制解调过程。

伊丽莎白的学习之路 8908

MATLAB数据预测程序。 人工智能算法:包括但不限于lstm神经网络,BP神经网络,RBF以及Elman等

人工智能算法:包括但不限于lstm神经网络,BP神经网络,RBF以及Elman等。传统经济学:ARIMA,GM灰色预测等均有。学习研究均可,具体效果视实验数据好坏二轮。MATLAB数据预测程序。部分有注释,有原始数据。

2201_75548949的博客 559

【WRF安装】WRF环境配置移植详细说明

【WRF安装】WRF环境配置移植详细说明

WW、forever的博客 819

五步教你用GPT-5画出国自然技术路线图!轻松节省80%画图时间(附AI提示词)

七哥给大家推荐的高校都在用的AI平台——高级学术版专业应用平台,集成了ChatGPT、Claude、Gemini、Grok等Al大模型的PLUS版本平台,包括 ChatGPT-5、4o、o3、4.1、4.5、Gemini 2.5 Pro、Claude 3.7、Claude 4、DeepSeek 满血版、Grok 3 、Grok 4等原生线路,还有国际主流的GPTs学术应用,可以辅助大家高效完成科研和学术写作任务,当然撰写硕博论文,课题、职称论文、国社科、国自然基金本子也是手拿把掐。

智能AI让学术科研更容易 1499

写一个LSTM预测程序

LSTM预测程序的实现方法如下: 数据准备:准备好需要预测的数据,并将其分为训练数据和测试数据。 模型构建:使用Keras或Tensorflow等深度学习框架来构建LSTM模型,包括输入层、LSTM层、输出层等。 训练:使用训练数据训练LSTM模型,并使用交叉验证评估模型性能。 预测:使用训练好的模型对测试数据进行预测。 结果评估:评估预测结果的准确性,并绘制预测结果图。 这是LST...

weixin_42599558的博客 245

Simulink中搭建一个包含PID控制的压电陶瓷快反镜模型

这个模型只是一个基本框架,你需要根据实际的系统参数和要求进行调整和优化。希望这些步骤能帮助你在Simulink中搭建所需的模型。

AI的内部世界的博客 474

搭建简单的神经网络——数字预测

搭建简单的数字预测网络导入包随机创建数据更改数据格式参数设置搭建网络训练模型预测整体代码 导入包 import tensorflow as tf from tensorflow import keras import random import numpy as np 随机创建数据 datas=[] labellist=[] for i in range(500): num=random.randrange(1,10) one_hot=np.zeros(shape=9) one_

baidu_31010557的博客 1314

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

python训练数字模型预测_Python中用PyTorch机器学习分类预测银行客户流失模型

分类问题属于机器学习问题的类别,其中给定一组功能,任务是预测离散值。分类问题的一些常见示例是,预测肿瘤是否为癌症,或者学生是否可能通过考试。在本文中,鉴于银行客户的某些特征,我们将预测客户在6个月后是否可能离开银行。客户离开组织的现象也称为客户流失。因此,我们的任务是根据各种客户特征预测客户流失。$ pip install pytorch数据集让我们将所需的库和数据集导入到我们的Python应用程...

weixin_40001442的博客 735

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

基于小波神经网络的短时交通流量时间序列预测程序_基于小波神经网络的数据中心KPI预测...

随着软件和微服务的发展,智能运维越来越受到人们的重视。在大量的运维数据里,最不可忽视的就是各种关键性能指标数据(Key Performance Indicators,KPI),它们在数学上都可以被表达为时间序列的形式。在一个大型软件系统里,往往每分钟能产生百万数量级的时间序列,如何从这些海量数据里发现规律,指导运维并将其智能化,成为了下一代运维中最重要的环节之一。智能运维的一个主要挑战是根据具体需...

weixin_39800331的博客 2224

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

《机器学习实战》——第8章 预测数值型数据:回归

优点:结果易于理解,计算不复杂。缺点:对非线性的数据拟合不好。适用数据类型:数值型和标称型数据。回归的目的是预测数值型的目标值。最直接的办法是依据输入写出一个目标值的计算公式。下面给出一个回归方程:其中的0.0015和-0.99称为回归系数,求回归系数的过程就是回归。一般的回归指的都是线性回归,所以本章回归和线性回归代表同一个意思。线性回归意味着可以将输入项分别乘以一些常量,再将结果加起来得到输出。假定输入数据存放在矩阵x中,而回归系数存放在向量w中。那么对于给定的数据。

fjyalzl的博客 1129

线性回归python实现

线性回归理论参考https://blog.youkuaiyun.com/wuxintdrh/article/details/84287575 1.1、加载数据 # 加载数据集, def loadDataSet(fileName): #general function to parse tab -delimited floats numFeat = len(open(fileName).rea...

chbxw 1万+

线性回归拟合案例

01.根据数据集ex0.txt,画出样本点。并根据线性回归画出拟合直线。 注:可以采用sklearn里面的线性回归算法也可以自己写线性回归算法 import numpy as np import matplotlib.pyplot as plt dataSet=np.genfromtxt('ex0.txt') x_data=dataSet[:,:-1]#最后一列是因变量y的真实值y=theta∧Tx(x称为自变量) y_data=dataSet[:,-1] def plot(): plt.scat

Above the cloud 1117

机器学习实战(八)——预测数值型数据:回归

机器学习实战(八)学习笔记

FavoriteStar的博客 2640

机器学习第八章笔记——预测数值型数据:回归

其中的一个方法是局部加权线性回归。从上面的数据可以看出:使用较小的核将得到较低的误差,但是在操作中并不能使用最小的核处理数据集,因为使用最小核处理将会造成过拟合,对新数据不一定能达到最好的预测效果。对于如何找出w,一个常用的方法是找出使误差最小的w,误差指的是预测y值和真实y值之间的差值,使用该误差的简单累加将使正差值与负差值相互抵消,因此采用平方误差。向前逐步回归属于一种贪心算法,每一步都尽可能的减少误差,最开始时所有的权重都设为1,之后每一步所做的决策是对某个权重增加或减少一个很小的值。

jgq1466693的博客 3193

机器学习第八章 利用回归预测数值型数据

机器学习第八章 预测数值型数据:回归

m0_50882524的博客 1714

基于决策树的泰坦尼克号数据集回归预测

任正福,男,西安工程大学电子信息学院,2022级研究生研究方向:混响背景下目标回波检测电子邮件:1214061716@qq.com陈梦丹,女,西安工程大学电子信息学院,2022级硕士研究生,张宏伟人工智能课题组研究方向:机器视觉与人工智能电子邮件:1169738496@qq.com数据集下载:泰坦尼克号数据集来源于kaggle官网,如果你已经注册过账号,可以直接在官网下载。如果你没有注册或者注册失败(常见问题是没有验证码),你可以在国内的天池网站上下载。

ZHW-鲜橙大AI课题组的博客 3477

《机器学习实战》之八(一)——预测数值型数据:回归

回归目录一、前言二、回归1、用线性回归找到最佳拟合直线2、局部加权线性回归三、示例:预测鲍鱼的年龄四、总结:参考资料 一、前言   前面的章节介绍了分类,分类的目标变量是标称型数据,而本章将会对连续型的数据做出预测。本章主要学习的就是线性回归和局部加权线性回归,并配有两个示例进行实战。 二、回归   回归的目的是预测数值型的目标值。最直接的办法是依据输入写出一个目标值的计算公式。假如你想要预测姐姐...

潘多拉星系的专栏 2066

【RF回归预测】基于随机森林算法的数据回归预测附matlab完整代码

RF算法原理随机森林算法的原理可以通过以下公式概括:对于给定的训练集,假设有N个样本,每个样本有M个特征。从训练集中进行有放回抽样,产生B个大小相同的训练集(bootstrap样本)。对于每个训练集,使用决策树算法构建一颗决策树模型。在构建决策树的过程中,对于每个节点,在随机选择的m个特征中选择最优的分割特征。重复步骤2和步骤3,构建B颗决策树模型。对于新样本,通过B颗决策树模型的投票或平均得到最终的预测结果。

matlab_dingdang的博客 3978

CNN-LSTM回归预测模型

构建了CNN-LSTM油耗预测模型,实现对车辆油耗的单步预测

sgd7518182的博客 8685
上一篇: 《机器学习实战》AdaBoost方法的算法原理与程序实现
下一篇: 《机器学习实战》KMeans均值聚类算法
Enpiyahh
博客等级 码龄9年 55粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值