Main Content

분류 학습기 앱을 사용한 특징 선택 및 특징 변환

산점도 플롯에서 특징 조사하기

분류 학습기에서 산점도 플롯에 서로 다른 예측 변수 쌍을 플로팅하여 클래스를 잘 구분하는 예측 변수를 식별해 봅니다. 플롯은 포함하거나 제외할 특징을 조사하는 데 도움이 될 수 있습니다. 산점도 플롯에 훈련 데이터와 오분류된 점을 시각화할 수 있습니다.

분류기를 훈련시키기 전에는 산점도 플롯에 데이터가 표시됩니다. 분류기를 훈련시키면 산점도 플롯에 모델 예측 결과가 표시됩니다. 플롯 컨트롤에서 데이터를 선택하여 데이터만 플로팅하는 것으로 전환합니다.

  • 예측 변수X 목록과 Y 목록을 사용하여 플로팅할 특징을 선택합니다.

  • 클래스를 잘 구분하는 예측 변수를 찾습니다. 예를 들어 fisheriris 데이터를 플로팅하면 꽃받침 길이와 꽃받침 너비가 클래스 중 하나(setosa)를 잘 구분함을 알 수 있습니다. 다른 두 클래스를 구분할 수 있는지 확인하려면 다른 예측 변수를 플로팅해야 합니다.

    Scatter plot of the Fisher iris data

  • 표시의 체크박스를 사용하여 특정 클래스를 표시하거나 숨깁니다.

  • 클래스에서 클래스를 선택한 다음 맨 앞으로 이동을 클릭하여 플로팅된 클래스의 쌓임 순서를 변경합니다.

  • 플롯 전반에서 확대/축소하고 패닝하여 세부 사항을 더 자세하게 조사합니다. 확대/축소 또는 패닝을 활성화하려면 산점도 플롯 위에 마우스를 올려놓고 플롯의 오른쪽 상단 위에 나타나는 도구 모음에서 해당 버튼을 클릭합니다.

  • 클래스를 구분하는 데 유용하지 않은 예측 변수를 식별하는 경우 특징 선택을 사용하여 해당 예측 변수를 제거하고 가장 유용한 예측 변수만 포함하여 분류기를 훈련시켜 봅니다. 포함할 특징 선택하기 항목을 참조하십시오.

분류기를 훈련시킨 후에는 산점도 플롯에 모델 예측 결과가 표시됩니다. 올바른 결과 또는 잘못된 결과를 표시하거나 숨길 수 있으며 클래스별로 결과를 시각화할 수 있습니다. 분류기 결과 플로팅하기 항목을 참조하십시오.

앱에서 만든 산점도 플롯을 Figure로 내보낼 수 있습니다. Export Plots in Classification Learner App 항목을 참조하십시오.

포함할 특징 선택하기

분류 학습기에서 모델에 포함할 다양한 특징(또는 예측 변수)을 지정할 수 있습니다. 예측 검정력이 낮은 특징을 제거하여 모델을 향상시킬 수 있는지 확인합니다. 데이터 수집에 비용이 많이 들거나 수집이 어렵다면 일부 예측 변수가 없어도 만족스러운 성능을 발휘하는 모델을 선호할 수 있습니다.

다양한 특징 순위 지정 알고리즘을 사용하여 어떤 중요한 예측 변수를 포함할지 결정할 수 있습니다. 특징 순위 지정 알고리즘을 선택한 후 앱에는 정렬된 특징 중요도 점수의 플롯이 표시되며, 여기서 점수가 클수록(Inf 포함) 특징 중요도가 높음을 나타냅니다. 또한 순위가 지정된 특징과 그 점수도 테이블에 표시됩니다.

분류 학습기에서 특징 순위 지정 알고리즘을 사용하려면 학습 탭의 옵션 섹션에서 특징 선택을 클릭합니다. 디폴트 특징 선택 탭이 열리면, 여기서 특징 순위 지정 알고리즘을 선택할 수 있습니다.

특징 순위 지정 알고리즘지원되는 데이터형설명
MRMRcategorical형 특징 및 연속 특징

Minimum Redundancy Maximum Relevance (MRMR) Algorithm을 사용하여 순차적으로 특징의 순위를 지정합니다.

자세한 내용은 fscmrmr 항목을 참조하십시오.

Chi2categorical형 특징 및 연속 특징

개별 카이제곱 검정을 사용하여 각 예측 변수가 응답 변수에 대해 독립적인지 여부를 조사한 다음, 카이제곱 검정 통계량의 p-값을 사용하여 특징의 순위를 지정합니다. 점수는 –log(p)에 대응합니다.

자세한 내용은 fscchi2 항목을 참조하십시오.

