본문 바로가기

[AI] - Machine Learning18

# 11. 선형 분류와 선형 회귀 (Linear Classification & Linear Regression) 이번 포스트에서는 선형 분류와 선형 회귀에 대해 다뤄본다. 본 내용을 이전에 지도 학습(Supervised Learning)에 대해 간단하게 다루고 넘어가겠다. 지도 학습은 입력 데이터와 정답 데이터가 같이 주어져 학습하는 방식을 의미한다. 즉, 학습할 때 입력 데이터를 통해 머신러닝 모델이 예측한 데이터와 정답 데이터를 비교하면서 생기는 오차(Residual)를 보정해나가는 것을 의미한다. 근데 왜 갑자기 지도 학습에 대해 언급을 했을까? 그것은 지도 학습의 대표적으로 분류(Classification) 문제와 회귀(Regression) 문제가 있기 때문이다. 분류와 회귀는 둘다 예측 알고리즘이다. 그러나 무엇을 예측하는지가 다르다. 분류는 이산적인 값을 예측하는데에, 회귀는 연속적인 값을 예측하는데에 .. 2021. 11. 9.
# 10. GBM (Gradient Boosting Machine) 부스팅 알고리즘에는 대표적으로 AdaBoost와 GBM 방식이 있다. AdaBoost는 여러 개의 week learner를 순차적으로 학습하면서 틀린 데이터에 가중치를 부여하여 뒤에 있는 week learner가 분류하여 모든 분류 결과들을 취합하는 것을 의미한다. 반면, GBM은 여러 개의 week learner를 순차적으로 학습하면서 앞에 있는 week learner가 틀린 데이터에 가중치를 부여하여 오류를 개선하는 방향으로 학습하는 방식이지만 AdaBoost와의 차이점은 Gradient를 사용한다는 것이다. 딥러닝에 관심이 있다면 경사하강법 (Gradient Descent)에 대해 한번쯤은 들어봤을 것이다. 경사하강법에 대해 간략하게 설명하면, 실제 정답과 예측 정답 사이의 오차가 존재할 것이다. .. 2021. 11. 6.
# 9. 앙상블 기법 (Ensemble) 지난 포스트에서는 의사 결정 나무에 대해서 다루었다. 의사 결정 나무는 단 하나의 분류기를 사용하지만, 이번 포스트에서는 여러 분류기들을 결합한 방법인 앙상블 기법에 대해 다룰 것이다. 마치 오케스트라처럼 여러 악기가 모여 화음을 이루듯, 여러 분류기들을 결합하는 것이다. P.S) 이미지, 영상, 음성과 같은 비정형 데이터의 분류는 딥러닝이, 정형 데이터에서는 앙상블이 좋은 성능을 낸다. 우선 앙상블의 조합 기법 4가지를 간단하게 살펴볼 것이다. 1. Voting 기법 특징 1 : 서로 다른 알고리즘 결합 특징 2 : 전체 데이터 셋을 알고리즘 사이에서 공유 2. Bagging 기법 특징 1 : 같은 알고리즘 결합 특징 2 : 전체 데이터 셋에 대하여 Bootstraping sampling (복원 추출).. 2021. 10. 28.
# 8. 의사 결정 나무 (Decision Tree) 의사 결정 나무에 대한 내용을 다루기 이전에 지금까지 정리했던 내용을 큰 맥락으로 한번 짚고 넘어갈까 한다. 1. 전처리 1.1 encoding from sklearn.preprocessing import LabelEncoder from skelarn.preprocessing import OneHotEncoder 1.2 feature scaling from sklearn.preprocessing import StandardScaler from sklearn.preprocessing improt MinMaxScaler 1.3 학습 데이터 분리 & 교차검증 from sklearn.model_selection import train_test_split from sklearn.model_selection imp.. 2021. 10. 24.
# 7. F1 스코어와 ROC 커브 저번 포스트에 이어 이번에는 재현율과 정밀도를 기반으로 하는 F1 스코어와 오차행렬을 기반으로 한 ROC 커브에 대해서 알아본다. F1 스코어는 재현율과 정밀도의 조화 평균을 의미한다. 산술, 기하, 조화 평균에 대한 자세한 내용은 다음 블로그에서 참조했다. 기억해야할 것은 재현율(recall)과 정밀도(precision)은 트레이드 오프 관계이다. recall = 0.9, precision = 0.1 인 경우 F1 = 2 * 0.9 * 0.1 / 1.0 = 0.18 recall = 0.5, precision = 0.5 인 경우 F1 = 2 * 0.5 * 0.5 / 1.0 = 0.5 모델의 성능은 재현율과 정밀도의 균형도 중요하므로 F1 스코어가 높은 것이 유리하다. F1 스코어를 확인하는 방법은 다음과.. 2021. 10. 17.
# 6. 정확도와 오차행렬 (Accuracy and Confusion matrix) 이번 포스트에서는 모델의 성능을 평가하기 위한 지표에 대해서 알아볼 것이다. 그중에서 가장 직관적인 방법인 정확도와 정확도의 한계점을 보완하기 위한 오차행렬에 대해서 알아본다. 정확도는 실제 데이터와 예측 데이터가 얼마나 같은지를 판단하는 지표이다. 정확도의 공식은 다음과 같다. 정확도는 쉽고 직관적이지만, 불균형한 데이터 세트에서는 적절하지 않다. 예시를 들자면, 100개의 데이터중 True가 90개, False가 10개가 있다고 가정하자. 이러한 경우 무조건 결과를 True로 반환하는 경우 정확도는 90%가 된다. 정확도가 가지는 한계점을 극복하기 위해 여러가지 분류 지표를 적용해야 한다. 앞에서 언급한 여러가지 분류 지표의 기반이 되는 개념은 오차행렬에 대해서 알아보겠다. 오차행렬을 도식화하면 다음.. 2021. 10. 11.