白话机器学习笔记(一)学习回归

这篇具有很好参考价值的文章主要介绍了白话机器学习笔记(一)学习回归。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最小二乘法

白话机器学习笔记(一)学习回归,学习笔记,机器学习,笔记,学习

定义模型

表达式: f θ ( x ) = θ 0 + θ 1 x f_\theta(x)=\theta_0+\theta_1x fθ(x)=θ0+θ1x

(常用 θ \theta θ表示未知数、 f θ ( x ) f_\theta(x) fθ(x)表示含有参数 θ \theta θ并且和变量 x x x相关的函数)

目标函数

假设有 n n n个训练数据,那么它们的误差之和可以这样表示,这个表达式称为目标函数。

E ( θ ) = 1 2 ∑ i = 1 n ( y ( i ) − f θ ( x ( i ) ) ) 2 E(\theta)=\frac12\sum\limits_{i=1}^n(y^{(i)}-f_\theta(x^{(i)}))^2 E(θ)=21i=1n(y(i)fθ(x(i)))2 ( x ( i ) 和 y ( i ) x^{(i)}和y^{(i)} x(i)y(i)指第 i i i个训练数据)

找到使 E ( θ ) E(\theta) E(θ)值最小的 θ \theta θ,这样的问题称为最优化问题。

为了避免正负数混合运算所以计算平方, 1 2 \frac12 21是为了让表达式值更简单随便加的常数。

θ 0 = 1 、 θ 1 = 3 \theta_0=1、\theta_1=3 θ0=1θ1=3,将四个训练数据带入表达式求误差如下:

白话机器学习笔记(一)学习回归,学习笔记,机器学习,笔记,学习

修改参数 θ \theta θ的值,让误差变小的做法称为最小二乘法。

最速下降法

比如表达式 g ( x ) = ( x − 1 ) 2 g(x)=(x-1)^2 g(x)=(x1)2,它的最小值 g ( x ) = 0 g(x)=0 g(x)=0出现在 x = 1 x=1 x=1时。

图像如下:

白话机器学习笔记(一)学习回归,学习笔记,机器学习,笔记,学习

g ( x ) g(x) g(x)展开有 ( x − 1 ) 2 = x 2 − 2 x + 1 (x-1)^2=x^2-2x+1 (x1)2=x22x+1

微分有: d d x g ( x ) = 2 x − 2 \frac{d}{dx}g(x)=2x-2 dxdg(x)=2x2

为了让 g ( x ) g(x) g(x)的值变小,要让 x x x向1移动,可以根据导数符号决定 x x x的移动方向,只要向着导数符号相反的方向移动 x x x g ( x ) g(x) g(x)就会向着最小值移动。

由此得到表达式

x : = x − η d d x g ( x ) x:=x-\eta\frac{d}{dx}g(x) x:=xηdxdg(x) 称为最速下降法或梯度下降法。

(A:=B,意思通过B来定义A,上面表达式指用上一个x来定义新的x)

η \eta η是称为学习率的正常数,大小会影响达到最小值的更新次数,太大会导致来回跳跃无法收敛,一直发散状态。

对于目标函数, E ( θ ) = 1 2 ∑ i = 1 n ( y ( i ) − f θ ( x ( i ) ) ) 2 E(\theta)=\frac12\sum\limits_{i=1}^n(y^{(i)}-f_\theta(x^{(i)}))^2 E(θ)=21i=1n(y(i)fθ(x(i)))2 有两个参数,要用偏微分。

( f θ ( x ) = θ 0 + θ 1 x f_\theta(x)=\theta_0+\theta_1x fθ(x)=θ0+θ1x)

更新表达式如下:

θ 0 : = θ 0 − η ∂ E ∂ θ 0 \theta_0:=\theta_0-\eta\frac{\partial E}{\partial\theta_0} θ0:=θ0ηθ0E

