一、深度学习网络的表达方式汇总及模型分类方法

人的大脑会对眼睛捕捉到的外界事物进行逐级抽象,逐渐提取出抽象的语义信息,以便为人脑所理解。深度学习从这一科学发现得到启发,通过网络的权值来捕捉外界输入模式的特征,并且通过网络连接方式来组合这些特征从而提取出更加高层特征,采用这种方法逐级从大量的输入数据中学习到对于输入模式有效的特征表示,然后再把学习到的特征用于分类、回归和信息检索。深度学习能够提取输入数据的特征,降低输入数据的维数和复杂度,逼近复杂的函数。

为了使得深度网络结构变得更加容易训练,并且强化深度网络的特征提取和函数逼近能力,需要对深度学习网络采用更高效的网络表达方式。网络的表达方式是指网络采用何种结构上的连接方式来抽象表达输入模式的内部结构,或表示输入样本之间的关系。深度学习网络的表达方式有局部表达、分布式表达和稀疏表达3种。深度网络的网络结构是指网络神经元之间连接关系的确定原理,分为区分型网络结构和生成型网络结构两类。

1、局部表达、分布式表达和稀疏表达

局部表达是一种基于局部模板匹配的表达方式。先通过一个局部核函数对输入样本进行映射,然后再采用一个线性组合对局部核函数的输出进行组合,得到期望的输出。

分布式表达和稀疏表达思想来源于人脑的视觉机理,人脑通过逐层抽象表示外界事物来最终感知事物,这种抽象表示往往是通过一系列分散的神经元来实现的,这些神经元之间相互依赖,各自分散;同时,这种抽象表示也是稀疏的,在特定的时刻,只有1-4%神经元同时处于激活状态。分布式表达是分散的,能更有效地提取输入数据的特征,减少了对于样本的需求量;此外,分布式表达通过逐层降低输入模式的维度,解决高维输入模式引起的维度灾难问题。

稀疏表达约束深度网络大部分神经元节点处于抑制状态,即输出值为0;只有少数神经元处于活跃状态,输出值非0。稀疏表示的目的就是希望通过少量的神经元来辨识出输入模式内部的驱动要素,在提取出驱动要素的过程中降低网络的计算复杂度。

2、判别模型与生成模型

模型参数训练有两种方法,即判别方法和生成方法,参数训练后产生的模型分别称为判别模型和生成模型。在进行模型参数训练时给定一组输入X=(x1,x2,….xn),对应也会在模型的输出端得到一组输出Y=(y1,y2,....yn)。在已知输出Y的情况下,一定存在一组最优的输入X*使得条件概率P(X|Y)的值达到最大。由贝叶斯公式和全概率公式可得:

其中,P(Y|X)称为先验概率,P(X|Y)成为后验概率。生成方法是先对先验概率P(Y|X)建模,然后再求最优的输入参数。当输出Y已知时,P(Y) = 1,即X* = argmax P(Y|X),因此生成模型认为模型的输出Y可以看作是由输入X生成的。判别方法则是直接对后验概率P(X|Y)进行建模,在给定输出Y的状态下寻找最优的输入X*,因此判别模型认为模型的输入X是由模型的输出Y决定的。

根据采用参数训练方法不同,深度网络分为生成型深度网络和判别型深度网络两类。深度学习常用模型有堆叠自动编码器、卷积网络和深度信念网络。其中,堆叠自动编码器和卷积网络属于生成型深度网络;深度信念网络属于判别型深度网络。此外,还有一些混合网络,如卷积网络和自动编码器组成卷积自动编码器,限制玻尔兹曼机和卷积网络组成卷积深度信念网络。深度学习应用最为广泛的有卷积网络、深度信念网络和堆叠自动编码器三种网络,这三种网络有各自的网络结构。

3、参考文献

[1]   孙志军, 薛雷, 许阳明, 王正. 深度学习研究综述[J]. 计算机应用研究, 2012, 29(8):2806-2810.

[2]   刘建伟, 刘媛, 罗雄麟. 深度学习研究进展[J]. 计算机应用研究, 2014, 31(7):1921-1942.

[3]   T. N. Sainath,B. Kingsbury, A. R. Mohamed. Learning filter banks within a deep neural network framework[C]. IEEE Workshop on Automatic Speech Recognition and Understanding (ASRU), Olomouc, 2013.

