random_state=0, random_state=123 차이가 발생합니다. 어떤값을 넣어야 하나요? 최적값이 따로 있나요?
0
df = pd.DataFrame({
'f1': [2, 3, 5, 7, 11, 13, 17, 19, 23, 29],
'f2': [30, 28, 26, 24, 22, 20, 18, 16, 14, 12],
'target': ['A', 'A', 'A', 'B', 'B', 'A', 'A', 'A', 'A', 'B']
})
y_train = df.pop('target')
x_tr, x_val, y_tr, y_val = train_test_split(df, y_train, test_size=0.5, random_state=123)
print(x_tr.shape, x_val.shape, y_tr.shape, y_val.shape)
model_rfc = RandomForestClassifier(random_state=42)
model_rfc.fit(x_tr, y_tr)
y_proba_val_rfc = model_rfc.predict_proba(x_val)
print(y_proba_val_rfc)
roc = roc_auc_score(y_val, y_proba_val_rfc[:,1])
print(roc)
(5, 2) (5, 2) (5,) (5,)
[[0.29 0.71]
[0.92 0.08]
[0.7 0.3 ]
[0.74 0.26]
[0.45 0.55]]
1.0
-------------------------------------------------------------------------
df = pd.DataFrame({
'f1': [2, 3, 5, 7, 11, 13, 17, 19, 23, 29],
'f2': [30, 28, 26, 24, 22, 20, 18, 16, 14, 12],
'target': ['A', 'A', 'A', 'B', 'B', 'A', 'A', 'A', 'A', 'B']
})
target = df.pop('target')
X_train, X_val, y_train, y_val = train_test_split(df, target, test_size=0.5, random_state=0)
clf = RandomForestClassifier(random_state=42)
clf.fit(X_train, y_train)
y_pred = clf.predict_proba(X_val)[:,1]
print(y_pred) # 예측값
roc_auc_score(y_val, y_pred) # 정확도 평가
[0.68 0. 0.25 0. 0.26]
np.float64(0.25)
답변 1
0
random_state로 고민하지는 마시죠!!
랜덤적인 요소를 고정적으로 만든다 생각하고 특정 숫자로 고정하시면 됩니다.
컴피티션(대회) 같이 0.001이 중요한 경우 random_state 도 성능을 높이기 위한 도구로 사용하기도 하나
빅분기 시험은 그런 상황이 아닙니다 🙂 편안하게 아무 숫자로 사용해 주세요!
강의 업데이트
0
4
1
수강 연장 문의드립니다.
0
34
2
강의 연장 문의
0
37
2
수강 신청 연장 문의드립니다.
0
49
2
작업형 1번문제... 환경관련
0
33
2
12회 기출은 언제 업데이트 될까요??
0
42
2
8/6 작성한 연장문의 질문글에 대한 재요청
0
40
2
수강기간 연장 문의
0
42
2
수강기간 연장문의
0
39
2
수강기간 연장 요청 문의드립니다
0
38
2
수강 기간 연장 문의
0
47
2
수강연장 가능 문의 (기간 약 한달반)
0
60
2
수강기간 연장 가능할까요 선생님
0
75
2
Section15. 수업에 사용하는 데이터 주소가 다 보이지 않아서 실습을 위한 데이터를 다운 받지 못하고 있습니다.
0
56
3
수강연장요청 문의
0
95
2
아무래도 다음 시험 연장은 어렵겠죠?
0
112
2
빅분기 12회 결과 관련 문의
0
116
1
책이랑 강의랑 순서나 예제가 다른것 같네요
0
84
2
수강연장 문의
0
107
2
재검토 요청 방법 좀 알려주셔요...-.-;;
0
109
2
12회 실기 질문(작업형 2)
0
95
2
뒤로가기 버튼 같은 것이 있나요?
0
68
1
강의 연장 문의
0
101
2
출력값 질문
0
76
2





