Что такое температура в LSTM (и нейронных сетях в целом)?

Ответы:

28

Температура - это гиперпараметр LSTM (и нейронных сетей в целом), используемый для контроля случайности прогнозов путем масштабирования логитов перед применением softmax. Например, в реализации LSTM в TensorFlow для Magenta температура представляет, на сколько разделить логиты до вычисления softmax.

Когда температура равна 1, мы вычисляем softmax непосредственно по логитам (немасштабированный вывод более ранних слоев), и, используя температуру 0,6, модель вычисляет softmax по , что приводит к большему значению. Выполнение softmax для больших значений делает LSTM более уверенным (требуется меньше входных данных для активации выходного слоя), но также более консервативным в его выборках (менее вероятно, что выборка будет выполнена из маловероятных кандидатов). Использование более высокой температуры обеспечивает более мягкое распределение вероятностей по классам и делает RNN более «легко возбуждаемым» выборками, что приводит к большему разнообразию и большему количеству ошибок .LогяTs0.6

Нейронные сети генерируют вероятности классов с вектором логита где , выполняя функцию softmax для получения вектора вероятности , сравнивая с другими логитами.ZZзнак равно(Z1,...,ZN)Qзнак равно(Q1,...,QN)Zя

(1)Qязнак равноехр(Zя/T)ΣJехр(ZJ/T)

где - это температурный параметр, обычно равный 1.T

Функция softmax нормализует кандидатов на каждой итерации сети на основе их экспоненциальных значений, гарантируя, что выходные данные сети находятся между нулем и одним на каждом временном шаге.

Следовательно, температура повышает чувствительность к кандидатам с низкой вероятностью. В LSTM кандидатом или образцом может быть буква, слово или музыкальная нота, например:

Для высоких температур ( ) все [выборки] имеют почти одинаковую вероятность, и чем ниже температура, тем больше ожидаемых наград влияет на вероятность. Для низкой температуры ( ) вероятность [выборки] с наибольшим ожидаемым вознаграждением стремится к 1.ττ0+

- из статьи в Википедии о функции softmax

Ссылка

Хинтон, Джеффри, Ориол Виньялс и Джефф Дин. «Перегонка знаний в нейронной сети». Препринт arXiv arXiv: 1503.02531 (2015). Arxiv

Джастин Шенк
источник
3
Это намекает на распределение Больцмана (или распределение Гиббса) - распределение вероятностей, используемое в статистической механике.
mc2