[4] G. E. Hinton and R. R. Salakhutdinov. Reducing the dimensionality of data with neural networks[J]. Science, 2006:504–507.

[5]  Y. LeCun, L. Bottou, Y. Bengio, P. Haffner, Gradient_based Learning Applied to Document Rerognition[J]. PROC. OF THE IEEE, 1998:1-46.

二、深度学习中的表示学习_Representation Learning

在前面指出了深度学习中常用的三种表示数据的方式,即局部表达、稀疏表达和分布式表达。深度学习强大建模和知识抽取的能力,主要原因之一是它对观测样本X采用了有效的表达方式。

 数据的表达方式为什么如此重要?

有效的表达方式可以简化我们处理问题的难度。比如,在NLP领域中,采用word2vec把词语表示成向量(vector)形式,要比采用one-hot形式表示词语具有很多优势:

1、可以基于vector直接计算词与词之间的相似程度,one-hot表达形式不可以;

2、word2vec表示的向量可以描述词与词之间的依赖关系,one-hot表达形式也不可以;

3、vector不存在one-hot中的高纬问题,计算效率更高。

表示(表达)学习(Representation Learning)是什么?为什么表示的概念有助于深度学习框架的设计?

表示学习,又称学习表示。在深度学习领域内,表示是指通过模型的参数,采用何种形式、何种方式来表示模型的输入观测样本X。表示学习指学习对观测样本X有效的表示。

表示学习有很多种形式,比如CNN参数的有监督训练是一种有监督的表示学习形式,对自动编码器和限制玻尔兹曼机参数的无监督预训练是一种无监督的表示学习形式,对DBN参数-先进性无监督预训练,再进行有监督fine-tuning-是一种半监督的共享表示学习形式。

表示学习中最关键的问题是:如何评价一个表示比另一个表示更好?

表示的选择通常通常取决于随后的学习任务,即一个好的表示应该使随后的任务的学习变得更容易。以基于CNN的图像分类任务为例。模型可以分为基于CNN的特征抽取和基于softmax回归的线性分类两个部分。通过模型参数有监督的训练,通过CNN,从线性不可分的图片里抽取出线性可分表示(特征),softmax线性分类器可以基于抽取的线性可分的表示进行分类。

表示学习中最有趣的一种形式是涉及多个任务的共享表示学习。为什么?

以无监督和有监督结合的共享表示学习为例。在深度学习任务中,我们通常有大量的无标签的训练样本和少量的有标签的训练样本。只在有限的有标签的训练样本上学习,会导致模型存在严重过拟合问题。共享表示具体来说,可以从大量无标签的观测样本中通过无监督的方法,学习出很好的表示,然后基于这些表示,采用少量有标签的观测样本来得到好的模型参数,缓解监督学习中的过拟合问题。

共享表示学习涉及多个任务,多个任务之间共享一定相同的因素,比如相同的分布(distribution)、观测样本X来自相同的领域(domain)等。共享表示学习有多种表示形式。假设共享表示学习中采用训练样本A进行无监督学习,训练样本B进行有监督学习。样本A和样本B可能来自相同的领域,也可能来自不同的领域;可能任务服从相同的分布,也可能服从不同的分布。

共享表示学习相关的机器学习技术有很多:迁移学习(Transfer Lear)、多任务学习(Multitask Learning)、领域适应性(Domain Adaptation)(One Shot Learning、Zero Shot learning)等。深度学习技术具有很强的特征抽取、知识表达的能力,是共享表示学习的利器,它可以有效抽取多个人任务之间共享的因素、知识或特征。因此,现在出现了很多将深度学习技术用于迁移学习、多任务学习技术中的研究。

