Study25 [밑시딥1] Chapter 8. 딥러닝 더 깊은 신경망으로(손글씨 숫자를 인식하는 심층 CNN)합성곱 계층 모두 3x3 크기의 작은 필터, 활성화 함수는 ReLU층이 깊어지면서 채널 수가 더 늘어남(16,16,32,32,64,64)풀링 계층을 추가하여 중간 데이터의 공간 크기를 점차 줄여감마지막 단의 완젼연결 계층에서는 Dropout 계층 활용가중치 초깃값은 He 초깃값 사용, Adam을 사용해 가중치 매개변수를 최적화 정확도를 더 높이려면 -> 앙상블 학습, 학습률 감소, 데이터 확장 등 데이터 확장손쉬운 방법이면서도 정확도 개선에 아주 효과적이미지를 일부 잘라냄 (crop)좌우를 뒤집 (flip)회전에 의한 변형(rotate)이동에 의한 변형(translation)크기수정(rescale)밝기변화(lighting condition) 등 층.. 2024. 1. 18. [모두를 위한 딥러닝 시즌2] lab 10-2. MNIST CNN 사람의 손글씨 데이터인 MNIST을 이용해 CNN 구현하기 2024. 1. 15. [밑시딥1] Chapter 7. 합성곱 신경망(CNN) fully-connected 계층(Affine 계층)으로 이뤄진 네트워크Affine 계층 뒤에 활성화 함수(ReLU, Softmax)문제점데이터의 형상이 무시ex) 3차원 -> 1차원 데이터로 평탄화해서 입력해줘야 함CNN으로 이뤄진 네트워크'합성곱 계층(Conv)' 과 '풀링 계층(Pooling)' 이 추가Conv - ReLU -(Pooling) 흐름 출력에 가까운 층에서는 지금까지의 'Affine-ReLU' 구성 사용 가능(Input 데이터 Flatten 필수)마지막 출력 계층에서는 'Affine-Softmax' 조합 그대로 사용(Input 데이터 Flatten 필수)합성곱 계층의 입출력 데이터 : 특징 맵(featrue map)합성곱 계층의 입력 데이터: 입력 특징 맵(input feature ma.. 2024. 1. 15. [파이썬 딥러닝 파이토치] Part 4. Computer Vision-1 [예제 4-1] CIFAR-10 데이터를 이용해 MLP 설계하기 #1: PyTorch 모듈 중 인공 신경망 모델을 설계하는데 필요한 함수를 모아둔 모듈#2: 'torch.nn' 모듈 중에서도 자중 이용되는 함수 'F' 지정#3: 컴퓨터 비전 연구 분야에서 자주 이용되는 'torchvision' 모듈 내의 'transforms', 'datasets' 함수 임포트 GPU 사용(계산속도가 빠르기 때문에 딥러닝 모델의 파라미터 값을 빠르게 업데이트 가능) BATCH_SIZE = 32 : Mini-batch 1개 단위에 대해 데이터가 32개로 구성EPOCHS : 존재하고 있는 Mini-batch를 전부 이용하는 횟수 CIFAR10 데이터 다운로드 transformMLP의 Input으로 이용되기 때문에 ToTe.. 2024. 1. 14. [파이썬 딥러닝 파이토치] Part 3. Deep Learning [예제 3-1] Dropout#1 : 몇 퍼센트의 노드에 대해 가중값을 계산하지 않을 것인지 명시#2 : 2차원 데이터를 1차원 데이터로 변환(MLP 모델은 1차원 벡터 값을 입력 받을 수 있음 #3, #4각 sigmoid() 함수의 결괏값에 대해 Dropout 적용 p = 몇 퍼센트의 노드에 대해 계산하지 않을 것인지 조정 training = self.training -> 학습상태와 검증상태에 따라 다르게 적용하기 위해 존재 model.train()을 명시할 때 self.training = True , model.eval()을 명시할 때 self.training = False 적용 이론상 Dropout을 적용했을 때 일반화가 강해져 Test Accuracy가 높아지는 결과가 기대But, 이는.. 2024. 1. 12. [모두를 위한 딥러닝 시즌2] lab 9-1~9-4 [9-1] 시그모이드의 문제점출력이 0에 가까워지자(또는 1에 가까워지자) 그 미분은 0에 다가감 0에 가까운 기울기가 곱해질 경우 역전파의 기울기 값이 점점 사라짐 (기울기 소실) 이를 보완하고자 ReLU 함수가 나옴입력값이 0을 넘을 때 기울기 = 1음수의 영역에서는 기울기가 0이어서 음수로 activation 될 경우 기울기가 사라질 위험이 있으나 그래도 잘 동작 [9-2]N -> weight initialization 적용 (훨씬 더 성능이 좋음)weight 초깃값 설정이 딥러닝 성능에 있어 매우 중요한 부분IF, 가중치 초깃값을 0으로 설정할 경우 모든 gradient 값이 0이기에 학습할 수 X[RBM (Restricted Boltzmann machine)]같은 layer에 있는 node끼리는.. 2024. 1. 12. 이전 1 2 3 4 5 다음