학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세 위와 같이 실행했는데 baseline roc_auc가 높게 나옵니다 그리고 y_test 실행결과 label과 점수가 비슷합니다. 어떤 이유일때문일까요?
강의를 보면서 강사님과 똑같이 진행을 하는데 값이 다릅니다. 그리고 영상에서는 max_depth를 설정했을 때가 설정하지 않았을 때 보다 값이 더 올라갔는데 저 같은 경우는 설정한 후 값이 더 내려갔습니다. 정상적인 건가요? #rf from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import roc_auc_score, f1_score, accuracy_score rf = RandomForestClassifier(random_state=2025,max_depth=3) rf.fit(X_tr,y_tr) pred = rf.predict(X_val) pred_proba = rf.predict_proba(X_val) print(roc_auc_score(y_val,pred_proba[:,1])) print(f1_score(y_val,pred)) print(accuracy_score(y_val,pred)) # 0.9227272727272727 # 0.8571428571428571 # 0.8378378378378378 # max_depth = 3 # 0.9242424242424243 # 0.8 # 0.7837837837837838
<모델&평가>에서 fit(학습)을 시킬때는 왜 X_tr,y_tr을 넣고 예측을 할때는 왜 X_val를 넣나요 ? 그냥 아무거나 넣어도 되나요 ? #rf from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state=2025) rf.fit(X_tr,y_tr) pred = rf.predict(X_val)
<데이터 전처리 &피처엔지니어링>에서 왜 id를 drop 하나요? 그리고 <검증 데이터 분리>에서 는 왜 output을 drop 하나요? train = train.drop('id',axis=1) test_id = test.pop('id') test.head() from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split(train.drop('output',axis=1),train['output'],test_size=0.15, random_state=2025)
3사분위수 - 1사분위 수 값을 구할 때 선생님 처럼 r2, r1 변수 안 만들고 df = df[:int(len(df) * 0.7)] #70% 데이터 선택 IOQ = df['views'].quantile(.75) - df['views'].quantile(.25) print(IOQ) 이렇게 구해도 되나요?
제가 푼 내용을 보면 pred = rf.predict(test) : 질문자 pred = rf.predict(x_val) : 해설 위 두가지가 다릅니다. 해당 건 때문에 pred 했을 때, 값 차이가 많이 나는건가요? ㅜ_ㅠ 챗gpt에 물어보니 어떨때는 test고 어떨대는 x_val인지 아직도 모르겠습니다. # 라이브러리 및 데이터 불러오기 import pandas as pd train = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p4/8_2/churn_train.csv") test = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p4/8_2/churn_test.csv") # train.info() # test.info() target = train.pop('TotalCharges') train = pd.get_dummies(train) test = pd.get_dummies(test) train, test = train.align(test, join='left', axis=1) from sklearn.model_selection import train_test_split x_tr, x_val, y_tr, y_val = train_test_split(train, target, test_size=0.2, random_state=0) from sklearn.ensemble import RandomForestRegressor rf = RandomForestRegressor(random_state=0) rf.fit(x_tr, y_tr) pred = rf.predict(test) submit = pd.DataFrame({'pred' : pred}) submit.to_csv('result.csv', index=False) ans = pd.read_csv('result.csv') print(ans)
아래 질문 대댓글로 올렸는데, 잘 못보실것같아 이곳에 정식으로 올립니다. 모든 프로그램 설치 후, 재부팅, 커서 재실행등은 다 해봤습니다. ============================= 처음 코드를 만들고 gtts에서 에러가 나네요. 선생님의 코드 요청과 똑같이 요청을 했고, 그래서 아래와 같은 코드가 생성되었습니다. 그래서 pip install -r requirements.txt 를 터미널에 입력 시켜주었으며 위와 같이 제대로 설치가 된것 같습니다. requirements.txt 내용 -> gTTS==2.3.2 그랬는데 아래와 같이 Python cmd창에서 에러가 납니다. (대소문자 에러인줄알고 그마저도 고쳤는데도) gtts가 설치가 된것 같은데 왜 불러오질 못하는지 모르겠네요 ㅠㅠ(참고로 코알못입니다) 커서도 여러번 껐다가 재실행했는데도 꼭 저러네요.. 이것저것 만져보기도 겁다고한데... 해결 방법 좀 알려주시면 감사하겠습니다.! ======= 혹시 추가 정보가 필요하신게 있으면 알려주시면 바로 확인해서 올리겠습니다.