주성분 분석(PCA) PCA는 Principal Component Analysis의 약자로, 주성분 분석이라고도 부릅니다. PCA는 지금까지 배운 알고리즘과는 전혀 다른 방식의 알고리즘입니다. 비지도 학습에 속하기 때문에 당연히 종속 변수는 존재하지 않고, 어떤 것을 예측하지도 분류하지도 않습니다. PCA의 목적은 데이터의 차원을 축소하는 데 있습니다. 차원 축소를 간단히 말하면 변수의 개수를 줄이되, 가능한 그 특성을 보존해내는 기법입니다. PCA는 기존의 변수 중 일부를 그대로 선택하는 방식이 아니라, 기존 변수들의 정보를 모두 반영하는 새로운 변수들을 만드는 방식으로 차원 축소를 합니다. – 구분 : 비지도 학습 ▼ TOP 10 선정 이유 PCA는 차원 축소 방법 중 가장 인기 있으며 구현하기 또한..
K-평균 군집화(K Means Clustering) K-평균 군집화는 비지도 학습의 대표적인 알고리즘 중으로 목표 변수가 없는 상태에서 데이터를 비슷한 유형끼리 묶어내는 머신러닝 기법입니다. K-최근접 이웃 알고리즘과 비슷하게 거리 기반으로 작동하며 적절한 K값을 사용자가 지정해야 합니다. 거리 기반으로 작동하기 때문에 데이터 위치가 가까운 데이터끼리 한 그룹으로 묶습니다. 이때 전체 그룹의 수는 사용자가 지정한 K개입니다. – 구분 : 비지도 학습 ▼ TOP 10 선정 이유 수많은 데이터를 가지고 있을 때, 데이터를 하나하나 직접 살펴보기에는 시간적인 한계가 따릅니다. 그렇다고 단순하게 통계적 정보만 살펴보는 것은 데이터를 너무 단순화하는 경향이 있습니다. 클러스터링은 이러한 상황에서 데이터를 적절한 ..
라이트GBM(LightGBM) XGBoost 이후로 나온 최신 부스팅 모델입니다. LightGBM이 등장하기 전까지는 XGBoost가 가장 인기있는 부스팅 모델이였지만, 점점 LightGBM이 XGBoost와 비슷한 수준 혹은 그 이상으로 활용되는 추세입니다. 캐글 컴피티션에서도 좋은 퍼포먼스를 많이 보여주어서 그 성능을 인정받았습니다. 리프 중심 트리 분할 방식을 사용합니다. – 구분 : 지도 학습 – 문제 유형 : 회귀/분류 – 적합한 데이터 유형 : 일반적인 데이터 ▼ TOP 10 선정 이유 표로 정리된 데이터(tabular data)에서 Catboost, XGBoost와 함께 가장 좋은 성능을 보여주는 알고리즘입니다. 성능을 비교하는 자료를 보면 대체로 LightGBM과 Catboost가 XGBo..
XG부스트(XGBoost) 랜덤 포레스트는 각 트리를 독립적으로 만드는 알고리즘입니다. 반면 부스팅은 순차적으로 트리를 만들어 이전 트리로부터 더 나은 트리를 만들어내는 알고리즘입니다. 부스팅 알고리즘은 트리 모델을 기반으로 한 최신 알고리즘 중 하나로, 랜덤 포레스트보다 훨씬 빠른 속도와 더 좋은 예측 능력을 보여줍니다. 이에 속하는 대표적인 알고리즘으로 XG부스트, 라이트GBM(LightGBM), 캣부스트(CatBoost) 등이 있습니다. 그중 XGBoost(eXtra Gradient Boost)가 가장 먼저 개발되기도 했고, 가장 널리 활용됩니다. XGBoost는 손실함수뿐만 아니라 모형 복잡도까지 고려합니다. – 구분 : 지도 학습 – 문제 유형 : 회귀/분류 – 적합한 데이터 유형 : 일반적인 ..
랜덤 포레스트(Random Forest) 랜덤 포레스트 모델은 결정 트리의 단점인 오버피팅 문제를 완화시켜주는 발전된 형태의 트리 모델입니다. 랜덤으로 생성된 무수히 많은 트리를 이용하여 예측을 하기 때문에 랜덤 포레스트라 불립니다. 이렇게 여러 모델(여기서는 결정 트리)을 활용하여 하나의 모델을 이루는 기법을 앙상블이라 부릅니다. – 구분 : 지도 학습 – 문제 유형 : 회귀/분류 – 적합한 데이터 유형 : 일반적인 데이터 ▼ TOP 10 선정 이유 앙상블 기법을 사용한 트리 기반 모델 중 가장 보편적인 방법입니다. 이후에 다루게 될 부스팅 모델에 비하면 예측력이나 속도에서 부족한 부분이 있고, 시각화에서는 결정 트리에 못미치나, 다음 단계인 부스팅 모델을 이해하려면 꼭 알아야 할 필수 알고리즘입니다...
결정 트리(Decision Tree) 결정 트리는 관측값과 목푯값을 연결시켜주는 예측 모델로서 나무 모양으로 데이터를 분류합니다. 수많은 트리 기반 모델의 기본 모델이 되는 중요 모델입니다. 트리 기반의 모델은 선형 모델과는 전혀 다른 특징을 가지는데, 선형 모델이 각 변수에 대한 기울기값들을 최적화하여 모델을 만들어나갔다면, 트리 모델에서는 각 변수의 특정 지점을 기준으로 데이터를 분류해가며 예측 모델을 만듭니다. 예를 들어 남자/여자로 나눠서 각 목푯값 평균치를 나눈다거나, 나이를 30세 이상/미만인 두 부류로 나눠서 평균치를 계산하는 방식으로 데이터를 무수하게 쪼개어나가고, 각 그룹에 대한 예측치를 만들어냅니다. – 구분 : 지도 학습 – 문제 유형 : 회귀/분류 – 적합한 데이터 유형 : 일반적인..