Сиамская нейронная сеть BiLSTM с манхэттенским расстоянием каждый раз дает очень разные оценки сходства для одних и тех же тестовых данных.

Я применяю сиамский двунаправленный LSTM (BiLSTM), используя последовательности на уровне символов и вложения для длинных текстов. Модель встраивания - Word2vec, длина последовательности - None для обработки переменной длины последовательности (180-550), размер пакета - 8, а модель обучена с использованием Keras с бэкэндом TF в течение 100 эпох. Манхэттенское расстояние - это метрика измерения подобия между левой и правой сетями.

def manhattan_distance(left, right):
    return K.exp(-K.sum(K.abs(left - right), axis=1, keepdims=True))

Теперь Assessment.py вызывает файл модели h5 и выводит результаты в файл csv. Проблема в том, что результаты сильно различаются между первым разом, когда я вызвал файл, и вторым разом для тех же тестовых данных! Как обобщить результаты? например, если я впервые получаю оценку сходства между 10.txt и 20.txt 90%, тогда я могу получить что-то около 90% за второй / третий / и т.д. раз?

PS: Прикрепленное фото показывает результаты первого раза в третьем столбце, а результаты второго раза - в четвертом столбце. Полученные результаты

0 ответов

Другие вопросы по тегам