Search
Duplicate
🍮

추천시스템

멘토
세션 시간
세션 시간 월요일 오후 9시 - 10시 (부분 대면)
모집 인원
모집 인원 6명 (2개 팀)
과제 및 면접
과제 O | 면접 X

추천시스템 2024 여름 커리큘럼

모집 인원 6명(2개 팀)
활동 시간 매주 월요일 오후 9시 - 10시
활동 방법 주 1회 (대면 + 비대면)혼합 정기 세션 + 주 1회 필수 팀별 미팅(대면 권장)
※ 3주마다 토요일 오후 1시 - 2시에 대면 세션을 진행합니다. (계획 참고)

Overview

추천시스템(Recommender Systems)

추천시스템(Recommender Systems)은 사용자에게 맞춤형 콘텐츠를 제공하기 위해 설계된 알고리즘 및 기술 집합입니다. 이러한 시스템은 사용자의 취향, 행동, 선호도를 분석하여 적절한 제품, 서비스, 콘텐츠 등을 추천합니다. 추천시스템은 협업 필터링(Collaborative Filtering)과 콘텐츠 기반 필터링(Content-Based Filtering)으로 나뉩니다.

1. 협업 필터링 (Collaborative Filtering)

협업 필터링은 사용자와 아이템 간의 상호작용 데이터를 이용해 추천을 수행합니다. 이 방법은 다시 두 가지 하위 유형으로 나뉩니다:
사용자 기반 협업 필터링 (User-Based Collaborative Filtering): 비슷한 취향을 가진 사용자들을 찾아내어 그들의 행동을 바탕으로 추천을 제공합니다. 예를 들어, 사용자 A와 B가 비슷한 영화를 좋아한다면, A가 아직 보지 않은 B의 좋아하는 영화를 추천합니다.
아이템 기반 협업 필터링 (Item-Based Collaborative Filtering): 사용자들이 비슷한 방식으로 평가한 아이템들을 분석하여 추천을 제공합니다. 예를 들어, 영화 X와 Y를 비슷한 사용자들이 좋아한다면, X를 좋아한 사용자에게 Y를 추천합니다.

2. 콘텐츠 기반 필터링 (Content-Based Filtering)

콘텐츠 기반 필터링은 아이템의 특징을 분석하여 추천을 수행합니다. 이 방법은 사용자와 아이템의 속성을 매칭하는 데 초점을 맞춥니다. 예를 들어, 사용자가 특정 장르의 영화를 선호한다면 그 장르의 영화를 더 많이 추천합니다.

추천시스템의 적용 사례

e-commerce: 쿠팡과 같은 온라인 쇼핑몰에서 고객의 구매 이력과 검색 이력을 바탕으로 제품을 추천.
스트리밍 서비스: 넷플릭스, 유튜브, 스포티파이 등에서 사용자의 시청/청취 이력을 바탕으로 영화, 동영상, 음악을 추천.
뉴스 포털: 사용자가 관심을 가질 만한 뉴스 기사를 추천.
소셜 미디어: 페이스북, 인스타그램 등에서 사용자가 좋아할 만한 친구나 페이지를 추천.

선발 방식

기존 다이브 멤버
선택 과제 → 선발
기존 다이브 멤버필수 과제가 아닌 선택 과제만 진행하면 됩니다
신규 모집 멤버
필수 과제(+선택 과제) → 선발

자격요건

요건
Python programming
기본적인 파이썬 코딩과 numpy, pandas, pytorch를 다룰 수 있어야 합니다.
※ 잘 하지 못해도 지원이 가능하나 스스로 공부하셔야 합니다.
끈기
매주 인공지능을 공부하고 코드를 작성하고 프로젝트를 한다는 것은 쉬운 일이 아닙니다. 또한 팀 단위로 활동을 진행하기 때문에 무책임한 태도는 팀원들에게 피해를 줄 수 있습니다. 이 부분 유념하셔서 끝까지 완주하실 수 있는 분만 지원해 주세요.
열정
본 프로그램은 강의 중심이 아닌 프로젝트 중심으로 진행됩니다. 프로젝트는 자율성이 높기 때문에 열정과 호기심이 없으면 진행되기 어렵습니다. 추천시스템에 대한 지식은 부족할지라도 흥미를 가지고 열심히 참여하실 수 있는 분이면 좋겠습니다.

