UROP

2주차(추천 시스템 연구동향 분석)

--# 메타러닝

메타러닝

정의

  • 떠오르는 학습 방법이며 적은 데이터를 효율적으로 학습(퓨샷 러닝)
  • ‘메타’라는 단어는 한 차원 위의 개념적 용어로 대상의 전반적인 특성을 반영
  • 데이터의 패턴을 정해진 프로세스로 학습하는 것이 아닌 데이터의 특성에 맞춰서 모델 네트워크의 구조를 변화시키면서 학습
  • 배우는 방법을 배우는 것 (Learning to learn)

ex) 하이퍼파라미터 최적화, 자동 신경망 네트워크 설계 등등..

퓨샷러닝(Few Shot Learning)

퓨샷 러닝에서의 데이터셋은 크게 두 가지로 나뉜다.

  1. 서포트 셋(Support Set)
    1. 데이터 셋을 학습에 사용하는 데이터
  2. 쿼리 셋 (Query Set)
    1. 데이터 셋을 테스트에 사용하는 데이터

이러한 퓨샷 러닝 태스크를 “N-way K-shot”이라고 하며 여기서 n은 카테고리의 개수를 뜻하고 k는 카테코리당 이미지의 수를 의미한다. 일반적으로 성능은 N에 반비례하며 k에 비례한다.

—# 예를 들어 개, 고양이, 말 3개의 카테리고가 있고 각각 4장씩 이미지가 존재한다면

→ 3-way 4-shot이다.

특징

일반적으로 딥러닝 모델을 훈련시킬 때 대용량의 데이터가 필요하며 현실적으로 방대한 양의 데이터셋을 구축하기는 쉽지 않다. 퓨샷 러닝은 적은 데이터만 있어도 성능이 우수한 모델링이 가능하다.

접근 방법

메타 러닝 및 퓨샷 러닝의 대표적 접근 방법은 거리 학습 기반과 모델 기반 학습 방식과 최적화 학습 방식이 존재한다.

  • 거리 학습 기반 : 효율적 거리 측정 학습
  • 모델 기반 학습 : 메모리를 이용한 순환 신경망
  • 최적화 학습 : 모델 파라미터 최적화

거리 학습 기반(Metric Based Learning)

메타 러닝의 방법론 중 하나인 거리 학습 기반은 서포트 셋과 쿼리 셋 간의 거리(유사도)를 측정하는 방식으로 대신한다. 대표적인 알고리즘은 샴 네트워크(Siamese Neural Network)가 있다.

모델은 주어진 서포트 데이터를 특징 공간에 나타내서 특징을 뽑아내며 같은 클래스면 거리를 가깝게 다른 클래스면 멀게 하는 방식으로 데이터를 분류한다. 쿼리 데이터를 유클리디안 거리가 가까운 서포트 데이터의 클래스로 예측하는 방식이다.

모델 기반 학습 방식(Model based learning)

모델 기반 학습 방식은 적은 수의 학습 단계로도 모델의 파라미터를 효율적으로 학습할 수 있는 방식이다.

모델에 별도의 메모리를 두어 학습 속도를 조절한다. 대표적인 알고리즘으로는 MANN가 있다.

과거 데이터를 외부 메모리에 저장함으로 효율적으로 문제를 해결하는 방법을 습득하며 새로운 정보를 빠르게 인코딩하고 몇 개의 샘플만 가지고도 새로운 태스크에 적용할 수 있도록 설계되었다.

최적화 학습 방식(Optimizer learning)

Few Shot task를 파라미터 최적화 문제로 생각한다.

일반적으로 딥러닝 모델은 기울기의 역전파를 통해 학습을 진행하지만 기울기 기반 최적화 기법은 큰 스케일의 데이터를 위해 설계가 되었기 때문에 적은 수의 샘플에 대한 최적화 기법을 다룬다. 대표적인 알고리즘으로는 MAML알고리즘이 있다.

0. 추천 시스템 기법 연구동향 분석

정보 통신의 발달로 최근에는 온라인으로 쇼핑하는 사람들이 증가하였다.

하지만 고객의 입장에서는 판매자와 직접적인 소통이 불가능해 다양해지는 아이템들에 대한 사전지식 부족으로 원하는 물건을 고르는데 어려움이 존재한다. 이를 해결하기 위하여 다양한 방법의 추천시스템이 존재한다. 현재는 정보필터링 방법과 연관성 분석 등이 있다.

