Word2Vec을 활용한 추천시스템

2022. 1. 12. 21:35Recommender System

이전 포스트에서 Word2Vec 논문을 리뷰했습니다. 오늘은 Word2Vec을 활용한 추천시스템에 대해서 소개하도록하겠습니다. 

 

Word2Vec은 비슷한 의미의 단어를 분류하고 단어끼리 계산하여 적절한 의미를 도출합니다. 자연어를 다루는 문제에서 단어의 분산표현이라는 방법으로 벡터화할 수 있습니다. 이 분산표현은 다양한 자연어처리 작업에 이용할 수 있습니다.(전이학습) 그래서 텍스트 분류, 문서 클러스터링, 기계번역 등 NLP분야에서 다양하게 적용되고 있습니다. 

 

또한 자연어 뿐만 아니라 음성, 이미지, 동영상에도 응용되고 있습니다. 

 

 

Word2Vec을 활용한 추천시스템

 

1. 단어를 벡터화

 

the fat cat ___  on the mat

 

Word2Vec(CBOW)는 "the fat cat sat on the mat" 이라는 문장에서 주변단어 "fat", "cat", "on", "the" 를 통해 중심단어 sat을 도출하는 방식으로 학습하고 단어의 분산표현을 도출합니다. 

 

실제 적용사례로 OpenTable 에서는 음식점 리뷰데이터를 Word2Vec 분산표현으로 벡터화시켜 분류를 해 추천하는 서비스를 하고 있습니다.  

https://tech.opentable.com/navigating-themes-in-restaurant-reviews-with-word-movers-distance/

 

Word2Vec에서 단어대신 추천하고자 하는 item에 적용하여 추천할 item을 예측할 수 있습니다. 

 

2. Live 영상을 벡터화 :  Live2Vec 

Live영상 플랫폼에서 시청기록 데이터에서 주변단어의 역할을 하는 시청한 영상을 통해 중심단어에 해당하는 같이 시청한 영상을 예측합니다.  

A영상 B영상 ___  D영상 E영상

 

A, B, D, E 영상을 통해 C영상을 예측합니다. 

 

3. 음악을 벡터화 : Song2Vec

플레이리스트 데이터셋에서 음악을 벡터화시켜 음원 추천을 추천합니다. 

음악 추천하기

4. 상품을 벡터화 : meta-provec

구매한 제품 데이터 셋에 상품을 벡터화시켜 개인 맞춤형 광고를 할 수 있습니다. 

상품 추천하기

 

이처럼 Word2vec은 리뷰데이터, 뉴스 기사데이터 등의 데이터셋에서 단어의 의미를 벡터로 표현하여 비슷한 의미끼리 분류해 다양한 적용을 하고 있습니다. 또한 자연어처리 분야에만 국한되지 않고 영화, 음악등 다양한 분야에서 활용되고 있습니다. 앞으로 Word2Vec이 또 어떤 발전하고 적용할 수 있을지 기대가 됩니다!

 

 

reference

밑바닥부터 시작하는 딥러닝2(사이토 고키)

https://github.com/mattdennewitz/playlist-to-vec

https://brunch.co.kr/@goodvc78/16