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 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> (未完)【机器学习】回归 - 基于广告费预测点击量 -> 正文阅读

[人工智能](未完)【机器学习】回归 - 基于广告费预测点击量

一、设置问题

例:广告费和点击量
在这里插入图片描述
如果花费200元,点击量大约是500次
在这里插入图片描述

二、定义模型

把图想象为函数。只要知道通过图中各点的函数的形式,就能根据广告费得知点击量。
点击量经常变化,这叫作“点击量中含有噪声”,所以函数并不能完美地通过所有的点。
在这里插入图片描述
图像为一次函数,确定了斜率和截距,就能确定一次图像的形状。
y = θ 0 + θ 1 x (2.1) y = \theta_0 + \theta_1 x \tag{2.1} y=θ0?+θ1?x(2.1)

在统计学领域,人们常常使用θ来表示未知数和推测值。采用θ加数字下标的形式,是为了防止当未知数增加时,表达式中大量出现a、b、c、d…这样的符号。这样不但不易理解,还可能会出现符号本身不够用的情况。

如果 θ 0 = 1 \theta_0 = 1 θ0?=1 θ 1 = 2 \theta_1 = 2 θ1?=2,表达式 ( 2.1 ) (2.1) (2.1)会变成:
y = 1 + 2 x (2.2) y = 1 + 2x \tag{2.2} y=1+2x(2.2)

代入 x = 1 x=1 x=1得出 y = 201 y=201 y=201
与图像不符,说明 θ 0 = 1 \theta_0=1 θ0?=1 θ 1 = 2 \theta_1=2 θ1?=2是错误的
需要通过算法来得出正确的 θ 0 , θ 1 \theta_0,\theta_1 θ0?,θ1?

三、最小二乘法

将表达式2.1修改为:
f θ ( x ) = θ 0 + θ 1 x (3.1) f_\theta(x) = \theta_0+\theta_1x \tag{3.1} fθ?(x)=θ0?+θ1?x(3.1)

y y y修改为 f θ ( x ) f_\theta(x) fθ?(x)可以看出这是一个含有参数 θ \theta θ,并且和变量 x x x相关的函数。如果继续使用 y y y,可能会造成后续混乱。

我们拥有的广告费及其相应点击量的数据称为训练数据
将训练数据中的广告费代入 f θ ( x ) f_\theta(x) fθ?(x),把得到的点击量与训练数据中的点击量相比较,找出使二者的差最小的 θ \theta θ

例:选取图上4个点

表2-1
广告费 x x x点击量 y y y
58374
70385
81375
84401

刚才我们假设了一个 f θ x = 1 + 2 x f_\theta{x} = 1 + 2x fθ?x=1+2x的表达式,将表2-1的值代入进行计算

表2-2
广告费 x x x点击量 y y y f θ ( x ) = 1 + 2 x f_\theta(x) = 1+2x fθ?(x)=1+2x
58374117
70385141
81375163
84401169

可以看出 y y y f θ ( x ) f_\theta(x) fθ?(x)完全不同,而我们需要找出 θ 0 , θ 1 \theta_0,\theta_1 θ0?,θ1?的值使二者最接近。
理想状态下是 y y y f θ ( x ) f_\theta(x) fθ?(x)之间的误差等于零,我们要做的是让所有点的误差之和尽可能的小

假设有n个训练数据,那么它们的误差之和可以用表达式(3.2)表示,称为目标函数。( E ( θ ) E(\theta) E(θ) E E E是误差的单词ERROR的首字母)
E ( θ ) = 1 2 ∑ i = 1 n ( y ( i ) ? f θ ( x ( i ) ) ) 2 (3.2) E(\theta) = \frac{1}{2} \sum_{i=1}^n (y^{(i)} - f_\theta(x^{(i)}))^2 \tag{3.2} E(θ)=21?i=1n?(y(i)?fθ?(x(i)))2(3.2)

其中,角标 ( i ) (i) (i)表示第 i i i个训练数据。
我们对每个训练数据的误差取平方后,全部相加,再乘以 1 2 \frac{1}{2} 21?,以找到使 E ( θ ) E(\theta) E(θ)的值最小的 θ \theta θ。这样的问题称为最优化问题

使用公式(3.2)来计算表(2-2)中的数据:

E ( θ ) = 1 2 ∑ i = 1 n ( y ( i ) ? f θ ( x ( i ) ) ) 2 = 1 2 [ ( 374 ? 117 ) 2 + ( 385 ? 141 ) 2 + ( 375 ? 163 ) 2 + ( 401 ? 169 ) 2 ] = 112 ? 176.5 (3.3) \begin{aligned} E(\theta) &= \frac{1}{2} \sum_{i=1}^n (y^{(i)} - f_\theta(x^{(i)}))^2 \\ &=\frac{1}{2}[(374-117)^2+(385-141)^2+(375-163)^2+(401-169)^2]\\ &=112\ 176.5\tag{3.3} \end{aligned} E(θ)?=21?i=1n?(y(i)?fθ?(x(i)))2=21?[(374?117)2+(385?141)2+(375?163)2+(401?169)2]=112?176.5?(3.3)

我们需要不断修改 θ \theta θ的值,使误差越来越小。这种方法叫最小二乘法

最速下降法

使用微分的方法可以求得需要的 θ \theta θ

例:
表达式: g ( x ) = ( x ? 1 ) 2 g(x)=(x-1)^2 g(x)=(x?1)2的图像:

