Deep Learning 17

[밑바닥부터시작하는딥러닝1] Chapter 8. 딥러닝

8.1. 더 깊게정확도를 개선하기 위해서 앙상블학습, 학습률 감소, 데이터 확장 등을 사용할 수 있다. 데이터 확장(data argumentation)은 입력 이미지(훈련 이미지)를 알고리즘을 동원해 인위적으로 확장한다.그림 8-4와 같이 입력 이미지를 회전하거나 세로로 이동하는 등 미세한 변화를 주어 이미지의 개수를 늘리는 것이다.이는 특히 데이터가 많이 없을 때 효과적인 수단이다.데이터 확장은 이미지 일부를 잘라내는 crop, 좌우를 뒤집는 flip등의 방법이 있다. ✔️ 층을 깊게 하는 이유층을 깊게 하면 신경망의 매개변수 수가 줄어든다.합성곱 연산에서 필터의 크기에 주목해 생각해보면 쉽게 이해될 것이다.그림 8-5는 5*5 필터로 구성된 합성곱 계층, 그림 8-6은 3*3 필터로 합성곱 연산을 2..

Deep Learning 2024.04.16

[밑바닥부터시작하는딥러닝1] Chapter 7. 합성곱 신경망(CNN)

7.1. 전체 구조지금까지 본 신경망은 인접하는 계층의 모든 뉴런과 결합되어 있었다.이를 완전연결(fully-connected)라고 하며, 완전히 연결된 계층을 Affine 계층이라고 불렀다.완전연결 신경망은 Affine 계층 뒤에 활성화 함수를 갖는 ReLU 계층(or Sigmoid 계층)이 이어진다.그림 7-1에서는 Affine-ReLU조합이 4개, 마지막 5번째 층은 Affine 계층에 이어 소프트맥스 계층에서 최종 결과(확률)를 출력한다. CNN은 새로운 합성곱 계층(Conv)와 풀링 계층(Pooling)이 추가된다.Conv-ReLU-(Pooling) 흐름으로 연결된다.(Pooling은 생략 가능) 7.2. 합성곱 계층✔️ 완전연결 계층 문제점완전연결 신경망에서는 완전연결 계층(Affine 계층)..

Deep Learning 2024.04.13

[밑바닥부터시작하는딥러닝1] Chapter 6. 학습관련기술들

6.1. 매개변수 갱신✔️ 확률적 경사 하강법(SGD)최적화(optimization) : 손실함수의 값을 가능한 낮추는 매개변수의 최적값을 찾는 것이를 위해 매개변수의 기울기(미분)을 이용했다. 기울어진 방향으로 매개변수 값을 갱신하는 일을 반복해서 최적의 값에 다가갔는데 이를 확률적 경사 하강법(SGD)라고 하였다.W는 갱신할 가중치 매개변수, 미분값은 W에 대한 손실함수의 기울기, η는 학습률class SGD: def __init__(self, lr=0.01): self.lr = lr # 학습률 def update(self, params, grads): for key in params.keys(): params[key] -= sel..

Deep Learning 2024.04.12

[밑바닥부터시작하는딥러닝1] Chapter 5. 오차역전파법

4장에서는 신경망의 가중치 매개변수에 대한 손실 함수의 기울기는 수치 미분을 사용해 구했다.수치 미분은 단순하고 구현하기 쉽지만 계산시간이 오래 걸린다는 단점이 있는데, 이를 효율적으로 계산하는 오차역전파법에 대해 배워보도록 하자. 5.1. 계산 그래프문제 1. 슈퍼에서 1개에 100원인 사과를 2개 샀습니다. 이 때 지불 금액을 구하세요. 단, 소비세가 10% 부과됩니다.위의 문제 1을 계산 그래프로 나타내면 그림 5-2와 같다. 문제2. 슈퍼에서 사과를 2개, 귤을 3개 샀습니다. 사과는 1개에 100원, 귤은 1개 150원입니다. 소비세가 10% 일 때 지불 금액을 구하세요.위의 문제 2 또한 계산 그래프로 나타내면 그림 5-3과 같다. 이처럼 계산을 왼쪽에서 오른쪽으로 진행하는 단계를 순전파(fo..

Deep Learning 2024.04.05

[밑바닥부터시작하는딥러닝1] Chapter 4. 신경망 학습

학습 : 훈련 데이터로부터 가중치 매개변수의 최적값을 자동으로 획득하는 것 4.1. 데이터에서 학습한다!✔️ 데이터 주도 학습1. 그림을 분류하는 알고리즘을 사람이 직접 설계2. 이미지에서 특징(feature)을 추출하고 그 특징의 패턴을 기계학습 기술로 학습하는 방법3. 신경망 : 이미지를 있는 그대로 학습1, 2는 사람이 개입하지만 3은 기계가 스스로 학습한다.이와 같이 신경망은 모든 문제를 같은 맥락에서 풀 수 있다는 장점이 있다. '5'를 인식하든, '강아지'를 인식하든 세부사항과 관계없이 신경망은 주어진 데이터를 온전히 학습하고 주어진 문제의 패턴을 발견하려 시도한다. 즉, 모든 문제를 주어진 데이터 그대로 입력데이터로 활용해 'end-to-end'로 학습한다. ✔️ 훈련데이터와 시험데이터데이터..

Deep Learning 2024.04.04

[밑바닥부터시작하는딥러닝1] Chapter 3. 신경망

신경망은 가중치 매개변수의 적절한 값을 데이터로부터 자동으로 학습하는 성질이 있다. 3.1 퍼셉트론에서 신경망으로✔️ 신경망의 예은닉층 : 입력층, 출력층과 달리 사람 눈에 보이지 않기 때문에 은닉층 ✔️ 퍼셉트론 복습앞 장에서 배웠던 퍼셉트론을 위와 같이 표현할 수 있다.   식 3-1을 h(x)를 이용하여 식 3-5로 표현할 수 있다. ✔️ 활성화 함수의 등장활성화함수 h(x) : 입력신호의 총합을 출력신호로 변환하는 함수신호의 총합이 활성화를 일으키는지를 정하는 역할 3.2. 활성화 함수✔️ 계단 함수계단함수 : 위와 같이 임계값을 경계로 출력이 바뀌는 활성화 함수그래서 퍼셉트론에서는 활성화 함수로 계단함수를 이용한다고 할 수 있다.def step_function(x): return np.ar..

Deep Learning 2024.04.03

[밑바닥부터시작하는딥러닝1] Chapter 2. 퍼셉트론

2.1 퍼셉트론이란?퍼셉트론 : 다수의 신호를 입력으로 받아 하나의 신호로 출력(1 - 신호가 흐른다 / 0 - 신호가 흐르지 않는다) 입력신호 : x1, x2출력신호  : y가중치(weight) : w1, w2뉴런(or 노드) : 그림의 원 입력신호가 뉴런에 보내질 때 각각 고유한 가중치가 곱해진다. (w1x1, w2x2)뉴런에서 보내온 신호의 총합이 정해진 한계(임계값 θ)를 넘어설 때만 1을 출력한다. = 뉴런이 활성화한다. 가중치 : 각 신호가 결과에 주는 영향력을 조절하는 요소로, 가중치가 클수록 해당 신호가 더 중요함을 뜻함. 2.2 단순한 논리 회로✔️ AND 게이트(w1, w2, θ) = (0.5, 0.5, 0.7) ✔️ NAND 게이트와 OR 게이트(w1, w2, θ) = (-0.5, -..

Deep Learning 2024.04.02