가장 간단한 추천 방식

IMG_52C0ED242834-1

  1. 베스트셀러기반
    • 특징 : 판매량이 많은 순서대로 상품을 추천
    • 장점 : 개인정보 없이 신속한 추천 가능
    • 단점 : 개인화된 추천이 불가능
  2. 최소질의대상 상품결정
    • 특징 : 직접 설문하여 얻은 정보를 통해 상품을 추천
    • 장점 : 개인화된 추천이 가능
    • 고객의 응답이 불완전할 경우 신뢰성 저하
  베스트셀러기반 최소질의대상 상품결정
특징 판매량이 많은 순서대로 추천 직접 설문하여 얻은 정보를 통해 추천
장점 개인정보 없이 신속한 추천 개인화된 추천 가능
단점 개인화된 추천이 불가능 고객의 응답이 불완전할 경우 신뢰성 ↓

정보 필터링

정보 필터링 기법에는 크게 3가지 존재한다.

  1. 콘텐츠 기반
  2. 협력 필터링
  3. 하이브리드
1. 콘텐츠 기반

특징

  • 사용자가 아이템에 대해 평가한 점수 혹은 과거 구매내역을 바탕으로 미리 선정된 기준을 통해 분류된 아이템 카테고리와 유사도를 계산한 후 추천

장점

  • 협력필터링과 다르게 추천 대상과 취향이 비슷한 이웃 사용자를 찾을 필요가 없다.
    • 독립적인 정보만을 필요로 한다.
    • 다른 사용자의 정보가 부족할 경우 사용
  • 새로운 아이템에 대한 평가점수가 존재하지 않더라도 First rater문제가 발생하지 않는다.
    • 새로운 아이템이여도 그 아이템 속성에 맞게 카테고리에 할당되어 유사도로 추천하기때문

단점

  • 과거 구매이력과 정보가 부족할 경우 성능을 보장할 수 없다.
    • 구매이력과 프로필 정보가 없다면 해당 방법으로 구현하는것은 불가능
  • 다른 사용자들의 취향이나 선호도를 반영하지 못해 너무 비슷한 상품들만 추천될 수 있음
    • 이러한 문제를 과도한 특수화라고 함
    • 무작위 요소를 추가하는 유전자 알고리즘이나 돌연변이 방식을 사용하면 보다 우수한 성능 보장

접근 방식

(1)아이템 속성 분석

구조적 데이터

  • 아이템의 속성이 명확히 정의 되어 있어 있음
  • 속성의 개수가 비교적 적고, 각 속성에 해당하는 값이 모두 존재해야 함

비구조적 데이터

  • 이미지,소리, 텍스트와 같은 데이터
  • 최근 들어 급증하고 잇고, 속성 정의가 어렵다는 단점이 존재
  • 텍스트로 이루어진 콘텐츠에 대한 연구가 활발히 이루어지고 있음
    • 키워드 분석과 의미 분석 2가지 방식

비구조적 데이터(키워드 분석)

아이템간의 키워드를 비교하여 유사도를 계산하여 사용자가 선호하는 아이템과 키워드 유사도가 높은 아이템을 추천하며 대표적으로는 TF-IDF가 있다.

TF : 아이템 내에서 한 단어가 출현한 빈도를 나타내는 값으로, 아이템에서 많이 출현한 단어일수록 높은 값

IDF : 출현 빈도가 높더라도 불용어에 해당할 확률이 크므로 해당하는 키워드가 전체 아이템에서 얼마나 가치 있는 키워드인지

아이템 내에서 많이 출현하지만 전체 아이템 집합에서는 드물게 출현하는 단어일수록 높은 TF-IDF 값을 가짐

  • 위 과정으로 가중치가 높은 상위 N개의 단어 키워드로 테이블을 생성
  • 아이템간 유사도를 계산하기 위해 코사인 유사도를 사용

문제점

  • 하나의 단어가 다양한 의미를 가지는 경우
    • 실제로는 유사하지않지만 추천 가능성
  • 여러 단어가 하나의 의미를 가지는 경우
    • 내용적으로는 유사하지만 유사도가 낮으므로 추천 누락

위 문제점을 해결하기 위하여 의미론 분석의 중요성이 대두되고 있다.

