[딥러닝 파이토치 교과서]를 기반으로 공부한 내용입니다. 전이 학습 : 이미지넷처럼 아주 큰 데이터셋을 써서 훈련된 모델(사전 훈련된 모델(네트워크))의 가중치를 가져와 우리가 해결하려는 과제에 맞게 보정해서 사용하는 것을 의미함 => 비교적 적은 수의 데이터를 가지고도 우리가 원하는 과제를 해결할 수 있음 특성 추출 기법 특성 추출은 ImageNet 데이터셋으로 사전 훈련된 모델을 가져온 후 마지막에 완전연결층 부분만 새로 만듦. 즉, 학습할 때는 마지막 완전연결층(이미지의 카테고리를 결정하는 부분)만 학습하고 나머지 계층들은 학습되지 않도록 함. -> 합성곱층과 데이터 분류기(완전연결층)으로 구성 합성곱층 : 합성곱층과 풀링층으로 구성 데이터 분류기(완전연결층) : 추출된 특성을 입력받아 최종적으로 ..
앞의 전처리 과정은 MNIST 데이터로 실습한 DNN 학습과정과 같음. 합성곱 네트워크 생성 class FashionCNN(nn.Module): def __init__(self): super(FashionCNN, self).__init__() self.layer1 = nn.Sequential( #1 nn.Conv2d(in_channels=1, out_channels=32, kernel_size=3, padding=1), #2 nn.BatchNorm2d(32), #3 nn.ReLU(), nn.MaxPool2d(kernel_size=2, stride=2) #4 ) self.layer2 = nn.Sequential( nn.Conv2d(in_channels=32, out_channels=64, kernel_si..
목차 1) CNN 기본 구성요소 2) Pytorch와 CNN 3) CNN 모델 구성 Convolutional Neural Network CNN 역시 변형된 backpropagation 알고리즘으로 학습 최소한의 전처리 만으로도 픽셀로부터 시각적 패턴을 인식 1) CNN 기본 구성요소 ** Stride stride는 필터를 얼마만큼 움직여주는가를 의미. 기본적으로 stride는 1이지만, 테스트에 따라서 stride를 1 이상의 값으로 설정할 수도 있음 **stride와 padding을 적용했을 때의 최종 -입력데이터 높이 : H -입력 데이터 너비 : W -필터 높이 : FH -필터 너비 : FW -Stride 크기 : S -패딩 사이즈 : P -output 너비 = (W + 2P - FW) / S +1..
Image Convolution 이미지는 1차원 형태의 데이터로 만들면, 공간적/지역적 정보가 손실되고, 별도의 추상화 과정 없이 바로 raw data로 연산 과정에 넣어지므로 학습 효율성이 저하됨. → CNN ** 이 자리에 이 kernel만큼의 component가 얼마나 들어있냐 ** padding = 이미지와 heat map의 사이즈가 같게 나오도록 값을 채워주는 것. → padding의 크기는 kernel의 크기가 결정, 이왕이면 양 옆 위아래로 대칭되게. 주어진 kernel의 모양이 이미지 안의 각각의 위치에서 얼마나 강하게 들어가 있는지를 구하는게 convolution
목차 1) 당뇨병 환자의 데이터 기반 실습 2) fashion mnist 데이터 실습 [딥러닝 파이토치 교과서]와 [인프런 '처음하는 딥러닝과 파이토치(Pytorch) 부트캠프[데이터과학 Part3]'] 를 바탕으로 공부한 내용을 정리한 글입니다. DNN pytorch 실습 pytorch 모델 용어 정리 계층(layer): 모듈 또는 모듈을 구성하는 한 개의 계층을 의미함 (예: 선형 계층, Linear Layer) 모듈(module): 한 개 이상의 계층이 모여 구성된 것. 모듈이 모여서 새로운 모듈 구성 가능 모델(model): 최종적인 네트워크. 한 개의 모듈이 모델이 될 수도 있고, 여러 개의 모듈이 하나의 모델이 될 수도 있음 torch.nn과 nn.Module torch.nn 네임스페이스는 신..
학부 '머신러닝과 데이터사이언스' 수업과, [딥러닝 파이토치 교과서]를 바탕으로 공부한 내용을 정리한 글입니다. Neural Network and Backpropagation forward : input → output (input 넣어 모델을 통해 output 도출해내는 과정) backward : output → input (구한 output을 가지고 gradient 등을 사용하여 가중피치 업데이트) threshold logic unit 여러 step function을 통해서 binary한 출력값을 갖도록함. + 퍼셉트론에서, sign 함수 써서 잘못된 샘플에 한해서 부호만 바꿔서 weight에 더해나가는 방식으로 cost를 줄여나갔음. 퍼셉트론의 이슈 1 → 가중치 업데이트 할 때 경사하강법을 도입하..