神经网络训练的一些建议(方差和偏差的问题:正则化)
demi 在 周五, 08/09/2019 - 15:39 提交
算法中的learning rate a(学习率)、iterations(梯度下降法循环的数量)、L(隐藏层数目)、n(隐藏层单元数目)、choice of activation function(激活函数的选择)都需要你来设置,这些数字实际上控制了最后的参数W和b的值,所以它们被称作超参数。
神经网络是一种受到生物神经系统启发而设计的计算模型,用于机器学习和人工智能领域。神经网络由大量的人工神经元(模拟生物神经元)组成,这些神经元通过连接权重相互连接,形成网络结构。神经网络的目标是通过学习和调整权重来模拟和解决复杂的问题。
算法中的learning rate a(学习率)、iterations(梯度下降法循环的数量)、L(隐藏层数目)、n(隐藏层单元数目)、choice of activation function(激活函数的选择)都需要你来设置,这些数字实际上控制了最后的参数W和b的值,所以它们被称作超参数。
在神经网络里面,会经常用到activation function,不管是CNN还是RNN亦或是其他带有神经元的网络,activation function都扮演着重要角色。刚接触神经网络的时候,脑子里总会浮现很多问题。为什么会有这么多activation function?为何这个函数就比另一个效果好?这么多函数,我们该使用哪一个?
由于人工神经网络的快速发展,它已经成为模式识别的强有力的工具。神经网络的运用展开了新的领域,解决其它模式识别不能解决的问题,其分类功能特别适合于模式识别与分类的应用。多层前向BP网络是目前应用最多的一种神经网络形式,它具备神经网络的普遍优点,但它也不是非常完美的, 为了更好的理解应用神经网络进行问题求解, 这里对它的优缺点展开一些讨论。
神经网络做分类等问题的核心原理是使用升维/降维、 放大/缩小、旋转、平移、弯曲这5大类操作完成扭曲变换,最终能在扭曲后的空间找到轻松找到一个超平面分割空间。
NNLM是从语言模型出发(即计算概率角度),构建神经网络针对目标函数对模型进行最优化,训练的起点是使用神经网络去搭建语言模型实现词的预测任务,并且在优化过程后模型的副产品就是词向量。
深度学习是使用现代硬件的人工神经网络的应用。它使开发,训练和使用比过去更大(更多层)的神经网络成为可能。研究人员提出了数千种类型的特定神经网络,它们往往是对现有模型的修改或调整。有时也会有全新的方法。作为一名从业者,我建议你等到模型出现后普遍适用后再使用。因为很难从每天或每周发布的大量出版物的中梳理出效果良好的那个。
1987年,美国学者Robert Hecht-Nielsen提出了对偶传播神经网络模型 (Counter Propagation Network,CPN),CPN最早是用来实现样本选择匹配系统的。CPN 网能存储二进制或模拟值的模式对,因此这种网络模型也可用于联想存储、模式分类、函数逼近、统计分析和数据压缩等用途。
人工神经网络有两个重要的超参数,用于控制网络的体系结构或拓扑:层数和每个隐藏层中的节点数。配置网络时,必须指定这些参数的值。
dropout是指在深度学习网络的训练过程中,对于神经网络单元,按照一定的概率将其暂时从网络中丢弃。注意是暂时,对于随机梯度下降来说,由于是随机丢弃,故而每一个mini-batch都在训练不同的网络。
这篇文章主要介绍了机器学习中最先进的算法之一——神经网络的八种不同架构,并从原理和适用范围进行了解读。机器学习和神经网络如此优秀,我们先来探讨两个问题——为什么需要机器学习?为何要使用神经网络?之后在来详细了解八种不同的网络架构。