콘텐츠 기반 필터링
딸기 우유를 맛있게 마신 손님에게 딸기 성분이 들어간 과자와 케이크를 콕 집어 골라주는 점원과 같아요.
정의 콘텐츠 기반 필터링은 사용자가 과거에 좋아했던 아이템의 특징을 분석해서, 그와 비슷한 특징을 가진 새로운 아이템을 찾아서 권해주는 추천 기술이에요. 다른 사람들의 반응을 살필 필요 없이 오직 '아이템 자체의 성질'과 '내 취향'만 꼼꼼히 비교해요.
아이템의 성분표를 뜯어보는 추천 방식
영화 추천 서비스를 예로 들어볼게요. 우리가 어떤 SF 액션 영화에 '좋아요'를 누르면, 시스템은 그 영화를 여러 개의 알갱이(속성)로 쪼개어 분석해요. 장르가 'SF'인지, 감독이 누구인지, '우주선'이나 '인공지능' 같은 핵심 키워드가 들어있는지 꼼꼼하게 따져보는 식이에요.
이렇게 분석한 정보는 아이템마다 붙어있는 일종의 상세 성분표가 돼요. 컴퓨터는 글자나 장르 정보를 숫자로 바꾼 뒤, 여러분이 좋아하는 특징들의 조합과 가장 닮은 다른 영화를 찾아내요. 이처럼 사용자가 소비한 대상의 속성 정보 자체에 집중하는 것이 콘텐츠 기반 필터링의 핵심이에요.
따라서 음악이라면 템포, 악기 구성, 가수의 음색을 분석하고, 뉴스 기사라면 본문에 자주 등장하는 단어들을 바탕으로 비슷한 글을 골라내요.
다른 사람의 반응이 없어도 괜찮아요
추천 시스템에서 가장 큰 골칫거리 중 하나는 바로 막 개봉한 영화나 갓 등록된 신상품이에요. 다른 사람들의 평점이나 구매 후기가 전혀 쌓여있지 않은 상태를 개발자들은 '콜드 스타트(초기 시동 문제)'라고 불러요.
하지만 콘텐츠 기반 필터링은 다른 사람들의 평가 데이터가 전혀 없어도 아무런 문제가 없어요. 오직 콘텐츠 자체의 설명 글, 태그, 카테고리 정보만 있으면 되기 때문이에요. 방금 올라온 따끈따끈한 신작이라도 내가 좋아하는 감독과 키워드가 적혀 있다면 누구보다 빠르게 나에게 추천될 수 있어요.
또한 "왜 이 영화를 추천했나요?"라는 질문에 명확하게 답할 수 있어요. 사용자가 이전에 좋아했던 특정 감독이나 장르가 일치했기 때문이라는 분명한 근거를 보여줄 수 있답니다.
조금 더 정확히 말하면: 익숙함 뒤에 숨은 한계
조금 더 정확히 말하면, 이 방식은 정밀한 대신 '뜻밖의 발견'을 선물하기는 어려워요. 늘 내가 보던 것과 비슷한 속성을 가진 아이템만 계속 추천하기 때문에, 나의 취향이 좁은 방 안에 갇히는 과도한 전문화 현상이 발생하기 쉬워요.
평소 로맨스 영화만 보던 사용자라면 영원히 명작 공포 영화나 다큐멘터리를 추천받지 못할 수도 있어요. 또 사진이나 음악처럼 컴퓨터가 그 내부 특징을 글자나 숫자로 정밀하게 뽑아내기 어려운 콘텐츠는 품질 좋은 추천을 만들기 까다롭다는 점도 있어요.
그래서 오늘날의 넷플릭스나 유튜브 같은 최신 서비스들은 콘텐츠 기반 필터링 하나만 쓰지 않아요. 나와 취향이 비슷한 다른 사람들의 시청 기록을 엿보는 '협업 필터링'과 똑똑하게 섞은 하이브리드 추천 시스템을 널리 활용하고 있어요.
🤔 흔한 오해
콘텐츠 기반 필터링은 나와 취향이 비슷한 다른 사람들의 행동을 관찰해서 추천한다.
그것은 '협업 필터링'의 방식이에요. 콘텐츠 기반 필터링은 다른 사람들의 데이터는 전혀 보지 않고, 오직 아이템 자체의 특징과 내 이전 선택만 비교해요.
🧺 일상에서 만나요
아이템의 특징 성분을 분석해 내가 좋아했던 것과 가장 닮은 아이템을 골라주는 기술이에요.