深度学习与神经网络 | 邱锡鹏 | 第一章学习笔记
参考自下面这篇博客,笔者在此基础上写了写自己的理解,仅自己用来复习使用
【学习笔记】《深度学习与神经网络》——邱锡鹏_神经网络与深度学习 邱锡鹏-CSDN博客
一、绪论
人工智能的一个子领域
神经网络:一种以(人工))神经元为基本单元的模型
深度学习:一类机器学习问题,主要解决贡献度分配问题
知识结构:
路线图:
顶会:
1.1 人工智能
诞生:人工智能这个学科的诞生有着明确的标志性事件,就是1956年的达特茅斯(Dartmouth)会议。在这次会议上,“人工智能” 被提出并作为木研究领域的名称。
人工智能=计算机控制+智能行为;
人工智能就是要让机器的行为看起来就像是人所表现出的智能行为一样。 ——John McCarthy ( 1927-2011)
因为要使得计算机能通过图灵测试,计算机必须具备理解语言、学习、记忆、推理、决策等能力 =>
研究领域:
- 机器感知(计算机视觉、语音信息处理、模式识别)
- 学习(机器学习、强化学习)
- 语言(自然语言处理)
- 记忆(知识表示)
- 决策(规划、数据挖掘)
发展时间轴:
1.2 如何开发人工智能系统
很难实现一个程序把这些规则给写下来,比如语音的识别,数字的识别; => 机器学习:机器自己总结规则(函数)
怎么构建这个函数?就是机器学习要解决的事;
用一个根据芒果图片来判断芒果是否甜的模型举例机器学习步骤:
1.3 表示学习
当我们用机器学习来解决一些模式识别任务时,一般的流程包含以下几个步骤:
- 数据预处理:剔除原始数据中的冗余、缺失、异常等无效数据;
- 特征提取:提取有效特征;
- 特征转换:剔除冗余特征、考虑特征间的相关性、对特征进行组合等特征转换操作;
- 预测:建立 f(x) -> y 的模型;
语义鸿沟:人工智能挑战之一,即对文本、图像的理解无法从字符串或者图像的底层特征直接获取;
比如根据一些底层的像素点就能判断这个图像是不是猫啊狗啊,这是挺难的;
Q:什么是好的数据表示?
一个好的数据表示一般有以下优点:
- 具有很强的学习能力;
- 使后续的学习任务变得简单;
- 具有一般性,是任务或者领域独立的;
数据表示是机器学习的核心问题;
局部表示,1维表示一个语义;分布式表示,n维组合表示一个语义;
对于分布式表示:K维非零参数能够表示2^k个语义(假设一个维度分左右,即表示两个语义);而局部表示中,K维只能表示K个语义。
这个2^k的意思是:每一个维度表示两个语意,我就以大于0或者小于0为例,x>0,x<0,y>0,y<0,就是二维的那四个象限,就是2^2=4,有4个语意,当然我这里只是举例子拿大于0或者小于0,实际大于1小于1也行,只要实现老师说的2分就行。
以颜色为例:
分布式表示,3个维度能够表示完所有颜色,而如果用局部表示的话则每个颜色需要一个维度,1千种颜色就需要1千个颜色;说明分布式表示的表示能力很强,但解释能力劣于局部表示;分布式表示对于颜色间的对比、相似等操作也能提供很大的便利;
Q:照这么说,分布式表示岂不是可以表示无穷种颜色,还需要3个维度干嘛???
嵌入:
比如这个词嵌入:
表示学习:如何自动从数据中学习好的表示
传统的特征提取 VS 表示学习:
特征提取有明确的任务或目标,但完成这个任务或目标而提取的特征并不一定有益于后面的分析,而表示学习学习得是有用的特征,有益于右面的分析,但难点在于没有明确地目标,需要后面不断的反馈回来;
1.4 深度学习
深度学习 = 表示学习 + 决策(预测)学习;
Q:什么叫贡献度分配问题?
是底层特征、中层特征还是高层特征对预测的结果影响较大,即当预测了一个较差的结果,我需要知道这主要是因为底层到中层没处理好还是中层到高层没处理好;拿下象棋举例子,我这一下下在这,我怎么知道这是好还是坏,只能通过最后我赢没赢来反馈反推前面哪一步没下好,这就需要大量的练习经验;
Q:怎么解决贡献度分配问题?
神经网络;
一个图像分类的深度学习模型:
深度学习的数学描述:
我的理解是f(x)是一次预测的结果,g(f(x))就是用第一次预测的结果再次进行学习然后预测,之后就重复这个过程
如果F(x)是线性函数,那么这个就没意义了,因为多个线性函数嵌套依旧还是线性函数,没有能力的提升;
1.5 神经网络
Q:神经网络如何学习?
赫布法则(Hebb Rule):“当神经元A的一个轴突和神经元B很近,足以对它产生影响,并且持续地、重复地参与了对神经元B的兴奋,那么在这两个神经元或其中之一会发生某种生长过程或新陈代谢变化,以致于神经元A作为能使神经元B兴奋的细胞之一,它的效能加强了。”
- 人脑有两种记忆:长期记忆和短期记忆。短期记忆持续时间不超过一分钟。如果一个经验重复足够的次数,此经验就可储存在长期记忆中。
- 短期记忆转化为长期记忆的过程就称为凝固作用。
- 人脑中的海马区为大脑结构凝固作用的核心区域。
人工神经元:
人工神经网络主要由大量的神经元以及它们之间的有向连接构成。因此考虑三方面︰
- 神经元的激活规则:那个激活函数,到底是怎么激活的,神经元输入到输出之间的映射关系,一般为非线性函数;
- 网络的拓扑结构:不同神经元是怎么连接的;
- 学习算法:通过训练数据来学习神经网络的参数:梯度下降,反馈;
人工神经网络由神经元模型构成,这种由许多神经元组成的信息处理网络具有并行分布结构。
虽然这里将神经网络结构大体上分为三种类型,但是大多数网络都是复合型结构,即一个神经网络中包括多种网络结构
Q:神经网络如何解决贡献度分配问题?
一个点的斜率越大,说明此处 x 的变化对 y 的影响越大,偏导数的概念,那么就知道在哪个地方调参数能够很大程度上影响输出