我正在查看本教程中的交叉熵成本函数:
我们到底在总结什么?当然,它超过,但和不会随改变。所有的输入。 甚至在等式上方的段落中定义为所有和之和的函数。
此外,被定义为这个特定神经元的输入数量,对吗?它被表述为“训练数据项的总数”。
编辑:
我的想法是否正确
将是整个网络的成本函数,而
单个神经元的成本是多少?总和不应该超过每个输出神经元吗?
我正在查看本教程中的交叉熵成本函数:
我们到底在总结什么?当然,它超过,但和不会随改变。所有的输入。 甚至在等式上方的段落中定义为所有和之和的函数。
此外,被定义为这个特定神经元的输入数量,对吗?它被表述为“训练数据项的总数”。
我的想法是否正确
将是整个网络的成本函数,而
单个神经元的成本是多少?总和不应该超过每个输出神经元吗?
下面是我如何表达交叉熵损失:
这里,是训练数据集中的输入样本集,是这些输入示例的相应标签集。表示给定输入的神经网络的输出。
每个都是 0 或 1,并且输出激活通常通过使用逻辑 sigmoid限制在开区间 (0, 1) 内。例如,对于单层网络(相当于逻辑回归),激活将由,其中是权重矩阵,是偏置向量。对于多层,您可以将激活函数扩展为其中和是第一层的权重矩阵和偏置,
我使用 (i) 上标来表示示例,因为我发现它在 Andrew Ng 的机器学习课程中非常有效;有时人们将示例表示为矩阵中的列或行,但想法保持不变。
我们到底在总结什么?
该教程实际上非常明确:
...是训练数据项的总数,总和是所有训练输入的...
教程(Eqn. 57)中给出的原始单神经元成本函数在下标,应该暗示这一点。对于单个神经元的情况,除了训练示例外,没有什么可以求和的,因为我们在计算时已经对所有输入权重求和:
稍后在同一教程中,尼尔森给出了多层、多神经元网络的成本函数表达式(方程 63):
在这种情况下,总和会在训练示例 ( 's)中的单个神经元上运行。