포스트

NYC 택시 수요 예측 파이프라인 만들기 (0) 시리즈 소개

데이터 적재부터 학습, 배포, 모니터링, 재학습까지 전체 사이클을 직접 구축하는 End-to-End ML 프로젝트가 무엇을 만드는지, 누구를 위한 기록인지, 여덟 편의 진행 순서와 사용하는 도구를 정리한 0편입니다.

NYC 택시 수요 예측 파이프라인 만들기 (0) 시리즈 소개

NYC 택시 수요 예측을 소재로, 데이터 적재부터 배포와 모니터링까지 전체 사이클을 직접 구축하는 프로젝트 시리즈의 0편입니다. 프로젝트 소개와 진행 순서를 다루며, 본문인 설계는 1편부터 시작합니다.

무엇을 만드나

캐글 노트북에서 모델을 학습하고 점수를 확인하는 것으로 끝나는 프로젝트는 여러 번 해봤습니다. 실제 서비스에서 머신러닝이 동작하려면 그 앞뒤로 훨씬 많은 것이 필요합니다. 데이터를 어떻게 모으고 검증할지, 모델을 어디에 저장하고 어떻게 배포할지, 배포한 뒤 성능이 떨어지면 어떻게 알아챌지 같은 것들입니다.

그래서 이번 프로젝트의 목표는 데이터 적재부터 학습, 배포, 모니터링, 재학습까지 전체 사이클을 직접 구축하는 것입니다. 소재는 NYC Yellow Taxi 운행 데이터로, 특정 날짜와 시간, 지역이 주어졌을 때 다음 1시간 동안의 택시 승차 건수를 예측합니다. 문제 정의와 전체 아키텍처는 1편에서 자세히 다룹니다.

누구를 위한 시리즈인가

이 시리즈는 다음에 해당하는 분들을 대상으로 작성한 글입니다.

  • 모델 학습은 해봤지만 그 앞뒤(데이터 파이프라인, 배포, 운영)를 만들어본 적은 없는 사람
  • MLOps라는 말은 들었지만 Airflow, MLflow, 서빙 API가 실제로 어떻게 맞물리는지 감이 없는 사람
  • 캐글 점수 너머의, 돌아가는 시스템을 한 번 끝까지 만들어보고 싶은 사람

머신러닝의 개념 자체가 처음이라면 머신러닝 기초 시리즈를 먼저 보는 것을 권합니다. 이 시리즈는 개념보다 전체를 하나의 시스템으로 잇는 데 초점이 있습니다.

어떻게 진행하는가

여덟 편으로 진행하며, 순서는 아래와 같습니다.

주제
(1)프로젝트 설계
(2)개발환경 세팅
(3)데이터 수집과 EDA
(4)집계와 피처 생성
(5)Baseline vs LightGBM vs PyTorch
(6)PostgreSQL, MinIO, MLflow 연동
(7)FastAPI 서빙과 학습-서빙 편차
(8)Airflow 자동화, 모니터링, CI

설계에서 시작해 환경, 데이터, 모델, 저장, 서빙, 자동화 순으로 한 겹씩 쌓아 올립니다.

사용하는 도구

전체 파이프라인에서 각 단계를 맡는 도구는 이렇습니다.

  • 수집과 자동화 — Airflow로 데이터 수집과 재학습을 스케줄링
  • 저장 — 원본은 MinIO, 피처 테이블은 PostgreSQL
  • 모델 — LightGBM과 PyTorch를 비교
  • 실험 관리 — MLflow로 실험과 모델 버전 관리
  • 서빙 — FastAPI로 예측 API 제공
  • 운영 — 성능과 데이터 변화 모니터링, 그리고 재학습으로 순환

각 도구가 왜 그 자리에 있는지는 해당 편에서 설명합니다. 준비가 됐으면 설계를 다루는 1편부터 시작합니다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.