본문 바로가기

AI Theory/CS182_2021

CS182 Lecture 1: Introduction

CS182 Lecture 1: Introduction

전 세계에는 6000여개 이상의 언어가 존재하지만, 자동번역(automated translation)은 2개의 언어만을 요구한다.

번역 모델의 종류

1. standard machine translation

  • 각각 언어 pair 별 번역 모델이 존재하며 각각의 모델 사용

2. multilingual machine translation

  • 하나의 모델로 어떤 언어든 어떤 언어로 번역
  • 효율성 증가
  • zero shot machine translation: 영어 > 한국어, 한국어>일본어 하면 영어>일본어도 구할 수 있다
  • 여러 언어들의 mix(40% 스페인어, 60% 프랑스어) language 구성 가능
  • A언어를 B 언어로 번역한다고 할 때 A 언어를 thought로 바꾼 뒤 thought를 B언어로 바꾸는 식으로 작동한다.

thought is a representation

deep learining을 사용해 data로부터 이 thought를 잘 학습하면 모든 언어들의 원할한 번역이 가능하다. 따라서 thougth를 학습하는 representation learning 이 딥러닝 모델의 목표가 된다.

representation learining

  • 이미지, 음성, 텍스트 등 복잡한 형태의 input을 thought로 변환시켜 representation화
  • 딥러닝은 자동적으로 가능하단 것이 장점

machine learning

  • picture > computer program > object label
  • input과 output의 관계를 data로부터 찾아내는 것. 위의 경우 input은 picture이고 output은 object label이다.

computer program

  • function(inputs와 outputs 로 이루어진 rules의 집합)으로 output을 산출한다.
  • data로부터 관계를 찾아냄
  • key idea: 만약 rules가 inputs가 outs를 매핑하여 표현하기에 복잡하고 수많은 특이케이스, 예외케이스를 묘사해야 한다면, rules를 정하는 것보다 data 또는 예시를 제공하는 것이 훨씬 쉬운 방법이다.
  • 이때 computre program은 theta와 x로 이루어진 함수 형태로, 파라미터 theta를 학습해서 좋은 파라미터를 찾는 것이 목표이다.

shallow learing

  • fixed function for extracting features from x
  • 데이터로부터 어떠한 feature를 추출해 이를 기반으로 output label 구함
  • 이때 y를 구하는 rule은 건들지 않고 feature를 어떻게 뽑을지만 관여한다.
  • alexnet 등장 전까지의 대세

from shallow learing to deep learning

  • 딥러닝의 경우 shallow learning과 다르게 feature를 어떻게 선택할지 사람이 관여하지 않고, input을 넣으면 여러 layer들이 feature를 뽑아내고 그 feature를 학습시켜 output을 구하는 end-to-end 방식이다.
  • feature가 learned features로 바뀐다
  • 각 layer별로 feature가 생성되는데이때 high level layer일 수록 feature는 아래와 같은 특징을 갖는다.
    • more abstract
    • more invariant to nuisances(분위기의 영향 감소)
    • easier to predicting label
  • 즉 초기 layer에서는 직선적 명확한 특징을 갖지만 갈수록 데이터의 추상적 개념을 잡아낸다.

so, what is deep learning?

  • 여러 layer를 사용해서 representation을 학습하는 것
  • from input to internal representation to output
  • neural network = all of multi-layer parametric function
  • 파라미터들은 대체로 accuracy 등의 overall task objective에 의해 학습된다.(end-to-end)

cf. 타임라인

  • 1957 퍼셉트론
  • 1970 nueral networks의 기본적 한계
  • ~2000 shallow learing
  • 1986 backpropagation
  • 1989 LeNet
  • ~2006 dnn 주목받기 시작
  • 2012 alexnet(gpu 사용시작)

what makes deep learining work?

  • big model with many layers: layer가 더 깊을수록 모델 성능이 더 좋다. 물론 깊을수록 기울기 소실 문제가 발생할 수 있으므로 항상 그런 것은 아니다.
  • large datasets: 복잡하고 추상적인 feature들을 학습하기 위해 데이터가 많을수록 좋다. mnist, caltech, cifar, ilsvrc등이 있다.
  • enough compute to handle all this: 큰 모델과 많은 데이터를 감당할 수 있는 성능

underlying themes

  • model이 data에서 features를 자동으로 찾는 end-to-end 방식이 인간이 직접 feature를 만드는 것보다 정확하다
  • 효과적인 학습을 위해 bias를 추가한다고 할 때, learning bias vs inductive bias
    • 데이터가 좋아서 모델이 좋은 거냐 모델 디자인을 잘해서 모델 성능이 좋은거냐
    • 해당 모델이 데이터의 구조를 잘 받아들일 수 있다면 그 모델의 성능이 더 좋다.
  • algorithms that scale:
    • data가 증가하고 representational capacity, 계산이 추가할 때에도 잘 작동

 


더 공부하고 싶은 내용

  • cuda 사용법
  • resnet의 residual connection
  • gpt-4

'AI Theory > CS182_2021' 카테고리의 다른 글

tf.constant() 함수  (0) 2022.09.26