浅谈深度学习的理论演进及其在图像识别中的应用

目录:

一、深度学习的理论演进

1、从 Logistic Regression (LR)到 Neural Networks(NN)

2、从 Neural Networks(NN)到 Deep Neural Networks(DNN)

3、从 Deep Neural Networks(DNN)到 Convolutional Neural Networks(CNN)

二、深度学习在图像识别中的应用——以手写汉字识别为例


一、深度学习的理论演进

0、概念

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。—— wikipedia 

https://zh.wikipedia.org/wiki/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0

关键点:(1)、机器学习的分支;(2)、结构复杂、多层、非线性变换

(1)、机器学习的分支


(2)、结构复杂、多层、非线性变换



1、从 Logistic Regression (LR)到Neural Networks(NN)

简介:Logistic Regression 是深度学习的基石算法。Logistic Regression 被称为对数回归,或逻辑斯回归,外界常称其为“逻辑回归”其实不严谨,它是一种监督学习算法,通过 sigmoid 激活函数对线性输出进行非线性映射,以概率的形式返回结果。逻辑回归本质上是线性回归模型,关于系数是线性函数,加入 sigmoid 映射后对输出做非线性变换。


训练过程:

(1)、数据标准化,消除锯齿效应,加快训练速度:


(2)、明确损失函数,即训练目标。本案从贝叶斯角度呈现完整推导过程:


(3)、明确梯度函数,即对w求导,为优化做准备(注:此处将w和偏执项b合并)


(4)、明确优化算法,即训练手段,常用梯度下降(注:或用共轭梯度法、牛顿法、拟牛顿法)


(5)、迭代至损失值达到足够小,停止迭代,得到参数向量w,用于未来预测。


应用:Logistic Regression是统计学习流派的基础算法,也是机器学习中最常用和最基础的算法之一(机器学习分为统计学习、符号主义、连接主义、贝叶斯主义四大流派),广泛应用于如垃圾邮件识别、流失预警、CTR预估等多个场景。

扩展1:若对其施加拉格朗日正则化项可以变为正则对数回归,降低过拟合影响:


扩展2:若对其进行核函数映射可以变为核对数回归,进一步提升非线性拟合能力:


扩展3:将多个 Logistic Regression 进行集成,并添加一个隐藏层,用 Tanh 替代 sigmoid 函数(Tanh效果往往更好),用交叉熵定义损失函数(支持多分类输出),即为Neural Networks(NN)。因此NN相对于LR没有本质上的变化,只是模型更加复杂,非线性能力更强。


2、从 Neural Networks(NN)到 Deep Neural Networks(DNN)

简介:当隐藏层的数量进一步积累,就是所谓的 Deep Neural Networks (深度神经网络),DNN比NN更加复杂,非线性能力更强。


DNN能力虽强,但有两个独有的问题:

1、梯度爆炸:在前向传播时,参数初始值w若过大,激活函数会以指数级递增,例如w比1略大,w^layers将非常大;

2、梯度消失:即梯度趋向于0无法优化参数,因为通常DNN所用的激活函数是 sigmoid 或 tanh,这两个函数的导数在[0,1]之间,反向求导根据链式法则是一系列偏导数的乘积,因此梯度的连乘会越来越小。

因此,解决这两个问题,通常使用ReLu/Leaky-ReLu/PReLu作为激活函数,同时约束参数初始值的大小(np.sqrt(2/p))。


训练过程:

(1)、数据标准化,消除锯齿效应,加快训练速度

(2)、明确损失函数。DNN以交叉熵为损失函数,对应输出层做softmax变换以实现多分类预测,以三层网络加正则为例:


softmax 函数:


softmax 函数

(3)、明确梯度函数,逐层执行前向运算和反向求导

w3层:


w3层

w2层:


w2层

w1层:


w1层

(4)、明确优化算法,随机梯度下降(SGD)最为稳定,工业界目前多用(ADAM:Adaptive Moment Estimation,自适应矩估计):


Adam的优点:

1、分子是梯度的移动平均值,通过移动平均抵消梯度摆动,加快收敛速度,(如beta=0.9,等于取1/(1-beta)=10次平均);

