본문 바로가기

딥러닝/밑바닥부터 배우는 딥러닝

(5)
7장. 합성곱 신경망(CNN) 7.1 전체 구조 신경망 합성곱 신경망 Affine 계층(완전연결층) 합성곱 계층(convolutional layer), 풀링 계층(pooling layer) 7.2 합성곱 계층 1) 완전 연결 계층의 문제점 - 데이터의 형상이 무시된다. - C, H, W이 무시되고 하나의 긴 벡터가 affine 계층에 입력된다. 특징 맵 (feature map) : CNN에서 합성곱 계층의 입출력 데이터, input feature map과 output feature map이 있음. 2) 합성곱 연산 - 필터 연산 입력 (4, 4) * 필터 (3, 3) -> 출력 (2,2) 필터의 윈도우를 옮겨가며 단일 곱셈-누산 연산(fused multiply-add, FMA)을 반복함. 필터의 매개변수를 가중치라고 생각할 수 있다...
6장. 학습 관련 기술들 6.1 매개변수 갱신 최적화(optimization): 손실 함수의 값을 가장 작게 하는 매개변수를 찾는 과정 (1) 확률적 경사 하강법 (SGD: Stochastic Gradient Descent) loss function의 기울기 * 학습률을 빼가면서 W를 update 한다. 즉 Loss function이 기울어진 방향으로 일정 거리만큼 가는 방법. class SGD: def __init__(self, lr=0.01): self.lr = lr def update(self, params, grads): for key in params.keys(): params[key] -= self.lr * grads[key] params 매개변수들에 대해 learning rate * key에 대한 gradient만큼..
5장. 오차역전파법 1. 계산 그래프 계산 그래프 사용시 이점 복잡한 문제를 국소적으로 단순화 (국소적: 자신과 직접 관계된 작은 범위만 계산 가능) 중간 계산 결과를 모두 보관할 수 있음 역전파를 통해 미분을 효율적으로 계산함 2. 연쇄 법칙 신호 E에 노드의 국소적 미분을 곱하여 노드를 계산함으로써 역전파를 계산할 수 있다. 합성함수: 여러 함수로 구성된 함수 z라는 함수를 t를 이용하여 합성함수로 표현할 수 있다. x의 z에 대한 미분은 t를 이용하여 연쇄법칙으로 표현할 수 있다. 즉, 합성함수의 미분은 합성함수를 구성하는 각 함수의 미분의 곱으로 나타낼 수 있다. (편미분) 3. 역전파 1. 덧셈 노드의 역전파 덧셈 노드일 때 미분값이 다음과 같기 때문에 상류에서 정해진 미분값에 1을 곱하기만 하면 된다, 즉 입력값..
4장 신경망 학습 4.1 신경망 학습 3단원에서는 이미 W와 b에 대해 최적의 값이 찾아져 있었고 그 값으로 X에서 Y를 예측한 후 실제 Y값과 비교하여 정확도를 예측하고, 이 과정을 배치처리로도 해보았다. 4단원 에서는 gradient descent 과정을 거치면서 Loss function을 최소화 하기 위한 W와 b값을 점진적으로 학습할 것이다. - 2장의 퍼셉트론에서는, 가중치와 편향의 값을 직접 설정했지만 실제로는 직접 설정하지 못하고, 기계학습을 통해 기계가 스스로 적절한 가중치와 편향 값을 학습하여야 한다. (end-to-end 방식: 입력부터 출력까지 사람의 개입 없이 기계가 학습한다.) - 데이터를 train set과 test set으로 나누는 이유: 모델의 범용성을 평가하기 위함 4.2 손실 함수 4.2...
3장 신경망 3.1 신경망 신경망은 퍼셉트론을 여러 층 쌓아서 만든 거대한 분류기를 말한다. 첫번째 층을 입력층, 마지막 층을 출력층이라 하고 중간의 모든 층들을 은닉층이라고 한다. 입력층은 0층에서부터 시작해서 1층, 2층, ...의 순으로 나아간다. 은닉층과 출력층은 입력 신호에 가중치를 곱하고 편향을 더한 뒤에 함수로 가공해서 출력 신호를 만드는데 이 때 가공하는 함수를 활성화 함수라고 한다. 퍼셉트론은 단층 퍼셉트론과 다층 퍼셉트론으로 나눌 수 있는데, 단층 퍼셉트론에서는 지난 2단원에서 했던, 단 한 개의 층만으로 나타나는 AND, OR 게이트와 같은 퍼셉트론을 말하고(입력값을 경계로 출력이 바뀌는 함수), 다층 퍼셉트론은 XOR 게이트처럼 퍼셉트론 여러 개가필요한, 단층 퍼셉트론에서 층을 더 쌓아서 신경망..