-
[머신러닝] SVM 개념
📚 SVM ✅ 개요 https://en.wikipedia.org/wiki/Support-vector_machine#/media/File:Svm_separating_hyperplanes_(SVG).svg • 2010년 전후로 많이 사용되었는데 정형 데이터에 대해서는 앙상블 기법, 비정형 데이터에 대해서는 인공신경망이 등장하면서 상대적으로 사용 빈도가 감소했다. • 주로 분류 문제에 많이 사용된다. 관측치를 벡터로 변환해서 공간상의 점으로 표현하고 그 점들을 구분하는 여러 개의 hyperplane(직선) 중에서 최적의 직선을 찾는 방식으로 학습한다. • n차원 공간(피쳐가 n개가 있는 경우)에 대한 하이퍼플레인은 다음과 같이 표현된다. 즉 위와 같이 2차원 공간에서는 직선의 형태가 되고 b0, b1, b2와..
2023.12.05 14:36 -
[머신러닝] 데이터 불균형/ Oversampling 개념
📚 Imbalanced Dataset ✔ 데이터 불균형 : 이진 분류 문제에서 특정 클래스의 관측치가 상대적으로 더 많은 경우. 이러한 경우에는 majority에 대해서는 예측을 잘 진행할 수 있으나, minority class에 대해서는 예측 성능이 떨어진다. ✔ 예시 : fraud detection, 질병 예측, 신용불량자 예측, 기기 고장 예측, spam detection → 이러한 task는 minority class를 정확하게 예측하는 것이 더 중요하다. 하지만 대부분의 데이터에는 majority class의 샘플이 훨씬 많다. 📌사용하는 평가 지표 데이터 불균형이 심할 경우에 평가 지표로 accuracy를 사용하는 것은 바람직하지 않다. 전체 데이터에서 majority class가 90%인 경..
2023.12.01 09:03 -
[머신러닝] 하이퍼 파라미터 튜닝/ Cross validation 개념
📚 Hyperparameter란 일반적으로 모델에서 학습을 통해서 값이 결정되는 값을 파라미터라고 한다. 이 중에서 사용자가 값을 결정할 수 있는 파라미터를 하이퍼 파라미터라고 부른다. 하이퍼파라미터는 여러 가지 값을 대입해 보면서 최적의 값을 선택해야 한다. 이렇게 파라미터 값을 변경하면서 최적 값을 찾는 과정을 "모델 튜닝" 이라고 부른다. 📌주의점! 하이퍼 파라미터 튜닝 시, test set을 사용해서는 안된다. Test set은 모델의 최종 성능 평가를 위해서 사용되므로 모델의 학습 과정에서는 절대 사용되어서는 안된다. 따라서 validation set을 추가하여 사용해야 한다. 📚 K-fold crossvalidation Cross validation은 모델 과적합을 감소시키고 모형의 일반화 가..
2023.12.01 09:02 -
[머신러닝] Confusion Matrix, ROC 곡선 개념
📚 Confusion Matrix • 종속변수의 실제값과 예측값에 따른 관측치의 분포를 나타내는 매트릭스로 classification 문제의 주요 평가 지표로 사용된다. '잘못' 예측한 경우 'False'가 붙는다. 사이킷런의 classfication_report 클래스를 이용하면 편하게 계산할 수 있다. • support는 각각 0,1인 관측치의 갯수 • macro avg : 0,1일 때의 값을 단순 평균 =(0.83+0.94)/2 • weighted avg : 전체 데이터에서 0,1에 해당하는 관측치의 갯수에 대해서 가중치를 부여해서 평균을 계산한다. =(0.83*11/30)+(0.94*19/30) 📚AUC •종속변수 값을 무엇으로 예측할 지 기준이 되는 cutoff(threshold) 값을 0부터 ..
2023.12.01 09:01 -
[머신러닝] Logistic Regression 개념
📚 로지스틱 회귀 ✅ 기본 개념 종속변수의 클래스 수가 2개인 경우에는 Binomial Logistic Regression, 3개 이상인 경우에는 Multinomial Logistic Regression을 사용한다. Logistic regression은 y가 1일 확률 P(y=1|X)과 y가 0일 확률을 이용을 모형의 종속변수로 이용 📌크로스 엔트로피 로지스틱 회귀는 위의 교차 엔트로피를 최소화하는 파라미터(b1, b2, ....)를 찾는 방향으로 학습한다. 📌학습 시 참고 로지스틱 회귀에서도 규제를 추가할 수 있다. C값은 1/람다이므로 값이 작아질수록 규제 패널티 텀이 크다는 것을 의미한다. C=1에 비해서 C=0.1인 경우에 모델 학습 후 계수를 출력해보면, 계수가 0인 변수들이 증가한다. ✅ 로지..
2023.12.01 09:00