θ 1 : = θ 1 − η ∂ E ∂ θ 1 \theta_1:=\theta_1-\eta\frac{\partial E}{\partial\theta_1} θ1:=θ1ηθ1E

∂ E ∂ θ 0 = ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) \frac{\partial E}{\partial\theta_0}=\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)}) θ0E=i=1n(fθ(x(i))y(i))

∂ E ∂ θ 1 = ∂ E ∂ θ 0 = ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) x ( i ) \frac{\partial E}{\partial\theta_1}=\frac{\partial E}{\partial\theta_0}=\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)})x^{(i)} θ1E=θ0E=i=1n(fθ(x(i))y(i))x(i)

所以得到参数 θ 1 和 θ 2 \theta_1和\theta_2 θ1θ2的更新表达式如下:

θ 0 : = θ 0 − η ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) \theta_0:=\theta_0-\eta\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)}) θ0:=θ0ηi=1n(fθ(x(i))y(i))

θ 1 : = θ 1 − η ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) x ( i ) \theta_1:=\theta_1-\eta\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)})x^{(i)} θ1:=θ1ηi=1n(fθ(x(i))y(i))x(i)

多项式回归

白话机器学习笔记(一)学习回归,学习笔记,机器学习,笔记,学习

曲线比直线更容易拟合数据

f θ ( x ) f_\theta(x) fθ(x)定义为二次函数:

f θ ( x ) = θ 0 + θ 1 x + θ 2 x 2 f_\theta(x)=\theta_0+\theta_1x+\theta_2x^2 fθ(x)=θ0+θ1x+θ2x2

或者更大次数的表达式:

f θ ( x ) = θ 0 + θ 1 x + θ 2 x 2 + . . . + θ n x n f_\theta(x)=\theta_0+\theta_1x+\theta_2x^2+...+\theta_nx^n fθ(x)=θ0+θ1x+θ2x2+...+θnxn

f θ ( x ) = θ 0 + θ 1 x + θ 2 x 2 f_\theta(x)=\theta_0+\theta_1x+\theta_2x^2 fθ(x)=θ0+θ1x+θ2x2

得到更新表达式为:

θ 0 : = θ 0 − η ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) \theta_0:=\theta_0-\eta\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)}) θ0:=θ0ηi=1n(fθ(x(i))y(i))

θ 1 : = θ 1 − η ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) x ( i ) \theta_1:=\theta_1-\eta\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)})x^{(i)} θ1:=θ1ηi=1n(fθ(x(i))y(i))x(i)

θ 2 : = θ 2 − η ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) x ( i ) 2 \theta_2:=\theta_2-\eta\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)})x^{(i)^2} θ2:=θ2ηi=1n(fθ(x(i))y(i))x(i)2

这种增加函数中多项式的次数,再使用函数的分析方法被称为多项式回归。

多重回归

问题:基于广告费预测点击率

考虑广告版面的大小,设 广告费为 x 1 x_1 x1、广告栏的宽为 x 2 x_2 x2、广告栏的高为 x 3 x_3 x3

f θ f_\theta fθ可以表示如下:

f θ ( x 1 , x 2 , x 3 ) = θ 0 + θ 1 x 1 + θ 2 x 2 + θ 3 x 3 f_\theta(x_1,x_2,x_3)=\theta_0+\theta_1x_1+\theta_2x_2+\theta_3x_3 fθ(x1,x2,x3)=θ0+θ1x1+θ2x2+θ3x3

简化表达式,将 θ 和 x \theta和x θx看成向量

θ = [ θ 0 θ 1 θ 2 ⋮ θ n ] \boldsymbol{\theta}=\begin{bmatrix} \theta_0\\\theta_1\\\theta_2\\\vdots\\\theta_n \end{bmatrix} θ= θ0θ1θ2θn x = [ x 0 x 1 x 2 ⋮ x n ] \boldsymbol{x}=\begin{bmatrix}x_0\\x_1\\x_2\\\vdots\\x_n \end{bmatrix} x= x0x1x2xn ( x 0 = 1 x_0=1 x0=1)

