深度学习技术分析深度学习作者YannLeCun纽约大学,柯朗数学科学学院(CourantInstituteofMathematicalScience,NYU),Facebook人工智能研究我们需要复制大脑来开发智能机器吗?大脑是智能机器存在的依据-鸟和蝙蝠是重于空气飞行存在的依据大脑今天高速处理器我们能够通过复制大脑来开发人工智能系统吗?电脑离大脑运算能力只有1万次方差距吗?很有可能是100万次方:突触是复杂的。1百万次方是30年摩尔定律最好从生物学里获取灵感;但是如果没有了解基本原理,仅从生物学里生搬硬造,注定要失败。飞机是从飞鸟那里获取的灵感;他们使用了同样的飞行基本原理;但是,飞机并不振翅飞翔,也没有羽翼。让我们从自然里汲取灵感,但不需要依葫芦画瓢模仿自然是好的,但是我们也需要去了解自然。对于飞机而言,我们开发了空气动力学以及可压缩流体动力学,我们知道了羽毛和振翅不是关键。1957年:感知机(第一台学习机器)具有适应性“突触权重”的一个简单的模拟神经元,计算输入的加权总和,如果加权总和高于阈值,则输出+1,反之则输出-1。感知机学习算法通常的机器学习(监督学习)设计一台带有可调节旋钮的机器(与感知机里的权重类似);选取一个训练样本,经机器运行之后,测量误差;找出需要调整那个方向的旋钮以便降低误差;重复使用所有训练样本来进行操作,直到旋钮稳定下来。通常的机器学习(监督学习)设计一台带有可调节旋钮的机器;选取一个训练样本,经机器运行之后,测量误差;调节旋钮以便降低误差;不断重复直到旋钮稳定下来;机器学习=功能优化这就如同行走在雾气弥漫的高山之中,通过往最陡的下坡方向行走来抵达山谷中的村庄;但是每一个样本会给我们一个方向的噪声预估,因此,我们的路径是相当随机的。泛化能力:识别训练中没有察觉到的情况训练之后:用从未识别过的样本来测试机器;监督学习我们能够用诸如桌子、椅子、狗、猫及人等很多例子来训练机器;但是机器能够识别它从未看到过的桌子、椅子、狗、猫及人吗?大规模的机器学习:现实数以亿计的“旋钮”(或“权重”),数以千计的种类;数以百万计的样本;识别每一个样本可能需要进行数十亿的操作;但是这些操作只是一些简单的乘法和加法。模式识别的传统模式模式识别的传统模式(自50年代末开始),固定/设计特征(或固定矩阵)+可训练的分级器,感知机(康奈尔大学,1957年)深度学习=整台机器是可以训练的传统的模式识别:固定及手工制的特征萃取器;主流的现代化模式识别:无监督的中等级别特征;深度学习:表现形式是分等级的及训练有素的;深度学习=学习分等级的表现形式有超过一个阶段的非线性特征变换即为深度学习;在ImageNet上的特征可视化的卷积码净训练[来自蔡勒与宏泰2013(Zeiler&Fergus2013)]可训练的特征等级随着抽象等级的增加,表现形式等级的增加;每一个阶段是一种可训练特征的转换;图像识别:像素→边缘→纹理基元→主题→部分→对象字符→字→字组→从句→句子→故事言语例子→光谱段→声音→…→电话→音素→字浅度vs深度==查找表VS多步算法“浅与宽”vs“深与窄”==“更多的内存”与“更多的时间”,查找表vs算法;如果没有一个指数大级别的查找表,几乎很少有函数可以用两步计算完成;通过指数系数,可以通过超过两步运算来减少“存储量”。大脑如何解读图像?在视觉皮层的腹侧(识别)通路包含多个阶段;视网膜-LGN–V1–V2–V4–PIT–AIT….等等;多层的神经网络多层的神经网络简单单位的多层级;每个单位计算一次输入的加权总和;加权总和通过一个非线性函数;学习算法改变权重;典型的多层神经网路架构可以通过在网路中装配模块来发明复杂的学习机器;线性模块输出=W.输入+BReLU模块(经校正过的线性单元)输出i=0如果输入i0;输出i=输入,如果其他情况;成本模块:平方距离成本=||In1-In2||2目标函数L(Θ)=1/pΣkC(Xk,Yk,Θ)Θ=(W1,B1,W2,B2,W3,B3)通过装配模块来搭建网路所有主要深度学习框架使用模块(灵感源自SN/Lush,1991),火炬7(Torch7),Theano,TensorFlow….通过反向传递来计算斜率链式法则的实际应用推倒代数的斜率:●dC/dXi-1=dC/dXi.dXi/dXi-1●dC/dXi-1=dC/dXi.dFi(Xi-1,Wi)/dXi-1推倒权重斜率:●dC/dWi=dC/dXi.dXi/dWi●dC/dWi=dC/dXi.dFi(Xi-1,Wi)/dWi任何架构都可以工作?允许任何的连接图;无回路有向图循环的网络需要“在时间上展开”允许任何的模块只要对于相应的参数及其他非终端输入是连续的,并且在几乎所有位置都可以进行求倒。几乎所有的架构都提供自动求导功能;Theano,Torch7+autograd,…程序变成计算无回路有向图(DAGs)及自动求道多层网络的目标函数是非凸性的。1-1-1网络–Y=W1*W2*X目标函数:二次损失的恒等函数一个例子:X=1,Y=1L(W)=(1-W1*W2)^2卷积网络(简称ConvNet或CNN)卷积网络架构多卷积动画:安德烈.卡帕斯(AndrejKarpathy)网址:卷积性网络(制造年代:1990年)过滤器-tanh→汇总→过滤器-tanh→汇总→过滤器-tanh胡贝尔和威塞尔(Hubel&Wiesel)的视觉皮层结构模型简单单元格用于检测局部特征,复杂单元格用于“汇总”位于视皮层附近的简单单元格输出产物,[福岛(Fukushima)1982年][LeCun1989,1998年],[Riesenhuber1999年]等等总体架构:多步奏标准化→过滤器集→非线性→汇总标准化:白度变化(自由选择)减法:平均去除率,高通过滤器除法:局部标准化,标准方差过滤器库:维度扩大,映射到超完备基数非线性:稀疏化,饱和度,侧抑制机制等等改正(ReLU),有效分量的减少,tanh,汇总:空间或功能类别的集合1993年LeNet1演示多字符识别[马坦等(Matanetal),1992年]每一层是一个卷积ConvNet滑动窗口+加权有限状态机ConvNet滑动窗口+加权FSM支票读取器(贝尔实验室,1995年)图像转换器网络经训练后读取支票金额,用负对数似然损失来进行全面化训练。50%正确,49%拒绝,1%误差(在后面的过程中可以检测到)1996年开始在美国和欧洲的许多银行中使用,在2000年代初处理了美国约10%到20%的手写支票。人脸检测[威能(Vaillantetal.)等。93、94年]ConvNet被用于大图像处理,多尺寸热图,候选者非最大化抑制,对256×256图像SPARCstation需要6秒时间同步化人脸检测及姿态预估卷积网络行人检测场景解析及标注场景解析及标注:多尺度ConvNet架构每个输出可以看到大量的输入背景,对全方位标注的的图像进行训练监督方法1:在超像素区域进行多数表决对RGB及深度图像的场景解析及标注场景解析及标注无后期处理,一帧一帧,ConvNet在Virtex-6FPGA硬件上以每帧50毫秒运行,通过以太网上进行通信的功能限制了系统性能ConvNet用于远距离自适应机器人视觉(DARPALAGR项目2005-2008年)卷机网远距离视觉预处理(125毫秒),地平面估计,地平线对准,转换为YUV+局部对比标准化,测量标准化后图像“带”不变量金字塔卷积网络架构每3x12x25输入窗口100个特征;YUV图像带20-36像素高,36-500像素宽卷机网络视觉物体识别在2000年代中期,ConvNets在物体分类方面取得了相当好的成绩,数据集:“Caltech101”:101个类别,每个类别30个训练样本,但是结果比更“传统”的计算机视觉方法要稍微逊色一些,原因是:1.数据集太小了;2.电脑太慢了;然后,两件事情发生了。。。图像网络(ImageNet)数据集[Fei-Fei等,2012年]120万训练样本1000个类别快速及可编程通用目的GPUs每秒可进行1万亿操作极深度的ConvNet物体识别1亿到10亿个连接,1000万至10亿个参数,8至20个分层在GPU上进行极深度的ConvNets训练ImageNet前5大错误概率是15%;[Sermanet等2013年]13.8%VGGNet[Simonyan,Zisserman2014年]7.3%GoogLeNet[Szegedy等2014年]6.6%ResNet[Heet等2015年]5.7%极深度的ConvNet架构小矩阵,没有进行太多二次抽样过程(断片化二次抽样)矩阵:第一层(11×11)第一层:3×9矩阵,RGB-96的特征图,11×11矩阵,4步学习在行动第一层过滤器如何学习?深度学习=学习层次代表具有超过一个阶段的非线性特征变换即为深度,ImageNet上特征可视化卷积网络学习[蔡勒与宏泰2013年(Zeiler&Fergus)]ImageNet:分类给图像中的主要对象取名,前5误差率:如果误差不是在前5,则视为错误。红色:ConvNet,蓝色:不是ConvNetConvNets对象识别及定位分类+定位:多尺度滑动窗口在图像上应用convnet滑动窗口来进行多尺度的重要备;在图像上滑动convnet是很便宜的。对于每一个窗口,预测一个分类及边框参数。即使对象没有完全在视窗内,convnet可以预测它所认为的对象是什么。结果:在ImageNet1K训练前,微调的ImageNet检测DetectionExample:检测例子DetectionExample:检测例子DetectionExample:检测例子深度面孔[塞利格曼等(Taigmanetal.)CVPR,2014年]调准ConvNet矩阵学习Facebook上使用自动标注每天800万张照片矩阵学习与暹罗架构Contrative目标函数,相似的对象应产出相距较近输出产物,不相似对象应产出相距较远输出产物,通过学习和恒定的定位来减少维度,[乔普拉等,CVPR2005年][Hadsell等,CVPR2006年]人物识别与姿势预测图像说明:生成描述性句子C3D:3DConvNet视频分类分割与局部化对象(DeepMask)[Pinheiro,Collobert,DollarICCV2015年]ConvNet生成物件面部模型DeepMask++建议识别路线训练通过8×4开普勒(Kepler)GPUs与弹性平均随机梯度下降算法(EASGD)运行2.5天后[张,Choromanska,LeCun,NIPS2015年]::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::86结果监控下的ConvNets制图使用ConvNets产生图像监控下的ConvNets制图绘制椅子,在特征空间的椅子算法ConvNets语音识别语音识别与卷积网络(纽约大学/IBM)声学模型:7层ConvNet。5440万参数。把声音信号转化为3000个相互关连的次音位类别ReLU单位+脱离上一层级经过GPU4日训练语音识别与卷积网络(纽约大学/IBM)训练样本。40Mel频率倒谱系数视窗:每10微秒40帧语音识别与卷积网络(纽约大学/IBM)第一层卷积矩阵,9×9尺寸64矩阵语音识别与卷积网络(纽约大学/IBM)多语言识别,多尺度输入,大范围视窗ConvNets无处不在(或即将无处不在)ConvNet芯片目前NVIDIA,英特尔(Intel),Teradeep,Mobileye,高通(Qualcomm)及三星(Samsung)正在开发ConvNet芯片很多初创公司:Movidius,Nervana等在不久的将来,ConvNet将会驾驶汽车NVIDIA:基于ConvNet技术的驾驶员辅助系统驱动-PX2(Drive-PX2):驾驶员辅助系统的开源平台(=150MacbookPros)嵌入式超级计