欲速不達

일을 급히 하고자 서두르면 도리어 이루지 못한다.

Fantastic AI, Fantastic World
728x90
반응형

DS | Data Science/RecSys | Recommendation System 11

[RecSys] 한 눈에 보기 정리 - 7 : Deep Learning

추천시스템에 Deep Learning을 활용하는 이유 Nonlinear Recommender System 한계점 : MF 모델은 선형조합에 기반한 표현만 가능 -->> MLP 사용하여 비선형성 표현 Representation Learning DL은 사람이 직접 feature design을 하지 않아도 됨 -->> 다양한 종류의 정보를 추천시스템에 활용할 수 있음 Flexibility 다양한 DL framework -->> 모델링이 자유로움 1. NCF : Neural Collaborative Filtering 등장배경 MF의 한계 : MF는 선형조합에 기반한 표현만 가능 -> user-item의 복잡한 관계를 표현하는 것에 한계를 가지게 됨 NMF : Neural Matrix Factorization -..

[RecSys] 한 눈에 보기 정리 - 6 : Context-Aware Recommender System

Context Aware : 유저와 아이템 간 상호작용 정보 뿐만 아니라, 유저 feature와 아이템의 feature 간의 맥락(context) 정보를 반영하는 것 CTR : Click-Through Rate Prediction CTR 예측 : 유저가 주어진 아이템을 클릭할 확률 예측하는 문제 예측해야하는 값 y = 클릭여부 (0,1) -> binary classification 문제 모델에서 출력한 실수 값을 sigmoid 함수에 통과시키면 (0,1) 사이의 예측 CTR(확률값)이 계산됨 주로, 광고 추천에서 사용 광고노출 시에 다양한 유저, 광고, 맥락정보 등을 입력변수로 사용 유저 ID가 존재하지 않는 데이터도 다른 유저의 featur나 맥락정보를 사용하여 예측 현업에서는 유저 ID를 사용하지 않..

[RecSys] 한 눈에 보기 정리 - 5 : Model-based Collaborative Filtering

Model-based Collaborative Filtering이 필요한 이유 Memory-based CF의 문제점 희소 데이터 문제 : sparse data interaction의 수가 적음 -> 모델 성능 저하 cold start가 어려워짐 user interaction이 sparse matrix면, 유사도를 계산하기가 어려움 -> 유사도 행렬의 신뢰성 저하 확장성의 문제 : scalability 데이터가 많아질수록 연산량 증가 업데이트 될때마다(데이터 추가, 변경) 새로 user-item matrix를 연산해야함 실시간으로 연산하기에는 부적합 Model-based CF의 장점 데이터 패턴을 학습 -> 단순히 항목 간 유사성을 비교하는 것 X user-item 관계의 잠재적 특성 및 패턴을 찾을 수 ..

[RecSys] 한 눈에 보기 정리 - 4 : Memory-based Collaborative Filtering

Collaborative Filtering 내가 좋아할만한 영화를 추천 받는다고 할때, 내가 좋아하는 영화의 장르, 감독, 배우 등을 기준으로 찾아본다. 내가 기준 - 내가 좋아하는 속성 Content-based Filtering 나와 비슷한 성향을 가진 다른 사람들이 봤던 영화를 찾아본다. 다른 사람 기준 - 나와 비슷한 사람들의 속성 Collaborative Filtering Collaborative filtering의 기본 목적 : 아이템을 추천하는 대상이 되는 사용자의 해당 아이템에 대한 선호도를 예측하여 높은 선호도를 가지는 아이템을 추천 == user-item matrix에서 평점이 0으로 초기화되어있는 값을 예측하는 것 예시 rating 0~5일때, 0인 부분 -> user u가 item i..

[RecSys] 한 눈에 보기 정리 - 3 : Content Based Recommendation System

