분류 전체보기 310

[Set Theory] 명제란 무엇인가?

Contents 집합론에서는 명제(Statement)라는 개념을 다룬다. 이번 글에서는 집합론에서 언급하는 명제에 대해서 간단한 예제를 통해서 알아보고자 한다. 1.1.명제(Statement) Definition 1.1.1 시간이나 지식에 상관없이 참(True) 혹은 거짓(False)이 분명한 문장이나 식을 명제(Statement)라고 한다. 명제는 참이나 거짓이 분명해야 한다. '2+3은 5이다' 라는 문장은 2+3이 5인 것이 확실하다. '$\sqrt{2}$의 소수$10^{100}$ 번째 자리 숫자는 3이다.' 라는 문장은 계산을 하든 하지 않든 3이거나 아니거나 참과 거짓이 분명하다. 그러나, '벚꽃길이 예쁘다' 와 같은 문장은 추상적이기 때문에 명확하게 정답이 존재하지 않는다. 따라서, 명제가 아..

[Pytorch] Learning Rate Scheduler 사용하기

Contents 학습률(Learning Rate)은 모델을 학습하기 위해서 필수적인 요소다. 학습률을 너무 크게 설정한다면, 최솟값에 도달하는 것이 어려우며, 너무 작게 설정하면, local minimum에 빠지거나 학습에 진전이 없을 수 있다. 이번 글에서는 학습률에 Schedular를 설정해서 학습률을 감쇠(Decay)하는 패키지를 다루어볼 것이다. Import Packages import torch import torch.nn as nn from torch.optim.lr_scheduler import StepLR import torch.optim as optim from torch.utils.data import DataLoader import torchvision.transforms as tra..

Python/Pytorch 2022.11.17

Convolutional Neural Network (CNN) 밑바닥부터 구현하기

Contents CNN은 이미지처리, 자연어처리 등 다양한 분야에서 각광받는 기술이다. 파라미터를 공유하는 개념을 통해서 기존의 연구에서 제안된 단순한 Linear 수준을 넘어서서 매우 우수한 성능을 발휘한다. 이번 글에서는 CNN을 밑바닥부터 구현하는 것을 다룬다. Import Packages from sklearn.datasets import fetch_openml from sklearn.utils import check_random_state from sklearn.model_selection import train_test_split from sklearn.preprocessing import StandardScaler import matplotlib.pyplot as plt import pand..

