본문 바로가기

AI/머신러닝13

부분의존도그림(Partial dependence plot, PDP)란? 부분의존도그림이란 부분 의존도 그림은 특성의 값에 따라서 타겟값이 증가/감소하느냐와 같은 어떻게 영향을 미치는지에 대한 정보를 파악할수있다. 즉 머신러닝 모델의 예측 결과에 대해 하나 또는 두 개의 특성이 갖는 한계 효과(marginal effect)를 보여준다는 의미이다. 부분 의존도 그림은 대상과 특성 사이의 관계가 선형인지, 단조로운지 또는 더 복잡한지 여부를 표시할 수 있다. 특성 하나를 표현하면 2d작업이 진행되고 두 특성은 3d 형태를 띄기 때문에 더 이상의 표현은 어렵기에 2개까지만 표현한다고 함 2022. 3. 15.
데이터 랭글링(Data Wrangling)이란? 데이터 랭글링이란? 데이터 랭글링은 분석을 하거나 모델을 만들기 전에 데이터를 사용하기 쉽게 원천 데이터(raw data)를 분석하기 좋은 데이터로 변환하는 작업을 의미한다. 데이터 랭글링은 총 5단계로 나눠지며 아래와 같다 Gather(데이터 모으기) - 스크래핑, API 등으로 데이터를 모으는 단계이다. Assess(데이터 평가하기) - 1단계에서 모은 데이터가 깨끗한지 아닌지 판단하는 단계이다. Clean(데이터 정제하기) - 2단계에서 평가한 데이터를 어떻게 정제할지, 코딩할지, 테스트하는 단계이다. Reassess and lterate (데이터 재평가) - 2단계로 돌아가 다시 데이터가 잘 정제되었는지 판단하며 필요한만큼 2~4과정을 반복한다 Store(데이터 저장) 2022. 3. 14.
특성 중요도(feature importance)란? 특성 중요도란?(feature importance) 결정트리에서 모델의 변화 정도를 파악하기 위해 사용되는 지표(?) 즉 종속변수에 미치는 독립변수의 영향력을 알아보기 위해 필요하다. (선형회귀모델에서는 회귀계수가 이 역할을 했다.) 특성 중요도의 합은 1이며 특성 중요도가 높은 feature 일수록 노드를 나눌 때 더 자주, 우선적으로 이용된다. 랜덤포레스트에서는 학습 후에 특성들의 중요도 정보(Gini importance)를 기본으로 제공한다. 평균 불순도 감소란? (Mean Decrease Impurity MDI) = ? MDG(gini) 특성 중요도의 계산을 하는 방법이다. 각 노드에서 해당 feature를 기준으로 분류(split)하는 지점에서의 decrease of impurity(불순도)의 .. 2022. 3. 14.
K-겹 교차검증(k-fold cross-validation) 이란? k-겹 교차검증(CV)이란 전체 데이터셋을 k개의 fold로 나누어 k번동안 다른 fold 1개를 test data 그리고 나머지(k-1)개의 fold를 train data로 분할하는 과정을 반복하며 train, test data를 교차 변경하여 검증하는 방법이다. k fold cv를 하기 위해 보통 5~10개의 fold를 사용하며 최적의 k값을 찾기 위한 실험적 검증이 필요하다. 아래와 같은 경우에는 CV 수행 시 오히려 모델 성능이 악화될 수 있다. - 순서가 고려된 데이터(시계열 데이터)가 shuffle 되어 있지 않은 경우 - 데이터 불균형(Data Imbalance) → 층화 교차검증(Stratified K-fold CV)을 통해 보완 - 각기 다른 fold에 같은 데이터(i.e., duplic.. 2022. 3. 7.
교차검증(Cross-validation)이란? 지금까지 머신러닝을 학습하며 일반적으로 train,validation,test로 데이터를 나누어 학습을 해왔다. 하지만 만약 훈련,검증,테스트 자료가 부족하다면 어떻게 해야할까? 그런 질문에 대한 답이 교차검증이 될 수도 있다. 교차검증의 사전적인 의미는 하나의 문제 또는 사건과 같은 일들을 서로 다른 시각, 여러 자료를 토대로 정확성을 높이기 위하여 행하는 가장 기본적인 검사방법이다. 머신런닝에서 교차검증이란 모델링을 위한 훈련용 및 시험용 데이터를 교차 변경하여 검증하는 것이다. 교차검증은 아래와 같은 장점을 가지고 있다. 학습에 사용가능한 데이터가 충분하지 않다면 훈련 모델을 이용하여 더욱 일반화 시키는 것이 가능하다. 과적합이 방지 될 수 있다. 과소적합이 방지될 수 있다. 주어진 데이터셋에 학습.. 2022. 3. 7.
Confusion Matrix란? 혼동 행렬(Confusion Matrix)이란? 분류 모델을 학습하는 것의 목적은 주어진 데이터를 의도에 맞게 잘 분류하는 것인데 분류 모델의 성능 평가를 할 때 사용되는 지표가 혼동 행렬이다. TP: positive로 예측했는데 맞았다 즉 1인 레이블을 1이라고 하는 경우 -> 관심 범주를 정확하게 분류한 값 FP: false로 예측했는데 틀렸다. 즉 0인 레이블을 1이라고 하는 경우 -> 관심 범주라고 잘못 분류한 값 FN:negatives로 예측했는데 틀렸다.즉 0인 레이블을 0이라고 하는 경우 -> 관심 범주가 아닌 것을 잘못 분류한 값 TN:negatives로 예측했는데 맞았다. 즉 0인 레이블을 0이라고 하는 경우 -> 관심 범주가 아닌 것을 정확하게 분류한 값 이러한 4가지의 정보를 바탕으로.. 2022. 3. 4.
랜덤 포레스트(Random Forests), 앙상블 기법 랜덤 포레스트(Random Forests)란? 머신 러닝에서 분류,회귀 분석 등에 사용되는 앙상블 학습 방법의 일종으로, 훈련 과정에서 구성한 다수의 결정 트리로부터 분류 또는 평균 예측치(회귀 분석)을 출력함으로써 동작한다. 특성을 랜덤한 방식으로 추출하며 트리가 서로 독립적인 방식(서로 영향을 안주는)으로 추출된다. 즉 이 말은 모든 특성을 사용하지는 않는다는 의미이다. 앙상블 학습 방법(Ensemble Learning)이란? 앙상블의 의미는 전체적인 어울림을 의미한다고 한다. 이 의미와 큰 상관이 있어 보이지 않지만 앙상블 기법은 하나의 모델로 원하는 성능을 낼 수 없을 때 다수의 약한 알고리즘이나 다수의 모델(기본 모델(Weak base Learner))들을 *조합 하여 *여기서 기본모델들을 조합.. 2022. 3. 3.
결정트리(Decision Tree) 이란? 결정트리란? 결정 트리 모델은 데이터의 특성들을 기준으로 샘플을 분류해 나가는데 그 모양이 나무를 닮아 결정 트리라고 불리운다. 결정트리의 각 노드는 " 뿌리(루트 노드), 규칙 노드(중간), 리프 노드(말단) " 로 나뉘며 어떤 기준으로 규칙(어떻게 데이터를 분할해야 할지)을 만들어야 가장 효율적인 분류가 될 것인지가 알고리즘의 성능을 좌우한다. 결정트리는 분류와 회귀문제에 모두 적용이 가능하며 새로운 데이터가 특정 말단 노드의 빈도가 가장 높은 범주로 데이터를 분류한다. 규칙(데이터의 분류)가 많아 질수록 예측을 위한 학습이 잘 된다라고 말할 수 있지만 반대로 동시에 복잡하다는 의미를 가지며이는 과적합의 문제가 발생할 수 있다. 좋은 결정트리 학습 알고리즘이란? 앞서 말했지만 결정트리를 만든다는 것은.. 2022. 3. 2.