Content : 아이템의 성질 및 특성 --->>> 사용자가 특정 아이템을 선호하는 경우, 그거랑 비슷한 Content를 가진 아이템을 추천 1. Vectorization : 아이템 특성을 벡터 형태로 어떻게 표현할지가 중요한 포인트 One-hot encoding 인코딩을 하려고 하는 항목의 수에 따라 On-hot 차원이 달라지기 때문에, 항목 수가 많아지면 차원이 커지고 그만큼 sparse하게 됨 - High Sparsity Embedding TF-IDF : 다른 문서에는 많지 않고, 해당 문서에서 자주 등장하는 단어에 높은 값을 부여 / 문서를 대표하는 특징 추출 Word2Vec : 단어의 의미를 다차원 공간에 벡터화하는 방법을 사용 / 단어 간 의미적 유사성을 벡터화 Transdormer의 Att..

[RecSys] 한 눈에 보기 정리 - 2

1. 추천시스템이 필요한 이유 사용자가 정보를 찾는데 소요되는 시간을 효과적으로 감소시키는 것 사용자의 관심사에 해당되는(유사한) 컨텐츠(아이템)을 추천하여, 선택의 폭을 확장시키는 것 Push & Pull Push : 사용자가 관심을 가질 만한 정보를 시스템이 Push해줌 Pull : 사용자의 의도가 명확하여, 사용자가 해당되는 항목을 Pull하는 것 ex) 검색 결정피로 : 방대한 정보 속에서 원하는 정보 찾기 위한 피로도 ---->>>> 원하는 정보를 잘 필터링하고 추천해주는 시스템이 필요 2. 추천시스템 workflow 1) 데이터 : user-item 관련 데이터 / interaction, feedback 등 2) Task 설정 - 단기 목표 : 클릭 수, 특정 기간의 총 수익 등 - 장기 목표..

[RecSys] 한 눈에 보기 정리 - 1

Recommender System 개요 사용 이유 문제 정의 평가 지표 Offline Test Online Test Simple Aggregate Popularity Rating 연관분석 : Association Analysis / Association Rule Mining 컨텐츠 기반 필터링 : Content-based Filtering / Content-based Recommendation TF-IDF : Term Frequency - Inverse Document Frequency 협업 필터링 : Collaborative Filtering NBCF : Neighborhood-Based Collaborative Filtering - Memory-Based CF UBCF : User-Based Coll..

[RecSys] kNN Collaborative Filtering : scikit-surprise 라이브러리 / MovieLens Data

!pip install scikit-surprise scikit-surprise 패키지는 Collaborative Filtering 관련 머신러닝 라이브러리이다. kNN 뿐만 아니라 MF 등의 알고리즘도 제공하지만 여기서는 kNN 알고리즘만 사용했다. - Reader, Dataset from surprise import Reader, Dataset reader = Reader(rating_scale=(0.5, 5.0)) data = Dataset.load_from_df(ratings_df[['userId', 'movieId', 'rating']], reader) - train_test_split from surprise.model_selection import train_test_split # train..

[RecSys] Basic - 3

인기도 기반 추천 / 평가지표 - MovieLens 데이터셋 가공 - 가공한 데이터 활용 -> 인기도 기반 추천 - 평가지표 1. 전처리 MovieLens 100k Dataset - 원천데이터 https://grouplens.org/datasets/movielens/ MovieLens GroupLens Research has collected and made available rating data sets from the MovieLens web site ( The data sets were collected over various periods of time, depending on the size of the set. … grouplens.org 데이터 구성 영화에 대한 제목, 장르, 연도 등의 데이..

[RecSys] Basic - 2

(1) 추천시스템은 다른 분야(CV, NLP)에 비해 딥러닝 모델과 전통적인 머신러닝 모델의 성능차이가 Dramatic하지 않다. (2) 현업에서는 규모가 큰 데이터의 트래픽을 감당해야한다 -> 모델의 Inference time(모델 서빙의 latency)가 중요해짐 -> 근데 딥러닝 모델은 아무래도 무겁기 때문에, 성능차이가 아주 크지 않는 이상 장점이 적음 위의 두 가지 이유로 추천시스템에서는 클래식한 머신러닝 모델도 아직 많이 사용하고 있다. 클래식한 모델은 연관분석(Association Rule Analysis / Association Rule Mining), Content-based Recommendation, Collaborative Filtering, Item2Vec Recommendatio..

728x90
반응형