기계학습이론과실습
-
GMM (Gaussian Mixture Models)기계학습이론과실습 2022. 6. 14. 08:03
GMM은 여러 개의 다변량 정규분포를 이용해서 데이터가 생성되었다고 가정한다. 여기서 분포의 개수 K는 사용자에 의해 설정되는 hyper-parameter이며 분포의 개수가 곧 군집의 개수이다. 독립변수의 수 = M, 찾고자 하는 군집의 수 = K라고 가정할 경우, 특정 관측치의 확률은 다음과 같다. 파이값은 mixing coefficient(weight)라고도 불리며 관측치 x_i가 k번째 정규분포를 이용해서 생성되었을 확률을 나타낸다. 이때, mixing coefficient를 나타내기 위해서 z라고 하는 잠재변수를 사용해서 표현한다. z_i는 i번째 관측치가 생성될 때 사용된 분포를 나타내는 변수이다. 다변량 정규분포의 μ = (μ_1, μ_2, ..., μ_M)이며 Σ는 M개의 변수들에 대한 공분..
-
SVM (Support Vector Machines)기계학습이론과실습 2022. 5. 30. 12:08
하이퍼플레인 Label에 따라 벡터들을 구분하기 위한 면(선) n 차원 공간에 대한 하이퍼플레인: b0 + b1x1 + ... + bnxn = 0 서포트 벡터 벡터들을 구분하는 하이퍼플레인과 가장 가까이 있는 벡터 마진(margin) 하이퍼플레인과 서포트 벡터 사이의 거리 * 목표: margin을 최대화하는 b0, b1 ... bn 값을 찾는 것 1. 점과 선 사이의 거리를 찾는 공식을 알아보자 * 법선 벡터(normal vector)란 한 평면이나 직선에 대해 수직인 벡터를 의미한다. * ax + by = c의 법선 벡터 N은 (a, b) ** 법선 벡터를 활용하여 점(x0, y0)과 직선(ax + by + c = 0)의 거리를 구하면 absolute(ax0 + by0 + c) / root(a^2 + ..
-
차원축소(Dimension Reduction)기계학습이론과실습 2022. 5. 16. 16:00
feature의 수가 너무 많을 경우 지도학습: 과적합 문제 비지도학습: 데이터 포인트들 간의 거리가 유사하게 됨 -> 군집화 결과가 좋지 않음 = 차원의 저주(curse of dimensionality) feature selection: 원래의 features 중에서 일부만 선택 선택되지 않은 features가 갖고 있는 정보를 최종 분석에서 사용하지 못함 feature extraction: 원래 features가 가지고 있는 정보를 사용하여 새로운 features 추출 PCA(Principal Component Analysis)는 feature extraction의 한 방법 * PC는 독립변수들이 가지고 있는 정보를 설명하는 축 먼저 고유값과 고유벡터에 대해 알아보겠다. (eigenvalue, eig..
-
Ensemble methods기계학습이론과실습 2022. 5. 11. 17:14
지금까지 Decision Tree에 대해 알아보았다. Decision Tree의 장단점은 다음과 같다. Decision Tree는 결과 해석이 직관적으로 가능해 비교적 쉽다. Decision Tree는 일반적으로 모형의 성능이 떨어진다. (=weak learner) Decision Tree의 단점을 보완하기 위해서 Ensemble methods를 사용한다. 앙상블(Ensemble)은 합주단이라는 의미를 갖고 있다. 다양한 악기가 어우러져 아름다운 소리를 낼 수 있다. Definition: To combine several (weak) learners into a stronger learner Approaches: 1) Bagging 2) Boosting 먼저 Bagging 방법에 대해 알아보겠다. Bag..
-
Decision Tree기계학습이론과실습 2022. 5. 4. 15:33
Decision Tree는 Dataset에 있는 관측치들을 독립변수의 값에 따라 종속변수의 값이 유사한 여러 개의 그룹으로 분리하고, 각 그룹에 속한 관측치들의 종속변수 값을 동일한 값으로 예측하는 알고리즘이다. 구성요소 * root node * internal node = decision node -> cut-off or cut point value -> hyper-parameter: depth * leaf node = terminal node Decision Tree Regressor - RSS(Sum of Residual Squares)를 Minimize하는 Cut-off 적용 - 예측값은 해당 그룹의 평균값 : 변수의 값을 크기에 따라 정렬 -> 연속된 두 개의 평균값을 Cut-off로 적용했을 ..
-
Clustering기계학습이론과실습 2022. 5. 4. 15:02
군집화 분석을 이해하기 위해서는 벡터에서의 유사도를 먼저 이해할 필요가 있다. 1. 유클리디안 유사도: 거리 기반 유사도로 보통 관측치의 단위가 비슷할 때 쓴다 np.linalg.norm(b-a) 2. 코사인 유사도: 각도 기준 유사도로 보통 관측치의 단위가 크게 차이가 날 때 쓴다. np.dot(a,b)/(np.linalg.norm(a)*np.linalg.norm(b)) 그 외에 Manhattan distance, Jaccard distance, Hamming distance 등이 존재한다. A. K-Means Clustering : 해당 방법은 유클리디안 거리를 사용한다 K개의 점을 선택한다. K개의 점은 각 그룹의 중심이 된다. 모든 점을 K개의 중심이 되는 점들 중 가장 가까운 점이 속한 그룹에 ..
-
Course Intro기계학습이론과실습 2022. 5. 4. 13:43
Through this course we will learn about these topics and their mathmatical principles. Supervised Learning - Linear Regression - Logistic Regression - Decision Tree - Ensemble methods - Support Vecotr Machines Unsupervised Learning - Clustering: Hierarchical Clustering, DBSCAN, K-Means, GMM - Dimension Reduction: PCA Definition of AI, ML, DL AI: "smart computer", or "intelligent computer" / Rule..
-
Naive Bayes기계학습이론과실습 2022. 5. 3. 00:33
* Bayes' Rule * Bayes' Rule에 따라 X1=x1, X2=x2일 때 Yi=1일 확률과 X1=x1, X2=x2일 때 Yi=0일 확률을 서로 비교하여 Y값 예측 분모는 같으므로 비교시 생략이 가능하고, 사건 X1과 사건 X2가 독립이라고 Naive하게 가정할 경우 다음과 같이 계산 import numpy as np import pandas as pd url= 'http://archive.ics.uci.edu/ml/machine-learning-databases/car/car.data' # 설명: https://rstudio-pubs-static.s3.amazonaws.com/118220_5a7997d6b0aa493c878d661968fc1f08.html car_df = pd.read_csv..