LightGCN : Simplifying and Powering Graph Convolution Network for Recommendation 리뷰 ABSTRACT 그래프 컨볼루션 네트워크는 CF에서 새로운 SOTA가 되었다. 그럼에도 불구하고, 추천에서의 효과에 대한 근거는 잘 알려지지 않았다. 추천에 GCN을 적용한 연구 들은 GCN에 대한 ablation 분석이 부족했는데, GCN은 애초에 …
KGAT: Knowledge Graph Attention Network for Recommendation 리뷰 ABSTRACT 더 정확하고, 다양하고, 설명가능한 추천을 제공하기 위해 유저-아이템 간 상호작용 모델링을 넘어 부가적인 정보도 함께 고려 해야 한다. FM 같은 기존 메소드는 지도 학습으로 각각의 상호작용을 부가 정보와 함께 인코딩된 독립된 객체로 …
PUP : Price-aware Recommendation Convolution Network 리뷰 ABSTRACT 최근의 추천은 유저 행동을 마이닝 하는 연구가 많았다. → 유저 들이나 아이템 들을 설명하는 텍스트 정보, 데모그라픽, 이미지 등의 일반적인 정보를 다루는 CF. 마케팅에서 중요하게 여기는 가격은 유저의 최종적인 구매를 결정하지만, 상 …
GraphRec : Graph Neural Networks for Social Recommendation 리뷰 ABSTRACT 소셜 추천 시스템의 데이터는 아래와 같은 표현 된다. 유저 - 유저 소셜 그래프 유저 - 아이템 그래프 그리고 핵심은 유저와 아이템의 Latent Factor로 학습하는 것이다. 그러나, GNNs으로 소셜 추천 시스템을 구축하는 것은 …
GMCF : Neural Graph Matching based Collaborative Filtering 리뷰 ABSTRACT 유저와 아이템의 어트리뷰트 들은 필수적인 사이드 정보이다. 본 논문에서는 기존 모델들이 구분하지 못하는 두 가지 어트리뷰트 상호작용을 발견했다. inner attribute interactions : 유저 어트리뷰트 사이의 상호작용과 …
워크플로우 엔진 PREFECT : ECS Agent 로 Prefect 환경 구축하기 Prefect를 AWS 클라우드 환경에서 구성했다. 다양한 방법으로 Prefect를 구성할 수 있지만, EC2 Instance 상에 Prefect Backend의 오픈소스인 Prefect Server를 실행시키고 ECS Cluster …
워크플로우 엔진 PREFECT : 개념 일주일 마다 한번씩 크롤링을 해서 정리한 후, 검색을 위해 엘라스틱 서치(ES)에 인덱스를 생성할 필요가 있다. 그래서 파이썬 기반의 새로운 워크플로우 관리 엔진인 PREFECT를 사용해보려 한다. Prefect는 데이터 워크플로우들을 구축하는 툴이 …
밴딧 추천 오픈소스 OBP의 Bandit Policy 에 대한 설명 : Policy 밴딧 추천 오픈소스 OBP(Open Bandit Pipeline)의 Bandit Policy 최근에 밴딧 기반 추천에 관심을 가지고 스터디에 참여하는 등의 활동을 진행하고 있다. …
밴딧 추천 오픈소스 OBP의 Off-Policy-Evaluation 에 대한 설명 : Off-Policy Evaluation “밴딧 추천 오픈소스 OBP의 Off-Policy-Evaluation 에 대한 설명 : Off-Policy Evaluation” Bandit 추천의 기반인 Policy에 대해 알아봤고 오프라인으로 로깅된 밴딧 피드백을 이용해 Policy의 값을 추정하 …
딥러닝 모델의 배포와 모니터링 : Full Stack Deep Learning Lecture 11 정리 Full Stack Deep Learning의 원본 강의 11 챕터를 정리한 내용입니다. Notes 프로덕션에서의 ML에서는 초당 수천 혹은 수백만 예측을 딜리버리하는 유저의 요구사항을 다룬다. 반면에 노트북에서의 ML은 올바른 방식으로 셀들을 동작시 …
Graph Neural Networks에 대한 이해 GNN 기반 추천 논문들을 읽기 전에 정리를 해보았다. 기본은 A Gentle Introduction to Graph Neural Networks (Basics, DeepWalk, and GraphSage) …
스파크를 활용한 실시간 처리 : ch2. 스트림 처리 모델 책 스파크를 활용한 실시간 처리 2단원 정리입니다. 스트림 처리에서의 소스와 싱크 스파크의 스트리밍 프레임워크에서는 데이터 소스 개념을 사용해서 데이터 스트림에 접근할 수 있다. 스트림으로 부터의 데이터 접근을 스트림 소비(consuming the …
스파크를 활용한 실시간 처리 : ch1. 스트림 처리 소개 책 스파크를 활용한 실시간 처리 1단원 정리입니다. 스트림 처리(stream processing)가 무엇 인지? 스트림 처리는 unbounded data( 크기가 무한한 유형의 데이터 셋)로 부터 정보를 추출하는데 사용하는 규율 및 관련 기술의 집합으 …
FastAPI의 async def와 def에 대해서 공부해보자 FastAPI의 async def에 관해 작성된 페이지인 Concurreny and async/await 를 보았다. 우선 기본적으로 FastAPI는 async def를 꼭 쓸 필요는 없다. def 만으로도 비동기 처리 되도록 FastAPI 프레임 워 …
Longformer: The Long-Document Transformer 리뷰 ABSTRACT 셀프 어텐션 때문에 트랜스포머 기반 모델들이 긴 시퀀스를 처리 못한다. 시퀀스 길이가 늘어날 수록 연산량이 크게 증가하기 때문이다. 그래서, 시퀀스 길이에 선형적으로 대응하는 어텐션 메커니즘을 사용하는 롱포머를 제안한다. …
A Contextual-Bandit Algorithm for Mobile Context-Aware Recommender System 논문 리뷰 Abastract 모바일 맥락 기반 추천 시스템의 대부분의 접근 방법은 맥락 정보를 활용해서 유저와 관련성 있는 아이템을 추천하는데 초점이 맞춰져 있다. 고려할만한 맥락 정보로 아래 세가지가 있다. 시간 위치 소셜 정보 이전의 연구들은 모두 유저의 컨 …
Collaborative Filtering Bandits 논문 리뷰 Collaborative Filtering Bandits 리뷰 ABSTRACT 기존 추천 방식 Collaborative filtering Content-Based Filtering 주어진 학습 데이터로 부터 모델을 학습하는 메소드( 정적인 모델 ). …
단단한 강화 학습 2장 다중 선택 2.6 ~ 정리 단단한 강화 학습 2장 다중 선택 2.6 ~ 정리 2.6 Optimal Initial Value Exploration을 촉진하는 기법을 긍정적 초깃값(Optimal initial value)라고 부른다. …
단단한 강화 학습 2장 다중 선택 ~ 2.5 정리 Bandit Problem은 오직 하나의 상태만 다루는 강화학습 문제이다. 강화 학습은 지도 학습과는 다른 종류의 학습 피드백을 전달한다. 학습자의 행동과 무관하게 정해져 있는 정답이 있는 지도 학습과는 다르게, 강화 학습은 행동에 대한 결과를 피드백 …
Cross-lingual Language Model Pretraining : XLM 리뷰 Abstract 최근 연구들은 영어 자연어 이해를 위한 생성적 사전학습(generative pretraining)의 효율성을 증명했다. 본 연구에서는 이 방식을 여러 언어들로 확장해서 교차 언어(cross-lingual) 사전학습의 효과를 보인다. …
Artwork Personalization at Netflix Artwork Personalization at Netflix 넷플릭스의 아트워크 추천에 대해서 알아보자. 블로그, PPT, 유튜브 자료가 있다. Artwork Personalization at Netflix …
Distilling Task-Specific Knowledge from BERT into Simple Neural Networks 리뷰 Distilling Task-Specific Knowledge from BERT into Simple Neural Networks Abstract 자연어 처리 분야에서 뉴럴 네트워크는 깊어지고 복잡해지고 있다. …
ALBERT : A Lite BERT 리뷰 ALBERT : A Lite BERT 1. Introduction Full-Network Pretraining 가 Language Representation Model (언어를 표현할 수 있는 모델) …
Sentence-BERT : Sentence Embeddings using Siamese BERT-Networks 리뷰 Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks 1. Introduction 본 논문은 Sentence-BERT에 대해서 소개한다. BERT 를 siamese(둘) triplet(셋) 구 …
Kafka : a Distributed Messaging System for Log Processing 리뷰 Kafka : a Distributed Messaging System for Log Processing ABSTRACT 로그 프로세싱은 인터넷 회사들을 위한 데이터 파이프라인의 중요한 컴포넌트가 되었다. 높은 볼륨의 로그 데이터를 낮은 Latency …
BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 리뷰 BERT : Pre-training of Deep Bidirectional Transformers for Language Understanding 리뷰 Abstract BERT라고 부르는 언어 표현 모델을 소개한다. BERT는 Bidirectional …
ELMO : Deep contextualized word representations 리뷰 ELMO : Deep contextualized word representations 논문 리뷰 정리 ELMO의 특징 레이블 작업을할 필요가 없다. 문장을 바로 입력에 사용한다. 양방향 LM 구조를 가진다. 모든 레이어들의 출력값을 사용해서 임베딩을 …
Argo-Workflow : Kubernetes에서 Batch Job argo workflow Kubernetes CronJob으로 필요한 데이터 전처리를 할 필요가 있어서 사용했는데 진짜 이상했다. InitContainer에 순서대로 Job들을 쌓아서 마지막 Container로 로그를 다 뱉어내고 찍어내는 식으로 만들 …
Locust : 파이썬 기반 오픈 소스 로드 테스트 Locust Locust는 사용이 쉽고, 스크립트 가능하고, 확장 가능한 성능 테스트 도구이다. 유저들의 행동을 파이썬 코드를 사용해서 정의할 수 있다. Locust 공식 GitHub Features 평범한 Python …
GPT2 : Language Models are Unsupervised Multitask Learners 리뷰 Language Models are Unsupervised Multitask Learners Language Model 이란? 언어를 모델링 하기 위해 단어 시퀀스(문장)에 확률을 할당 하는 모델 ( m 개의 단어 시퀀스가 나타날 확률) 잘 학습된 언 …