A Review-aware Graph Contrastive Learning Framework for Recommendation (SIGIR'22)

Contents 해당 논문은 SIGIR'22 6월에 발표된 논문이다. 제목에서도 알 수 있듯 리뷰를 사용하여 추천 시스템을 구축하고자 하는데, Graph Mining과 Contrastive Learning을 사용하는 것으로 보인다. Contrastive Learning은 대조학습으로 최근 Data augmentation 관점으로 추천 시스템이 가지고 있는 Sparsity 문제를 완화하기 위해 주로 사용되곤 한다. Introduction 추천 시스템에서는 Sparsity 문제 즉, Cold Start 문제를 해결하기 위해 리뷰를 사용하여 사용자가 선호할 만한 제품을 추천하기 위한 연구를 진행하고 있다. 예를 들어, 사용자가 한 리뷰에 대해서 평점을 부여한 경우 하나의 평점으로 사용자의 선호도를 예측하는 것..

Graph Convolutional Matrix Completion (KDD'18)

Contents GCMC는 추천 시스템에 그래프를 접목한 연구 중 하나다. auto-encoder framework를 사용하여 link prediction을 수행한다. SoTA 성능까지 달성한 모델로 추천 시스템과 그래프를 접목한 연구 중 널리 알려진 모델이다. Introduction 논문의 제목에서도 알 수 있듯 Matrix Completion 관점에서 link prediction task를 수행하는 모델이다. 기본적으로 Interaction data는 사용자와 제품 간의 관계로 이루어진 Bipartitle Graph 형태로 구성되어 있다. 본 논문에서는 Bipartitle Graph를 위한 auto-encoder framework인 GC-MC(Graph Convolution Matrix Complet..

[Graph] Measuring Network

Contents 네트워크에는 밀집(Density), 차수(Degree), 길이(Length) 등 다양한 지표가 존재하며, 이를 측정하기 위한 방법도 다양하게 존재한다. 본 글에서는 이를 측정하는 방법에 대해서 알아본다. Density Density는 그래프의 밀집 정도를 의미한다. 예를 들어, 완전 연결 그래프의 경우 Density는 1이 될 것이다. 완전 연결 그래프는 Complete Graph 혹은 Clique로 부르기도 한다. 이때 평균 차수는 다음과 같이 계산할 수 있다. \[ m = \begin{pmatrix} n \\ 2 \end{pmatrix} = \frac{n (n-1)}{2} \] \[ \left \langle k \right \rangle = \frac{2m}{n} = \frac{n(n..

[Statistics] Power Law Distribution

Power Law Distribution은 다양한 이름으로 불린다. Long Tail Distribution으로도 들어본 적 있을 것이다. 이 그래프는 사회의 현상을 가장 잘 매핑할 수 있는 함수이며, 어떤 식으로 유도되는지 알아보자. Power Law Distribution은 Real-World 네트워크 구조를 가장 잘 설명할 수 있다고 한다. 이 분포는 오른쪽으로 긴 꼬리를 가진 형태를 띄고 있어서 가독성이 많이 떨어진다. 이때 Power Law Distribution에 아래와 같은 Log-Log 수식을 취하면 Log-Log plot을 그릴 수 있고, 유의미한 패턴을 찾을 수 있다. \[ \begin{equation} \begin{split} \ln p(x) & = -\alpha \ln x + c \..

Bootstrapping User and Item Representations for One-Class Collaborative Filtering (SIGIR'21)

Contents One-Class Collaborative Filtering (OCCF)은 user-item 쌍에서 positively-related를 식별하는 것을 목적으로 한다. positively-related 는 긍정적인 관련성을 의미하고, 사용자가 선호할 만한 제품을 찾는 것을 의미한다. 기존 연구에서는 Negative Sampling (NS)에 의존하여 이를 추출하였으나, 다양한 문제점이 존재한다. 본 논문에서는 NS의 문제점을 해결하기 위해 새로운 OCCF 기법인 BUIR을 제안한다. 1. Introduction 최근 Implicit Feedback만 사용하는 추천 시스템 연구에서 사용자의 선호도를 정확하게 예측하기 위해 OCCF에 초점을 둔 연구가 많이 진행되고 있다. OCCF는 적은 수의..

Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for Recommendation (SIGIR'22)

Contents 본 논문은 Contrastive Learning (CL)을 추천 시스템에 적용한 논문이다. SIGIR'22에서 발표된 컨퍼런스 논문이며, 이전에 제안된 Self-Supervised Learning과는 다른 구조를 띄는 simGCL을 제안하였다. 본 논문에서 제안하는 simGCL이 어떤 것인지 알아보자. 1. Introduction 최근 딥러닝에서 다시 Contrastive Learning (CL)을 적용한 연구들이 제안되고 있다. CL은 라벨이 지정되지 않은 데이터에서 일반적인 특징을 추출하고, 정규화하는 것으로 인해 여러 분야에서 우수한 성능을 발휘하였다. 이는 annotation이 필요하지 않기 때문에, 추천 시스템의 희소성(Sparsity) 문제를 해결할 수 있다. 그로 인해, CL..

Model Degradation Hinders Deep Graph Neural Networks (KDD'22)

Contents 본 논문은 Graph Neural Network (GNN)의 over smoothing 문제를 해결하고자 Propagation Operation과 Transformation Operation의 순서를 바꾸어 성능을 개선시킨 연구다. Adaptive Inital Residual (AIR)을 제안하고 있으며, AIR은 추후 내용에서 자세히 다루어보자. 1. Introduction GNN은 node-level, edge-level, graph-level task를 하기 위해 많이 사용되고 있으며, 소셜 네트워크, 화학, 생물학, 추천 시스템 등 다양한 분야에서 사용된다. GNN 모델 중 가장 대표적인 모델은 GCN(Graph Convolution Network)라고 할 수 있으며, GCN은 P..

반응형