联结主义时间分类 (CTC) 空白标签

Kil*_*sen 5 machine-learning tensorflow ctc

我正在尝试在我的网络中使用 CTC 损失函数,但不太明白何时将“空白”标签作为标签提供。

我在Molchanov所描述的手势识别中使用它,但让我感到困惑的是还有一个“无手势”。

在 tensorflow 文档中,描述了

输入 Tensor 的最里面的维度大小 num_classes 表示 num_labels + 1 个类,其中 num_labels 是真实标签的数量,最大值(num_classes - 1)为空白标签保留。

如果我现在使用“空白”标签来表示没有手势,则由于错误,我的训练受到限制

在空标签后面看到一个非空标签(索引 >= num_classes - 1)

我假设空标签与空白标签相同。

问题是,当我想提供从没有手势(映射到空标签)然后有手势的数据时,我得到了这个错误。我可以通过在现有标签旁边添加另外两个标签来避免它,一个用于“无手势”,另一个用于“空白标签/空标签”。然后我只提供“无手势”标签,但从不提供“空白”标签,但这似乎不太正确。

所以我的问题是,我应该将“空白/空”标签用于什么?

我可以想象在语言处理中,您通常会使用句子结尾点作为“空”标签吗?但是没有结束手势,因为它是一个连续的流。

谢谢

Kil*_*sen 2

编辑\n我强烈建议阅读这篇精华文章。\n“\xcf\xb5(空白)标记不\xe2\x80\x99t 对应于任何内容,只是从输出中删除。” 它用于“中断”重复标记的合并。

\n\n

空白标签充当两个类之间的过渡状态。

\n\n

阅读更多

\n\n

为了回答我的问题本身,您不要将空白标签分配给任何内容,但仍将其作为现有类。\n就我而言,我添加了两个标签,一个用于无手势类,一个用于空白。

\n\n

(至少我就是这么做的,并得到了一些不错的结果)

\n