본문 바로가기

추천 시스템

(15)
[CB Filtering] 4. Profile Learner(1) 지금까지는 CB Filtering의 전체적인 개요, Content Analyzer를 공부했다. 지금부터는 Profile Learner에 대해 공부할 것이다. Profile Learner에는 다음과 같은 종류가 있으며, 이번 포스팅에서는 Least Square만 설명할 것이다. 1. Least Square 2. Naive Bayes 3. Rocchio's Algorithm 위 그림은 유저들이 영화에 대해 점수를 매긴 것이다.(점수 뿐만 아니라 유저가 자신의 선호를 나타낸 것이라면 아무거나 상관없다.) feature 1 feature 2 feature 3 Love at last 1 0.9 0 Romance forever 1 1.0 0.01 Cute puppies of love 1 0.99 0 Nonstop ..
KNN CF 구현 KNN을 2가지 방법으로 구현하겠다. 참고한 출처는 맨밑에 있다. 1. sklearn패키지 이용 2. 코드 구현 1. sklearn패키지 사용 Import & Data df는 rating, movie 데이터로 만든 데이터 프레임이다. rating을 하나도 못받은 영화의 경우, df_rating movie id가 존재하지 않기 때문에 df 데이터프레임을 만들었다. 1 2 3 4 5 6 7 8 9 10 import pandas as pd import numpy as np import glob import matplotlib.pyplot as plt from matplotlib.backends.backend_pdf import PdfPages import time df_ratings = pd.read_csv(..
우도 추정 [https://ratsgo.github.io/statistics/2017/09/23/MLE/](https://ratsgo.github.io/statistics/2017/09/23/MLE/) [https://datascienceschool.net/view-notebook/dc6528fbf3ed4f9885e243198ef7694c/] 최대우도추정 최대우도추정(maximum likelihood estimation)이란 모수(parameter)가 미지의 θ인 확률분포에서 뽑은 표본(관측치) x들을 바탕으로 θ를 추정하는 기법입니다. 다시말해, 표본들을 보고 모수를 추정하는 것이다. 동전 던지기를 예를 들어보자. 동전 던지기는 이항분포를 따르며, 앞면이 나올 확률 p와 뒷면이 나올 확률 1-p로 이뤄진다. 이항..
[A/B Test] A/B테스트 개인화 이론 안녕하세요! 데이터 맛집 스터디 주제로 소개된 A/B 테스트로 하여금 사용자들에게 커스터마이즈드 된 웹 경험을 제공하고 비즈니스 성과에 대해 괄목할 만한 성과가 있었는지 파악하기 위한 테스트이자, 앞으로의 향보에 대한 마일드 스톤이 될 A/B테스트에 실 예를 통해 이해하도록 하겠습니다. 카탈로그 웹사이트 VS 경험 우선 웹사이트 기업의 웹사이트, 비즈니스적으로 목적을 가진 내용을 웹에 표현한다 한다면, 마치 카탈로그 책자를 보는 것처럼 방문자로 하여금, 우리가 가진 정보를 최대한 많이 보여주는 것에 초점을 맞추었다. (오프라인의 예시) 상대방의 경험을 자주 관리하려면 , 점원이 손님을 보고 인상 행동 동선을 파악해서, 저 사람이 도움이 필요한가를 말하고, 지난번 산 물건을 기반으로 다른 상품을 추천해본다..
[CB Filtering] 3. TF-IDF Practice Amazon Fine Food Reviews라는 데이터셋을 활용해서 TF-IDF 실습을 했다. 구현은 직접 하지 않고 sklearn에서 제공하는 TfidfVectorizer 기능을 사용했다. feature의 수에 제한을 두지 않으면 메모리 부족으로 터지는 문제가 있어 max_features 파라미터 값으로 10,000을 줬다. 자연어 전처리를 한 결과를 TfidfVectorizer에 넣어줘야 하는 줄 알았는데 TfidfVectorizer에 파라미터로 이것저것 넣어주면 알아서 전처리를 해준다. Tfidf를 구하고 나서는 각 문서를 가장 잘 설명하는 단어를 5개씩 출력했다. In [11]: # This Python 3 environment comes with many helpful analytics libr..
[A/B Test] Page Lanking, Retention 관련 Testing 안녕하세요 데이터맛집의 포테이토입니다. 서비스 런칭 이후, 가장 고민 되는것은 우리의 고객(유저)들에가 우리의 서비스가 얼마나 큰 영향을 미칠지를 계산해 냅니다. 특히 이 글을 마치고 나면 Cost per Revenue / Cost per User 의 개념으로 다가 가게될겁니다. 또한 그 이상을 넘어, How to make best didecision에 다다르고자 수없이 많은 시행착오 끝에 다다를 시기를 앞당기고자 합니다. 오늘 소개 해 드릴 분야는 특히 service maker 관점에서, 우리의 User들은 누가 될 것이고 또한, 앞으로는 어떻게 행동할 것인가를 판단함에 도움을 드리고자 합니다. 우선 마케팅에서 말하고 있는 고객획득과, 재반응은 다음과 같이 정의 됩니다. 애퀴지션(Acquisition)..
2. 편향-분산 트레이드 오프 (Bias-Variance trade off) https://data-analysis-science.tistory.com/62 2. 편향-분산 트레이드 오프 (Bias-Variance trade off) 안녕하십니까 허브솔트입니다. 지난 시간에는 앙상블의 알고리즘들에 대해 알아보았는데요, 오늘은 편향 분산 트레이드 오프에 대해 공부해 볼께요! 편향 분산 트레이드 오프는 비단 앙상블에 data-analysis-science.tistory.com 개인 블로그로 이전하였어요
[CB Filtering] 2. Keyword-based Vector Space Model 이전글 1. 2020/03/12 - [추천 시스템/Content-based Filtering] - [CB Filtering] 1. 개요 저번 포스팅에서 개요를 설명하며 봤던 그림이다. 오늘 내용은 빨간 박스를 친 부분이다. 대부분의 추천 시스템은 TF-IDF를 활용한 Vector Space Model을 정보 획득 모델로 사용한다. Vector Space Model(VSM)은 문서의 공간적 표현(spatial representation)이다. 간단한 예를 들어보면 다음과 같다. Document 1: The boxer rebellion Document 2: The boxer Document 3: The rebellion 전체 문서는 "rebellion", "the", "boxer"로 이루어져 있으며, 각각의..