2、分母是梯度的二阶移动平均,起到约束整个梯度分式避免梯度振幅过大,减少学习路径上的摆动;

3、因此,Adam容忍更大的学习率。


应用层面,当前Adam优先使用,在Mnist数据集上的优化效果对比:


几种算法速度对比:

https://zhuanlan.zhihu.com/p/27449596?utm_source=weibo&utm_medium=social

(5)、迭代至损失值达到足够小,停止迭代,储存每层模型参数,用于未来预测。

3、从 Deep Neural Networks(DNN)到 Converlutional Neural Networks(CNN)

简介:CNN卷积神经网络,即把卷积滤波器和神经网络两个思想结合起来,专门应用于图像识别的一套算法。与传统的全连接神经网络相比,卷积网具有两个特点:1、权值共享;2、稀疏连接。

举个例子,一张64*64的彩色图片,特征数量就达到64*64*3=12,288维,若网络有10层,每层50个神经元,DNN的参数量为12,288*50*10=6,144,000。而CNN若卷积核取3*3,同样10层,每层50个卷积核,CNN的参数量仅为3*3*10*50=4500,因此它更适用于图像领域。

卷积的本质:两个独立随机变量和的概率分布


二维卷积运算图示


CNN一般结构与层

输入层:四维张量(NCHW,N:样本量,C:通道数,H:高,W:宽)

卷积层:完成特征运算

BN层:BatchNormalization层,层间标准化,实现层间解耦,加快训练速度,防止 Covariate Shift

激活层:神经元激活(与DNN类似)

池化层:常用最大池化与均匀池化,减少参数量,防止过拟合

全连接层:与DNN类似

失活层:dropout层,神经元按给定概率随机失活,防止过拟合

输出层:softmax,与DNN类似

训练:

(1)、数据标准化

(2)、明确损失函数,常用交叉熵

(3)、明确每一层梯度函数,CNN的梯度计算较为复杂,需要考虑不同层级各自的求导函数,逐层进行前向运算和反向求导(注:卷积层反向求导时卷积核需翻转180度)


卷积层前向


卷积层反向

(4)、明确优化算法,常用Adam,并增加学习率衰减系数(decay = 0.04),便于收敛;指定batch_size,分批优化


(5)、迭代至损失值达到足够小,停止迭代。

二、深度学习在图像识别中的应用——以手写汉字识别为例

目标:识别手写汉字

训练数据来源:中科院自动化研究所,手写汉字图片数据集( HWDB1.1 )

简介:该数据集采集了来自480个人的总共3755个手写汉字图片(.png),每个汉字约辖300样本,每个样本像素不大于90*90,训练集共计895,035样本,测试集共计223,991样本

模型训练:仅选取常用157个汉字,并刻意加入一定混淆字进行训练

char_set = "的一是了我不订人在他有这个上们来到时大地为子中你说生国年着就那和要她出也得里后自以会家可下而过天去能对小多然于心学么之都好看起发当没成只如事把还用第样道想作种开美总从无情单面最女但现前些所同日手又行意动方期它头经长儿回位分爱老因很给名法间斯知世什两次使身者被高已亲认其进取此话常与活正感己确消肖慧惠旅华力已角商逼通"

硬件信息:

CPU:Intel i7-8700K

GPU:Nvidia GeForce 1080ti

内存:16G

框架:Keras

训练时长:4h:49m:30s


loss function:categorical_crossentropy

optimizer:Adam

data augmentation:

(1)、每张图片统一resize为1*96*96

(2)、图片灰度化+二值化+黑白取反:灰度化与二值化的目的是凸显文字,使文字边界更清晰;黑白取反的目的是令占比更多的背景变为黑色像素值为0,文字为白色像素值为255,减少运算开销

(3)、网络加速优化:把卷积层拆分为瓶颈层减少计算开销,加快训练速度,例如:


注:加入瓶颈层能起到加速的作用,但会损失部分精度

(4)、model


(5)、evaluate


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

推荐阅读更多精彩内容