본 게시물은 UDEMY 강좌 '딥러닝의 모든 것 with Python, Tensorflow, Pytorch'를 학습하고 요약한 게시물입니다.
- 강좌 URL : https://www.udemy.com/course/best-artificial-neural-networks/
> 뉴런
뉴런 : 뇌를 포함하는 신경계는 모두 신경 세포, 뉴런으로 구성되어 있다. 뉴런은 전기적 신호를 이용해 멀리 떨어진 거리에도 정보를 빠르게 전달할 수 있다. 신경계에서 신호를 전달하는 역할을 담당하는 뉴런은 모양과 크기가 종류에 따라 다양하지만, 기본적인 구조는 비슷하다.
(출처 : 교육부 공식블로그)
- 뉴런은 인공신경망의 기본 구성요소
> 뉴런의 생김새
- 딥러닝의 목적이 인간 뇌의 작동방식을 모방하는 것이고, 뉴런을 기계로 재현해야한다.
> 뉴런 도식화
- 가지돌기 (Dendrites) : 뉴런을 위한 신호 수신기
- 축삭돌기 (Axon) : 뉴런을 위한 신호 발신기
- 뉴런 자체로는 거의 쓸모가 없으나 수많은 뉴런들이 협업하면 많은 일을 할 수 있음
- 축삭돌기가 가지돌기를 실제로 건들지는 않지만 중요한건, 시냅스라는 신호가 전달되는 전체적인 개념
- 시냅스 : 신호가 전달되는 곳 (축삭돌기 → 가지돌기)
> 뉴런 기본구조
- 노란색 : 입력층, 초록색 : 은닉층, 빨간색 : 출력층
- 상단의 모든 독립변수들은 모두 관측치 하나를 위한 것 (즉 DB로 치면 row 한 줄)
- 모든 독립변수들은 표준화를 해줘야 한다. 즉 평균 = 0, 분산 = 1이 되게끔
- 추후 실용 튜토리얼과정에서 접할 수도 있겠지만, 표준화가 아니라 정상화(Normalization)를 해야할 수도 있음 : 최소값을 빼서 최대값에서 최소값을 뺀 값으로 나눠 값의 범위로 0~1사이의 값을 얻는다.
- 기본적으로 모든 변수가 같은 값의 범위 내에 있는 유사한 값인 게 좋음 : 모든 값들은 신경망으로 보내질 텐데 합산되거나 가중치를 곱해질 것. 값들이 모두 비슷하면 신경망이 처리하기 더 쉬움
- ※ (참고) 표준화나 정상화같이 입력 변수로 할 수 있는 일들에 대해 추가로 읽을 만한 자료 : 얀 르쿤이 1998년에 발표한 'Efficient BackProp'