Task01&Task02. 动手学深度学习——从线性回归出发

最近正在参加一个公益AI课程,学习深度学习,打卡监督自己。由于刚开始学习pytorch和深度学习,进度比较慢,没有时间仔细写笔记,因此先简单列出提纲,以后再进行补充。本文目录如下:

Task01

  • 1.线性回归
  • 2.logistic回归
  • 3.softmax分类模型
  • 4.多层感知机

Task02

  • 1.文本预处理
    1. 语言模型
    1. 循环神经网络基础

1. 线性回归

1.1 线性回归的形式

y=W^TX+b

1.2 平方损失函数

如何衡量线性回归模型拟合得怎么样?一个直观的想法就是预测值和真实值的相差越小越好,但是由于正负会相互抵消,因此不直接进行求和,而是取平方和。
\sum_{i=1}^{n}(\hat{y_i}-y_i)^2

1.3 如何估计系数?

模型中的待估系数包括Wb,应该如何估计这两个系数呢?
我们的目标是最小化损失函数,也就是
argmin\sum_{i=1}^{n}(\hat{y_i}-y_i)^2
那么就有两种思路,一种是求解析解,另一种是求数值解。

  • 解析解即最小化一阶导数,解出Wb的表达式。
  • 很多情况下,最小化损失函数无法得到解析解,因此就需要求数值解,这里可以用梯度下降的方法求数值解。

1.4 补充知识点:梯度下降法

2. logistic回归

2.1 sigmoid函数

线性回归可以对y的值是连续值时建模,但我们想象一下,当我们的y值的值域是{0,1}时,用线性回归模型显然不合适,因为等式右边的范围时负无穷到正无穷。

但是,如果我们依然想利用线性回归模型怎么办呢?有一个方法就是想办法将负无穷到正无穷映射到0到1区间。那么怎么映射呢?——sigmoid函数就是一个方法。
\text{sigmoid}(x) = \frac{1}{1 + \exp(-x)}.

2.2 logistic回归的损失函数——交叉熵损失函数

对于样本i,我们构造向量\boldsymbol{y}^{(i)}\in \mathbb{R}^{q} ,使其第y^{(i)}(样本i类别的离散数值)个元素为1,其余为0。这样我们的训练目标可以设为使预测概率分布\boldsymbol{\hat y}^{(i)}尽可能接近真实的标签概率分布\boldsymbol{y}^{(i)}

  • 平方损失估计

\begin{aligned}Loss = |\boldsymbol{\hat y}^{(i)}-\boldsymbol{y}^{(i)}|^2/2\end{aligned}

然而,想要预测分类结果正确,我们其实并不需要预测概率完全等于标签概率。例如,在图像分类的例子里,如果y^{(i)}=3,那么我们只需要\hat{y}^{(i)}_3比其他两个预测值\hat{y}^{(i)}_1\hat{y}^{(i)}_2大就行了。即使\hat{y}^{(i)}_3值为0.6,不管其他两个预测值为多少,类别预测均正确。而平方损失则过于严格,例如\hat y^{(i)}_1=\hat y^{(i)}_2=0.2\hat y^{(i)}_1=0, \hat y^{(i)}_2=0.4的损失要小很多,虽然两者都有同样正确的分类预测结果。

改善上述问题的一个方法是使用更适合衡量两个概率分布差异的测量函数。其中,交叉熵(cross entropy)是一个常用的衡量方法:

H\left(\boldsymbol y^{(i)}, \boldsymbol {\hat y}^{(i)}\right ) = -\sum_{j=1}^q y_j^{(i)} \log \hat y_j^{(i)},

其中带下标的y_j^{(i)}是向量\boldsymbol y^{(i)}中非0即1的元素,需要注意将它与样本i类别的离散数值,即不带下标的y^{(i)}区分。在上式中,我们知道向量\boldsymbol y^{(i)}中只有第y^{(i)}个元素y^{(i)}{y^{(i)}}为1,其余全为0,于是H(\boldsymbol y^{(i)}, \boldsymbol {\hat y}^{(i)}) = -\log \hat y{y^{(i)}}^{(i)}。也就是说,交叉熵只关心对正确类别的预测概率,因为只要其值足够大,就可以确保分类结果正确。当然,遇到一个样本有多个标签时,例如图像里含有不止一个物体时,我们并不能做这一步简化。但即便对于这种情况,交叉熵同样只关心对图像中出现的物体类别的预测概率。

假设训练数据集的样本数为n,交叉熵损失函数定义为
\ell(\boldsymbol{\Theta}) = \frac{1}{n} \sum_{i=1}^n H\left(\boldsymbol y^{(i)}, \boldsymbol {\hat y}^{(i)}\right ),

其中\boldsymbol{\Theta}代表模型参数。同样地,如果每个样本只有一个标签,那么交叉熵损失可以简写成\ell(\boldsymbol{\Theta}) = -(1/n) \sum_{i=1}^n \log \hat y_{y^{(i)}}^{(i)}。从另一个角度来看,我们知道最小化\ell(\boldsymbol{\Theta})等价于最大化\exp(-n\ell(\boldsymbol{\Theta}))=\prod_{i=1}^n \hat y_{y^{(i)}}^{(i)},即最小化交叉熵损失函数等价于最大化训练数据集所有标签类别的联合预测概率。

2.3 估计系数

这里依然使用梯度下降法

2.4 反向传播

3. 多层感知机

3.1 softmax

logistic回归能解决二分类问题,但是当y的取值是多个的情况下,就需要用到softmax进行分类。
softmax运算符(softmax operator)解决了以上两个问题。它通过下式将输出值变换成值为正且和为1的概率分布:

\hat{y}_1, \hat{y}_2, \hat{y}_3 = \text{softmax}(o_1, o_2, o_3)

其中

\hat{y}1 = \frac{ \exp(o_1)}{\sum_{i=1}^3 \exp(o_i)},\quad \hat{y}2 = \frac{ \exp(o_2)}{\sum_{i=1}^3 \exp(o_i)},\quad \hat{y}3 = \frac{ \exp(o_3)}{\sum_{i=1}^3 \exp(o_i)}.

容易看出\hat{y}_1 + \hat{y}_2 + \hat{y}_3 = 10 \leq \hat{y}_1, \hat{y}_2, \hat{y}_3 \leq 1,因此\hat{y}_1, \hat{y}_2, \hat{y}_3是一个合法的概率分布。这时候,如果\hat{y}_2=0.8,不管\hat{y}_1\hat{y}_3的值是多少,我们都知道图像类别为猫的概率是80%。此外,我们注意到

\underset{i}{\arg\max} o_i = \underset{i}{\arg\max} \hat{y}_i

因此softmax运算不改变预测类别输出。

4.多层感知机

其实logistic函数就是一个一层的神经网络模型,但如果想要使网络更加复杂,就可以在其中增加隐藏层。

4.1 不同的激活函数

  • sigmoid
  • tanh
  • ReLu

4.2 反向传播

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,254评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,875评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,682评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,896评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,015评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,152评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,208评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,962评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,388评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,700评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,867评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,551评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,186评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,901评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,142评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,689评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,757评论 2 351