Machine Learning

 by Prof. Seungchul LeeiSystems Design Labhttp://isystems.unist.ac.kr/UNIST

Table of Contents

1. What is Machine Learning¶

• Draw a meaningful conclusion, given a set of data (observation, measurement)
• In 1959, Arthur Samuel defined machine learning as a "Field of study that gives computers the ability to learn without being explicitly programmed"

• Often hand programming not possible
• Solution? Get the computer to program itself, by showing it examples of the behavior we want! This is the learning approach of AI
• Really, we write the structure of the program and the computer tunes many internal parameters
• Many related terms:
• Pattern recognition
• Neural networks $\rightarrow$ Deep learning
• Data mining
• Adaptive control
• Statistical modeling
• Data analytics / data science
• Artificial intelligence
• Machine learning

2. Supervised vs. Unsupervised Learning¶

• Supervised: building a model from labeled data
• Unsupervised: clustering from unlabeled data

2.1. Supervised Learning¶

• Regression
• linear, nonlinear (kernel), ridge ($L_1$ norm regularization), lasso ($L_2$ norm regularization)
• Classification
• perceptron, logistic regression, SVM, Bayesian classifier
 $$\begin{array}{Icr} \{x^{(1)},x^{(2)},\cdots,x^{(m)}\}\\ \{y^{(1)},y^{(2)},\cdots,y^{(m)}\} \end{array} \quad \Rightarrow \quad \text{Classification}$$

2.1.1. Data Fitting or Approximation (Regression)¶

• a statistical process for estimating the relationships among variables (source: wikipedia)

2.1.2. Classification¶

• the problem of identifying to which of a set of categories (sub-populations) a new observation belongs, on the basis of a training set of data containing observations (or instances) whose category membership is known (source: wikipedia)

2.2. Unsupervised Learning¶

• Clustering
• k-means, Gaussian Mixture Model
• graph partitioning (spectral clustering)
• Dimension Reduction
• PCA
 $$\{x^{(1)},x^{(2)},\cdots,x^{(m)}\} \quad \Rightarrow \quad \text{Clustering}$$

2.2.1. Clustering¶

• clustering groups examples based of their mutual similarities

2.2.2 Dimension Reduction (Multiple Senses + Principal Components)¶

• the process of reducing the number of random variables under consideration, and can be divided into feature selection and feature extraction.

3. Machine Learning Tool¶

3.1. Python¶

• 본래는 웹개발, 그래픽인터페이스, 스크립트, 계산과학등 다양한 용도로 사용되는 고급 프로그래밍 언어
• 5만개가 넘는 확장패키지 (ex Scikit-learn, Numpy 등) 을 제공하는 것이 특징
• 직관적이고 유연한 구조로 접근성이 용이

3.1.1 Package¶

• Python은 데이터분석을 위한 다양한 패키지를 제공
• 관련된 클래스 혹은 함수들을 미리 묶어놓은 것
• 다양한 용도로 파이썬을 활용할 수 있도록 해줌
• Numpy, Scikit-learn(sklearn), Tensorflow 등이 데이터분석을 위한 대표적인 패키지

Numpy

• 과학계산을 위한 패키지
• 배열간의 수학계산을 수행하는 함수, 선형대수의 계산, 푸리에 변환, 난수 발생기 같은 수치와 관련된 다양한 기능을 제공

Scipy

• 미분방정식 해석기, 방정식의 근을 구하는 알고리즘, 표준 연속/이산 확률분포와 다양한 통계관련 도구 등을 제공

Pandas

• 일반 데이터베이스처럼 데이터를 합치고 관계연산을 수행
• 자동적으로 혹은 명시적으로 축의 이름에 따라 데이터를 정렬할 수 있는 자료구조 제공

Scikit-learn(sklearn)

• Regression, Classification, Clustering 과 같은 머신러닝을 위한 다양한 모형 제공
• 전처리, 모형평가 등을 위한 서브 패키지 제공

Tensorflow

• 기계 학습과 딥러닝을 위한 함수, 클래스를 제공
In [1]:
%%javascript
\$.getScript('https://kmahelona.github.io/ipython_notebook_goodies/ipython_notebook_toc.js')