Где код Tensorflow использует для реализации RMSProp - PullRequest
1 голос
/ 01 апреля 2020

Я клонировал Tensorflow из https://github.com/tensorflow/tensorflow.git и пытаюсь найти код, в котором реализован RMS_Prop.

Я нашел файл tensorflow/tensorflow/python/training/rmsprop.py, в котором есть вызовы training_ops.apply_centered_rms_prop и training_ops.apply_rms_prop, которые, похоже, являются методами, которые я ищу.

Я вижу, что rmsprop.py импортирует training ops с этим оператором импорта:

from tensorflow.python.training import training_ops

, но когда я смотрю на training_ops.py, я вижу только следующий код:

"" "Python оболочки для обучения. "" "

from __future__ import absolute_import
from __future__ import division
from __future__ import print_function

from tensorflow.python.training import gen_training_ops  # pylint: disable=unused-import
# go/tf-wildcard-import
# pylint: disable=wildcard-import
from tensorflow.python.training.gen_training_ops import *
# pylint: enable=wildcard-import

Я не вижу gen_training_ops в каталоге tensorflow/tensorflow/python/training и файл __init__ пуст.

Что я здесь не понимаю, и где я могу найти фактический код, который непосредственно реализует rmsprop?

1 Ответ

1 голос
/ 01 апреля 2020

Основной вычислительный код реализован на C ++; слой Python абстрагирует это. Интересующие вас файлы: ядро ​​процессора и ядро ​​графического процессора . Ядро для RMSProp запускается в строках 500 и 408 соответственно.

...