머신러닝을 위한 수학

2018. 12. 23. 15:57·Artificial Intelligence/Machine Learning
반응형

                                                                                                                                                         

                                                                                                                                                                                                                   

                                                                                                                                                         

                                                                                                                                                                                                              

                                                                                                                                                                                                              

머신러닝에서 수학이 중요한 이유는 다양하며 그 중 몇 가지는 다음과 같다:
  1. 정확도, 트레이닝 시간, 모델 복잡도, 파라미터 수 및 피쳐 (features) 수에 대한 고려를 포함하는 올바른 알고리즘 선택
  2. 파라미터 설정과 검증 (validation) 전략 선택
  3. 편향 분산 (bias-variance)의 트레이드오프의 이해를 기반으로한 언더피팅 (underfitting)과 오버피팅 (overfitting)의 식별
  4. 올바른 신뢰 구간과 불확실성 추정
 

어느 수준의 수학적 지식이 필요한가?

  1. 선형대수학 (Linear Algebra): 나의 동료중 한 명인 Skyler Speakman은 최근에 “선형대수학은 21세기의 수학이다”라고 말한적이 있는데 나는 이 말에 전적으로 동의한다. 머신러닝에서 선형대수학은 모든 곳에서 나타난다.
    • 주성분 분석 (Principal Component Analysis, PCA)
    • 단일값 분해 (Singular Value Decomposition, SVD)
    • 행렬의 고유분해 (Eigendecomposition of a matrix)
    • LU 분해 (LU Decomposition)
    • QR 분해 (QR Decomposition/Factorization)
    • 대칭 행렬 (Symmetric Matrices)
    • 고유값 & 고유벡터 (Eigenvalues & Eigenvectors)
    • 벡터 공간과 표준화 (Vector Spaces and Norms)
  2. 이상 위의 것들은 머신러닝에서 사용되는 최적화 방법들을 이해하기 위해 필요한 개념들이다.
  3. 확률론 및 통계 (Probability Theory and Statistics): 머신러닝과 통계는 서로 다른 분야가 아니다. 실제로, 누군가는 최근에 머신러닝을 “Mac에서 통계하기”라고 정의했다. 머신러닝에 필요한 기초 통계학 및 확률론 개념들은 다음과 같다.
    • 조합 (Combinatorics)
    • 확률 규칙 및 공리 (Probability Rules & Axioms)
    • 베이지안 이론 (Bayes’ Theorem)
    • 랜덤 변수 (Random Variables)
    • 분산과 기댓값 (Variance and Expectation)
    • 조건부 확률 및 결합 확률 분포 (Conditional and Joint Distributions)
    • 표준 분포 (Standard Distributions)
      • Bernouil
      • Binomial
      • Multinomial
      • Uniform
      • Gaussian
    • 모멘트 생성 함수 (Moment Generating Functions)
    • 최대 우도 추정 (Maximum Likelihood Estimation, MLE)
    • 사전 및 사후 확률 (Prior and Posterior)
    • 최대 사후 추정 (Maximum a Posteriori Estimation, MAP)
    • 샘플링 방식 (Sampling Methods)
  4. 다변수 미적분학 (Multivariate Calculus): 필수 주제중 일부는 다음을 포함한다.
    • 미분 및 적분 (Differential and Integral Calculus)
    • 편미분 (Partial Derivatives)
    • 벡터값 함수 (Vector-Values Functions)
    • 방향 그라디언트 (Directional Gradient)
    • Hessian
    • Jacobian
    • Laplacian
    • Lagrangian 분포 (Lagrangian Distribution)
  5. 알고리즘 및 복잡도 최적화 (Algorithms and Complex Optimizations): 이는 머신러닝 알고리즘의 계산 효율성과 확장성을 이해하고 데이터셋의 희소성을 활용하는데 있어 중요하다.
    • 데이터 구조에 대한 지식 (이진 트리, 해싱, 힙, 스택 등)
    • 동적 계획법 (Dynamic Programming)
    • 랜덤 및 선형 시간 이하 알고리즘 (Randomized & Sublinear Algorithm)
    • 그래프 (Graphs)
    • 그라디언트/확률론적 하강 (Gradient/Stochastic Descents)
    • 원 및 쌍대문제 해결 (Primal-Dual methods)
  6. 기타: 이는 위에서 설명한 4가지 주요 영역에서 다루지 않은 다른 수학 분야로 구성된다.
    • 복소해석학 (Real and Complex Analysis)
      • 집합과 수열 (Sets and Sequences)
      • 토폴로지 (Topology)
      • 거리 공간 (Metric Spaces)
      • 일가 함수 및 연속 함수 (Single-Valued and Continuous Functions)
      • 극한 (Limits)
      • 코시 커널 (Cauchy Kernel)
      • 푸리에 변환 (Fourier Transforms)
    • 정보 이론 (Information Theory)
      • 엔트로피 (Entropy)
      • 정보 이득 (Information Gain)
    • 함수 공간 (Function Spaces)
    • 다양체/매니폴드 (Manifolds)
