머신러닝 프로젝트 라이프 사이클(기획서)
|
각자 프로젝트에서 얻고자 하는것, 해보고 싶은 역할 |
곽동호 T5013 |
- Raw data 처리 |
- 모델 구상 및 구현 |
| 권수훈 T5017 | - 데이터 파이프라인 및 머신 러닝 모델 플랫폼 구축 역량
- python 프로젝트 구성 역량 |
| 박상우 T5081 | - ops 역량 (모델 서빙)
- 완성이 가능한 (참신함 < 완성도) |
| 이민호 T5140 | - 사용자의 관점에서 서비스 기획
- 유지보수가 용이한 모델 구현 |
| 이한정 T5166 | - 사용자의 로그를 time-series data 형태 등으로 이해하여 추천에 활용하기
- 전반적인 데이터 엔지니어링(server API 구현, airflow, db 관리, 인프라 관리, spark, kafka 등 사용할만한 기술 있으면 사용해보기) |
| 이준원 T5237 | - 데이터 엔지니어링 (크롤링부터 DB에 저장해서 꺼내오기)
- 유저 활동 로그를 기록해서 추천에 활용
- Cold Start 문제 해결, Session Based 추천 |
빠른 배포 및 실험 가능한 환경 구축
준비 과정을 통해서 완성하고자 하는것 ✔️
-
[ ] 프로젝트 방향성 통일
-
프로젝트 주제:
- 1안 - 기존 이미지 기반 코디 추천 (가지고 있는 옷 잘 쓰기) - 매칭에 가까움
- 2안 - 개인화된 코디 추천 (피드형이든 뭐든 상관 없음 ) - 개인화된 추천에 가까움
- 민호) 배운거 활용하기에는 2안이 더 적절하긴 함
- 수훈) 결국 만들고자 하는 것 패션용 틴더, 패션용 핀터레스트
- 2안의 단점??? → 없음 ㅋㅋㅋ
-
핵심 기능(최소 기능)
- (가급적) single page 웹 (프론트)
- 페이지 갯수를 줄이자가 핵심.
- 예뻐야 함.
- mobile first
- 핀터레스트 뷰 + inf scroll + intersection observer + scroll smooth
- 유저 interaction 로깅 (to bq)
- 클릭 여부 (우클릭 포함)
- 따봉
- 개 간단한 로그인.
- 성별, 나이(Optional)
- 아이디, 비번(required)
- 로그인 없이 쓸 수 있도록 하자.→ LS나 cookies에 random hashing 값을 유저 식별자로 사용.
- 이후에 가입하면 연동되게 (optional)
-
R&R
- 모델링은 나중에 해(배포 이후)
- 데이터 팀
- 크롤링(script) + 데이터 관리(DE)
- 팀의 요구 사항에 따라 on-demand 크롤링
- 적재 (어디에?)
- 사진 (bucket storage - s3)
- 기타 정보(json) → mongodb atlas
- 제품 팀
- 프론트
- 화면단을 구성한다. 백엔드와 의사소통하면서 api call을 하여 얻어온 정보를 화면단에서 뿌린다.
- UI/UX 책임진다.
- SEO
- 백엔드
- 프론트가 만든 화면단을 배포한다.
- 유저 행동 관리 및 api 전반
- fastapi (속도, 배우기 쉽고, python)
- 유저 로그인/로그아웃
-
역할 분담