При этом line обратите внимание, что потери находятся в разных областях (tf.name_scope ('% s_% d'% (cifar10.TOWER_NAME, i))); поэтому, если я правильно понимаю, это не значит, что используется только потеря для последнего графического процессора; вместо этого используются все потери при соответствующей области именования для каждого графического процессора.
Каждая башня (соответствующая каждому графическому процессору) будет иметь потерю, которая используется для вычисления градиента. Потери не усредняются; вместо этого все градиенты для всех башен усредняются по линии 196.
Обратите внимание, что на этом рисунке из учебника отсутствует агрегация для всех индивидуальных потерь, это усредненные градиенты.
Но 'loss' переменная питон, указывая потери от определенного пространства имен (а именно i-й GPU)? –
В соответствии с кодом потери не являются переменной python, а тензором, возвращаемым функцией tower_loss (scope). –
Но разве это не соответствует только одной башне, а не средней потери, рассчитанной по всем башням? –