머신러닝 8일차

ParkJinYoung·2022년 10월 27일
0

분류 / 회귀 데이터

knn_model = knc()

# 일반화 성능 => 교차검증 진행
# cross_val_score(model,X_train,y_train,cv=횟수)
r=cross_val_score(knn_model,X_train,y_train,cv = )
r.mean()

# 학습
knn_model.fit(X_train,y_train)

# 예측
pre2=knn_model.predict(X_test)

# 답안지 불러오기
result2=pd.read_csv('data/gender_submission.csv')

# 답안지에 마킹하기
result2['Survived'] = pre2

result2.to_csv("JYP1.csv", index = False)
# 0.65550 정확도

성능개선사항
하이퍼 파라미터 조정(5%)
데이터의 양 늘려보기
전처리 신경쓰기
성능이 좋은 모델 가져와서 학습
데이터 스케일링 진행
거리계산에 민감한 knn모델의 성늘을 조금 더 높이기 위해서 데이터의 규모, 단위를 정리해주는 과정
sklearn 에서 Scale 제공

# 도구 불러오기
from sklearn.preprocessing import StandardScaler

# 범위를 정규화해주는 도구 만들기
scaler = StandardScaler()

scaler.transform(X_train)
# 스케일러도 학습을 진행해줘야한다.
# X_train 데이터에 대해서 학습 진행
scaler.fit(X_train)

# 학습된 스케일러의 범위값을 변환
# 넘파이 배열 => 
t_X_train=scaler.transform(X_train)

# test 범위 변환
t_X_test=scaler.transform(X_test)

# 일반화 성능 확인 => 교차검증
cross_val_score(knn_model,t_X_train,y_train, cv=20)

# 모델 학습
tree_model.fit(t_X_train,y_train)

pre3=tree_model.predict(t_X_test)

result2['Survived']=pre3

result2.to_csv("JYP2.csv", index = False)
profile
꾸준히

0개의 댓글