MLP神经网络 隐含层节点数的设置】如何设置神经网络隐藏层 的神经元个数

神经网络 隐含层节点数的设置】如何设置神经网络隐藏层 的神经元个数

置顶 2017年10月24日 14:25:07 开心果汁 阅读数:12968

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013421629/article/details/78329191

当训练集确定之后,输入层结点数和输出层结点数随之而确定,首先遇到的一个十分重要而又困难的问题是如何优化隐层结点数和隐层数。实验表明,如果隐层结点数过少,网络不能具有必要的学习能力和信息处理能力。反之,若过多,不仅会大大增加网络结构的复杂性(这一点对硬件实现的网络尤其重要),网络在学习过程中更易陷入局部极小点,而且会使网络的学习速度变得很慢。隐层结点数的选择问题一直受到神经网络研究工作者的高度重视。

方法1: 
fangfaGorman指出隐层结点数s与模式数N的关系是:s=log2N;

方法二: 
Kolmogorov定理表明,隐层结点数s=2n+1(n为输入层结点数);

方法三: 
s=sqrt(0.43mn+0.12nn+2.54m+0.77n+0.35)+0.51 
(m是输入层的个数,n是输出层的个数)。

原文地址:https://www.cnblogs.com/shuimuqingyang/p/10228287.html

时间: 2024-10-27 05:53:03

MLP神经网络 隐含层节点数的设置】如何设置神经网络隐藏层 的神经元个数的相关文章

点击按钮显示隐藏层 和 切换按钮同时显示多个隐藏层

按钮点击显示隐藏层(再次点击按钮则隐藏层关闭): HTML部分: <button type="button" id="show" onclick="showHidden()">点我显示隐藏层</button> <div id="hidden" style="display:none">我是隐藏层.</div> JS部分: <script type='te

二叉树(8)----求二叉树第K层的节点数和二叉树第K层的叶子节点数,递归方式

1.二叉树定义 typedef struct BTreeNodeElement_t_ { void *data; } BTreeNodeElement_t; typedef struct BTreeNode_t_ { BTreeNodeElement_t *m_pElemt; struct BTreeNode_t_ *m_pLeft; struct BTreeNode_t_ *m_pRight; } BTreeNode_t; 2.求二叉树第K层的节点数 (1)递归方式 给定根节点pRoot: 如

弹出div隐藏层

<style type="text/css">    .div1{position:absolute;display:none;}    .div2{position:absolute;display:none;}</style> <div id="div1" class="div1">                       隐藏层1     </div>     <div id=&qu

C++卷积神经网络实例:tiny_cnn代码具体解释(6)——average_pooling_layer层结构类分析

在之前的博文中我们着重分析了convolutional_layer类的代码结构.在这篇博文中分析相应的下採样层average_pooling_layer类: 一.下採样层的作用 下採样层的作用理论上来说由两个,主要是降维,其次是提高一点特征的鲁棒性.在LeNet-5模型中.每一个卷积层后面都跟着一个下採样层: 原因就是当图像在经过卷积层之后.因为每一个卷积层都有多个卷积模板,直接导致卷积结果输出的特征矩阵相对于输入的数据矩阵其维数要提高数倍.再加上存在若干卷积层(谷歌的某些模型甚至超过100层)

六:二叉树中第k层节点个数与二叉树叶子节点个数

二叉树中第k层节点个数 递归解法: (1)如果二叉树为空或者k<1返回0 (2)如果二叉树不为空并且k==1,返回1 (3)如果二叉树不为空且k>1,返回左子树中k-1层的节点个数与右子树k-1层节点个数之和 代码如下: int GetNodeNumKthLevel(BinaryTreeNode *pRoot, int k) { if(pRoot == NULL || k < 1) return 0; if(k == 1) return 1; int numLeft = GetNodeN

TF层的指导:建立一个卷积神经网络

官方文档: https://www.tensorflow.org/tutorials/layers: 1.概述 Tensorflow层模型提供了一个创建神经网络更加简单的高级API.提供了一些方法:这些方法促进了密度层(全连接层)和卷积层的创建,激活函数的添加,dropout正则化的应用.这篇教程中,将学习怎样使用layers建立卷积神经网络模型来识别MNIST数据集中的手写数字. MNIST数据集由60000个训练样本和10000个测试样本组成,28*28的黑白图像. 2.入门 Let's s

Cocos2dx 3.2 节点之间相互通信与设置触摸吞噬的方法

实际开发中,我们经常会遇到这样的情况.我们有一个层layer1,这个层包含一个menu层,menu1层里又包含了一个节点按钮button1.现在需要实现一个效果:点击button1弹出一个对话框,这个对话框里也包含一个menu2和一个按钮button2,点击button2能够关闭这个对话框.这个情况很普遍,在游戏ui中我们有大量的二级弹窗都需要用到这种效果(在这里我们不考虑直接在layer2里removefromparent,这样就不能达成学习目的了).我们可以用三种方法实现这个效果,分别是:

【数据结构】二叉树的实现(如:默认成员函数、(叶子)节点数、深度、四种遍历)

二叉树:树的每个节点最多有两个子节点. 我们看下它的结构,有二叉链表结构与三叉链表结构,具体结果如我摘自<C++Primer>中的图. 相比之下,三叉链表的优势在于当我们知道父亲节点要找他的子女节点比较方便和便捷,反之当我们知道子女节点找它的父亲节点时也方便. 下面,我实现下二叉链表的结构. template <class T> struct BinaryTreeNode {     BinaryTreeNode<T>* _left;    //左子树     Bina

C++卷积神经网络实例:tiny_cnn代码具体解释(7)——fully_connected_layer层结构类分析

之前的博文中已经将卷积层.下採样层进行了分析.在这篇博文中我们对最后一个顶层层结构fully_connected_layer类(全连接层)进行分析: 一.卷积神经网路中的全连接层 在卷积神经网络中全连接层位于网络模型的最后部分,负责对网络终于输出的特征进行分类预測,得出分类结果: LeNet-5模型中的全连接层分为全连接和高斯连接,该层的终于输出结果即为预測标签,比如这里我们须要对MNIST数据库中的数据进行分类预測,当中的数据一共同拥有10类(数字0~9),因此全全连接层的终于输出就是一个10