UROP

7~8주차 (Meta-Learning의 특성과 원리 이해 ProtoCF)

논문 자료(Deep Meta-learning in Recommendation Systems : A Servey)

심층 신경망 기반 추천 시스템은 최근 몇 년 동안 성공을 거두었지만, 여전히 충분한 데이터 부족과 계산 비효율성 등의 문제에 직면해 있다. 메타러닝은 알고리즘의 학습 효율성과 일반화 능력을 향상시키는 새로운 접근 방식으로, 추천 시스템의 데이터 희소성 문제를 해결할 수 있는 가능성을 보여주었다. 사용자 및 아이템 Cold start 와 같이 데이터가 제한된 시나리오에서 딥 메타러닝을 사용하여 성능을 개선하는 많은 연구가 발표되었다. 이 논문에서는 딥 메타러닝 기반 추천 방법을 추천 시나리오, 메타러닝 기법, 메타지식 표현으로 분류하여 개요를 제공한다. 기존 방법들이 메타러닝을 활용해 추천 모델의 일반화 능력을 어떻게 향상시켰는지 살펴보고, 한계점에 대해서 알아본다.

0. 메타러닝

정의

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

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

메타러닝은 데이터와 연산이 부족한 상황에서 모델의 일반화 능력을 향상시키는 데 중점을 둔 머신 러닝의 한 유형이다. 여러 작업에 대한 이전 학습 과정에서 사전 지식을 확보하여 새로운 작업에 대한 빠른 학습을 돕고 보이지 않는 작업에 대해 우수한 일반화 성능을 발휘할 수 있다. 메타러닝은 고정된 학습 알고리즘을 대체할 수 있는 더 나은 학습 전략을 학습하는 데 초점을 맞추기 때문에 딥러닝 모델의 표현 학습 능력을 향상시키는 것과는 차이점이 있다. 보이지 않는 작업에 빠르게 적응할 수 있는 잠재력이 커서 이미지 인식, 자연어 처리, 강화 학습 등 다양한 연구 영역에 적용되고 있다.

뿐만 아니라 제한된 인스터스와 비효율적인 연산으로 어려움을 겪고 있는 추천 시스템 등 다양한 연구 영역에 적용되고 있다. 고급 메타러닝 기법은 우선 기존 딥 추천 모델을 학습할 때 데이터 부족을 해소 하기 위해 적용된다. 예를 들면 최적화 기반 메타 학습 프레임워크인 MAML은 콜트 스타트 추천 시나리오에서 큰 효과를 보여준다.

이 논문에서는 이 분야의 연구를 정리하기 위해 세 가지 관점으로 분류법을 제시하고 메타러닝 기술을 활용하여 다양한 형태의 메타 지식을 추출하는 다양한 방법을 논의

1번 섹션에서는 메타러닝 기법의 기본 사항과 메타러닝 기법이 적용되는 일반적인 추천 시나리오를 다룬다. 2번 섹션은 세 가지 관점의 분류법을 제시하고, 섹션 3에서는 메타러닝 추천 작업을 구성하는 다양한 방법을 요약하며, 섹션 4에서는 메타러닝 기법을 적용한 기존 방법의 방법론적 세부 사항을 자세히 설명한다.

1. 메타러닝 기법의 기본 사항

이 섹션에서는 딥 메타러닝 기반 추천 방법을 논의하는데 필요한 기초적인 이해를 제공하며 메타러닝의 개념을 소개하고 기존 머신 러닝과 대조한다. 이후 메트릭 기반, 모델 기반, 최적화 기반 기법 등 메타러닝 기법의 세 가지 주요 흐름과 몇 가지 대표작을 간락하게 소개한다. 마지막으로는 메타러닝 기법이 연구되고 적용된 대표적인 추천 시나리오도 소개한다.

1.1 Meta-Learning

메타 학습은 기본 학습 모델의 일반화 능력을 향상시켜 새로운 작업을 더 효율적으로 학습할 수 있도록 하는 프로세스이다. 이는 여러 작업에 대한 사전 지식, 즉 메타 지식을 학습함으로 이루어진다. 서로 다른 작업의 학습 과정은 메타 학습 방법으로 관찰된 훈련 인스턴스로 취급되며, 메타 지식의 형태를 추출하고 정의하여 새로운 작업을 보다 효과적으로 학습할 수 있도록 한다.

훈련 단계에서 훈련 데이터는 작업 배포에서 샘플링되며 메타 훈련 데이터세트로 표신된다. 각 작업은 지원 집합으로 표시되는 자체 훈련 인스턴스와 쿼리 집합으로 표시되는 평가 인스턴스로 구성된다. 작업에 대한 매핑 함수의 작업별 파라미터는 경험적 손실 함수를 최소화하여 얻고 학습된 매핑 함수는 작업의 동일한 분포에서 샘플링된 평가 인스턴스 세트에 대해 평가된다.

