728x90 반응형 cs24635 [CS246] RecSys (1) - Introduction Recommender Systems Web application에서는 user의 반응(response)를 예측해야하는 영역이 있는데, 이를 추천시스템(recommender systems, RecSys) 이라 부른다.유저의 기존 관심사를 바탕으로 새로운 온라인 뉴스기사를 추천해주거나, 전자상거래에서 과거 구매목록을 이용하여 새로운 상품을 추천해주는 것이 예가 된다. From Scarcity to Abundance최근 온라인의 발달로 Web(혹은 Online)에서 이런 추천시스템이 가능해졌다.과거 Shelf space의 경우에는 제한된 공간과 판매원에 의존했지만, Web space에서는 사실상 모든 user에게 정보를 제공할 수 있다. ※ 물론 추천시스템이 만능은 아니다. 경우에 따라 association.. 2023. 10. 12. [CS246] Dimensionality Reduction (4) - CUR Decomposition Motivation실제 세계에서 데이터행렬(data matrix)은 매우 희소하다. (very sparse)그러나 SVD로 분해하여 얻은 2개의 singular vector $U$, $V$는 sparse 하지 않다.물론 $\Sigma$는 sparse하지만 $U$와 $V$에 비해 너무 크기가 작기 때문에 메모리 측면에서 별로 도움이 되지 않는다. 이런 이유로 행렬을 sparsity를 유지하면서 (의미있게) 분해할 필요가 있다.CUR DecompositionCUR 분해의 목표는 $\| M - CUR \|_F$ 의 값을 최소화 하는 것이다.$C$는 column에서 랜덤하게 $r$개 뽑은 컬럼벡터, $R$은 row에서 랜덤하게 $r$개 뽑은 로우벡터가 된다.$U$는 $C$와 $R$의 교집합으로 이루어진 정방행렬.. 2023. 10. 11. [CS246] Dimensionality Reduction (3) - SVD Singular Value Decomposition (SVD)특이값분해(SVD)와 관련 용어를 잠시 복습하고 가자.행렬 $M$을 SVD 분해하면 아래와 같이 3개의 행렬을 얻게 된다. $M_{m \times n}$: input data matrix$U_{m \times r}$: left singular vector$\Sigma_{r \times r}$: singular values. 대각행렬이고 각 성분($\sigma_i$)은 'concept'의 강도(strength)를 나타낸다. $V_{n \times r}$: right singular vector$r$은 $r=\text{rank}(M)$ 이고, $U$와 $V$는 column-orthonormal이다.\[ M \approx U \Sigma V^\top.. 2023. 10. 10. [CS246] Dimensionality Reduction (2) - PCA Principal Component Analysis (PCA)PCA 알고리즘으로 생성된 새로운 차원(dimension)을 주성분(principal component)라 부른다.원래 PCA 자체로는 차원축소가 아니지만, 이 포스트에서는 차원축소로 응용되는 특성에 대해 다룬다.PCA: Algorithm데이터의 분산이 가장 큰 방향을 새로운 차원의 축으로 삼는 것이 핵심이다. (해당 축으로 데이터를 정사영했을 때 가장 range가 큰 것) 데이터의 분산이 곧 데이터의 분포를 가장 잘 설명할 것이기 때문이다. 첫번째 차원: 데이터의 분산이 가장 큰 방향두번째 차원: 첫번째 차원과 수직이면서, 데이터의 분산이 2번째로 큰 방향n번째 차원: 첫번째, 두번째, ..., (n-1)번째 차원과 모두 수직이면서, 데이.. 2023. 10. 8. [CS246] Dimensionality Reduction (1) - Introduction Demensionality ReductionReducing Matrix Reduction대부분의 데이터는 행렬로 표현할 수 있다. 예를 들어, $m \times n$ 행렬은 $m$개의 점들과 $n$개의 feature로 생각할 수 있다. 선형대수를 이용하면, 행렬을 3개의 행렬의 곱으로 나타낼 수 있다. 이때 새로 생기는 3개의 행렬은 더 작은 차원 $r$을 공유한다. 예를 들어, SVD를 이용하면 $m \times n$ 행렬은 각각 $m\ times r,\ r \times r,\ r times n$ 이렇게 3개의 행렬을 얻게 되고 가운데 행렬은 대각행렬이기 때문에 $r \times r$은 사실상 $r \times 1$ 이다.Latent Factors원래 데이터의 차원을 $D$, 그리고 축소된(혹은 잠재공.. 2023. 10. 7. [CS246] CURE Algorithm: Extension of k-means to clusters of arbitrary shapes Motivationk-mean과 BFR 알고리즘은 convex하거나 fixed-axis와 같은 클러스터 shape에 여러 가정이 있었다.CURE 알고리즘은 이러한 cluster shape에 어떠한 가정을 하지 않고 유클리드 거리만을 가정한다. 데이터가 정규분포일 필요도 없고, 고정된 축일 필요도 없다. 따라서 centroid 개념도 필요하지 않다. 대신에, collection of representative points가 클러스터의 표현을 나타낸다.클러스터 개수는 $k$개라고 가정한다. CURE는 Clustering Using REpresentatives의 앞글자를 따온 것이고, 원래 논문의 제목은 "CURE: An Efficient Clustering Algorithm for Large Databas.. 2023. 10. 2. 이전 1 2 3 4 5 6 다음 728x90 반응형