IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 李宏毅《机器学习》| 回归 -> 正文阅读

[人工智能]李宏毅《机器学习》| 回归

目录

一、定义

二、模型步骤

step1:模型假设,选择模型框架(线性模型)

1. 一元线性模型

2. 多元线性模型

step2:模型评估,判断模型的好坏(损失函数)

step3:模型优化,筛选最优的模型(梯度下降)

梯度下降(Gradient Descent)

三、模型验证

四、模型优化

五、过拟合(Over Fitting)

六、步骤优化

step1:合并模型

step2:输入更多特征

step3:加入正则化项(Regularization)


一、定义

输入特征 x,通过找到的函数function输出数值Scalar

应用举例:

  • 股市预测(Stock market forecast)
    • 输入:过去10年股票的变动、新闻咨询、公司并购咨询等
    • 输出:预测股市明天的平均值
  • 自动驾驶(Self-driving Car)
    • 输入:无人车上的各个sensor的数据,例如路况、测出的车距等
    • 输出:方向盘的角度
  • 商品推荐(Recommendation)
    • 输入:商品A的特性,商品B的特性
    • 输出:购买商品B的可能性
  • Pokemon精灵攻击力预测(Combat Power of a pokemon):
    • 输入:进化前的CP值、物种(Bulbasaur)、血量(HP)、重量(Weight)、高度(Height)
    • 输出:进化后的CP值
    • 下面的模型也以该例为基础进行展示

二、模型步骤

step1:模型假设,选择模型框架(线性模型)

1. 一元线性模型

即模型为单个输入特征,线性模型假设为y=b+\omega *x

2. 多元线性模型

即模型为多个输入特征,线性模型假设为y=b+\sum \omega_{i} *x_{i}

其中x_{i}表示输入的多个特征,\omega _{i}表示各输入特征的权重,b表示偏移量

图中x^{1}为进化前的CP值,y\hat{}^{1}表进化后的CP值,即输出的Scalarhat{}所代表的是真实值

?上图为10组数据在二维图中的展示,每一个点代表输入进化前的CP值和进化后的CP值

step2:模型评估,判断模型的好坏(损失函数)

我们可以将损失函数(Loss Function)理解成函数的函数,输入的是一个function,输出的是该function不好的程度。对于本例,使用距离即计算进化后的CP值模型预测的CP值之间的的差值来判定模型的好坏,即计算\left ( y\hat{}^{n}-f(x_{cp}^{n}) \right )^{2}的和,和越小,该模型越好。

?\omega和bb在二维坐标图中的情况如下图所示,图中每一个点代表一个function,颜色代表根据所定义的损失函数该function效果好坏的程度。点所处的区域颜色越红越靠近图片下方,代表代表该function的效果越差。

step3:模型优化,筛选最优的模型(梯度下降)

最终需要找到使得损失函数L的值达到最小的f^{*},下图展示的即为该模型中的最优化问题。

我们使用梯度下降法(Gradient Descent)求解该问题,该方法的优点在于只要损失函数L可微分,则该问题就可求解。

梯度下降(Gradient Descent)

先从最简单的只有一个参数\omega入手,定义\omega =arg\mathop {\min }\limits_\omega L(\omega )

?穷举\omega所有可能值,并代入损失函数L中求不同\omega下的损失。随机选取一个初始的\omega ^{0},计算L\omega =\omega ^{0}时的微分(即切线斜率),若小于0(即图中所示情况),说明\omega ^{0}左边的损失较高,右边损失较低,我们需要寻找使得损失函数L达到最小的\omega,所以此时应该增大\omega的值;反之,应减小\omega的值。

寻找下一个\omega时应该增大或减小的量取决于两个因素,一个是L\omega =\omega ^{0}时微分的大小,微分的绝对值越大,代表该点损失函数L的值越大,切线越陡峭,则“迈出的步长”也应该越大;另一个是事先指定的常数项\eta,即学习率(Learning Rate)\eta越大,则“迈出的步长”的幅度即参数更新的幅度越大,学习的速度就越快。

如下图所示,通过该方法找到的\omega是当前的最小值,但可能并不是全局的最小值(取决于损失函数L是否为凸函数,后续更新说明)。

引入2个模型参数\omega和b时, 过程与上述单个参数类似,在这里求微分需要做的是求偏微分。

梯度下降推荐最优模型的过程如下图所示?

?每一条等高线代表损失函数L的值,越靠近中心蓝色的部分代表损失函数L越小。红色箭头代表等高线的法线方向。

梯度下降法目前存在的问题:

三、模型验证

训练集的平均误差

?测试集的平均误差,这才是我们真正关心的

四、模型优化

选择更复杂的模型进行优化,如使用一元二次方程,此时训练集平均误差为15.4,测试集平均误差为18.4

五、过拟合(Over Fitting)

当使用更高次方的模型更进一步优化时,模型平均误差却更大了,模型效果变差。

将每个模型结果视为一个集合,5次方模型\supseteq4次方模型\supseteq3次方模型,所以在4次方模型中找到的最佳模型,肯定不会比5次方模型中找到的更差?

?3次方以上的模型,已经出现了过拟合的现象:

六、步骤优化

将Pokemons种类通过颜色区分,会发现Pokemons种类是隐藏得比较深的特征,不同Pokemons种类影响了进化后的CP值的结果

step1:合并模型

?

?通过对Pokemons种类的判断,将 4个线性模型合并到一个线性模型中?

?此时训练集和测试集的平均误差如下

step2:输入更多特征

将血量(HP)、重量(Weight)、高度(Height)等特征加入模型

?但更多特征和input,数据量没有明显增加,可能仍旧导致overfitting

step3:加入正则化项(Regularization)

\omega越小,则function越平滑,function输出值与输入值相差不大。b的值接近0 ,对曲线的平滑越没有影响。

平滑的function对输入较不敏感,当数据中含有噪音时,一个平滑的function受到的影响较小。在很多应用场景中并不是\omega越小模型越平滑越好,但经验值告诉我们\omega越小大部分情况下都比较好。

\lambda越大,代表考虑smooth越多,找到的function越平滑,越倾向于考虑\omega本来的数值,考虑error越少,此时在训练集上的平均误差越大,但是在测试集上的误差却可能较小。所以我们希望找到一个较为平滑的function,但是又希望\lambda不要太大。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-01-14 01:58:30  更:2022-01-14 01:59:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 3:42:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码