과제

필수 과제
1.인공지능과 관련하여 여태 까지 공부했던 내용을 공유해 주세요!
공부한 내용이 없을 시 Matrix factorization을 설명하는 글을 노션에 작성해 주세요.
블로그와 깃허브를 공유해 주셔도 됩니다.
추천시스템과 관련한 내용이 있을 시 가산점이 있습니다.
2.공부를 하면서 겪었던 어려움과 그것에 대해 고민했던 과정을 공유해 주세요!
시스템적인 문제(Cuda, Linux, conda, docker, git 등)에 대해서 작성하셔도 됩니다.
3.본인이 생각하는 추천시스템이란 무엇인지, 어떤 지향점을 가지면 좋을지 얘기해 주세요!
사전적인 정의보다는 본인의 느낌을 토대로 서술해 주세요.
추천시스템의 문제점도 함께 서술하여도 괜찮습니다.
선택 과제
어떤 주제로 프로젝트를 진행하고 싶은지, 어떤 모델을 사용할 수 있을 지 제시해 주세요.
아이디어 정도만 간단히 제시해 주시면 됩니다.
모델을 선정한 이유도 설명해 주세요.
선택 과제에는 가산점이 있습니다.
과제 목적
프로젝트를 진행할 수 있는 기초 지식이 있는지 확인하기 위함입니다.
열정과 흥미를 가지고 활동에 임할 수 있는지 확인하기 위함입니다.
제출 방식
노션으로 작성하고 공유해 주시면 됩니다.
필요시 블로그, 깃헙 링크를 노션에 추가해 주세요.
과제 제출 방법
노션 링크를 제출하실 경우, 아래 두 설정을 반드시 모두 완료해주셔야 합니다.
1.
우측 상단 공유 - 공유 - Notion의 링크가 있는 모두로 공유 대상 변경
2.
우측 상단 공유 - 게시 - 웹에 게시 클릭 후 템플릿 복제 허용
수료 기수 슬랙 DM(홍서윤)으로 링크 제출
신규 기수 구글 폼으로 링크 제출

활동계획

주차 별 활동 계획

활동 계획
오프라인 세션은 특정 주차 토요일 강남역 부근에서 1시-2시에 진행됩니다.
프로젝트 주제를 선정한 뒤 관련된 모델 및 논문을 찾아 볼 예정입니다.
주차
내용
날짜 및 세션 유형
1주차
OT: 추천시스템 개요
8월 3일 오프라인 세션
2주차
프로젝트 주제 선정 / 관련 논문 선정
8월 5일 온라인 세션
3주차
주제 확정 / 논문 리뷰
8월 12일 온라인 세션
4주차
논문 리뷰
8월 19일 온라인 세션
5주차
팀세미나 준비
8월 24일 오프라인 세션
6주차
프로젝트
9월 2일 온라인 세션
7주차
프로젝트
9월 9일 온라인 세션
8주차
프로젝트
9월 21일 오프라인 세션
9주차
프로젝트
9월 23일 온라인 세션 or 진행x
10주차
오픈 세미나 리허설
9월 30일 온라인 세션
11주차
회고 세션

FAQ

Q: 추천시스템을 전혀 모르는데 지원해도 될까요?
A: 기존에 인공지능(DNN, MLP, LLM, RNN, CNN 등)을 공부하셨다면 충분히 하실 수 있습니다. 다만 한번도 인공지능을 공부한 적이 없는 경우 따라오기 힘들 수 있습니다.
Q: 어떤 주제를 해야 할지 떠오르지 않는데 지원해도 괜찮을까요?
A: 처음에 추천시스템의 개요와 기본 모델에 대해 소개해드릴 예정입니다. 설명을 듣고 팀원들과 얘기하다 보면 충분히 좋은 주제를 떠올릴 수 있을겁니다.
Q: 강의가 따로 없는 것 같은데 어떤 방식으로 도움을 주나요?
A: 저는 프로젝트가 원활하게 진행될 수 있게 보조하는 역할을 합니다. 주제를 선정할때 난이도나 실현 가능성 부분에서 피드백을 드릴 예정이고, 모델과 논문을 선정할 때 같이 서치하고 정보를 제공해 드릴 계획입니다. 요청이 있는 경우 강의도 진행될 수 있습니다.