[AITech] 20220125 - 회고

less than 1 minute read


회고

오늘은 파이토치에서의 편리한 역전파를 가능하게 해주는 Autograd, Optimizer에 대한 내용과 편리한 데이터 로드를 가능하게 해주는 Dataset, DataLoader 클래스에 대한 내용을 학습하였습니다.

torch.nn.Module 단에서 intput, output, forward, backward에 대한 연산을 오버라이딩해서 커스터마이징할 수 있지만, 실제로 할 일은 거의 없고 메서드를 그대로 가져다 씁니다. 갱신이 필요한 파라미터들은 required_grad=True로 지정되어 있고 Tensor.backward() 로 미분을, optimizer.step()으로 파라미터 갱신을 수행합니다.

Dataset 클래스는 데이터의 입력 형태를 정의해주는 업무를 담당하며, 데이터의 형태에 따라 다른 정의가 필요합니다. 또한 init(), len(), get_item() 등의 메서드를 정의해주어야 합니다. DataLoader에서는 Dataset 클래스를 이용해 배치를 만들고, 데이터의 타입을 텐서로 변환해주는 업무를 주로 수행합니다. DataLoader에 있는 여러 파라미터들을 이용하여 이를 커스터마이징 할 수 있습니다.


Leave a comment