inflearn logo
강의

Khóa học

Chia sẻ kiến thức

[Bản sửa đổi] Hướng dẫn hoàn hảo về máy học Python

Tổng quan về Pandas và API cơ bản - 01

oof 질문 드립니다

Đã giải quyết

1132

doctorsong8309

25 câu hỏi đã được viết

0

oof (out of fold)가 무엇을 뜻하는지 잘 모르겠습니다

p.s  oof 가 밑에 있는 그림과 같이 Learn + Predict 부분을 합친 부분을 말하는 건가요?

정확히 잘 모르겠어서 질문 드립니다. 

머신러닝 배워볼래요? python 통계

Câu trả lời 2

0

doctorsong8309

그렇군요 답변 감사합니다 ^^

0

dooleyz3525

안녕하십니까,

OOF Prediction은 일반적으로 Cross validation기반의 Prediction을 지칭하는데 대략 2가지 유형이 있습니다. 

1. 첫번째는 강의의 4장 Stacking과 같은 유형입니다. 위에서 질문하신 그림이 Stacking에서 학습 데이터를 만드는 그림입니다. 

위 그림은 5 Fold 기반으로 개별 모델이 5회 번갈아 가면 4/5 학습 데이터로 학습하고, 1/5 학습 데이터로 예측하여 별도의 학습 데이터를 만듭니다. 그리고 이렇게 만들어진 학습 데이터를 다시 메타 모델이(아마도 Model 6) 학습하여 최종 예측 하는 방식입니다. 

2.   K-Fold로 학습을 수행 한 뒤 예측을  테스트 데이터에 K번 만큼 수행한 뒤 개별 예측값을 평균하여 최종 예측합니다(오버피팅을 최대한 회피하려는 나름의 방법입니다)

가령 5 Fold라고 하면 개별 모델이 5회 번갈아 가면서 4/5 학습 데이터로 학습합니다. 이렇게 학습된 모델을 이용하여 테스트 데이터로 예측을 수행하되 5번 Iteration하면서 학습 데이터를 변경하면서 학습하고 테스트 데이터로 예측값을 평균하여 최종 예측합니다.

아래는 위에서 말씀드린 부분을 Pseudo 코드로 작성한 것입니다.  맨 아래에 predictions += 가 된 이유는 evaluation이 ROC-AUC 이기 때문에 개별 예측값을 n_splits으로 나눈 후에 합치는 방식으로 계산 된 것입니다. 

num_folds = 11
folds = StratifiedKFold(n_splits=num_folds, shuffle=False, random_state=2319)
for fold_, (trn_idx, val_idx) in enumerate(folds.split(train.values, target.values)):
    trn_data = lgb.Dataset(train.iloc[trn_idx][fea], label=target.iloc[trn_idx])
    val_data = lgb.Dataset(train.iloc[val_idx][feat], label=target.iloc[val_idx])
    clf = lgb.train(param, trn_data, 1000, valid_sets = [trn_data, val_data])
    oof[val_idx] = clf.predict(train.iloc[val_idx][feat], num_iteration=clf.best_iteration)
    predictions += clf.predict(test[feat], num_iteration=clf.best_iteration) / folds.n_splits

안녕하세요 열심히 수강중인 학생입니다

0

59

2

정수 인덱싱

0

67

2

넘파이 오류

0

83

2

11강 numpy의 axis 축 질문 드립니다.

0

84

2

Kaggle 에서 Santander customer satisfaction data 를 다운로드 되지가 않습니다.

0

76

2

Feature importances 를 보여주는 barplot 이 그래프로 안보여져요.

0

68

2

타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.

0

74

2

타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.

0

62

2

5강 강의 오류가 있어요.

0

82

1

실무에서 LTV 관련 모델 선택 질문입니다!

0

71

2

14강 강의 듣는중에 궁금한게 있어서 질문합니다~

0

68

3

파이썬 다운그레이 후 사이킷런 재설치

0

115

2

좋은 강의 감사합니다.

0

71

2

scoring 함수 음수값

0

66

2

6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?

0

98

2

분류 평가 정확도 예측

0

75

2

안녕하세요. 강의 들으면서 업무에 적용하고 싶은 수강생입니다.

0

97

1

카카오톡 채널 있나요

0

105

1

혹시 강의에서 사용하시는 ppt 받을 수 있는건가요

0

187

2

pca 스케일링 관련하여 질문드립니다.

0

100

2

주피터 대신 구글 코랩

0

170

2

강의에서 사용하는 pdf or ppt자료는 따로 없는 건가요?

0

145

2

실루엣 스코어..

0

82

2

float64 null 값 처리 방법

0

99

2