의미론 분석에서는 품사 별 동의어 관계를 링크로 연결한 대형 네트워크 형태의 워드넷(Wordnet)이 가장 널리 이용되고 있다.

  • 사용자 프로필 정보를 이용하여 추천

    (+) 과거 구매이력 및 다른 사용자 데이터가 없어도 추천 가능

    (+) 평가 데이터가 부족한 경우 널리 쓰임

    (-) 정확한 정보를 입력하는 사용자를 확보하기 어려움

    (-) 사용자 선호 경향 변화에 대한 대처가 힘듬

    (-) 정교한 추천 성능을 보장할 수 없음

  • 과거 구매이력 정보를 분석하여 추천

    (+) 과거 구매이력을 성능향상

    (+) 사용자 선호 경향 변화에 대한 대처 가능

    (-) 과거 데이터가 필요

    (-) 너무 비슷한 아이템만을 추천할 가능성 존재

콘텐츠 기반 접근방식은 사용자가 직접 입력한 정보를 이용하여 추천하는 방식과 사용자가 과거에 구매한 이력 정보를 통해 추천하는 방식이 존재한다. 여기서 아이템을 추천하기 위해서 TF-IDF식을 통해 아이템 내에서 등장하는 키워드에 대한 값을 계산하는데 해당 식은 단지 아이템 내 단어 출현 빈도수를 계산하므 로 여러 단어가 하나의 의미를 가지거나, 하나의 단어가 다양한 의미를 가지는 경우 제대로 된 추천 가능성이 낮다. 이를 해결하기 위하여 의미론적 분석이 필요하며 워드넷이 가장 널리 이용되고 있다.

2. 협력 필터링

“이웃이 다른 이웃을 돕는다면 우리의 커뮤니티는 더 강해집니다.” -제니퍼 팔카

특징

  • 현재까지 가장 우수한 성능을 나타낸다고 알려진 기법으로 특정 아이템에 대해 선호도가 유사한 고객들은 다른 아이템에 대해서도 비슷한 선호도를 보일 것 이라는 기본 가정을 바탕으로 시용자가 아이템에 대해 평가한 정보를 사용해 선호도를 예측한다.

장점

  • 콘테츠 기반의 방식보다 정확도가 우수하다.

단점

  • 유사도를 측정할 만한 충분한 데이터가 존재하기 않다면 예측이 불가능하다 (Cold Start)
  • 누군가가 점수를 주기 전까지는 추천이 이루어 질 수 없다(first rater)
  • 코사인거리나 피어슨 상관게수를 이용할 경우 데이터 희소성 문제가 발생
  • 데이터 희소성을 해결하기 위한 다양한 연구
    • 논문추천 시스템
      • 논문의 키워드를 활용하는 방식을 제안
      • 나이브 베이즈 모델 사용
      • 새로운 고객에 대해서는 추천목록을 제공하는 것이 어려움
    • 협력필터링 기법과 사회연결망 기법의 중심성을 결합
      • 많은 사람들과 비슷한 선호도를 갖는 고객의 취향은 대중적이고 신뢰성이 높다는 가정
      • 고객들 간 유사도를 기반으로 네트워크를 생성
      • 중심성이 높은 사용자들을 새로운 고객의 이웃으로 설정
      • 기존 나이브 베이즈 모델보다 정확성을 향상 시킴
    • 주요 사용자와 일반 사용자로 분류
      • 주요 사용자 군집 생성
      • 일반 사용자 군집 생성
      • 주요 사용자 군집에는 있지만 일반 사용자 군집에는 없는 아이템을 일반 사용자에게 추천
    • 데이터의 차원을 축소하는 방법
      • 중요하지 않은 사용자나 아이템을 제거 하는 특이값 분해
      • 원본 데이터보다 노이즈가 적어 우수한 성능을 나타냄
    • 낮은 순위 데이터에 손실함수 개념 적용

확장성

  • 계산량이 많을 경우 유사도가 큰 순서대로 N개의 사용자 혹은 아이템만을 선정하여 선호도를 예측
  • 일관성이 없는 의견을 가진 사용자는 오히려 방해가 됨
    • 콘텐츠기반 + 협력필터링을 모두 사용하여 가중 평균값을 에측 값으로 활용
    • 두 값의 차이가 큰 사용자의 가중치를 낮게 주어 예측 오차를 줄이는 방법
  • 고의로 긍정적인 평가 혹은 부정적인 평가를 하는 경우
    • 기계학습 알고리즘을 통해 미리 학습한 뒤 공격을 탐지하는 기법

