吃透《西瓜书》第三章 线性模型

news2024/9/23 5:18:49

🍉 吃瓜系列 教材:《机器学习》 周志华著

 

🕒时间:2023/7/25

📓 参考:周志华《机器学习》西瓜书啃书指导

📓 参考:第3章-一元线性回归


前言

什么是回归?

回归:确定多个变量间相互依赖的定量关系

回归:预测的输出为连续值

分类:预测的输出为离散的


一、基本形式、思想

试图通过线性的模型,去进行预测

形如:

📓  通俗的理解:机器学习是为了得到一个模型f(x)

那么线性的模型f(x)就可以简化为,得到参数 w 以及 参数 b

当 w  b 被确定的时候,我们说得到了一个线性模型

使用线性模型去拟合数据

示例
示例

二、线性回归

2.1 一元线性回归

2.1.1 形式

形如 f(x) = wx + b 的形式

2.1.1 最小二乘法 

Q:那么,如何确定 f(x) = wx + b 的最佳 w 和 b 呢?

A:最小二乘法!

预测值和实际值距离的平方和最小时,就确定了模型中的两个参数( w 和 b)

一旦计算出了α和β的值,就可以使用该模型来预测新的因变量值,只需提供对应的自变量值即可。

缺点:仅考虑了因变量 y 存在误差的情况。但是实际上,原始点的横纵坐标都会有误差存在。

对于回归问题来说,最好的模型就是和实际数据最接近的模型,而最接近的判断在此使用的是最小二乘法

arg min 是argument minimal 的缩写, 用于获得使函数取最小值的参数 

 PS:在上图中,有一个误区

欧几里得距离的几何意义,不是点到线的距离(正交回归)  

正交回归

根据欧几里得距离的定义,几何意义应该是这样的:

一元线性回归

2.1.3 损失函数

上面所使用的均方误差其实一我们用来衡量误差的一个损失函数

常见的损失函数有那些呢?

 

 2.1.4 最小二乘参数估计

 上面讲到,我们需要确定 w  和 b 的合适值,找到最佳的函数

那么,如何确定呢?  求导!!

我们观察到 上面的公式是一个 U 型曲线    差不多 y = x²的那个样子

用国内教材的定义就是 凹函数

我们对凹函数求导,导数 = 0 的点,就是取得最小值的点

 求得最合适的 w 、 b,此时 损失函数(均方误差)最小、拟合效果最好

2.1.5 最大似然估计导出最小二乘法

使得观测样本出现概率最大的分布就是代求分布 

 对数似然函数

key:对数似然函数和似然函数有相同的最大值点~

 线性回归我们假设模型是

 

 

等价的依据:中间那个减号  后面的最小 结果自然最大 

最大似然估计:使得观测样本出现概率最大的分布就是代求分布 

最小二乘估计:均方误差最小

 

 2.1.6 梯度和海塞矩阵

梯度:多元函数的一阶导数

 梯度为什么是列向量?

梯度是一个向量算子,它表示函数在某一点的变化率,因此梯度的结果是一个向量。

在多元函数的情况下,梯度是一个向量值函数。

在直角坐标系中,梯度的每个分量对应于函数在每个坐标轴方向的变化率,因此自然地形成一个列向量,其中每个元素表示函数在某个方向上的变化率。

海塞矩阵:多元函数的二阶导数

 

 此处的凸函数是国外的定义 指的是国内的凹函数

 

 

 

 

 

 

 

 然后带入 b

 

 

 

 

 

2.2 多元线性回归

在多元线性回归中,我们试图找到一条最佳拟合曲线,使得自变量和因变量之间的误差最小化。

 

f(x_{1},x_{2},.......,x_{n}) = w_{1}x_{1} + w_{2}x_{2} + ....... + w_{n}x_{n} + b

后面的参数 b 我们理解成  b = b ✖ 1

 

 

于是 我们构造处理一个权重向量 w 和 一个特征向量 x 

 

 随后 向量化

 

 

 

 

 

 

 

 

 

 

三、线性分类

3.1 对数几率回归

最大似然估计

3.2 线性判别分析

3.3 多分类学习

四、类别不平衡问题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/798958.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

echart折线图,调节折线点和y轴的间距(亲测可用)

