Machine learning 人工神经网络神经元数和层数的估计
我正在寻找一种方法来计算每层的层数和神经元数。作为输入,我只有输入向量的大小、输出向量的大小和训练集的大小Machine learning 人工神经网络神经元数和层数的估计,machine-learning,neural-network,deep-learning,artificial-intelligence,Machine Learning,Neural Network,Deep Learning,Artificial Intelligence,我正在寻找一种方法来计算每层的层数和神经元数。作为输入,我只有输入向量的大小、输出向量的大小和训练集的大小 通常,通过尝试不同的网络拓扑并选择误差最小的网络拓扑来确定最佳网络。不幸的是,我不能那样做。这是一个非常困难的问题 网络的内部结构越多,网络就越能更好地表示复杂的解决方案。另一方面,过多的内部结构速度较慢,可能会导致训练出现分歧,或导致过度拟合,这将阻止您的网络很好地推广到新数据 人们传统上以几种不同的方式处理这个问题: 尝试不同的配置,看看什么最有效。您可以将培训集分为两部分——一部分用
通常,通过尝试不同的网络拓扑并选择误差最小的网络拓扑来确定最佳网络。不幸的是,我不能那样做。这是一个非常困难的问题 网络的内部结构越多,网络就越能更好地表示复杂的解决方案。另一方面,过多的内部结构速度较慢,可能会导致训练出现分歧,或导致过度拟合,这将阻止您的网络很好地推广到新数据 人们传统上以几种不同的方式处理这个问题:
经验法则的问题在于,它们并不总是考虑重要的信息、are等。因此,这些规则通常被用作“让我们尝试一堆东西,看看什么最有效”方法的粗略起点
- 劳伦斯,S.,贾尔斯,C.L.,和蔡,A.C.(1996)。技术报告UMACAC-TR 96-22和CS-TR—3617,马里兰大学高级计算机研究所,Park
- Elisseeff,A.和Paugam Moisy,H.(1997)。神经信息处理系统的进展9,麻省剑桥:麻省理工学院出版社,第162-168页
- 指定网络体系结构所需的大多数参数 一旦确定了数据模型(数量 输入向量中的特征,是否为所需的响应变量 是数字类还是分类类,如果是后者,有多少个唯一类 您选择的标签)
- 剩下的几个架构参数实际上是可调的, 几乎总是(在我的经验中,100%的时间)受到那些固定架构的高度限制 参数——即,这些参数的值由最大值和最小值紧密限定;及
- 最佳体系结构之前不必确定
训练开始了,事实上,神经网络代码开始训练是很常见的
包括一个小模块,以编程方式调整网络
训练期间的体系结构(通过移除权重值为
正在接近零(通常称为“修剪”)
隐藏层的数量 如果您的数据是线性可分离的(在开始编写NN时,您通常知道这一点),那么您根本不需要任何隐藏层(如果事实上是这样的话,我不会使用NN解决这个问题——选择一个更简单的线性分类器)。 第一个问题——隐藏层的数量——几乎总是一个。这一假设背后有很多经验性的分量——在实践中,很少有问题不能用一个隐藏层来解决,而可以通过添加另一个隐藏层来解决