테스트 셋과 트레이닝 셋을 가지고 학습을 할 수 있다.
맨 처음 모델로 랜포 모델을 소개한다.
from sklearn.ensemble import RandomForestRegressor
#모델 선언
rf = RandomForestRegressor(n_jobs = 4, random_state = 42)
#모델 학습
rf.fit(train2, train['casual'])
RandomForestRegressor
의 인자로 사용되는 n_jobs
는 cpu라고 생각하면 된다. 4
혹은 -1
로 작성하면 훨씬 더 빠르게 모델을 돌릴 수 있다. random_state
도 고정값으로 정해주면 된다. (42가 아니어도 된다.)
마지막 줄에서 학습을 시켜준다.
.fit
의 인자로 정답 칼럼이 없는 학습 데이터를 넣어주고, 정답 칼럼의 데이터를 넣어준다.
여기서 중요한 부분은 첫번째 인자는 전체 데이터를 넣어준다는 것이고, 두번째 인자는 정답 데이터의 셀 만 ! 넣어줘야 한다.
모델에서 학습을 시켜주었으면, 이제 테스트 세트에서 예측을 해야 한다.
result_cas = rf.predict(test2)
테스트 세트에서 학습한 결과를 받아준다.
다음 글에서 어떻게 이 결과를 submission파일에 넣는지 확인해보자.
RandomForest의 자세한 설명은 후에 CatBoost 모델을 설명할 때 같이 언급하여 비교해보도록 하겠다.