机器学习与神经网络

机器学习与神经网络

1.Testandtrainingerror:为什么低训练误差并不总是一件好的事情呢:ESL图2.11.以模型复杂度为变量的测试及训练错误函数。

2.Underandoverfitting:低度拟合或者过度拟合的例子。PRML图1.4.多项式曲线有各种各样的命令M,以红色曲线表示,由绿色曲线适应数据集后生成。

3.Occam’srazor

ITILA图28.3.为什么贝叶斯推理可以具体化奥卡姆剃刀原理。这张图给了为什么复杂模型原来是小概率事件这个问题一个基本的直观的解释。水平轴代表了可能的数据集D空间。贝叶斯定理以他们预测的数据出现的程度成比例地反馈模型。这些预测被数据D上归一化概率分布量化。数据的概率给出了一种模型Hi,P(D

Hi)被称作支持Hi模型的证据。一个简单的模型H1仅可以做到一种有限预测,以P(D

H1)展示;一个更加强大的模型H2,举例来说,可以比模型H1拥有更加自由的参数,可以预测更多种类的数据集。这也表明,无论如何,H2在C1域中对数据集的预测做不到像H1那样强大。假设相等的先验概率被分配给这两种模型,之后数据集落在C1区域,不那么强大的模型H1将会是更加合适的模型。

4.Feature   1:确定神经元中心,常用的方式包括随机采样,聚类等;   2:确定神经网络参数,常用算法为BP算法。4.3ART网络ART(AdaptiveResonanceTheory)自适应谐振理论网络是竞争型学习的重要代表,该网络由比较层、识别层、识别层阈值和重置模块构成。ART比较好的缓解了竞争型学习中的“可塑性-稳定性窘境”(stability-plasticitydilemma),可塑性是指神经网络要有学习新知识的能力,而稳定性则指的是神经网络在学习新知识时要保持对旧知识的记忆。这就使得ART网络具有一个很重要的优点:可进行增量学习或在线学习。4.4SOM网络SOM(Self-OrganizingMap,自组织映射)网络是一种竞争学习型的无监督神经网络,它能将高维输入数据映射到低维空间(通常为二维),同事保持输入数据在高维空间的拓扑结构,即将高维空间中相似的样本点映射到网络输出层中的临近神经元。下图为SOM网络的结构示意图:4.5结构自适应网络我们前面提到过,一般的神经网络都是先指定好网络结构,训练的目的是利用训练样本来确定合适的连接权、阈值等参数。与此不同的是,结构自适应网络则将网络结构也当做学习的目标之一,并希望在训练过程中找到最符合数据特点的网络结构。4.6递归神经网络以及Elman网络与前馈神经网络不同,递归神经网络(RecurrentNeuralNetworks,简称RNN)允许网络中出现环形结构,从而可以让一些神经元的输出反馈回来作为输入信号,这样的结构与信息反馈过程,使得网络在tt时刻的输出状态不仅与tt时刻的输入有关,还与t?1时刻的网络状态有关,从而能处理与时间有关的动态变化。Elman网络是最常用的递归神经网络之一,其结构如下图所示:RNN一般的训练算法采用推广的BP算法。值得一提的是,RNN在(t+1)时刻网络的结果O(t+1)是该时刻输入和所有历史共同作用的结果,这样就达到了对时间序列建模的目的。因此,从某种意义上来讲,RNN被视为是时间深度上的深度学习也未尝不对。RNN在(t+1)时刻网络的结果O(t+1)是该时刻输入和所有历史共同作用的结果,这么讲其实也不是很准确,因为“梯度发散”同样也会发生在时间轴上,也就是说对于t时刻来说,它产生的梯度在时间轴上向历史传播几层之后就消失了,根本无法影响太遥远的过去。因此,“所有的历史”只是理想的情况。在实际中,这种影响也就只能维持若干个时间戳而已。换句话说,后面时间步的错误信号,往往并不能回到足够远的过去,像更早的时间步一样,去影响网络,这使它很难以学习远距离的影响。为了解决上述时间轴上的梯度发散,机器学习领域发展出了长短时记忆单元(Long-ShortTermMemory,简称LSTM),通过门的开关实现时间上的记忆功能,并防止梯度发散。其实除了学习历史信息,RNN和LSTM还可以被设计成为双向结构,即双向RNN、双向LSTM,同时利用历史和未来的信息。5、深度学习深度学习指的是深度神经网络模型,一般指网络层数在三层或者三层以上的神经网络结构。理论上而言,参数越多的模型复杂度越高,“容量”也就越大,也就意味着它能完成更复杂的学习任务。就像前面多层感知机带给我们的启示一样,神经网络的层数直接决定了它对现实的刻画能力。但是在一般情况下,复杂模型的训练效率低,易陷入过拟合,因此难以受到人们的青睐。具体来讲就是,随着神经网络层数的加深,优化函数越来越容易陷入局部最优解(即过拟合,在训练样本上有很好的拟合效果,但是在测试集上效果很差)。同时,不可忽略的一个问题是随着网络层数增加,“梯度消失”(或者说是梯度发散diverge)现象更加严重。我们经常使用sigmoid函数作为隐含层的功能神经元,对于幅度为1的信号,在BP反向传播梯度时,每传递一层,梯度衰减为原来的0.25。层数一多,梯度指数衰减后低层基本接收不到有效的训练信号。为了解决深层神经网络的训练问题,一种有效的手段是采取无监督逐层训练(unsupervisedlayer-wisetraining),其基本思想是每次训练一层隐节点,训练时将上一层隐节点的输出作为输入,而本层隐节点的输出作为下一层隐节点的输入,这被称之为“预训练”(pre-training);在预训练完成后,再对整个网络进行“微调”(fine-tunning)训练。比如Hinton在深度信念网络(DeepBeliefNetworks,简称DBN)中,每层都是一个RBM,即整个网络可以被视为是若干个RBM堆叠而成。在使用无监督训练时,首先训练第一层,这是关于训练样本的RBM模型,可按标准的RBM进行训练;然后,将第一层预训练号的隐节点视为第二层的输入节点,对第二层进行预训练;...各层预训练完成后,再利用BP算法对整个网络进行训练。事实上,“预训练+微调”的训练方式可被视为是将大量参数分组,对每组先找到局部看起来较好的设置,然后再基于这些局部较优的结果联合起来进行全局寻优。这样就在利用了模型大量参数所提供的自由度的同时,有效地节省了训练开销。另一种节省训练开销的做法是进行“权共享”(weightsharing),即让一组神经元使用相同的连接权,这个策略在卷积神经网络(ConvolutionalNeuralNetworks,简称CNN)中发挥了重要作用。下图为一个CNN网络示意图:CNN可以用BP算法进行训练,但是在训练中,无论是卷积层还是采样层,其每组神经元(即上图中的每一个“平面”)都是用相同的连接权,从而大幅减少了需要训练的参数数目。







































西宁最好的白癜风医院
北京白癜风去哪治的好



转载请注明:http://www.92nongye.com/xxnr/204612550.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了