У меня есть режим глубокого обучения, который я работаю в JIT, преобразованном образом: < /p>
my_function_checked = checkify.checkify(model.apply)
model_jitted = jax.jit(my_function_checked)
err, pred = model_jitted({"params": params}, batch, training=training, rng=rng)
err.throw()
< /code>
Код компиляет нормально, но теперь я хочу отлаживать промежуточные значения после каждых нескольких шагов, сохранить массивы, а затем сравнить их с тензорами Pytorch. Для этого мне нужно многократно сохранить массивы. Самый простой способ сделать это - использовать встроенный отладчик IDE и оценить выражение Save после каждых нескольких шагов. Но JAX.JIT Transformed Code не позволяет внешним отладчикам. Но я могу сделать это после отключения JIT. Должен ли я ожидать каких -либо расхождений между двумя пробегами? Могу ли я предположить, что значения в JIT и не JIT-пробегах останутся такими же?
Подробнее здесь: https://stackoverflow.com/questions/795 ... ed-runtime
Разница в значениях переменных в невозможных времени выполнения JAX, а JIT преобразовано время выполнения выполнения ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение