모델 복잡도 이해

Beginner

This tutorial is from open-source community. Access the source code

소개

이 실험에서는 모델 복잡성이 예측 정확성과 계산 성능에 미치는 영향을 살펴봅니다. 회귀를 위한 Diabetes 데이터셋과 분류를 위한 20newsgroups 데이터셋을 사용합니다. 선택된 세 가지 추정기 (estimator) 에서 모델 복잡성의 영향을 분석합니다.

  • SGDClassifier (분류 데이터용): 확률적 경사 하강법 학습을 구현합니다.
  • NuSVR (회귀 데이터용): Nu 서포트 벡터 회귀를 구현합니다.
  • GradientBoostingRegressor: 순차적 단계별 방식으로 가산 모델을 구축합니다.

선택된 모델의 관련 모델 매개변수를 변경하여 모델 복잡성을 조절합니다. 이어서 계산 성능 (지연 시간) 과 예측력 (MSE 또는 해밍 손실) 에 미치는 영향을 측정합니다.

VM 팁

VM 시작이 완료되면 왼쪽 상단 모서리를 클릭하여 Notebook 탭으로 전환하여 연습을 위한 Jupyter Notebook에 접속합니다.

때때로 Jupyter Notebook 이 완전히 로드되기까지 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제약으로 인해 작업 검증을 자동화할 수 없습니다.

학습 중 문제가 발생하면 Labby 에 문의하십시오. 세션 후 피드백을 제공하면 문제를 신속하게 해결해 드리겠습니다.

데이터 로드

회귀를 위한 diabetes 데이터셋과 분류를 위한 20newsgroups 데이터셋을 모두 로드합니다.

매개변수 선택

각 추정기 (estimator) 에 필요한 모든 값을 포함하는 딕셔너리를 만들어 매개변수를 선택합니다. 각 추정기마다 변화하는 매개변수, 복잡도 레이블, 복잡도 컴퓨터, 데이터 및 기타 구성 값을 정의합니다.

벤치마크 영향

주어진 추정기에 대한 매개변수의 영향을 계산합니다. 각 라운드에서 변화하는 매개변수의 새로운 값으로 추정기를 설정하고 예측 시간, 예측 성능 및 복잡도를 수집하여 이러한 변경 사항이 추정기에 미치는 영향을 확인합니다. 매개변수로 전달된 복잡도 컴퓨터를 사용하여 복잡도를 계산합니다.

결과 플롯

모델 복잡도가 정확성과 지연 시간에 미치는 영향을 플롯합니다. y 축에는 예측 오류 (prediction error) 를, x 축에는 모델 복잡도를 사용합니다. 동일한 그래프에 예측 오류와 예측 지연 시간 (prediction latency) 을 모두 플롯합니다.

요약

이 실험에서는 모델 복잡도가 예측 정확도와 계산 성능에 미치는 영향을 탐구했습니다. 선택한 각 모델에서 관련 모델 매개변수를 변경하여 모델 복잡도를 조절했습니다. 그런 다음 계산 성능 (지연 시간) 과 예측력 (MSE 또는 해밍 손실) 에 미치는 영향을 측정했습니다. 결론적으로, 더 복잡한 모델은 더 긴 학습 시간이 필요하며 예측 오류를 줄인다고 보장하지 않습니다.