프로그래밍/Project
-
[기업 프로젝트] RAG 시스템: 모델 선택부터 배포까지프로그래밍/Project 2025. 2. 17. 23:02
부트캠프의 마지막 프로젝트로 국내 최대 버그바운티 플랫폼 기업인 '파인더갭(FindtheGap)'의 과제를 받아 진행했다.기업 측에서 프로젝트 주제 노출을 원하지 않아, 실험한 기술과 모델 위주로 정리하고자 한다.T5 모델 파인튜닝 처음에는 T5 모델 파인튜닝을 시도했지만, 결과적으로 성공적이지 못했다.사용한 모델은 FLAN-T5-BASE와 KE-T5-BASE 두 가지였다.FLAN-T5는 few-shot 학습만으로도 특정 도메인에 적응할 수 있다는 장점이 있어 선택했다.KE-T5는 한국어 기반 모델로, 영어 위주의 FLAN-T5와 성능을 비교하기 위해 활용했다.그러나 예상대로 FLAN-T5는 한국어 생성이 제대로 되지 않았고, 깨진 글자가 출력되거나 영어 위주로 결과가 생성되었다.KE-T5는 처음 시도했..
-
[RecSys Project] 고객 맞춤 상품 추천 시스템 만들기프로그래밍/Project 2025. 1. 11. 00:08
Github Link개요 온라인 쇼핑이 생활화된 세상에서 수많은 상품들이 쏟아져 나오고, 소비자들은 그 수많은 상품들 중에서 원하는 상품이 각자 다르다.물론 소비자가 직접 수많은 상품들을 직접 찾아보고 비교하며 본인이 원하는 상품들을 골라서 구매할 수도 있지만, 소비자에게 맞는 상품을 추천해 주는 것만큼 편한 것은 없을 것이다.실제로 수많은 이커머스에서는 추천시스템을 구축해서 소비자들에게 맞는 상품들을 추천해주고 있다.이번 프로젝트에서는 이 추천시스템을 직접 구축해보고자 한다. 데이터 구성학습 데이터는 아래 항목들로 구성되어있다. 유저 ID(user_id)아이템 ID(item_id)사용자의 세션 ID(user_session) : 사용자가 오랜 시간이 지난 후 온라인 스토어로 돌아올 때마다 변경됨.해당 이..
-
[NLP Project] 일상 속 대화 적절하게 요약하기프로그래밍/Project 2025. 1. 8. 18:43
개요 회의나 토의, 사소한 일상 대회 등 일상생활에서 대화는 수시로 이루어지고 있다.또한 그 수많은 대화들을 대화가 끝난 후에 기억에 의존해서 요약하게 되면 잘못된 내용이나 누락되는 내용이 생기기 마련이다.회의나 토의 등과 같이 중요한 대화의 경우에는 녹음을 해둘 수도 있지만, 장시간 이어진 대화를 전부 다시 듣기에는 비효율적이기 때문에 요약이 필요하다.이런 불편함을 개선하기 위해서 일상 대화를 바탕으로 요약문을 생성하는 모델을 구축하고자 한다. 당장 나 또한 대화가 끝난 이후에 정리하려다가 기억하지 못하고 누락되는 것들이 많다.대학 강의를 들을 때에도 장시간 연속으로 강의를 듣다 보면 전체적인 내용이 필요할 때도 있지만 요약이 필요하다고 느낄 때도 많아서 여러 방면으로 활용하기 좋은 기술인 것 같다. ..
-
[CV Project] 육안으로 분간하기도 힘든 문서 딥러닝으로 분류하기프로그래밍/Project 2024. 11. 12. 01:39
Github Link개요 모든 기업에서 다양한 형태의 문서를 만들어서 사용해 왔고, 지금도 수많은 문서들이 새로 만들어지고 있다.그렇게 쌓인 문서들은 보관하기에는 많은 공간을 필요로 하기에, 많은 기업들이 쌓인 문서들을 데이터화해서 저장 및 보관하고 있다.그런 문서의 데이터화 작업에서 핵심이 될 수 있는 기술이 문서의 타입을 분류하는 것이라고 생각한다. 당장 개인이 가지고 있는 문서만 해도, 보험이나 휴대전화, 인터넷 가입, 월세 임대 등의 계약서부터 병원에 갔을 때 받게되는 진단서나 처방전, 물품 구매 시 받는 영수증까지 그 외에도 수많은 문서들이 있다.그렇기에 처음 이 주제를 봤을 때 기업에서 뿐만 아니라 개인의 생활에서도 유용하게 활용할 수 있지 않을까 생각했다. EDA우선적으로 데이터를 확인해본 ..
-
ML Ops 음악 추천 시스템 프로젝트 회고프로그래밍/Project 2024. 10. 16. 12:13
Github Link프로젝트 개요 이번 프로젝트는 MLFlow와 Airflow를 활용한 ML Ops를 메인으로 진행됐다. 우리 팀은 ML Ops를 적용할 서비스로 음악 추천 시스템을 선정했다. 주제 선정 이유 기존에도 관심이 있던 추천 시스템 분야였고, 서비스를 만들기 위해서는 데이터가 있어야 하는데 음악 추천 시스템을 할 경우, 스포티파이 API에서 제공되는 Audio Features를 이용하면 데이터를 수집하기에도 비교적 용이하고, 곡 추천 시에도 비교적 명확한 기준을 가지고 추천하는게 가능하겠다는 생각이 들어 주제로 선정했다. 담당한 역할 이번 프로젝트는 ML "Ops"가 메인이었기 때문에 ML 부분에만 모든 사람이 달려들기보다는 전체적으로 시스템을 만드는데 집중하는게 좋을 것 같았고, 그래서 나는..
-
아파트 실거래가 예측 경진대회 회고프로그래밍/Project 2024. 9. 23. 23:31
Github Link경진대회 개요 Upstage AI Lab 4기의 첫 경진대회인 House Price Prediction 경진대회는 주어진 데이터를 활용해 서울의 아파트 실거래가를 효과적으로 예측하는 모델을 개발하는 대회이다. 대회에서 제공된 데이터셋을 기반으로 모델을 학습하고, 서울시 각 지역의 아파트 매매 실거래가를 예측하는 데에 선형 회귀, 결정 트리, 랜덤 포레스트, 딥 러닝과 같은 다양한 Regression 알고리즘을 사용할 수 있다. 이 대회의 목표는 정확하고 일반화된 모델을 개발해 아파트 시장의 동향을 미리 예측하는 것이다. 모델의 성능을 평가하는 지표로는 예측된 값과 신제 값 간의 평균 편차를 측정하는 RMSE(Root Mean Squared Error)를 사용한다. 즉, 회귀 모델이 실..
-
LangChain을 활용한 LLM 애플리케이션 개발 프로젝트 회고프로그래밍/Project 2024. 9. 1. 01:14
Github Link 프로젝트 주제 우리 팀은 "항공편 정보 특화 QA Engine" 이라는 주제로 진행하기로 했다.여러가지 주제가 나왔지만 외부에서 비교적 정확한 정보를 가져올 수 있으면서, QA Engine 특성 상 좀 더 명확한 답을 낼 수 있는 주제로 선정하는 것이 LLM을 통해 구현하기에 더 적합하다고 생각하기도 했고, 최근 해외 여행을 가는 경우가 많지만 ChatGPT, Gemini 등과 같은 서비스에서는 실시간 정보가 중요한 항공편과 같은 질문이 불가능했기에 메리트가 있다고 판단했다. 구현하고자 했던 기능 QA Engine에서 사용할 핵심 정보인 항공편 정보를 가져오는 기능불러온 항공편 정보를 RDB에 저장하는 기능LLM을 이용해 RDB에서 원하는 정보를 불러올 쿼리 생성RDB에서 불러온 데..