품질관리(QAQC) 데이터 부트캠프(본캠프)

본캠프_11주차(목)_TIL(시계열, 심화 프로젝트[바이오])

Wat_zy 2025. 11. 27. 08:55

✅ 오늘 한 것

시계열(복습 & 라이브세션), 심화 프로젝트[바이오]


✏️ 오늘 배운 점

시계열

한 번에 모든 기능을 구현하는 프로덕트가 아닌 일단 작동하는 최소의 기능을 만족하는 프로덕트(Minimum Vialbe Product, MVP)를 만들고 점차 확대하는 방식으로 구현하는 것이 중요하다.

MVP --> 완벽한 제품을 한 번에 만드는 것이 아니라 작동하는 최소 기능 제품을 만들고 기능을 점차 확대해 나가나느 것이 중요

  • 기능 정의
기능 번호 기능 주요 작업 필수/선택
1 데이터 수집 데이터 전처리 필수
2 모델 개발 예측 모델 학습, 저장, 평가 필수
3 API 서버 개발 FastAPI 서버 구축 필수
4 배포 클라우드 혹은 회사 서버 내 배포 필수
5 자동화 데이터 파이프라인, 재학습 스케쥴링 선택
6 모니터링 로그 관리 선택
7 프론트엔드 UX/UI 개발, 시각화 선택

 

가상환경: 프로젝트마다 필요한 패키지와 의존성을 분리하여 버전 충돌 이슈를 방지하고 독립된 환경을 구축하기 위해 사용

  • 가상환경의 주요 장점
    • 의존성 충돌 방지: 서로 다른 버전의 라이브러리가 필요한 프로젝트들을 독립적으로 관리
    • 프로젝트 이식성 향상: requirements.txt 파일을 통해 필요한 패키지 목록을 공유하고 재현
    • 시스템 환경 보호: 전역 Python 환경을 오염시키지 않고 실험적인 패키지를 설치하고 테스트

API(Application Programming Interface): 두 소프트웨어 구성 요소가 서로 통신할 수 있게 하는 메커니즘

✅ API를 가져오는 request 모듈

  • 대표 메소드
이름 설명 예시
GET 서버로부터 데이터 취득(조회 전용) 당근마켓에서 물건을 클릭하여 정보 보기
POST 서버에 데이터를 추가 당근마켓에서 게시글 올리기
PUT 서버에 데이터 갱신, 작성 게시글의 가격을 수정
DELETE 서버의 데이터를 삭제 게시글 삭제

 

웹개발 모듈

특징 FastAPI Flask Django
주 용도 API 서버, ML 배포, 마이크로서비스 간단한 웹사이트, 가벼운 API 거대한 웹사이트 (풀스택)
속도 매우 빠름 (비동기 기본) 보통 (동기 기본) 다소 무거움
문서화 자동 생성 (기본 내장) 별도 플러그인 설치 필요 별도 설정 복잡함
러닝커브 쉬움 (모던 파이썬 문법 활용) 매우 쉬움 어려움 (공부할 게 많음)

 

pickle: 로컬에 서버 구축 단계에서 학습된 모델과 라벨 인코더를 저장하고 다시 불러올 때 사용하는 모듈

--> .pkl 파일로 모델을 직렬화하여 저장할 수 있음

 

curl 명령어를 이용한 API 응답 확인

파라미터 풀 네임 / 역할 설명 예시 값
-X Request Method (요청 방식) 서버에 어떤 종류의 작업을 요청하는지 지정데이터를 전송하거나 생성할
때는 주로 POST를 사용
POST, GET, PUT
URL Uniform Resource Locator (주소) 요청을 보낼 서버의 주소와 경로(엔드포인트)를 지정합니다. 127.0.0.1은
내 컴퓨터를 의미합니다.
http://127.0.0.1:8080/predict
-H Header (요청 헤더) 요청에 대한 부가 정보를 전달합니다. 여기서는 전송하는 데이터의
형식(Content-Type)을 서버에 알려줍니다.
"Content-Type: application/json"
-d Data (요청 본문) 서버로 전송할 실제 데이터 (요청 본문, Body)를 지정합니다. FastAPI의
PredictionInput 모델이 이 JSON 데이터를 받아서 사용합니다.
{"sex": "male", "age": 25}'

✏️ 오늘의 질문

1. 변수가 숫자로 존재하더라도 연속형 변수가 아닌 카테고리 구분으로 사용된다면 범주형 변수로 변환해야 하는가?

변수가 숫자로 존재하더라도 연속형 변수가 아닌 카테고리 구분으로 사용되고 있다면 범주(A, B)와 같은 방식으로 변환∙처리하는 것이 적절하다. 


📌추가로 해야 할 점

데이터 분석 & 머신러닝 흐름에 맞게 정리