KR20230105225A - 대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램 - Google Patents

대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20230105225A
KR20230105225A KR1020220000505A KR20220000505A KR20230105225A KR 20230105225 A KR20230105225 A KR 20230105225A KR 1020220000505 A KR1020220000505 A KR 1020220000505A KR 20220000505 A KR20220000505 A KR 20220000505A KR 20230105225 A KR20230105225 A KR 20230105225A
Authority
KR
South Korea
Prior art keywords
user
embedding
learning
service
learning method
Prior art date
Application number
KR1020220000505A
Other languages
English (en)
Inventor
김경민
곽하녹
신규용
Original Assignee
네이버 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버 주식회사 filed Critical 네이버 주식회사
Priority to KR1020220000505A priority Critical patent/KR20230105225A/ko
Publication of KR20230105225A publication Critical patent/KR20230105225A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램이 개시된다. 사용자 임베딩 학습 방법은, 복수의 서비스를 대상으로 서비스 별로 해당 서비스에서의 사용자 행동 로그를 자연어 텍스트로 표현된 데이터로 수집하는 단계; 사용자 각각에 대하여 상기 사용자 행동 로그를 이용하여 서비스 별 사용자 임베딩을 생성하는 단계; 및 대조 학습(contrastive learning)을 통해 동일 사용자에 대해 상기 서비스 별 사용자 임베딩의 유사도를 최대화하는 방향으로 학습하는 단계를 포함한다.

Description

