ML & DL/개념정리

딥러닝은 AI/ML/DL 관점에서 크게 5단계로 개발 방법론이 진화하였다. 1. Rule based programming 1단계는 Rule based programming 이다. 어떠한 과정을 거쳐야 output이 나오는지를 인간이 전부 정해줘야하는, 모든 연산을 설계한다. 즉 데이터와 알고리즘을 주고 계산하는 것을 의미한다. 2. Conventional machine learning 2단게는 1단계와 동일한 방식으로 사람이 어떠한 특징을 봐야하는지 등은 정해줘야 하지만 그러한 특징(hand designed feature)을 가지고 output을 내는 것은 machine learning의 연산을 통해 나오게 된다. 이 machine learning은 학습데이터 준비 ->모델 학습 과정을 거친다. 즉 데이..
Decision Tree Decision Tree: 의사결정나무, 결정트리라고 부르며, 대표적인 non-parametric 모델이다. 또한 화이트박스(White-box)모델로 설명가능하다. 아래와 같이 모델이 어떤 기준으로 분류하였는지를 확인할 수 있다. 기본적인 Decision tree 모델인 `CART(Classification And Regression Tree)`에 대해서 알아볼 것이다. 이 모델은 여러 결정트리모델중 하나로 대부분이 이 CART 알고리즘을 사용한다. 우선 트리는 다음과 같은 용어들로 정의된다. Impurity(불순도) CART는 노드마다 feature하나를 골라서 최적의 기준으로 나눌 수 있도록 기준을 정하는데, 이 최적의 기준을 `불순도(Impurity)`라는 개념으로 정한다...
1. Classifiaction: 분류 - 분류란 주어진 input data (X)를 분류하고자 하는 target value (y)에 할당하는 방법을 의미한다. - input data는 일반적으로 벡터 형태이며, target value는 스칼라 값이다. - 모델을 통해 0 혹은 1로 분류하는 것을 binary classification 이진분류라고 부른다. - 분류는 지도학습 문제이다. 1-1. Linear Classifier $ y=Wx+b $ 로 표시되는 선형 함수로 데이터를 분류하는 모델. 이는 하나의 선형식으로 이루어진 선, 평면, 초평면을 이용하여 두 개의 클래스를 분류하는 것을 말한다. linear classifier로 학습을 했다는 것은 데이터를 잘 나누는 적절한 파라미터 $ W $와 $ b..
모델 성능 평가란, 실제값과 모델에 의해 예측된 값의 차이를 구하는 것. 실제값과 예측값이 오차가 0인 것은 실질적으로 힘들기 때문에 오차의 한계를 정해서 그 오차까지는 허용해 준다. 성능평가를 하기 위해서는 예측값과 실제값을 비교할 수 있어야 하기 때문에 지도학습에만 사용된다. Training set의 결과와 Test set의 결과가 비슷해야 좋은 모델이라고 말할 수 있다. Training의 성능만 좋게 나왔다면. 이 모델은 과적합된 모델이다. [Regression] ex)선형 회귀, Random Regressor -> MSE, RMSE, MAE, MAPE 등의 평가지표 사용 -> 작을수록 성능이 좋음을 의미 1. MSE $$ \text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (Y..
부스팅 부스팅은 머신러닝 앙상블 기법 중 하나로 약한 학습기를 순차적으로 결합하여 예측/분류 성능을 높이는 알고리즘이다. 위의 데이터처럼 모델링을 진행하면서 가중치를 업데이트하며 순차적으로 학습시키는 방식이다. 부스팅 알고리즘에 여러 개의 모델(알고리즘)이 있는데 각기 다른 특징을 가지고 있다. 1. AdaBoost AdaBoost는 Adaptive Boosting의 약자로 오류 데이터에 가중치를 가하여 더하는 방식이다. 분류하기 어려운 것들에는 가중치를 더하고, 분류하기 쉬운 것들에는 가중치를 줄이면서 가중치를 업데이트한다. 이때 약한 학습기 즉 각각의 분류기는 Decision Tree를 약한 학습기로 사용한다. 그림으로 보면, 첫 번째 반복에서 잘못학습된 것들은 두 번째 반복에서 가중치가 커진 것(모..
0. Clustering 클러스터링은 주어진 데이터(X)와 유사한 데이터들을 묶어주는 방법이다. 클러스터링은 비지도학습이기 때문에 y가 존재하지 않는다. 클러스터링에서 가장 중요한 것은 feature vector과 similarity이다. Clustering(군집화) 알고리즘으로 K-means가 있다. k-means는 각 클러스터와의 거리 차이 분산을 최소화하여 데이터를 분류하는 것을 목적으로 한다. 우선 k-means의 방법을 간단하게 확인해 보자. 1. K-means 1-1. 군집의 개수(K) 설정 우선 군집의 개수 K를 설정하는 것부터 시작된다. 사실 이점은 어찌 보면 k-means의 단점이라고 볼 수 있다. 사용자가 임의로 정해줘야 하는 파라미터이기 때문이다. 하지만 추후에 이런 K를 정하는 다른..
창빵맨
'ML & DL/개념정리' 카테고리의 글 목록 (6 Page)