ReliefF모든 categorical형 특징 또는 모든 연속 특징

최근접이웃이 10개인 ReliefF 알고리즘을 사용하여 특징의 순위를 지정합니다. 이 알고리즘은 관측값 사이의 쌍별 거리를 사용하여 응답 변수를 예측하는 거리 기반 지도 모델의 특징 중요도를 추정하는 데 가장 적합합니다.

자세한 내용은 relieff 항목을 참조하십시오.

ANOVAcategorical형 특징 및 연속 특징

각 예측 변수에 대해 클래스별로 그룹화된 일원분산분석을 수행한 다음 p-값을 사용하여 특징의 순위를 지정합니다. 앱은 각 예측 변수에 대해 '모집단 평균이 모두 같지는 않다'는 대립가설에 대해 '응답 변수 클래스별로 그룹화된 예측 변수 값은 평균이 동일한 모집단에서 추출되었다'는 가설을 검정합니다. 점수는 –log(p)에 대응합니다.

자세한 내용은 anova1 항목을 참조하십시오.

Kruskal Walliscategorical형 특징 및 연속 특징

Kruskal-Wallis Test이 반환한 p-값을 사용하여 특징의 순위를 지정합니다. 앱은 각 예측 변수에 대해 '모집단 중앙값이 모두 같지는 않다'는 대립가설에 대해 '응답 변수 클래스별로 그룹화된 예측 변수 값은 중앙값이 동일한 모집단에서 추출되었다'는 가설을 검정합니다. 점수는 –log(p)에 대응합니다.

자세한 내용은 kruskalwallis 항목을 참조하십시오.

순위가 가장 높은 특징을 선택하는 것과 개별 특징을 선택하는 것 중에서 하나를 선택합니다.

  • 검증 메트릭에 편향을 방지하려면 순위가 가장 높은 특징 선택을 선택합니다. 예를 들어 교차 검증 방식을 사용하는 경우 앱은 모델 훈련 전에 각 훈련 겹에 대해 특징 선택을 수행합니다. 각 겹마다 서로 다른 예측 변수를 가장 높은 순위의 특징으로 선택할 수 있습니다.

  • 모델 훈련에 특정 특징을 포함하려면 개별 특징 선택을 선택합니다. 교차 검증 방식을 사용하는 경우 앱은 모든 훈련 겹에 동일한 특징을 사용합니다.

특징을 선택하고 나면 저장 및 적용을 클릭합니다. 선택한 특징은 모델 창에 있는 모든 훈련 전 상태의 모델에 적용되며, 학습 탭의 모델 섹션에 있는 갤러리를 사용하여 만든 새로운 훈련 전 상태의 모델에 적용됩니다.

훈련 전 상태의 단일 모델에 대한 특징을 선택하려면 모델 요약을 열어 편집합니다. 모델 창에서 모델을 클릭한 다음 모델 요약 탭을 클릭합니다(필요한 경우). 요약 탭에는 편집 가능한 특징 선택 섹션이 포함되어 있습니다.

모델을 훈련시킨 후 모델 요약 탭의 특징 선택 섹션에는 전체 모델(즉, 훈련 데이터와 검증 데이터를 사용하여 훈련된 모델)을 훈련하는 데 사용되는 특징이 나열됩니다. 분류 학습기가 특징 선택을 데이터에 적용하는 방법에 대해 자세히 알아보려면 훈련된 분류기의 코드를 생성하십시오. 자세한 내용은 Generate MATLAB Code to Train the Model with New Data 항목을 참조하십시오.

특징 선택을 사용하는 예제는 Train Decision Trees Using Classification Learner App 항목을 참조하십시오.

분류 학습기에서 PCA를 사용하여 특징 변환하기

예측 변수 공간의 차원을 줄이려면 PCA(주성분 분석)를 사용합니다. 차원을 축소하면 분류 학습기에서 과적합을 방지하는 데 도움이 되는 분류 모델을 만들 수 있습니다. PCA는 중복 차원을 제거하기 위해 예측 변수를 선형으로 변환하고, 주성분이라고 하는 새로운 변수 집합을 생성합니다.

  1. 학습 탭의 옵션 섹션에서 PCA를 선택합니다.

  2. 디폴트 PCA 옵션 대화 상자에서 PCA 사용 체크박스를 선택한 다음 저장 및 적용을 클릭합니다.

    모델 창에 있는 모든 훈련 전 상태의 모델과, 학습 탭의 모델 섹션에 있는 갤러리를 사용하여 만든 새로운 훈련 전 상태의 모델에 변경 내용이 적용됩니다.

  3. 다음에 모두 훈련 버튼을 사용하여 모델을 훈련할 때, 분류기를 훈련하기 전에 pca 함수가 선택된 특징을 변환합니다.

  4. 기본적으로 PCA는 분산의 95%를 설명하는 성분만 유지합니다. 디폴트 PCA 옵션 대화 상자에서 설명분산 값을 선택하여 설명할 분산의 백분율을 변경할 수 있습니다. 값이 높을수록 과적합이 발생할 위험이 있고, 값이 낮을수록 유용한 차원이 제거될 위험이 있습니다.

  5. PCA 성분 개수를 제한하려면 성분 감소 기준 목록에서 성분 개수 지정을 선택합니다. 숫자형 성분 개수 값을 선택합니다. 성분 개수는 숫자형 예측 변수 개수보다 크면 안 됩니다. categorical형 예측 변수에는 PCA가 적용되지 않았습니다.

