Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Machine learning 密集softmax层中的输出数_Machine Learning_Text Classification_Multiclass Classification - Fatal编程技术网

Machine learning 密集softmax层中的输出数

Machine learning 密集softmax层中的输出数,machine-learning,text-classification,multiclass-classification,Machine Learning,Text Classification,Multiclass Classification,我一直在学习Coursera课程进行额外练习,但遇到了一个我不理解的问题。 就我所研究的ML神经网络问题而言,我一直被教导,多类分类问题的输出层将是稠密的,节点数等于类数。例如狗、猫、马-3类=3个节点 然而,在笔记本中,标签中有5个类,使用len(label\u tokenizer.word\u index)检查,但是使用5个节点,我得到了糟糕的结果,6个节点的模型工作正常 谁能解释一下为什么会这样?我找不到任何在线例子来解释这一点。干杯 我明白了。失去分类交叉熵的稠密层的输出期望标签/目标

我一直在学习Coursera课程进行额外练习,但遇到了一个我不理解的问题。

就我所研究的ML神经网络问题而言,我一直被教导,多类分类问题的输出层将是稠密的,节点数等于类数。例如狗、猫、马-3类=3个节点

然而,在笔记本中,标签中有5个类,使用
len(label\u tokenizer.word\u index)
检查,但是使用5个节点,我得到了糟糕的结果,6个节点的模型工作正常


谁能解释一下为什么会这样?我找不到任何在线例子来解释这一点。干杯

我明白了。失去分类交叉熵的稠密层的输出期望标签/目标从零开始。例如:

cat - 0
dog - 1
horse - 2
在这种情况下,密集节点的数量为3。
但是,在协作中,标签是使用keras标记器生成的,该标记器从1开始标记(因为填充通常为0)

这导致了一个奇怪的情况,如果我们有5个密集节点,我们有0-4的输出类,这与预测1-5的标签不匹配

我以经验证明了这一点,重新运行代码时,所有标签都减少了1,模型成功地训练了5个密集节点,因为现在标签是0-4

我怀疑使用标签1-5和6密集节点是可行的,因为模型只知道没有使用标签0,而是关注1-5


如果有人了解分类交叉熵的内部工作原理,请随意添加

我明白了。失去分类交叉熵的稠密层的输出期望标签/目标从零开始。例如:

cat - 0
dog - 1
horse - 2
在这种情况下,密集节点的数量为3。
但是,在协作中,标签是使用keras标记器生成的,该标记器从1开始标记(因为填充通常为0)

这导致了一个奇怪的情况,如果我们有5个密集节点,我们有0-4的输出类,这与预测1-5的标签不匹配

我以经验证明了这一点,重新运行代码时,所有标签都减少了1,模型成功地训练了5个密集节点,因为现在标签是0-4

我怀疑使用标签1-5和6密集节点是可行的,因为模型只知道没有使用标签0,而是关注1-5

如果有人了解分类交叉熵的内部工作原理,请随意添加