有人能解释一下人工神经网络吗?

根据维基百科(我知道这不是一个好的来源)人工神经网络由以下部分组成:

  • A个神经元的输入层

  • 由C个神经元组成的多个(B)隐藏层

  • “D”个神经元的输出层

我理解输入层和输出层的意思。

我的问题是如何确定最佳的层数和每层的神经元数量?

  • 增加“B”的优点/缺点是什么?
  • 增加“C”的优点/缺点是什么?
  • 增加“B”和增加“C”有什么区别?

这是不是只是时间问题(处理能力的限制),还是让网络更深会限制结果的质量?我应该更注重深度(更多层)还是广度(每层更多神经元)?


回答:

回答1. 一层可以解决大多数问题,或者最多使用两层。

回答2. 如果使用的神经元数量不足,网络将无法模拟复杂数据,结果拟合将很差。如果使用的神经元过多,训练时间可能会变得过长,更糟糕的是,网络可能会过度拟合数据。当发生过度拟合时,网络将开始模拟数据中的随机噪声。结果是模型对训练数据非常适合,但对新的、未见过的数据的泛化效果很差。必须使用验证来测试这种情况。

什么是过度拟合?

在统计学中,过度拟合是指统计模型描述了随机误差或噪声而不是潜在关系。过度拟合通常发生在模型过度复杂的情况下,例如相对于观测数量而言参数过多。过度拟合的模型通常具有较差的预测性能,因为它会夸大数据中的微小波动。过度拟合的概念在机器学习中很重要。通常,学习算法使用一些训练示例进行训练,即已知所需输出的示例情况。假设学习者能够达到一种状态,它也能够为其他示例预测正确的输出,从而推广到训练期间未展示的情况(基于其归纳偏见)。然而,特别是在学习时间过长或训练示例稀少的情况下,学习者可能会适应训练数据的非常具体的随机特征,这些特征与目标函数没有因果关系。在这个过度拟合的过程中,对训练示例的性能仍然在增加,而对未见数据的性能却变得更差。

回答3. 阅读回答1和2。

维基百科上关于监督学习的文章(http://en.wikipedia.org/wiki/Supervised_learning)将为您提供更多关于任何监督学习系统(包括神经网络)中真正重要的因素的见解。文章讨论了输入空间的维度、训练数据量、噪声等问题。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注