#python #tensorflow #ctc
#python #тензорный поток #ctc
Вопрос:
Ввод Python:
sequence1 = [0, 1]
output1 = [[1, 0, 0],[0, 1, 0]]
loss = tf.compat.v1.nn.ctc_loss(
labels=tf.sparse.from_dense([sequence1]),
inputs=np.array([output1]).astype('float32'),
sequence_length=[2],
time_major = False
)
print(loss.numpy())
Вывод Python:
array([1.2408944], dtype=float32)
Ввод Mathematica:
CTCLossLayer[<|
"Input" -> {{1, 0, 0}, {0, 1, 0}},
"Target" -> {1, 2} (* Index starts from 1 and not 0 *)
|>]
Вывод Mathematica:
0.
Поскольку моя последовательность [0,1]
и это одна горячая кодировка (когда количество символов равно 2 1 (для CTC)), это [[1,0,0],[0,1,0]]
— не nn.ctc_loss
должно быть 0
? Как в Mathematica? Спасибо!