在这里插入图片描述
通过微分求出增减表
d d x g ( x ) = 2 x ? 2 (3.4) \frac{d}{dx} g(x)=2x-2 \tag{3.4} dxd?g(x)=2x?2(3.4)

在这里插入图片描述

  • 比如在 x = 3 x=3 x=3这一点,为了使 g ( x ) g(x) g(x)的值减小,我们需要向左移动x,也就是必须减小x。
    在这里插入图片描述

  • 如果在另一侧 x = ? 1 x=-1 x=?1,为了使 g ( x ) g(x) g(x)变小,需要向右移动x,也就是增大x
    在这里插入图片描述
    只要向与导数的符号相反的方向移动x,g(x)就会自然而然地沿着最小值的方向前进。
    最速下降法\梯度下降法
    x : = x ? η d d x g ( x ) (3.5) x:=x-\eta\frac{d}{dx}g(x) \tag{3.5} x:=x?ηdxd?g(x)(3.5)
    (用上一个x来定义新的x)

  • η \eta η - 学习率的正常数。根据学习率的大小,到达最小值的更新次数也会发生变化

代入具体值:

  • η = 1 , x = 3 \eta=1,x=3 η=1,x=3开始
    x : = 3 ? 1 ( 2 ? 3 ? 2 ) = ? 1 x : = ? 1 ? 1 ( 2 ? ? 1 ? 2 ) = 3 x : = 3 ? 1 ( 2 ? 3 ? 2 ) = ? 1 (3.6) \begin{aligned} &x:=3-1(2*3-2)=-1\\ &x:=-1-1(2*-1-2)=3\\ &x:=3-1(2*3-2)=-1\\ \tag{3.6} \end{aligned} ?x:=3?1(2?3?2)=?1x:=?1?1(2??1?2)=3x:=3?1(2?3?2)=?1?(3.6)
  • η = 0.1 , x = 3 \eta=0.1,x=3 η=0.1,x=3开始
    x : = 3 ? 0.1 ? ( 2 ? 3 ? 2 ) = 2.6 x : = 2.6 ? 0.1 ? ( 2 ? 2.6 ? 2 ) = 2.3 x : = 2.3 ? 0.1 ? ( 2 ? 2.3 ? 2 ) = 2.1 x : = 2.1 ? 0.1 ? ( 2 ? 2.1 ? 2 ) = 1.9 (3.7) \begin{aligned} &x:=3-0.1*(2*3-2)=2.6\\ &x:=2.6-0.1*(2*2.6-2)=2.3\\ &x:=2.3-0.1*(2*2.3-2)=2.1\\ &x:=2.1-0.1*(2*2.1-2)=1.9\\ \tag{3.7} \end{aligned} ?x:=3?0.1?(2?3?2)=2.6x:=2.6?0.1?(2?2.6?2)=2.3x:=2.3?0.1?(2?2.3?2)=2.1x:=2.1?0.1?(2?2.1?2)=1.9?(3.7)

如果η较大,那么x:=x-η(2x-2)会在两个值上跳来跳去,甚至有可能远离最小值。这就是发散状态。而当η较小时,移动量也变小,更新次数就会增加,但是值确实是会朝着收敛的方向而去。

对于目标函数: E ( θ ) = 1 2 ∑ i = 1 n ( y ( i ) ? f θ ( x ( i ) ) ) 2 E(\theta) = \frac{1}{2} \sum_{i=1}^n (y^{(i)} - f_\theta(x^{(i)}))^2 E(θ)=21?i=1n?(y(i)?fθ?(x(i)))2,和 g ( x ) g(x) g(x)一样是开口向上的形状,所以刚才的公式也同样适用于它。
不过目标函数中包含 f θ ( x ) f_\theta(x) fθ?(x),即两个参数 θ 0 , θ 1 \theta_0,\theta_1 θ0?,θ1?,需要使用偏微分:
θ 0 : = θ 0 ? η ? E ? θ 0 θ 1 : = θ 1 ? η ? E ? θ 1 (3.9) \begin{aligned} &\theta_0 := \theta_0 - \eta \frac{\partial E}{\partial\theta_0}\\ &\theta_1 := \theta_1 - \eta \frac{\partial E}{\partial\theta_1}\\ \tag{3.9} \end{aligned} ?θ0?:=θ0??η?θ0??E?θ1?:=θ1??η?θ1??E??(3.9)

省略中间求导步骤
最终得出的公式:
θ 0 : = θ 0 ? η ∑ i = 1 n ( f θ ( x ( i ) ) ? y ( i ) ) θ 1 : = θ 1 ? η ∑ i = 1 n ( f θ ( x ( i ) ) ? y ( i ) ) x ( i ) (3.18) \begin{aligned} &\theta_0 := \theta_0 - \eta \sum_{i=1}^n ( f_\theta(x^{(i)}) - y^{(i)})\\ &\theta_1 := \theta_1 - \eta \sum_{i=1}^n ( f_\theta(x^{(i)}) - y^{(i)})x^{(i)}\\ \tag{3.18} \end{aligned} ?θ0?:=θ0??ηi=1n?(fθ?(x(i))?y(i))θ1?:=θ1??ηi=1n?(fθ?(x(i))?y(i))x(i)?(3.18)

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-01-28 11:54:55  更:2022-01-28 11:55:36 
 
开发: 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年11日历 -2024/11/26 21:36:54-

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