ML.NET 모델 개선

ML.NET 모델을 개선하는 방법을 알아봅니다.

문제 재구성

경우에 따라 모델 향상이 모델 학습에 사용된 데이터나 기법과는 아무런 관련이 없을 수 있습니다. 그보다는 단순히 잘못된 질문 때문일 수 있습니다. 문제를 다른 관점에서 보고 데이터를 활용하여 보이지 않는 지표와 숨겨진 관계를 추출해 질문을 구체화합니다.

더 많은 데이터 샘플 제공

사람과 마찬가지로 학습 알고리즘도 더 많이 알수록 성능이 높아질 가능성이 높아집니다. 모델 성능을 높이는 한 가지 방법은 알고리즘에 더 많은 학습 데이터 샘플을 제공하는 것입니다. 더 많은 데이터에서 학습할수록 정확히 식별하는 경우가 늘어납니다.

데이터에 컨텍스트 추가

단일 데이터 포인트의 의미는 다르게 해석될 수 있습니다. 데이터 포인트에 대한 컨텍스트를 구축하면 알고리즘과 사안 전문가들이 더 나은 의사 결정을 내리는 데 도움이 됩니다. 유효한 자체 가격 지표가 없는 침실 세 개가 있는 집을 예로 들어 보겠습니다. 컨텍스트를 추가하고 평균 연령 38세, 평균 가계 소득은 $80,000이며 학군이 상위 20번째 백분위수인 대도시 근교에 위치한다는 점을 알고 있으면 알고리즘이 더 많은 정보를 바탕으로 의사 결정을 내릴 수 있습니다. 이 모든 컨텍스트는 기계 학습 모델에 대한 입력에서 기능으로 추가됩니다.

의미 있는 데이터 및 기능 사용

더 많은 데이터 샘플 및 기능은 모델 정확도를 높일 수 있지만 모든 데이터와 기능이 의미 있는 것은 아니므로 잡음도 발생할 수 있습니다. 따라서 알고리즘에 의한 의사 결정에 가장 중대한 영향을 미치는 기능이 무엇인지 이해하는 것이 중요합니다. PFI(순열 기능 중요도) 같은 기법을 사용하면 이런 중요한 기능을 파악할 수 있습니다. 또한 모델을 설명할 뿐 아니라 출력을 기능 선택 메서드로 사용하여 학습 프로세스에 발생하는 불필요한 기능의 규모를 줄일 수 있습니다.

PFI 사용에 대한 자세한 내용은 순열 기능 중요도를 사용하여 예측 모델 설명을 참조하세요.

교차 유효성 검사

교차 유효성 검사는 학습 데이터를 여러 파티션으로 분할하고 이 파티션에서 여러 알고리즘을 학습하는 학습 및 모델 평가 기법입니다. 이 기법은 학습 프로세스 밖에서 데이터를 유지하여 모델의 견고성을 높입니다. 보이지 않는 관찰에 대한 성능 향상 외에도, 데이터 제약 환경에서 데이터 세트가 더 적은 학습 모델에 효과적인 도구가 될 수 있습니다.

다음 링크에서 ML.NET에서 교차 유효성 검사를 사용하는 방법을 확인하세요.

하이퍼 매개 변수 조정

기계 학습 모델 교육은 반복적인 예비 프로세스입니다. 예를 들어, K-Means 알고리즘을 사용하여 모델을 학습할 때 최적 클러스터 수는 얼마일까요? 이 답은 데이터 구조 등, 여러 요인에 따라 결정됩니다. 이 값을 찾을 때는 여러 k 값을 통한 실험과 성능 평가를 통해 최적 값을 결정합니다. 최적의 모델을 찾기 위해 학습 프로세스를 안내하는 매개 변수를 튜닝하는 방법을 하이퍼 매개 변수 튜닝이라고 합니다.

다른 알고리즘 선택

회귀 및 분류와 같은 기계 학습 작업에는 다양한 알고리즘 구현이 포함됩니다. 해결하려는 문제와 데이터가 구조화된 방식이 현재 알고리즘에 잘 맞지 않는 경우가 있을 수 있습니다. 이런 경우 작업에 다른 알고리즘을 사용하여 데이터에서 학습 성과가 더 좋은지 확인해 봅니다.

다음 링크는 알고리즘 선택을 위한 상세 지침을 제공합니다.