해결된 질문
작성
·
42
0
from sklearn.preprocessing import RobustScaler
cols = ['Age','AnnualIncome', 'FamilyMembers', 'ChronicDiseases',]
scaler = RobustScaler()
train[cols] = scaler.fit_transform(train[cols])
test[cols] = scaler.fit_transform(test[cols])
from sklearn.preprocessing import LabelEncoder
cols = ['Employment Type', 'GraduateOrNot','FrequentFlyer', 'EverTravelledAbroad' ]
for col in cols:
le = LabelEncoder()
train[col] = le.fit_transform(train[col])
test[col] = le.fit_transform(test[col])
위처럼 로버스트와 라벨인코딩 후, 랜덤포레스트 하였습니다. 최종값이
로버스트 스케일 + 라벨인코딩 = 0.77
라벨인코딩 = 0.78이 나왔는데,
둘다 한다고 성능이 더 좋아지는것은 아닌가요?
이 상황일 때 시험칠때 둘 중 높은 라벨인코딩만 적용해서 제출하면 되나요?
답변 1
0
네, 뭔가 작업을 한다고 성능이 좋아지는 것은 아닙니다.
결과가 숫자로 나오니 숫자로 판단하시죠!!
혹시 여유가 있다면 lightgbm과도 비교하면 좋을 것 같아요!1