深度学习中的表示学习_Representation Learning相关推荐

  1. 『深度概念』度量学习中损失函数的学习与深入理解

    『深度概念』度量学习中损失函数的学习与深入理解 0. 概念简介 度量学习(Metric Learning),也称距离度量学习(Distance Metric Learning,DML) 属于机器学习的 ...

  2. 模型汇总-12 深度学习中的表示学习_Representation Learning

    我们在前面的<模型汇总_9 深度学习网络的表达方式汇总及模型分类方法>这篇文章中,指出了深度学习中常用的三种表示数据的方式,即局部表达.稀疏表达和分布式表达.深度学习强大建模和知识抽取的能 ...

  3. 深度学习核心技术精讲100篇(八)-keras 实战系列之深度学习中的多任务学习(Multi-task learning)

    多任务学习(Multi-task learning)简介 多任务学习(Multi-task learning)是迁移学习(Transfer Learning)的一种,而迁移学习指的是将从源领域的知识( ...

  4. Nat. Mach. Intell. | 深度神经网络中的捷径学习

    今天给大家介绍来自德国蒂宾根大学的Robert Geirhos和加拿大多伦多大学的Claudio Michaelis等人发表在Nature Machine Intelligence的文章"S ...

  5. 深度学习中的强化学习和对抗学习

    在人工智能中,有两个十分重要的内容,第一就是机器学习,第二就是深度学习.正是由于机器学习与深度学习,人工智能才能够帮助我们做出更多的事情.其实,深度学习也是有分类的.深度学习可以分为两种,一种是强化学 ...

  6. 深度学习中的多任务学习(一)

    任务学习-Multitask Learning概述 Reference https://blog.csdn.net/u010417185/article/details/83065506 1.单任务学 ...

  7. 蒙特卡洛树搜索算法实现_蒙特卡洛树搜索实现实时学习中的强化学习

    蒙特卡洛树搜索算法实现 In the previous article, we covered the fundamental concepts of reinforcement learning a ...

  8. 深度学习中的算法学习与记忆,利用故事联想帮助大家记忆,每个人都会

    大家好,我是微学AI,大家看过我的文章,想必是对深度学习有了一定的了解了,但是对于初学者来说,深度学习中有很多名词和数学知识.原理还是不太清楚,记忆的不牢固,用起来不熟练,今天就给大家讲一个故事,让大 ...

  9. 【小样本基础】深度学习中的元学习:元学习的理解、经典MAML算法、用元学习解决具体问题的思路、元学习的分类

    本篇博客主要是分享一篇22年11月出来的元学习综述,由于这一篇综述的篇幅很长,可能对于之前不了解元学习的同学们来说会很晦涩,因此我补充了一些调研资料和例子,希望通过这篇博客,能够让大家对元学习有一个基 ...

最新文章

  1. 在linux内核中获得比jiffies精度更高的时间值【转】
  2. 跳出数据计算拯救人工智能之打败机器学习方法详解
  3. P3809【模板】后缀排序
  4. django1.11.6+nginx1.12.2+uwsgi2.0.15 部署
  5. SpringBoot是如何解析参数的
  6. P1131-[ZJOI2007]时态同步【树形dp】
  7. JAVA50道经典编程题
  8. go java nodejs 速度对比_除了node.js,Java、Python、Go 哪个适合web前端工程师
  9. 理解 Android 本地数据存储 API
  10. Exchange使用正常的恢复无法恢复的问题
  11. 极速PDF编辑器提示缺少字体如何解决
  12. 爆!看过这么多教程吗?不管你看没看过,我反正是没看过!
  13. K3 LEDE踩坑专题
  14. PL3376C-ASEMI恒压原边控制PL3376C
  15. C#调用百度地图API经验分享
  16. Android开发艺术探索之初探AIDL(一)
  17. 单目标应用:白鲸优化算法(Beluga whale optimization,BWO)优化双向长短时记忆BiLSTM的权值和阈值(提供MATLAB代码)
  18. Java使用Hutools工具类发送腾讯企业邮箱
  19. POM文件配置的详解
  20. 三相永磁同步电机无速度传感器控制(基于扩展反电动势)

热门文章

  1. 【JS】1015- 异步编程的终极解决方案 async/await
  2. Promise的真正意义--不只为回调地狱
  3. SAP MDG —— 一个典型的MDG项目组织架构和顾问技能要求(仅供参考~)
  4. 解决Ubuntu安装后无法联网的问题-网卡驱动为安装成功
  5. 直播用的计算机配置,在斗鱼直播电脑配置需要什么样的
  6. DS18B20的原理与应用
  7. CopyTranslator 翻译神器的安装与使用
  8. 【CSS】CSS 特性 ① ( CSS 层叠性 | 样式冲突 | 就近原则选择样式 )
  9. 混合云中的事件驱动架构
  10. 信息化项目(软硬通用)培训模板