Data-science (128) 썸네일형 리스트형 [pytorch] stylegan1 freezeD 이해 및 코드 분석 stylegan2에 freezeD를 적용하길 원한다. 이에 앞서 stylegan1에 쓰인 freezeD 코드를 이해하고 분석해본다. 왜냐하면 pytorch 구현은 stylegan 1에 대한 freezeD만 있기 때문이다. freezeD는 custom한 데이터셋? 혹은 다른 도메인의 데이터셋으로 학습할 때 Discriminator의 특정 layer를 freezing 시키는 방법이다. 이게 효과적인 이유는 gan에서 FFHQ를 통해 학습한 Discriminator는 훌륭한 진짜/가짜 판별자이고, 이를 transfer learning으로 그대로 이용할 수 있기 때문이다. 이 판별자의 처음 몇 layer를 고정시키고 후 단의 layer만을 학습시키는 방식이다. 이는 기존의 전체 layer를 미세 조정하는 fin.. [pytorch] stylegan2 freezeD 적용 stylegan2에 freezeD를 적용하길 원한다. study-grow.tistory.com/entry/pytorch-stylegan1-freezeD-%EC%BD%94%EB%93%9C-%EB%B6%84%EC%84%9D [pytorch] stylegan1 freezeD 이해 및 코드 분석 stylegan2에 freezeD를 적용하길 원한다. 이에 앞서 stylegan1에 쓰인 freezeD 코드를 이해하고 분석해본다. 왜냐하면 pytorch 구현은 stylegan 1에 대한 freezeD만 있기 때문이다. freezeD는 custom한 데이터셋.. study-grow.tistory.com 그에 앞서 1에 쓰인 freezeD를 분석했고, 이제 2에 적용할 차례다. 끝 단의 5, 6 그리고 final lay.. [pytorch] requires grad 확인. named_parameters()루프를 돌면서. parameter의 requires_grad 변수를 확인해보면 된다. True일 경우 해당 가중치는 학습한다. False일 경우 frozen, 얼려져있다. 학습하지 않는다. [pytorch] stylegan1 Vs stylegan2 Discriminator 차이 stylegan1 Discriminator 뜯어보기 progression.0.conv1.0.conv.bias progression.0.conv1.0.conv.weight_orig progression.0.conv2.1.weight progression.0.conv2.1.bias progression.1.conv1.0.conv.bias progression.1.conv1.0.conv.weight_orig progression.1.conv2.1.weight progression.1.conv2.1.bias progression.2.conv1.0.conv.bias progression.2.conv1.0.conv.weight_orig progression.2.conv2.1.weight progression.2.c.. FusedLeakyRelu? import os import torch from torch import nn from torch.nn import functional as F from torch.autograd import Function from torch.utils.cpp_extension import load module_path = os.path.dirname(__file__) fused = load( "fused", sources=[ os.path.join(module_path, "fused_bias_act.cpp"), os.path.join(module_path, "fused_bias_act_kernel.cu"), ], ) class FusedLeakyReLUFunctionBackward(Function): @staticm.. [pytorch] nn.module의 zero_grad VS optimizer의 zero_grad의 차이 tutorials.pytorch.kr/beginner/pytorch_with_examples.html 예제로 배우는 파이토치(PyTorch) — PyTorch Tutorials 1.6.0 documentation 예제로 배우는 파이토치(PyTorch) Author: Justin Johnson번역: 박정환 이 튜토리얼에서는 PyTorch 의 핵심적인 개념을 예제를 통해 소개합니다. 본질적으로, PyTorch에는 2가지 주요한 특징이 있습니다: NumPy tutorials.pytorch.kr optimizer 객체에서 zero_grad()를 call하는 것. 이건 역전파를 하기 전에, 모든 변화도를 0으로 만들어준 거다. 그런데 nn.module 과 같이 모델 객체에도 zero_grad()를 똑같이 call.. pytorch에서 특정 layer freeze 하기 (학습하지 않기) freezing for param in model.parameters(): param.requires_grad = False --> 이 방법은 pretrained model을 로드할 때는 쓰기 어렵다. 초기에 frozen되지 않은 layer에 대해서만 작동함. 정확하게 이게 무슨 말일까??? --> 여튼 위 방법은 pretrained에서 특정 layer를 얼리고 학습하거나 하면 어려울 수 있으니, 아래 방법을 소개한다. The basic idea is that all models have a function model.children() which returns it’s layers. Within each layer, there are parameters (or weights), which can be obtained .. MBTI 성격유형별 관상 stylegan2 morphing image Trainer를 뜯어보기 전까지는 Gs가 GeneratorSynthesis의 약자인 줄 알았다... 학습중인 Generator들의 moving average라고 표현하는 게 맞다. Gs가 명시되지 않으면, 가중치들의 moving average로 만들어진다고 한다. 1024 x 1024 pretrained model이라 입력도 같은 size로 처리해야 함. 위 이미지를 뽑는데 시간이 5분 가량 소요. 256 x 256 pretrained 모델을 찾고 해당 model에서 위를 진행해봐야 함 256 x 256 pretrained 모델 발견, 사용할 수 있게 변경 완료. 256 이미지로 변경후, 3분 가량 소요. label (MBTI 정보) 주입 후, 해당 label 이미지 끼리 합성후 저장하는 projecti.. 이전 1 ··· 6 7 8 9 10 11 12 ··· 16 다음