in utils.py [0:0]
def create_ctc_graph(target, blank_idx):
g_criterion = gtn.Graph(False)
L = len(target)
S = 2 * L + 1
for l in range(S):
idx = (l - 1) // 2
g_criterion.add_node(l == 0, l == S - 1 or l == S - 2)
label = target[idx] if l % 2 else blank_idx
g_criterion.add_arc(l, l, label)
if l > 0:
g_criterion.add_arc(l - 1, l, label)
if l % 2 and l > 1 and label != target[idx - 1]:
g_criterion.add_arc(l - 2, l, label)
g_criterion.arc_sort(False)
return g_criterion