요약 탭의 PCA 섹션에서 훈련된 모델에 대한 PCA 옵션을 확인할 수 있습니다. 모델 창에서, 훈련된 모델을 클릭한 다음 필요한 경우 모델 요약 탭을 클릭합니다. 예를 들면 다음과 같습니다.

PCA is keeping enough components to explain 95% variance. 
After training, 2 components were kept. 
Explained variance per component (in order): 92.5%, 5.3%, 1.7%, 0.5%
설명분산 백분율을 확인하여 성분 개수를 변경할지 여부를 결정합니다.

분류 학습기가 PCA를 데이터에 적용하는 방법에 대해 자세히 알아보려면 훈련된 분류기의 코드를 생성하십시오. PCA에 대한 자세한 내용은 pca 함수를 참조하십시오.

평행좌표 플롯에서 특징 조사하기

포함하거나 제외할 특징을 조사하려면 평행좌표 플롯을 사용합니다. 단일 플롯에 고차원 데이터를 시각화하여 2차원 패턴을 볼 수 있습니다. 플롯을 사용하면 특징 간의 관계를 이해하고 클래스를 구분하는 데 유용한 예측 변수를 식별할 수 있습니다. 평행좌표 플롯에 훈련 데이터와 오분류된 점을 시각화할 수 있습니다. 분류기 결과를 플로팅할 때 오분류된 점에는 파선이 있습니다.

  1. 학습 탭의 플롯 및 결과 섹션에서 화살표를 클릭하여 갤러리를 연 다음 검증 결과 그룹에서 평행좌표를 클릭합니다.

  2. 플롯에서 X 눈금 레이블을 끌어서 놓아 예측 변수를 재정렬합니다. 순서를 변경하면 클래스를 잘 구분하는 예측 변수를 식별하는 데 도움이 됩니다.

  3. 플로팅할 예측 변수를 지정하기 위해 예측 변수 체크박스를 사용합니다. 한 번에 몇 개의 예측 변수만 플로팅하는 것이 좋습니다. 데이터에 예측 변수가 많은 경우 플롯에는 기본적으로 처음 10개의 예측 변수가 표시됩니다.

  4. 예측 변수의 스케일이 크게 다를 경우 시각화를 쉽게 하기 위해 데이터를 스케일링합니다. 스케일링 목록에서 다른 옵션을 사용해 보십시오.

    • 안 함은 최소 제한과 최대 제한이 동일한 좌표 눈금자를 따라 원시 데이터를 표시합니다.

    • 범위는 독립적인 최소 제한과 최대 제한을 갖는 좌표 눈금자를 따라 원시 데이터를 표시합니다.

    • Z-점수는 각 좌표 눈금자를 따라 z-점수(평균 0, 표준편차 1)를 표시합니다.

    • 0 평균은 각 좌표 눈금자를 따라 평균이 0이 되도록 중심화된 데이터를 표시합니다.

    • 단위 분산은 각 좌표 눈금자를 따라 표준편차로 스케일링한 값을 표시합니다.

    • L2 노름은 각 좌표 눈금자를 따라 2-노름 값을 표시합니다.

  5. 클래스를 구분하는 데 유용하지 않은 예측 변수를 식별하는 경우 특징 선택을 사용하여 해당 예측 변수를 제거하고 가장 유용한 예측 변수만 포함하여 분류기를 훈련시킵니다. 포함할 특징 선택하기 항목을 참조하십시오.

fisheriris 데이터의 플롯은 꽃잎 길이 특징과 꽃잎 너비 특징이 클래스를 가장 잘 구분한다는 것을 보여줍니다.

Parallel coordinates plot displaying classifier results for the Fisher iris data

자세한 내용은 parallelplot 항목을 참조하십시오.

앱에서 만든 평행좌표 플롯을 Figure로 내보낼 수 있습니다. Export Plots in Classification Learner App 항목을 참조하십시오.

관련 항목