대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램{METHOD, COMPUTER DEVICE, AND COMPUTER PROGRAM FOR USER EMBEDDING USING CONTRASTIVE LEARNING AND CROSS-DOMAIN DATA}
아래의 설명은 범용 사용자 표현(general-purpose user representation)을 위한 사용자 임베딩(user embedding) 기술에 관한 것이다.
방대한 양과 종류의 컨텐츠들이 서비스되고 있는 현 상황에서는 사용자에게 다양한 기준으로 컨텐츠를 추천해주는 서비스들이 등장하고 있으며, 가장 대표적으로는 개인화 추천 서비스가 있다.
개인화 추천 서비스는 사용자의 활동(예컨대, 컨텐츠 이용 패턴, 컨텐츠 구매 패턴 등)을 기준으로 사용자에게 적합한 컨텐츠, 즉 개인화된 컨텐츠를 추천해 주는 서비스이다.
이러한 개인화 추천 서비스의 기존 방식은, 사용자의 과거 활동을 기초로 활동 패턴을 분석하고 사용자와 유사한 활동 패턴을 가진 다른 사용자를 검색하여 검색된 다른 사용자가 이용하거나 구매한 컨텐츠를 사용자에게 추천해 주는 방식이다.
한국 등록특허공보 제10-1647364호(등록일 2016년 08월 04일)에는 복수의 사용자 그룹을 대상으로 하여 복수개의 컨텐츠 중 적합한 것을 복수 사용자들의 각 컨텐츠에 대한 상호작용에 기반한 사용자 그룹별 스코어와 해당 사용 자가 속하는 사용자 그룹에 기초한 우선 순위를 기초로 하여 제공함으로써 해당 사용자에게 보다 적합도가 높은 컨텐츠를 추천할 수 있는 기술이 개시되어 있다.
대조 학습과 교차 도메인 데이터를 사용하여 개인화 추천을 위한 사용자 임베딩을 제공할 수 있다.
교차 도메인을 다루기 위한 텍스트 모달리티(text modality) 기반 사용자 임베딩을 제공할 수 있다.
다양한 도메인과 시스템으로 전이 학습(transfer learning)이 가능한 사용자 임베딩을 제공할 수 있다.
컴퓨터 장치에서 실행되는 사용자 임베딩 학습 방법에 있어서, 상기 컴퓨터 장치는 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 사용자 임베딩 학습 방법은, 상기 적어도 하나의 프로세서에 의해, 복수의 서비스를 대상으로 서비스 별로 해당 서비스에서의 사용자 행동 로그를 자연어 텍스트로 표현된 데이터로 수집하는 단계; 상기 적어도 하나의 프로세서에 의해, 사용자 각각에 대하여 상기 사용자 행동 로그를 이용하여 서비스 별 사용자 임베딩을 생성하는 단계; 및 상기 적어도 하나의 프로세서에 의해, 대조 학습(contrastive learning)을 통해 동일 사용자에 대해 상기 서비스 별 사용자 임베딩의 유사도를 최대화하는 방향으로 학습하는 단계를 포함하는 사용자 임베딩 학습 방법을 제공한다.
일 측면에 따르면, 상기 생성하는 단계는, 트랜스포머 모델(transformer model)을 이용하여 각 서비스에서의 사용자 행동 로그로부터 사용자 임베딩 벡터를 생성할 수 있다.
다른 측면에 따르면, 상기 생성하는 단계는, 전처리 과정으로 각 서비스에서의 사용자 행동 로그에 포함된 아이템을 토큰화하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 아이템에 대응되는 토큰은 서비스의 유형과 해당 아이템의 텍스트 설명을 포함할 수 있다.
또 다른 측면에 따르면, 상기 생성하는 단계는, 제1 트랜스포머를 통해 일 서비스에서의 사용자 행동 로그에 포함된 각 아이템의 임베딩 벡터를 추출하는 단계; 및 제2 트랜스포머를 통해 상기 일 서비스에서의 사용자 행동 로그에 포함된 모든 아이템의 임베딩 벡터를 기초로 상기 일 서비스에 대한 사용자 임베딩 벡터를 생성하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 학습하는 단계는, 상기 복수의 서비스에 대해 동일 사용자의 임베딩 벡터끼리는 값이 같고 다른 사용자의 임베딩 벡터와는 값이 다르도록 상기 대조 학습을 수행할 수 있다.
또 다른 측면에 따르면, 상기 대조 학습에 따른 사용자 임베딩은 도메인이나 시스템이 다른 다운스트림 태스크(downstream task)로의 전이 학습(transfer learning)에 이용될 수 있다.
또 다른 측면에 따르면, 상기 학습하는 단계는, 비선형 투영 모델(non-linear projection model)을 통해 상기 대조 학습에 따른 사용자 임베딩을 최적화하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 수집하는 단계는, 반복되는 동일 행동에 대해 상기 사용자 행동 로그에 하나의 아이템으로 기록하는 단계를 포함할 수 있다.
또 다른 측면에 따르면, 상기 수집하는 단계는, 이커머스(e-commerce) 플랫폼의 경우 사용자가 구매한 상품의 설명과 이름 중 적어도 하나를 상기 사용자 행동 로그로 수집하는 단계; 컨텐츠 플랫폼의 경우 사용자가 소비한 컨텐츠의 제목을 상기 사용자 행동 로그로 수집하는 단계; 및 검색 엔진의 경우 사용자의 검색 쿼리를 상기 사용자 행동 로그로 수집하는 단계를 포함할 수 있다.
상기 사용자 임베딩 학습 방법을 상기 컴퓨터 시스템에 실행시키기 위해 비-일시적인 컴퓨터 판독가능한 기록 매체에 저장되는 컴퓨터 프로그램을 제공한다.
컴퓨터 장치에 있어서, 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 복수의 서비스를 대상으로 서비스 별로 해당 서비스에서의 사용자 행동 로그를 자연어 텍스트로 표현된 데이터로 수집하는 과정; 사용자 각각에 대하여 상기 사용자 행동 로그를 이용하여 서비스 별 사용자 임베딩을 생성하는 과정; 및 대조 학습을 통해 동일 사용자에 대해 상기 서비스 별 사용자 임베딩의 유사도를 최대화하는 방향으로 학습하는 과정을 처리하는 컴퓨터 장치를 제공한다.
본 발명의 실시예들에 따르면, 다양한 서비스에서의 사용자 행동 로그를 모아 유사도를 극대화하는 대조 셋업(setup)으로 학습함으로써 데이터 증강(data augmentation) 없이 대규모의 비즈니스 모델을 멀티 모달(multi modal)로 구축할 수 있다.
본 발명의 실시예들에 따르면, 다양한 서비스에서의 사용자 행동 로그를 텍스트화하여 학습에 사용함으로써 다양한 도메인과 시스템으로 전이 학습이 가능한 사용자 임베딩을 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 네트워크 환경의 예를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다.
도 3은 본 발명의 일실시예에 따른 컴퓨터 장치가 수행할 수 있는 사용자 임베딩 학습 방법의 예를 도시한 흐름도이다.
도 4는 본 발명의 일실시예에 있어서 대조 학습을 이용한 사용자 임베딩 학습 과정을 설명하기 위한 예시 도면이다.
도 5는 본 발명의 일실시예에 있어서 임베딩 추출 모델 구조의 일례를 도시한 도면이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명의 실시예들은 범용 사용자 표현을 위해 사용자 임베딩을 학습하는 기술에 관한 것이다.
본 명세서에서 구체적으로 개시되는 것들을 포함하는 실시예들은 대조 학습과 교차 도메인 데이터를 사용하여 개인화 추천을 위한 사용자 임베딩을 학습할 수 있다.
본 발명의 실시예들에 따른 사용자 임베딩 학습 시스템은 적어도 하나의 컴퓨터 장치에 의해 구현될 수 있으며, 본 발명의 실시예들에 따른 사용자 임베딩 학습 방법은 사용자 임베딩 학습 시스템에 포함되는 적어도 하나의 컴퓨터 장치를 통해 수행될 수 있다. 이때, 컴퓨터 장치에는 본 발명의 일실시예에 따른 컴퓨터 프로그램이 설치 및 구동될 수 있고, 컴퓨터 장치는 구동된 컴퓨터 프로그램의 제어에 따라 본 발명의 실시예들에 따른 사용자 임베딩 학습 방법을 수행할 수 있다. 상술한 컴퓨터 프로그램은 컴퓨터 장치와 결합되어 사용자 임베딩 학습 방법을 컴퓨터에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장될 수 있다.
도 1은 본 발명의 일실시예에 따른 네트워크 환경의 예를 도시한 도면이다. 도 1의 네트워크 환경은 복수의 전자 기기들(110, 120, 130, 140), 복수의 서버들(150, 160) 및 네트워크(170)를 포함하는 예를 나타내고 있다. 이러한 도 1은 발명의 설명을 위한 일례로 전자 기기의 수나 서버의 수가 도 1과 같이 한정되는 것은 아니다. 또한, 도 1의 네트워크 환경은 본 실시예들에 적용 가능한 환경들 중 하나의 예를 설명하는 것일 뿐, 본 실시예들에 적용 가능한 환경이 도 1의 네트워크 환경으로 한정되는 것은 아니다.
복수의 전자 기기들(110, 120, 130, 140)은 컴퓨터 장치로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 복수의 전자 기기들(110, 120, 130, 140)의 예를 들면, 스마트폰(smart phone), 휴대폰, 내비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC 등이 있다. 일례로 도 1에서는 전자 기기(110)의 예로 스마트폰의 형상을 나타내고 있으나, 본 발명의 실시예들에서 전자 기기(110)는 실질적으로 무선 또는 유선 통신 방식을 이용하여 네트워크(170)를 통해 다른 전자 기기들(120, 130, 140) 및/또는 서버(150, 160)와 통신할 수 있는 다양한 물리적인 컴퓨터 장치들 중 하나를 의미할 수 있다.
통신 방식은 제한되지 않으며, 네트워크(170)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(170)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(170)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.
서버(150, 160) 각각은 복수의 전자 기기들(110, 120, 130, 140)과 네트워크(170)를 통해 통신하여 명령, 코드, 파일, 콘텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다. 예를 들어, 서버(150)는 네트워크(170)를 통해 접속한 복수의 전자 기기들(110, 120, 130, 140)로 서비스(일례로, 개인화 추천 서비스)를 제공하는 시스템일 수 있다.
도 2는 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다. 앞서 설명한 복수의 전자 기기들(110, 120, 130, 140) 각각이나 서버들(150, 160) 각각은 도 2를 통해 도시된 컴퓨터 장치(200)에 의해 구현될 수 있다. 예를 들어, 본 발명의 실시예들에 따른 사용자 임베딩 학습 시스템은 도 1을 통해 도시된 컴퓨터 장치(100)에 의해 구현될 수 있다.
이러한 컴퓨터 장치(200)는 도 2에 도시된 바와 같이, 메모리(210), 프로세서(220), 통신 인터페이스(230) 그리고 입출력 인터페이스(240)를 포함할 수 있다. 메모리(210)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 디스크 드라이브와 같은 비소멸성 대용량 기록장치는 메모리(210)와는 구분되는 별도의 영구 저장 장치로서 컴퓨터 장치(200)에 포함될 수도 있다. 또한, 메모리(210)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(210)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 메모리(210)로 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 인터페이스(230)를 통해 메모리(210)에 로딩될 수도 있다. 예를 들어, 소프트웨어 구성요소들은 네트워크(170)를 통해 수신되는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 컴퓨터 장치(200)의 메모리(210)에 로딩될 수 있다.
프로세서(220)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(210) 또는 통신 인터페이스(230)에 의해 프로세서(220)로 제공될 수 있다. 예를 들어 프로세서(220)는 메모리(210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신 인터페이스(230)는 네트워크(170)를 통해 컴퓨터 장치(200)가 다른 장치(일례로, 앞서 설명한 저장 장치들)와 서로 통신하기 위한 기능을 제공할 수 있다. 일례로, 컴퓨터 장치(200)의 프로세서(220)가 메모리(210)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이나 명령, 데이터, 파일 등이 통신 인터페이스(230)의 제어에 따라 네트워크(170)를 통해 다른 장치들로 전달될 수 있다. 역으로, 다른 장치로부터의 신호나 명령, 데이터, 파일 등이 네트워크(170)를 거쳐 컴퓨터 장치(200)의 통신 인터페이스(230)를 통해 컴퓨터 장치(200)로 수신될 수 있다. 통신 인터페이스(230)를 통해 수신된 신호나 명령, 데이터 등은 프로세서(220)나 메모리(210)로 전달될 수 있고, 파일 등은 컴퓨터 장치(200)가 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.
입출력 인터페이스(240)는 입출력 장치(250)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 마이크, 키보드 또는 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(240)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(250)는 컴퓨터 장치(200)와 하나의 장치로 구성될 수도 있다.
또한, 다른 실시예들에서 컴퓨터 장치(200)는 도 2의 구성요소들보다 더 적은 혹은 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 장치(200)는 상술한 입출력 장치(250) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
이하에서는 대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법 및 장치의 구체적인 실시예를 설명하기로 한다.
본 발명과 관련된 배경 기술은 다음과 같다.
트랜스포머(transformer)는 순서 정보를 지닌 입력 데이터셋이 서로 간의 어텐션(attention)을 학습할 수 있도록 설계된 신경망(neural network)이다. 트랜스포머는 입력 데이터셋을 먼저 임베딩 벡터로 처리한 후, 임베딩 벡터에 순서 정보를 인식하기 위한 위치 정보 인코딩(positional encoding)을 더해준다. 이 과정을 거친 후, 임베딩 벡터는 내부의 셀프 어텐션(self-attention) 단에서 입력 데이터셋의 순서 정보를 학습하게 된다. 최종적으로 포지션-와이즈 피드 포워드 신경망(position-wise FFNN)을 통과해 결과값이 출력되며, 출력된 벡터 값은 풀고자 하는 문제에 따라 다양한 형태로 사용될 수 있다.
대조 학습은 데이터 x에 대해 유사도가 높은 분포(distribution) 데이터 셋(positive pair)에서 x+ ~ p(+|x)를 샘플링하고 데이터 x와 유사도가 낮은 분포 데이터 셋(negative pair)에서 x- ~ p(-|x)를 샘플링한 뒤, 잠재 임베딩 공간(latent embedding space)에서 x와 x+의 유사도는 높게, x와 x-의 유사도는 낮게 학습하는 표현 학습(representation learning) 방법이다. 이는 잘 추출된 인스턴스(instance)의 표현 값은 비슷한 인스턴스 간에 높은 유사도를, 서로 다른 인스턴스 간에 낮은 유사도를 보일 것이라는 가정 하에서 동작하게 된다.
전이 학습이란, 소스 도메인 DS와 학습 문제 TS가 있을 때 새로운 타겟 도메인 DN과 학습 문제 TN을 학습하는데 있어 <DS, TS>에서 학습한 지식을 활용하는 것으로, 기존에 학습한 지식을 다른 문제에 전이하는 학습 방법을 의미한다. 이는 사람이 새로 맞닥뜨린 문제를 해결할 때 과거의 경험이나 이해를 발판삼아 문제를 해결하는 방식과 유사하다고 볼 수 있다.
파운데이션 모델(foundation model)은 광범위한 수준의 전이 학습이 가능한, 대규모의 데이터와 모델 파라미터로 학습된 모델을 뜻한다. 예시로는 BERT(Bidirectional Encoder Representations form Transformer), GPT-3(Generative Pre-trained Transformer 3), 클립(CLIP) 등이 있다. 기술적으로 파운데이션 모델은 전이 학습과 학습의 규모로 이루어지며, 전이 학습이 파운데이션 모델의 존재를 가능케 한다면 학습의 규모는 파운데이션 모델의 성능을 강화시키는 것이다. 파운데이션 모델의 특징은 크게 emergence와 homogenization라 할 수 있으며, 이때 emergence는 모델을 설계할 때 의도했던 능력과 더불어 추가적으로 발현된 능력을 의미하고, homogenization는 단일 모델의 통합적 쓰임새를 의미할 수 있다.
자연어 처리나 컴퓨터 비전 영역에서는 파운데이션 모델을 통한 전이 학습을 이용하여 다양한 문제들을 해결할 수 있다. 그러나, 추천 영역에서는 파운데이션 모델을 통한 전이 학습 기술이 전무하다. 이는 추천 모델의 학습 데이터가 추천 모델이 적용될 서비스의 데이터로 제한되기 때문이다. 만약, 입출력 데이터의 범위가 이를 벗어나면 추천 모델은 올바르게 작동하지 않는다.
원인으로는 크게 두 가지가 있다. 먼저, 교차 도메인 이슈다. 교차 도메인 이슈란, 한 가지 도메인에서 학습된 추천 모델이 이와 다른 도메인으로 전이 학습을 할 수 없음을 의미한다. 예를 들어, 쇼핑 도메인에서 학습된 추천 모델이 뉴스 추천에 직접 이용되는 것은 불가능하다. 두번째 이슈는, 서로 다른 데이터 포맷팅(data formatting) 정책이다. 이는 여러 비지니스 주체들이 각자의 정책에 따라 데이터 포맷을 결정하는 것을 의미한다. 해당 비즈니스 주체의 내부 정책에 따라 수집된 데이터를 사용한다. 예를 들어, 각 쇼핑몰마다 상품을 분류하는 방법이 다르고, 분류된 상품의 식별 번호가 다르다. 다시 말해, 같은 도메인의 서비스라도 단일 모델을 이용하여 전이 학습을 하는 것은 매우 큰 어려움이 따른다.
요약하자면, 추천 시스템에서 파운데이션 모델을 통해 다른 도메인이나 시스템으로의 전이 학습을 위해서는 다음과 같은 조건이 충족되어야 한다. 첫째, 서로 다른 데이터 포맷팅 정책을 아우르는 데이터셋을 구축하여 학습해야 하며, 둘째, 서로 다른 도메인의 데이터를 효과적으로 다룰 수 있는 방법이 필요하다.
본 발명에 따른 사용자 임베딩 학습 시스템은 서로 다른 복수의 서비스를 대상으로 사용자 행동 로그를 모아 각종 다운스트림 태스크(downstream task)로 전이할 수 있다. 이를 위해, 사용자 임베딩 학습 시스템은 사용자의 텍스트화된 서로 다른 서비스 로그를 인코딩하여 벡터로 추출한 뒤 유사도를 최대화하는 방향으로 학습하는 것이다.
도 3은 본 발명의 일실시예에 따른 컴퓨터 장치가 수행할 수 있는 사용자 임베딩 학습 방법의 예를 도시한 흐름도이다.
본 실시예에 따른 사용자 임베딩 학습 방법은 앞서 설명한 컴퓨터 장치(100)에 의해 수행될 수 있다. 이 경우, 컴퓨터 장치(100)의 프로세서(120)는 메모리(110)가 포함하는 운영체제의 코드나 적어도 하나의 프로그램의 코드에 따른 제어 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 프로세서(120)는 컴퓨터 장치(100)에 저장된 코드가 제공하는 제어 명령에 따라 컴퓨터 장치(100)가 도 3의 사용자 임베딩 학습 방법이 포함하는 단계들(S310 내지 S330)을 수행하도록 컴퓨터 장치(100)를 제어할 수 있다.
도 3을 참조하면, 단계(S310)에서 프로세서(120)는 서로 다른 복수의 서비스를 대상으로 사용자 각각에 대하여 서비스 별 행동 로그를 자연어 레벨의 텍스트 데이터로 수집할 수 있다. 예를 들어, 이커머스(e-commerce) 플랫폼에서는 사용자가 구매한 상품의 설명이나 이름을 해당 서비스에서의 사용자 행동 로그로 수집할 수 있다. 다른 예로, 뉴스나 동영상과 같은 컨텐츠 플랫폼에서는 사용자가 소비한 컨텐츠의 제목을 해당 서비스에서의 사용자 행동 로그로 수집할 수 있다. 각 비지니스 주체에 의해 구축된 레이블링된 데이터셋을 사용하는 것이 아니라, 자연어 레벨의 문자화된 양식으로 표현된 데이터셋을 이용함으로써 서로 다른 도메인이나 시스템에서 작동하는 추천 모델을 구축할 수 있다.
단계(S320)에서 프로세서(120)는 사용자 각각에 대하여 사용자의 서비스 별 행동 로그를 이용하여 트랜스포머 모델을 통해 서비스 별 사용자 임베딩을 추출할 수 있다. 트랜스포머는 사용자 행동 로그로부터 사용자 임베딩 벡터를 생성하는 역할을 할 수 있다. 프로세서(120)는 특정 서비스에서의 사용자 행동 로그에 포함된 각 아이템의 임베딩 벡터를 추출하여 이들 임베딩 벡터를 평균함으로써 해당 서비스의 사용자 임베딩 벡터를 생성할 수 있다. 이러한 과정을 서비스 단위로 반복함으로써 서비스 별 사용자 임베딩을 생성할 수 있다.
단계(S330)에서 프로세서(120)는 대조 학습을 통해 동일 사용자에 대해 서비스 별 사용자 임베딩의 유사도를 최대화하는 방향으로 학습할 수 있다. 프로세서(120)는 서로 다른 복수의 서비스에 대해 동일 사용자의 임베딩 벡터끼리는 값이 같게, 다른 사용자의 임베딩 벡터와는 값이 다르게 만드는 대조 학습을 진행할 수 있다.
따라서, 프로세서(120)는 대조 학습과 교차 도메인 데이터를 사용하여 사용자 임베딩을 학습하는 것으로, 각 서비스에 대해 사용자 표현을 구성한 동일 사용자 표현 쌍을 포지티브 샘플(positive sample)로 처리하고 다른 사용자 표현을 네거티브 샘플(negative sample)로 처리하여 대조 학습에 사용할 수 있다.
도 4는 본 발명의 일실시예에 있어서 대조 학습을 이용한 사용자 임베딩 학습 방법을 도시한 것이다.
프로세서(120)는 자연어 텍스트로 표현된 사용자 행동 로그를 임베딩 추출 모델(400)의 입력으로 사용할 수 있다.
사용자 행동 로그는 사용자의 숨겨진 의도를 암시한다. 예를 들어, 휴대폰을 새로 구매한 사용자의 경우 다음에는 휴대폰 케이스나 이어폰과 같은 휴대폰 액세서리를 구매할 가능성이 높다. 또한, 웹사이트에서 자동차 모델이나 자동차 액세서리를 검색한 사용자의 경우 자동차에 관심이 있음을 가정할 수 있다.
따라서, 사용자 행동 로그를 관찰하면 사용자를 더 깊이 이해할 수 있으며, 이러한 관찰을 바탕으로 사용자 임베딩 학습을 위한 효과적인 데이터셋을 구성할 수 있다.
도 4를 참조하면, 프로세서(120)는 임베딩 추출 모델(400)을 이용하여 사용자 Ⅰ에 대해 서비스 A에서의 행동 로그와 서비스 B에서의 행동 로그로부터 서비스 별 임베딩 벡터를 추출할 수 있다.
마찬가지로, 프로세서(120)는 임베딩 추출 모델(400)을 이용하여 사용자 Ⅱ에 대해 서비스 A에서의 행동 로그와 서비스 B에서의 행동 로그로부터 서비스 별 임베딩 벡터를 추출할 수 있다.
프로세서(120)는 서비스 A와 서비스 B에 대해 사용자 Ⅰ의 임베딩 벡터끼리는 값이 같게, 사용자 Ⅱ의 임베딩 벡터와는 값이 다르게 만드는 대조 학습을 통해 동일 사용자에 대해 서비스 별 사용자 임베딩의 유사도를 최대화하는 방향으로 학습할 수 있다.
본 실시예들은 서비스 별 자연어 텍스트로 표현된 사용자 행동 로그를 기초로 멀티 모달 사용자 임베딩 공간을 학습할 수 있다. 자연어 레벨의 텍스트 데이터를 입력으로 활용함으로써 일반화 전이를 위한 보다 유연한 예측 공간이 가능하다.
유연한 임베딩 공간은 하나의 인코더(즉, 임베딩 추출 모델)로 동일 사용자 간의 합의를 극대화함으로써 검색 엔진이나 이커머스 플랫폼과 같은 여러 서비스를 통해 사용자 행동 로그를 공동으로 학습할 수 있다.
도 5는 본 발명의 일실시예에 있어서 임베딩 추출 모델의 구조를 도시한 예시 도면이다.
도 5를 참조하면, 임베딩 추출 모델(400)은 자연어를 벡터로 변환하는 임베딩 과정을 위한 인코더(encoder) 구조로 이루어지는 것으로, 일례로 제1 트랜스포머(510)와 제2 트랜스포머(520)로 구성될 수 있다.
제1 트랜스포머(510)는 사용자 행동 로그 u에 포함된 각 아이템의 임베딩 벡터(
Figure pat00001
)를 추출하는 역할을 한다.
제2 트랜스포머(520)는 제1 트랜스포머(510)의 출력에서 특정 서비스에 대한 사용자 임베딩(
Figure pat00002
)을 생성하는 역할을 한다.
여기서, Din과 Dout는 토큰 임베딩 차원과 출력 차원을 의미하고, L은 토큰화된 아이템의 최대 토큰 길이를 의미하고, S는 아이템 수를 의미한다.
사용자의 특정 서비스에서의 S개의 행동 로그를 u=[x1, x2, ??, xS]와 같이 나타낼 때, x는 서비스에서 사용자의 행동을 문자화된 양식으로 표현할 수 있는 아이템이라고 할 수 있다.
예를 들어, x는 사용자가 구매한 상품의 설명이나 이름, 사용자가 본 뉴스 기사의 제목, 사용자가 검색에 이용한 키워드 등에 해당될 수 있다. 각 아이템
Figure pat00003
은 토큰 인덱스의 벡터로서 첫 번째 토큰은 서비스의 유형을 나타내고, 다음 토큰은 아이템 설명(예를 들어, 상품 설명, 뉴스 제목, 검색 쿼리 등)의 토큰화에 의해 만들어질 수 있다.
임베딩 추출 모델(400)은 각 토큰을 임베딩 계층
Figure pat00004
을 가진 벡터로 임베딩할 수 있으며, 각 아이템 xi는 각 행이 토큰 임베딩인 행렬
Figure pat00005
로 변경될 수 있다.
전처리 과정으로 아이템 xi를 토큰화 함수(tokenize function)를 통해 토큰화한 뒤 이를 제1 트랜스포머(510)에 통과시킨다. 바이트 레벨(byte-level) BPE(byte-pair encoding)를 사용하여 사용자 행동 로그 u에 포함된 각 아이템 xi의 텍스트 설명을 토큰화할 수 있다.
이때, 사용자가 동일한 행동을 반복한 경우, 예를 들어 동일한 검색 쿼리를 수행하거나 동일한 제품을 여러 번 구입한 경우 사용자 행동 로그에 하나의 아이템으로 기록될 수 있다.
제1 트랜스포머(510)는 사용자 행동 로그 u에 포함된 아이템 xi의 임베딩 벡터를 추출하게 되고, 최종적으로 제1 트랜스포머(510)의 출력 벡터들의 평균 값이 아이템 xi를 나타내는 임베딩 벡터로 사용된다.
모든 아이템 xi에 대해 임베딩 벡터가 출력되면 이를 제2 트랜스포머(520)에 입력으로 넣는다.
제2 트랜스포머(520)의 마지막 출력 벡터들을 평균하면 최종적으로 하나의 벡터가 나오게 되고, 이를 특정 서비스에 대한 사용자 임베딩 벡터로 이용한다.
상기한 방식으로 서로 다른 서비스 각각에 대해 사용자 임베딩 벡터를 계산한 뒤, 목적 함수를 통해 동일한 유저의 서로 다른 서비스 임베딩 벡터끼리는 같게, 다른 유저의 서비스 임베딩 벡터와는 다르게 학습한다.
이때, 목적 함수는 일례로 크로스 엔트로피(cross entropy) 함수를 사용할 수 있다.
전파 과정(propagation process)은 다음 수식과 같이 공식화할 수 있다.
[수학식 1]
Figure pat00006
[수학식 2]
Figure pat00007
[수학식 3]
Figure pat00008
여기서,
Figure pat00009
은 입력 행렬에서 행 벡터의 평균 풀링(mean pooling)이고, z는 최종 사용자 임베딩이다.
사용자 u와 서비스 A의 최종 사용자 임베딩을
Figure pat00010
로 나타낸다.
각 포지티브 쌍
Figure pat00011
의 손실
Figure pat00012
는 수학식 4와 같이 정의된다.
[수학식 4]
Figure pat00013
여기서,
Figure pat00014
는 모델이 예측하기 어려운 하드 네거티브에서 학습하는 데에 도움이 되는 확률 조절 파라미터(temperature parameter)를 의미하고,
Figure pat00015
는 코사인 유사도 함수(cosine similarity function)를 의미한다.
비선형 투영 모델(non-linear projection model)
Figure pat00016
을 사용하여 사용자 임베딩의 표현 품질을 개선할 수 있다. 여기서,
Figure pat00017
는 비선형 활성화 함수(non-linear activation function)를 의미하고, W는 가중치 행렬을 의미한다. 이를 통해, 대칭 크로스 엔트로피(symmetric cross-entropy) 손실
Figure pat00018
를 최적화할 수 있다.
각 서비스 사용자 피처를 연결하여(concatenating) 다운스트림 태스크에 대한 최종 사용자 피처를 추출하거나 혹은 시스템 전이 학습 태스크의 경우 태스크 별 사용자 로그만을 사용하여 피처를 추출할 수 있다.
프로세서(220)는 대조 학습에 따른 최종 사용자 임베딩을 다양한 다운스트림 태스크에서 활용할 수 있다.
예를 들어, 프로세서(220)는 최종 사용자 임베딩을 제품 컬렉션 추천(product collection recommendation), 마케팅 메시지 추천(marketing message recommendation), 웹툰 추천(webtoon recommendation), 뉴스 추천(news view recommendation), 신규 고객 예약 예측(new customer booking prediction), 검색 쿼리 추천(search query recommendation), 사용자 타겟팅(user targeting), 온라인 여행사 추천(online travel agency recommendation) 등에 활용할 수 있다.
특정 시스템에서 학습된 사용자 임베딩 모델이 다른 시스템에 대해서도 의미 있는 사용자 표현을 제공할 수 있다.
범용 사용자 표현에 따른 사용자 임베딩을 통해 모델의 성능이 사용자 표현 태스크의 모델 용량에 의존하지 않으며, 배치(batch) 크기나 시퀀스 길이와 같은 다른 요인 측면에서도 효과적이다.
본 발명에 따른 임베딩 추출 모델은 도메인이나 시스템이 다른 경우에도 이기종 데이터셋에 대해 전이 학습을 수행함으로써 다운스트림 태스크에 대한 학습 성능을 향상시킬 수 있다.
또한, 자연어 텍스트로 이루어진 데이터셋을 활용함으로써 서로 다른 서비스 간에 데이터 형식의 불일치 문제를 극복할 수 있고, 여러 서비스에서 멀티 모달의 사용자 임베딩 공간을 학습하여 광범위한 다운스트림 작업에서 뛰어난 성능을 기대할 수 있다.
이처럼 본 발명의 실시예들에 따르면, 다양한 서비스에서의 사용자 행동 로그를 모아 유사도를 극대화하는 대조 셋업으로 학습함으로써 데이터 증강 없이 대규모의 비즈니스 모델을 멀티 모달로 구축할 수 있다.
또한, 본 발명의 실시예들에 따르면, 다양한 서비스에서의 사용자 행동 로그를 텍스트화하여 학습에 사용함으로써 다양한 도메인과 시스템으로 전이 학습이 용이한 사용자 임베딩을 제공할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (12)

  1. 컴퓨터 장치에서 실행되는 사용자 임베딩 학습 방법에 있어서,
    상기 컴퓨터 장치는 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고,
    상기 사용자 임베딩 학습 방법은,
    상기 적어도 하나의 프로세서에 의해, 복수의 서비스를 대상으로 서비스 별로 해당 서비스에서의 사용자 행동 로그를 자연어 텍스트로 표현된 데이터로 수집하는 단계;
    상기 적어도 하나의 프로세서에 의해, 사용자 각각에 대하여 상기 사용자 행동 로그를 이용하여 서비스 별 사용자 임베딩을 생성하는 단계; 및
    상기 적어도 하나의 프로세서에 의해, 대조 학습(contrastive learning)을 통해 동일 사용자에 대해 상기 서비스 별 사용자 임베딩의 유사도를 최대화하는 방향으로 학습하는 단계
    를 포함하는 사용자 임베딩 학습 방법.
  2. 제1항에 있어서,
    상기 생성하는 단계는,
    트랜스포머 모델(transformer model)을 이용하여 각 서비스에서의 사용자 행동 로그로부터 사용자 임베딩 벡터를 생성하는 것
    을 특징으로 하는 사용자 임베딩 학습 방법.
  3. 제1항에 있어서,
    상기 생성하는 단계는,
    전처리 과정으로 각 서비스에서의 사용자 행동 로그에 포함된 아이템을 토큰화하는 단계
    를 포함하는 사용자 임베딩 학습 방법.
  4. 제3항에 있어서,
    상기 아이템에 대응되는 토큰은 서비스의 유형과 해당 아이템의 텍스트 설명을 포함하는 것
    을 특징으로 하는 사용자 임베딩 학습 방법.
  5. 제1항에 있어서,
    상기 생성하는 단계는,
    제1 트랜스포머를 통해 일 서비스에서의 사용자 행동 로그에 포함된 각 아이템의 임베딩 벡터를 추출하는 단계; 및
    제2 트랜스포머를 통해 상기 일 서비스에서의 사용자 행동 로그에 포함된 모든 아이템의 임베딩 벡터를 기초로 상기 일 서비스에 대한 사용자 임베딩 벡터를 생성하는 단계
    를 포함하는 사용자 임베딩 학습 방법.
  6. 제5항에 있어서,
    상기 학습하는 단계는,
    상기 복수의 서비스에 대해 동일 사용자의 임베딩 벡터끼리는 값이 같고 다른 사용자의 임베딩 벡터와는 값이 다르도록 상기 대조 학습을 수행하는 것
    을 특징으로 하는 사용자 임베딩 학습 방법.
  7. 제1항에 있어서,
    상기 대조 학습에 따른 사용자 임베딩은 도메인이나 시스템이 다른 다운스트림 태스크(downstream task)로의 전이 학습(transfer learning)에 이용되는 것
    을 특징으로 하는 사용자 임베딩 학습 방법.
  8. 제1항에 있어서,
    상기 학습하는 단계는,
    비선형 투영 모델(non-linear projection model)을 통해 상기 대조 학습에 따른 사용자 임베딩을 최적화하는 단계
    를 포함하는 사용자 임베딩 학습 방법.
  9. 제1항에 있어서,
    상기 수집하는 단계는,
    반복되는 동일 행동에 대해 상기 사용자 행동 로그에 하나의 아이템으로 기록하는 단계
    를 포함하는 사용자 임베딩 학습 방법.
  10. 제1항에 있어서,
    상기 수집하는 단계는,
    이커머스(e-commerce) 플랫폼의 경우 사용자가 구매한 상품의 설명과 이름 중 적어도 하나를 상기 사용자 행동 로그로 수집하는 단계;
    컨텐츠 플랫폼의 경우 사용자가 소비한 컨텐츠의 제목을 상기 사용자 행동 로그로 수집하는 단계; 및
    검색 엔진의 경우 사용자의 검색 쿼리를 상기 사용자 행동 로그로 수집하는 단계
    를 포함하는 사용자 임베딩 학습 방법.
  11. 제1항 내지 제10항 중 어느 한 항의 사용자 임베딩 학습 방법을 상기 컴퓨터 장치에 실행시키기 위해 비-일시적인 컴퓨터 판독가능한 기록 매체에 저장되는 컴퓨터 프로그램.
  12. 컴퓨터 장치에 있어서,
    메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    복수의 서비스를 대상으로 서비스 별로 해당 서비스에서의 사용자 행동 로그를 자연어 텍스트로 표현된 데이터로 수집하는 과정;
    사용자 각각에 대하여 상기 사용자 행동 로그를 이용하여 서비스 별 사용자 임베딩을 생성하는 과정; 및
    대조 학습을 통해 동일 사용자에 대해 상기 서비스 별 사용자 임베딩의 유사도를 최대화하는 방향으로 학습하는 과정
    을 처리하는 컴퓨터 장치.
KR1020220000505A 2022-01-03 2022-01-03 대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램 KR20230105225A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220000505A KR20230105225A (ko) 2022-01-03 2022-01-03 대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220000505A KR20230105225A (ko) 2022-01-03 2022-01-03 대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR20230105225A true KR20230105225A (ko) 2023-07-11

Family

ID=87159588

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220000505A KR20230105225A (ko) 2022-01-03 2022-01-03 대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR20230105225A (ko)

Similar Documents

Publication Publication Date Title
Ni et al. Perceive your users in depth: Learning universal user representations from multiple e-commerce tasks
Wang et al. A sentiment‐enhanced hybrid recommender system for movie recommendation: a big data analytics framework
US11514333B2 (en) Combining machine-learning and social data to generate personalized recommendations
US20160170982A1 (en) Method and System for Joint Representations of Related Concepts
CN112836130A (zh) 一种基于联邦学习的上下文感知推荐系统及方法
Hsieh et al. A keyword-aware recommender system using implicit feedback on Hadoop
Misztal-Radecka et al. Meta-User2Vec model for addressing the user and item cold-start problem in recommender systems
US10489373B1 (en) Method and apparatus for generating unique hereditary sequences and hereditary key representing dynamic governing instructions
Lee et al. Extraction and prioritization of product attributes using an explainable neural network
Ali et al. Dynamic context management in context-aware recommender systems
Talha et al. Deep learning in news recommender systems: A comprehensive survey, challenges and future trends
Yu et al. Web service recommendation for mashup creation based on graph network
Latha et al. Product recommendation using enhanced convolutional neural network for e-commerce platform
Yang et al. Attention mechanism and adaptive convolution actuated fusion network for next POI recommendation
Zhang et al. A knowledge graph based approach for mobile application recommendation
JP2023162154A (ja) 地域知識グラフに基づいて推薦情報を提供する方法、コンピュータ装置、およびコンピュータプログラム
Wang [Retracted] Analysis of User Personalized Retrieval of Multimedia Digital Archives Dependent on BP Neural Network Algorithm
Meng et al. Variational Bayesian representation learning for grocery recommendation
Pang A personalized recommendation algorithm for semantic classification of new book recommendation services for university libraries
Wang et al. LCE: A location category embedding model for predicting the category labels of POIs
KR20230105225A (ko) 대조 학습과 교차 도메인 데이터를 이용한 사용자 임베딩을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
Cho et al. Clustered embedding using deep learning to analyze urban mobility based on complex transportation data
US20200226159A1 (en) System and method of generating reading lists
Larionova et al. Deep structured semantic model for recommendations in e-commerce
Ben Kharrat et al. Empirical study of social collaborative filtering algorithm