프로젝트 초기의 추천 알고리즘은 새로운 Word2Vec 모델을 생성해서 해당 모델에 게임 제목과 게임 태그, 게임 태그의 설명, 게임 유저평 등의 텍스트가 결합된 게임 문서를 학습시키는 형식으로 기획하였음.
게임 문서 예시
문제점
기존 학습된 Word2Vec 모델이 아닌, 새 모델에 보드게임의 데이터만 학습시켰기 때문에 해당 문서에 존재하지 않는 단어에 대해서 벡터 생성이 제대로 이루어지지 않음.
처음 생각한 해결책
대량의 코퍼스로 이미 학습된 모델을 사용하면 되지 않을까? → gensim 라이브러리 버전과 word2vec 버전 차이로 호환 x
최종 해결책
Google BERT 모델 및 토크나이저 사용
결과
게임의 벡터를 2차원으로 축소하여 분포 시각화
유저의 자연어 입력을 받은 후, koBERT 모델로 임베딩하여 코사인 유사도 기반 추천 시, 특정 군집의 게임이 과도하게 많이 추천되는 경향을 보임
모든 입력에 대해 표시한 부분의 게임이 과도하게 출현