inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

당신의 열정을 응원합니다.

random_state 값에 따라서 값이 큰 차이가 나는 경우가 있나여 ?

해결된 질문

441

작성자 없음

작성한 질문수 0

0

안녕하세요

2유형을 공부하는 중에

train_test_split의 random_state 값에 따라서 값의 편차가 크게 차이 나는 것을 발견했습니다.

# random_state = 1 : 0.8643817947300534 # random_state = 2023 : 0.7804496038326884

이 정도로 차이가 나는데 테스트 값에는 크게 영항이 없는 것인가요 ? 다른 코드들은 모두 동일했습니다 !

 

import pandas as pd
import warnings 
warnings.filterwarnings('ignore')
train= pd.read_csv('https://raw.githubusercontent.com/Datamanim/datarepo/main/stroke_/train.csv')
test= pd.read_csv('https://raw.githubusercontent.com/Datamanim/datarepo/main/stroke_/test.csv')

train = train.drop('id',axis=1)
test_id = test.pop('id')
y_train = train.pop('stroke')

# 결측치 채우기 
train['bmi'] = train['bmi'].fillna(train['bmi'].mean())
test['bmi'] = test['bmi'].fillna(train['bmi'].mean())

train['age'] = train['age'].str.replace('*','').astype('int')

# StandarScaler
# print(train.info())
# train.nunique()
cols = ['age','avg_glucose_level', 'bmi']
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
train[cols] = scaler.fit_transform(train[cols])
test[cols] = scaler.transform(test[cols])

# LabelEncoder 
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
train['gender'] = le.fit_transform(train[['gender']])
test['gender'] = le.fit_transform(test[['gender']])

# get_dummies
train = pd.get_dummies(train)
test = pd.get_dummies(test)

cols = ['ever_married_No','work_type_Govt_job','Residence_type_Rural','smoking_status_Unknown']
train = train.drop(cols,axis=1)
test = test.drop(cols,axis=1)

from sklearn.model_selection import train_test_split
X_tr,X_val,y_tr,y_val = train_test_split(train,y_train,test_size=0.2,random_state=2023,stratify = y_train)

from sklearn.ensemble import RandomForestClassifier
model = RandomForestClassifier(random_state=2023,n_estimators = 200)
model.fit(X_tr,y_tr)
pred_val = model.predict_proba(X_val)

from sklearn.metrics import roc_auc_score
roc_auc_score(y_val,pred_val[:,1])

# random_state = 1 : 0.8643817947300534
# random_state = 2023 : 0.7804496038326884

python 머신러닝 빅데이터 pandas 빅데이터분석기사

답변 1

0

퇴근후딴짓

제가 제공해드린 데이터가 아니라서 정확하겐 모르겠지만

아마도 토이 데이터여서 데이터 크기가 작아서 그렇지 않을까 추측됩니다. 💪

작업형2 모의문제1 (30강)

0

18

1

수강 기간 연장 문의 드립니다.

0

21

1

수강 계획과 관련해 문의 드립니다.

0

19

1

작업형1 - 연습문제 16~39 풀이는 몇강을 보면 되나요?

0

45

2

작업형 1 -연습문제 4-6

0

32

2

작업형 1 유형 부분

0

40

2

작업형 1 (삭제예정, 구 버전)

0

50

2

수강기간 연장 문의드립니다.

0

35

1

2유형 레이블 인코딩 VS 원핫 인코딩

0

36

3

수강기간 연장 문의드립니다.

0

38

1

인덱스 슬라이싱

0

35

2

질문 드립니다.

0

49

2

강의 내용 관련 질문드립니다~

0

46

2

수강 연장 문의

0

63

2

강의자료 일괄 다운로드

0

58

2

수강기간 연장 문의드립니다

0

47

2

list 문제 질문드립니다~

0

38

2

빅분기 실기 12회 재도전

0

62

2

강의 기간 연장 가능여부 검토 요청건

0

49

2

수강기간 연장 문의 드립니다

0

45

2

수강기간 연장 문의드립니다

0

52

2

질문이요

0

57

2

수강기간 연장 문의드립니다.

0

60

2

문제 3-2 질문드립니다

0

47

2