【发布时间】:2019-12-13 14:24:23
【问题描述】:
在标准神经网络中,我试图直观地理解隐藏层的值在模型中的含义。
我了解计算步骤,但我仍然不知道如何考虑隐藏层以及如何解释(隐藏层的)结果
例如,给定用于训练和预测 0 到 9 之间的手写数字的标准 MNIST 数据集,模型将如下所示:
手写数字的图像将有 784 像素。
因为有784个像素,所以输入节点就有784个,每个节点的值就是像素强度(0-255)
每个节点都有分支,这些分支就是权重。
我的下一层是我的隐藏层,隐藏层中给定节点的值是我的输入节点的加权和(像素*权重)。
无论我得到什么值,我都会使用 sigmoid 函数将其压缩,得到一个介于 0 和 1 之间的值。
我从 sigmoid 得到的那个数字。它究竟代表了什么,为什么它是相关的?我的理解是,如果我想构建更多隐藏层,我将使用初始隐藏层的值,但在这一点上,我不知道第一个隐藏层的值究竟意味着什么。
谢谢!
【问题讨论】:
-
据我所知,如果你使用简单的神经网络节点,它没有具体的名称。如果您使用卷积神经网络,则称为“激活图”。用简单的外行术语,我们可以将其称为特征,因为从 784 开始,您可能已将其减少到 500 个节点(隐藏节点)并且仅提取了那么多特征。在训练期间,具有特定特征的节点会被激活(sigmoid 中的值较高),而另一个则不会。
-
它们也被称为隐藏,因为它们既不是输入也不是输出,就像函数的输入是已知的,输出最终也是,技术上它里面的所有东西都是一个黑盒子,只要您没有阅读它的来源,它是隐藏的。而在 NN 中,这是不等价的……输入节点触发……然后它进入隐藏层,该隐藏层不能直接被输入影响或访问。它包含在两个限制较少的方面,在命名事物时我们不是很有创意,因此是“隐藏的”。背后并没有什么特别的含义。它与 in data 的“输入”一词一样特殊。
标签: python tensorflow neural-network