내일배움캠프AI - 실전 머신러닝 적용 3주차 개발일지

Dongwoo Kim·2022년 5월 16일
0

스파르타코딩클럽

내일배움캠프AI 웹개발자양성과정 2회차

실전 머신러닝 적용 - 3주차 개발일지

1. 딥러닝 (Deep learning)

: 선형회귀와 비선형 함수로 이루어진 하나의 층(Layer)를 여러번 반복해서 깊게 쌓아서 복잡한 문제를 해결하기위한 머신러닝의 한 분야

  • Deep learning
  • DNN (Deep Neural Networks)
  • MLP (Mutilayer Perceptrons)

2. XOR 문제

  • 선형 회귀로 풀 수 있었던 AND, OR 논리회로와 달리 XOR 회로는 선형회귀로 풀 수 없었고 MLP 개념이 등장

    출처: https://extsdd.tistory.com/217

  • Perceptron : 노드와 가중치 등으로 나타낸 인공신경망 단위

  • 1969년 Marbin Minsky : [ Perceptrons ] 에서 XOR 게이트를 한개의 perceptron으로 풀 수 없고 MLP를 사용해야하는데 학습양이 많이 불가능하다고 주장

  • 1974년 Paul Werbos : 역전파(backpropagation) 제시

  • 1986년 Hinton : 독자적으로 역전파 발표

  • 이후 역전파 알고리즘으로 학습한 MLP 모델로 XOR 문제 해결

    출처: https://www.youtube.com/watch?v=kNPGXgzxoHw

3. DNN의 구성 요소

4. batch size, iteration, epochs

  • batch size : 데이터셋을 나누어 학습시키기 위한 작은 단위
  • iteration : 데이터셋 전체를 한번 학습시키기 위한 반복 횟수
  • epochs : 학습 반복 횟수

출처: https://www.mauriciopoppe.com/notes/computer-science/artificial-intelligence/machine-learning/glossary/

5. 활성화 함수 (activation functions)

선형회귀의 결과값을 비선형으로 만들어주기 위한 비선형 함수

출처:https://medium.com/@shrutijadon10104776/survey-on-activation-functions-for-deep-learning-9689331ba092

  • 간단하면서 성능이 좋은 ReLu 함수를 많이 사용함

6. 과접합 (overfitting), 과소접합(underfitting)

  • overfitting : 테스트셋에 너무 치중되어 학습됨
  • underfitting : 아직 학습이 제대로 이루어지지 않은 상태

출처: https://vitalflux.com/overfitting-underfitting-concepts-interview-questions/

7. Deep learning skill

데이터 증강 기법 (data augmentation)

드랍 아웃 (drop out)

앙상블 (ensemble)

  • 여러개의 딥러닝 모델을 만들어서 학습시키고 결과들을 비교하여 최종 결과를 도출하는 것
  • 컴퓨팅 파워만 충분하다면 성능을 높일 수 있는 좋은 방법
  • 최종 결과를 도출하는 방법은 투표, 평균, 최대값 등등 개발자에 의해 결정 가능

    출처: https://towardsdatascience.com/neural-networks-ensemble-33f33bea7df3

학습률 조정 (learning rate schedules, learning rate decay)

  • local minimum에 빠르게 도달하기위하여 처음에는 비교적 큰 값에서 시작하여 학습할 수록 learning rate를 줄여가는 방법

출처: https://neurohive.io/en/popular-networks/resnet/

8. 실습

profile
kimphysicsman

0개의 댓글