◈ 이 책의 구성 ◈
1부에서는 추천 시스템 문제를 해결하기 어려운 이유와 해결에 사용하는 주요 개념, 필요한 배경지식 등을 소개한다. 2장에서는 과거 추천 시스템을 개발할 때 사용했던 전통적인 방법을 짚어본다. 사용자와 항목에 관한 정보를 특성 벡터로 사용해서 유사도 함수, 표준 지도 학습, 협력 필터링을 통해 사용자-항목 페어 점수를 산정한다. 전통적인 기법에서는 보통 추천 시스템에서 나타나는 탐색-이용 딜레마를 무시한다. 3장에서는 이 문제가 왜 중요한지 살펴보고 이후 장에서 문제를 해결하기 위해 사용하는 주요 개념을 소개한다. 4장에서는 기술적 해결책을 다루기에 앞서 다양한 추천 알고리듬의 성능을 평가할 때 사용할 수 있는 여러 기법을 다룬다.
2부에서는 흔히 발생하는 문제의 해결 방법을 자세히 다룬다. 5장에서는 다양한 문제 상황을 소개하고 시스템 아키텍처 예시를 제공하며, 이어지는 6, 7, 8장에서는 일반적으로 나타날 수 있는 문제 상황 한 가지씩 다룬다. 6장에서는 최고-인기 항목 추천으로 발생할 수 있는 문제의 해결책을 알아보는데 특히 탐색-이용 측면에 집중한다. 7장에서는 특성-기반 회귀를 통한 맞춤형 추천을 다루면서 최신 사용자-항목 상호작용 데이터를 활용해서 좋은 솔루션으로 빠르게 발전할 수 있게 모델을 지속해서 업데이트하는 방법을 집중적으로 다룬다. 8장에서는 7장에서 소개한 기법을 특성-기반 회귀에서 요인 모델(행렬 분해로 확장하게 되고, 동시에 요인 모델에서 나타나는 콜드-스타트 문제에 대한 자연스러운 해결책을 알아본다.
3부에서는 고급 주제 3가지를 다룬다. 9장에서는 잠재 디리클레 할당, LDA 주제 모델 사용하는 수정 행렬 분해 모델을 가지고 항목과 사용자 집단에서 나타나는 주제를 동시에 식별하는 분해 모델을 다양한 주제로 소개한다. 10장에서는 추천된 항목이 사용자와 밀접하게 관련돼야 할 뿐만 아니라 문맥과도 관련성을 가져야 할 때(예: 사용자가 현재 읽고 있는 뉴스 기사와 관련된 항목을 추천하는 경우 발생하는 문맥-