접근 방식

  • 기억 기반 협력필터링
    • 유사도가 높은 사용자가 선택한 아이템을 추천해주는 방식
      • 모델을 구축하지 않고 추천이 요굴될 때마다 휴리스틱 기법을 통해 결과를 도출
    • 같은 항목에 같은 점수를 준 두 고객이 존재할 경우, 이들의 유사도는 높으며 비슷한 취향을 갖고 있다고 볼 수 있다.
    • 사용자 기반 : 사용자가 입력한 선호도 정보를 이용하여 추천대상고객의 구매이력과 가장 비슷한 사용자가 구매한 아이템을 추천하는 방식
    • 아이템 기반 : 추천하고자하는 아이템을 구매한 사람들이 공통적으로 구매한 아이템을 구매한 사람들에게 해당 아이템을 추천해주는 방식

    유사도

    • 피어슨 상관게수
      • 1에 가까울수록 양의 상관관계, -1에 가까울수록 음의 상관관계, 0은 상관관계 없음
    • 코사인 유사도
      • 다양한 고객들이 서로 다른 척도를 사용할 경우 파악하는 것이 어렵다.
      • 이를 해결하기 위해 보완 코사인 유사도를 제안
    • 스피어만 순위 상관계수
      • 사용자 a와 b의 점수를 각각 순위로 변환한 뒤, 차이를 통해 유사도를 측정
      • 점수의 분포가 매우 극단적일 경우 유용하다.
      • 사용자가 여러 아이템에 대하여 같은 평가점수를 준 경우에는 유사도 측정이 어려움

    선호도 예측

    • 가중합
      • 추천 대상 고객과 사용자간의 유사도가 높을수록 큰 가중치를 부여
    • 단순가중평균
      • 아이템 기반 협력필터링에서 사용
      • TF-IDF를 활용
  • 모델 기반 협력필터링
    • 기억 기반 협력필터링을 기본으로 하되, 기계학습 또는 데이터마이닝 기법을 활용하는 것
    • 베이지안, 선형 회귀분석, 마코프 결정 프로세스 등…
    • 나이브 베이즈 모델
      • 문서분류에서 가장 우수한 성능을 보이고 있는 알고리즘으로 베이즈 정리에 이론적 근거를 두고 있음
      • 각 카테고리에 할당 될 확률을 계산하는 방법
      • 평가 정보나 이용정보가 부족한 신규 컨텐츠 추천 문제를 해결
      • 콘텐츠기반 접근방식의 과도한 특성화 문제의 해결 가능성 제시
    • 군집화
      • 대표적으로 K-means, DBSCAN, OPTICS 존재
      • 기존 협력필터링에서 유사도를 측정하는 단계에 앞서, 유사한 그룹을 나누는 과정이 추가
      • 예측 정확도가 높아지는 장점
      • 데이터를 분할함에 따라 데이터 희소성 문제 발생
  • 차원 축소
    • 사용자가 구매한 상품이 너무 적으면 추천이 불가능
    • 사용자가 구매한 상품이 너무 많으면 많은 계산 비용이 발생
    • LSI기법을 적용하여 고차원의 행렬을 저차원의 행렬로 차원을 축소하는 방법 존재
    • 차원수가 너무 작으면 계산 속도는 빠르지만 정확도가 낮음
    • 차원수가 너무 높으면 계산 속도는 느리지만 정확도가 높음
      • 적절한 착원 선택이 중요
      • 1차적으로는 군집화를 진행
      • 엔트로피 가중치와 특이값 분행를 동시에 적용

