Адам в Tensorflow: где происходят оценки моментов?

Если вы переходите по маршруту регулярных выражений, в примере tghw есть ошибка.

<!-- WON'T WORK -  item[0] is an index, not an item -->

var escaped = html; 
var findReplace = [[/&/g, "&amp;"], [/</g, "&lt;"], [/>/g,"&gt;"], [/"/g,
"&quot;"]]

for(var item in findReplace) {
     escaped = escaped.replace(item[0], item[1]);   
}


<!-- WORKS - findReplace[item[]] correctly references contents -->

var escaped = html;
var findReplace = [[/&/g, "&amp;"], [/</g, "&lt;"], [/>/g, "&gt;"], [/"/g, "&quot;"]]

for(var item in findReplace) {
     escaped = escaped.replace(findReplace[item[0]], findReplace[item[1]]);
}
0
задан Sherwin Chen 18 January 2019 в 13:12
поделиться

2 ответа

compute_gradients вычисляет только градиенты, все другие дополнительные операции, соответствующие конкретным алгоритмам оптимизации, выполняются в apply_gradients. Код в обновлении является одним доказательством, другим доказательством является следующий рисунок, вырезанный из тензорной доски, где Адам соответствует операции compute_gradient. enter image description here

0
ответ дан Sherwin Chen 18 January 2019 в 13:12
поделиться

Ниже приведен алгоритм Адама, представленный в книге глубокого обучения. Что касается вашего вопроса, здесь важно отметить градиент тэты (записанный как лапласиан тэты) от второго до последнего шага.

adam

Что касается того, как TensorFlow вычисляет, это двухэтапный процесс оптимизации (то есть минимизация )

В первом шаг все необходимые ингредиенты для окончательных градиентов вычисляются. Итак, второй шаг - просто применить обновление к параметрам на основе градиентов, вычисленных на первом шаге, и скорости обучения (lr).

0
ответ дан kmario23 18 January 2019 в 13:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: