KR102406634B1 - Personalized recommendation method and system based on future interaction prediction - Google Patents

Personalized recommendation method and system based on future interaction prediction Download PDF

Info

Publication number
KR102406634B1
KR102406634B1 KR1020200125596A KR20200125596A KR102406634B1 KR 102406634 B1 KR102406634 B1 KR 102406634B1 KR 1020200125596 A KR1020200125596 A KR 1020200125596A KR 20200125596 A KR20200125596 A KR 20200125596A KR 102406634 B1 KR102406634 B1 KR 102406634B1
Authority
KR
South Korea
Prior art keywords
user
content
personalized recommendation
interaction
embedding
Prior art date
Application number
KR1020200125596A
Other languages
Korean (ko)
Other versions
KR20220042598A (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 KR1020200125596A priority Critical patent/KR102406634B1/en
Publication of KR20220042598A publication Critical patent/KR20220042598A/en
Application granted granted Critical
Publication of KR102406634B1 publication Critical patent/KR102406634B1/en

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
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4662Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms
    • H04N21/4666Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms using neural networks, e.g. processing the feedback provided by the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Computational Linguistics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Primary Health Care (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 미래 상호작용 예측 기반의 개인화 추천 방법 및 시스템에 관한 것으로서, 사용자 및 콘텐츠의 메타데이터와, 사용자와 콘텐츠 간의 상호작용 정보를 저장하는 메모리; 및 상기 메모리에 접속되어, 상기 사용자 및 콘텐츠의 메타데이터와, 상기 사용자와 콘텐츠 간의 상호작용 정보를 입력하여 예측 모델을 학습한 후, 특정 사용자 ID에 해당하는 사용자 임베딩을 불러오고, 특정 사용자의 현재시간에서의 임베딩을 추정하며, 추정된 특정 사용자의 현재시간에서의 임베딩 및 학습된 예측 모델에 기초하여 상기 특정 사용자의 다음 상호작용 임베딩을 예측하고, 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산하며, 상기 학습된 모든 콘텐츠 임베딩 중에 상기 예측된 특정 사용자의 다음 상호작용 임베딩과 유사한 소정의 개수의 콘텐츠를 반환하는 신경망을 구성하는 하나 이상의 프로세서를 포함한다.The present invention relates to a personalized recommendation method and system based on future interaction prediction, comprising: a memory for storing metadata of a user and content, and interaction information between the user and content; and accessing the memory, inputting metadata of the user and content, and interaction information between the user and content to learn a predictive model, and then calling a user embedding corresponding to a specific user ID, Estimate the embedding in time, predict the next interaction embedding of the specific user based on the estimated embedding at the current time of the specific user and the learned prediction model, and predict the next interaction embedding of the specific user and the learned and one or more processors for constructing a neural network that calculates the similarity between all content embeddings and returns a predetermined number of content similar to the predicted next interactive embedding of the specific user among all the learned content embeddings.

Description

미래 상호작용 예측 기반의 개인화 추천 방법 및 시스템{PERSONALIZED RECOMMENDATION METHOD AND SYSTEM BASED ON FUTURE INTERACTION PREDICTION}PERSONALIZED RECOMMENDATION METHOD AND SYSTEM BASED ON FUTURE INTERACTION PREDICTION

본 발명은 콘텐츠 추천 방법에 관한 것으로, 더욱 상세하게는 미래 상호작용 예측 기반의 개인화 추천 방법 및 시스템에 관한 것이다.The present invention relates to a content recommendation method, and more particularly, to a personalized recommendation method and system based on future interaction prediction.

유무선 통신의 속도 및 연산자원의 발전 속도가 급격하게 이루어짐으로써 온라인 상에는 가히 범람이라고 해도 무방할 만큼 막대한 양의 콘텐츠들이 존재하고 있다.As the speed of wired and wireless communication and the speed of development of operator resources are rapidly increasing, there is a huge amount of content online that can be said to be overflowing.

따라서 이러한 막대한 콘텐츠 중에서 특정한 이용자가 선호하는 콘텐츠를 선별하여 제공하는 것에 대한 필요성이 매우 크며, 이에 따라 다양한 콘텐츠 추천 모델들이 존재하고 있다.Accordingly, there is a great need for selecting and providing content preferred by a specific user from among such enormous content, and accordingly, various content recommendation models exist.

그러나, 종래의 CF(Collaborative Filtering) 기반의 추천 및 콘텐츠 기반의 추천 기술은 단순히 사전에 정의된 룰(Rule)에 따라 콘텐츠를 추천한다.However, the conventional CF (Collaborative Filtering)-based recommendation and content-based recommendation technology simply recommends content according to a predefined rule.

본 발명은 사용자와 콘텐츠의 상호작용의 시간과 순서적 맥락이 반영되도록 DeepCoevolve, JODIE 등 딥러닝 기반 상호작용 임베딩 기법을 활용하여, 사용자와 콘텐츠를 하나의 벡터 공간에 임베딩하고, 사용자, 콘텐츠 벡터, 및 시간정보로부터 사용자가 다음 상호작용할 콘텐츠 벡터를 예측하여, 예측된 벡터와 콘텐츠 간의 유사도 기반으로 콘텐츠를 추천한다.The present invention uses deep learning-based interaction embedding techniques such as DeepCoevolve and JODIE to reflect the time and sequence context of the interaction between the user and the content, embedding the user and content in one vector space, and embedding the user and content vector, and predicting a content vector with which the user will interact next from the time information, and recommending content based on the similarity between the predicted vector and the content.

국내등록특허 제10-2137887호Domestic Registered Patent No. 10-2137887 국내공개특허 제10-2013-0009360호Domestic Patent Publication No. 10-2013-0009360

본 명세서는 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로서, 사용자와 콘텐츠의 딥러닝 기반 상호작용의 임베딩 기법을 활용하는 미래 상호작용 예측 기반의 개인화 추천 방법 및 시스템을 제공하는 데 그 목적이 있다.The present specification has been devised to solve the above problems, and it is an object of the present specification to provide a future interaction prediction-based personalized recommendation method and system utilizing an embedding technique of deep learning-based interaction between a user and content. .

본 발명의 다른 목적은 상호작용의 시간과 순서적 맥락이 반영된 미래 상호작용 예측 기반의 개인화 추천 방법 및 시스템을 제공한다.Another object of the present invention is to provide a personalized recommendation method and system based on future interaction prediction in which the time and sequence context of the interaction are reflected.

이와 같은 목적을 달성하기 위한, 본 명세서의 일실시예에 따르면, 본 명세서에 따른 미래 상호작용 예측 기반의 개인화 추천 방법은, 개인화 추천 시스템이, 사용자 및 콘텐츠의 메타데이터와, 사용자와 콘텐츠 간의 상호작용 정보를 입력하여 인공신경망을 학습시키는 단계; 상기 개인화 추천 시스템이, 특정 사용자 ID에 해당하는 사용자 임베딩을 불러오는 단계; 상기 개인화 추천 시스템이, 특정 사용자의 현재시간에서의 임베딩을 추정하는 단계; 상기 개인화 추천 시스템이, 추정된 특정 사용자의 현재시간에서의 임베딩 및 학습된 인공신경망에 기초하여 상기 특정 사용자의 다음 상호작용 임베딩을 예측하는 단계; 상기 개인화 추천 시스템이, 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산하는 단계; 및 상기 개인화 추천 시스템이, 상기 학습된 모든 콘텐츠 임베딩 중에 상기 예측된 특정 사용자의 다음 상호작용 임베딩과 유사한 소정의 개수의 콘텐츠를 반환하는 단계를 포함한다.According to an embodiment of the present specification, in order to achieve the above object, according to an embodiment of the present specification, in the personalized recommendation method based on future interaction prediction according to the present specification, the personalized recommendation system includes the user and content metadata and the interaction between the user and content. learning the artificial neural network by inputting action information; retrieving, by the personalized recommendation system, a user embedding corresponding to a specific user ID; estimating, by the personalized recommendation system, embedding of a specific user at a current time; predicting, by the personalized recommendation system, the next interactive embedding of the specific user based on the estimated embedding at the current time of the specific user and the learned artificial neural network; calculating, by the personalized recommendation system, a degree of similarity between the predicted next interactive embedding of a specific user and all learned content embeddings; and returning, by the personalized recommendation system, a predetermined number of content similar to the predicted next interactive embedding of the specific user among all the learned content embeddings.

바람직하게는, 상기 상호작용 정보는 사용자와 콘텐츠의 상호작용의 발생 순서와 발생 시간 간격으로 구성되는 상호작용 시퀀스를 나타내는 것을 특징으로 한다.Preferably, the interaction information is characterized in that it indicates an interaction sequence consisting of an occurrence order and an occurrence time interval of the interaction between the user and the content.

바람직하게는, 상기 사용자의 메타데이터는 사용자의 ID, 연령, 성별, 주소, 및 SNS 기록 중 적어도 하나를 포함하는 것을 특징으로 한다.Preferably, the metadata of the user includes at least one of ID, age, gender, address, and SNS record of the user.

바람직하게는, 상기 콘텐츠의 메타데이터는 콘텐츠의 ID 및 장르를 포함하는 것을 특징으로 한다.Preferably, the metadata of the content includes an ID and a genre of the content.

바람직하게는, 상기 인공신경망을 학습시키는 단계는, 상기 개인화 추천 시스템이, 상기 사용자 및 콘텐츠의 메타데이터와, 상기 사용자와 콘텐츠 간의 상호작용 정보를 임베딩을 위한 입력으로 가공하는 단계; 상기 개인화 추천 시스템이, 상기 사용자 및 콘텐츠의 상호작용 정보와 메타데이터를 기반으로 사용자 및 콘텐츠를 임베딩하고 다음 상호작용의 예측을 모델링하는 단계; 상기 개인화 추천 시스템이, 예측한 전체 다음 상호작용의 개수에 대한 예측을 맞춘 다음 상호작용의 개수의 비율이 기준치를 초과하는지 여부를 판단하는 단계; 및 상기 개인화 추천 시스템이, 상기 예측한 전체 다음 상호작용의 개수에 대한 예측을 맞춘 다음 상호작용의 개수의 비율이 상기 기준치를 초과하는 경우, 학습된 사용자 및 콘텐츠 임베딩과, 학습된 예측 모델을 저장하는 단계를 포함하는 것을 특징으로 한다.Preferably, the step of training the artificial neural network comprises: processing, by the personalized recommendation system, metadata of the user and content, and interaction information between the user and content as input for embedding; embedding, by the personalized recommendation system, a user and content based on the user and content interaction information and metadata, and modeling a prediction of a next interaction; determining, by the personalized recommendation system, whether a ratio of the number of next interactions exceeds a reference value; and when the personalized recommendation system matches the prediction to the predicted total number of next interactions, and then the ratio of the number of interactions exceeds the reference value, the learned user and content embedding and the learned prediction model are stored It is characterized in that it comprises the step of

바람직하게는, 상기 다음 상호작용의 예측을 모델링하는 단계에서, 상기 개인화 추천 시스템은, JODIE 및 DeepCoevolve 중 어느 하나를 이용하여 다음 상호작용의 예측을 모델링하는 것을 특징으로 한다.Preferably, in the modeling of the prediction of the next interaction, the personalized recommendation system models the prediction of the next interaction using any one of JODIE and DeepCoevolve.

바람직하게는, 상기 사용자 임베딩을 불러오는 단계는, 상기 개인화 추천 시스템이, 이전 상호작용과 사용자의 현재시간 간의 시간차를 계산하는 단계를 포함하는 것을 특징으로 한다.Preferably, the step of invoking the user embedding comprises, by the personalized recommendation system, calculating a time difference between the previous interaction and the current time of the user.

바람직하게는, 상기 유사도를 계산하는 단계에서, 상기 개인화 추천 시스템은, L2 Distance, Cosine Similarity, 및 LSH(Locality Sensitive Hashing) 중 어느 하나를 이용하여 상기 예측된 특정 사용자의 다음 상호작용 임베딩과 상기 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산하는 것을 특징으로 한다.Preferably, in the step of calculating the similarity, the personalized recommendation system uses any one of L2 Distance, Cosine Similarity, and Locality Sensitive Hashing (LSH) to embed the predicted next interaction of the specific user and the learning It is characterized by calculating the similarity between all content embeddings.

본 명세서의 다른 실시예에 따르면, 본 명세서에 따른 미래 상호작용 예측 기반의 개인화 추천 시스템은, 사용자 및 콘텐츠의 메타데이터와, 사용자와 콘텐츠 간의 상호작용 정보를 저장하는 메모리; 및 상기 메모리에 접속되어, 상기 사용자 및 콘텐츠의 메타데이터와, 상기 사용자와 콘텐츠 간의 상호작용 정보를 입력하여 예측 모델을 학습한 후, 특정 사용자 ID에 해당하는 사용자 임베딩을 불러오고, 특정 사용자의 현재시간에서의 임베딩을 추정하며, 추정된 특정 사용자의 현재시간에서의 임베딩 및 학습된 예측 모델에 기초하여 상기 특정 사용자의 다음 상호작용 임베딩을 예측하고, 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산하며, 상기 학습된 모든 콘텐츠 임베딩 중에 상기 예측된 특정 사용자의 다음 상호작용 임베딩과 유사한 소정의 개수의 콘텐츠를 반환하는 신경망을 구성하는 하나 이상의 프로세서를 포함한다.According to another embodiment of the present specification, a future interaction prediction-based personalized recommendation system according to the present specification includes: a memory for storing metadata of a user and content, and interaction information between the user and content; and accessing the memory, inputting metadata of the user and content, and interaction information between the user and content to learn a predictive model, and then calling a user embedding corresponding to a specific user ID, Estimate the embedding in time, predict the next interaction embedding of the specific user based on the estimated embedding at the current time of the specific user and the learned prediction model, and predict the next interaction embedding of the specific user and the learned and one or more processors for constructing a neural network that calculates the similarity between all content embeddings and returns a predetermined number of content similar to the predicted next interactive embedding of the specific user among all the learned content embeddings.

이상에서 설명한 바와 같이 본 명세서에 의하면, 사용자의 과거 상호작용 콘텐츠들의 이력과 시간 간격이 딥러닝을 통해 학습된 임베딩과 예측 모델의 가중치를 활용하는 미래 상호작용 예측 기반의 개인화 추천 방법 및 시스템을 제공함으로써, 사용자별로 높은 정확도로 콘텐츠를 추천할 수 있다.As described above, according to this specification, a personal recommendation method and system based on future interaction prediction using the weights of embeddings and prediction models learned through deep learning in which the history and time interval of the user's past interaction contents are provided. By doing so, it is possible to recommend content with high accuracy for each user.

도 1은 본 발명의 실시예에 따른 미래 상호작용 예측 기반의 개인화 추천 시스템이 갖는 기능의 일예를 도시한 블록도,
도 2는 본 발명의 실시예에 따른 상호작용 임베딩부 내부의 개략적인 구성을 나타낸 블럭 구성도,
도 3은 본 발명의 실시예에 따른 추천부 내부의 개략적인 구성을 나타낸 블럭 구성도,
도 4는 본 발명의 실시 형태에 관한 개인화 추천 시스템의 기능을 실현 가능한 하드웨어의 일례를 도시한 블록도,
도 5는 본 발명의 실시예에 따른 인공신경망을 학습시키는 방법을 나타낸 흐름도,
도 6은 본 발명의 실시예에 따른 미래 상호작용 예측 기반의 개인화 추천 방법을 나타낸 흐름도,
도 7은 기존의 개인화 추천 방식과 본 발명의 개인화 추천 방식을 비교 설명하기 위한 도면,
도 8은 본 발명에 따른 상호작용 정보를 나타낸 도면, 및
도 9는 본 발명에 따른 메타데이터를 나타낸 도면이다.
1 is a block diagram illustrating an example of a function of a future interaction prediction-based personalized recommendation system according to an embodiment of the present invention;
2 is a block diagram showing a schematic configuration of the inside of the interactive embedding unit according to an embodiment of the present invention;
3 is a block diagram showing a schematic configuration of the inside of a recommendation unit according to an embodiment of the present invention;
4 is a block diagram showing an example of hardware capable of realizing the function of the personalized recommendation system according to the embodiment of the present invention;
5 is a flowchart showing a method for learning an artificial neural network according to an embodiment of the present invention;
6 is a flowchart illustrating a personalized recommendation method based on future interaction prediction according to an embodiment of the present invention;
7 is a diagram for explaining a comparison between the existing personalized recommendation method and the personalized recommendation method of the present invention;
8 is a diagram showing interaction information according to the present invention, and
9 is a diagram illustrating metadata according to the present invention.

본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.It should be noted that the technical terms used herein are used only to describe specific embodiments, and are not intended to limit the present invention. In addition, the technical terms used in this specification should be interpreted as meanings generally understood by those of ordinary skill in the art to which the present invention belongs, unless otherwise specifically defined in this specification, and excessively inclusive It should not be construed in the meaning of a human being or in an excessively reduced meaning. In addition, when the technical terms used in the present specification are incorrect technical terms that do not accurately express the spirit of the present invention, they should be understood by being replaced with technical terms that can be correctly understood by those skilled in the art. In addition, the general terms used in the present invention should be interpreted according to the definition in the dictionary or according to the context before and after, and should not be interpreted in an excessively reduced meaning.

또한, 본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서 상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.Also, as used herein, the singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as “consisting of” or “comprising” should not be construed as necessarily including all of the various components or various steps described in the specification, some of which components or some steps are It should be construed that it may not include, or may further include additional components or steps.

또한, 본 명세서에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.In addition, the suffixes "module" and "part" for components used in this specification are given or used in consideration of ease of writing the specification, and do not have a meaning or role distinct from each other by themselves.

또한, 본 명세서에서 사용되는 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는 데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.Also, terms including ordinal numbers such as first, second, etc. used herein may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component.

본 발명의 실시예에서 콘텐츠는 웹툰, 드라마, 영화, 애니메이션, 및 뮤지컬 등을 포함할 수 있다.In an embodiment of the present invention, the content may include webtoons, dramas, movies, animations, musicals, and the like.

또한, 본 발명의 실시예에서 '임베딩'은 어떤 객체를 인공신경망이 이해할 수 있는 형태(즉, 벡터)로 표현하는 것을 나타낸다.In addition, in the embodiment of the present invention, 'embedding' represents expressing an object in a form that an artificial neural network can understand (ie, a vector).

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, a preferred embodiment according to the present invention will be described in detail with reference to the accompanying drawings, but the same or similar components are assigned the same reference numerals regardless of reference numerals, and redundant description thereof will be omitted.

또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니됨을 유의해야 한다.In addition, in the description of the present invention, if it is determined that a detailed description of a related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, it should be noted that the accompanying drawings are only for easy understanding of the spirit of the present invention, and should not be construed as limiting the spirit of the present invention by the accompanying drawings.

도 1은 본 발명의 실시예에 따른 미래 상호작용 예측 기반의 개인화 추천 시스템이 갖는 기능의 일예를 도시한 블록도이다.1 is a block diagram illustrating an example of a function of a future interaction prediction-based personalized recommendation system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 개인화 추천 시스템(100)은, 상호작용 임베딩부(110) 및 추천부(120)를 포함할 수 있다.Referring to FIG. 1 , the personalized recommendation system 100 according to the present invention may include an interactive embedding unit 110 and a recommendation unit 120 .

상호작용 임베딩부(110)는 사용자 및 콘텐츠의 메타데이터와, 사용자와 콘텐츠 간의 상호작용 정보를 입력하여 예측 모델을 학습시킨다. 여기서, 상호작용 정보는 사용자와 콘텐츠의 상호작용의 발생 순서와 발생 시간 간격으로 구성되는 상호작용 시퀀스를 나타낸다. 사용자의 메타데이터는 사용자의 ID, 연령, 성별, 주소, 및 SNS 기록 중 적어도 하나를 포함한다. 콘텐츠의 메타데이터는 콘텐츠의 ID 및 장르를 포함한다.The interaction embedding unit 110 learns a predictive model by inputting user and content metadata and interaction information between the user and content. Here, the interaction information indicates an interaction sequence composed of an occurrence order and an occurrence time interval of interaction between the user and content. The user's metadata includes at least one of ID, age, gender, address, and SNS record of the user. The metadata of the content includes the ID and genre of the content.

추천부(120)는 특정 사용자 ID에 해당하는 사용자 임베딩을 불러오고, 특정 사용자의 현재시간에서의 임베딩을 추정하며, 추정된 특정 사용자의 현재시간에서의 임베딩 및 학습된 예측 모델에 기초하여 특정 사용자의 다음 상호작용 임베딩을 예측하고, 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산하며, 학습된 모든 콘텐츠 임베딩 중에 예측된 특정 사용자의 다음 상호작용 임베딩과 유사한 소정의 개수의 콘텐츠를 반환한다.The recommendation unit 120 retrieves the user embedding corresponding to the specific user ID, estimates the embedding at the current time of the specific user, and based on the estimated embedding at the current time of the specific user and the learned prediction model, the specific user predict the next interaction embedding of Returns the contents of

도 2는 본 발명의 실시예에 따른 상호작용 임베딩부 내부의 개략적인 구성을 나타낸 블럭 구성도이다.2 is a block diagram showing a schematic configuration of an inside of an interactive embedding unit according to an embodiment of the present invention.

도 2를 참조하면, 본 발명에 따른 상호작용 임베딩부(110)는 사용자-콘텐츠 상호작용 DB(210), 사용자, 콘텐츠 메타데이터 DB(220), 데이터 로딩부(230), 메타데이터 전처리부(240), 및 학습부(250)를 포함할 수 있다.Referring to FIG. 2 , the interaction embedding unit 110 according to the present invention includes a user-content interaction DB 210 , a user, content metadata DB 220 , a data loading unit 230 , and a metadata preprocessor ( 240 ), and a learning unit 250 .

사용자-콘텐츠 상호작용 DB(210)는 사용자와 콘텐츠 간의 상호작용을 저장한다. 여기서, 상호작용은 시청, 구매, 찜, 공유하기, 및 View page 정보를 포함할 수 있다.The user-content interaction DB 210 stores the interaction between the user and the content. Here, the interaction may include viewing, purchasing, wishing, sharing, and view page information.

사용자, 콘텐츠 메타데이터 DB(220)는 사용자 및 콘텐츠의 메타데이터를 저장한다.The user and content metadata DB 220 stores user and content metadata.

데이터 로딩부(230)는 상호작용의 발생 순서와 발생 시간 간격을 고려하여 상호작용 정보를 생성한다.The data loading unit 230 generates interaction information in consideration of the interaction occurrence order and the occurrence time interval.

메타데이터 전처리부(240)는 사용자 및 콘텐츠의 메타데이터를 임베딩을 위한 입력으로 가공한다. 예를 들면, 메타데이터 전처리부(240)는 사용자 및 콘텐츠의 메타데이터를 벡터로 변환한다.The metadata preprocessor 240 processes metadata of users and content as inputs for embedding. For example, the metadata preprocessor 240 converts metadata of users and content into vectors.

학습부(250)는 사용자 및 콘텐츠의 상호작용 정보와 메타데이터를 기반으로 사용자 및 콘텐츠를 임베딩하고 다음 상호작용의 예측을 모델링하고, 예측 성능이 기준치를 초과하는 경우, 학습된 사용자 및 콘텐츠 임베딩과, 학습된 예측 모델을 저장한다. 즉, 학습부(250)는 예측한 전체 다음 상호작용의 개수에 대한 예측을 맞춘 다음 상호작용의 개수의 비율이 기준치를 초과하는지 여부를 판단하고, 예측한 전체 다음 상호작용의 개수에 대한 예측을 맞춘 다음 상호작용의 개수의 비율이 기준치를 초과하는 경우, 학습된 사용자 및 콘텐츠 임베딩과, 학습된 예측 모델을 저장할 수 있다.The learning unit 250 embeds the user and content based on the user and content interaction information and metadata, models the prediction of the next interaction, and when the prediction performance exceeds the reference value, the learned user and content embedding and , and store the learned predictive model. That is, the learning unit 250 matches the prediction of the predicted total number of next interactions, then determines whether the ratio of the number of interactions exceeds a reference value, and performs the prediction of the predicted total number of next interactions. When the ratio of the number of interactions after matching exceeds the reference value, the learned user and content embeddings and the learned predictive model may be stored.

도 3은 본 발명의 실시예에 따른 추천부 내부의 개략적인 구성을 나타낸 블럭 구성도이다.3 is a block diagram showing a schematic configuration of the inside of a recommendation unit according to an embodiment of the present invention.

도 3을 참조하면, 본 발명에 따른 추천부(120)는 시간차 계산부(310), 사용자 투영부(320), 다음 콘텐츠 예측부(330), 벡터 거리 계산부(340), 및 하위 추천부(350)를 포함할 수 있다.Referring to FIG. 3 , the recommendation unit 120 according to the present invention includes a time difference calculation unit 310 , a user projection unit 320 , a next content prediction unit 330 , a vector distance calculation unit 340 , and a sub-recommendation unit. (350).

시간차 계산부(310)는 이전 상호작용과 사용자의 현재시간 간의 시간차를 계산한다. 이는 사용자가 제1 콘텐츠, 제2 콘텐츠, 및 제3 콘텐츠를 연달아 보고 나서, 한참 지난 후에 제4 콘텐츠를 본 경우, 인공신경망을 다르게 학습시키기 위해서이다. 즉, 인공신경망을 학습시킴에 있어 제4 콘텐츠를 배제시키기 위함이다.The time difference calculator 310 calculates a time difference between the previous interaction and the user's current time. This is to train the artificial neural network differently when the user views the first content, the second content, and the third content in succession and then views the fourth content after a long time. That is, it is to exclude the fourth content from training the artificial neural network.

사용자 투영부(320)는 특정 사용자 ID에 해당하는 사용자 임베딩을 불러온다.The user projection unit 320 calls a user embedding corresponding to a specific user ID.

다음 콘텐츠 예측부(330)는 특정 사용자의 현재시간에서의 임베딩을 추정하고, 추정된 특정 사용자의 현재시간에서의 임베딩 및 학습된 예측 모델에 기초하여 특정 사용자의 다음 상호작용 임베딩을 예측한다.The next content prediction unit 330 estimates the embedding of the specific user at the current time, and predicts the next interactive embedding of the specific user based on the estimated embedding at the current time of the specific user and the learned prediction model.

벡터 거리 계산부(340)는 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산한다. 즉, 벡터 거리 계산부(340)는 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 벡터 거리를 계산할 수 있다.The vector distance calculator 340 calculates a similarity between the predicted next interactive embedding of a specific user and all the learned content embeddings. That is, the vector distance calculator 340 may calculate a vector distance between the predicted next interactive embedding of a specific user and all the learned content embeddings.

하위 추천부(350)는 학습된 모든 콘텐츠 임베딩 중에 예측된 특정 사용자의 다음 상호작용 임베딩과 유사한 소정의 개수의 콘텐츠를 반환(추천)한다. 즉, 하위 추천부(350)는 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 벡터 거리가 기설정된 기준값 미만인 상위 K개의 콘텐츠를 반환한다.The lower recommendation unit 350 returns (recommends) a predetermined number of contents similar to the predicted next interactive embedding of a specific user among all the learned content embeddings. That is, the lower recommendation unit 350 returns the top K contents in which the vector distance between the predicted next interactive embedding of a specific user and all the learned content embeddings is less than a preset reference value.

도 4를 참조하면, 개인화 추천 시스템(100)의 기능을 실현 가능한 하드웨어에 대해서 설명한다. 도 4는 본 발명의 실시 형태에 관한 개인화 추천 시스템의 기능을 실현 가능한 하드웨어의 일례를 도시한 블록도이다.Referring to FIG. 4 , hardware capable of realizing the functions of the personalized recommendation system 100 will be described. 4 is a block diagram showing an example of hardware capable of realizing the function of the personalized recommendation system according to the embodiment of the present invention.

개인화 추천 시스템(100)이 갖는 기능은, 예컨대, 도 4에 도시하는 하드웨어 자원을 이용하여 실현하는 것이 가능하다. 즉, 개인화 추천 시스템(100)이 갖는 기능은, 컴퓨터 프로그램을 이용하여 도 4에 도시하는 하드웨어를 제어함으로써 실현된다.The functions of the personalized recommendation system 100 can be realized using, for example, the hardware resources shown in FIG. 4 . That is, the function of the personalized recommendation system 100 is realized by controlling the hardware shown in Fig. 4 using a computer program.

도 4에 도시한 바와 같이, 이 하드웨어는, 주로, CPU(402), ROM(Read Only Memory)(404), RAM(406), 호스트 버스(408), 및 브리지(410)를 갖는다. 또한, 이 하드웨어는, 외부 버스(412), 인터페이스(414), 입력부(416), 출력부(418), 기억부(420), 드라이브(422), 접속 포트(424), 및 통신부(426)를 갖는다.As shown in FIG. 4 , this hardware mainly includes a CPU 402 , a ROM (Read Only Memory) 404 , a RAM 406 , a host bus 408 , and a bridge 410 . In addition, the hardware includes an external bus 412 , an interface 414 , an input unit 416 , an output unit 418 , a storage unit 420 , a drive 422 , a connection port 424 , and a communication unit 426 . has

CPU(402)는, 예컨대, 연산 처리 장치 또는 제어 장치로서 기능하여, ROM(404), RAM(406), 기억부(420), 또는 리무버블 기록 매체(428)에 기록된 각종 프로그램에 기초하여 각 구성 요소의 동작 전반 또는 그 일부를 제어한다. ROM(404)은, CPU(402)에 판독되는 프로그램이나 연산에 이용하는 데이터 등을 저장하는 기억 장치의 일례이다. RAM(406)에는, 예컨대, CPU(402)에 판독되는 프로그램이나, 그 프로그램을 실행할 때 변화하는 각종 파라미터 등이 일시적 또는 영속적으로 저장된다.The CPU 402 functions, for example, as an arithmetic processing unit or a control unit, based on various programs recorded in the ROM 404 , the RAM 406 , the storage unit 420 , or the removable recording medium 428 . Controls all or part of the operation of each component. The ROM 404 is an example of a storage device that stores a program read by the CPU 402, data used for arithmetic, and the like. In the RAM 406, for example, a program read by the CPU 402, various parameters that change when the program is executed, and the like are temporarily or permanently stored.

이들 요소는, 예컨대, 고속의 데이터 전송이 가능한 호스트 버스(408)를 통해서 서로 접속된다. 한편, 호스트 버스(408)는, 예컨대, 브리지(410)를 통해서 비교적 데이터 전송 속도가 저속인 외부 버스(412)에 접속된다. 또한, 입력부(416)로서는, 예컨대, 마우스, 키보드, 터치 패널, 터치 패드, 버튼, 스위치, 및 레버 등이 이용된다. 또한, 입력부(416)로서는, 적외선이나 그 밖의 전파를 이용하여 제어 신호를 송신하는 것이 가능한 리모트 컨트롤러가 이용될 수 있다.These elements are connected to each other via, for example, a host bus 408 capable of high-speed data transfer. On the other hand, the host bus 408 is connected to an external bus 412 having a relatively low data transfer rate, for example, via a bridge 410 . In addition, as the input part 416, a mouse, a keyboard, a touch panel, a touch pad, a button, a switch, a lever, etc. are used, for example. Also, as the input unit 416, a remote controller capable of transmitting a control signal using infrared or other radio waves may be used.

출력부(418)로서는, 예컨대, CRT(Cathode Ray Tube), LCD(Liquid Crystal Display), PDP(Plasma Display Panel), 또는 ELD(Electro-Luminescence Display) 등의 디스플레이 장치가 이용될 수 있다. 또한, 출력부(418)로서, 스피커나 헤드폰 등의 오디오 출력 장치, 또는 프린터 등이 이용될 수 있다.As the output unit 418 , for example, a display device such as a cathode ray tube (CRT), a liquid crystal display (LCD), a plasma display panel (PDP), or an electro-luminescence display (ELD) may be used. Also, as the output unit 418, an audio output device such as a speaker or headphones, or a printer may be used.

기억부(420)는, 각종 데이터를 저장하기 위한 장치이다. 기억부(420)로서는, 예컨대, HDD 등의 자기 기억 디바이스가 이용된다. 또한, 기억부(420)로서, SSD(Solid State Drive)나 RAM 디스크 등의 반도체 기억 디바이스, 광기억 디바이스, 또는 광자기 기억 디바이스 등이 이용되어도 된다.The storage unit 420 is a device for storing various types of data. As the storage unit 420, for example, a magnetic storage device such as an HDD is used. As the storage unit 420 , a semiconductor storage device such as an SSD (Solid State Drive) or a RAM disk, an optical storage device, or a magneto-optical storage device may be used.

드라이브(422)는, 착탈 가능한 기록매체인 리무버블 기록 매체(428)에 기록된 정보를 판독하거나, 또는 리무버블 기록 매체(428)에 정보를 기록하는 장치이다. 리무버블 기록 매체(428)로서는, 예컨대, 자기 디스크, 광디스크, 광자기 디스크, 또는 반도체 메모리 등이 이용된다. 또한, 리무버블 기록 매체(428)에는, 개인화 추천 시스템(100)의 동작을 규정하는 프로그램이 저장될 수 있다.The drive 422 is a device that reads information recorded on the removable recording medium 428 that is a removable recording medium or writes information into the removable recording medium 428 . As the removable recording medium 428, for example, a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is used. Also, in the removable recording medium 428 , a program defining the operation of the personalized recommendation system 100 may be stored.

접속 포트(424)는, 예컨대, USB(Universal Serial Bus) 포트, IEEE 1394 포트, SCSI(Small Computer System Interface), RS-232C 포트, 또는 광오디오 단자 등, 외부 접속 기기(430)를 접속하기 위한 포트이다. 외부 접속 기기(430)로서는, 예컨대, 프린터 등이 이용된다.Connection port 424 is, for example, a USB (Universal Serial Bus) port, IEEE 1394 port, SCSI (Small Computer System Interface), RS-232C port, or an optical audio terminal, such as an external connection device 430 for connecting it's a port As the externally connected device 430, for example, a printer or the like is used.

통신부(426)는, 네트워크(432)에 접속하기 위한 통신 디바이스이다. 통신부(426)로서는, 예컨대, 유선 또는 무선 LAN용 통신 회로, WUSB(Wireless USB)용 통신 회로, 휴대 전화 네트워크용 통신 회로 등이 이용될 수 있다. 네트워크(432)는, 예컨대, 유선 또는 무선에 의해 접속된 네트워크이다.The communication unit 426 is a communication device for connecting to the network 432 . As the communication unit 426, for example, a communication circuit for wired or wireless LAN, a communication circuit for WUSB (Wireless USB), a communication circuit for a cellular phone network, or the like can be used. The network 432 is, for example, a network connected by wire or wireless.

이상, 개인화 추천 시스템(100)의 하드웨어에 대해서 설명하였다. 또한, 상술한 하드웨어는 일례이며, 일부의 요소를 생략하는 변형이나, 새로운 요소를 추가하는 변형 등이 가능하다.The hardware of the personalized recommendation system 100 has been described above. In addition, the above-mentioned hardware is an example, and a deformation|transformation which omits some elements, a deformation|transformation which adds new elements, etc. are possible.

도 5는 본 발명의 실시예에 따른 인공신경망을 학습시키는 방법을 나타낸 흐름도이다.5 is a flowchart illustrating a method for learning an artificial neural network according to an embodiment of the present invention.

도 5를 참조하면, 개인화 추천 시스템(100)은 사용자 및 콘텐츠의 메타데이터를 임베딩을 위한 입력으로 가공하고(S510), 사용자와 콘텐츠 간의 상호작용 정보를 임베딩을 위한 입력으로 가공한다(S520). 단계 S510과 단계 S520은 동시에 수행되거나, 순차적으로 수행될 수 있다.Referring to FIG. 5 , the personalized recommendation system 100 processes metadata of a user and content as an input for embedding ( S510 ), and processes interaction information between the user and content as an input for embedding ( S520 ). Steps S510 and S520 may be performed simultaneously or sequentially.

개인화 추천 시스템(100)은 사용자 및 콘텐츠의 상호작용 정보와 메타데이터를 기반으로 사용자 및 콘텐츠를 임베딩하고 다음 상호작용의 예측을 모델링한다(S530). 이때, 개인화 추천 시스템(100)은 JODIE 및 DeepCoevolve 중 어느 하나를 이용하여 다음 상호작용의 예측을 모델링할 수 있다.The personalized recommendation system 100 embeds the user and the content based on the user and content interaction information and metadata, and models the prediction of the next interaction ( S530 ). In this case, the personalized recommendation system 100 may model the prediction of the next interaction using any one of JODIE and DeepCoevolve.

개인화 추천 시스템(100)은 예측 모델의 예측 성능이 기준치를 초과하는지 여부를 판단한다(S540). 구체적으로는, 개인화 추천 시스템(100)은 예측한 전체 다음 상호작용의 개수에 대한 예측을 맞춘 다음 상호작용의 개수의 비율이 기준치를 초과하는지 여부를 판단한다. 개인화 추천 시스템(100)은 예측 성능이 기준치 이하인 경우, 단계 S510 및 단계 S520으로 돌아간다.The personalized recommendation system 100 determines whether the prediction performance of the prediction model exceeds a reference value ( S540 ). Specifically, the personalized recommendation system 100 matches the prediction to the predicted total number of next interactions and then determines whether the ratio of the number of next interactions exceeds a reference value. The personalized recommendation system 100 returns to steps S510 and S520 when the prediction performance is less than or equal to the reference value.

개인화 추천 시스템(100)은 예측 성능이 기준치를 초과하는 경우(즉, 예측 모델을 신뢰하는 경우), 학습된 사용자 및 콘텐츠 임베딩을 저장하고, 학습된 예측 모델을 저장한다(S550).The personalized recommendation system 100 stores the learned user and content embeddings when the prediction performance exceeds the reference value (ie, when the prediction model is trusted), and stores the learned prediction model ( S550 ).

도 6은 본 발명의 실시예에 따른 미래 상호작용 예측 기반의 개인화 추천 방법을 나타낸 흐름도이다.6 is a flowchart illustrating a personalized recommendation method based on future interaction prediction according to an embodiment of the present invention.

본 발명에 따른 미래 상호작용 예측 기반의 개인화 추천 방법은 앞서 도 5에서 학습된 예측 모델을 토대로 사용자에게 콘텐츠를 추천한다.The personalized recommendation method based on future interaction prediction according to the present invention recommends content to a user based on the prediction model learned in FIG. 5 above.

도 6을 참조하면, 개인화 추천 시스템(100)은 특정 사용자 ID에 해당하는 사용자 임베딩을 불러오고(S610), 이전 상호작용과 사용자의 현재시간 간의 시간차를 계산한다(S620).Referring to FIG. 6 , the personalized recommendation system 100 calls a user embedding corresponding to a specific user ID (S610), and calculates a time difference between the previous interaction and the user's current time (S620).

개인화 추천 시스템(100)은 특정 사용자의 현재시간에서의 임베딩을 추정한다(S630). 이와 동시에, 개인화 추천 시스템(100)은 앞서 도 5에서 훈련된 예측 모델을 불러온다.The personalized recommendation system 100 estimates embedding of a specific user at the current time (S630). At the same time, the personalized recommendation system 100 calls up the predictive model trained in FIG. 5 .

개인화 추천 시스템(100)은 추정된 특정 사용자의 현재시간에서의 임베딩 및 학습된 예측 모델에 기초하여 특정 사용자의 다음 상호작용 임베딩을 예측한다(S640). 이와 동시에, 개인화 추천 시스템(100)은 앞서 도 5에서 학습된 모든 콘텐츠 임베딩을 불러온다.The personalized recommendation system 100 predicts the next interactive embedding of a specific user based on the estimated embedding at the current time of the specific user and the learned prediction model (S640). At the same time, the personalized recommendation system 100 calls all content embeddings previously learned in FIG. 5 .

개인화 추천 시스템(100)은 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산한다(S650). 즉, 개인화 추천 시스템(100)은 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 벡터 거리를 계산한다. 이때, 개인화 추천 시스템(100)은 L2 Distance, Cosine Similarity, 및 LSH(Locality Sensitive Hashing) 중 어느 하나를 이용하여 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 벡터 거리를 계산할 수 있다.The personalized recommendation system 100 calculates a similarity between the predicted next interactive embedding of a specific user and all the learned content embeddings (S650). That is, the personalized recommendation system 100 calculates the vector distance between the predicted next interaction embedding of a specific user and all the learned content embeddings. In this case, the personalized recommendation system 100 calculates the vector distance between the embedding of the next interaction of a specific user predicted using any one of L2 Distance, Cosine Similarity, and LSH (Locality Sensitive Hashing) and all the learned content embeddings. .

개인화 추천 시스템(100)은 학습된 모든 콘텐츠 임베딩 중에 예측된 특정 사용자의 다음 상호작용 임베딩과 유사한 소정의 개수의 콘텐츠를 반환(추천)한다(S660). 즉, 개인화 추천 시스템(100)은 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 벡터 거리가 기설정된 기준값 미만인 상위 K개의 콘텐츠를 반환한다.The personalized recommendation system 100 returns (recommends) a predetermined number of contents similar to the predicted next interactive embedding of a specific user among all the learned content embeddings (S660). That is, the personalized recommendation system 100 returns the top K contents in which the vector distance between the predicted next interactive embedding of a specific user and all the learned content embeddings is less than a preset reference value.

전술한 방법은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(Firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.The above-described method may be implemented through various means. For example, embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.

하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로컨트롤러 및 마이크로프로세서 등에 의해 구현될 수 있다.In the case of implementation by hardware, the method according to embodiments of the present invention may include one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), and Programmable Logic Devices (PLDs). , FPGAs (Field Programmable Gate Arrays), processors, controllers, microcontrollers and microprocessors, and the like.

펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리 유닛은 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.In the case of implementation by firmware or software, the method according to the embodiments of the present invention may be implemented in the form of a module, procedure, or function that performs the functions or operations described above. The software code may be stored in the memory unit and driven by the processor. The memory unit may be located inside or outside the processor, and may transmit/receive data to and from the processor by various well-known means.

도 7은 기존의 개인화 추천 방식과 본 발명의 개인화 추천 방식을 비교 설명하기 위한 도면이다.7 is a diagram for explaining a comparison between the existing personalized recommendation method and the personalized recommendation method of the present invention.

도 7의 (a)를 참조하면, 기존의 개인화 추천 방식은 시청 순서와 시간 간격을 고려하지 않기 때문에, 사용자들이 같은 작품 구성을 시청한 경우, 같은 결과를 추천한다.Referring to FIG. 7A , since the existing personalized recommendation method does not consider the viewing order and time interval, the same result is recommended when users watch the same composition of the work.

도 7의 (b)를 참조하면, 본 발명에 따른 개인화 추천 방식은 시청 순서와 시간 간격, 즉, 개인별 상호작용 시퀀스를 반영하기 때문에, 사용자들이 같은 작품 구성을 시청하더라도 서로 다른 결과를 추천한다.Referring to FIG. 7B , since the personalized recommendation method according to the present invention reflects the viewing order and time interval, that is, the individual interaction sequence, different results are recommended even if users watch the same composition of the work.

도 8은 본 발명에 따른 상호작용 정보를 나타낸 도면이다.8 is a diagram illustrating interaction information according to the present invention.

도 8을 참조하면, 상호작용 정보는 사용자 ID, 콘텐츠 ID, 타임스탬프, 및 상호작용 종류를 포함할 수 있다. 여기서, 상호작용 종류는 시청, 구매, 찜, 공유하기, 및 View page 정보를 포함할 수 있다.Referring to FIG. 8 , interaction information may include a user ID, a content ID, a timestamp, and an interaction type. Here, the interaction type may include viewing, purchasing, wishing, sharing, and view page information.

도 9는 본 발명에 따른 메타데이터를 나타낸 도면이다.9 is a diagram illustrating metadata according to the present invention.

도 9의 (a)를 참조하면, 사용자의 메타데이터는 사용자의 ID, 연령, 성별, 주소, 및 SNS 기록 중 적어도 하나를 포함한다.Referring to FIG. 9A , the user's metadata includes at least one of the user's ID, age, gender, address, and SNS record.

도 9의 (b)를 참조하면, 콘텐츠의 메타데이터는 콘텐츠의 ID 및 장르를 포함한다.Referring to FIG. 9B , the metadata of the content includes the ID and genre of the content.

이상에서 본 명세서에 개시된 실시예들을 첨부된 도면들을 참조로 설명하였다. 이와 같이 각 도면에 도시된 실시예들은 한정적으로 해석되면 아니되며, 본 명세서의 내용을 숙지한 당업자에 의해 서로 조합될 수 있고, 조합될 경우 일부 구성 요소들은 생략될 수도 있는 것으로 해석될 수 있다.The embodiments disclosed herein have been described above with reference to the accompanying drawings. As such, the embodiments shown in each drawing should not be construed as being limited, and may be combined with each other by those skilled in the art after reading the content of the present specification, and when combined, it may be interpreted that some components may be omitted.

여기서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 본 명세서에 개시된 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.Here, the terms or words used in the present specification and claims should not be construed as being limited to conventional or dictionary meanings, but should be interpreted as meanings and concepts consistent with the technical idea disclosed in the present specification.

따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 명세서에 개시된 실시예에 불과할 뿐이고, 본 명세서에 개시된 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.Therefore, the embodiments described in the present specification and the configurations shown in the drawings are only the embodiments disclosed in the present specification, and do not represent all the technical ideas disclosed in the present specification, so various equivalents that can be substituted for them at the time of the present application It should be understood that there may be water and variations.

110: 상호작용 임베딩부 120: 추천부
210: 사용자-콘텐츠 상호작용 DB 220: 콘텐츠 메타데이터 DB
230: 데이터 로딩부 240: 메타데이터 전처리부
250: 학습부 310: 시간차 계산부
320: 사용자 투영부 330: 다음 콘텐츠 예측부
340: 벡터 거리 계산부 350: 하위 추천부
110: interactive embedding unit 120: recommendation unit
210: user-content interaction DB 220: content metadata DB
230: data loading unit 240: metadata preprocessor
250: learning unit 310: time difference calculation unit
320: user projection unit 330: next content prediction unit
340: vector distance calculation unit 350: sub-recommended unit

Claims (9)

개인화 추천 시스템이, 사용자 및 콘텐츠의 메타데이터와, 사용자와 콘텐츠 간의 상호작용 정보를 입력하여 인공신경망을 학습시키는 단계;
상기 개인화 추천 시스템이, 특정 사용자 ID에 해당하는 사용자 임베딩을 불러오는 단계;
상기 개인화 추천 시스템이, 특정 사용자의 현재시간에서의 임베딩을 추정하는 단계;
상기 개인화 추천 시스템이, 추정된 특정 사용자의 현재시간에서의 임베딩 및 학습된 인공신경망에 기초하여 상기 특정 사용자의 다음 상호작용 임베딩을 예측하는 단계;
상기 개인화 추천 시스템이, 예측된 특정 사용자의 다음 상호작용 임베딩과 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산하는 단계; 및
상기 개인화 추천 시스템이, 상기 학습된 모든 콘텐츠 임베딩 중에 상기 예측된 특정 사용자의 다음 상호작용 임베딩과 유사한 소정의 개수의 콘텐츠를 반환하는 단계;
를 포함하고,
상기 인공신경망을 학습시키는 단계는,
상기 개인화 추천 시스템이, 상기 사용자 및 콘텐츠의 메타데이터와, 상기 사용자와 콘텐츠 간의 상호작용 정보를 임베딩을 위한 입력으로 가공하는 단계;
상기 개인화 추천 시스템이, 상기 사용자 및 콘텐츠의 상호작용 정보와 메타데이터를 기반으로 사용자 및 콘텐츠를 임베딩하고 다음 상호작용의 예측을 모델링하는 단계;
상기 개인화 추천 시스템이, 예측한 전체 다음 상호작용의 개수에 대한 예측을 맞춘 다음 상호작용의 개수의 비율이 기준치를 초과하는지 여부를 판단하는 단계; 및
상기 개인화 추천 시스템이, 상기 예측한 전체 다음 상호작용의 개수에 대한 예측을 맞춘 다음 상호작용의 개수의 비율이 상기 기준치를 초과하는 경우, 학습된 사용자 및 콘텐츠 임베딩과, 학습된 예측 모델을 저장하는 단계;
를 포함하는 것을 특징으로 하는 미래 상호작용 예측 기반의 개인화 추천 방법.
training, by the personalized recommendation system, an artificial neural network by inputting metadata of a user and content, and interaction information between the user and content;
retrieving, by the personalized recommendation system, a user embedding corresponding to a specific user ID;
estimating, by the personalized recommendation system, embedding of a specific user at a current time;
predicting, by the personalized recommendation system, the next interactive embedding of the specific user based on the estimated embedding at the current time of the specific user and the learned artificial neural network;
calculating, by the personalized recommendation system, a degree of similarity between the predicted next interactive embedding of a specific user and all learned content embeddings; and
returning, by the personalized recommendation system, a predetermined number of content similar to the predicted next interactive embedding of the specific user among all the learned content embeddings;
including,
The step of learning the artificial neural network is,
processing, by the personalized recommendation system, metadata of the user and content, and interaction information between the user and content as input for embedding;
embedding, by the personalized recommendation system, a user and content based on the user and content interaction information and metadata, and modeling a prediction of a next interaction;
determining, by the personalized recommendation system, whether a ratio of the number of next interactions after matching the prediction to the predicted total number of next interactions exceeds a reference value; and
When the personalized recommendation system matches the prediction of the predicted total number of next interactions, and the ratio of the number of interactions exceeds the reference value, the learned user and content embedding and the learned prediction model are stored step;
A personalized recommendation method based on future interaction prediction, comprising:
제1항에 있어서,
상기 상호작용 정보는 사용자와 콘텐츠의 상호작용의 발생 순서와 발생 시간 간격으로 구성되는 상호작용 시퀀스를 나타내는 것을 특징으로 하는 미래 상호작용 예측 기반의 개인화 추천 방법.
The method of claim 1,
The personalization recommendation method based on future interaction prediction, characterized in that the interaction information indicates an interaction sequence consisting of an occurrence sequence and an occurrence time interval of interaction between the user and the content.
제1항에 있어서,
상기 사용자의 메타데이터는 사용자의 ID, 연령, 성별, 주소, 및 SNS 기록 중 적어도 하나를 포함하는 것을 특징으로 하는 미래 상호작용 예측 기반의 개인화 추천 방법.
The method of claim 1,
The user's metadata includes at least one of the user's ID, age, gender, address, and SNS record.
제1항에 있어서,
상기 콘텐츠의 메타데이터는 콘텐츠의 ID 및 장르를 포함하는 것을 특징으로 하는 미래 상호작용 예측 기반의 개인화 추천 방법.
The method of claim 1,
The metadata of the content is a personalized recommendation method based on future interaction prediction, characterized in that it includes the ID and genre of the content.
삭제delete 제1항에 있어서, 상기 다음 상호작용의 예측을 모델링하는 단계에서,
상기 개인화 추천 시스템은, JODIE 및 DeepCoevolve 중 어느 하나를 이용하여 다음 상호작용의 예측을 모델링하는 것을 특징으로 하는 미래 상호작용 예측 기반의 개인화 추천 방법.
The method of claim 1 , wherein modeling the prediction of the next interaction comprises:
The personalized recommendation system is a future interaction prediction-based personalized recommendation method, characterized in that the prediction of the next interaction is modeled using any one of JODIE and DeepCoevolve.
제1항에 있어서, 상기 사용자 임베딩을 불러오는 단계는,
상기 개인화 추천 시스템이, 이전 상호작용과 사용자의 현재시간 간의 시간차를 계산하는 단계;
를 포함하는 것을 특징으로 하는 미래 상호작용 예측 기반의 개인화 추천 방법.
According to claim 1, wherein the step of calling the user embedding,
calculating, by the personalized recommendation system, a time difference between a previous interaction and the current time of the user;
A personalized recommendation method based on future interaction prediction, comprising:
제1항에 있어서, 상기 유사도를 계산하는 단계에서,
상기 개인화 추천 시스템은, L2 Distance, Cosine Similarity, 및 LSH(Locality Sensitive Hashing) 중 어느 하나를 이용하여 상기 예측된 특정 사용자의 다음 상호작용 임베딩과 상기 학습된 모든 콘텐츠 임베딩 간의 유사도를 계산하는 것을 특징으로 하는 미래 상호작용 예측 기반의 개인화 추천 방법.
According to claim 1, In the step of calculating the similarity,
The personalized recommendation system uses any one of L2 Distance, Cosine Similarity, and Locality Sensitive Hashing (LSH) to calculate the similarity between the predicted next interaction embedding of the specific user and all the learned content embeddings, characterized in that A personalized recommendation method based on future interaction prediction.
삭제delete
KR1020200125596A 2020-09-28 2020-09-28 Personalized recommendation method and system based on future interaction prediction KR102406634B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200125596A KR102406634B1 (en) 2020-09-28 2020-09-28 Personalized recommendation method and system based on future interaction prediction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200125596A KR102406634B1 (en) 2020-09-28 2020-09-28 Personalized recommendation method and system based on future interaction prediction

Publications (2)

Publication Number Publication Date
KR20220042598A KR20220042598A (en) 2022-04-05
KR102406634B1 true KR102406634B1 (en) 2022-06-08

Family

ID=81181717

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200125596A KR102406634B1 (en) 2020-09-28 2020-09-28 Personalized recommendation method and system based on future interaction prediction

Country Status (1)

Country Link
KR (1) KR102406634B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116645174B (en) * 2023-07-27 2023-10-17 山东省人工智能研究院 Personalized recommendation method based on decoupling multi-behavior characterization learning

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130009360A (en) 2011-07-15 2013-01-23 박용구 Method and system for providing movie recommendation service
EP3825870A1 (en) * 2016-05-18 2021-05-26 Rovi Guides, Inc. Recommending media content based on the trajectory of the user
KR20190070625A (en) * 2017-12-13 2019-06-21 한국전자통신연구원 Method and apparatus for recommending item using metadata
KR102137887B1 (en) 2018-10-30 2020-07-24 세종대학교산학협력단 Vod contents recommendation server and method for iptv to combine the preference information of the iptv and ott services

Also Published As

Publication number Publication date
KR20220042598A (en) 2022-04-05

Similar Documents

Publication Publication Date Title
CN109240576B (en) Image processing method and device in game, electronic device and storage medium
KR102462365B1 (en) Method and apparatus for predicting text input based on user demographic information and context information
US20210182504A1 (en) Text translation method and apparatus, and storage medium
US20210240494A1 (en) Systems and methods for proactively providing recommendations to a user of a computing device
CN105009064B (en) Use the touch keyboard of language and spatial model
JP6492069B2 (en) Environment-aware interaction policy and response generation
WO2017197806A1 (en) Method for providing intelligent service, intelligent service system and intelligent terminal based on artificial intelligence
CN105190489A (en) Language model dictionaries for text predictions
CN104685451A (en) Posture-adaptive selection
CN111566646B (en) Electronic device for obfuscating and decoding data and method for controlling the same
US20200101383A1 (en) Method and apparatus for recognizing game command
JP2016506564A (en) Swipe stroke input and continuous handwriting
US20190378506A1 (en) Method and apparatus for synthesizing adaptive data visualizations
US20150169138A1 (en) Multi-modal content consumption model
CN112333596A (en) Earphone equalizer adjusting method, device, server and medium
KR102406634B1 (en) Personalized recommendation method and system based on future interaction prediction
KR102443786B1 (en) Method and apparatus for forecasting success of contents using artificial intelligence
KR102443782B1 (en) Method and system for predicting target user based on future interaction prediction
CN114092608B (en) Expression processing method and device, computer readable storage medium and electronic equipment
CN113205189B (en) Method for training prediction model, prediction method and device
CN116401522A (en) Financial service dynamic recommendation method and device
KR102430989B1 (en) Method, device and system for predicting content category based on artificial intelligence
CN109657153A (en) It is a kind of for determining the method and apparatus of the association financial information of user
US20220269935A1 (en) Personalizing Digital Experiences Based On Predicted User Cognitive Style
CN108984680B (en) Information recommendation method and device, server and storage medium

Legal Events

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