深度学习笔记(1) 深度学习简介


1. 引言

在机器学习的历史上,一共出现了两种定义:

  • 1956 年,开发了西洋跳棋 AI 程序的 Arthur Samuel 在标志着人工智能学科诞生的达特茅斯会议上定义了 “机器学习” 这个词,定义为,“在没有明确设置的情况下,使计算机具有学习能力的研究领域”。

  • 1997 年,Tom Mitchell 提供了一个更现代的定义:“如果用 P 来测量程序在任务 T 中性能。若一个程序通过利用经验 E 在 T 任务中获得了性能改善,则就可以说关于任务 T 和 性能测量 P ,该程序对经验 E 进行了学习。”
    例如:玩跳棋
    E = 玩很多盘跳棋游戏的经验;
    T = 玩跳棋的任务;
    P = 程序将赢得下一场比赛的概率。

那么什么是深度学习?

深度学习是一种特殊的机器学习,用概念组成的网状层级结构来表示这个世界,每一个概念更简单的概念相连,抽象的概念通过没那么抽象的概念计算

深度学习的概念源于人工神经网络的研究,含多隐层的多层感知器就是一种深度学习结构
深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示

深度学习的概念由Hinton等人于2006年提出,基于深信度网(DBN)提出非监督贪心逐层训练算法,为解决深层结构相关的优化难题带来希望,随后提出多层自动编码器深层结构
此外,Lecun等人提出的卷积神经网络是第一个真正多层结构学习算法,它利用空间相对关系减少参数数目以提高训练性能

深度学习如今的全部价值皆通过监督式学习或经过标记的数据及算法实现

深度学习改变了传统互联网业务,例如网络搜索和广告
但是同时也使得许多新产品和企业以很多方式帮助人们
做的非常好的一个方面就是读取X光图像和人脸识别,生活中的个性化教育,精准化农业,甚至驾驶汽车以及其它一些方面


2. 神经网络

从一个房价预测的例子开始说起
假设有一个数据集,包含了六栋房子的信息
知道房屋的面积是多少平方英尺或者平方米,并且知道房屋价格
想要拟合一个根据房屋面积预测房价的函数,于是利用线性回归可能会得到这样一条直线
在这里插入图片描述
发现价格永远不会是负数,因此把直线弯曲一点,让它最终在零结束
有部分是零,而直线的部分拟合的很好

把房屋的面积作为神经网络的输入(x),通过一个单独的神经元\节点(小圆圈),最终输出了价格(y)
如果这是一个单神经元网络,不管规模大小,它正是通过把这些单个神经元叠加在一起来形成
如果把这些神经元想象成单独的乐高积木,通过搭积木来就可以完成一个更大的神经网络
比如:一些有关房屋的其它特征共同来预测价格,比如卧室的数量,邮政编码(交通便利程度),富裕程度等
在这里插入图片描述
实现之后,要做的只是输入特征x,就能得到输出y

  • 神经网络需要给予了足够多的训练样本有关的x和y的数据
  • 神经网络非常擅长计算从x到y的精准映射函数

3. 兴起

推动深度学习变得如此热门的主要因素:数据规模、计算量和算法的创新
事实上如今最可靠的方法来在神经网络上获得更好的性能
往往就是要么训练一个更大的神经网络,要么投入更多的数据,这只能在一定程度上起作用

利用传统机器学习算法训练神经网络, 性能就会变成下图红色曲线那样
训练一个小型的神经网络,那么这个性能可能会像下图黄色曲线表示那样
训练一个稍微大一点的神经网络,比如说一个中等规模的神经网络性能像下图蓝色曲线表示那样
训练一个非常大的神经网络,性能就会变成下图绿色曲线那样
在这里插入图片描述
在深度学习萌芽的初期,数据的规模以及计算量,局限在于训练一个特别大的神经网络的能力
无论是在CPU还是GPU上面,现在取得了巨大的进步
许多算法方面的创新,一直是在尝试着使得神经网络运行的更快

神经网络方面的一个巨大突破是从sigmoid函数转换到一个ReLU函数:

  • sigmoid 函数实现梯度下降
    梯度接近零的时候,参数会更新的很慢
  • ReLU 函数(修正线性单元)
    梯度对于所有输入的负值都是零,因此梯度更加不会趋向逐渐减少到零
    在这里插入图片描述

参考:
《神经网络和深度学习》视频课程


谢谢!

Logo

学大模型,用大模型上飞桨星河社区!每天8点V100G算力免费领!免费领取ERNIE 4.0 100w Token >>>

更多推荐