查看原文
其他

【深度学习最精炼详实干货中文讲义】复旦邱锡鹏老师《神经网络与深度学习》讲义报告分享01(附报告pdf下载)

2017-11-16 专知内容组(编) 专知

点击上方“专知”关注获取专业AI知识!

【导读】复旦大学副教授、博士生导师、开源自然语言处理工具FudanNLP的主要开发者邱锡鹏(http://nlp.fudan.edu.cn/xpqiu/)老师撰写的《神经网络与深度学习》书册,是国内为数不多的深度学习中文基础教程之一,每一章都是干货,非常精炼。邱老师在今年中国中文信息学会《前沿技术讲习班》做了题为《深度学习基础》的精彩报告,报告非常精彩,深入浅出地介绍了神经网络与深度学习的一系列相关知识,基本上围绕着邱老师的《神经网络与深度学习》一书进行讲解。专知希望把如此精华知识资料分发给更多AI从业者,为此,专知特别联系了邱老师,获得他的授权同意分享。邱老师特意做了最新更新版本,非常感谢邱老师!专知内容组围绕邱老师的讲义slides,进行了解读,请大家查看,并多交流指正! 此外,请查看本文末尾,可下载最新神经网络与深度学习的slide


邱老师的报告内容分为三个部分:

  • 概述

    • 机器学习概述

    • 线性模型

    • 应用

  • 基础模型

    • 前馈神经网络

    • 卷积神经网络

    • 循环神经网络

    • 网络优化与正则化

    • 应用

  • 进阶模型

    • 记忆力与注意力机制

    • 无监督学习

    • 概率图模型

    • 深度生成模型

    • 深度强化学习

    • 模型独立的学习方式

    • 哈工大在事理图谱方面的探索


由于内容很丰富,今天专知内容组为大家整理出第一部分概述的相关内容,后续会持续为大家带来报告的其余部分,敬请期待。


【特此注明】本报告材料获邱锡鹏老师授权发布,由于笔者能力有限,本篇所有备注皆为专知内容组成员通过根据报告记录和PPT内容自行补全,不代表邱锡鹏老师本人的立场与观点。

邱老师个人主页: http://nlp.fudan.edu.cn/xpqiu/

课程Github主页:https://nndl.github.io/




神经网络与深度学习


这次邱老师主要讲的是“神经网络与深度学习”,神经网络与深度学习技术目前在学术界和工业界取得了广泛的成功,并逐渐受到了高度重视。邱老师主要介绍神经网络与深度学习中的基础知识、主要模型(卷积神经网络、递归神经网络等)以及在计算机视觉、自然语言处理等领域的应用。


大家可以从这个图中可以看出内容很丰富,主要是分为三部分内容,今天专知内容组为大家整理出第一部分概述的相关内容,后续会持续为大家带来报告的其余部分,敬请期待。

开始讲概述内容,概述主要介绍人工智能、神经网络、深度学习几个主要概念和发展历史。



1950 年,阿兰·图灵(Alan Turing)发表了一篇有这重要影响力的论文,讨论了创造一种“智能机器”的可能性。由于“智能”一词比较难以定义,他提出了著名的图灵测试:“一个人在不接触对方的情况下,通过一种特殊的方式,和对方进行一系列的问答。如果在相当长时间内,他无法根据这些问题判断对方是人还是计算机,那么就可以认为这个计算机是智能的”。

邱老师分别介绍人工智能发展的三段时期,“推理期”,“知识期”和“学习期”。如1943年McCulloch和Pitts提出人工神经元网络,其在《数学生物物理学公告》上发表了《神经活动中内在思想的逻辑演算》(A Logical Calculus of the Ideas Immanent in Nervous Activity)。这篇论文影响甚广,讨论了理想化和简化的人工神经网络以及如何执行简单的逻辑功能。这启发了后来神经网络和深度学习的产生。1955年8月31日,“人工智能”(artificialintelligence)一词在一份关于召开国际人工智能会议的提案中被提出。


开发一个人工智能系统,需要根据已有知识分析任务该怎么做,根据分析结果判断使用不同的方法。如知道该任务的规则,那么可以采用专家系统来做。如果不知道该怎么做的,根据任务的难易程度判断是机器学习或增强学习来做。

下面开始介绍机器学习概述了。

通俗地讲,机器学习(Machine Learning,ML)就是让计算机从数据中进行自动学习,得到某种知识(或规律),即如何从观测数据(样本)中寻找规律,并利用学习到的规律(模型)对未知或无法观测的数据进行预测。


举个例子,判断芒果是否甜蜜。


机器学习判断芒果是否甜蜜和人其实一样,通过判断芒果的外在属性去推断它是否好吃,然后建立一个挑选的标准,这个标准对于机器来说,就是一个模型。对于传统编程来说,一个挑选芒果的模型是不能挑选苹果的,但添加了机器学习的算法,建立的是一个“如何挑选芒果”的模型,这个模型同样适用在挑选苹果和其他水果上,且算法不断测试不断优化,最终,可以达到一个最优解。


以芒果分类为例介绍机器学习的基本概念。


机器的训练过程和人的训练和类似,人也不是一出生就能判别出什么样的芒果是好芒果,从买到芒果后看到摸到它的一些外部特征到吃出来的味道,吃的多了在人的大脑中就会逐渐形成芒果外部特征到味道的映射。


下次再吃芒果的时候这要一拿到芒果,通过这种映射就可以判断这芒果到底好不好吃。


把人的这个映射建立过程交给机器来做,就成了机器学习的过程。


这里的模型就类似于一个经常吃芒果的人建立起从芒果的外部特征到味道的映射。而学习算法就是怎么不断的试吃积累经验的过程。


在机器学习问题中:两类比较常见:

  • 分类是最典型的监督学习

  • 聚类是最典型的无监督学习



此图是机器学习概览,由训练数据,模型,优化求解组成。


常见的机器学习类型包括:

  • 监督学习(Supervised Learning)是利用一组已知输入x和目标标签y 的 数据来学习模型的参数,使得模型预测的目标标签和真实标签尽可能的一 致。




  • 无监督学习(Unsupervised Learning)是用来学习的数据不包含目标标签,需要学习算法自动学习到一些有价值的信息。典型的无监督学习问题有聚类(Clustering)、密度估计(density estimation)等。


  • 强化学习(Reinforcement Learning)也叫增强学习,强调一种交互的学习方式。智能体根据环境的状态每做出一个动作,可以得到即时或延时的 奖励。做出一系列的动作。智能体需要在和环境的交互中不断学习调整策 略,以取得最大化的累积奖励。

开始讲机器学习的几个关键点

化错误函数表明一个机器的推理能力,即从样品数据中推导出的规则能够适用于新的数据的能力。



过拟合是因为太过拘泥于现有的训练数据,在面临新数据时不懂得变通而效果很差。类似于按图索骥。



在分类和回归模型的过拟合,就是学习到的模型严格匹配现有数据,几乎没有偏差。


损失函数是一个非负实数函数,用来量化模型预测和真实标签之间的差异。 最直接的损失函数为错误率,即0-1损失。而平方损失函数经常用在预测标签y 为实数值的任务中。


交叉熵(cross entropy)是用来评估当前训练得到的概率分布与真实分布的差异情况,减少交叉熵损失就是在提高模型的预测准确率。

上图是摘自http://www.cs.cmu.edu/~yandongl/loss.html 不同损失函数直观对比。

 

损失函数度量模型一次预测的好坏,风险函数度量平均意义下模型的好坏。


在确定了训练集、假设空间 以及学习准则后,如何找到最优的模型就成了一个优化(optimization)问题。机器学习的训练过程其实就是 最优化问题的求解过程。



Vanilla梯度下降法,又称为批梯度下降法(batchgradient descent),在整个训练数据集上计算损失函数关于参数的梯度。




相反,随机梯度下降法(stochastic gradient descent, SGD)根据每一条训练样本和标签更新参数。对于大数据集,因为批梯度下降法在每一个参数更新之前,会对相似的样本计算梯度,所以在计算过程中会有冗余。而SGD在每一次更新中只执行一次,从而消除了冗余。因而,通常SGD的运行速度更快。

在训练的过程中时常在验证集上监测误差,在验证集上如果损失函数不再显著地降低,那么应该提前结束训练。


学习率决定达到最小值或者局部最小值过程中所采用的步长的大小


下面开始介绍概述的第二部分 线性模型。


线性模型(LinearModel)是机器学习中应用最广泛的模型,指通过样本特征的线性组合来进行预测的模型。线性回归主要有几种不同的回归方法,包括 Logistic回归, Softmax回归,感知器和支持向量机。这些模型的参数学习方式也都不尽相同。



Logistic 回归是一个两类分类问题的线性模型。两类分类问题中,预测的目标标签 y 只有两种取值,一般为 {0, 1}或者 {-1, +1}。为了符合 logistic回归的描述习惯,文中采用 {0, 1}。


对于分类问题,使用线性回归算法来求解是不合适的。一是线性函数的输出值域和目标标签的值域不相同,二是损失函数很难定义。如果使用平方损失会导致比较大的误差。为了解决连续的线性函数不适合进行分类的问题,引入非线性的logistic函数作为激活函数,来预测目标标签 y = 1的后验概率。Logistic回归相当于把线性函数的值域从实数区间“挤压”到了 (0, 1)之间,可以用来表示概率。


Logistic 回归采用交叉熵作为损失函数,并使用使用梯度下降法来对参数进行优化。交叉熵损失函数及其梯度如上图的公式。


Softmax回归(Softmax Regression),也称为多项(Multinomial)或多类(Multi-class)的 Logistic回归,是 logistic回归在多类分类问题上的推广。对于多类问题,类别标签 y∈ {1,2, ·· · , C}可以有 C 个取值。给定一个样本 x,其属于类别 c后验概率公式如上。


公式中其中W = [w1, ·· · , wC]是由 C 个类的权重向量组成的矩阵,wc 是第 c类的权重向量。


Softmax回归使用交叉熵损失函数来学习最优的参数矩阵W。采样交叉熵损失函数, softmax回归模型的风险函数如公式所示。采样梯度下降法,损失函数R(W)关于 W 的梯度如公式。



Logistic本质上是线性模型,对于非线性可分问题,只用原始特征不能进行正确的分类。如果对特征进行非线性变换,如kernel,或者用组合特征,可以实现一定程度的非线性。


下面开始介绍感知器

感知器(Perceptron)由 Roseblatt于 1957年提出,是一种广泛使用的线性分类器。感知器可谓是最简单的人工神经网络,只有一个神经元,感知器是一种简单的两类线性分类模型。



感知器的学习过程也是线性分类器的经典学习算法,先初始化一个权重向量w0(通常是全零向量),然后每次分错一个样本时,就用这个样本来更新权重。



感知器无法处理异或(XOR)问题。


如下图所示,异或问题可以分为根据输出可以分为两类,显示在二维坐标系中如上图(右)所示:其中输出结果为1对应右图中红色的十字架,输出为0对应右图中蓝色的圆圈,我们可以发现对于这种情况无法找到一条直线将两类结果分开。即感知机无法找到一个线性模型对异或问题进行划分。


上述介绍了几种最常见的分类器,所谓线性分类器是指根据标签确定的数据在其空间中的分布,可以使用一条直线(或者平面,超平面)进行分割。


下面开始介绍机器学习应用,机器学习应用非常广泛,如图像分类,语音识别,文本分类,产品推荐,等等。


当今时代,机器学习在你身边无处不在,如你在百度搜索问题的时候,会被推荐与你相关的词条,机器学习帮助搜索引擎判断哪个结果更适合你。


你在使用邮件的时候,机器学习可以帮助你屏蔽很多垃圾邮件,等等,机器学习的例子还真是随处可见。


CIFAR-10是图像分类领域中元老级别的数据集,其官方网址:

https://www.cs.toronto.edu/~kriz/cifar.html。


数据的提供者:Alex Krizhevsky, Vinod Nair,and Geoffrey Hinton,这几位都是深度学习的鼻祖和真正的大佬级人物,要感谢他们提供CIFAR数据集。


Imagenet数据集是一个非常优秀的图像数据集,是目前深度学习图像领域应用得非常多的一个领域,关于图像分类、定位、检测等研究工作大多基于此数据集展开。Imagenet数据集文档详细,有专门的团队维护,使用非常方便,在计算机视觉领域研究论文中应用非常广,几乎成为了目前深度学习图像领域算法性能检验的“标准”数据集。


imageNet几乎每年都会对数据集进行修正,与Imagenet数据集对应的有一个享誉全球的“ImageNet国际计算机视觉挑战赛(ILSVRC)”。



在图像分类上的应用:

人类不知不觉中无时无刻不在做这些图像分类任务。


对于计算机而言,对于一张输入的图片,要判定它属于给定的一些标签/类别中的哪一个。


看似很简单的一个问题,这么多年却一直是计算机视觉的一个核心问题,应用场景也很多。它的重要性还体现在,其实其他的一些计算机视觉的问题(比如说物体定位和识别、图像内容分割等)都可以基于它去完成。


如上图输入一只猫,通过学到的模型来对其进行分类,如右图所示,显示分到不同类上的分数。





利用机器学习进行自然语言处理任务包括,语义分析,机器翻译,自动问答,情感分析,词性标注,句法分析等等。

对于语义分析,我们可以用树状结构图来表示,包括名词、动词、介词、代词等。



实际中采用端到端的机器学习方法来直接将文本映射到情感分类空间中。


在文本情感分类上,首先要把自然语言表示成机器能够识别的特征形式。然后把这种特征形式送到机器学习模型中得到想要的分类结果。


深度学习以前,各种特征都要手动的设计。特征设计的目标就是尽可能的保留原始数据中的所有信息。




再精巧的特征设计也无法完全表达出原始数据背后的高层语义信息。右边的两幅图和一首诗,对于计算机来时图像只是些像素,而对人来说看到这样的图片可能就会感受到节日的快乐并联想到一些其他场景,这些是机器无法表达的。


表示学习的一很重要的特点就是需要将底层特征映射到高层语义上去。


第一部分的概述结束了,敬请期待下一期的深度学习部分-基础模型。


特别提示-邱老师神经网络与深度学习slide-part1下载

请关注专知公众号(扫一扫最下面专知二维码,或者点击上方蓝色专知),

  • 后台回复“nndl1” 就可以获取pdf下载链接~~


欢迎转发到你的微信群和朋友圈,分享专业AI知识!


请查看更多,登录专知,获取更多AI知识资料,请PC登录www.zhuanzhi.ai或者点击阅读原文,注册登录,顶端搜索主题,查看获得对应主题专知荟萃全集知识等资料!如下图所示~


专知荟萃知识资料全集获取(关注本公众号-专知,获取下载链接),请查看:

【专知荟萃01】深度学习知识资料大全集(入门/进阶/论文/代码/数据/综述/领域专家等)(附pdf下载)

【专知荟萃02】自然语言处理NLP知识资料大全集(入门/进阶/论文/Toolkit/数据/综述/专家等)(附pdf下载)

【专知荟萃03】知识图谱KG知识资料全集(入门/进阶/论文/代码/数据/综述/专家等)(附pdf下载)

【专知荟萃04】自动问答QA知识资料全集(入门/进阶/论文/代码/数据/综述/专家等)(附pdf下载)

【专知荟萃05】聊天机器人Chatbot知识资料全集(入门/进阶/论文/软件/数据/专家等)(附pdf下载)

【专知荟萃06】计算机视觉CV知识资料大全集(入门/进阶/论文/课程/会议/专家等)(附pdf下载)

【专知荟萃07】自动文摘AS知识资料全集(入门/进阶/代码/数据/专家等)(附pdf下载)

【专知荟萃08】图像描述生成Image Caption知识资料全集(入门/进阶/论文/综述/视频/专家等)

【专知荟萃09】目标检测知识资料全集(入门/进阶/论文/综述/视频/代码等)

【专知荟萃10】推荐系统RS知识资料全集(入门/进阶/论文/综述/视频/代码等)

【专知荟萃11】GAN生成式对抗网络知识资料全集(理论/报告/教程/综述/代码等)

【专知荟萃12】信息检索 Information Retrieval 知识资料全集(入门/进阶/综述/代码/专家,附PDF下载)

【专知荟萃13】工业学术界用户画像 User Profile 实用知识资料全集(入门/进阶/竞赛/论文/PPT,附PDF下载)

【专知荟萃14】机器翻译 Machine Translation知识资料全集(入门/进阶/综述/视频/代码/专家,附PDF下载)

【专知荟萃15】图像检索Image Retrieval知识资料全集(入门/进阶/综述/视频/代码/专家,附PDF下载)



请扫描小助手,加入专知人工智能群,交流分享~


-END-

欢迎使用专知

专知,一个新的认知方式! 专注在人工智能领域为AI从业者提供专业可信的知识分发服务, 包括主题定制、主题链路、搜索发现等服务,帮你又好又快找到所需知识。


使用方法>>访问www.zhuanzhi.ai, 或点击文章下方“阅读原文”即可访问专知


中国科学院自动化研究所专知团队

@2017 专知

专 · 知

关注我们的公众号,获取最新关于专知以及人工智能的资讯、技术、算法、深度干货等内容。扫一扫下方关注我们的微信公众号。

点击“阅读原文”,使用专知


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存