


추천 시스템은 사용자의 과거 행동 데이터나 다른 데이터를 기반으로 사용자에게 필요한 정보나 제품을 제시하는 시스템을 말합니다. 유튜브, 넷플릭스뿐만 아니라 온라인 쇼핑몰, 뉴스 추천, 금융상품 추천, 검색 시스템 등 다양한 분야에서 사용되고 있습니다.
추천 알고리즘은 빅데이터와 함께 발전합니다. 빅데이터 속 집단의 크기를 나눌 수 있게 되었습니다. 각 사용자별로 맞춤 추천과 서비스를 제공하는 것을 개인 맞춤형 추천 시스템이라고 합니다.
넷플릭스 추천 알고리즘 추천 시스템 종류

추천 시스템 종류
추천 시스템은 크게 다섯 가지로 분류할 수 있습니다. 협업 필터링(Collaborative Filtering), 내용 기반 필터링(Content-based Filtering), 지식 기반 필터링(Knowlege-Based Filtering), 딥러닝 추천 기술(Deep Learing), 하이브리드(Hybrid)입니다. 그 중 넷플릭스의 추천 알고리즘은 협업 필터링과 내용 기반 필터링을 적용한 것으로 알려져 있습니다. 먼저 이 두 가지 필터링부터 살펴볼까요?
협업 필터링(Collaborative Filtering)


(왼쪽) 로맨스, 드라마 장르 선호 A의 홈 화면/(오른쪽) 액션, 미스터리 장르 선호 B의 홈 화면 출처 : 넷플릭스
협업 필터링은 구매, 소비한 제품에 대한 각 소비자의 평가를 받아 평가 패턴이 비슷한 소비자를 하나의 집단으로 간주합니다. 각 집단에 속한 소비자의 취향을 활용하는 기술입니다. 알고리즘의 결과가 직관적이고 항목의 구체적인 내용을 분석하지 않아도 된다는 장점이 있습니다. 예를 들어 ‘마이 네임’을 시청한 시청자가 ‘닥스트 아워’를 시청한 경우가 많으면 ‘마이 네임’을 시청한 사람에게 ‘닥스트 아워’를 추천하는 방식입니다.

핵심은 소비자의 평가입니다. 사람들의 취향이 명확하게 구분되는 제품에는 높은 정확도를 보이지만 소비자의 평가 정보를 입수하기 어렵다는 단점이 있습니다. 이러한 한계를 보완하기 위해 장바구니에 담은 제품 또는 알림 설정한 제품의 클릭스트림(Clickstream)을 수집, 분석하여 소비자의 취향과 요구를 파악할 수 있습니다.
내용기반 필터링(Content-based Filtering)

협업 필터링 및 내용 베이스 필터링 출처: researchgate
내용기반 필터링은 제품의 내용을 분석하고 추천하는 기술입니다. 소비자가 소비하는 제품 중 텍스트 정보가 많은 제품을 분석하고 추천할 때 자주 이용합니다. 내용 기반 필터링을 하려면 항목을 분석한 프로파일과 사용자 취향을 추출한 프로파일을 추출하고 유사성을 계산해야 합니다. 사용자의 특성을 비교하여 사용자가 선호하는 콘텐츠를 제공하는 것입니다.
“사용자들이 어떤 영화를 찾고 있는가?”, “그가 보기 시작하면서 바로 그만둔 영화는 무엇인가?”, “그는 시리즈물을 한꺼번에 정주행하는가?”, “하는 개인적 취향에 관한 정보와 영화의 배경, 인물, 장르 등을 분석한 정보와 비교하는 방식입니다.

출처 : https://www.netflixprize.com/leaderboard.html
현재 넷플릭스에서 사용하고 있는 알고리즘은 협업 필터링을 기반으로 고도화한 ‘모델 기반 협업 필터링(Model-based Collaborative Filtering algorithm)’이라고 한다. 2006년 넷플릭스에서 100만달러의 상금을 걸고 공모한 ‘넷플릭스 프라이즈(Netflix Prize)’를 통해 개발된 것으로 알려져 있습니다.
협업 필터링은 계산량이 비교적 많은 알고리즘이기 때문에 사용자 수가 많을 경우 효율적으로 추천할 수 없다는 단점이 있습니다. 또 사용자가 별을 달지 않은 영화의 경우 협업 필터링을 적극적으로 활용할 수 없게 되는 겁니다. 넷플릭스는 협업 필터링 한계를 극복하기 위해 내용 기반 필터링도 함께 사용합니다.



출처 : 인터파크 도서
개인화 추천 알고리즘에 관심 있는 데이터 분석가 분이라면 Infran의 신규 업데이트된 이 강의를 소개합니다! 개인화 추천 기술의 전반적인 내용을 다룹니다. 추천 시스템 책 ‘Python을 이용한 개인화 추천 시스템’을 참고하여 체계적인 강의 커리큘럼이 구성되어 있습니다. 본격적인 실습으로 넘어가기 전에 개념과 기본 동작 원리를 보면서 기초를 다질 수 있습니다.
추천 알고리즘, 내 손으로 직접 실현하는


실제 강의 화면
추천 알고리즘에 대한 정확한 개념과 원리를 지적한 후 직관적인 언어 파이썬(Python)을 활용하여 실습해보는 강의입니다. 파이썬(Python)은 다른 프로그래밍 언어에 비해 빠르게 배울 수 있으며 인공지능 분야에 특화된 언어입니다. 인공지능 모델 구축에 필요한 데이터 엔지니어링까지 함께 배울 수 있도록 설계되어 있습니다!


어떤 추천 시스템 데이터로 실습을 진행할까요? 미네소타 대학의 그룹 렌즈(GroupLens) 프로젝트를 통해 개발되고 검증된 MovieLens 데이터를 활용해 실습을 진행한다는 점! 추천 시스템을 배우고 실무에 맞는 구현 능력까지 키우고 싶다면 지금 커리큘럼을 보세요!

