def image_custom():
생략
class model(nn.module):
def __init__(self):
-----생략 ----
a = model()
b = model()
iteration = 300
for epoch in range(iteration):
for input, label in dataloader:
a(input)
b(image_custom(input))
이렇게 하면 model이라는 신경망 클래스가 a, b로부터 학습되는거임?
아님 a따로 b따로 학습 되는거?
후자라면 어캐 전자처럼 만들 수 있음?
그냥 배치 사이즈를 두배로 늘리는거에 비해 동시에 학습시키는게 무슨 이점이 있음?
논문에서 그리하라 그래서 그러는거임 변수 하나는 다르게 학습 시키라고 해서 그럼
변수가 영어로 뭐임? parameter말하는건 아닌거같고
a = model() b = model() 이 부분 말이야
본문 코드에서는 a에 저장된 모델의 파라미터랑 b에 저장된 모델의 파라미터랑 따로 학습되는거지
그럼 어떻게 동시에 학습 시키는지 암? 이 문제 때매 미치겠어...
그냥 너 설명만 들었을 때는 코드 두개 짜서 따로따로 돌리면 되는건데
따로될걸
그럼 어캐 a와 b가 한 모델로 학습하게 할 수 있음?
optimizer 생성 시에 parameters 인자를 합쳐서 보내셈
예를 들어서 optim.Adam(parameters = list(a.parameters()) + list(b.parameters())) 이런식으로
lr을 따로 조절하지 못하는게 싫다 싶으면 그냥 optimzier 두개 만들어서 따로 동시에 학습하면됨