education/BDA 5-6기

[BDA]Do it! 딥러닝 교과서 스터디(1)

luluofgang 2023. 5. 15. 12:53

1주차 진도: Chapter 2 순방향 신경망 ~ Chapter 3 신경망 학습

인공신경망 모델의 기본 & 경사 하강법과 역전파 알고리즘 에 대해 공부하자

Chapter2

순방향 신경망

: 뉴런들이 모여 계층을 이루고 계층이 쌓여 전체 신경망을 이루는 구조

  • 입력 계층, 은닉 계층, 출력 계층으로 구분
  • 완전연결계층: 계층에 속하는 각 뉴런들이 이전 계층의 뉴런과 모두 연결된 구조

뉴런

  • 가산합산과 활성 함수를 순차적으로 실행하여 데이터 내 특징을 추출함
  • 비선형적으로 변환하는 과정을 거침
  • 기본 활성 함수 = ReLU (Rectified Linear Unit) -> 구간 선형 함수로 비선형 함수임

범용 함수 근사기로서의 신경망

  • 뉴런 - 가중합산과 활성함수를 순차적으로 실행하는 합성함수 f(x) = activation(w^Tx + b)
  • 신경망은 n차원 공간의 임의의 연속함수를 근사하는 능력 있음
  • ex. 클래스간 경계가 매우 복잡하더라도 곡선으로 구분하고 복잡한 회귀문제에서도 예측곡선을 만들 수 있음
  • 복잡한 함수를 정확히 근사하려면 은닉 뉴런이 충분히 필요해 모델의 과적합이 불가피한데 
  • 2017년 범용 근사 정리를 통해  은닉 뉴런을 n+4로 제한해도 르베그 적분 가능 함수를 근사할 수 있음

분류모델 & 회귀

분류

  • 이진분류: 두 사건이 발생할 확률 (동전 앞면/ 뒷면 이 나올 확률), 시그모이드 함수를 통해 신경망 출력계층에서 실수값을 확률로 변환
  • 다중분류: k개의 사건이 각 발생할 확률 (주사위에서 1~6이 나올 확률) , 소프트맥스함수를 활성함수로 사용 
  • *소프트맥스/ 시그모이드 함수의 관계: 소프트 맥스는 시그모이드를 여러 클래스에 대해 일반화한 함수

+ 스쿼싱 함수: 출력계층에서 실수값을 고정 범위로 만들어줌

 

회귀

: 여러 독립변수와 종속 변수의 관계를 연속함수 형태로 분석하는 문제로 회귀 모델은 입력데이터의 함수값을 예측함

  • 가우시안 분포(평균을 중심으로 대칭적인 종 모양의 사건이 발생할 확률)로 정의 
  • 출력함수: 항등함수 -> why? 예측된 평균과 분산이 바뀌면 안되기 때문

신경망 모델의 크기

  • 너비와 깊이로 정해짐 
  • 탐색법: 그리드 서치, 랜덤 서치 

신경망 학습에서의 문제점

1) 학습이 느린 경우 -> 시그모이드나 ReLU 활성 함수 출력이 양수이면 학습 경로가 크게 진동하고 있음

2) 죽은 뉴런이 계속 0을 출력하는 경우 -> ReLU 가중치 초기화를 잘못 설정

 

 

책 리뷰

개념 파악 -> 원리 이해 -> (챕터 마지막장)실습 순으로 구성되어 딥러닝 공부가 처음인 초보자에게도 추천드립니다.

(저도 딥러닝 공부가 처음이거든요 ㅎㅎ)

딥러닝 작동원리를 설명/그림/수식으로 최대한 이해되도록 설명되어 있어 너무 어렵진 않았답니다!