options代码: options {tooltip: {trigger: axis, //坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用。},xAxis: {type: category,//类目轴,适用于离散的类目数据,为该类型时必须通过 data 设置类目数据。…

申请开通【商家转账到零钱】超时后如何反馈?

前言 在微信开放社区看到很人【商家转账到零钱】超过了7-15个工作日没有回复,还在审核中,遇到这个问题怎么解决呢?我最近正好在申请,这篇文章我就要讲讲我是如何找到客服,并且得到反馈的。 步骤 1.关注【腾讯客服】公…

VBA技术资料MF34:检查Excel自动筛选是否打开

【分享成果,随喜正能量】聪明人,抬人不抬杠;傻子,抬杠不抬人。聪明人,把别人抬得很高,别人高兴、舒服了,看你顺眼了,自然就愿意帮你!而傻人呢?不分青红皂白&a…

nsq整体架构及各个部件作用详解

文章目录 前言 nsq的整体架构图 部件:nsqd 部件:nsqlookupd 部件:nsq连接库 部件:nsqadmin 前言 上两篇博客 centos环境搭建nsq单点_YZF_Kevin的博客-CSDN博客 linux环境搭建nsq集群_YZF_Kevin的博客-CSDN博客 我们讲了nsq是…

【Qt】QML-01:使用QtCreator10创建QML工程,并讲解第一个程序:Hello World

1、创建QML工程 1)新建工程 打开QtCreator10,依次点击“Create Project” --> “Application(Qt)” --> “Qt Quick Application(compat)” 注意:本人打算使用Qt5.15.2创建工程,而非Qt6,因此选择兼容低于Qt6版本的“Qt Quick Applicat…

深度学习入门教程(2):使用预训练模型来文字生成图片TextToImageGenerationWithNetwork

本深度学习入门教程是在polyu HPCStudio 启发以及资源支持下进行的,在此也感谢polyu以及提供支持的老师。 本文内容:在GoogleColab平台上使用预训练模型来文字生成图片Text To Image Generation With Network (1)你会学到什么&a…

TEE GP(Global Platform)技术委员会及中国任务小组

TEE之GP(Global Platform)认证汇总 一、TEE GP技术委员会 二、GP中国任务小组 参考: GlobalPlatform Certification - GlobalPlatform

QT: 用定时器完成闹钟的实现

闹钟项目&#xff1a; widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTimerEvent> #include <QTime> #include <QDebug> #include <QTextToSpeech> #include <QMessageBox> #include <QTimer>QT_BEGIN…

十三章:使用图像级监督学习像素级语义关联性的弱监督语义分割

0.摘要 分割标签的不足是野外语义分割的主要障碍之一。为了缓解这个问题&#xff0c;我们提出了一个新颖的框架&#xff0c;根据图像级别的类别标签生成图像的分割标签。在这种弱监督的设置下&#xff0c;已知训练模型更倾向于分割局部有区别的部分&#xff0c;而不是整个物体区…

springMVC--数据验证以及国际化

文章目录 springMVC--数据验证以及国际化概述JSR 303 验证框架Hibernate Validator 扩展注解 应用实例需求说明代码实现引入验证和国际化相关的jar 包修改Monster.java修改MonsterHandler.java测试效果配置国际化文件springDispatcherServlet-servlet.xml创建国际化文件springm…

.NET 8 Preview 5推出!

作者&#xff1a;Jiachen Jiang 排版&#xff1a;Alan Wang 我们很高兴与您分享 .NET 8 Preview 5 中的所有新功能和改进&#xff01;此版本是 Preview 4 版本的后续版本。在每月发布的版本中&#xff0c;您将看到更多新功能。.NET 6 和 7 用户可以密切关注此版本&#xff0c;而…

数据服务:保障数据安全、提升数据价值的利器

04-08把元数据以及在它基础上的五大应用场景&#xff1a;数据发现&#xff08;数据地图&#xff09;、指标管理、模型设计、数据质量、成本优化&#xff0c;全部讲完。这部分内容对应的就是数据中台OneData 方法论。学完这部分内容&#xff0c;你已了解OneData方法论在企业内部…

ctfshow-web3

0x00 前言 CTF 加解密合集CTF Web合集 0x01 题目 0x02 Write Up 这个题目一看就知道是一个文件包含漏洞 php://input可以访问请求的原始数据的只读流&#xff0c;将post请求的数据当作php代码执行。 GET http://3afc5257-7b7d-4917-a1eb-5ea59fc35d8c.challenge.ctf.show/…

Numpy 数据文件

Numpy 数据文件 Numpy 数据处理函数 loadtxt np.loadtxt()函数常用的传入参数 dtype&#xff1a;所需的返回数组的数据类型。默认为floatcomments&#xff1a;用于标识注释行的字符。默认为#delimiter&#xff1a;指定分隔符字符或字符串。默认为任何空格字符skiprows&#x…

Qt : day3

1.完成简易闹钟 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTextToSpeech> //播报类 #include <QTimer> //定时器类 #include <QTime> //时间类QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEcla…

clickhouse分布式查询降级为本地查询

在基于 clickhouse 做类数仓建模时通常的做法是在本地创建物化视图&#xff0c;然后使用分布式表做代理对外提供服务。我们知道 clickhouse 对于 DQL 内部实现了分布式&#xff0c;而对于 DDL 则需要我们自动实现比如&#xff1a; drop table table_name on cluster cluster_n…

【6】toLocaleString、toLocaleDateString、toLocaleTimeString等toLocale系列方法的使用及案例

一、介绍 在当今前端开发的领域里&#xff0c;快速、高效的项目构建工具以及使用最新技术栈是非常关键的。ViteVue3 组合为一体的项目实战示例专栏将带领你深入了解和掌握这一最新的前端开发工具和框架。 作为下一代前端构建工具&#xff0c;Vite 在开发中的启动速度和热重载…

医学多模态综述

原文链接&#xff1a;https://arxiv.org/abs/2307.07362 一个医学多模态综述&#xff0c;本人搞分割的重点看了一下分割的&#xff0c;其余任务没时间细看我就截了个模型汇总图&#xff0c;想详细了解的去喵一下上面这个论文就行 数据集汇总 Report generation 报告生成 报告…

效率与质量兼备的6个设计工具!

今天本文为大家推荐的这6个设计工具&#xff0c;将帮助设计师实现高效工作&#xff0c;同时也更好地展示自己的创作力&#xff0c;一起来看看吧&#xff01; 1、即时设计 即时设计是一款国内的设计工具&#xff0c;它为设计师提供了非常多实用的设计功能和精致的设计素材&…

变分自编码器VAE代码

一&#xff0c;Auto-Encoder(AE) 自编码器的目的是自己训练自己&#xff0c;他的输入和输出是一样的。比如28*28的黑白手写数字图片(单通道)&#xff0c;如果使用矩阵形式进行表达&#xff0c;真正有作用的特征是哪些数值为1的地方&#xff0c;以及他们在矩阵空间的位置。而大部…