홀드 아웃 데이터 세트에 대한 h2o AutoML에서 교차 검증 성능 (AUC)을 검색합니다.

안드레아스

기본 교차 검증 ( nfolds=5)을 사용하여 h2o AutoML로 이진 분류 모델을 훈련하고 있습니다. 변동성을 계산하려면 각 홀드 아웃 폴드에 대한 AUC 점수를 얻어야합니다.

이것은 내가 사용하는 코드입니다.

h2o.init()

prostate = h2o.import_file("https://h2o-public-test-data.s3.amazonaws.com/smalldata/prostate/prostate.csv")
# convert columns to factors
prostate['CAPSULE'] = prostate['CAPSULE'].asfactor()
prostate['RACE'] = prostate['RACE'].asfactor()
prostate['DCAPS'] = prostate['DCAPS'].asfactor()
prostate['DPROS'] = prostate['DPROS'].asfactor()

# set the predictor and response columns
predictors = ["AGE", "RACE", "VOL", "GLEASON"]
response_col = "CAPSULE"

# split into train and testing sets
train, test = prostate.split_frame(ratios = [0.8], seed = 1234)


aml = H2OAutoML(seed=1, max_runtime_secs=100, exclude_algos=["DeepLearning", "GLM"],
                    nfolds=5, keep_cross_validation_predictions=True)

aml.train(predictors, response_col, training_frame=prostate)

leader = aml.leader

나는 그 확인 leaderStackedEnsamble 모델 (있는 검증 메트릭을 사용할 수 없습니다)이 아니다. 어쨌든 5 개의 AUC 점수를 검색 할 수 없습니다.

그렇게하는 방법에 대한 아이디어가 있습니까?

에린 르델

방법은 다음과 같습니다.

import h2o
from h2o.automl import H2OAutoML

h2o.init()

# import prostate dataset
prostate = h2o.import_file("https://h2o-public-test-data.s3.amazonaws.com/smalldata/prostate/prostate.csv")
# convert columns to factors
prostate['CAPSULE'] = prostate['CAPSULE'].asfactor()
prostate['RACE'] = prostate['RACE'].asfactor()
prostate['DCAPS'] = prostate['DCAPS'].asfactor()
prostate['DPROS'] = prostate['DPROS'].asfactor()

# set the predictor and response columns
predictors = ["AGE", "RACE", "VOL", "GLEASON"]
response_col = "CAPSULE"

# split into train and testing sets
train, test = prostate.split_frame(ratios = [0.8], seed = 1234)

# run AutoML for 100 seconds
aml = H2OAutoML(seed=1, max_runtime_secs=100, exclude_algos=["DeepLearning", "GLM"],
                    nfolds=5, keep_cross_validation_predictions=True)
aml.train(x=predictors, y=response_col, training_frame=prostate)

# Get the leader model
leader = aml.leader

교차 검증 된 AUC에 대해 여기서 언급해야 할주의 사항이 있습니다. H2O는 현재 CV AUC의 두 가지 계산을 저장합니다. 하나는 집계 된 버전 (집계 된 CV 예측의 AUC 사용)이고 다른 하나는 교차 검증 된 AUC (k- 폴드 교차 검증에서 얻은 k AUC의 평균)의 "진정한"정의입니다. 후자는 개별 폴드 AUC와 폴드 전체의 표준 편차를 포함하는 개체에 저장됩니다.

왜 우리가이 일을하는지 궁금하다면, 두 가지 버전이있는 역사적, 기술적 이유 와 후자의 모든 보고서에만 공개 티켓이 있습니다.

첫 번째는이 작업을 수행 할 때 얻을 수있는 것 (또한 AutoML 리더 보드에 표시되는 것)입니다.

# print CV AUC for leader model
print(leader.model_performance(xval=True).auc())

평균 및 변동성 (표준 편차)을 계산하거나 볼 수 있도록 폴드-와이즈 AUC를 원하는 경우 여기에서 확인할 수 있습니다.

# print CV metrics summary
leader.cross_validation_metrics_summary()

산출:

Cross-Validation Metrics Summary:
             mean        sd           cv_1_valid    cv_2_valid    cv_3_valid    cv_4_valid    cv_5_valid
