1. Linear Regression (선형회귀)
종속변수 Y와 한개 이상의 설명변수 X 들과의 선형 상관관계를 모델링하는 회귀분석 기법이며
종석변수가 수치형변수 (연속변수) 일때 사용합니다.
가장 기본적인 방법론이고 종속변수와 설명변수간의 관계를 함수로 설명하기 때문에
이들 간의 관계를 확인하기에 용이하지만, 종속변수와 설명변수들 간에 선형관계만 가정하기 때문에
정확성을 높이는데에 한계가 있습니다.
2. Logistic Regression (로지스틱 회귀)
종속변수와 설명변수간의 관계를 함수로 설명하려는 측면은 동일하나 종속변수가
범주형 변수(이산변수) 일때 사용합니다. 분류 및 예측에 주로 사용되는 모델입니다.
로지스틱 회귀만 따로 설명하는 포스트로 이동하기
3. Ridge Regression (리지 회귀)
회귀분석의 설명변수의 개수가 증가할 경우 설명변수들 사이의 강한 상관관계로 인해
다중 공선성(비슷한 추세를 보이는 변수는 제거 해야 하지만 그러지 못한경우)이 존재하거나,
모델 자체가 지나치게 복잡해지는 문제가 발생합니다. 이럴 때 회귀계수 축소를 통해 보다 적은
변수를 사용해 모델을 간결하면서도 로우버스트(Robust)하게 만들어주는 리지 회귀분석을
사용할수도 있습니다. 리지 회귀분석은 과적합(Overfitting)을 방지하면서 예측 정확도를 높이고
모델 해석력을 올려주는 장점이 있습니다.
4. Lasso Regression (라쏘 회귀)
변수 선택과 표준화 기능이 있는 회귀분석방법입니다. 리지 회귀와 유사한 개념인데,
영향력이 적은 회귀 계수 값을 쉽게 0으로 만드는 변수 선택 기능이 있어 보다 리지 회귀의
예측 정확도를 취하면서도 변수 선택에 있어서의 해석력을 확보한 분석방법입니다.
5. Jackknife Regression (잭나이프 회귀)
전통적인 회귀분석의 단점 해결하기 위해 최근에 등장한 분석방법입니다. 결정과 변수가 서로
연관되어 있거나, 정규 분포가 아닐때도 비교적 결과 예측력이 좋은 편입니다. 회귀 분석의
기본가정이 위배 되었을때도 사용할수 있습니다.
( *주의 : 잭나이프 재샘플링과는 다른 개념이다. )
6. Decision Tree (의사결정나무)
아주 대표적인 머신러닝의 지도학습 알고리즘 방법론입니다. 수치형/범주형 종속변수에 대한
예측/분류를 위해 사용합니다. WhiteBox식 모델이기 때문에 결과를 보다 직관적으로 이해할 수
있다는 점, 계산방법이 간단하다는 장점이 있디만 과적합 등으로 인해 다른 모델에 비해
정확도가 낮은 편입니다.
7. RandomForest (랜덤포레스트)
이름에서 짐작할 수 있듯이 다수의 의사결정나무를 만든 후 최빈값을 기준으로 예측/분류 하는
알고리즘입니다. Bagging/Booststrap Aggregating 방법을 사용해 의사 결정 나무 노드 생성의
편향을 줄이므로 의사 결정 나무의 과적합 문제를 해결할 수 있는 대안으로 사용할 수 있습니다.
8. K-means Clustering (케이민즈 군집화)
머신러닝의 비지도 학습의 대표적인 알고리즘입니다. 주어진 데이터를 유사한 k개의 군집으로
묶는 방법론이며, 군집을 나누는 방법에 따라 여러 종류로 구분됩니다.
데이터데 대한 이해 단계에서 부터 고객 세그멘테이션, 이미지 분할등에 광범위하게 적용 가능합니다.
단 K값을 사전에 지정해 주어야 한다는 점, 이상치에 민감하게 반응하는 점 및 구형이 아닌 군집을
찾는데는 적절하지 않다는 단점이 있습니다.
9. Cross - Validation
예측/ 분류모델의 과적합(Overfitting) 을 방지하고, 보다 일반적인 population에 적용 가능한지
여부를 확인하기 위해 사용되는 Sampling 방법의 한 유형입니다. 데이터를 여러 개의 구간으로
쪼개어 샘플링 하며, 쪼개는 방법/샘플링 하는 방법에 따라 여러 종류로 구분됩니다.
확보된 데이터가 충분치 않아 일반적으로는 이미 있는 데이터를 7:3 or 8:2 로 쪼개서
사용하기도 합니다.
10. Artificial neural network (인공신경망)
현대 시대에 가장 각광받고 있는 분석방법이며 이제 거의 원라인 과제라고 생각하도 무방합니다.
생물체의 신경망의 뉴런이 시냅스를 통해 결합되는 것처럼, 여러개의 함수의 집합과 각 집합에
대한 가중치를 조정하여 분류/예측하는 알고리즘입니다. 인공신경망 분석의 가장 큰 특징은
학습이 가능하다는 점입니다. 인공 신경망에서의 학습 기본 원리는 새로운 관측치가 발견될 경우
Cost Function을 최소화 하는 함수를 찾아 나가는 식으로 작동합니다.
신경망의 복잡도에 따라 결과를 얻기까지 걸리는 속도가 증가하는 단점이 있지만,
변수 종류에 구애 받지 않고, 비선형 조합이 가능하기 때문에 예측력이 우수하다는 장점이 있습니다.
11. Ensemble Learning (학습의 조합)
같은 데이터 셋으로 여러개의 예측/분류 알고리즘을 만들고, 그 결과를 종합해서 보다 나은
결과값을 얻고자 하는 방법입니다. 주로 연산 속도가 빠른 알고리즘의 종합에 사용합니다.
(ex Desicion Tree - RandomForest)
넷플릭스 프라이즈에서 1등을 수상한 팀도 이 방법을 사용했다고 합니다. 여러개의 알고리즘을
참고하는 만큼 정확도가 높아지지만, 연산속도는 느린 단점이 있습니다. 실제로 넷플릭스에서
1위팀의 알고리즘이 추천정확도는 더 높았지만 속도 문제로 알고리즘을 서비스에 채택하지는
않았다고 합니다.
12. Naive Bayesian Classifier (나이브-베이지안 분류)
특성들 사이의 독립을 가정한 베이즈 정리를 적용한 분류 알고리즘 입니다. 예를들어
복면가수가 아이돌일 확률이 각각 연관이 없다고 가정하고 각각의 특성이 복면가수가
아이돌일 확률에 독립적으로 기여하는것을 봅니다.
나이브 베이지안는 전통적인 확률론에 기반한 알고리즘은 아니지만, 다른 진보된 분류
알고리즘과 비교 했을때에도 매우 예측력이 높은것으로 알려져 있습니다.
주로 문서의 텍스트를 확인하여 어떤 문서가 어떤 카테고리 (스팸/or not)에 속하는지
어떤 뉘앙스 ( 행복/ 긍정/ 중립 /비판)를 가지고 있는지 등을 판단하는 문데에 가장 자주
등장하는 알고리즘 입니다.
13. Collaborative filtering (협업필터)
사용자의 선호도 및 아이템의 특성등을 사용해서 사용자가 선호할 만한 아이템을 예측 하는
추천 시스템에 주로 사용되는 방법입니다. 사용자, 아이템 중 어떤 것에 기반하느냐에 따라
여러 종류로 나누어 집니다.
사용자/아이템 기반에 따라 매트릭스를 만들고 이에 따라 사용자의 선호를 추측하는 방법이기에
사용자나 아이템이 늘어날 수록 계산이 복잡해 지고, 속도도 느려지는 단점이 있습니다.'
14. Principal Component Analysis ( PCA : 주성분 분석)
데이터가 복잡해 질 수록 노이즈 및 계산 비용도 증가합니다. 주성분 분석 방법은 변수가 많은
고차원 데이터를 정보 손실을 최소화하면서 저차원의 데이터, 즉 변수 숫자가 작은 데이터로
압축시키는 방법입니다.
Regression 이나 Decision Tree 에서 설명 변수들 간 다중공선성 문제나, 군집 분석의 속도 개선 등
데이터 전처리에 주로 활용됩니다. 다만 주의해야 할 점은 분산을 기준으로 계산하기 때문에 변수의
단위에 영향을 받는 다는 점 ( Z-Score나 평준화가 필요함)과 데이터가 PCA의 주요 가정 ( 선형성,
직교성, 분산 차)를 만족하는지 체크해야 한다는 쟁점이 있다.
15. Support Vector Machine (지지벡터머신)
두개의 주어진 Calss간 가장 가까운 거리를 가지는 Support Vector사이의 초평면을 찾아, 새로운
데이터에 Class를 부여하는 방법입니다.
주어진 데이터를 이진 분류해 내는 데에 있어 다른 알고리즘 보다 정확도가 뛰어나지만,
데이터 셋의 크기나 복잡도에 따라 연산 속도가 느려진다는 단점이 있습니다. 주로 텍스트 분석
손글씨등의 이미지 인식등에 주로 사용됩니다.