🗝 Keyword
Warm-up
-
퍼셉트론(Percepron)
이란?
: 인간의 신경세포(뉴런)을 모델링 해 기계를 학습하는 방법 (1958)
-
XOR 문제
? 예시
: 배타적 논리합 - 기호 학습
ex) 물고기의 사냥
인풋: 통통함(1), 난이도(1_쉬움) => 아웃풋: 사냥개시(0)
사냥감이 통통하고, 난이도도 쉽다면 당연히 사냥개시(1)이겠다고 생각하겠지만 실제로는 미끼일 수 있으니 사냥하면 안됨
=> 이론적으로 당연한 상황에서 실제로는 그렇지 않은 경우가 많음
- 퍼셉트론을 어떤 형태로 개선?
-> 다층 퍼셉트론 - 히든 레이어
신경망에서 히든 레이어 층을 늘리면 XOR 문제를 포함한 더욱 복잡한 문제까지 해결 가능
-> 역전파법 - 신경망을 쭉 따라가다가 결과를 본 다음, 다시 뒤로 가면서 가중치를 조절
하는 방법
- 사전 훈련법 (2000 ~ )
레이어와 뉴런들의 초기값
만 잘 잡아준다면 더욱 깊은 신경망 훈련 가능 -> 넘쳐나는 데이터를 이용해 신경망 사전 훈련
인공지능의 종류
- 약인공지능
: 사람과 비슷한 수준으로 정보를 조합하고 이해하는 정도 (스스로 규칙을 찾아 문제를 해결할 능력이 있는 정도) - ex) 알파고
- 강인공지능
: 사람과 동일하거나 그 이상의 지능 수준을 가진 정도 (자아나 의식이 있을 수도 있는 정도) - ex) 터미네이터의 SKYNET
- 초인공지능
: 기계가 모든 면에서 인간의 능력을 초월한 단계
전문용어 없이 듣는 딥러닝의 모든 것
딥러닝의 발전
-
하드웨어 상향
-
빅데이터
-> 데이터의 양 증가
-
알고리즘 향상
퍼셉트론(Perceptron)
퍼셉트론의 기본 구조
퍼셉트론의 기본 개념과 학습 규칙, 한계점
- 가중치-편향 연산 (= 가중합)
: 입력된 여러 개의 신호에 각각의 가중치와 곱한 후 그 결과를 더함
ex) input(입력 신호): [1, 1, 2]
weight(가중치): [0.2, 0.4, 0.3]
-> 1 x 0.2 + 1 x 0.4 + 2 x 0.3
=> 1.2
- 활성화 함수(Activation function)
: 계산된 가중합을 얼마 만큼의 신호로 출력할지 결정
활성화 함수
계단 함수(Step function)
계단 함수
- 가장 간단한 활성화 함수
- 입력값이 임계값(0)을 넘으면 1, 아니면 0
- 단점: 임계값 지점에서 미분 불가, 나머지 지점 -> 미분값:0
=> 계단 함수를 활성화 함수로 사용하면 학습이 제대로 이뤄지지 X (신경망이 경사 하강법을 통해 학습하기 위해서는 미분이 필요하기 때문)
시그모이드 함수(Sigmoid function)
시그모이드 함수
- 전 지점 미분 가능 (미분값도 0이 아님)
-> 계단 함수처럼 임계값(0)보다 작은 부분은 0, 큰 부분은 1에 가까워지지만 부드럽게 연결되어 있어서 미분이 가능함
- 단점: 기울기 소실 문제
렐루 함수(ReLU function)
렐루 함수
- 기울기 소실 문제를 해결하기 위해 등장
- 입력값이 양의 값 -> 그대로, 음의 값 -> 0
- 주로
은닉층
에서 사용
소프트맥스 함수(Softmax function)
- 모든 클래스의 값의 합 -> 1
- 다중 클래스 분류에 용이
-> 다중 분류 문제에 적용할 수 있도록 시그모이드 함수를 일반화한 활성화 함수
- 주로
출력층
에서 사용
논리 게이트로 본 퍼셉트론
AND
NAND
- NAND: Not AND (AND와 반대)
- 입력 신호 모두 0(False) -> 1
OR
XOR
- 배타적 논리합
- 입력 신호가 서로 다를 때 -> 1
- 퍼셉트론의 한계로 지적
인공 신경망
- 실제 신경계를 모사해 만들어진 계산 모델
- ANN (Artificial Neural Networks)
- 뉴럴넷 (Neural-Net)
딥러닝(Deep Learning)
- 인공 신경망의 층을 깊게 쌓은 것
은닉층
이 2개 이상