У меня есть рекуррентная нейронная сеть, реализованная в тензорном потоке.В рамках LSTM у меня есть следующая операция:
x_renamed = tf.identity(x, name='my_lstm_input')
, когда я печатаю узлы моего графика
graph = tf.get_default_graph()
[i for i in graph._names_in_use.keys() if 'my_lstm_input' in i]
Я всегда получаю версию 'Switch' в дополнение к обычному тензоруоперация:
'.../my_lstm_input'
'.../my_lstm_input/Switch'
Что делает эта операция переключения и откуда она берется?Будет ли разница между следующими тензорами?'... / my_lstm_input: 0' '... / my_lstm_input / Switch: 0'
Я использую чужую, сложную, закрытую кодовую базу, и, к сожалению, я не могу повторить это поведение снебольшой фрагмент кода.Я понимаю, что затрудняет ответ на вопрос.Я надеюсь, что это что-то довольно общее.