【台大李宏毅机器学习】机器学习基本概念

【台大李宏毅机器学习】机器学习基本概念

  • 机器学习简介
    • Step1 Function with unknown
    • Step2 define loss from training data

机器学习简介

Machine Learning is so simple …

本章节宏毅讲机器学习的三个步骤:

  • Step 1: function with unknown
  • Step 2: define loss from training data
  • Step 3: optimization
  • (Step1 ~ Step3称为Training,即我们说的训练、炼丹)

Step1 Function with unknown

线性模型太简单了,y = wx+b, w影响斜率,b影响截距,仅仅使用线性模型有很大局限性。 Model Bias

对于折线的模拟,可以设 f = constant + sum of a set of sigmoid.

Simoid Function
y = c 1 1 + e − ( b + w x 1 ) = c ∗ s i g m o i d ( b + w x 1 ) y = c \frac{1}{1+{e}^{-(b+wx_1)}} = c*sigmoid(b+wx_1) y=c1+e(b+wx1)1=csigmoid(b+wx1)

通过修改参数,我们可以得到不同形状的sigmoid函数,以近似不同的情况:

修改w,函数的斜率发生改变;

修改b,函数发生左移右移;

修改c,函数高度发生改变;

引入多个特征, 公式中j表示特征个数,

y = b + w x 1 → y = b + ∑ j w j x j y=b+wx_1 \rightarrow y=b+\sum\limits_{j} w_j x_j y=b+wx1y=b+jwjxj

将多特征的情况引入函数中,新的sigmoid function为:

y = b + ∑ i c i ∗ s i g m o i d ( b + ∑ j w i j x j ) y = b + \sum\limits_{i}c_i*sigmoid(b+\sum\limits_{j}w_{ij}x_j) y=b+icisigmoid(b+jwijxj)

将上述公式经过推导后,得到矩阵形式的计算公式:

y = b + c T σ ( b + w x ) y = b + c^T \sigma(b+wx) y=b+cTσ(b+wx)

该公式为上述Step1中那个有未知参量的公式的一般形式。


Step2 define loss from training data

更换模型/function后,loss也是计算预测与真实值的差距。

θ ∗ = a r g min ⁡ θ L \theta^* = arg \min\limits_{\theta} L θ=argθminL

  • (Randomly) Pick initial values θ 0 \theta^0 θ0
  • Compute gradient以更新参数, g = ∇ L ( θ 0 ) g = \nabla L(\theta^0) g=L(θ0)
  • update θ 1 ⇐ θ 0 − η g \theta^1 \Leftarrow \theta^0 - \eta g θ1θ0ηg
  • continue update θ i + 1 ← θ i − η g \theta^{i+1} \leftarrow \theta^i - \eta g θi+1θiηg

实际上,在训练中随机将训练集分为batch,长度N的数据集按照size=B划分[N/B]个batch,而不是拿L来计算gradient。

1 epoch = see all the batches once

hypeparameter 超参数: 人设定值的参数

Example 1

  • 10000 examples(N=10000)
  • Batch size is 10(B=10)

How many update in 1 epochs?
N/B = 1000 updates

ReLU

常用的也不是soft sigmoid一种,还有一种经典的激活函数是ReLU.

Rectified Linear Unit(ReLU)的公式表示:

y = c ∗ m a x ( 0 , b + w x 1 ) y = c* max(0, b+wx_1) y=cmax(0,b+wx1)

要使用ReLU替代Sigmoid,公式更改为:

y = b + ∑ 2 i c i m a x ( 0 , b i + ∑ j w i j x j ) y = b + \sum\limits_{2i} c_i max(0, b_i+ \sum\limits_{j}w_{ij}x_j) y=b+2icimax(0,bi+jwijxj)

Which one is better?

输出层常用softmax、sigmoid,隐藏层常用ReLU.

Deep Learning

神经网络的重生之我是深度学习

Hidden Layer 代表一层中很多的 Neuron, Many layers means Deep。故Neural Network的应用被称为Deep Learning。

Why we want “Deep” network, not “Fat” network? AlexNet 8 layers, while ResNet 152 layers.

Overfitting : Better on training data, worse on unseen data.

过拟合的主要特征,在训练集上表现超级好,但是在没训练过的数据表现不太行;与之相关的还有欠拟合,欠拟合就是在训练集上也并没有表现特别好,还有学习的空间。

视频传送门
课程视频获取地址:
李宏毅《机器学习/深度学习》国语课程(2021)_哔哩哔哩_bilibili
本节笔记为视频中机器学习基本概念。
课程ppt及其他资料获取地址:
https://speech.ee.ntu.edu.tw/~hylee/ml/2021-spring.html

你可能感兴趣的:(深度学习-台大李宏毅,机器学习,人工智能,深度学习)