L01_机器学习基本概念(李宏毅机器学习_学习笔记)
文章目录什么是机器学习不同类别的函数(Function)1. 回归(Regression)2. 分类3. 结构化学习如何找到想要的函数(Function)1.建立一个含有位置参数的函数2.定义损失函数3.最优化(Optimization)模型的变形:Sigmoid→ReLUSigmoid\to ReLUSigmoid→ReLU总结什么是机器学习让机器具有寻找一个函数(Function)的功能不同类
文章目录
什么是机器学习
让机器具有寻找一个函数(Function)的功能
不同类别的函数(Function)
1. 回归(Regression)
函数输出一个标量
2. 分类
给出不同的选项,函数输出正确的那一个。
3. 结构化学习
产生一个有结构的物件,比如画一张图,写一篇文章。
如何找到想要的函数(Function)
1.建立一个含有位置参数的函数
我们可以使用线性的函数进行训练,但是使用线性模型太过简单,无法很好的模拟出现实的情况,我们需要更加复杂的模型我们可以使用***constant + sum of a set of Sigmoid Function
***逼近不同的曲线
Sigmoid Function
(S型曲线):
y
=
c
1
1
+
e
−
(
b
+
w
x
1
)
=
c
⋅
s
i
g
m
o
i
d
(
b
+
w
x
1
)
y = c\dfrac{1}{1+e^{-(b+wx_{1})}}\\ = c\cdot sigmoid(b+wx_{1})
y=c1+e−(b+wx1)1=c⋅sigmoid(b+wx1)
不同参数的影响如下图所示:
所以我们可以进一步写出新的Model:
y
=
b
+
∑
i
c
i
⋅
s
i
g
m
o
i
d
(
b
i
+
w
i
x
1
)
y=b+\sum_{i}c_{i}\cdot sigmoid(b_{i}+w_{i}x_{1})
y=b+i∑ci⋅sigmoid(bi+wix1)
如果我们利用多个已知的数据(features)进行预测,则有:
y
=
b
+
∑
i
c
i
⋅
s
i
g
m
o
i
d
(
b
i
+
∑
j
w
i
j
x
j
)
y=b+\sum_{i}c_{i}\cdot sigmoid(b_{i}+\sum_{j} w_{ij}x_{j})
y=b+i∑ci⋅sigmoid(bi+j∑wijxj)
其中,
j
j
j 是
f
e
a
t
u
r
e
s
features
features 的编号,
i
i
i 是
s
i
g
m
o
i
d
sigmoid
sigmoid 的编号。
使用线性代数的知识对式子进行化简可以得到:
可以将所有的未知参数构成一个向量
θ
\theta
θ:
2.定义损失函数
损失函数是所有参数的函数
L
(
θ
)
L(\mathbf{\theta})
L(θ),表示使用一组参数建立起的模型的好坏。
e
=
y
^
−
y
L
o
s
s
:
1
N
∑
n
e
n
e=\hat{y}-y \\ Loss:\quad \frac{1}{N}\sum_{n}e_{n}
e=y^−yLoss:N1n∑en
3.最优化(Optimization)
找一组最优的参数 θ ∗ = a r g m i n θ L \theta^{*}=arg\quad \mathop{min}\limits_{\theta}L θ∗=argθminL
使用梯度下降(Gradient Descent)
-
随机选取一个初始值 θ 0 \mathbf{\theta^{0}} θ0
-
计算梯度 g = ∇ L ( θ 0 ) \mathbf{g}=\nabla L(\mathbf{\theta^{0}}) g=∇L(θ0)
接着计算
θ 1 ← θ 0 − η g \mathbf{\theta^{1}}\gets \mathbf{\theta^{0}} - \eta\mathbf{g} θ1←θ0−ηg
θ 2 ← θ 1 − η g \mathbf{\theta^{2}}\gets \mathbf{\theta^{1}} - \eta\mathbf{g} θ2←θ1−ηg
⋯ ⋯ \cdots\cdots ⋯⋯
-
迭代更新 θ \mathbf{\theta} θ的值
但是在实际的最优化过程中,我们将很多的数据分成好多份,每一份算出一个
L
i
L^{i}
Li出来,然后使用它迭代计算
θ
∗
\mathbf{\theta}^{*}
θ∗。具体过程如下图所示:
update \textbf{update} update:是使用一个 b a t c h batch batch中的数据训练出的 L L L迭代一次。
epoch \textbf{epoch} epoch:使用每一个 b a t c h batch batch迭代过一次 θ \mathbf{\theta} θ。
模型的变形: S i g m o i d → R e L U Sigmoid\to ReLU Sigmoid→ReLU
两个
R
e
L
U
ReLU
ReLU可以形成一个
H
a
r
d
S
i
g
m
o
i
d
HardSigmoid
HardSigmoid
总结
但是,随着 l a y e r layer layer 逐渐的加深,可能会出现在训练数据上较好,在预测数据上却比较差的情况,我们称它作 overfitting \textbf{overfitting} overfitting。
文章中的图片均来源于李宏毅老师2021机器学习课程。
更多推荐
所有评论(0)