AI3 CNN으로 mnist 분류하기 CNN으로 mnist 분류하기 1. 모델 이해하기 1. 첫번째 표기 방법 합성곱 + 활성화 함수를 하나의 합성곱 층으로 보고, 맥스 풀링은 풀링 층으로 별도로 명명 2. 두번째 표기 방법 합성곱 + 활성화 함수 + 맥스 풀링을 하나의 합성곱 층으로 봄. 두번째 표기법을 사용하기로 함. # 1번 레이어 : 합성곱층(Convolutional layer) 합성곱(in_channel = 1, out_channel = 32, kernel_size=3, stride=1, padding=1) + 활성화 함수 ReLU 맥스풀링(kernel_size=2, stride=2)) # 2번 레이어 : 합성곱층(Convolutional layer) 합성곱(in_channel = 32, out_channel = 64, kernel.. 2021. 5. 2. CNN 합성공 신경망(Convolutional Neural Network) 합성곱 신경망은 크게 합성곱층(Convolution layer) 와 풀링층(Pooling layer)으로 구성됨. 합성곱 + ReLU -> 합성곱층, 풀링 연산 풀링층 1. 합성신경망의 대두 이미지의 공간적인 구조 정보를 보존하면서 학습할 수 있는 방법이 필요해졌고, 이를 위해 사용하는 것이 합성곱 신경망. 2. 채널(Channel) 이미지는 (높이, 너비, 채널) 이라는 3차원 텐서. (높이, 너비 깊이)로 표현하기도 함. 3. 합성곱 연산(Convolution operation) 합성곱층은 합성곱 연산을 통해서 이미지의 특징을 추출하는 역할을 함. N * M 필터 또는 커널이라 불리는 이미지를 흝으면서, 각각의 곱을 더하는 식으로 진.. 2021. 5. 2. ANN 01과적합을 막는 방법들 1. 데이터의 양 늘리기 데이터 증식 또는 증강을 사용하기도 함. 2. 모델의 복잡도 줄이기 class Architecture1(nn.Module): def __init__(self, input_size, hidden_size, num_classes): super(Architecture1, self).__init__() self.fc1 = nn.Linear(input_size, hidden_size) self.relu = nn.ReLU() self.fc2 = nn.Linear(hidden_size, num_classes) self.relu = nn.ReLU() self.fc3 = nn.Linear(hidden_size, num_classes) def forward(self, x).. 2021. 5. 2. 이전 1 다음