Machine learning 密集softmax层中的输出数
我一直在学习Coursera课程进行额外练习,但遇到了一个我不理解的问题。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个节点的模型工作正常 谁能解释一下为什么会这样?我找不到任何在线例子来解释这一点。干杯 我明白了。失去分类交叉熵的稠密层的输出期望标签/目标
就我所研究的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 如果有人了解分类交叉熵的内部工作原理,请随意添加