-----------  ----------  -----------  ------------  ------------  ------------  ------------  ------------
accuracy     0.71842104  0.06419111   0.7631579     0.6447368     0.7368421     0.7894737     0.65789473
auc          0.7767409   0.053587236  0.8206676     0.70905924    0.7982079     0.82538515    0.7303846
aucpr        0.6907578   0.0834025    0.78737605    0.7141305     0.7147677     0.67790955    0.55960524
err          0.28157896  0.06419111   0.23684211    0.35526314    0.2631579     0.21052632    0.34210527
err_count    21.4        4.8785243    18.0          27.0          20.0          16.0          26.0
---          ---         ---          ---           ---           ---           ---           ---
precision    0.61751753  0.08747421   0.675         0.5714286     0.61702126    0.7241379     0.5
r2           0.20118153  0.10781976   0.3014902     0.09386432    0.25050205    0.28393403    0.07611712
recall       0.84506994  0.08513061   0.84375       0.9142857     0.9354839     0.7241379     0.8076923
rmse         0.435928    0.028099842  0.41264254    0.47447023    0.42546       0.41106534    0.4560018
specificity  0.62579334  0.15424488   0.70454544    0.41463414    0.6           0.82978725    0.58

See the whole table with table.as_data_frame()

다음은 리더 보드의 모습입니다 (집계 된 CV AUC 저장). 이 경우 데이터가 너무 작기 때문에 (300 행)보고 된 두 CV AUC 값간에보고 된 두 가지간에 눈에 띄는 차이가 있지만 더 큰 데이터 집합의 경우 훨씬 더 가까운 추정치 여야합니다.

# print the whole Leaderboard (all CV metrics for all models)
lb = aml.leaderboard
print(lb)

그러면 리더 보드 상단이 인쇄됩니다.

model_id                                                  auc    logloss     aucpr    mean_per_class_error      rmse       mse
---------------------------------------------------  --------  ---------  --------  ----------------------  --------  --------
XGBoost_grid__1_AutoML_20200924_200634_model_2       0.769716   0.565326  0.668827                0.290806  0.436652  0.190665
GBM_grid__1_AutoML_20200924_200634_model_4           0.762993   0.56685   0.666984                0.279145  0.437634  0.191524
XGBoost_grid__1_AutoML_20200924_200634_model_9       0.762417   0.570041  0.645664                0.300121  0.440255  0.193824
GBM_grid__1_AutoML_20200924_200634_model_6           0.759912   0.572651  0.636713                0.30097   0.440755  0.194265
StackedEnsemble_BestOfFamily_AutoML_20200924_200634  0.756486   0.574461  0.646087                0.294002  0.441413  0.194845
GBM_grid__1_AutoML_20200924_200634_model_7           0.754153   0.576821  0.641462                0.286041  0.442533  0.195836
XGBoost_1_AutoML_20200924_200634                     0.75411    0.584216  0.626074                0.289237  0.443911  0.197057
XGBoost_grid__1_AutoML_20200924_200634_model_3       0.753347   0.57999   0.629876                0.312056  0.4428    0.196072
GBM_grid__1_AutoML_20200924_200634_model_1           0.751706   0.577175  0.628564                0.273603  0.442751  0.196029
XGBoost_grid__1_AutoML_20200924_200634_model_8       0.749446   0.576686  0.610544                0.27844   0.442314  0.195642

[28 rows x 7 columns]

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

H2O AutoML leave-one-out은 10 겹 교차 검증보다 성능이 너무 뛰어납니다.

분류에서Dev

Word2Vec-교차 검증 점수가 높은 모델은 테스트 데이터에 대해 매우 나쁜 성능을 보입니다.

분류에서Dev

sklearn에서 불균형 데이터 세트에 대한 교차 검증을 수행하는 방법

분류에서Dev

H2O (딥 러닝)에서 교차 검증 후 예측 및 응답 열을 잘못 정렬합니다.

분류에서Dev

scikit-learn의 RandomizedSearchCV에서 검증을 위해 홀드 아웃 세트를 사용합니까?

분류에서Dev

시행 기반 데이터 세트에 대한 k- 겹 교차 검증

분류에서Dev

이미지에 대한 K- 폴드 교차 검증

분류에서Dev

H2O-파이썬 코드에서 교차 검증 결과 얻기

분류에서Dev

검증 및 테스트 데이터의 성능에 큰 차이

분류에서Dev

pytorch 및 sklearn을 사용한 MNIST 데이터 세트 교차 검증

분류에서Dev

Python으로 특정 데이터 세트 목록을 사용한 교차 검증

분류에서Dev

검색 및 교체에 대한 아이디어가 필요합니다.

분류에서Dev

어떻게 K-접어 스키 장비없이 교차 검증 내용에 대한 교육 세트를 만드는 방법?

분류에서Dev

Java, Battleship 보드 검증, 2D 어레이, 보드 유효성에 대한 가능성을 확인하는 방법은 무엇입니까?

분류에서Dev

트위터 부 스트랩 모달 똥에 대한 녹아웃 검증

분류에서Dev

먼저 교차 검증을 수행 한 다음 그리드 검색을 수행해야합니까?

분류에서Dev

$ .post 성공에 대한 div 세트 페이드 아웃

분류에서Dev

각 분류기에 대한 k- 겹 교차 검증 및 표준 성능 개발을 계산하는 방법은 무엇입니까?