협력 필터링 접근방식은 이웃한 사용자 또는 아이템의 유사도로 추천하는 기법이다. 협력 필터링 방식은 콘텐츠 기반 방식보다 더 정확하다는 장점이 존재하지만 Cold start, first rater문제가 있다. 이를 해결 하기 위해 다양한 연구가 진행 중에 있다. 협력 필터링 기법은 크게 2가지 방식이 존재한다. 첫 번째로는 기억 기반 협력 필터링이며 해당 방식은 사용자 또는 아이템 기반 방식이 존재한다. 모델 기반 방식은 기억 기반 방식을 기반으로 기계학습과 같은 모델을 사용하는 방법이다. 기억 기반 협업 필터링은 새로운 사용자나 아이템에 대한 추천에 대해 비교적 불안정하며, 사용자나 아이템이 증가할 때 시간과 메모리 문제가 발생할 수 있는 반면, 모델 기반 협업 필터링은 새로운 사용자나 아이템에 대한 추천이 가능하며, 적은 메모리와 높은 정확도를 보장한다. 하지만, 모델링이 어려워 다른 방법보다 많은 전문 지식이 필요

3. 하이브리드

특징

  • 각 방식의 장점을 극대화하면서 단점은 보완하고 다양한 정보를 효과적으로 활용할 수 있다.
  • 모델의 형태에 따라 크게 네 가지로 분류가 된다.
    1. 독릭된 추천 결과를 조합
    2. 콘텐츠 기반 정보를 협업필터링에 적용
    3. LSI, PLSI와 같은 알고리즘을 이용하여 협업필터링의 정보를 콘텐츠기반 접근방식에 융합
    4. 협업필터링과 콘텐츠기반 접근방식을 동시에 고려하는 단일 모델을 구축
      1. MCMC 와 같은 추정모델 또는 베이지안 학습법이 이용

종류

  1. 다른 추천 기준을 지닌 여러개의 알고리즘을 학습한 뒤 가중평균합을 구하는 방법
    • 여러 추천 알고리즘들의 결과를 전반적으로 이용 가능
    • 각 추천 점수를 정규화하여야 하며, 가중치를 잘 정의해야 함
  2. 여러 개의 추천 엔진중 현재 상황에 가장 적절한 추천 엔진 선택
    • 현재의 상황을 인지하기 위한 추가적인 계산이 필요’
  3. 추천 결과를 혼합하여 보여주는 방법
    • 다양성을 높게 보여줄 수 있음
  4. 모든 변수를 하나의 알고리즘의 변수로 병합
  5. 한 알고리즘이 추천한 아이템을 다른 알고리즘의 후보로 이용
  6. 각각의 알고리즘 추천 점수를 바탕으로 메타 알고리즘을 학습하는 앙상블 방법

$MCNee et al.(2006)$

  • 콘텐츠기반과 협업힐터링에 사용할 수 있는 알고리즘을 제시
  • 이웃기반 협업필터링
    • 세렌디피티(의도치 않게, 우연성)가 높은 경향이 있음
  • 나이브 베이지안 판별기
    • 선택한 논문이 많이 참조된 논문을 먼저 추천
  • PLSI
    • 사용자-아이템 행렬을 차원축소 방법 중 하나인 PLSI를 통해 학습
    • 선택한 논문과 분야적으로 매우 유사한 논문들이 우선적으로 추천
  • TF-IDF
    • TF-IDF를 이용하여 콘텐츠 기반 추천
    • 선택한 논문들과 내용이 매우 유사한 논문들이 우선적으로 추천.

$Vozalis and Margaritis(2004)$

  • 인구통게학 정보를 이용하여 유사한 이웃들의 정보만을 이용하는 연쇄방법을 제안

$Chow et al.(2014)$

  • 사용자의 선호정보를 결합하여 개인화 추천 알고리즘을 고안

$Basilico and Hofmann(2004)$

  • 사용자-아이템 행렬과 사용자-아이템의 특성 변수들을 모두 종합하여 유사도 커널을 정의

$Ganu et al.(2009)$

  • 리뷰 데이터로 추출된 토픽과 의미 벡터를 이용
  • 사용자나 아이템의 해당 리뷰 유무에 따라 추천 알고리즘을 선택할 수 있는 방법을 제안하고 성능을 입증

$Mcauley and Leskovec(2013)$

  • 리뷰 데이터로부터 토픽을 추출 시 리뷰 데이터와 점수를 모두 이용하여 토픽을 추출하는 HFT를 제안

$Vozalis and Margaritis(2004)$

  • 아이템들에는 숨겨진 변수가 있다고 가정
  • 숨겨진 변수를 리뷰 데이터로부터 추출
  • 사용자가 선택한 아이템과 유사한 속성을 지닌 다른 아이템을 추천