소개
게시글
질문&답변
PCA 관련 질문
import pandas as pd from sklearn.decomposition import PCA from sklearn.preprocessing import StandardScaler from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import cross_val_score df=pd.read_excel('/content/drive/MyDrive/credit_card.xls',sheet_name='Data',header=1) df.rename(columns={'PAY_0':'PAY_1','default payment next month':'default'},inplace=True) X_features=df.drop(['ID', 'default'],axis=1) y_target=df['default'] bill_cols=['BILL_AMT'+str(i) for i in range(1,7)] scaler=StandardScaler() df_cols_scaled=scaler.fit_transform(X_features[bill_cols]) pca=PCA(n_components=2) col_pca=pca.fit_transform(df_cols_scaled) bill=pd.DataFrame(data=col_pca, columns=['bill_pca_1','bill_pca_2']) df0=df.copy() pca_df=pd.concat([df0,bill],axis=1) pca_df.drop(bill_cols,axis=1,inplace=True) X_features1=pca_df.drop('default',axis=1) y_target=pca_df['default'] rf=RandomForestClassifier(n_estimators=300, random_state=156) scores=cross_val_score(rf, X_features1, y_target,scoring='accuracy', cv=3) print('평균 정확도:', np.round(np.mean(scores),4)) 이런 식으로 코드를 짜봤는데 0.61정도로 예측 성능이 많이 떨어지는 것 같습니다
- 0
- 3
- 171
질문&답변
이상치 제거 관련 질문
TARGET이 0인 데이터 중에서 각 열의 1.5*IQR 바깥에 있는 인덱스와 TARGET이 1인 데이터 중에서 각 열의 1.5*IQR 바깥에 있는 인덱스를 모아서 중복되는 부분은 합집합 형태로 제거했더니 그렇게 많은 데이터가 사라진 것 같습니다..! 모든 열이 중요한 건 아니기에 이런 방식은 지양해야 할까요? 이상치 제거보단 최빈값으로 대체해주는 방법이 더 나을지, 1.5보다 큰 수*IQR로 이상치를 제거해봐야 할지 모르겠습니다.. 생각해보니 18000 데이터 중, train_test_split으로 약 15000개를 학습으로 쓰고 3000개 정도를 테스트 데이터로 쓰다보니 워낙 적은 데이터라 평가지표가 높게 나온 듯 합니다!
- 0
- 3
- 692
질문&답변
임계값 변화에 따른 정밀도의 변화
아 제가 잘못 적은 것 같습니다. 제가 의도한 질문은 아래와 같습니다! 책에서는 분류 임계값이 감소함에 따라 재현율은 증가하고 정밀도는 감소한다고 나와있습니다. 임계값이 감소한다는 것은 그만큼 FP, TP가 증가한다는 것을 의미하는데 임계값이 감소함에 따라 FN이 줄어들고 TP가 증가하는 재현율과는 다르게 정밀도는 확실히 감소한다고 볼 수 없지 않나요? 예를 들어, 임계값 변동 전의 정밀도가 80/100(=0.8)이고, 양성예측이 증가하여 맞는 예측이 10건, 틀린 예측이 1건일 경우, 정밀도가 90/111(= 약 0.82)가 되어 분류임계값이 증가하더라도 정밀도는 높아질 수 있지 않나요? 임계값이 감소하면 정밀도가 감소하는 것이 대체적으로 더 빈번하다고 알아두면 될까요?
- 0
- 3
- 286
질문&답변
교차 검증
강사님, 혹시 데이터를 학습, 검증, 테스트 데이터로 나누는 즉, 별도의 테스트 데이터를 분리하는 과정은 cross_val_score()에 포함되어 있는건가요? 아니라면 별도의 테스트 데이터셋의 분리는 코드로 나타냈을 때, 어떤식인지 알려주시면 감사하겠습니다! 학습/테스트 데이터셋으로 나누고 학습 데이터만 교차검증을 해보는 코드를 짜보려고 했는데 생각보다 잘안되네요ㅜㅜ
- 0
- 3
- 376
질문&답변
best_score_값과 pred값이 다른 이유
아하 정말 감사합니다! 이해됐습니다ㅎㅎ
- 2
- 6
- 675
질문&답변
best_score_값과 pred값이 다른 이유
강사님, iris데이터셋의 평균값하고 분산값을 구해보았는데 책이랑 미세하게 다른걸 보니 구글코랩의 iris 데이터셋이 약간 다른것 같습니다..! 이 부분이 best_score_값과 pred값이 다른 이유에 영향을 미칠 수도 있는건가요?
- 2
- 6
- 675
질문&답변
best_score_값과 pred값이 다른 이유
(사진)이처럼 정확도가 다르게 나오는데 이유를 잘못찾겠습니다.
- 2
- 6
- 675
질문&답변
best_score_값과 pred값이 다른 이유
X_test를 validation으로 사용하는건 어떻게 하는지 정확히 잘모르겠어서 설명해주시면 감사하겠습니다!ㅜㅜ 소스코드 따라한 사진 첨부하겠습니다!(사진)
- 2
- 6
- 675