분류에서Dev

C #의 스키마에 대해 유효성을 검사 한 후 xml 문자열이 데이터 세트에로드되지 않습니다.

분류에서Dev

시계열 데이터에 대한 scikit-learn 교차 검증 사용자 지정 분할

분류에서Dev

아래 데이터에 검색 기능을 추가하려면 어떻게해야합니까 (이상적으로 다른 구성 요소에 있음)

분류에서Dev

흐림 이벤트가 포커스 아웃, 탭 아웃 등을 검증하기에 충분합니까?

분류에서Dev

sklearn에서 StratifiedShuffleSplit을 사용한 중첩 교차 검증

분류에서Dev

교차 검증 (Python, sklearn)에서 AUC 95 % CI 계산

분류에서Dev

포인트 클라우드 만 쿼리 포인트로 사용하는 D 차원에서 k 최근 접 이웃 검색에 대한 C ++ 데이터 구조

분류에서Dev

2D 행렬의 주어진 소스 노드의 인접 이웃을 찾아서 검증합니까?

분류에서Dev

그리드 검색을 시작할 때 h2o 서버가 실패합니다.

분류에서Dev

K- 폴드 교차 검증 루프 사이에서 전체 모델을 다시 초기화해야합니까? 어떻게해야합니까?

분류에서Dev

R의 다중 선형 회귀에 대한 교차 검증

Related 관련 기사

  1. 1

    H2O AutoML leave-one-out은 10 겹 교차 검증보다 성능이 너무 뛰어납니다.

  2. 2

    Word2Vec-교차 검증 점수가 높은 모델은 테스트 데이터에 대해 매우 나쁜 성능을 보입니다.

  3. 3

    sklearn에서 불균형 데이터 세트에 대한 교차 검증을 수행하는 방법

  4. 4

    H2O (딥 러닝)에서 교차 검증 후 예측 및 응답 열을 잘못 정렬합니다.

  5. 5

    scikit-learn의 RandomizedSearchCV에서 검증을 위해 홀드 아웃 세트를 사용합니까?

  6. 6

    시행 기반 데이터 세트에 대한 k- 겹 교차 검증

  7. 7

    이미지에 대한 K- 폴드 교차 검증

  8. 8

    H2O-파이썬 코드에서 교차 검증 결과 얻기

  9. 9

    검증 및 테스트 데이터의 성능에 큰 차이

  10. 10

    pytorch 및 sklearn을 사용한 MNIST 데이터 세트 교차 검증

  11. 11

    Python으로 특정 데이터 세트 목록을 사용한 교차 검증

  12. 12

    검색 및 교체에 대한 아이디어가 필요합니다.

  13. 13

    어떻게 K-접어 스키 장비없이 교차 검증 내용에 대한 교육 세트를 만드는 방법?

  14. 14

    Java, Battleship 보드 검증, 2D 어레이, 보드 유효성에 대한 가능성을 확인하는 방법은 무엇입니까?

  15. 15

    트위터 부 스트랩 모달 똥에 대한 녹아웃 검증

  16. 16

    먼저 교차 검증을 수행 한 다음 그리드 검색을 수행해야합니까?

  17. 17

    $ .post 성공에 대한 div 세트 페이드 아웃

  18. 18

    각 분류기에 대한 k- 겹 교차 검증 및 표준 성능 개발을 계산하는 방법은 무엇입니까?

  19. 19

    C #의 스키마에 대해 유효성을 검사 한 후 xml 문자열이 데이터 세트에로드되지 않습니다.

  20. 20

    시계열 데이터에 대한 scikit-learn 교차 검증 사용자 지정 분할

  21. 21

    아래 데이터에 검색 기능을 추가하려면 어떻게해야합니까 (이상적으로 다른 구성 요소에 있음)

  22. 22

    흐림 이벤트가 포커스 아웃, 탭 아웃 등을 검증하기에 충분합니까?

  23. 23

    sklearn에서 StratifiedShuffleSplit을 사용한 중첩 교차 검증

  24. 24

    교차 검증 (Python, sklearn)에서 AUC 95 % CI 계산

  25. 25

    포인트 클라우드 만 쿼리 포인트로 사용하는 D 차원에서 k 최근 접 이웃 검색에 대한 C ++ 데이터 구조

  26. 26

    2D 행렬의 주어진 소스 노드의 인접 이웃을 찾아서 검증합니까?

  27. 27

    그리드 검색을 시작할 때 h2o 서버가 실패합니다.

  28. 28

    K- 폴드 교차 검증 루프 사이에서 전체 모델을 다시 초기화해야합니까? 어떻게해야합니까?

  29. 29

    R의 다중 선형 회귀에 대한 교차 검증

뜨겁다태그

보관