군집 평가(Cluster Evaluation) 실루엣 분석(sillhouette analysis) 각 군집 간의 거리가 얼마나 효율적으로 분리되었는지 나타냄 클러스터 내 데이터들이 얼마나 조밀하게 모여있는지 측정하는 도구 다른 군집과 거리는 떨어져있고, 동일 군집끼리의 데이터는 잘 뭉쳐있어야함 군집화가 잘 이루어질수록, 개별 군집은 비슷한 정도의 여유 공간을 가지고 떨어져 있음. 실루엣 계수(Silhouetta coefficient) : 개별 데이터가 가지는 군집화 지표 해당 데이터가 같은 군집 내의 데이터와 얼마나 가깝게 군집 되어있고, 다른 군집에 있는 데이터와는 얼마나 멀리 분리 되어있는지 나타내는 지표 군집 간 비교시, 가장 가까운 군집만 비교해서, 그림에서 군집 C는 무시한다. 군집화 결과 판단..
극도의 불균형 데이터세트의 학습 : 학습을 제대로 수행하기 어려움 오버샘플링, 언더샘플링 지도학습에서 극도로 불균형한 레이블 값의 분포로 인한 문제점을 해결하기 위해 적절한 학습 데이터를 확보하는 방안 오버샘플링 : SMOTE 방식 근접 값 기준으로 중심에 데이터를 생성하는데, 신규 증식하여 오버 샘플링한다. 이상치(Outlier) 데이터 이상치 데이터 : 전체데이터의 패턴에서 벗어난 이상 값을 가진 데이터 이상치로 인해 머신러닝 모델의 성능에 영향을 받는 경우가 발생하기 쉽다. 이상치를 찾는 방법 : IQR(Inter Quantile Range)방식, 사분위(Quantile) 값의 편차를 이용하는 기법, 박스플롯으로 시각화 사분위 : 전체 데이터를 정렬하고, 25% 구간으로 분할(순위제) IQR : Q..
스태킹 앙상블 개별 모델의 예측된 데이터 세트를 다시 기반으로 하여 학습하고 예측하는 메타 모델(블렌딩 모델이라고도함) 개별 알고리즘의 예측 결과 데이터세트를 각각 스태킹 형태로 결합하여 최종 메타 모델의 피처 데이터 세트와 피처 테스트 데이터 세트로 만들고 난 후, 별도의 ML 알고리즘으로 최종 학습을 수행하고 테스트 데이터를 기반으로 다시 최종 예측 수행하는 방식
Gradient Boosting(GBM) 에이다부스트와 유사: 앙상블에 이전까지의 오차를 보정하면서 예측기를 순차적으로 추가 다른 점: 반복 시 샘플의 가중치를 추가하는 대신 이전 예측기가 만든 잔여 오차에 새로운 예측기를 학습 시킴. 가중치 업데이트를 경사 하강법으로 이용 오류값: 실제값 – 예측값 (잔여오차) 이 오류식이 최소화되도록 방향성을 가지고 반복적으로 가중치 값을 업데이트하는 방식 일반적으로 GBM이 랜덤 포레스트보다 예측 성능이 뛰어난 경우가 많지만, 수행 시간이 오래 걸리고 하이퍼파라미터 튜닝 노력도 더 필요함 XGBOOST LighGBM 장점 XGBOOST보다 학습에 걸리는 시간이 짧음 예측 성능은 비슷, 더 작은 메모리 사용량 보다 다양한 기능 제공 단점 데이터 세트가 적은 경우(10..
앙상블 기법(Ensemble methods) 다양한 분석 방법론을 조합해 하나의 예측 모형을 만드는 지도학습 방법론 앙상블은 다양한 분석 방법론을 조합하기 때문에 해석이 어렵지만, 보다 우수한 예측 성능을 갖는다는 장점을 가짐 이는 실생활에서 중요한 결정을 앞두고 여러가지 의견을 모으고 종합해 최종결정을 하는 것과 유사함 예측을 통해서 모델 4개가 예측치를 1, 1, 2, 1로 뽑았다면 다수결의 원칙으로 1을 예측 결과로 반환 앙상블의 특징 단일 모델의 약점을 다수의 모델들을 결합하여 보완 성능이 떨어지더라도 서로 다른 유형의 모델을 섞는 것이 전체 성능에 도움이 될 수 있음 예측기가 가능한 서로 독립적일 때 최고의 성능을 발휘함 서로 다른 알고리즘으로 학습시키면 서로 다른 종류의 오차를 만들 가능성이 ..
분류(classification)의 개요 학습 데이터로 주어진 피처와 레이블(결정값, 클래스값)을 머신러닝 알고리즘으로 학습해 모델을 생성하고, 이렇게 생성된 모델 에 새로운 데이터값이 주어졌을때 미지의 레이블을 예측하는 것. 기존 데이터가 어떤 레이블에 속하는지 패턴을 알고리즘으로 학습 -> 새롭게 관측된 데이터의 레이블을 판별 분류 알고리즘 나이브베이즈 - 베이즈 통계와 생성 모델 독립 변수와 종속 변수와 선형 관계성에 기반에 로지스틱 회귀 데이터 균일도에 따른 규칙 기반 결정 트리 개별 클래스 간의 최대 분류 마진을 효과적으로 찾아주는 SVM 근접 거리를 기준으로 하는 최소 근접 알고리즘(KNN nearest Neighbor) 심층 연결 기반의 신경망(딥러닝) 서로 다른(같은) 머신 러닝 알고리즘을..
분류(classification) 대표적인 지도학습 유형의 머신러닝 기법 데이터에 주어진 클래스 값을 학습하여 각 클래스를 구별할 수 있는 패턴을 찾아 학습 모델을 생성하고, 새로운 데이터에 대한 클래스를 예측 로지스틱 회귀(Logistic Regression) 선형 회귀 방식을 ‘참/거짓'의 분류에 적용한 기법 선형 회귀와 동일하게 선형 방정식을 학습함 z = w1x1 + w2x2 + w3x3 ... + wnxn(선형회귀) 일 때 z를 0과 1사이의 확률 값을 만드려면? 승산비(odds)를 활용하여 시그모이드 함수를 유도한 뒤, 시그모이드 함수 z에 적용한다. 분석 기법의 이름 자체에 '회귀'라는 단어가 들어가 있지만 다른 회귀 모형의 목적과 다르게 분류를 수행한다. 즉, 로지스틱..
좋은 모델이란? 현재 데이터를 잘 설명하고 미래 데이터를 잘 예측하는 모델 복잡한 모델의 문제점 분산이 높고(고분산, 과대적합) 노이즈가 심하다 모델 규제 : 각 도립변수(특성)의 계수를 작게 만들어 과대적합을 감소시키는 것 다항식의 차수를 감소시키는 것 선형회귀인 경우 : 모델의 가중치를 제한 릿지, 라쏘, 엘라스틱넷 회귀 모델 규제(regularization) 규제의 정의 손실함수(비용함수)에 임의의(alpha) 값으로 페널티를 부여해 회귀 계수 값의 크기를 감소시켜 과적합을 개선하는 방식 규제(정규화)의 목표 회귀 계수의 크기(가중치)를 제어해 과적합을 개선 규제의 효과 및 해석 과적합(고분산)된 파라미터 값에 대해 규제(페널티)를 부여하게 됨(계수를 작게하거나 높임) 규제를 추가하게 되면 규제가 ..
일반화 오차 = 분산 + 편향 ** 2 + 노이즈 편향(Bias) 일반화 오차 중 잘못된 가정으로 생긴 오차 데이터 또는 학습 모델이 정답으로부터 얼마나 특정 방향으로 치우쳐있는가를 의미함 학습모델의 예측값이 정답과 멀리 치우친 경향이 있을 때 고편향(high-bias)되어 있다고함(과소 적합) 분산(Variance) 훈련 데이터셋에 내재된 작은 변동에 의해 발생된 오차 데이터 또는 학습 모델이 얼마나 넓은 범위에 걸쳐 분포되어 있는가를 의미함 높은 분산값(high variance)은 학습 모델에서 예측값이 넓게 흩어져 있어 변동성이 높은 때를 말하며 과대 적합되는 경향이 있음 편향-분산 트레이드오프(Bias-variance tradeoff/dilemma) 지도 학습 알고리즘이 훈련 데이터셋의 범위를 넘..
다항회귀를 이용한 과적합 이해 좋은 모델이란? 과적합(과대적합, 과소적합) 모델의 적합성과 일반화 오차 훈련 데이터를 이용하여 학습한 모델이 아직 얻지 못한 데이터(검증 데이터)에 대한 결과값을 얼마나 정확하게 예측할 수 있는지 판단하기 위해 필요한 개념. 적합도: 가지고 있는 데이터(훈련 데이터)에 대해 모델을 적용했을 때 들어맞는 정도 예측 정확도: 아직 얻지 못한 데이터(검증 데이터)에 대해 모델을 적용했을 때 들어맞는 정도 일반화 오차: 아직 얻지 못한 데이터에 대한 예측 오차 ※ 훈련데이터(트레이닝 데이터) : 파라미터 추정에 사용하는 데이터 ※ 테스트 데이터: 일반화오차를 평가하기 위해 파라미터 추정에 사용하지 않고 남겨둔 데이터. 파라미터 추정에 사용하지 않은 테스트 데이터로 모델의 성능을 ..
다항회귀(Polynomial Regression) 독립 변수가 단순한 단 형식이 아닌 2,3,차 등으로 표현되는 것 데이터가 단순한 직선이 아닌 복잡한 형태인 경우, 산점도 산의 관측값을 통과하나는 추세선을 그렸을 때 개의 굴절이 과찰되면 이를 n차 향식으로 모델링 독립변수와 종속변수의 관계를 다차 다항식으로 표현 다중 선형회귀의 특별한 형태, 특성을 변환(차수의 변환)한 후 다중 선형회귀와 같은 방식으로 비선형 관계를 모델링함 차수가 증가하면 곡선 모델(비선형모델)이 될 때 다항회귀라고 함 장점 : 두 입력변수 사이의 관계성을 설명해서 데이터를 잘 설명한다. 사이킷런의 변환기(transformer) 변환기 : 특성을 만들거나 전처리하기위한 다양한 클래스를 제공 다향회귀를 위한 변환기: from skle..
Feature Scaling 데이터 변환 중 가장 중요한 변환 중 하나/ 대부분의 머신러닝 알고리즘은 입력 숫자 특성들의 스케일이 많이 다르면 잘 작동하지 않음(Decision Tree 예외) 정규화(Normalization) 모든 값이 0 ~ 1 사이에 들도록 범위를 조정(feature_range로 조정 가능) sklearn.preprocessing.MinMaxScaler 표준화(Standardization) 평균을 뺀 후 표준편차로 나누어 평균 0, 분산 1이 되는 분포로 전환 각 특성값이 0에서 표준 편차의 몇 배만큼 떨어져 있는가 Min-max 스케일링과 달리 표준화는 범위의 상한과 하한이 없음 신경망의 경우 입력값의 범위를 0~1로 기대함 표준화는 이상치에 영향을 덜 받음(vs.min-max 스..