def get_label_indices()

in code/scripts/utils.py [0:0]


def get_label_indices(input_file):
    _, _, train_labels, train_intents = load_tsv(input_file)

    intent2idx = {}
    for intent in train_intents:
        if intent not in intent2idx:
            intent2idx[intent] = len(intent2idx)

    label2idx = {}
    for labels in train_labels:
        for l in labels:
            if l not in label2idx:
                label2idx[l] = len(label2idx)

    new_labels = []
    for label in label2idx.keys():
        if label.startswith('B'):
            cont_label = 'I' + label[1:]
            if cont_label not in label2idx:
                new_labels.append(cont_label)
    for label in new_labels:
        label2idx[label] = len(label2idx)
    if PAD not in label2idx:
        label2idx[PAD] = len(label2idx)
    return intent2idx, label2idx