러닝스푼즈

2022.02.17 - [머신러닝 | 딥러닝/추천시스템] - [K-Data x 러닝스푼즈] 4-3. Multi-Armed Bandit (MAB) [K-Data x 러닝스푼즈] 4-3. Multi-Armed Bandit (MAB) 실제 추천에 많이 활용되고 있는 방법인 Mutli-Armed Bandit에 대해 공부해보려고 합니다! Multi-Armed Bandit(MAB)? 강화학습은 아니지만 강화학스브이 핵심 아이디어인 Exploitation(착취) / Exploration(탐험).. xod22.tistory.com 저번 포스팅에서 MAB의 기본적인 원리에 대해 공부해보았습니다! 이번 글에서는 MAB의 4가지 방법에 대해 소개해보려고 합니다!! 1. Simple Average Method (greedy ..
실제 추천에 많이 활용되고 있는 방법인 Mutli-Armed Bandit에 대해 공부해보려고 합니다! Multi-Armed Bandit(MAB)? 강화학습은 아니지만 강화학습의 핵심 아이디어인 Exploitation(착취) / Exploration(탐험)을 활용 * 원리 1) 카지노에 있는 K개의 슬롯머신을 N번 플레이 할 수 있다 - 한번에 한개의 슬롯머신을 당길 수 있음! 2) 각각의 슬롯머신에서 얻을 수 있는 Reward의 확률은 모두 다르다 - Reward는 0 또는 1로 가정 3) 수익을 최대화하기 위해서 슬롯머신을 어떤 순서로 당겨야 하는가? 모든 슬롯머신을 동일하게 당겨본다(?) -> 5번씩 -> explore(탐험) 일정 횟수만큼 슬롯머신을 당겨보고, 남은 횟수는 그 시간 동안 제일 높은 ..
LDA의 생성과정 1. 토픽 개수 K를 설정 : 토픽은 모든 문서에 분포되어 있음! 2. 문서에 있는 모든 단어를 K개 중 하나에 토픽에 랜덤으로 할당 : 만약 한 단어가 한 문서에 두 번 이상 등장한다면 각 단어는 서로 다른 토픽에 할당될 수도 있음 3. 각 문서의 개별 단어에 대해서 다음 계산을 반복한다. 단어 하나의 topic을 모른다고 가정하고 문서 1(doc1) 중에 A가 나타날 확률 = 2/4 = 0.5 문서 전체에서 A라는 topic을 골랐을 때 cat이 나올 확률 = 1/6 = 0.167 => 두 값을 곱해서 cat에 A가 할당될 확률을 구함! =0.0835 문서 1(doc1) 중에 B가 나타날 확률 = 2/4 = 0.5 문서 전체에서 B라는 toopic을 골랐을 때 cat이 나올 확률 =..
오늘 포스팅에서는 빠르고 실용적인 추천 기법들에 대해 소개해보려고 합니다! 유명하진 않지만 실제로 비즈니스/서비스에서 많이 사용되는 모델들이니 잘 공부해놓으시면 도움이 될 것이라고 생각합니다ପ(´‘▽‘`)ଓ♡⃛ 1. LDA 2. 임베딩과 Word2Vec->Item2Vec 3. Multi-Armed Bandit 이 세가지에 대해 앞으로 차례대로 포스팅 해볼 계획입니다! LDA를 이용한 추천 : Latent Dirichlet Allocatioin 토픽 모델링은 문서의 집합에서 토픽을 추출하는 포르세스로 가장 대표적인 알고리즘이 LDA이다! LDA는 주어진 문서와 각 문서가 어떤 토픽을 가지는지 확률모형을 통해 표현하며 토픽별 단어의 분포, 문서의 토픽의 분포를 디리클레 분포로 가정하고 풀어낸다.! LDA는 ..
MF 서빙 이슈 MF 학습은 Pu, Qi 값을 구함 -> 특정 유저 u에게 추천을 제공하기 위해서 해당 유저벡터와 후보 아이템 벡터들의 연산이 필요함 -> 특정 아이템 i와 비슷한 아이템(i')를 추천하기 위해서 해당 아이템 벡터와 후보 아이템 벡터의 유사도 연산이 필요함 -> 만약 아이템 개수가 엄청 많다면.. 스코어를 계산할 때 오랜 시간과 높은 연산량이 필요하게됨 Anooy : approximate nearest-neighborhood ( ANN계열 알고리즘 ) 수많은 데이터가 있는 n차원 벡터 공간에서 주어진 벡터와 가장 유사한 벡터들을 찾는 알고리즘 주어진 벡터가 속한 공간을 tree search로 찾고, 그 권역 안에서만 nearest neighbor 연산을 함! Annoy 사용 예시 유저에게..
이번 포스팅에서는 Implicit Feedback데이터를 활용해 MF를 학습할 수 있는 논문의 기법에 대해 소개해보려고 합니다! 베이지안 추론에 기반하고 있으며 접근이 재밌고 기발해서 유명해진 방법이라고 합니다! Introduction 1) 사용자의 클릭, 구매 등의 로그는 Implicit Feedback 데이터 2) binary(0/1)로 이루어져있음 -> 선호도를 고려하지 않고 일반적으로 유저가 아이템을 클릭/구매 할 확률을 예측하는 문제 3) 유저가 item i보다 j를 좋아한다면? 이라는 정보를 사용해 MF의 파라미터를 학습하는 방법 => 관측되지 않은 데이터에 대해서 유저가 아이템에 관심이 없는 것인지 / 유저가 실제로 관심이 있지만 아직 모르는 것인지 고려해야됨... Personalized R..
저번 포스팅에서는 컨텐츠 기반 추천인 CB(Content-based Recommendation)에 대해 공부해봤는데요! 이번에는 많이 쓰이는 협업필터링(CF)에 대해 적어보려고 합니다!! # 협업 필터링? : CF(Collaborative Filtering) => 유저 A와 비슷한 성향을 갖는 유저들이 선호하는 아이템을 추천한다. => 아이템이 가진 속성을 사용하지 않으면서도 높은 성능을 보임! # 1) User-based Collaborative Filtering : 두 유저가 얼마나 유사한 아이템을 선호하는가? 유저간의 유사도를 구한뒤, 나와 유사도가 높은 유저들이 선호하는 아이템을 추천함! 예시 ) User B가 스타워즈에 매긴 평점을 예측하고 싶은 상황에서 User A,B가 각 영화에 매긴 평점을..
# 컨텐츠 기반 추천? : CB(Content-based Recommendation) 유저 A라는 사람이 과거에 선호한 아이템의 메타데이터를 가지고 비슷한 아이템을 유저 A에게 추천한다. => 아이템의 메타데이터의 예) - 영화 : 배우, 감독, 영화장르 - 음악 : 아티스트, 장르, 리듬, 무드 - 블로그 / 뉴스 : 비슷한 주제나 내용을 가진 텍스트(문장, 단어) - 사람 : 공통의 친구를 많이 가진 다른 사람 # Item Profile 추천 대상이 되는 아이템의 Profile을 만들어야한다. Profile은 아이템이 가지고 있는 특징들로 구성되있는데 이 속성들을 Vector형태로 표현한다. * 문서의 경우 Item Profile : 중요한 단어들의 집합으로 표현 단어에 대한 중요도를 나타내는 스코어..
xod22
'러닝스푼즈' 태그의 글 목록