Традиционно кажется, что RNN используют логики для прогнозирования следующего шага в последовательности. В моем случае мне нужен RNN для вывода векторного предсказания word2vec (50 глубин). Это означает, что функция стоимости основана на двух векторах: Y
фактический вектор следующего слова в серии и Y_hat
, предсказание сети.
Я пробовал использовать функцию стоимости cosine distance
, но сеть, похоже, не учится (я разрешил ей работать еще 10 часов на AWS P3, а стоимость всегда равна 0,7)
Возможно ли такая модель? Если да, то какую функцию затрат следует использовать?
Косинусное расстояние в TF:
cosine_distance = tf.losses.cosine_distance(tf.nn.l2_normalize(outputs, 2), tf.nn.l2_normalize(targets, 2), axis=2)
Update: Я пытаюсь предсказать слово2vec, поэтому во время выборки я мог бы выбрать следующее слово, основанное на ближайших соседях прогнозируемого вектора.