这个问题可能看起来有点奇怪。我正在对信息论进行一些自学,并决定对深度学习进行一些更正式的调查。请耐心等待我尝试解释。我将 MNIST 的一个大型“训练”子集作为我的豚鼠。
1) 将 MNIST 中的每个图像都转换为“黑白”(像素值只有 0 或 1)
2)对所有数据图像求和以在像素上构建直方图 - 我计算了每个像素在数据集中获得 1 值的次数
3)归一化直方图以获得“真实”概率分布的估计
4)由此,我得到以下概率分布(显示为 matplotlib 的热图):
[
5)现在我计算了熵并得到: 位
6) 根据 David MacKay 在他的信息理论书中的说法,我们可以将神经网络解释为噪声通道,并将每个神经元视为具有 2 位容量。尽管他确实声明要谨慎使用这个想法。他的书第 40 章http://www.inference.org.uk/itila/book.html )
7) 因此,作为粗略估计(并且要小心),我们可以说我们需要一个由 95 个神经元组成的神经网络,以便能够对这个 MNIST 训练集 (190/2) 的标签进行编码 8) 现在我们可以得到我的问题:
即使这是一个非常“粗略”的计算,一个能够学习标签的神经网络不应该至少在 95 个神经元的范围内吗?例如,为什么我们需要一个具有 21840 个参数的神经网络才能获得 99% 的准确率?(考虑到 MNIST 的 PyTorch 示例中的那个:https ://github.com/pytorch/examples/blob/master/mnist/main.py )