学习笔记----周志华《机器学习》第五章(神经网络)(二)

    周志华《机器学习》第五章(神经网络)的学习笔记上篇连接在这里:《上篇》。上篇讲到了神经网络、常用的激活函数、感知机和多层前馈神经网络、局部极小和全局最小,今天继续补上昨天落下得部分,也是就是我们的其他神经网络(RBF、ART、SOM等网络)、递归神经网络(如Boltzmann机、Elman网络)的部分。

 

一、其他神经网络

     本小节讲到的其他神经网络为RBF网络、ART网络、SOM网络。 在正式介绍这三种网络时,首先引入竞争型学习概念,竞争型学习讲究的原则为”胜者通吃、肉弱强食“。每一个时刻只有一个”胜出者“,这个”胜出者“的神经元被激活,其他的被抑制。竞争型学习是一种常用的无监督学学习策略

  (1) RBF网络(Radial Basis Function,又称为径向基函数网络),它是一种单隐层前馈神经网络。它使用径向基函数(文末有解释)作为隐层神经元激活函数,输出层是对隐层神经元输出的线性组合。通常的训练RBF网络的步骤: 第一步,确定神经元中心位置,可采取的方法有随机采样和聚类;第二步,利用BP算法确定参数(权重和阈值)。

  (2)ART网络(Adaptive Resonance Theory)全名叫做自适应谐振理论网络。(一种竞争型学习)

  (3)SOM网络(Self-Organizing Map)叫做自组织映射网路,它也是一种竞争学习型无监督神经网络。

    注意,一般的神经网络,它的网络结构是实现固定的,它优化的是权重、阈值等参数。而结构自适应网络可以将网络结构列为了学习的目标之一,它能找着最符合数据结构特点的网络结构。

  (4)级联相关网络就是一种结构自适应网络。包含“级联”和“相关”,“级联”是建立层次连接的层级结构。相关知识通过最大化新神经元的输出与网络误差之间的相关性来训练相关的参数。级联相关网络不用设置网络层数、隐层神经元数目,训练速度较快,但是当数据较小容易陷入过拟合。
    

二、递归神经网络(RNN)

     递归神经网络我相信任何一个学习神经网络的都知道。递归神经网络和前馈神经网络很大的一个差异点就是。RNN允许出现环形结构,即输出可以返回来做输入,继续参与到下面的算法中 。常见的递归神经网络如下,

  (1)Elman网络:一种常见的递归神经网络,网络结构和多层前馈网络结构类似,只不过隐层神经元的输出返回来了作为下一时刻的输入。而且这个隐层神经元采用的是Sigmoid函数(不知道什么是Sigmoid函数,就点介里),网络的训练通常采用的是推广的BP算法。图1、图2分别是Elman网络结构和多层前馈网络结构。

Elman网络结构
图1 Elman网络结构

 

图2 多层前馈网络结构

(2)Boltzmann机:一种基于能量的模型,也是一种递归神经网络。什么是基于能量的模型呢?我们都知道在神经网络中有一种模型的状态是用“能量”来定义的,所以能量最小化就是基于能量的模型的理想状态,这个神经网络也是在训练,为了最小化我们的能量。

     理论上的Boltzmann机是一个全连接图,这个网络结构的复杂度很高,所以现实生活中我们常常采用受限的Boltzmann机(RBM)进行实操。受限的Boltzmann机受限在哪里呢?RBM只显示显层和隐层,所以这就极大的简化了原先的结构。除此之外RBM采用CD(Contrastive Divergence,对比散度)算法训练。

 

三、相关定义解释

   1、什么是径向基函数?

        径向基函数是关于空间中点的函数,且函数值只和距离原点的距离有关(一般使用欧式距离)。

        径向基函数的表达式为:ϕ(x)=ϕ(||x||) 。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 什么是泛化能力?泛化能力和过拟合之间有什么关系? 泛化能力是指模型在新的、未见过的数据上的表现能力。模型的泛化能力与其对训练数据的拟合程度有关,通常来说,过拟合的模型泛化能力较差。 2. 什么是交叉验证?交叉验证的作用是什么? 交叉验证是一种通过将数据集分成若干个子集来进行模型评估的方法。具体地,将数据集分成k个子集,每个子集都轮流作为测试集,其余子集作为训练集,重复k次,最终得到k个模型的评估结果的平均值。交叉验证的作用是提高模型评估的可靠性和泛化能力。 3. 留出法、k折交叉验证和留一法的区别是什么?它们各自适用于什么情况? 留出法是将数据集分成两部分,一部分作为训练集,另一部分作为测试集。留出法适用于数据集较大的情况。 k折交叉验证是将数据集分成k个子集,每个子集都轮流作为测试集,其余子集作为训练集,重复k次,最终得到k个模型的评估结果的平均值。k折交叉验证适用于数据集较小的情况。 留一法是k折交叉验证的一种特殊情况,即将数据集分成n个子集,每个子集都作为测试集,其余子集作为训练集,重复n次。留一法适用于数据集较小且样本数较少的情况。 4. 为什么要对数据进行预处理?数据预处理的方法有哪些? 数据预处理可以提高模型的表现,并且可以减少过拟合的风险。数据预处理的方法包括:标准化、归一化、缺失值填充、特征选择、特征降维等。 5. 什么是特征选择?特征选择的方法有哪些? 特征选择是指从所有特征中选择出对模型预测结果有重要贡献的特征。特征选择的方法包括:过滤式方法、包裹式方法和嵌入式方法。其中,过滤式方法是基于特征间的关系进行特征选择,包裹式方法是基于模型的性能进行特征选择,嵌入式方法是将特征选择嵌入到模型训练中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值