일부 아키텍처에는 두 개 이상의 교육 작업이 필요합니다 (예 : GAN에서 생성기와 판별자를 훈련해야 함). TF-Slim 트레이닝 기능으로 어떻게 그 목표를 달성 할 수 있습니까? 내가 슬림을 볼 수있는 한 .learning.train은 단 한 번의 훈련 만받습니다.slim.learning.train (TensorFlow, TF-Slim)에 대한 두 번의 훈련 작업
2
A
답변
0
slim.learning.create_train_op에서 만든 교육용 작업을 합할 수 있습니다. train_op은 평가 될 때 매개 변수를 업데이트하고 손실을 반환하는 텐서입니다. 두 개의 연수를 추가하면 두 가지가 동시에 평가됩니다.
0
slim.learning.train()
을 실행할 때 본체 기능인 train_step_fn
을 덮어 쓸 수 있습니다.
, 당신은 train_op1
및 train_op2
는 train_ops = [train_op1, train_op2]
을 설정할 수 있다고 가정하고 다음과 같은 시도 할 수 있습니다 :
def train_step_fn(session, train_ops, global_step, train_step_kwargs):
session.run(train_ops[0], ...)
session.run(train_ops[1], ...)
...
slim.learning.train(train_step_fn=train_step_fn, ...)
을