θ T x = θ 0 x 0 + θ 1 x 1 + . . . + θ n x n \boldsymbol{\theta}^T\boldsymbol{x}=\theta_0x_0+\theta_1x_1+...+\theta_nx_n θTx=θ0x0+θ1x1+...+θnxn

E ( θ ) = 1 2 ∑ i = 1 n ( f θ ( x ( i ) − y ( i ) ) ) 2 E(\theta)=\frac12\sum\limits_{i=1}^n(f_\theta(x^{(i)}-y^{(i)}))^2 E(θ)=21i=1n(fθ(x(i)y(i)))2

∂ E ∂ θ j = ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) x j ( i ) \frac{\partial E}{\partial\theta_j}=\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)})x_j^{(i)} θjE=i=1n(fθ(x(i))y(i))xj(i)

θ j : = θ j − η ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) x j ( i ) \theta_j:=\theta_j-\eta\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)})x_j^{(i)} θj:=θjηi=1n(fθ(x(i))y(i))xj(i)

像这样包含多个变量的回归称为多重回归

随机梯度下降法

最速下降法容易陷入局部最优解

白话机器学习笔记(一)学习回归,学习笔记,机器学习,笔记,学习

最速下降法更新表达式: θ j : = θ j − η ∑ i = 1 n ( f θ ( x ( i ) ) − y ( i ) ) x j ( i ) \theta_j:=\theta_j-\eta\sum\limits_{i=1}^n(f_\theta(x^{(i)})-y^{(i)})x_j^{(i)} θj:=θjηi=1n(fθ(x(i))y(i))xj(i)

随机梯度下降法中会随机选择一个训练数据,并使用它来更新参数。这个表达式中的 k k k就是被随机选中的数据索引。

随机梯度下降法更新表达式: θ j : = θ j − η ( f θ ( x ( k ) ) − y ( k ) ) x j ( k ) \theta_j:=\theta_j-\eta(f_\theta(x^{(k)})-y^{(k)})x_j^{(k)} θj:=θjη(fθ(x(k))y(k))xj(k)

最速下降法更新1次参数的时间,随机梯度下降法可以更新n次,这样不容易陷入局部最优解。

小批量梯度下降法

设训练数据索引的集合为 K K K,还可以随机选择m个训练数据来更新参数。

小批量梯度下降法更新表达式: θ j : = θ j − η ∑ k ∈ K ( f θ ( x ( k ) ) − y ( k ) ) x j ( k ) \theta_j:=\theta_j-\eta\sum\limits_{k\in K}(f_\theta(x^{(k)})-y^{(k)})x_j^{(k)} θj:=θjηkK(fθ(x(k))y(k))xj(k)文章来源地址https://www.toymoban.com/news/detail-607637.html

练数据索引的集合为 K K K,还可以随机选择m个训练数据来更新参数。

小批量梯度下降法更新表达式: θ j : = θ j − η ∑ k ∈ K ( f θ ( x ( k ) ) − y ( k ) ) x j ( k ) \theta_j:=\theta_j-\eta\sum\limits_{k\in K}(f_\theta(x^{(k)})-y^{(k)})x_j^{(k)} θj:=θjηkK(fθ(x(k))y(k))xj(k)

