강의를 보면서 강사님과 똑같이 진행을 하는데 값이 다릅니다. 그리고 영상에서는 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가 설치가 된것 같은데 왜 불러오질 못하는지 모르겠네요 ㅠㅠ(참고로 코알못입니다) 커서도 여러번 껐다가 재실행했는데도 꼭 저러네요.. 이것저것 만져보기도 겁다고한데... 해결 방법 좀 알려주시면 감사하겠습니다.! ======= 혹시 추가 정보가 필요하신게 있으면 알려주시면 바로 확인해서 올리겠습니다.
안녕하세요. CS를 전공하고 있는 대학생입니다. 다음학기 들어야 할 코스와 선생님 강의의 커리큘럼이 겹치는 부분이 있어서, 이 강의를 꼭 들으면서 예습을 하고 싶어서 수강 결제를 진행했으나 후에 강의가 윈도우 개발환경에 맞춰져있다는 설명을 보았습니다. 맥북 유저이지만 대체할만한 강의를 찾지 못해서 되도록 이 강의를 수강하고 싶은데 어느 정도 불편함을 감수하고서라도 이 강의를 수강하는 것에 대해 조언해 주실 수 있을까요? 감사합니다.
안녕하세요 사이킷런을 이용한 GMM 군집화 실습 강의 중 질문입니다. 9:15 에서 transformation = [[0.60834549,-0.63667341],[-0.40887717,0.85253229]] 로 설정하면 된다고 하셨는데 이 값들은 어디서 도출된 값인가요? 이 부분은 자세한 설명 없이 바로 다음 부분으로 넘어가시는데요, 이 값들이 어떻게 도출된 값들인지 자세한 설명 부탁드립니다
안녕하세요! '4-5 그래프' 강의 내용 중에 '인접 리스트'를 사용해 그래프를 표현하는 경우 공간복잡도가 최악의 경우에도 O(N)이라고 설명을 해주셨는데요! 그래프의 모든 노드가 다른 모든 노드에 연결되어있는 경우라면 딕셔너리 안에 N개의 키와 각각의 키에 크기 N-1의 1차원 배열이 들어가게 되니, 결국 N*(N-1) 만큼이 공간을 차지하여 최악의 경우 2차원 배열과 동일하게 O(N^2)의 공간복잡도를 가지게 되는 것은 아닌가 하는 생각이 들었는데요, 인접 리스트를 사용할 때 최악의 경우 어떻게 O(N)의 공간복잡도가 나오게 되는지 궁금합니다! 그리고, 일반적인 경우에는 모든 노드가 연결되어 있지는 않겠지만, 항상 이러한 최악의 경우도 고려하면서 문제를 풀어야 할지도 궁금합니다!