다음은 머신러닝에 필요한 수학을 공부할 수 있는 온라인 MOOC와 자료들이다:
  • 칸아카데미의 선형대수학, 확률과 통계, 다변수 미적분학, 최적화
  • 브라운 대학교의 Philip Klein이 쓴 Coding the Matrix: Linear Algebra through Computer Science Applications
  • 텍사스 대학교의 Robert van de Gejin이 쓴 Linear Algebra — Foundations to Frontiers
  • 데이비드슨 대학교의 Tim Chartier 강의: Applications of Linear Algebra, Part 1과 Part 2
  • Joseph Blitzstein의 Havard Stat 110 lectures
  • Larry Wasserman의 All of statistics: A Concise Course in Statistical Inference
  • Boyd와 Vandenberghe의 강의: Convex optimization from Standford
  • 선형대수학 — Foundations to Frontiers on edX
  • Udacity의 Introduction to Statistics

초보자들은 머신러닝을 시작하는데 있어 많은 수학적 지식이 필요하진 않다. 기본적인 선행 조건은 이 포스트에서 설명한대로 데이터 분석이며 여러분들은 더 많은 기술과 알고리즘을 습득하면서 수학을 배울 수 있다.

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Artificial Intelligence > Machine Learning' 카테고리의 다른 글

기울기  (0) 2018.12.23
손실(Loss)  (0) 2018.12.23
머신러닝 알고리즘 cheet sheet  (0) 2018.12.23
머신러닝과 딥러닝의 주요한 차이  (0) 2018.12.23
머신러닝(Machine Learning) 알고리즘 장단점 비교  (1) 2018.12.20
'Artificial Intelligence/Machine Learning' 카테고리의 다른 글
  • 기울기
  • 손실(Loss)
  • 머신러닝 알고리즘 cheet sheet
  • 머신러닝과 딥러닝의 주요한 차이
doh.k
doh.k
  • doh.k
    DOHk's DevLog
    doh.k
  • 전체
    오늘
    어제
    • 분류 전체보기
      • DailyLog
      • TIL
      • Project
        • Development
        • Artificial Intelligence
      • Development
        • Database
        • WEB
        • CSE
        • javascript
        • Algorithms
        • Linux
        • Network
        • Python
        • 라즈베리파이
        • Apple
      • Research
        • 논문
        • 금융,블록체인
        • Time-Series
        • 수학
        • 미적분학
        • 화학
      • Artificial Intelligence
        • Machine Learning
        • Deep Learning
        • TensorFlow
        • ReinforcementLearning
      • 기타
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    JavaScript
    기계학습
    라즈베리파이
    Machine Learning
    Algorithms
    가상화폐
    딥러닝
    gradient descent
    pycharm
    ssh
    데이터베이스
    파이썬
    아이패드
    블록체인
    Linux
    네트워크
    Python
    Mac
    맥북
    데이터
    스프링
    Network
    경사하강법
    머신러닝
    자료구조
    리눅스
    자바스크립트
    Spring
    gradient
    알고리즘
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
doh.k
머신러닝을 위한 수학
상단으로

티스토리툴바