到了这里,关于白话机器学习笔记(一)学习回归的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 人工智能基础_机器学习001_线性回归_多元线性回归_最优解_基本概念_有监督机器学习_jupyter notebook---人工智能工作笔记0040

       线性和回归,就是自然规律,比如人类是身高趋于某个值的概率最大,回归就是通过数学方法找到事物的规律. 机器学习作用: 该专业实际应用于机器视觉、指纹识别、人脸识别、视网膜识别、虹膜识别、掌纹识别、专家系统、自动规划、智能搜索、定理证明、博弈、自动程序

    2024年02月06日
    浏览(55)
  • 【2022吴恩达机器学习课程视频翻译笔记】3.2线性回归模型-part-2

    Let’s look in this video at the process of how supervised learning works. Supervised learning algorithm will input a dataset and then what exactly does it do and what does it output? Let’s find out in this video. Recall that a training set in supervised learning includes both the input features, such as the size of the house and also the output targets,

    2024年02月12日
    浏览(39)
  • 机器学习笔记之核函数再回首:Nadarya-Watson核回归python手写示例

    本节从代码角度,介绍基于 高维 特征向量使用 Nadaraya-Watson text{Nadaraya-Watson} Nadaraya-Watson 核回归 的示例。 在注意力机制基本介绍中,我们提到过这种基于 注意力机制权重 的 懒惰学习方法 。该方法与 注意力机制 关联的核心操作有如下步骤: 通过核函数描述样本之间的关联

    2024年02月10日
    浏览(69)
  • [学习笔记] [机器学习] 10. 支持向量机 SVM(SVM 算法原理、SVM API介绍、SVM 损失函数、SVM 回归、手写数字识别)

    视频链接 数据集下载地址:无需下载 学习目标: 了解什么是 SVM 算法 掌握 SVM 算法的原理 知道 SVM 算法的损失函数 知道 SVM 算法的核函数 了解 SVM 算法在回归问题中的使用 应用 SVM 算法实现手写数字识别器 学习目标: 了解 SVM 算法的定义 知道软间隔和硬间隔 在很久以前的

    2024年02月09日
    浏览(91)
  • 机器学习_数据升维_多项式回归代码_保险案例数据说明_补充_均匀分布_标准正太分布---人工智能工作笔记0038

    然后我们再来看一下官网注意上面这个旧的,现在2023-05-26 17:26:31..我去看了新的官网, scikit-learn已经添加了很多新功能,     我们说polynomial多项式回归其实是对数据,进行 升维对吧,从更多角度去看待问题,这样 提高模型的准确度. 其实y=w0x0+w1x1.. 这里就是提高了这个x的个数对吧

    2024年02月06日
    浏览(45)
  • 机器学习——线性回归/岭回归/Lasso回归

    线性回归会用到python第三方库:sklearn.linear_model中的LinearRegression 导入第三方库的方法:from sklearn.linear_model import LinearRegression 使用LinearRegression(二维数据,一维数据)进行预测,其中数据类型可以是pandas中的DataFrame或者series,也可以是numpy中的array数据,但维度一定要正确输入。

    2024年02月10日
    浏览(47)
  • Spark-机器学习(3)回归学习之线性回归

    在之前的文章中,我们了解我们的机器学习,了解我们spark机器学习中的特征提取和我们的tf-idf,word2vec算法。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。 Spark-机器学习(2)特征工程之特征提

    2024年04月22日
    浏览(44)
  • Spark-机器学习(4)回归学习之逻辑回归

    在之前的文章中,我们来学习我们回归中的线性回归,了解了它的算法,知道了它的用法,并带来了简单案例。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。 Spark-机器学习(3)回归学习之线性

    2024年04月25日
    浏览(72)
  • 机器学习&&深度学习——softmax回归(下)

    👨‍🎓作者简介:一位即将上大四,正专攻机器学习的保研er 🌌上期文章:机器学习深度学习——softmax回归(上) 📚订阅专栏:机器学习深度学习 希望文章对你们有所帮助 以下的内容有些需要用到信息论基础,没有这方面基础的,大家可以先看目录后面的信息论。 sof

    2024年02月16日
    浏览(38)
  • 【机器学习300问】61、逻辑回归与线性回归的异同?

            本文讲述两个经典机器学习逻辑回归(Logistic Regression)和线性回归(Linear Regression)算法的异同,有助于我们在面对实际问题时更好的进行模型选择。也能帮助我们加深对两者的理解,掌握这两类基础模型有助于进一步理解更复杂的模型结构,例如逻辑回归是许多复

    2024年04月12日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包