๐ฏ ML Engineer๋ ์ด๋ค ์ฌ๋์๊ฒ ์ ๋ง์๊น?
- ๋ถ์๋ ฅ + ์ํํธ์จ์ด ์ค๋ ฅ ๋ ๋ค ๊ฐ์ถ ์ฌ๋
- ๋ชจ๋ธ์ ๋ง๋ค๊ณ ๋๋๋ ๊ฒ ์๋๋ผ, ์ค์ ์ ์ ์๊ฒ ์๋น์ค๋๋๋ก ๋๊น์ง ์ฑ ์์ง๊ณ ์ถ์ ์ฌ๋
- ๋๊ท๋ชจ ํธ๋ํฝ/์์คํ ์ต์ ํ์๋ ๊ด์ฌ์ด ์๋ ์ฌ๋
- DevOps + ๋ฐ์ดํฐ ๊ณผํ ๋ ๋ค ๋ฐฐ์ฐ๊ณ ์ถ์ ์ฌ๋
๐ Data Scientist์์ ์ฐจ์ด์
์ญํ ์ด์
| Data Scientist | ๋ชจ๋ธ ์ฑ๋ฅ ๊ฐ์ , ํต๊ณ ๋ถ์, ๊ฐ์ค ๊ฒ์ฆ |
| ML Engineer | ๋ชจ๋ธ ์๋น, ์์คํ ๊ตฌ์ถ, ์ด์ ์ต์ ํ |
๋ ๋ค ๋ชจ๋ธ์ ๋ค๋ฃจ์ง๋ง, ML Engineer๋ **"ํ์ ๋ฐฐํฌ"์ "์ฑ๋ฅ ์ ์ง"**์ ๋ ์ง์คํด.
ML Engineer ํฌ์ง์ ์ ๋ฑ ๋ง๋ ์ค์ ํ๋ก์ ํธ ๊ธฐ๋ฐ ํฌํธํด๋ฆฌ์ค์ ์์คํ ๊ตฌํ ์ค์ต์ ๋จ๊ณ๋ณ๋ก ๋์์ค๊ฒ ๐ช
โ ML Engineer ์ค๋ฌด ์ญ๋ ์ต๋ ๋ก๋๋งต
1๏ธโฃ ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ ๋ฐ MLOps ๊ธฐ๋ณธ๊ธฐ ์ตํ๊ธฐ
- ๐น ๋ฐ์ดํฐ ์์ง → ์ ์ฒ๋ฆฌ → ์ ์ฅ → ๋ถ๋ฌ์ค๊ธฐ (ETL ํ๋ฆ)
- ๐น Airflow or Prefect ๊ธฐ๋ฐ ๊ฐ๋จํ ์ํฌํ๋ก์ฐ ๊ตฌ์ฑ
- ๐น DVC + MLflow๋ก ์คํ ์ถ์ ๋ฐ ๋ฒ์ ๊ด๋ฆฌ
โ๏ธ ์ฐ์ต ๊ณผ์ : ๋นํธ์ฝ์ธ ๋ฐ์ดํฐ ์์ง → ์ ์ฒ๋ฆฌ → ํํฐ์ ๋ ์ ์ฅ (S3 ์๋ฎฌ๋ ์ด์ )
2๏ธโฃ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ ๊ฐ๋ฐ ๋ฐ ์๋น
- ๐น scikit-learn, XGBoost, LightGBM ๊ธฐ๋ฐ ๋ชจ๋ธ ํ์ต
- ๐น FastAPI๋ก REST API ๋ง๋ค๊ธฐ (๋ชจ๋ธ ์์ธก endpoint ๊ตฌํ)
- ๐น Docker๋ก ์ปจํ ์ด๋ํ → ๋ก์ปฌ/ํด๋ผ์ฐ๋ ๋ฐฐํฌ
โ๏ธ ์ฐ์ต ๊ณผ์ : ์์ธก ๋ชจ๋ธ FastAPI + Docker๋ก ๊ตฌ์ฑํด๋ณด์
โ๏ธ ๋ณด๋์ค: Streamlit์ผ๋ก ์น ํ๋ก ํธ ๋ฐ๋ชจ๋ ๊ตฌ์ฑ ๊ฐ๋ฅ
3๏ธโฃ ํด๋ผ์ฐ๋ ํ์ฉ: AWS ์ค์ฌ ์ค์ต
- ๐น S3: ๋ฐ์ดํฐ ์ ์ฅ์
- ๐น Lambda: ์๋ฒ๋ฆฌ์ค ๋ชจ๋ธ ์์ธก
- ๐น SageMaker: ํ์ต + ๋ฐฐํฌ + ์๋ ์ค์ผ์ผ๋ง ๊ฒฝํ
โ๏ธ ์ฐ์ต ๊ณผ์ : SageMaker๋ก ML ๋ชจ๋ธ ํ์ต → Endpoint ๋ฐฐํฌ → Lambda ์ฐ๊ฒฐ
4๏ธโฃ ์ค์๊ฐ ์์คํ ์ฒ๋ฆฌ ๊ตฌ์ฑ
- ๐น Kafka or Redis Stream์ผ๋ก ์ค์๊ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๊ตฌ์กฐ ์ค๊ณ
- ๐น ๋ชจ๋ธ ๋ชจ๋ํฐ๋ง ๋ฐ alert ์์คํ (Prometheus + Grafana ๋๋ ์์ฒด ๋ก๊น )
โ๏ธ ์ฐ์ต ๊ณผ์ : ์ค์๊ฐ ๊ฐ๊ฒฉ ์์ธก ํ๋ฆ ์๋ฎฌ๋ ์ด์ (์คํธ๋ฆผ ๊ธฐ๋ฐ)
5๏ธโฃ ํฌํธํด๋ฆฌ์ค ์ ๋ฆฌ ๋ฐ ์ด๋ ฅ์/๊นํ๋ธ ๊ตฌ์ฑ
- ๐น GitHub: ์ฝ๋ + ์คํ ๊ฒฐ๊ณผ ๋ฌธ์ํ + README ๊พธ๋ฏธ๊ธฐ