KR101997222B1 - 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법 - Google Patents

다수상황 간의 상관관계를 고려한 추천 시스템 및 방법 Download PDF

Info

Publication number
KR101997222B1
KR101997222B1 KR1020180000644A KR20180000644A KR101997222B1 KR 101997222 B1 KR101997222 B1 KR 101997222B1 KR 1020180000644 A KR1020180000644 A KR 1020180000644A KR 20180000644 A KR20180000644 A KR 20180000644A KR 101997222 B1 KR101997222 B1 KR 101997222B1
Authority
KR
South Korea
Prior art keywords
user
item
potential vector
matrix
preference
Prior art date
Application number
KR1020180000644A
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 KR1020180000644A priority Critical patent/KR101997222B1/ko
Application granted granted Critical
Publication of KR101997222B1 publication Critical patent/KR101997222B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0254Targeted advertisements based on statistics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • G06Q30/0271Personalized advertisement

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Data Mining & Analysis (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Marketing (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Algebra (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Operations Research (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법에 관한 것으로서, 더욱 상세하게는 다수 상황정보 간의 상관관계를 고려하여 아이템에 대한 사용자의 선호도를 예측하는 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법을 제안한다.

Description

다수상황 간의 상관관계를 고려한 추천 시스템 및 방법{Recommender system and method considering correlations among contexts}
본 발명은 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법에 관한 것으로서, 더욱 상세하게는 다수 상황정보 간의 상관관계를 고려하여 아이템에 대한 사용자의 선호도를 예측하는 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법에 관한 것이다.
갈수록 서비스와 정보의 양과 종류가 다양해짐에 따라 사용자들은 자신에게 가장 적합한 아이템들을 선택하는 데에 광범위한 검색 범위와, 다양한 검색 방법들 사이에서 시간적, 기술적 어려움을 느낄 수 있다.
이러한 사용자들의 특정 상황에서의 아이템들에 대한 과거 선호도들을 협업적으로 분석하여 사용자들의 의사결정을 돕는 상황 인지형 추천 시스템 즉, 협업 필터링이 개발되어 이용되고 있다.
이러한 사용자들의 과거 선호도 데이터는 일반적으로 희소함을 문제점으로 가지고 있기 때문에 기존 시스템은 정확도와 확장성이 떨어지는 한계점이 존재한다.
종래 기술은 상황정보를 반영한 사용자의 잠재벡터와 아이템의 잠재벡터를 학습하는 기술을 개시하고 있다. 그러나 종래기술은 상황정보들을 통합하는 과정에서 각 상황정보 타입에 항상 일정한 가중치를 곱하는 가중합을 활용하기 때문에 다양한 상황정보 사이의 상관관계를 반영하지 못하는 단점이 있다.
뿐만 아니라, 통합된 상황정보는 상황정보 타입의 개수에 상관없이 항상 일정한 길이의 벡터로 표현되기 때문에, 상황정보의 표현력이 떨어지는 한계점이 존재한다.
한국 공개 특허 제10-2014-0056716 호
본 발명은 상기와 같은 종래 기술상의 문제점을 해결하기 위하여, 다수의 상황 정보와 아이템에 대한 사용자의 선호도 간의 상관관계를 고려하여 사용자의 선호도를 예측하는 텐서 분해 기반의 상황 인지형 추천 시스템 및 방법을 제공하는 것을 그 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 일 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템은 상황관련 텐서를 기반으로 다수의 특정상황을 고려하며 사용자의 아이템에 대한 선호도를 학습하여, 사용자 잠재벡터 및 아이템 잠재벡터를 생성하는 기계 학습부와, 상기 사용자 잠재벡터 및 아이템 잠재벡터를 이용하여 아이템 별로 추천점수를 계산하는 추천 점수 계산부 및 상기 추천점수를 기반으로 주어진 상황을 고려하여 아이템에 대한 현재 사용자의 선호도를 예측하는 사용자 선호도 예측부;를 포함하고, 상기 기계 학습부는 상기 현재 사용자의 선호도와 과거 사용자의 선호도의 비교를 통해 상기 사용자 잠재벡터 및 상기 아이템 잠재벡터를 갱신하는 것을 특징으로 한다.
바람직하게는, 상기 기계 학습부는, 시간이 지날수록 사용자의 성향이 달라지는 경향과 인간의 망각 패턴을 고려하여 과거에 학습된 데이터에 대해 가중치를 부여하고, 상기 가중치는 과거의 선호도와 현재의 선호도 차이에 시그모이드 함수를 적용하여 산출한다.
바람직하게는, 상기 가중치는, 임계치 이상의 횟수로 학습된 추천 도메인의 데이터일수록 높은 가중치로 조정되어 부여되고, 상기 조정된 가중치는 과거에 학습된 데이터에 반영되어 새로운 학습의 파라미터 초기값으로 활용된다.
바람직하게는, 상기 기계 학습부는, 기 저장된 상황정보 객체 벡터(Ck)와 상황정보들 간의 상관관계에 관한 상황정보 텐서(Tc)를 텐서 곱을 통해 결합하여 상황정보 영향력 행렬(Mc,k)을 생성하는 상황정보 행렬 생성부와, 상기 상황정보 영향력 행렬(Mc,k)을 사용자 유사특징 행렬(M_u)과 텐서 곱을 통해 결합하여 특정상황이 사용자에 미치는 영향력을 의미하는 사용자 영향력 행렬(M_(u, k))을 생성하고, 상기 상황정보 영향력 행렬(Mc,k)을 아이템 유사특징 행렬(M_v)과 텐서 곱을 통해 결합하여 특정상황이 아이템에 미치는 영향력을 의미하는 아이템 영향력 행렬(M_(v, k))을 생성하는 영향력 행렬 생성부 및 상기 사용자 영향력 행렬(M_(u, k))을 기 저장된 사용자 잠재벡터(q_i)와 텐서 곱을 통해 결합하여 특정상황반영 사용자 잠재벡터(q_(i, k))를 생성하고, 상기 아이템 영향력 행렬(M_(v, k))을 기 저장된 아이템 잠재벡터(p_j)와 텐서 곱을 통해 결합하여 특정상황반영 아이템 잠재벡터(p_(j, k))를 생성하는 특정상황반영 행렬 생성부를 포함한다
바람직하게는, 상기 사용자 선호도 예측부는, 상기 특정상황반영 사용자 잠재벡터(q_(i, k))와 상기 특정상황반영 아이템 잠재벡터(p_(j, k))의 내적을 계산하고, 글로벌, 사용자, 아이템 및 특정 상황의 각 편향된 정도를 줄여주기 위한 바이어스를 더함으로써, 특정상황 k에서 아이템 j에 대한 사용자 i의 사용자 선호도 점수(
Figure 112018000763706-pat00001
)를 산출한다.
바람직하게는, 상기 추천 점수 계산부는, 상기 특정상황 k에서 사용자 i에 대해 각 아이템 별로 상기 추천점수를 산출하여, 가장 높은 상기 추천 점수가 산출되는 아이템을 사용자에게 추천하는 아이템으로 추출하는 것을 특징으로 한다.
바람직하게는, 상기 기계 학습부는, 상기 사용자 영향력 행렬(M_(u, k))과 상기 아이템 영향력 행렬(M_(v, k)), 상기 상황정보 텐서(Tc),상기 다수의 상황정보를 고려한 사용자 잠재벡터 및 아이템 잠재벡터를 학습하기 위해 확률 기울기 하강(Stochastic gradient descent) 알고리즘 기반의 학습을 수행하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 방법은 상황관련 텐서를 기반으로 다수의 특정상황을 고려하며 사용자의 아이템에 대한 선호도를 학습하여, 사용자 잠재벡터 및 아이템 잠재벡터를 생성하는 단계와, 상기 사용자 잠재벡터 및 아이템 잠재벡터를 이용하여 아이템 별로 추천 점수를 계산하는 단계 및 상기 추천 점수를 기반으로 주어진 상황을 고려하여 아이템에 대한 현재 사용자의 선호도를 예측하는 단계를 포함한다.
바람직하게는, 상기 사용자 잠재벡터 및 아이템 잠재벡터를 생성하는 단계는, 기 저장된 상황정보 객체 벡터(Ck)와 상황정보들 간의 상관관계에 관한 상황정보 텐서(Tc)를 텐서 곱을 통해 결합하여 상황정보 영향력 행렬(Mc,k)을 생성하는 단계와, 상기 상황정보 영향력 행렬(Mc,k)을 사용자 유사특징 행렬(M_u)과 텐서 곱을 통해 결합하여 특정상황이 사용자에 미치는 영향력을 의미하는 사용자 영향력 행렬(M_(u, k))을 생성하고, 상기 상황정보 영향력 행렬(Mc,k)을 아이템 유사특징 행렬(M_v)과 텐서 곱을 통해 결합하여 특정상황이 아이템에 미치는 영향력을 의미하는 아이템 영향력 행렬(M_(v, k))을 생성하는 단계 및 상기 사용자 영향력 행렬(M_(u, k))을 기 저장된 사용자 잠재벡터(q_i)와 텐서 곱을 통해 결합하여 특정상황반영 사용자 잠재벡터(q_(i, k))를 생성하고, 상기 아이템 영향력 행렬(M_(v, k))을 기 저장된 아이템 잠재벡터(p_j)와 텐서 곱을 통해 결합하여 특정상황반영 아이템 잠재벡터(p_(j, k))를 생성하는 단계를 포함한다.
바람직하게는, 상기 추천 점수를 계산하는 단계는, 상기 특정상황반영 사용자 잠재벡터(q_(i, k))와 상기 특정상황반영 아이템 잠재벡터(p_(j, k))의 내적을 계산하고, 글로벌, 사용자, 아이템 및 특정 상황의 각 편향된 정도를 줄여주기 위한 바이어스를 더함으로써, 특정상황 k에서 아이템 j에 대한 사용자 i의 추천 점수(
Figure 112018000763706-pat00002
)를 산출한다.
바람직하게는, 예측된 사용자의 선호도를 과거의 선호도와 비교하며 상기 사용자 잠재벡터 및 상기 아이템 잠재벡터를 갱신하는 단계를 더 포함한다.
바람직하게는, 상기 사용자 잠재벡터 및 아이템 잠재벡터를 갱신하는 단계는, 과거에 학습된 데이터에 시그모이드 함수를 통해 산출된 가중치를 부여하되, 상기 가중치는 시간이 지날수록 사용자의 성향이 달라지는 경향과 인간의 망각 패턴이 상기 과거에 학습된 데이터에 대해 미치는 영향을 반영하며, 임계치 이상의 횟수로 학습된 추천 도메인의 데이터일수록 높은 가중치로 부여되고, 상기 조정된 가중치는 과거에 학습된 데이터에 반영되어 새로운 학습의 파라미터 초기값으로 활용된다.
또한, 본 발명의 또 다른 목적을 달성하기 위하여, 본 발명은 다수상황 간의 상관관계를 고려한 추천 방법이 컴퓨터에서 수행되며, 컴퓨터에서 판독 가능한 기록 매체를 제공한다.
본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템은 상황정보 간의 복잡한 상관관계를 효과적으로 분석하고 학습할 수 있어, 기존보다 좀 더 사용자의 요구에 적합한 추천을 제공할 수 있다. 본 발명에서 제안하는 추천 점수 예측 함수는 상황 관련 텐서를 활용하여 상황정보를 사용자 맞춤형 추천에 반영하고, 본 발명에서 제안하는 파라미터 초기화는 과거 학습 데이터를 활용하여 추천 시스템의 신뢰성을 높인다.
도 1은 본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템의 개략적인 구성을 도시하는 블록도이다.
도 2는 본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템 일부의 상세 구성을 도시한다.
도 3은 본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템 일부 상세 구성간의 데이터의 흐름을 도시하는 도면이다.
도 4는 본 발명의 실시 예에 따른 확률 기울기 하강 알고리즘의 일부를 나타낸다.
도 5는 본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 방법을 설명하기 위한 흐름도이다.
첨부된 도면들을 참조하여 본 발명을 일실시예에 따라 상세히 설명한다.
이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 실시예를 상세하게 설명하지만, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다.
본 발명의 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 해당 분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라 질 수 있다. 또한 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명부분에서 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는, 단순한 용어의 명칭이 아닌 그 용어가 가지는 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 함을 밝혀두고자 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다.
나아가, 도면들 중 참조번호 및 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호들 및 부호들로 나타내고 있음에 유의해야 한다. 하기에서 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
따라서 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하에서는, 첨부된 도면을 참조하여 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법을 후술된 실시 예들에 따라 구체적으로 설명하도록 한다. 도면에서 동일한 부호는 동일한 구성 요소를 나타낸다.
도 1은 본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템의 개략적인 구성을 도시하는 블록도이다. 도 1을 참조하면, 본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템(10)은 기계 학습부(100), 추천 점수 계산부(200) 및 사용자 선호도 예측부(300)를 포함하여 구성된다.
개략적으로, 기계 학습부(100)는 특정상황을 고려하며 사용자의 아이템에 대한 과거의 선호도에 대한 학습을 수행하여, 다수의 상황정보를 고려한 사용자 잠재벡터 및 아이템 잠재벡터를 생성한다.
추천 점수 계산부(200)는 사용자 잠재벡터 및 아이템 잠재벡터를 이용하여 아이템 별로 추천 점수를 계산한다.
사용자 선호도 예측부(300)는 추천 점수를 기반으로 주어진 상황에서 아이템에 대한 현재 사용자의 선호도를 예측한다.
그리고, 기계 학습부(100)는 상기 현재 사용자의 선호도와 과거 사용자의 선호도의 비교를 통해 상기 사용자 잠재벡터 및 상기 아이템 잠재벡터를 갱신한다.
도 2는 본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템 일부의 상세 구성을 도시하고, 도 3은 본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템 일부 상세 구성간의 데이터의 흐름을 도시하는 도면이다.
참고로, 본 발명의 실시 예에 따른 도 1 내지 도 3에 도시된 구성 요소들은 소프트웨어 또는 FPGA(Filed Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)와 같은 하드웨어 구성 요소를 의미하며, 소정의 역할들을 수행한다.
그렇지만 ‘구성요소들’은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 각 구성요소는 어드레싱할 수 있는 저장매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
따라서, 일예로서 구성요소는 소프트웨어 구성 요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성 요소들 및 태스크 구성 요소들과 같은 구성 요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다.
구성 요소들과 해당 구성 요소들 안에서 제공되는 기능은 더 작은 수의 구성 요소들로 결합되거나 추가적인 구성 요소들로 더 분리될 수 있다.
도 2에 도시된 바와 같이, 기계 학습부(100)는 특정 상황을 고려하여 사용자의 아이템에 대한 과거의 선호도를 학습하여 다수의 상황정보를 고려한 사용자 잠재벡터 및 아이템 잠재벡터를 생성하기 위해, 상황정보 행렬 생성부(110), 영향력 행렬 생성부(120) 및 특정상황반영 행렬 생성부(130)를 포함하여 구성된다.
도 3에 도시된 바와 같이, 상황정보 행렬 생성부(110)는 기 저장된 상황정보 객체 벡터(Ck)와 상황정보들 간의 상관관계에 관한 상황정보 텐서(Tc)를 텐서 곱을 통해 결합하여 상황정보 영향력 행렬(Mc,k)을 생성한다.
여기서, 특정상황 k는 각 상황정보 타입에 해당하는 상황정보 객체의 벡터들이 연결된 행렬(Ck)로 표현되는 것이고, 이 행렬(Ck)이 상황정보 간의 다양한 상관관계를 담고있는 상황정보 텐서(Tc)와 텐서 곱을 통해 결합하여 특정상황 k의 영향력(context-influential matrix)을 의미하는 행렬(Mc,k)을 생성하는 것이다.
예를 들어, 상황정보(context)는 날씨, 동행자, 성 등의 정보일 수 있고, 각 상황정보는 컨텍스트 인스턴스를 포함할 수 있다. 즉, 날씨에 해당하는 상황정보에 대해서는 컨텍스트 인스턴스가 비, 맑음, 눈, 비 등을 포함할 수 있고, 동행자에 해당하는 상황정보에 대해서는 컨텍스트 인스턴스가 어머니, 아버지, 동생, 친구, 동료, 애인, 배우자, 자녀 등을 포함할 수 있으며, 성에 해당하는 상황정보에 대해서는 컨텍스트 인스턴스가 여자, 남자 등을 포함할 수 있다.
영향력 행렬 생성부(120)는 상기 상황정보 영향력 행렬(Mc,k)을 사용자 유사특징 행렬(M_u)과 텐서 곱을 통해 결합하여 특정상황이 사용자에 미치는 영향력을 의미하는 사용자 영향력 행렬(M_(u, k))을 생성하고, 상기 상황정보 영향력 행렬(Mc,k)을 아이템 유사특징 행렬(M_v)과 텐서 곱을 통해 결합하여 특정상황이 아이템에 미치는 영향력을 의미하는 아이템 영향력 행렬(M_(v, k))을 생성한다.
여기서, 사용자 유사특징 행렬(M_u)은 사용자와 공통적 특징이 있거나 유사한 유사 사용자의 집합을 의미하고, 아이템 유사특징 행렬(M_v)은 특정 아이템과 공통적 특징이 있거나 유사한 유사 아이템의 집합을 의미한다.
특정상황반영 행렬 생성부(130)는 사용자 영향력 행렬(M_(u, k))을 기 저장된 사용자 잠재벡터(q_i)와 텐서 곱을 통해 결합하여 특정상황반영 사용자 잠재벡터(q_(i, k))를 생성하고, 상기 아이템 영향력 행렬(M_(v, k))을 기 저장된 아이템 잠재벡터(p_j)와 텐서 곱을 통해 결합하여 특정상황반영 아이템 잠재벡터(p_(j, k))를 생성한다.
여기서, 사용자 잠재벡터(q_i)는 기계 학습부(100)의 이전 학습단계에서 모든 사용자 객체에 대해 모델링하여 저장된 정보를 의미하고, 아이템 잠재벡터(p_j)는 기계 학습부(100)의 이전 학습단계에서 모든 아이템 객체에 대해 모델링하여 저장된 정보를 의미한다. 사용자 잠재벡터(q_i)와 아이템 잠재벡터(p_j)는 시스템(10)에서 예측된 사용자의 선호도를 과거의 선호도와 비교해가며 갱신되고, 이에 의해 파라미터가 초기화된다.
추천점수 계산부(200)는 기계 학습부(100)에 실제 존재하는 데이터인 학습 데이터인 사용자-아이템-상황정보에 대한 순위에 따라 추천 점수 계산식인 수학식 1을 통해 추천 점수를 계산한다.
[수학식 1]
Figure 112018000763706-pat00003
초기에는 추천 점수 계산식의 정확도가 떨어지지만, 추천 점수 계산식을 계산해가면서 라플라스
Figure 112018000763706-pat00004
가 작아지는 방향으로 파라미터들을 조정해간다. 이때, 각 파라미터
Figure 112018000763706-pat00005
를 조정하는 식은 상기 추천 점수 계산식을 미분한 수학식 2를 이용한다.
[수학식 2]
Figure 112018000763706-pat00006
여기서, k는 각 상황정보 타입의 조합, Vu는 사용자 잠재벡터, Vv는 아이템 잠재벡터, Vu,k는 다수의 상황정보를 고려한 사용자 잠재벡터, Vv,k는 다수의 상황정보를 고려한 아이템 잠재벡터, Ck는 각 상황정보의 k 매트릭스 행렬, Tc는 상황정보들 간의 상관관계에 매트릭스 행렬, Mu는 사용자 유사특징 행렬, Mv는 아이템 유사특징 행렬, Mc,k는 특정상황 k의 영향력(context-influential matrix)을 의미하는 행렬, Mu,k는 특정상황이 사용자에게 미치는 영향력을 의미하는 사용자 영향력 행렬, Mv,k는 특정상황이 아이템에 미치는 영향력을 의미하는 아이템 영향력 행렬을 의미한다.
기계 학습부(100)에서 파라미터들을 조정해가는 학습이 끝나면, 추천 점수 계산부(200)는 이제 새로운 데이터(사용자-아이템-상황정보)를 수학식 1에 적용하여 추천점수를 계산한다. 그리고, 특정상황 k에서 사용자 i에 대해 각 아이템별로 상기 추천점수 계산식을 통해 추천점수를 산출하여, 가장 높은 추천 점수가 산출된 아이템을 사용자에게 추천할 아이템으로 추출할 수 있다.
사용자 선호도 예측부(300)는 수학식 3과 같이 특정상황반영 사용자 잠재벡터(q_(i, k))와 상기 특정상황반영 아이템 잠재벡터(p_(j, k))의 내적을 계산하고, 글로벌, 사용자, 아이템 및 특정 상황의 각 편향된 정도를 줄여주기 위한 바이어스를 더함으로써, 특정상황 k에서 아이템 j에 대한 사용자 i의 사용자 선호도(
Figure 112018000763706-pat00007
)를 산출한다.
[수학식 3]
Figure 112018000763706-pat00008
여기서,
Figure 112018000763706-pat00009
는 사용자 선호도, bg는 글로벌 바이어스, bi는 사용자 바이어스, bj는 아이템 바이어스 및 bk는 상황 바이어스를 의미하고, qi,k는 특정상황이 반영된 사용자 잠재벡터, pi,k는 특정상황이 반영된 아이템 잠재벡터, Mc,k는 특정상황 k의 영향력(context-influential matrix)을 의미하는 벡터, Mu는 사용자 유사특징 행렬, Vu는 사용자 잠재벡터, Mv는 아이템 유사특징 행렬, Vv는 아이템 잠재벡터를 의미한다.
그리고, 기계 학습부(100)는 사용자 영향력 행렬(M_(u, k))과 아이템 영향력 행렬(M_(v, k)), 상황정보 텐서(Tc), 다수의 상황정보를 고려한 사용자 잠재벡터 및 아이템 잠재벡터를 학습하기 위해 확률 기울기 하강(Stochastic gradient descent)알고리즘 기반의 학습을 수행한다.
여기서, 확률 기울기 하강 알고리즘은 도 4에 도시된 바와 같다. 도 4에 도시된 확률 기울기 하강 기반의 알고리즘 중에서 L-BFGS를 활용하여 수학식 2인 추천 점수 계산식을 미분한 식을 이용하여 수학식 1을 계산해 나가면서 라플라스
Figure 112018000763706-pat00010
가 작아지는 방향으로 파라미터들
Figure 112018000763706-pat00011
을 조정해간다.
예를 들어 설명하자면, 어느 하나의 추천점수는 다음과 같이 산출된다.
학습 데이터에서 한 개의 사용자-아이템-상황정보가 매칭된 데이터인 사람 A- 영화 A-({비, 연인, 남자})에 실제 점수(ground truth) 즉, 사용자 선호도 점수가 있는 경우를 보자.
사람A, 영화A, 비, 연인, 남자에 대한 초기 벡터를 데이터베이스로부터 가져와서 수학식 1을 통해 사용자 선호도 점수를 계산하면, 초기에는 실제 점수(ground truth)와 많이 어긋난다. 따라서, 수학식 1에 의한 사용자 선호도 점수와 실제 점수를 거의 동일하게하기 위해 상기 초기 벡터들을 학습시킨다.
모든 학습이 종료되면, 사람 A, 영화 A, 비, 연인, 남자에 대한 학습된 벡터를 데이터베이스로부터 가져와서 사용자 선호도 점수를 산출하는 수학식 1을 활용하여 계산하면 실제 점수(ground truth)와 매우 비슷하게 된다. 또한, 사람 A에 대한 아이템을 추천하기 위해서 사람A, 비, 연인, 남자 벡터는 고정해두고 영화 A벡터 대신에 다양한 영화에 대한 벡터로 교체하여 계산하면 다양한 영화에 대한 추천점수들을 계산할 수 있고, 따라서 그 중에서 가장 높은 추천 점수가 산출된 영화를 추천할 수 있다.
한편, 기계 학습부(100)는 학습의 신뢰성(reliability)를 높이기 위해, 사용자 선호도 예측부(300)에서 예측된 사용자의 선호도를 과거의 선호도와 비교하며 사용자 잠재벡터 및 아이템 잠재벡터를 갱신하여, 파라미터를 초기화한다(parameter initialization).
그리고, 기계 학습부(100)는 사용자의 성향이 시간이 지날수록 달라지는 경향과 인간의 망각 패턴을 고려하여 과거에 학습된 데이터에 대해 가중치를 부여한다. 이를 위해 가중치는 과거의 선호도와 현재의 선호도 차이에 시그모이드 함수를 적용하여 산출한다.
여기서, 가중치는 임계치 이상의 횟수로 학습된 추천 도메인의 데이터일수록 높은 가중치로 부여되고, 조정된 가중치는 과거에 학습된 데이터에 반영되어 새로운 학습의 파라미터 초기값으로 활용된다. 이때, 파라미터 초기화는 모든 상황정보 타입들의 객체 리스트가 동일하고, 추천 시스템의 도메인이 동일하며, 잠재벡터들의 차원수가 동일한 경우에만 적용된다. 이와 같은 조건이 만족되면, 사용자의 성향은 시간이 지날수록 달라지고, 인간의 망각 패턴에 영향을 받기 때문에 과거에 학습된 데이터에 가중치를 적용하여 파라미터들을 조정해 가야 한다.
이를 위해 본 발명에 따른 다수상황 간의 상관관계를 고려한 추천 시스템(10)은 과거의 선호도와 현재의 선호도의 차이를 시그모이드 함수에 적용하여 가중치를 계산하고, 이를 현재 교점에 적용할 수 있다. 수학식 4는 가중치를 산출하기 위한 수식이다.
[수학식 4]
Figure 112018000763706-pat00012
가중치는 과거 선호도와 현재 선호도 차이 x에 의해 결정된다. 이때, δ는 가중치 함수의 경사도를 결정하는 상수를 의미하고, τ는 x가 항상 0보다 같거나 크기 때문에 가중치 함수 w(x)가 x=0일 경우에 근접하게 만들어주기 위한 상수이다. 이와 같이 산출된 가중치는 과거에 학습된 선호도에 반영되어 새로운 학습의 파라미터 초기값으로 활용된다.
본 발명의 실시 예에 따른 다수상황 간의 상관관계를 고려한 추천 시스템은 상황정보 간의 복잡한 상관관계를 효과적으로 분석하고 학습할 수 있어, 기존보다 좀 더 사용자의 요구에 적합한 추천을 제공할 수 있다. 본 발명에서 제안하는 추천 점수 예측 함수는 상황 관련 텐서를 활용하여 상황정보를 사용자 맞춤형 추천에 반영하고, 본 발명에서 제안하는 파라미터 초기화는 과거 학습 데이터를 활용하여 추천 시스템의 신뢰성을 높인다.
이하, 본 발명에 따른 추천 시스템에서의 다수상황 간의 상관관계를 고려한 추천 방법에 대하여 설명하도록 한다. 상기 살펴본 바와 같이 본 발명에 따른 추천 시스템에서 중복되는 기술 내용에 대한 설명은 생략하기로 한다.
도 5는 본 발명에 따른 다수상황 간의 상관관계를 고려한 추천 방법의 흐름도이다. 도 5를 참조하여 설명하면, 본 발명에 따른 다수상황 간의 상관관계를 고려한 추천방법은 상황관련 텐서를 기반으로 다수의 특정상황을 고려하며 사용자의 아이템에 대한 선호도를 학습하여(S110), 사용자 잠재벡터 및 아이템 잠재벡터를 생성한다(S120).
여기서, S120 단계는, 기 저장된 상황정보 객체 벡터(Ck)와 상황정보들 간의 상관관계에 관한 상황정보 텐서(Tc)를 텐서 곱을 통해 결합하여 상황정보 영향력 행렬(Mc,k)을 생성하는 단계와, 상기 상황정보 영향력 행렬(Mc,k)을 사용자 유사특징 행렬(M_u)과 텐서 곱을 통해 결합하여 특정상황이 사용자에 미치는 영향력을 의미하는 사용자 영향력 행렬(M_(u, k))을 생성하고, 상기 상황정보 영향력 행렬(Mc,k)을 아이템 유사특징 행렬(M_v)과 텐서 곱을 통해 결합하여 특정상황이 아이템에 미치는 영향력을 의미하는 아이템 영향력 행렬(M_(v, k))을 생성하는 단계 및 상기 사용자 영향력 행렬(M_(u, k))을 기 저장된 사용자 잠재벡터(q_i)와 텐서 곱을 통해 결합하여 특정상황반영 사용자 잠재벡터(q_(i, k))를 생성하고, 상기 아이템 영향력 행렬(M_(v, k))을 기 저장된 아이템 잠재벡터(p_j)와 텐서 곱을 통해 결합하여 특정상황반영 아이템 잠재벡터(p_(j, k))를 생성하는 단계를 포함한다.
그리고, 사용자 잠재벡터 및 아이템 잠재벡터를 이용하여 아이템 별로 추천 점수를 계산한다(S130). 이를 위해, 특정상황반영 사용자 잠재벡터(q_(i, k))와 특정상황반영 아이템 잠재벡터(p_(j, k))의 내적을 계산하고, 글로벌, 사용자, 아이템 및 특정 상황의 각 편향된 정도를 줄여주기 위한 바이어스를 더함으로써, 특정상황 k에서 아이템 j에 대한 사용자 i의 추천 점수(
Figure 112018000763706-pat00013
)를 산출한다.
다음으로, 추천 점수를 기반으로 특정상황을 고려하여 아이템에 대한 사용자의 선호도를 예측한다(S140).
그리고, 상황정보 객체와 추천 시스템 도메인과 잠재벡터 차원수가 동일한 과거의 학습 데이터가 있으면(S150), S140 단계에서 예측된 사용자의 선호도를 과거의 선호도와 비교하며 사용자 잠재벡터 및 아이템 잠재벡터를 갱신하여 파라미터를 초기화한다(S160). 이때, 사용자의 성향이 시간이 지날수록 달라지는 경향과 인간의 망각 패턴을 고려하여 과거에 학습된 데이터에 대해 가중치를 부여한다. 이를 위해 가중치는 과거의 선호도와 현재의 선호도 차이에 시그모이드 함수를 적용하여 산출한다.
여기서, 가중치는 임계치 이상의 횟수로 학습된 추천 도메인의 데이터일수록 높은 가중치로 부여되고, 조정된 가중치는 과거에 학습된 데이터에 반영되어 새로운 학습의 파라미터 초기값으로 활용된다. 사용자의 성향은 시간이 지날수록 달라지고, 인간의 망각 패턴에 영향을 받기 때문에 과거에 학습된 데이터에 가중치를 적용하여 파라미터들을 조정해 가야 한다.
본 발명은 사용자 지향 기반으로 생성된 잠재 데이터와 아이템 지향 기반으로 생성된 잠재 데이터 각각에 다수상황 간의 상관관계를 고려하고, 가중치를 부여하여 조합함으로써, 특정 상황에서 사용자의 특정 아이템에 대한 선호도에 대한 예측의 신뢰성을 높일 수 있는 장점이 있다.
이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 기록매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 기록매체로서는 자기 기록매체, 광 기록매체 등이 포함될 수 있다.
또한, 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 상세한 설명에서 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구 범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (13)

  1. 상황관련 텐서를 기반으로 다수의 특정상황을 고려하며 사용자의 아이템에 대한 선호도를 학습하여, 사용자 잠재벡터 및 아이템 잠재벡터를 생성하는 기계 학습부;
    상기 사용자 잠재벡터 및 아이템 잠재벡터를 이용하여 아이템 별로 추천점수를 계산하는 추천 점수 계산부; 및
    상기 추천점수를 기반으로 주어진 상황을 고려하여 아이템에 대한 현재 사용자의 선호도를 예측하는 사용자 선호도 예측부;를 포함하고,
    상기 기계 학습부는 상기 현재 사용자의 선호도와 과거 사용자의 선호도의 비교를 통해 상기 사용자 잠재벡터 및 상기 아이템 잠재벡터를 갱신하며,
    상기 기계 학습부는, 기 저장된 상황정보 객체 벡터(Ck)와 상황정보들 간의 상관관계에 관한 상황정보 텐서(Tc)를 텐서 곱을 통해 결합하여 상황정보 영향력 행렬(Mc,k)을 생성하는 상황정보 행렬 생성부를 포함하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 시스템.
  2. 제 1 항에 있어서,
    상기 기계 학습부는,
    시간이 지날수록 사용자의 성향이 달라지는 경향과 인간의 망각 패턴을 고려하여 과거에 학습된 데이터에 대해 가중치를 부여하고, 상기 가중치는 과거의 선호도와 현재의 선호도 차이에 시그모이드 함수를 적용하여 산출하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 시스템.
  3. 제 2 항에 있어서,
    상기 가중치는,
    임계치 이상의 횟수로 학습된 추천 도메인의 데이터일수록 높은 가중치로 조정되어 부여되고, 상기 조정된 가중치는 과거에 학습된 데이터에 반영되어 새로운 학습의 파라미터 초기값으로 활용되는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 시스템.
  4. 제 1 항에 있어서,
    상기 기계 학습부는,
    상기 상황정보 영향력 행렬(Mc,k)을 사용자 유사특징 행렬(M_u)과 텐서 곱을 통해 결합하여 특정상황이 사용자에 미치는 영향력을 의미하는 사용자 영향력 행렬(M_(u, k))을 생성하고, 상기 상황정보 영향력 행렬(Mc,k)을 아이템 유사특징 행렬(M_v)과 텐서 곱을 통해 결합하여 특정상황이 아이템에 미치는 영향력을 의미하는 아이템 영향력 행렬(M_(v, k))을 생성하는 영향력 행렬 생성부; 및
    상기 사용자 영향력 행렬(M_(u, k))을 기 저장된 사용자 잠재벡터(q_i)와 텐서 곱을 통해 결합하여 특정상황반영 사용자 잠재벡터(q_(i, k))를 생성하고, 상기 아이템 영향력 행렬(M_(v, k))을 기 저장된 아이템 잠재벡터(p_j)와 텐서 곱을 통해 결합하여 특정상황반영 아이템 잠재벡터(p_(j, k))를 생성하는 특정상황반영 행렬 생성부;를 포함하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 시스템.
  5. 제 4 항에 있어서,
    상기 사용자 선호도 예측부는,
    상기 특정상황반영 사용자 잠재벡터(q_(i, k))와 상기 특정상황반영 아이템 잠재벡터(p_(j, k))의 내적을 계산하고, 글로벌, 사용자, 아이템 및 특정 상황의 각 편향된 정도를 줄여주기 위한 바이어스를 더함으로써, 특정상황 k에서 아이템 j에 대한 사용자 i의 사용자 선호도 점수(
    Figure 112018000763706-pat00014
    )를 산출하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 시스템.
  6. 제 5 항에 있어서,
    상기 추천 점수 계산부는,
    상기 특정상황 k에서 사용자 i에 대해 각 아이템 별로 상기 추천점수를 산출하여, 가장 높은 상기 추천 점수가 산출되는 아이템을 사용자에게 추천하는 아이템으로 추출하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 시스템.
  7. 제 4 항에 있어서,
    상기 기계 학습부는,
    상기 사용자 영향력 행렬(M_(u, k))과 상기 아이템 영향력 행렬(M_(v, k)), 상기 상황정보 텐서(Tc),상기 다수의 상황정보를 고려한 사용자 잠재벡터 및 아이템 잠재벡터를 학습하기 위해 확률 기울기 하강(Stochastic gradient descent) 알고리즘 기반의 학습을 수행하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 시스템.
  8. 상황관련 텐서를 기반으로 다수의 특정상황을 고려하며 사용자의 아이템에 대한 선호도를 학습하여, 사용자 잠재벡터 및 아이템 잠재벡터를 생성하는 단계;
    상기 사용자 잠재벡터 및 아이템 잠재벡터를 이용하여 아이템 별로 추천 점수를 계산하는 단계; 및
    상기 추천 점수를 기반으로 주어진 상황을 고려하여 아이템에 대한 현재 사용자의 선호도를 예측하는 단계;를 포함하며,
    상기 사용자 잠재벡터 및 아이템 잠재벡터를 생성하는 단계는, 기 저장된 상황정보 객체 벡터(Ck)와 상황정보들 간의 상관관계에 관한 상황정보 텐서(Tc)를 텐서 곱을 통해 결합하여 상황정보 영향력 행렬(Mc,k)을 생성하는 단계를 포함하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 방법.
  9. 제 8 항에 있어서,
    상기 사용자 잠재벡터 및 아이템 잠재벡터를 생성하는 단계는,
    상기 상황정보 영향력 행렬(Mc,k)을 사용자 유사특징 행렬(M_u)과 텐서 곱을 통해 결합하여 특정상황이 사용자에 미치는 영향력을 의미하는 사용자 영향력 행렬(M_(u, k))을 생성하고, 상기 상황정보 영향력 행렬(Mc,k)을 아이템 유사특징 행렬(M_v)과 텐서 곱을 통해 결합하여 특정상황이 아이템에 미치는 영향력을 의미하는 아이템 영향력 행렬(M_(v, k))을 생성하는 단계; 및
    상기 사용자 영향력 행렬(M_(u, k))을 기 저장된 사용자 잠재벡터(q_i)와 텐서 곱을 통해 결합하여 특정상황반영 사용자 잠재벡터(q_(i, k))를 생성하고, 상기 아이템 영향력 행렬(M_(v, k))을 기 저장된 아이템 잠재벡터(p_j)와 텐서 곱을 통해 결합하여 특정상황반영 아이템 잠재벡터(p_(j, k))를 생성하는 단계를 포함하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 방법.
  10. 제 9 항에 있어서,
    상기 추천 점수를 계산하는 단계는,
    상기 특정상황반영 사용자 잠재벡터(q_(i, k))와 상기 특정상황반영 아이템 잠재벡터(p_(j, k))의 내적을 계산하고, 글로벌, 사용자, 아이템 및 특정 상황의 각 편향된 정도를 줄여주기 위한 바이어스를 더함으로써, 특정상황 k에서 아이템 j에 대한 사용자 i의 추천 점수(
    Figure 112018000763706-pat00015
    )를 산출하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 방법.
  11. 제 8 항에 있어서,
    예측된 사용자의 선호도를 과거의 선호도와 비교하며 상기 사용자 잠재벡터 및 상기 아이템 잠재벡터를 갱신하는 단계를 더 포함하는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 방법.
  12. 제 11 항에 있어서,
    상기 사용자 잠재벡터 및 아이템 잠재벡터를 갱신하는 단계는,
    과거에 학습된 데이터에 시그모이드 함수를 통해 산출된 가중치를 부여하되,
    상기 가중치는 시간이 지날수록 사용자의 성향이 달라지는 경향과 인간의 망각 패턴이 상기 과거에 학습된 데이터에 대해 미치는 영향을 반영하며, 임계치 이상의 횟수로 학습된 추천 도메인의 데이터일수록 높은 가중치로 부여되고, 상기 조정된 가중치는 과거에 학습된 데이터에 반영되어 새로운 학습의 파라미터 초기값으로 활용되는 것을 특징으로 하는 다수상황 간의 상관관계를 고려한 추천 방법.
  13. 제 8 항 내지 제12항 중 어느 한 항에 따른 다수상황 간의 상관관계를 고려한 추천방법을 컴퓨터에서 수행하기 위한 컴퓨터에서 수행하기 위한 컴퓨터에서 판독 가능한 프로그램이 기록된 저장 매체.


KR1020180000644A 2018-01-03 2018-01-03 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법 KR101997222B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180000644A KR101997222B1 (ko) 2018-01-03 2018-01-03 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180000644A KR101997222B1 (ko) 2018-01-03 2018-01-03 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR101997222B1 true KR101997222B1 (ko) 2019-07-05

Family

ID=67225419

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180000644A KR101997222B1 (ko) 2018-01-03 2018-01-03 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101997222B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021020810A1 (en) * 2019-07-26 2021-02-04 Samsung Electronics Co., Ltd. Learning method of ai model and electronic apparatus
WO2021251699A1 (ko) * 2020-06-09 2021-12-16 ㈜올윈에어 아이템 추천 방법 및 장치
KR102406414B1 (ko) * 2021-01-04 2022-06-08 (주)뤼이드 잠재인자에 기반한 협업 필터링을 사용하여 사용자의 정답확률을 예측하는 학습 컨텐츠 추천 시스템 및 그것의 동작방법
CN115422453A (zh) * 2022-08-31 2022-12-02 哈尔滨工业大学(深圳) 项目推荐方法及项目推荐装置
CN118096324A (zh) * 2024-04-23 2024-05-28 成都帆点创想科技有限公司 推荐模型训练方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100961783B1 (ko) * 2009-06-29 2010-06-07 주식회사 모임 인공지능에 기반한 제품 및 제품 벤더 추천 장치 및 방법, 그 기록 매체
KR20140056716A (ko) 2012-10-31 2014-05-12 에스케이플래닛 주식회사 상품 추천 서비스 시스템, 그 시스템에서의 협업 필터링 기반 상품 추천을 위한 방법 및 장치
JP2016110505A (ja) * 2014-12-09 2016-06-20 株式会社Nttドコモ 興味タイミング推定装置及び興味タイミング推定方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100961783B1 (ko) * 2009-06-29 2010-06-07 주식회사 모임 인공지능에 기반한 제품 및 제품 벤더 추천 장치 및 방법, 그 기록 매체
KR20140056716A (ko) 2012-10-31 2014-05-12 에스케이플래닛 주식회사 상품 추천 서비스 시스템, 그 시스템에서의 협업 필터링 기반 상품 추천을 위한 방법 및 장치
JP2016110505A (ja) * 2014-12-09 2016-06-20 株式会社Nttドコモ 興味タイミング推定装置及び興味タイミング推定方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021020810A1 (en) * 2019-07-26 2021-02-04 Samsung Electronics Co., Ltd. Learning method of ai model and electronic apparatus
US11853901B2 (en) 2019-07-26 2023-12-26 Samsung Electronics Co., Ltd. Learning method of AI model and electronic apparatus
WO2021251699A1 (ko) * 2020-06-09 2021-12-16 ㈜올윈에어 아이템 추천 방법 및 장치
KR102406414B1 (ko) * 2021-01-04 2022-06-08 (주)뤼이드 잠재인자에 기반한 협업 필터링을 사용하여 사용자의 정답확률을 예측하는 학습 컨텐츠 추천 시스템 및 그것의 동작방법
WO2022145829A1 (ko) * 2021-01-04 2022-07-07 (주)뤼이드 잠재인자에 기반한 협업 필터링을 사용하여 사용자의 정답확률을 예측하는 학습 컨텐츠 추천 시스템 및 그것의 동작방법
CN115422453A (zh) * 2022-08-31 2022-12-02 哈尔滨工业大学(深圳) 项目推荐方法及项目推荐装置
CN115422453B (zh) * 2022-08-31 2023-09-29 哈尔滨工业大学(深圳) 项目推荐方法及项目推荐装置
CN118096324A (zh) * 2024-04-23 2024-05-28 成都帆点创想科技有限公司 推荐模型训练方法及装置

Similar Documents

Publication Publication Date Title
KR101997222B1 (ko) 다수상황 간의 상관관계를 고려한 추천 시스템 및 방법
US11314988B2 (en) Image aesthetic processing method and electronic device
JP7276757B2 (ja) モデル公平性のためのシステムおよび方法
US11544524B2 (en) Electronic device and method of obtaining emotion information
US10489688B2 (en) Personalized digital image aesthetics in a digital medium environment
CN109544306B (zh) 一种基于用户行为序列特征的跨领域推荐方法及装置
US10878029B2 (en) Incorporating social-network connections information into estimated user-ratings of videos for video recommendations
JP2019537120A (ja) 画像解析および予測に基づく視覚検索
EP3820369B1 (en) Electronic device and method of obtaining emotion information
KR102468827B1 (ko) 인공지능 기반 상품 소싱 및 카테고리 맞춤형 리뷰 분석 서비스 제공 방법, 장치 및 시스템
CN109313720A (zh) 具有稀疏访问的外部存储器的增强神经网络
Viaene et al. Cost-sensitive learning and decision making revisited
WO2018177145A1 (en) Knowledge network platform
AU2020273315A1 (en) Method to compute and recommend the best model for higher engagement and increased probability of product visit/purchase from an ecommerce website visitor
KR102422408B1 (ko) 협업 필터링 신경망을 이용하여 상품을 추천하는 방법 및 장치
KR20190061130A (ko) 소셜 네트워크 정보와 레이팅 정보를 활용한 설명가능하고 정확한 추천 방법 및 추천 시스템
CN111667024B (zh) 内容推送方法、装置、计算机设备和存储介质
KR20210090368A (ko) 인공지능 모델 생성 플랫폼 제공 시스템을 이용한 인공지능 모델 생성 방법
Wang et al. HSA-Net: Hidden-state-aware networks for high-precision QoS prediction
CN117056595A (zh) 一种交互式的项目推荐方法、装置及计算机可读存储介质
CN113449176A (zh) 基于知识图谱的推荐方法及装置
JP6403861B1 (ja) 提供プログラム、提供装置、および提供方法
JP7133689B1 (ja) テキスト生成装置、テキスト生成方法、およびプログラム
JP5588938B2 (ja) アイテム推薦装置及び方法及びプログラム
US11410220B2 (en) Exploration for interactive recommendation system, method, and computer program product

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant