


download = True : 로컬에서는 False로 해놓으면 매번 다운로드 받을 필요없이 처음 한번만 받고 해당 데이터를 사용할 수 있다.
squeeze(): [28,28,1]처럼 2차원 이상의 데이터를 사용할 때 1과 같은 숫자를 넣는데 pytorch에서는 [1,28,28]로 표현된다. 그런데 여기서 3차원 값이면 이미지로 표현 못하니 그림을 그리는데 필요없는 1을 제거하라는 명령
훈련 데이터와 테스트 데이터를 batch 단위로 불러오는 과정
nn.Conv2d(1, 32, 3, 1, padding='same'): 입력 1개, 출력 32개의 채널, 3x3의 커널 사이즈(필터), stride(몇 칸씩 이동하는지) =1, same: 테두리에 0을 채워서 이미지 사이즈가 줄어드는 것을 방지- self.fc1 = nn.Linear(3136, 1000): fully connected layer의 입출력의 개수를 정해줘야함.(입력, 출력)
28x28 사이즈가 풀링레이어를 통과하면 14x14가 되고 한번 더 통과하면 7x7이 된다. -> 7 x 7 x 64(채널숫자) = 3136
만약 입력개수 틀리게 작성하면 정답 알려주면서 오류 나옴.
model.train()은 학습을 하는것이 아니라 학습을 하겠다고 선언하는 것이다. 실제 학습은 for문에서 학습함.
cpu에서 돌리면 엄청 오래걸림
평가 모드
![]()