#keras #autoencoder #loss #orthogonal
#keras #автоэнкодер #потеря #ортогональный
Вопрос:
Я реализовал автоэнкодер, который должен реализовывать нелинейную версию анализа основных компонентов. Ввод и вывод модели представляют собой один и тот же набор данных с n функциями, и меня интересует кодировка, размерность которой d<n. Чтобы обобщить анализ основных компонентов, я хотел бы иметь кодировку, состоящую из d почти линейно независимых векторов, но если я использую функцию потерь «mse», я получаю, например, для d = 2 два вектора, которые выглядят почти одинаково.
Теоретически я мог бы использовать функцию потерь, включающую штрафной термин для вектора, которые похожи и далеки от независимости. Но это означало бы иметь функцию потерь, которая использует информацию всего пакета, а не только один образец, и не из выходных данных, а из промежуточного уровня.
Поскольку я работаю с Keras: может кто-нибудь дать мне подсказку или ссылку, как я могу подойти к этой проблеме в Keras?
Комментарии:
1. Ты решила проблему, Энн?
2. Эта ссылка решила мою проблему.
3. Спасибо, но это не накладывает ортогональность на функции, а на веса.