ISFP의 느리게 굴러가는 개발 블로그

[딥러닝의 정석] 1강 신경망 본문

학교 공부/여름방학 랩인턴

[딥러닝의 정석] 1강 신경망

taeeeeun 2020. 11. 15. 17:13

언젠가는 정리해야했던 여름방학 랩인턴 스터디 내용이다.. 여름방학 인턴이었지만 글을 쓰고 있는 지금은 후드티를 입은 상태..ㅎㅎ 처음에 이론으로 공부할 때는 너무 어렵고 이해도 안됐었는데 마지막 프로젝트까지 끝내고 나니까 뭐라도 공부한 기분이었다!

 

1장 신경망

 

1.3 머신러닝의 작동 원리

사람들이 사물을 인식하는 방법-> 공식X, 사례를 통한 경험O

사람의 강화과정: 감각적 입력 -> 예측 -> 확인

 

1.4 뉴런

뉴런이란? 사람 뇌의 기본 단위

뉴런의 구조를 이용하여 머신러닝 모델을 만드는 것이 목표

인공뉴런

n개의 입력-> 가중치 곱->합쳐짐(로짓 생성)->출력

y=f(x∙w+b)

 

1.5 선형 퍼셉트론

선형 퍼셉트론은 하나의 뉴런으로 표현될 수 있지만, 뉴런은 선형 퍼셉트론으로 표현할 수 없는 모델을 표현할 수 있다..

단층 퍼셉트론: 다수의 input으로 하나의 output을 출력할 수 있음. 뉴런이 전기신호를 내보내 정보를 전달하는 것과 매우 비슷하다. 뉴런의 돌기들이 신호를 보내는 것을 퍼셉트론은 weight로 대체한다. Weight가 클수록 그 신호가 중요하다. weight 값이 더해진 신호들을 모두 더해서 임계값을 넘으면 1, 넘지 못하면 -1을 출력한다.

이 퍼셉트론은 임의로 잡은 weight 값에서 시작하며 개선해나가는 방법으로 학습한다.

퍼셉트론의 한계: XOR 과 같은 비선형 데이터는 분류가 불가능하다.

 

1.6 전방향 신경망

뇌의 뉴런은 층으로 구성됨. 입력이 이해로 변환될 때까지 다른층으로 이동하는 것. 점점 구체화를 시키는 과정 -> 이 개념으로 인공 신경망을 만듦

가장 아래층: 입력 받아옴

중간층(은닉층): k번째 층 j번째 뉴런과 k+1번째 층 j번째 뉴런을 가중치w로 연결한다. 이때 가중치들은 파라미터 벡터를 구성하는데, 이 벡터 값의 최적화가 가장 중요하다.

최상위 층: 최종 답 계산

전방향 신경망: 아래층에서 위층으로만 이동(같은 층끼리X, 위층에서 아래층X)

1. 은닉층에서 특징을 찾는 과정을 자동화한다.

2. 모든 층이 같은 수의 뉴런을 가지고 있는 것은 아니다.

3. 뉴런의 출력이 다음 층의 뉴런의 입력과 연결될 필요가 없다.

4. 입력과 출력의 표현은 벡터로 표현된다.

 

1.7 선형 뉴런과 한계

선형 뉴런은 은닉층이 없음. 복잡한 관계를 학습하기 위해서는 비선형 뉴런 사용

은닉층을 사용하지 않으면 은닉층에서 특징 찾는 과정을 자동화하는 이점이 없기 때문

 

1.8 시그모이드, tanh, ReLU 뉴런

비선형성을 도입한 뉴런 (활성화 함수)

(퍼셉트론에서 사용하는 함수는 계단함수임.)

1. 시그모이드

fz=11+e-z

로짓이 작을 때 결과가 0으로 수렴, 클 때 1로 수렴

 

단점: gradient vanishing 현상이 발생해서 미분값이 소실될 수 있음, 함수값 중심이 0이 아니라서 학습이 느려질 수 있다.

초기에는 많이 사용하던 함수였지만 단점 때문에 많이 사용 안함

 

2. tanh 함수

fz=tanh(z)

 

시그모이드 함수를 transformation 해서 얻게된 함수. 중심값을 0으로 옮겨 그 단점은 해결했지만 여전히 gradient vanishing문제가 있음.

 

3. ReLU

fz=max⁡(0,z)

Comments