본문 바로가기

ML Recommendation

(6)
포트폴리오를 위한 추천 알고리즘 구현 [3장] : Scikit-Surprise Surprise를 이용해 잠재 요인 협업 필터링 기반의 개인화된 영화 추천을 구현해 보겠습니다. 지금까지 살펴본 Surprise예제는 학습 데이터로 fit()을 호출해 학습한 뒤 테스트 데이터로 test()를 호출해 예측 평점을 계산하고 MSE/RMSE로 성능을 평가했습니다. 이제는 Surprise패키지로 학습된 추천 알고리즘을 기반으로 특정 사용자가 아직 평점을 매기지 않은(관람하지 않은) 영화 중에서 개인 취향에 가장 적절한 영화를 추천해 보겠습니다. 이번에는 데이터를 학습 데이터와 테스트 데이터로 분리하지 않고 전체를 학습 데이터로 사용하겠습니다. 그런데 Surprise는 데이터 세트를 train_test_split()을 이용해 내부에서 사용하는 TrainSet 클래스 객체로 반환하지 않으면 fit..
포트폴리오를 위한 추천 알고리즘 구현 [2장] : Scikit-Surprise 포트폴리오를 위한 추천 알고리즘 구현 [1장] : Scikit-Surprise 포트폴리오 구성을 위한 첫 번째 시간입니다. 추천 알고리즘 구현을 위해 포트폴리오를 구성하기 위한 실습을 하겠습니다. 본 과정을 통해 초급자로서 기본적인 추천 알고리즘을 구현하고 차 nicola-ml.tistory.com 포트폴리오 구성을 위한 두 번째 시간입니다. 먼저 이전 시간에 보충하기로 했던 내용에 대해 알아보겠습니다. ! 다음에 공부해야 할 내용 - 잠재요인 협업 필터링(Latent Factor), SVD 협업 필터링의 주요 목표는 사용자-아이템 평점 매트릭스와 같은 축적된 사용자 행동 데이터를 기반으로 사용자가 아직 평가하지 않은 아이템을 예측 평가(Predicted Rating)하는 것입니다. 예를 들어 특정 사용..
포트폴리오를 위한 추천 알고리즘 구현 [1장] : Scikit-Surprise 포트폴리오 구성을 위한 첫 번째 시간입니다. 추천 알고리즘 구현을 위해 포트폴리오를 구성하기 위한 실습을 하겠습니다. 본 과정을 통해 초급자로서 기본적인 추천 알고리즘을 구현하고 차 후 응용하여 실무에 적용하려 합니다. 추천 알고리즘에 콘텐츠 기반 필터링, 아이템 기반 협업 필터링, 잠재 요인 기반 협업 필터링 등이 있으나 실제적인 서비스 구현을 위해서는 알고리즘 외에 대용량 트래픽에 안전한 네트워크 구축과 보안정책 수립, 실제 알고리즘을 적용하기 위한 프론트 개발자와의 협업 등 매우 다양한 협업이 필요합니다. 그 시작으로 파이썬 기반에서 작동하는 Surprise 추천 패키지를 구동하고 응용하여 한글 검색도 가능한 수준의 검색 추천 알고리즘을 구현합니다. 이정도 스펙에서도 Mid급이나 Small Size..
아이템 기반 최근접 이웃 협업 필터링 실습 - MovieLens 최근접 이웃 협업 필터링은 사용자 기반과 아이템 기반으로 분류합니다. 이 중 일반적으로 추천 정확도가 더 뛰어난 아이템 기반의 협업 필터링을 구현해 보겠습니다. 하기 Site에서 ml-latest-small.zip 파일을 다운로드합니다. MovieLens Latest Datasets These datasets will change over time, and are not appropriate for reporting research results. We will keep the download links stable for automated downloads. We will not archive or make available p… grouplens.org 데이터 로딩 및 가공 import pandas ..
콘텐츠 기반 필터링 : TMDB 5000 Movie Dataset TMDB 5000 영화 데이터 세트는 유명한 영화 데이터 정보 사이트인 IMDB의 많은 영화 중 주요 5000개 영화에 대한 메타 정보를 새롭게 가공해 캐글에서 제공하는 데이터 세트입니다. 아래 Site에서 tmdb_5000_credits.csv와 tmdb_5000_movies.csv 두 개의 파일을 내려받으면 됩니다. TMDB 5000 Movie Dataset Metadata on ~5,000 movies from TMDb www.kaggle.com 장르 속성을 이용한 영화 콘텐츠 기반 필터팅 콘텐츠 기반 필터링은 사용자가 특정 영화를 감상하고 그 영화를 좋아했다면 그 영화와 비슷한 특성/속성, 구성 요소 등을 가진 다른 영화를 추천하는 것입니다. 가령 영화 '인셉션'을 재미있게 봤다면 '인셉션'의 장..
추천 시스템의 이해 : 콘텐츠 기반 필터링 추천 시스템 / 최근접 이웃 협업 필터링 / 잠재 요인 협업 필터링 추천 시스템은 크게 콘텐츠 기반 필터링(Content Based Filtering) 방식과 협업 필터링(Collaborative Filtering) 방식으로 나뉩니다. 그리고 협업 필터링 방식은 다시 최근접 이웃(Nearest Neighbor) 협업 필터링과 잠재 요인(Latent Factor)협업 필터링으로 나뉩니다. 현재는 넷플릭스 추천 시스템 경연 대회에서 행렬 분해(Matrix Factorization)기법을 이용한 잠재 요인 협업 필터링 방식이 우승하면서 대부분의 온라인 스토어에서 잠재 요인 협업 필터링 기반의 추천 시스템을 적용하고 있습니다. 요즘은 서비스하는 아이템의 특성에 따라 콘텐츠 기반 필터링이나 최근접 이웃 기반 협업 필터링 방식을 유지하는 사이트도 많으며, 특히 아마존의 경우는 아이..