밍꽁✨
코딩하는 감자
밍꽁✨
전체 방문자
오늘
어제
  • 분류 전체보기 (27)
    • python (16)
      • 파이썬 머신러닝 완벽가이드 (6)
      • 코딩테스트 (4)
      • 머신러닝&딥러닝 (2)
      • 파이썬 기초 (4)
    • Qgis (1)
    • Tableau (6)
    • 빅데이터 분석 기사 (0)
    • 금융데이터 뚝딱이기 (4)
      • 신협 대학생 인턴십 (1)
      • 기사 스크랩 (3)

블로그 메뉴

  • 홈
  • 태그

공지사항

인기 글

태그

  • 태블로
  • NLP
  • 기사스크랩
  • 파이썬기초
  • 코딩테스트
  • sys.stdin.readline()
  • python
  • bisect_right
  • bisect_left
  • 피처백터화
  • 역머니무브
  • 머신러닝
  • Python기초
  • Light GBM
  • LGBM
  • 인프런
  • 파이썬
  • 웰컴투태블로월드
  • 신협인턴십
  • Tableau

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
밍꽁✨

코딩하는 감자

python/파이썬 머신러닝 완벽가이드

[python] 교차검증을 간단하게 cross_val_score()

2022. 3. 15. 15:09
반응형

sklearn은 kfold 교차검증을 보다 편리하게 수행할 수 있는 API를 제공합니다.

바로 cross_val_score() 인데요!

기존에 폴드 세트를 지정하고, for 루프에서 반복으로 학습 및 테스트 데이터의 인덱스를 추출하고, 반복적으로 학습과 예측을 수행하는 일련의 과정을 한번에 수행해주는 API입니다.

특히 classifier 학습을 진행하는 경우 자동으로 stratified KFold 방식을 진행해주기 때문에 더할나위 없이 편하다고 할 수 있겠네요!


cross_val_score() 사용법

cross_val_score(estimator, X, y, scoring=평가지표, cv=교차 검증 폴드 수) 까지가 주요 파라미터라고 할 수 있습니다.

* 여기서 estimator가 classifier 종류이면 내부적으로 stratified KFold 로 진행된다는 뜻 !

 

cv로 지정된 횟수만큼 scoring 파라미터로 지정된 평가 지표로 평가 결괏값을 배열로 반환합니다.

그리고 이를 평균하여 평가 수치로 활용하는 것이 일반적입니다.

### sklearn 기본 데이터인 iris 데이터 활용
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import cross_val_score
from sklearn.datasets import load_iris

iris_data = load_iris()
dt_clf = DecisionTreeClassifier(random_state=42)

data = iris_data.data ## X
label = iris_data.target ## y

### 성능지표는 정확도(accuracy), 교차 검증 세트 3개
scores = cross_val_score(dt_clf, data, label, scoring='accuracy', cv=3)
print('교차 검증별 정확도 : ', np.round(scores, 4))
print('교차 검증 평균 :', np.round(np.mean(scores),4))

이는 DecisionTreeClassifier로 자동적으로 stratified KFold가 수행되었습니다.

 

반응형

'python > 파이썬 머신러닝 완벽가이드' 카테고리의 다른 글

[NLP] pipeline을 활용한 직관적인 코드짜기!  (0) 2022.05.03
[NLP] 피처백터화 / 희소행렬  (0) 2022.05.02
[NLP] NLP 기초, 텍스트 전처리의 모든 것  (0) 2022.04.30
[python] SMOTE를 활용한 오버샘플링  (0) 2022.03.26
[python] LGBMClassifier 단번에 성능 높이기  (0) 2022.03.26
    'python/파이썬 머신러닝 완벽가이드' 카테고리의 다른 글
    • [NLP] 피처백터화 / 희소행렬
    • [NLP] NLP 기초, 텍스트 전처리의 모든 것
    • [python] SMOTE를 활용한 오버샘플링
    • [python] LGBMClassifier 단번에 성능 높이기
    밍꽁✨
    밍꽁✨
    감자의 데이터 분석 일지

    티스토리툴바