분류 전체보기195 [Recommender System] - 추천시스템과 MAB (Multi-Armed Bandits) 1. Multi-Armed Bandit MAB에서 가장 중요한 개념은 Exploration & Exploitation이다. 여러 개의 슬롯머신 중, 어떤 슬롯머신을 당겨야 이득을 최대화할 수 있는지를 파악하는 것을 탐색/획득으로 알아내기 때문이다. 그래서 탐색과 활용이 조화롭게 필요한 추천시스템에서 많이 활용되는 방식이다. 이미 수 년 전부터 추천시스템에서는 대세로 자리잡았다. A/B 테스트의 완벽한 상위호환이라고 볼 수 있기 때문이다. (모델 단위가 아닌 아이템 단위의 MAB는 모델의 대체재이기도 하다.) MAB의 구성 원리는 앞서 말한 것 처럼 두 가지, 탐색과 활용이다. 그 중 추천시스템에서의 Exploration은 Diversity를 올려줄 수 있는 방법 중 하나이다. Cold-start 문제를 .. 2021. 1. 28. [Recommender System] - Graph Convolutional Matrix Completion 번역 & 리뷰 1. Intro 이 논문은 recommender system에서의 matrix completion 문제를 "link prediction on graph" 관점으로 바라본 내용을 서술하고 있다. 핵심 아이디어를 하나 예로 들면, user-item rating matrix를 user-item의 이분그래프로 표현할 수 있다는 것이다. 그리고 이를 graph auto-encoder 프레임워크에 응용하는 것을 제안한다. 논문에서 표현한 전체적인 그림은 아래와 같다. 2. Matrix completion as link prediction in bipartite graphs 그래프로 기존의 Rating Matrix를 표현하는 방식은 다음과 같다. W는 User와 Item의 집합을 나타내는 기호이고, E는 Edge 정.. 2020. 12. 29. [Recommender System] - 임베딩 벡터의 Nearest Neighbor를 찾는 과정 이번 글에서는 검색/추천 시스템에서 가장 중요한 문제 중 하나인 Vector Space 안에서의 Nearest Neighbor를 찾는 문제에 대해 이야기하려고 한다. 이 문제가 중요한 이유는, ML을 활용하여 검색이나 추천에 활용되는 Item을 Densed Vector로 표현하는 것이 가장 보편적인 방법이 되었기 때문이다. 대표적인 예는 Collaborative Filtering에서 사용되는 Latent Factor이며, 최근에는 Word2Vec과 같이 자연어 처리에서 힌트를 얻은 임베딩 방법을 더 많이 사용하는 듯 하다. 개인적으로 최근에 Densed Vector의 Similarity를 real-time으로 줄세우는 작업을 많이 하게 되었는데, 이러한 Vector Search를 빠르게 구현하기 위해 i.. 2020. 12. 3. 시계열 분석 이론의 기초 - 2 이전 포스팅 : https://yamalab.tistory.com/112 시계열 분석 이론의 기초 시계열 분석은 크게 규칙적 시계열 분석과 불규칙적 시계열 분석으로 나뉜다. 여기서 규칙적 시계열이란 트렌드와 분산이 불변하는 시계열 데이터를 말하고, 불규칙적 시계열이란 트렌드 혹은 yamalab.tistory.com 지난 포스팅에서는 시계열 분석의 종류, 그리고 알고리즘과 패키지의 활용 방법에 대해 정리했었다. 학교나 회사에서 시계열 분석을 제대로 해볼 기회가 없었기 때문에, 간단한 철학과 활용 정도만 이해하는 수준에서 그쳤었다. 언젠가 쓸 수도 있으니, 대충 뭔지 정도만 알자는 마인드. 그러다 최근에 시계열 분석을 작게나마 제대로 해 볼 기회가 있었는데, 그 과정에서 공부한 내용들을 뒤늦게 정리하려고 한.. 2020. 7. 24. 행렬 분해와 차원 축소의 기법들 - [2] 지난 포스팅에서는 PCA, SVD를 위주로 한 행렬 분해 기법들에 대해 다루었고, 이어서 행렬 분해와 차원 축소의 기법들을 마저 알아보자. 본 포스팅에서는 확률적 차원축소 방법 중 가장 대표적인 알고리즘인 t-SNE, 그리고 행렬 분해를 기반으로 한 Matrix Factorization과 ALS(Alternating Least Squares)에 대해 서술하겠다. MF와 ALS의 경우 차원 축소에서 언급하기엔 조금 애매한 감이 있지만, 근본적으로 Latent factor를 분석하는 것과 차원 축소의 분석 방법이 크게 다르지 않기 때문에 이번 포스팅에 포함시켰다. 1. t-SNE를 이용한 차원 축소 머신 러닝에 대한 접근법은 전통적인 관점에서 두 가지로 나뉜다. 첫 번째는 행렬과 미분 등을 이용한 최적화로 .. 2020. 6. 4. 행렬 분해와 차원 축소의 기법들 - [1] 본 포스팅은 차원 축소 기법에 대해 조금 더 자세히 정리하는 차원의 글이다. 기존에도 SVD(링크), t-SNE(링크)에 대해 언급한 적은 있지만 intuitive한 정도로만 이해하고 넘어갔었다. 차원 축소는 가장 기본적인 방법인 행렬 분해를 이용하는 방법, 그리고 확률적 차이를 이용하는 방법, Neural Network를 활용하는 방법 등이 있다. 이번에는 행렬을 이용하는 방법과 확률적 차이를 이용하는 방법에 대해서 간단하게 정리하고자 한다. 1. 선행 개념 1) Eigen-decomposition PCA와 SVD를 이해하기 전에 선행 지식이 되는 개념이다. 고유 분해는 정방 행렬 A가 있을 때, 다음과 같은 성질을 만족하는 영벡터가 아닌 벡터 v와 실수 𝜆를 찾아내는 것이다. v는 eigen vect.. 2020. 6. 3. [Recommender System] - Factorization Machine (From Scratch with Python) 이전 포스팅 보기 본 포스팅은 Factorization Machine의 intuitive한 설명(블로그 번역 + 필자 개인적 해석)과 라이브러리 활용법에 대한 포스팅의 후속이다. FM이 sparse한 피처간의 pair-wise interaction을 학습한다는 것을 어렴풋이 이해했다면, 이번에는 실제로 Science 레벨에서 모델링 할때 어떻게 활용해야 하는지를 수식 레벨부터 직접 코드로 구현해보면서 따라가보자. 백문이 불여일견이라 하였으니, 코드 역시 마찬가지일 것이다. 이번 글에서는 FM의 intuitive한 설명은 생략하고 실제로 벡터 단위로 어떤 분석을 수행해야 하는지, pair-wise한 학습을 하면 어떤 이득을 얻을 수 있는지에 대해서 중점적으로 서술하였다. 1. Algorithm Concep.. 2020. 4. 17. YouTube Recommendation system 트릴로지 리뷰 - [3] 이전 포스팅 보기 더보기 YouTube Recommendation system 트릴로지 리뷰 - [1] YouTube Recommendation system 트릴로지 리뷰 - [1] 본 포스팅은 2010, 2016, 2019에 발표한 유튜브의 추천시스템 자료를 리뷰한 것이다. 3부작이 끝이 아님에도 트릴로지라는 이름을 붙인 것은, 필자에게는 이 자료들이 매트릭스 3부작이나 반지의제왕 3부작 만큼이.. yamalab.tistory.com https://yamalab.tistory.com/124 YouTube Recommendation system 트릴로지 리뷰 - [2] YouTube Recommendation system 트릴로지 리뷰 - [1] 이번에 리뷰할 자료는 으로, 2016년에 발표된 것이다. .. 2020. 2. 11. Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts 리뷰 본 포스팅은 YouTube recommendation system 트릴로지 리뷰(링크) 중, 스핀오프 영화 같은 개념이라고 생각하면 좋다(..). 본래 multi-task learning은 딥러닝 분야에서 많이 사용되던 방식인데, 저자가 아마도 유튜브의 추천시스템에 대해 연구하다가 multi-task model의 필요성을 느꼈던 것 같다. 사실 논문에 나와있는 그림만 봐도 어떤 것을 하려는지 대강 짐작할 수 있는 내용이기 때문에, 논문을 아주 자세히 읽어볼 필요는 없다고 생각한다. 다만 유튜브 추천시스템 논문들을 제대로 읽고 싶은 사람이라면 이 논문 역시 주의깊게 봐야한다. 본 포스팅에서는 아주 간략한 내용만 소개하고자 한다. 1. 모델의 대략적인 구성은 아래 그림과 같다. MMoE는 그림 왼쪽에 있는 .. 2020. 2. 10. YouTube Recommendation system 트릴로지 리뷰 - [2] YouTube Recommendation system 트릴로지 리뷰 - [1] 이번에 리뷰할 자료는 으로, 2016년에 발표된 것이다. 이 자료는 당시에 나오자 마자 읽어봤던 자료인데(물론 우연이었다), 추천시스템에 막 관심을 가지기 시작했을 때 생애 처음(..)으로 제대로 읽어본 '논문' 비스무레한 것이다. 복잡한 수식도 나오지 않고 intuitive 하면서도 흥미로운 내용이라 지금 읽기에는 무척 재미난 논문이지만, 당시에는 딥러닝은 커녕 머신러닝의 'ㅁ' 자도 모르던 학부생 시절이었기 때문에 끝까지 읽는데 아주 애를 먹었던 기억이 있다. 게다가 2016년에는 추천시스템에 대한 자료 자체가 다소 귀한 편이었기 때문에(물론 지금도 넉넉치는 않다), 개념을 잡아주고 트렌드를 파악하기에 매우 도움이 됐었다... 2020. 2. 4. 이전 1 ··· 6 7 8 9 10 11 12 ··· 20 다음