Machine learning 卷积神经网络中如何动态求网络深度

Machine learning 卷积神经网络中如何动态求网络深度,machine-learning,neural-network,convolution,deep-learning,conv-neural-network,Machine Learning,Neural Network,Convolution,Deep Learning,Conv Neural Network,我一直在寻找一种自动方法,根据数据和计算机配置来决定我应该在网络上应用多少层。我在网上搜索,但什么也没找到。也许我的关键词或寻找方式是错误的 你知道吗?神经网络的层数或深度是其超参数之一 这意味着这是一个无法从数据中学习到的数量,但在尝试拟合数据集之前,您应该选择它。根据, 我们定义了一个超链接- 学习算法的参数a作为变量 在对数据实际应用A之前进行设置, 不是由学习算法直接选择的- 里思本身 找到超参数的最优值有三种主要方法。前两个问题在我链接的论文中得到了很好的解释 人工搜索。利用著名的黑

我一直在寻找一种自动方法,根据数据和计算机配置来决定我应该在网络上应用多少层。我在网上搜索,但什么也没找到。也许我的关键词或寻找方式是错误的


你知道吗?

神经网络的层数或深度是其超参数之一

这意味着这是一个无法从数据中学习到的数量,但在尝试拟合数据集之前,您应该选择它。根据,

我们定义了一个超链接- 学习算法的参数a作为变量 在对数据实际应用A之前进行设置, 不是由学习算法直接选择的- 里思本身

找到超参数的最优值有三种主要方法。前两个问题在我链接的论文中得到了很好的解释

  • 人工搜索。利用著名的黑魔法,研究人员通过尝试和错误选择最佳值
  • 自动搜索。研究人员依靠自动化程序来加快搜索速度
更具体地说,向深层神经网络添加更多层可能会提高性能(减少泛化误差),当其过度拟合训练数据时,可以达到一定数量


因此,在实践中,您应该使用(比如)4层来训练您的ConvNet,尝试添加一个隐藏层并再次训练,直到您看到一些过度拟合。当然,需要一些强大的正则化技术(例如辍学

我认为(目前)没有一个一刀切的解决方案。例如。比较卷积网络和。两者都处理相同的ImageNet数据集,但Krizhevsky的网络使用7层,而GoogLeNet使用22层(或更多,取决于您的计算方式)。这当然很好……不幸的是,找到有效的配置大约是问题的一半。另一半的大部分是计算出你的数据…并获得足够的数据。如果你想要一个经验法则,就拿你的问题来说,使用一个与你的问题最接近的已知网络设计。如果是小的黑白图像,试试MNIST网。小彩色图像,请尝试CIFAR。更大的彩色图像,尝试人们共享的众多imagenet网络之一。下一步是调整它以满足您的需要…输入/输出,学习率。调整过滤器的大小很棘手…小心!