프로그래밍
-
네트워크 (1)프로그래밍/CS 2025. 3. 8. 00:31
컴퓨터 네트워크 : 여러 장치들이 서로 정보를 주고받을 수 있는 통신망인터넷 => 네트워크끼리 연결한 네트워크 컴퓨터 네트워크 구성 요소노드 : 종단 시스템, 호스트 => 메세지를 최초로 송신, 생성하는 대상, '주소'를 통해 위치 특정유니캐스트 : 1 대 1 통신브로드캐스트 : 네트워크 전체에 메세지 전송멀티캐스트 : 네트워크 내의 특정 그룹에만 메세지 전송클라이언트 : 요청을 보내는 호스트서버 : 응답을 보내는 호스트메세지 : 주고 받는 정보 (e.g. 웹페이지, 사진, 동영상 등)간선(통신 링크)유선 케이블 (트위스티드 페어 케이블, 광케이블)무선 (와이파이) LAN : 근거리를 연결한 네트워크WAN : 원거리를 연결한 네트워크 => ISP에 의해 구축 패킷 교환 네트워크 : 주고받는 정보를 패킷(..
-
[기업 프로젝트] 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) : 사용자가 오랜 시간이 지난 후 온라인 스토어로 돌아올 때마다 변경됨.해당 이..
-
Deep Learning 개요프로그래밍/ML, DL 2025. 1. 10. 20:43
딥러닝 구성 필수 요소모델을 학습하기 위해 필요한 데이터 (Data)MNIST, Fashion MNIST ...주어진 데이터를 원하는 결과로 변환하는 모델 (Model)다층 퍼셉트론(MLP), 컨볼루션 신경망(CNN), 순환 신경망(RNN) ...모델의 결과에 대한 오차를 수치화하는 손실 함수 (Loss Function)평균절대오차(MAE), 평균제곱오차(MSE), 교차 엔트로피(CE) ...손실 함수의 값이 최소가 되도록 모델의 파라미터를 조정하는 최적화 알고리즘 (Optimization Algorithm) 경사 하강법(GD), 확률적 경사 하강법(SGD), 모멘텀(Momentum) ...성능 향상을 위한 기타 알고리즘Dropout, Regularization, Normalization ... 데이터 ..
-
[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)를 사용한다. 즉, 회귀 모델이 실..