机器学习与深度学习课件.ppt
机器学习与深度学习目录p机器学习的基础p神经元网络p深层神经元网络p延伸和应用p深层学习实现架构p未来和思考a3+b=10a8+b=30a=?b=?线性回归及分类 机器学习背景Y是一个N维向量XT是一转置矩阵N*(p+1)是一个p+1的向量线性回归:,给定X,和Y,计算以最佳匹配X,Y的关系。Np+1。即为线性回归模型的参数。k表明对应的维度,Xk的重要性什么为最佳匹配?参数估计方法一:最小化误差平方和 机器学习背景 正则化 L2(Ridge)Regularization限制参数的大小,以避免过拟合 正则化 L1 Regularization(Lasso)限制参数的大小,以避免过拟合Noclosedformfor逻辑回归 jG逻辑回归 -参数训练jG训练目标函数:最大似然对数概率牛顿迭代:目录p机器学习的基础p神经元网络p深层神经元网络p延伸和应用p深层学习实现架构p未来和思考神经元网络 p单层前向网络p两阶段回归或分类pK-Class 分类p最底层为数据层p最上层为输出层p中间层为隐含层p这种简单的 NN称为Perceptron神经元网络 -输入层到隐含层p中间层为输入层线性组合的某函数p其中为激活函数:sigmoid神经元网络-激活函数p为激活(Activation)函数(红线)p0 线性函数神经元网络 ,隐含层到输出层 p输出层为中间层的线性组合p回归问题pK-Class 分类问题,softmax函数 训练神经元网络:参数集合及维度p神经元网络参数集合 训练神经元网络 优化参数求导 p 最小化目标函数:最小误差平方和及求导 训练神经元网络-Back Propagationp 梯度下降迭代算法输出层误差:ki隐含层误差:smiBP 算法 p初始化参数 p两阶段算法:Two-Passp前向 Forward-Pass:给定参数,计算输出值p后向 Backward-Pass:计算输出层误差,计算隐含层误差,更新参数 BP算法图示(1985)inputvectorhiddenlayersoutputsBack-propagateerrorsignaltogetderivativesforlearningCompareoutputswithcorrectanswertogeterrorsignal神经元网络小结目录p机器学习的基础p神经元网络p深层神经元网络p延伸和应用p深层学习实现架构p未来和思考BP算法在深层神经元网络中的问题依赖于标注的训练数据目前大量数据为非标注数据训练时间长,很难规模化多层神经元网络训练很慢会停驻在性能较差的本地优化点浅层网络,该问题不明显深层网络,问题显著支持向量基(SVM)一个特殊的神经元网络non-adaptivehand-codedfeaturesoutputunitse.g.classlabelsinputunitse.g.pixelsSketchofatypicalperceptronfromthe1960sBombToy深层信任网络(DeepBeliefNet,DBN)是部分解决了以上问题的神经元网络谁重新激活了神经元网络?Geoffrey Hinton 出生于:1947专业:学士,心理学,1970,博士,人工智能,1978多伦多大学教授Google 研究中心1986:神经元网络BP算法发明人之一深度学习主要贡献人I GET VERY EXCITED WHEN WE DISCOVER A WAY OF MAKING NEURAL NETWORKS BETTER AND WHEN THATS CLOSELY RELATED TO HOW THE BRAIN WORKS.谁重新激活了神经元网络?NCAP:神经计算和自适应感知项目2004 NCAP ResearchersYoshua BengioYann Lecun (FaceBook)Andrew Ng (Baidu)20 OthersCoreTeam深度学习的2006年,Geoffery Hinton Science发表DBN文章。2012年,Hinton,ImageNet,26%-15%。2012年,Andrew Ng和分布式系统顶级专家Jeff Dean,Google Brain项目,16000个CPU核的并行,10亿个神经元的深度神经网络2012年,微软首席研究官Rick Rashid在21世纪的计算大会上演示了一套自动同声传译系统2013年,Hinton-Google;Yann LeCun-Facebook;用户图片信息提取2013年,百度成立了百度研究院及下属的深度学习研究所(IDL),2014年,Andrew Ng-Badidu可信任网络 Belief Nets(BN)一个BN是一个由随机变量组成的有向非循环图一部分变量为可观察已知变量如何由已知变量推断出非观察变量的状态调整变量之间连接的参数优化:最大可能重新生成观察变量stochastichiddencausevisibleeffect可信任,信任什么?随机的二元单元(Bernoullivariables)隐含层的神经元的状态为0或1该神经元激活的概率为输入层加权和的sigmoid函数001Restricted Boltzmann Machines(RBM)限制神经元之间的链接以简化参数学习.只包含一个隐含层.多隐含层后期引入隐含层单元之间无链接.给定输入可观察矢量,隐含层单元之间独立隐含层和输入层之间为无向链接hiddenijvisibleRBM 训练训练ijijijijt=0t=1t=2t=infinity从可观察训练矢量开始,交替更新隐含层和可观察矢量层单元afantasy小结一个基础的DBN网络p 决定DBN的隐含层数以及隐含层的神经元数p 每两层之间依据RBM单独依次训练参数p 训练完的两层网络简单叠加起来成为深层网络p 利用BP算法对叠加后的网络连接参数进一步优化p RBM Pseudo 代码pFor t=0 to n:pVt -Ht 基于sigmoid函数 和Gibbs 采样pHt -Vt+1 基于sigmoid函数 和Gibbs 采样pVt+1 -Ht+1 基于sigmoid函数 和Gibbs 采样p更新参数W:pRBM Code 目录p机器学习的基础p神经元网络p深层神经元网络p延伸和应用p深层学习实现架构p未来和思考 深度学习目前常用的架构深度神经元全连网络 DNN(Deep Neural Nets),Tensor-DNN 卷积神经元网络 CNN(Convolutional Neural Nets)深度叠拼神经元网络 DSN(Deep Stacking Nets);Kernel-DSN,Tensor-DSN 循环神经元网络 RNNs(Recurrent and recursive Neural Nets)DNN在语音识别中的应用DNN在语音识别中的应用语音识别中的BottleNeck 特征图像识别中的神经元网络应用卷积神经元网络Convolution Neural Network(CNN)输入层可以使多元的,也可以是一元的图像识别中的神经元网络应用:卷积层p输入:维度的矩阵Xp输出:维度的矩阵p连接输入和输出的参数:维度的矩阵W图像识别中的神经元网络应用:Pooling 层p输入:region,矩阵p输出:Asinglevalue,p连接输入输出层参数:无p最大值poolingp均值pooling图像识别中的神经元网络应用:全连层p同DNN卷积神经元网络的架构ImageNet 2012年 竞赛ImageNet 2013年 竞赛目前图像中物体识别性能循环神经元网络 RNNRNN 同 DNN 的比较Back Propagation Through Time(BPTT)p三类参数p训练方式可等同于前向网络在时域的组合双向RNN 实现训练算法:u RBM 初始化每个时间点t的 网络u BPTT,BP算法的扩展优化参数训练神经元网络在自然语言处理中的应用语言模型信息分类信息聚类信息提取搜索翻译词向量语义表示一批关键的文章DNN 语言模型RNN 语言模型u没有必要定义上下文长度u没有投影层(NoWordEmbedding)u前一层的隐含链接下一个词的隐含层其他的深度学习架构:Deep Stacking Network(DSN)特点 u 线性和非线性层交替u 训练更容易并行u优化目标凸函数(convex)目录p机器学习的基础p神经元网络p深层神经元网络p延伸和应用p深层学习实现架构p未来和思考深度学习实现的物理架构挑战:u训练数据规模庞大u 计算开销大u训练过程收敛难u训练用时久解决方案:uGPU 计算资源并行uCPU 集群几万神经元,几千万参数工业界深度学习平台架构百度百度FacebookGoogle腾讯腾讯平台名称PaddleN/ADisbliefCotsMariana应用模型&数据CPU/GPUGPUGPUCPUGPUGPU&CPU硬件规模1.6W3台GPU服务器参数规模DownpourSGD和L-BFGS10亿主要应用人脸识别和提取语音识别图形语音识别,图像粗粒深度学习开源软件腾讯深度学习平台 MarianaDNN的GPU数据并行框架CNN的GPU数据并行和模型并行框架DNN CPU集群框架GPU服务器为主4-6NvidiaTeslaGPUCards(系列高端科学计算用)2000流处理器/GPUcard并行计算深度学习并行策略模型并行将训练数据划分为多份,每份数据有一个模型实例进行训练,再将多个模型实例产生的梯度合并后更新模型数据并行模型并行指将模型划分为多个分片,每个分片在一台服务器,全部分片协同对一份训练数据进行训练流式控制DNN GPU 的并行架构 DNN的数据并行框架通过同步随机梯度下降进行训练。每个GPU卡各自训练,并各自产生一份梯度值,然后进行参数交换。自适应学习率算法,使得支持自适应学习率所需交换的数据量降低了一个数量级。参数交换的成本CNN-GPU并行架构 -腾讯u模型拆分u数据拆分u流式控制GPU卡分组组内两个GPU卡做模型并行,组间做数据并行CNN-GPU并行架构 -腾讯u模型拆分u数据拆分u流式控制GPU卡分组组内两个GPU卡做模型并行,组间做数据并行DNN CPU并行架构目录p机器学习的基础p神经元网络p深层神经元网络p延伸和应用p深层学习实现架构p未来和思考IBM Synapse 自适应塑料可伸缩电子神经形态系统自适应塑料可伸缩电子神经形态系统IBM Synapse 自适应塑料可伸缩电子神经形态系统自适应塑料可伸缩电子神经形态系统2007Apr-ToddHyltonjoinsDARPAtofoundtheproject2008Apr-DARPApublishesasolicitationforapplicationsMay-DuedateforinitialproposalsOct-WinningcontractorsannouncedNov-Phase0start2009Sep-Phase1startNov-Announcementofcat-scalebrainsimulation20102011Aug-AnnouncementofneuromorphicchipimplementationSep-Phase2startDec-Announcementoffirstmemristorchip2012Feb-ToddHyltonleavesDARPA,GillPratttakesoverasprogrammanagerMay-NeuromorphicarchitecturedesignpublishedNov-TrueNorth/Compasssimulationof530billionneuronsannounced2013Feb-Expectedannouncementofmulti-coreneurosynapticchips(1millionneuronsperchip)Mar-Phase3tobegin(estimateddate)2014Oct-Phase4tobegin(estimateddate)20152016Programend猫脑机 2009 IBMCriticism of the cat brain simulation claim Brain WallSyNAPSE(SystemsofNeuromorphicAdaptivePlasticScalableElectronics)TheBrainWall:ANeuralNetworkVisualizationToolbyIBMSyNAPSEResearchers 数字神经元芯片,CMOS,Memristor Synapse 的合作者 Synapse 投入经费 102 Million DollarsWhy DBN为什么我们应该探索深度学习?Why DBN在多个领域中取得更好的准确率Why DBN跟其他机器学习的训练方法比需要人工投入少?Why DBN天然特征的层次结构Why DBN符合仿生学结构Why DBN并行计算能力支撑Why DBN大数据支撑 你还不累,我累了!