연습문제

자전거 수요 예측

난이도
Medium
참가자
3 명
제출 형식
csv

자전거 대여 수요 예측은 도시 교통 관리와 자원 최적화를 위한 중요한 문제입니다.
아래의 데이터셋을 활용하여 '특정 시간대에 자전거 대여 수요는 얼마나 될 것인가?'라는 질문에 답하는 예측 모델을 구축하여 결과물을 제출하시오.

데이터셋 설명

데이터는 두 그룹으로 분할되었습니다.

  • ​​training set(train.csv)​
  • test set(test.csv)

training set
기계 학습 모델을 구축하는 데 사용되어야 합니다.
각 승객에 대한 생존 결과를 제공합니다. 

test set
보이지 않는 데이터에서 모델이 얼마나 잘 작동하는지 확인하는 데 사용해야 합니다.
각 승객에 대한 실제 정보를 제공하지 않습니다. 이러한 결과를 예측하는 것이 귀하의 임무입니다.
test set의 각 승객에 대해 훈련한 모델을 사용하여 타이타닉 침몰에서 살아남았는지 여부를 예측합니다.​

[데이터 설명]

train.csv [파일]

  • data_id : 문제번호
  • datetime : 대여 시점 (연도, 월, 일, 시간 등이 포함된 시계열 데이터)
  • season : 계절 (1: 봄, 2: 여름, 3: 가을, 4: 겨울)
  • holiday : 공휴일 여부 (0: 공휴일 아님, 1: 공휴일)
  • workingday : 평일 여부 (0: 휴일, 1: 평일)
  • weather : 날씨 (1: 맑음, 2: 약간 흐림, 3: 흐림/가벼운 비, 4: 폭우/눈 등)
  • temp : 실제 온도 (섭씨)
  • atemp : 체감 온도 (섭씨)
  • humidity : 습도 (%)
  • windspeed : 풍속 (m/s)
  • casual : 비회원 이용자 수 (학습 데이터에만 포함)
  • registered : 등록된 회원 이용자 수 (학습 데이터에만 포함)
  • count : 총 대여 수 (학습 데이터에만 포함)
    - casual과 registered의 합으로, 모델이 예측해야 할 최종 목표입니다.
    (학습시 casual, registered, count를 각각 예측할 경우도 있고, 간단히 약식으로 count만 예측하는 경우도 있음)


test.csv [파일]

  • train 데이터와 구성 동일
  • casual, registered, count 가 존재하지 않음


sample_submission.csv [파일]

  • 제출을 위한 기본 양식
  • data_id : 샘플 별 고유 ID
  • count : 예측한 값을 기입하여 제출


[평가 산식]

RMSLE (Root Mean Squared Logarithmic Error): 예측값과 실제값의 차이를 로그 스케일에서 측정한 평균 제곱근 오차

Python 코드:

import numpy as np
from sklearn.metrics import mean_squared_log_error
score = np.sqrt(mean_squared_log_error(truth_df["count"], submission_df["count"]))

train.csv

test.csv

sample-submission.csv