메타학습의 목표는 모든 작업에 대한 작업별 학습이 더 나은 성과를 낼 수 있도록 안내할 수 있는 최적의 파라메터를 학습하는 것이다. 메타 학습 방법의 학습 목표는 각 직업의 해당 쿼리 세트에 대해 더 나은 성능을 관찰하는 것이며, 메타 지식은 여러 작업에 걸쳐 학습되어 작업 간 특성을 파악하고 작업 차이에 대한 뛰어난 일반화 능력을 갖는다.

메타러닝 패러다임은 크게 3가지 점에서 기존 머신 러닝과 다르다.

  1. 기존 머신 러닝은 특정 작업의 성능을 개선하는 데 중점을 두는 반면, 메타 러닝은 새로운 작업을 학습하는 방법을 배우는 데 중점.
  2. 메타 학습에서는 여러 개의 작은 작업을 사용하여 더 큰 작업에 적용할 수 있는 지식을 추출.
  3. 메타 학습 과정에는 두 가지 수준의 학습이 포함되는데, 내부 수준에서는 작업 별 정보를 학습하고 여러 인스턴스에 걸쳐 학습하고 일반화 가능한 지식을 추출하는 외부 수준용 학습 인스턴스를 생성.

1.2 Meta-Learning 기술의 주요 기법

