Для университетского проекта я хочу обучить (имитируемого) робота, чтобы ударить по мячу с учетом положения и скорости. Первое, что нужно попробовать - это градиенты политики: у меня есть параметрический генератор траекторий. Для каждой тренировочной позиции я кормирую позицию через свою сеть, отправляю траекторию на тренажер и получаю награду. Теперь я могу использовать это как потерю, образец градиента, его подачу и обновление весов моей сети, чтобы в следующий раз это улучшилось.Несимметричная потеря в Keras/TensorFlow
Таким образом, цель состоит в том, чтобы изучить отображение с позиции на весы траектории. При использовании всех звездных графических библиотек, таких как Theano и Tensorflow (или Keras), у меня есть проблема, что я не знаю, как на самом деле моделировать эту систему. Сначала я хочу иметь стандартные полностью подключенные слои, тогда выход - мои весы траектории. Но как я могу рассчитать потерю, чтобы использовать backprop?
В пользовательской функции потери я бы проигнорировал/не указал истинные метки, запустил симулятор и вернул потери, которые он дает. Но из того, что я прочитал, вам нужно вернуть функцию Theano/Tensorflow, которая является символической. Моя потеря довольно сложная, поэтому я не хочу переместить ее из симулятора в сеть. Как я могу это реализовать? Тогда проблема заключается в том, чтобы отличить эту потерю, поскольку мне может потребоваться выборка для получения этого градиента.
В TensorFlow вы можете подавать любой тензор. Это означает, что вы можете создать сеть с фиктивной потерей сверху, а затем использовать 'feed_dict', чтобы заменить фиктивную потерю с помощью вычисленных извне потерь/направления –