fcs231n Lec1 - 전통적인 생성 모델(Classic Generative Model)

2018-11-20

Deep Generative Model 이전에 전통적으로 사용되어왔던 Generative Model인 다양한 Probability Model을 정리하고자합니다.

목차

  • 이론
    • Deep Generative Model(전통적인 Probability Model + DL)를 학습하기 전, 먼저 가장 기초적인/핵심적인/전통적인 Generative Model 들 알아보자
    • Gaussian Discriminant Analysis, Gaussian Mixture Model, Naive Bayes
    • Discriminator ModelGenerative Model차이
    • EM-algorithm
  • 코드 (Introduction to (Classic) Generative Model)
    • Pytorch Tutorial - 기본 PyTorch 라이브러리 및 모듈 사용법
    • Linear Regression(선형회귀)
    • Logistic Regression(로지스틱회귀)
    • Gaussian Discriminant Analysis(가우시안 판별 분석)
    • GMM(Gaussian Mixture Model) with EM algorithm

예습 목록

  • 확률이론
    • 세상에서 가장 쉬운 베이즈통계학 입문
    • https://see.stanford.edu/materials/aimlcs229/cs229-prob.pdf
  • MLE (Maximum Likelihood Estimation;최대 우도 추정;최대 가능도 추정)에 대한 개념 : random variable의 parameter를 estimate(추정)하는 방법 중 하나
  • GMM (Gaussian Mixture Model)에 대한 개념
  • EM algorithm(Expectation–maximization algorithm;기대값 최대화 알고리즘;α-EM 알고리즘)에 대한 개념
  • Discriminative model vs Generative model
    • discriminative model 개념선형회귀로지스틱회귀 를 중심으로 정리
    • 비지도학습(unsupervised learning) 기반의 generative model가우시안믹스처모델(Gaussian Mixture Model, GMM) 중심으로
    • ( 선형판별분석(Linear Discriminant Analysis, LDA) )
  • 정보이론 (Information Theory)
    • 섀넌엔트로피
    • 크로스엔트로피
    • 쿨백-라이블러 발산(Kullback-Leibler divergence, KLD)
    • KLD는 딥러닝 모델의 손실함수(loss function)로 자주 쓰이는 크로스 엔트로피(cross entropy)와 깊은 관련을 맺고 있다 !
  • 최대우도추정 vs 크로스 엔트로피, KL-Divergence
  • 딥러닝 모델의 손실함수로 음의 로그우도(negative log-likelihood)가 쓰입니다. 어떤 이유 일까?
  • day 1 code
    • github에 주피터
    • github에 pycharm버전화
    • 강의때 필기 어떤식으로? - PDF and Code
  • 기초
    • Linear Regression_
    • Logit 변환 / Continuous type value, Discrete type value
    • 로지스틱 함수(Logistic Function=시그모이드 함수)와 승산(Odds)
    • Logistic Regression
      • 이항(Binary)
      • 다항(Multinomial)
    • Multinomial Logistic Regression(=multiple logistic regression=Softmax)
    • 결정경계(decision boundry) = Hyperplane
  • 기초-2
    • Expectaion(기대값) 평균이 다른점.
    • Entropy(엔트로피)
    • Cross entropy

    • 최적화
      • KLD
      • MLE
      • MAP
      • GMM + EM
      • 백프롭패밀리 : 일반적인 deteministic(결정론적)(??) 스타일인 DL에서 다양한 optimizer : gradient 구한 후 백프롭(using chain-rule)
    • 딥러닝의 에러함수=로스함수=비용함수
      • L2-Loss
      • MSE
      • 소프트맥스(함수)
      • 크로스-엔트로피(함수)
      • etc
    • 베이즈정리
    • 베이지안 추정 은 모수가 가질 수 있는 모든 값에 대해 가능성을 확률분포로 나타낸 것을 말한다
    • Likelihood(우도)
    • MLE(최대우도추정 법)
  • 설치
    • Python 3.6(이미 다른 버전이 설치 되어있다면 conda create 명령을 사용하셔서 Python3.6 환경을 구축)
    • PyTorch 라이브러리(수업진행에 필요한 Packages: pytorch, torchvision, jupyter 등 설치)(Pytorch 설치 방법-0.4 버전부터 윈도우를 지원)
    • Jupiter Notebook
    • Jupiter Notebook을 사용하여, 제공받은 주피터노트북파일에 실시간 필기하는 방법
  • PyTorch 사용법(시간이 된다면 기초적인 PyTorch 사용법도 함께 숙지) - 금상첨화

  • 노트
    • 노트북에 강사 주피터노트북 파일 4개 설치 및 깃헙 연동
    • 그리고 주피터-노트북에 코드 돌리면서, 노트북파일에 추가적으로 필기 가능한지 테스트
    • 블로깅 할때 수학식은 일단
      1. 손으로 쓴다 스캔한다
      2. 최초 블로깅 틈틈히 마크업으로 바꾼다
      3. i can note 인지 뭔지 그거 해보기

  • Day2 준비
    • 파이토치 튜토리얼(한번 쓱 걍 따라하기정도로 1시간짜리)(http://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html ) -> linear regression model 정도
    • 전인수님 파이토치 튜토리얼 만든것(깃헙/InsuJeon/HelloPytorch)
    • 2주차 VAE, Variational Inference(변분추론)

    • 통계책 보기 ! 꼭 :컨디션 확률,분포 / 조인트 확률(조건부확률), 확률분포 / 독립(independent) 2D가우시안 / 베르누이 라든지 다 통계책!

    • 이활석님 변분추론, AE, VAE 강의 4시간
    • 칸아카데미-엔트로피
    • 테리님 엔트로피, 크로스엔트로피, KL
    • 파이토치 유튜브 강의
    • 파이토치 T아카데미 강의
    • 파이토치 책!
    • 확률/통계 => 링크 공유한 수학 강의 유튜브 강의

    • 출력할것 예습 블로그 3~4개
  • (Day2 예습) 참고문헌
  • 베이즈통계 입문 정원석님 블로그
  • 베이즈통계 입문

마크다운으로 표 만들어주는 사이트(markdown table generator)

Reference