퓨샷러닝(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알고리즘이 있다.

기본 모델 구조에 구애받지 않으며 복잡한 작업 분포에서 더 나은 일반화 능력을 보이지만 계산량이 많다는 단점.

1.3 추천시스템 시나리오

추천 시스템과 관련하여 메타러닝이 연구된 다양한 시나리오가 있다. 이런 시나리오에는 콜드 스타트 추천, 클릭률 예측, 온라인 추천, 관심 지점 추천, 순차적 추천이 포함된다. 이외에도 메타 학습이 연구된 다른 추천 시나리오도 있다.

Cold Start

콜드 스타트 추천은 새로운 사용자나 아이템이 등장할 때 흔히 발생하는 사용자-아이템 상호 작용 데이터가 제한적인 경우 추천 시스템에서 어려움을 겪게 된다. 기존의 협업 필터링 방식이나 딥러닝 방식은 풍부한 학습 데이터가 필요하기 때문에 이러한 상황에서는 성능이 좋지 않을 수 있다. 콘텐츠 기반 방식은 다양한 콘텐츠 정보를 사용하여 추가적인 의미 정보를 통해 사용자와 항목의 표현을 향상시키므로 상호작용 데이터에 대한 요구가 약하된다. 콜드 스타트 추천은 소수 학습에서 응용할 수 있으며, 데이터 부족을 완화하기 위해 메타 학습 기법을 활용한다.

클릭률 예측

클릭률(CTR) 예측은 게시된 광고의 가치를 결정하는 데 도움이 되므로 온라인 광고에서 중요하다. CTR예측 모델은 광고/사용자 ID 및 기타 기능에 대한 잠재벡터를 학습하는 임베딩 레이어와 정교한 모델과 기능 상호 작용을 모델링하는 예측 레이어로 구성된다. 그러나 이러한 모델은 클릭 기록이 제한적인 신규 광고에서는 콜드 스타트 문제로 인해 성능이 저하된다. 콜드 스타트 광고에 대한 임베딩 학습을 강화하기 위해 메타 학습 방법이 연구되고 있다.

온라인 추천

온라인 추천은 대규모 추천 시스템에서 과거의 기록에만 의존하지 않고 실시간 사용자 상호작용 데이터를 기반으로 추천 모델을 업데이트하는 데 사용되는 기술이다. 이 접근 방식을 사용하면 동적인 사용자 선호도와 추세를 파악할 수 있다. 하지만 효율적인 계산 방법이 필요하다. 온라인 추천 시나리오에서 실시간 데이터로부터 트렌드를 빠르게 포착하기 위해 메타러닝이 도입된다.

관심 지점 추천

관심 지점 추천은 사용자의 체크인 기록을 기반으로 개인화된 위치 추천을 제공하는 추천 시스템의 한 유형이다. 이러한 유형의 추천은 과거 체크인 데이터에서 공간적-시간적 종속성을 발견하는 데 크게 의존한다. 하지만 이 시나리오에서는 사용자가 소수의 POI만 방문하는 경향이 있기 때문에 데이터 희소성이 문제가 된다. 이를 해결하기 위해 메타러닝 기반 POI 추천 방법이 연구되고 있다.

—# POI는 관심 있는 사항을 나타내는 지도의 특정 지점

순차 추천

순차 추천은 사용자의 상호 작용 순서를 사용하여 진화하는 선호도를 파악하는 추천 시스템의 한 유형이다. 이 방법은 사용자 관심사 진화의 순차적 패턴을 발견하는 데 중점을 두며, 마르코프 체인, 순환 신경망, 자기 관심 기반 네트워크와 같은 방법을 사용하여 좋은 결과를 얻었다. 하지만 순차 추천의 성능은 시퀀스의 충분한 항목에 의존하며, 수가 적을 경우 성능이 크게 저하될 수 있다. 딥 메타러닝 기반 추천 시스템의 분류 체계는 아래 그림과 같이 추천 시나리오, 메타러닝 기술, 메타 지식 표현이라는 세 가지 독립적은 축을 기반으로 구축된다.

1

2. 분류

이 섹션에서는 딥 메타러닝 기법을 사용하는 추천 시스템을 위한 분류 체계를 작성하며 분류 체계를 기반으로 기존 방법의 주요 특징을 요약한다. 추천 시스템의 분류 체계는 추천 시나리오, 메타러닝 기술, 메타지식표현의 세 가지 축으로 정의된다. 다른 분류법도 존재하지만 추천 시스템에 초점을 맞추지는 않았다.

  1. 추천 시나리오(어디서)

    추천 시나리오에는 콜드 스타트 추천, 클릭률 예측, 온라인 추천, 관심 지점 추천, 순차적 추천이 포함된다.

  2. 메타 학습 기법(어떻게)

    메타 학습 기법이란 추천 모델이 새로운 업무에 일반화할 수 있는 능력을 향상시키기 위해 메타 학습을 적용하는 방식이다. 메타 학습 기법에는 거리(메트릭)기반, 모델 기반, 최적화 기반 세 가지가 존재한다.

  3. 메타 지식 표현(무엇을)

    메타 지식 표현 축은 추천 모델의 빠른 학습을 개선하는 데 사용할 수 있는 지식의 형태를 나타낸다. 메타 지식의 일반적인 유형에는 파라미터 초기화, 파라미터 변조, 하이퍼파라미터, 샘플 가중치, 임베딩 공간, 메타 모델 등이 있다. 메타 학습 기술마다 메타 지식 표현에 뚜렷한 특징이 있다. 예를 들어, 파라미터 초기화는 일반적으로 최적화 기반 메타 학습을 통해 이루어지며, 파라미터 변조는 모델 기반 메타 학습에 속할 가능성이 더 높다. 여러 유형의 메타 지식 표현이 하이브리드 방식으로 동시에 학습되는 상황도 존재한다.

3. 추천을 위한 메타 학습 작업

이 섹션에서는 추천 시스템의 맥락에서 메타 학습 작업을 구성하는 방법에 대해 설명한다. 메타 학습 작업을 구성하는 과정은 일반적인 딥러닝 작업과는 다르며, 이 섹션에서는 문헌에서 사용되는 다양한 메타 학습 작업 구성 방법을 소개한다.

메타 학습에는 각각 훈련 인스턴스 세트(support set) 와 평가 인스턴스 세트(query set)로 분리된 메타 학습 및 메타 테스트 작업을 구성하는 것이 포함된다. 목표는 suppot set에서 빠르게 학습하고 query set에서 보이지 않는 인스턴스에 대해 더 나은 성능을 발휘하는 것이다. 단일 작업 수준에서는 학습 목표가 일반적인 딥러닝과 유사하지만 메타 러닝에서는 데이터 불충분성이 강조된다. 더 높은 수준에서는 보이지 않는 작업의 평가 인스턴스에서 더 나은 성능을 발휘하여 여러 새로운 작업에 대한 메타러닝 방법의 일반화 능력과 빠른 학습 능력을 평가하는 것이 목표이다.

추천 시나리오에 메타러닝을 적용할 때는 작업을 구성하는 방식이 중요하며 추천 시나리오의 특정 요구 사항에 맞게 조정해야 한다. 예를 들어, 이미지 인식과 같은 소수의 샷으로 분류하는 작업에서 메타 학습 작업을 구성하는 일반적인 방법은 클래스 풀에서 N개의 클래스를 무작위로 샘플링한 다음 각 클래스에 속하는 K개의 인스턴스를 샘플링 하는 것이다. 자연어 처리 및 추천 시스템을 비롯한 다양한 분야의 메타 학습에서 작업을 구성하기 위한 다양한 설정들이 존재한다. 추천 시스템에서 작업은 주로 콜드 스타트 문제를 해결하기 위해 사용자와 항목을 기반으로 구성된다. 사용자별 태스크는 동일한 사용자에게 속한 인스턴스를 포함하며, 항목별 태스크는 동일한 항목을 기반으로 인스턴스를 그룹화한다. 목표는 support 집합에 대해 모델을 학습시키고 query 집합에 대해 평가하는 것이다.

메타 학습 기반 추천 방법은 작업의 상호작용 속성에 따라 다음과 같이 4가지 범주로 나눌 수 있다.

  1. 사용자별
  2. 항목별
  3. 시간별
  4. 시퀀스별

사용자별

사용자별 작업은 support 및 query 집합을 포함한 작업의 모든 인스턴스가 동일한 사용자에게 속하는 추천 시스템에서 작업을 구성하는 방식이다. 이 접근 방식은 사용자의 제한된 상호 작용으로부터 선호도를 빠르게 학습하는 것을 목표로 하며, 이는 사용자 콜드 스타트 문제를 해결하기 위한 중요한 작업이다. 목표는 support 세트에 대한 모델을 훈련하고 동일한 사용자의 query세트에 있는 상호 작용에 대해 평가하는 것이다. 메타 학습 방법은 충분한 수의 사용자별 작업에서 사용자 선호도 학습에 대한 메타 지식을 추출하여 새로운 사용자의 보이지 않는 작업에 직면했을 때 선호도 학습을 용이하게 한다.

예를 들어, u1이라는 특정 사용자가 있고 이 사용자의 항목과의 상호작용이 지원 집합 S1(일부 항목 평점 포함)과 쿼리 집합 Q1(다른 항목 평점 포함)의 두 집합으로 나뉘는 경우, S1에 대한 모델을 훈련하여 u1에 대한 Q1 예측을 잘 수행하도록 하려고 한다. 이처럼 다양한 사용자와 관련된 여러 유사한 작업에 메타 학습 기법을 사용함으로써 개별 사용자나 항목에 대해 개별적으로 사용할 수 있는 데이터가 많지 않은 경우에도 효율적인 모델을 학습하는 능력을 향상시킬 수 있을 것으로 기대한다.

항목별

항목별 작업에서는 동일한 항목과 관련된 상호작용이 함께 그룹화된다. support set과 query set은 여러 사용자와 동일한 항목간의모든 상호작용을 포함한다. 목표는 support set을 관찰한 후 query set에서 평가 인스턴스의 등급 또는 상호 작용 확률을 예측하는 것이다. 메타 학습을 사용하면 콜드 스타트 항목에 대한 전반적인 선호도를 빠르게 파악하여 정확한 예측과 추천을 할 수 있다.

시간별

추천 시스템의 시간별 작업에는 시간 슬롯에 따라 상호 작용 데이터를 여러 작업으로 분할하는 작업이 포함됩니다. 이러한 작업은 두 개의 연속된 시간 슬롯의 데이터를 사용하여 순차적으로 구성되며, 지원 세트는 현재 시간 슬롯의 데이터로 구성되고 쿼리 세트는 다음 시간 슬롯의 데이터로 구성됩니다. 이러한 작업은 온라인 환경에서 모델을 효율적으로 업데이트하는 것을 목표로 하며, 메타 학습을 사용하여 순차적인 시간별 작업에서 메타 지식을 추출하여 모델 업데이트를 용이하게 할 수 있습니다. 시간별 작업의 상호 작용은 더 이상 사용자나 항목별로 구분되지 않습니다.

시퀀스별

시퀀스별 작업은 서로 다른 사용자 또는 세션의 상호 작용 시퀀스를 별도의 작업으로 취급하는 추천 시스템의 작업 구성 유형입니다. 예를 들어 사용자의 상호작용 시퀀스는 타임스탬프로 정렬된 상호작용 목록으로 표시됩니다. 상호작용 시퀀스는 지원 세트와 쿼리 세트로 나뉘며, 전자의 상호작용은 학습 데이터로 사용되고 후자의 상호작용은 평가에 사용됩니다. 시퀀스별 작업은 익명 세션을 포함할 수 있고 상호작용 시퀀스의 후속 작업을 인스턴스로 사용할 수 있다는 점에서 사용자별 작업과 다릅니다.

4. 추천시스템을 위한 메타러닝 방법

메타 학습은 다양한 시나리오에서 학습하고 그 지식을 새로운 상황에 적용하여 추천 시스템을 개선하는 데 도움이 되는 방법이다. 이 섹션에서는 사용자의 상호 작용이 거의 없는 콜드 스타트 추천이나 상호 작용이 거의 없는 항목과 같은 다양한 추천 시나리오에서 이 접근 방식을 어떻게 사용할 수 있는지 설명한다. 또한 이러한 다양한 시나리오에서 성능을 향상시키기 위해 메타러닝을 사용하는 관련 작업과 그 방법에 대한 개요를 제공

4.1 Cold Start 추천시스템에서의 메타러닝

추천 시스템에서 사용자나 항목에 대한 상호 작용이나 데이터가 충분하지 않은 경우를 ‘콜드 스타트’라고 하며, 이 경우 추천의 정확도가 떨어질 수 있습니다. 메타 학습 방법은 소량의 데이터로 학습하는 소수 학습 기법을 사용하여 이러한 유형의 시나리오를 개선하는 데 도움이 될 수 있다. 이는 추천 시스템에서 메타 학습을 가장 일반적으로 적용하는 방법이다.

메타 학습은 더 나은 매개변수 초기화와 적응형 하이퍼파라미터를 학습하기 위해 로컬과 전역의 두 가지 수준에서 시스템을 최적화하는 것입니다. 이 최적화의 목표는 새롭거나 알려지지 않은 데이터 포인트에 대한 권장 사항을 개선하여 사용자와 항목 모두에 대한 콜드 스타트 문제를 해결하는 것입니다. 모델 기반 매개변수 변조 및 메트릭 기반 임베딩 공간 학습과 같은 다양한 방법이 사용됩니다.

1

그림 4는 최적화 기반 파라미터 초기화 및 적응형 하이퍼파라미터를 위한 프레임워크를 보여줍니다. 이 프레임워크에는 로컬 적응과 글로벌 최적화의 두 가지 수준의 최적화가 포함된다. 메타 학습기는 이 접근 방식을 사용하여 여러 작업에 걸쳐 업데이트된다. 파라미터 초기화와 적응형 하이퍼파라미터는 모두 다양한 메타 학습기 설계를 기반으로 학습할 수 있다.

표 5는 콜드 스타트 추천에 사용되는 최적화 기반 메타러닝 방법을 세 가지 관점에서 요약한 것입니다. 기존 방법은 메타 지식 표현의 형태에 따라 파라미터 초기화적응형 하이퍼파라미터의 두 가지 범주로 나뉩니다. 두 가지 유형에 대한 일반적인 프레임워크는 그림 4에 제시되어 있으며, 각 유형에 대한 구체적인 방법은 별도로 설명합니다.

2

Optimization-based Parameter Initialization

최적화 기반 파라미터 초기화는 추천 모델의 초기 파라미터를 설정하는 방식이다. 메타 지식을 시작점으로 사용하고, 이후 2단계 최적화를 통해 업데이트하여 정확도를 높인다. 콜드 스타트 추천을 개선하기 위해 MAML프레임 워크를 사용하는 MeLU라는 방법이 있다. MeLU는 신경망 기반 추천 모델의 전역 매개변수 초기화를 사전 지식으로 학습하여 개인화된 사용자 선호도 추정을 보다 정확하게 하는 것을 목표로 한다. 이 접근 방식에는 각 사용자에 대한 매개변수를 로컬로 업데이트하고 학습된 초기화를 기반으로 작업별 모델을 구성하는 것이 포함된다.

#— Optimization-based Parameter Initialization

아래 그림과 같이 서로 다른 Task(L1, L2, L3)를 가진 동일한 구조의 model은 각각의 task만 잘 맞추면 될 뿐 다른 Task는 고려하지 않지만 최적화 기반 파라미터 초기화는 이 Model의 서로 다른 Task의 공통적인 최적화된 파라미터를 찾는 것이다. 일반적으로 회귀 문제에서는 class는 의미가 없으므로 몇 개의 학습데이터만을 의미한 K-shot만 의미를 가진다.

1

#— MeLU(Meta-Learned User preference estimator)

MeLU의 작동 원리는 다음과 같다. 먼저, MeLU는 기존 추천 시스템(예: Netflix)에서 처음으로 사용자에게 제공하는 항목을 증거 후보라고 부르고.그런 다음 사용자가 선택한 항목을 기반으로 추천이 이루어진다. MeLU는 메타러닝을 사용하여 몇 가지 예제만으로 새로운 작업을 빠르게 적용할 수 있다. 따라서 MeLU는 몇 가지 항목만 소비한 새로운 사용자의 선호도를 추정할 수 있다. 또한 MeLU는 사용자 지정 선호도 추정을 위한 구별 항목을 결정하는 증거 후보 선택 전략을 제공한다.

#— MAML(Model-Agnostic Meta-Learning)

MAML은 주어진 작업에서 최적의 모델 파라미터를 찾는 대신, 다양한 작업에서 빠르게 적응하고 일반화할 수 있는 모델 파라미터를 찾는 것을 목표로 합니다. 이를 위해 MAML은 작업 집합에서 샘플 작업을 선택하고, 이를 사용하여 모델 파라미터를 업데이트합니다. 이 과정을 여러 번 반복하면서, 적응성을 갖는 모델 파라미터를 학습합니다.

#— MPML(Meta Probabilistic Machine Learning)

여러 초기화 매개변수 세트를 사용하고 콜드 스타트 작업에 대한 지원 세트에 대한 로컬 업데이트 후 성능에 따라 매개변수를 할당하는 방식입니다. 최적화 기반 메타러닝 기법을 통해 단순한 FCN 기반 협업 필터링 모델을 넘어 다양한 형태의 추천 모델에 대한 초기화 학습에 사용

매개변수를 초기화하는 3가지 방법

MeLU는 모든 작업 간에 전역 초기화를 공유하는 반면, MAMO와 PAML은 각각 사용자 프로필과 선호도를 고려하여 작업별 초기화를 맞춤화한다.

1

MAMO

MAMO는 메모리 네트워크를 사용하여 작업별 빠른 가중치 메모리를 저장한다. MAML 프레임워크에서 학습한 전역 초기화를 기본 모델에 할당하기 전에, 주어진 사용자의 프로필 표현으로 바른 가중치 메모리 MW를 쿼리하여 개인화된 bias를 생성한다. 메모리 업데이트 비율이 최적화에 사용됨에 따라 트레이닝 작업과 하이퍼파라미터를 통해 2개의 메모리 행렬이 업데이트 되며 MAMO는 사용자 프로필에 따라 작업별 초기화를 맞춤화 한다.

PAML

PAML은 비슷한 선호도를 가진 사용자들이 사전 지식을 공유하는 방법으로 사용자별 선호도에 따라 모델의 전역 초기화를 조정한다. 이는 외부 메타 모델을 사용하여 각 사용자의 선호도에 맞게 초기화를 조정하는 방식으로 이루어진다.

선호도별 게이트는 공유되는 사전 지식의 양을 제어하도록 설게되어 있다. 사용자의 표현에는 상호 작용, 소셜 네트워크의 명시적 친구, 의미 관계의 암시적 친구가 포함된다. 사용자 관계는 소셜 네트워크와 HIN을 모두 통하여 포괄적으로 모델링된다. 선호도별 초기화를 수행한 후 최적화 기반 메타 학습을 활용하여 기본 추천 모델과 앞서 설명한 선호도 모델링 모듈과 함께 FCN 기반 평점 예측 모듈을 포함하는 메타 모델의 파라미터를 최적화한다. PAML은 MAMO처럼 사용자 프로필 정보에만 집중하는 것이 아닌 여러 유형의 사용자 관계를 기반으로 다양한 작업을 구분한다.

Optimization-based Adaptive Hyperparameters

메타 학습을 사용하여 항목이나 제품 추천과 같이 처음부터 시작해야 하는 다양한 유형의 작업에 대해 하이퍼파라미터를 조정하고 최적화하는 방법을 학습.

이러한 방법 중 하나인 MetaCS는 다른 접근 방식과 유사하게 이중 수준 최적화를 사용한다. 각 방법의 세부 사항은 설계된 메타 모델의 각 주요 역할과 함께 아래의 표에 요약되어 있다.

2

로컬 적응 중 중에 추천 모델의 학습 속도를 조정하는 방법으로는 다음과 같다. 제공된 방정식은 수렴을 개선하기 위해 고정 및 가변 요인에 따라 학습률이 업데이트 된다. 이 접근 방식에는 더 나은 성능을 위한 사전 지식을 제공하기 위해 모델 매개변수와 학습률과 같은 하이퍼파라미터를 모두 최적화하는 메타러닝이 포함된다.

사용 가능한 데이터가 많지 않은 상황에서 추천 모델을 개선하는 방법

메타 학습을 사용하면 모델이 최적의 매개 변수를 스스로 학습할 수 있을 뿐만 아니라 학습률과 같은 중요한 정보도 학습하여 더 나은 추천을 할 수 있다. 하지만 이 방법은 전체적으로(모든 작업에 걸쳐) 업데이트 비율을 최적화하지만, 각 작업의 로컬 적응 중에는(특정 권장 사항에 대해 작업할 때) 변경되지 않는다는 점에 유의해야 한다.

  • MetaCF

MetaCF는 협업 필터링을 기본 모델로 사용하는 추천 모델이다. 이 모델은 MAML 프레임워크를 활용하여 FISM의 항목 임베딩 및 NGCF의 임베딩 변환 매개변수와 같은 학습 가능한 매개변수에 대한 메타학습 초기화를 수행한다. 또한 MetaCF는 MetaCS와 유사한 업데이트 전략을 사용하여 적절한 학습 속도를 자동으로 학습한다.

—# FISM

팩토리얼 아이템 유사도 모델의 약자로 추천 시스템에서 희소 데이터와 콜드 스타트 시나리오를 처리하는 데 효과적

Metric-based Embedding Space Learning(거리 기반 임베딩 공간 학습)

메트릭 기반 메타 학습을 사용하여 새 아이템의 임베딩과 사용자 간의 유사성을 측정하기 위한 공유 공간을 학습한다. 이는 사용 가능한 상호 작용 기록이 거의 없거나 전혀 없는 경우 콜드 스타트 추천에 도움이 된다.

‘메트릭 기반 메타 학습’은 아직 시스템과 많은 상호작용을 하지 않은 사용자에게 항목을 추천하는데 도움이 된다. 메트릭 기반 방법을 사용하여 서로 다른 아이템이 얼마나 유사한지 측정하기 위한 공유 메트릭 공간을 생성하여 특정 아이템에 대한 데이터가 많지 않은 경우에도 관련 항목을 추천할 수 있는 Sankar등의 연구를 참조하고 있다.

3

ProtoCF

ProtoCF는 추천 시스템에서 새로운 아이템과 사용자 간의 유사성을 측정하는 데 사용되는 방법이다. 프로토타입 네트워크에서 영감을 얻은 접근 방식을 사용하여 사용자와의 제한된 상호 작용을 기반으로 덜 인기 있는 아이템의 프로토타입을 생성하는 방법을 학습한다. 이러한 프로토타입은 공유 메트릭공간에서 새로운 Coldstart 아이템과 기본 사용자 임베딩의 유사성을 비교하는 데 사용된다. 간단하게 말해, ProtoCF는 알려진 정보가 거의 없는 상태에서 예시(프로토타입)을 만들고 이를 기존 사용자 선호도와 비교함으로써 아직 관련 데이터가 많지 않은 경우에도 유사한 제품이나 서비스를 추천하는데 도움을 준다.

ProtoCF

1

ProtoCF는 추천 시스템에서 새로운 아이템과 사용자 간의 유사성을 측정하는 데 사용되는 방법이다. 프로토타입 네트워크에서 영감을 얻은 접근 방식을 사용하여 사용자와의 제한된 상호 작용을 기반으로 덜 인기 있는 아이템의 프로토타입을 생성하는 방법을 학습한다. 이러한 프로토타입은 공유 메트릭공간에서 새로운 Coldstart 아이템과 기본 사용자 임베딩의 유사성을 비교하는 데 사용된다. 간단하게 말해, ProtoCF는 알려진 정보가 거의 없는 상태에서 예시(프로토타입)을 만들고 이를 기존 사용자 선호도와 비교함으로써 아직 관련 데이터가 많지 않은 경우에도 유사한 제품이나 서비스를 추천하는데 도움을 준다.

ProtoCF 예시

가정 : 책을 판매하는 새로운 온라인 스토어를 위한 추천 시스템 구축

인기 도서와 그 등급에 대한 데이터는 어느 정도 존재하지만, 새로 출시되거나 덜 인기 있는 도서에 대한 정보는 많지 않다. (Cold start) 이 때 ProtoCF는 덜 인기 있는 타이틀의 프로타입(예시)를 생성하여 이 시나리오에 도움을 줄 수 있다. 지금까지 단 3명의 사용자만 평가한 새 책이 있다고 가정해보면 ProtoCF는 이러한 제한된 상호 작용을 사용하여(3명의 평가) 이 책의 프로토타입을 만들고 기존 사용자 선호도와 비교하여 해당 책과 유사한 주제에 관심이 있을 수 있는 다른 사용자에게 추천할 수 있다. (데이터가 아예 없는 경우에는 정확한 추천을 제공하지 못할 가능성이 높다.)

추천 시스템의 콜드 스타트 문제를 해결하는 데 도움이 되는 사전 훈련이라는 방법이 있다. 이 방법은 새로운 사용자와 아이템에 대한 임베딩을 학습하기 위한 GNN을 훈련하기 위해 몇 번의 샷 재구성 작업을 사용한다. 목표는 단순히 사용자와 아이템 간의 유사성을 측정하는 것뿐만 아니라, 새로운 엔티티의 재구성된 임베딩을 풍부한 상호작용을 통해 학습한 기준 데이터 임베딩과 비교하여 효과적인 임베딩 공간을 학습하는 것이다.

—# 사전훈련

콜드 스타트 문제를 해결하기 위해 사용되는 방법이다. 사전 학습은 소량의 데이터로 GNN을 훈련하기 위해 소수의 샷 재구성 작업을 사용하여 몇 가지 예제와의 상호 작용을 기반으로 새로운 엔티티에 대한 임베딩을 학습할 수 있도록 한다. 간단히 말해서 이는 “재구성 작업”이라는 프로세스를 사용하여 GNN을 훈련하는 것이더. 이러한 작업은 충분한 상호작용이 있는 사용자/아이템을 선택하고 각 대상 사용자/아이템에 대해 몇 개의 이웃을 샘플링한 다음 콜드 스타트 상황을 시뮬레이션한다.

예시

아직 노래를 많이 들어본 적이 없는 신규 사용자(콜드 스타트 사용자)가 있다고 가정

콜드 스타트 대상 사용자를 선정하고, 그 주변 사용자(비슷한 음악 청취 이력)몇 명을 샘플링한다. 그 다음, 이 샘플을 입력 데이어로 사용하여 타켓 콜드 스타트 사용자가 선호하는 장르 또는 아티스트에 대한 각 임베딩을 재구성한다. 이렇게 재구성된 임베딩을 다양한 노래를 많이 들은 적 있는 사용자의 더 풍분한 상호작용(상호작용이 더 많은 데이터)을 통해 학습한 임베딩과 비교한다.

Few - Shot Item recommendation

1

K- shot 아이템 추천

  • 각각의 아이템에 대한 K개의 상호작용이 주어지면 few-shot 개인화된 추천 생성

    (이미지 task에서 5개의 사진이 주어진 것처럼 5개의 상호작용이 주어졌다고 가정)

    추천 시스템에서는 way는 없다.

K - shot 아이템 추천을 위한 메타러닝 학습

ProtoType(예시) 생성

  • 각각의 유저에게 가장 가까운(유사한)아이템 프로토타입(예시)를 기준으로 아이템을 추천한다

첫 번째 단계는 학습 데이터를 이용하여 추론 모형을 학습하는 것이다. 이 때, 모형의 구조와 모수(parameter)를 결정하게 된다. 이 과정에서는 주어진 학습 데이터를 이용하여 모형이 가장 적합한 구조와 모수를 찾아내는 최적화 문제를 푸는 것이다다.

두 번째 단계는 학습된 추론 모형을 이용하여 새로운 데이터에 대한 예측을 수행하는 것이다. 이 때, 모형이 학습한 지식을 이용하여 새로운 입력 데이터에 대한 출력을 예측하게 된다. 이 과정에서는 일반적으로 모형의 성능을 평가하기 위해, 일부 데이터를 테스트 데이터로 따로 떼어내어 이를 이용하여 모형의 예측 성능을 평가하게 된다.

episodic few-shot item

2

episodic Few-shot Learning은 일반적으로 episodic memory라는 개념을 사용한다. 이는 일종의 메모리 버퍼로서, 일련의 서포터 데이터 샘플로 이루어진 작은 데이터 집합을 저장한다. 새로운 쿼리 데이터가 제공될 때마다, 모델은 episodic memory에서 일부 샘플을 추출하여 학습에 사용한다. 이를 통해 적은 수의 샘플로도 높은 일반화 능력을 달성할 수 있다.

  1. 유저와 아이템 각각의 벡터를 생성한다.. ProtoCF는 유저와 아이템 각각의 벡터를 생성하여 학습한다. 벡터의 차원은 사용자가 정의하며, 일반적으로는 사용자와 아이템의 특징을 잘 나타내는 크기로 설정된다.
  2. 프로토타입 생성 및 학습 ProtoCF는 유저와 아이템 벡터 각각에 대해 프로토타입(prototype)을 생성한다다. 이때 프로토타입은 해당 벡터와 가장 가까운 다른 벡터들의 평균이다. 예를 들어, 유저 A와 가장 가까운 10명의 유저들의 벡터를 평균하여 유저 A의 프로토타입을 만들 수 있다. 이렇게 생성된 프로토타입은 해당 유저 혹은 아이템 벡터의 대표값이 된다.
  3. 예측 수행 ProtoCF는 아직 평점이 매겨지지 않은 아이템에 대해 예측을 수행한다. 이때, 해당 아이템과 가장 가까운 프로토타입을 가진 유저들의 벡터를 사용하여, 해당 아이템의 평점을 예측한다.