KR102342492B1 - Method and Apparatus for Deep Learning Based Content Recommendation - Google Patents

Method and Apparatus for Deep Learning Based Content Recommendation Download PDF

Info

Publication number
KR102342492B1
KR102342492B1 KR1020200037393A KR20200037393A KR102342492B1 KR 102342492 B1 KR102342492 B1 KR 102342492B1 KR 1020200037393 A KR1020200037393 A KR 1020200037393A KR 20200037393 A KR20200037393 A KR 20200037393A KR 102342492 B1 KR102342492 B1 KR 102342492B1
Authority
KR
South Korea
Prior art keywords
information
customer
specific
content
vector
Prior art date
Application number
KR1020200037393A
Other languages
Korean (ko)
Other versions
KR20210120545A (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 KR1020200037393A priority Critical patent/KR102342492B1/en
Publication of KR20210120545A publication Critical patent/KR20210120545A/en
Application granted granted Critical
Publication of KR102342492B1 publication Critical patent/KR102342492B1/en

Links

Images

Classifications

    • 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
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2542Management at additional data server, e.g. shopping server, rights management server for selling goods, e.g. TV shopping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25883Management of end-user data being end-user demographical data, e.g. age, family status or address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • 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/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Graphics (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

심층 학습에 기반한 컨텐츠 추천 방법이 제공된다. 본 방법은, 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 심층 학습 모듈로 입력함으로써 상기 특정 컨텐츠에 대한 재시청 확률값 제공하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠이며, 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 -, 및 상기 재시청 확률값에 기초하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계를 포함할 수 있다.A content recommendation method based on deep learning is provided. The method includes the steps of providing a re-viewing probability value for the specific content by inputting input information including information about the specific customer's customer information and specific content information into the deep learning module - The customer information of the specific customer is the specific customer's It includes viewing history information, evaluation history information, and re-viewing history information, wherein the specific content is a content that has been viewed by the specific customer, and the re-viewing probability value represents a probability that the specific customer will re-view the specific content and determining whether to recommend the specific content to the specific customer based on the re-viewing probability value.

Description

심층 학습에 기반한 컨텐츠 추천 방법 및 장치{Method and Apparatus for Deep Learning Based Content Recommendation}Method and Apparatus for Deep Learning Based Content Recommendation

본 발명은 심층 학습에 기반한 컨텐츠 추천 기술에 관한 것이다.The present invention relates to a content recommendation technology based on deep learning.

근래에 들어 인터넷(Internet)의 활용이 일상화됨에 따라 홈 네트워크 시대가 도래하였다. 이러한 홈 네트워크를 실현한 구체적인 한 예로서 IPTV(Internet Protocol Television) 서비스를 들 수 있다. IPTV 서비스는 인터넷을 이용하여 제공되는 양방향 TV 서비스로서, 인터넷에 연결된 셋탑박스(set-top box)를 이용하여 컨텐츠 제공 서비스 사업자가 운용하는 컨텐츠 제공 서버와 연결하여 VOD(video on demand) 컨텐츠와 같은 컨텐츠를 다운로드 방식 또는 스트리밍 방식으로 내려 받아 시청할 수 있도록 한 서비스이다. IPTV 서비스는 일반 케이블 방송과는 달리 시청자가 자신이 편리한 시간에 보고 싶은 프로그램을 선별하여 볼 수 있도록 한다는 점에서 시청자에게는 다양한 볼거리와 편의성을 제공하는 한편 사업자에게는 가입자 별로 일반 케이블 방송사가 징수하는 월정액 이상의 매출을 올릴 수 있는 수익 모델이 되고 있다. 따라서 IPTV 서비스 사업자의 입장에서는 시청자에게 다양한 컨텐츠를 다양한 방식으로 마케팅하여 재시청을 독려하는 것이 지대한 관심사가 되고 있다.In recent years, as the use of the Internet has become commonplace, the era of home networks has arrived. As a specific example of realizing such a home network, an Internet Protocol Television (IPTV) service is provided. The IPTV service is an interactive TV service provided using the Internet, and is connected to a content providing server operated by a content providing service provider using a set-top box connected to the Internet, such as video on demand (VOD) content. It is a service that allows you to download and watch content in a download or streaming manner. Unlike general cable broadcasting, IPTV service provides a variety of attractions and convenience to viewers in that it allows viewers to select and watch programs they want to watch at a convenient time. It is becoming a revenue model that can increase sales. Therefore, from the perspective of IPTV service providers, marketing various contents to viewers in various ways to encourage re-watching is of great interest.

본 발명의 과제는 고객 개개인의 시청 이력에 관한 정보를 바탕으로 고객 개개인 별로 재시청할 가능성이 높은 컨텐츠를 예측하여 추천함으로써 컨텐츠 매출을 제고할 수 있도록 한 자동화된 컨텐츠 추천 기술을 제공하는 것이다.An object of the present invention is to provide an automated content recommendation technology capable of increasing content sales by predicting and recommending content that is highly likely to be re-viewed for each individual customer based on information about each customer's viewing history.

본 발명이 해결하고자 하는 과제들은 이상에서 언급한 과제들에 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.

일 측면에서, 심층 학습(Deep Learning)에 기반한 컨텐츠 추천 방법이 제공된다. 본 방법은, 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 수신하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠임 -, 상기 입력 정보를 입력 계층으로 입력하여 임베딩(embedding) 처리를 수행함으로써 입력 벡터들을 출력하는 단계, 상기 입력 벡터들을 심층 신경망(Deep Neural Network: DNN) 계층으로 입력하여 복수의 출력 값을 제공하는 단계, 상기 복수의 출력 값을 시그모이드 함수 계층(Sigmoid Function Layer)으로 입력하여 상기 특정 컨텐츠에 대한 재시청 확률값을 제공하는 단계 - 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 -, 및 상기 재시청 확률값을 필터 계층으로 입력하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계를 포함할 수 있다.In one aspect, a content recommendation method based on deep learning is provided. The method includes the steps of receiving input information including customer information of a specific customer and information about specific content, wherein the customer information of the specific customer includes viewing history information, evaluation history information, and re-viewing history information of the specific customer and, the specific content is content with a history of watching by the specific customer - outputting input vectors by inputting the input information into an input layer and performing an embedding process, and converting the input vectors into a deep neural network ( A step of providing a plurality of output values by input to a Deep Neural Network: DNN layer, providing a replay probability value for the specific content by inputting the plurality of output values into a sigmoid function layer - The re-viewing probability value represents a probability that the specific customer will re-view the specific content; and determining whether to recommend the specific content to the specific customer by inputting the re-viewing probability value into a filter layer. can

일 실시예에서, 상기 특정 고객의 고객 정보는 상기 특정 고객의 고객 ID(Identification) 및 프로필 정보를 더 포함한다.In one embodiment, the customer information of the specific customer further includes a customer ID (Identification) and profile information of the specific customer.

일 실시예에서, 상기 특정 고객의 프로필 정보는 상기 특정 고객의 가입 정보, 상기 특정 고객의 나이에 관한 정보 및 상기 특정 고객의 성별에 관한 정보를 포함한다.In an embodiment, the profile information of the specific customer includes subscription information of the specific customer, information about the age of the specific customer, and information about the gender of the specific customer.

일 실시예에서, 상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 ID를 포함한다.In an embodiment, the information about the specific content includes a content ID of the specific content.

일 실시예에서, 상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 메타 정보(content meta information)를 더 포함한다.In an embodiment, the information about the specific content further includes content meta information of the specific content.

일 실시예에서, 상기 특정 컨텐츠는 VOD(video on demand) 컨텐츠이다.In one embodiment, the specific content is video on demand (VOD) content.

일 실시예에서, 상기 입력 정보를 입력 계층으로 입력하여 임베딩(embedding) 처리를 수행함으로써 입력 벡터들을 출력하는 단계는, 상기 특정 고객의 시청 이력 정보를 인코딩하여 제1 벡터를 제공하는 단계, 상기 특정 고객의 평가 이력 정보를 인코딩하여 제2 벡터를 제공하는 단계, 상기 특정 고객의 재시청 이력 정보를 인코딩하여 제3 벡터를 제공하는 단계, 상기 제1 벡터와 상기 제3 벡터를 외적하여 제4 벡터를 제공하는 단계, 상기 제2 벡터와 상기 제3 벡터를 외적하여 제5 벡터를 제공하는 단계, 상기 제1 벡터와 상기 제3 벡터를 내적하여 제1 스칼라 값을 제공하는 단계, 상기 제2 벡터와 상기 제3 벡터를 내적하여 제2 스칼라 값을 제공하는 단계 및 상기 제4 벡터, 상기 제5 벡터, 상기 제1 스칼라 값 및 상기 제2 스칼라 값을 이용하여 재시청 의사 특징 벡터를 생성하는 단계를 포함한다.In one embodiment, the step of outputting input vectors by inputting the input information into an input layer and performing an embedding process includes: encoding the viewing history information of the specific customer to provide a first vector; providing a second vector by encoding evaluation history information of a customer; providing a third vector by encoding re-viewing history information of the specific customer; and a fourth vector by cross product of the first vector and the third vector providing a fifth vector by cross product of the second vector and the third vector, providing a first scalar value by dot product of the first vector and the third vector, and the second vector and providing a second scalar value by dot product with the third vector, and generating a replay pseudo feature vector using the fourth vector, the fifth vector, the first scalar value, and the second scalar value. includes

일 실시예에서, 상기 방법은, 상기 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 수신하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보, 재시청 이력 정보 및 프로필 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠임 - 이전에, 상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층을 학습 데이터로 학습시키는 단계를 더 포함한다.In one embodiment, the method comprises the steps of: receiving input information including information on customer information and specific content of the specific customer, wherein the customer information of the specific customer includes viewing history information, evaluation history information, and information on the specific customer; It includes re-viewing history information and profile information, and the specific content is a content that has been viewed by the specific customer. It further includes the step of making

일 실시예에서, 상기 학습 데이터는 고객 정보 및 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 포함하고, 상기 고객 정보는 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층은 복수의 입력 노드 및 복수의 출력 노드를 포함하고, 상기 입력 노드들과 상기 출력 노드들 간에는 가중치들이 설정되어 있으며, 상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 계층을 학습 데이터로 학습시키는 단계는, 상기 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 상기 입력 계층으로 입력시켰을 때 상기 시그모이드 함수 계층으로부터 출력되는 재시청 확률값이 선정된 임계값 이상이 되도록 상기 가중치들을 변경하는 단계를 포함한다.In an embodiment, the learning data includes customer information and information about content that the customer has re-viewed, and the customer information includes viewing history information, evaluation history information, and re-viewing history information, and the input The layer, the deep neural network layer, and the sigmoid function layer include a plurality of input nodes and a plurality of output nodes, and weights are set between the input nodes and the output nodes, and the input layer and the deep neural network In the step of learning the layer and the sigmoid layer as learning data, the re-viewing probability value output from the sigmoid function layer when the customer inputs information about the content having a history of re-viewing to the input layer is and changing the weights to be greater than or equal to a predetermined threshold.

일 실시예에서, 상기 복수의 출력 값을 시그모이드 함수 계층(Sigmoid Function Layer)으로 입력하여 상기 특정 컨텐츠에 대한 재시청 확률값을 제공하는 단계 - 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 - 는, 상기 복수의 출력값에 시그모이드 함수를 적용해서 상기 재시청 확률값을 제공하는 단계를 포함한다.In one embodiment, the step of inputting the plurality of output values into a sigmoid function layer to provide a re-viewing probability value for the specific content - The re-viewing probability value is determined by the specific customer selecting the specific content representing the probability of re-viewing includes applying a sigmoid function to the plurality of output values to provide the re-viewing probability value.

일 실시예에서, 상기 재시청 확률값을 필터 계층으로 입력하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계는, 상기 재시청 확률값이 선정된 임계값 이상인 경우 상기 특정 컨텐츠를 상기 특정 고객에게 추천하는 것으로 결정하는 단계를 포함한다.In an embodiment, the determining whether to recommend the specific content to the specific customer by inputting the re-viewing probability value to the filter layer may include selecting the specific content to the specific customer when the re-viewing probability value is greater than or equal to a predetermined threshold value. and deciding to recommend it to

다른 측면에서, 심층 학습에 기반한 컨텐츠 추천 방법이 제공된다. 본 방법은, 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 심층 학습 모듈로 입력함으로써 상기 특정 컨텐츠에 대한 재시청 확률값 제공하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠이며, 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 -, 및 상기 재시청 확률값에 기초하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계를 포함할 수 있다.In another aspect, a content recommendation method based on deep learning is provided. The method includes the steps of providing a re-viewing probability value for the specific content by inputting input information including information about the specific customer's customer information and specific content information into the deep learning module - The customer information of the specific customer is the specific customer's It includes viewing history information, evaluation history information, and re-viewing history information, wherein the specific content is a content that has been viewed by the specific customer, and the re-viewing probability value represents a probability that the specific customer will re-view the specific content and determining whether to recommend the specific content to the specific customer based on the re-viewing probability value.

일 실시예에서, 상기 특정 고객의 고객 정보는 상기 특정 고객의 고객 ID 및 프로필 정보를 더 포함한다.In an embodiment, the customer information of the specific customer further includes a customer ID and profile information of the specific customer.

일 실시예에서, 상기 특정 고객의 프로필 정보는 상기 특정 고객의 가입 정보, 상기 특정 고객의 나이에 관한 정보 및 상기 특정 고객의 성별에 관한 정보를 포함한다.In an embodiment, the profile information of the specific customer includes subscription information of the specific customer, information about the age of the specific customer, and information about the gender of the specific customer.

일 실시예에서, 상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 ID를 포함한다.In an embodiment, the information about the specific content includes a content ID of the specific content.

일 실시예에서, 상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 메타 정보를 더 포함한다.In an embodiment, the information about the specific content further includes content meta information of the specific content.

일 실시예에서, 상기 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 심층 학습 모듈로 입력함으로써 상기 특정 컨텐츠에 대한 재시청 확률값 제공하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠이며, 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 - 는, 상기 특정 고객의 시청 이력 정보를 인코딩하여 제1 벡터를 제공하는 단계, 상기 특정 고객의 평가 이력 정보를 인코딩하여 제2 벡터를 제공하는 단계, 상기 특정 고객의 재시청 이력 정보를 인코딩하여 제3 벡터를 제공하는 단계, 상기 제1 벡터와 상기 제3 벡터를 외적하여 제4 벡터를 제공하는 단계, 상기 제2 벡터와 상기 제3 벡터를 외적하여 제5 벡터를 제공하는 단계, 상기 제1 벡터와 상기 제3 벡터를 내적하여 제1 스칼라 값을 제공하는 단계, 상기 제2 벡터와 상기 제3 벡터를 내적하여 제2 스칼라 값을 제공하는 단계 및 상기 제4 벡터, 상기 제5 벡터, 상기 제1 스칼라 값 및 상기 제2 스칼라 값을 이용하여 재시청 의사 특징 벡터를 생성하는 단계를 포함한다.In one embodiment, the step of providing a re-viewing probability value for the specific content by inputting input information including information about the customer information and the specific content of the specific customer into the deep learning module - The customer information of the specific customer is the specific content It includes a customer's viewing history information, evaluation history information, and re-viewing history information, wherein the specific content is a content that has been viewed by the specific customer, and the re-viewing probability value is a probability that the specific customer will re-view the specific content Representing - is, encoding the viewing history information of the specific customer to provide a first vector, encoding the evaluation history information of the specific customer to provide a second vector, re-viewing history information of the specific customer providing a third vector by encoding; providing a fourth vector by cross-producting the first vector and the third vector; providing a fifth vector by cross-producting the second vector and the third vector; providing a first scalar value by dot product of the first vector and the third vector; providing a second scalar value by dot product of the second vector and the third vector; and the fourth vector and the fifth vector and generating a replay pseudo feature vector by using a vector, the first scalar value, and the second scalar value.

일 실시예에서, 상기 심층 학습 모듈은 입력 계층, 심층 신경망 계층 및 시그모이드 함수 계층을 포함한다.In one embodiment, the deep learning module includes an input layer, a deep neural network layer and a sigmoid function layer.

일 실시예에서, 상기 재시청 확률값에 기초하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계는, 상기 재시청 확률값이 선정된 임계값 이상인 경우 상기 특정 컨텐츠를 상기 특정 고객에게 추천하는 것으로 결정하는 단계를 포함한다.In an embodiment, the determining whether to recommend the specific content to the specific customer based on the re-viewing probability value includes recommending the specific content to the specific customer when the re-viewing probability value is greater than or equal to a predetermined threshold value determining that it is

또 다른 측면에서, 심층 학습에 기반한 컨텐츠 추천을 위한 장치가 제공된다. 본 장치는, 고객 정보 및 컨텐츠에 관한 정보를 저장하는 데이터베이스부, 및 입력 계층, 심층 신경망 계층 및 시그모이드 함수 계층을 포함하는 심층 학습 모듈을 구현하며, 상기 데이터베이스부로부터 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 검색하여 상기 심층 학습 모듈로 입력되게 하도록 구성된 프로세싱 엔진을 포함할 수 있다. 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠이고, 상기 입력 계층은 상기 특정 고객의 고객 정보 및 상기 특정 컨텐츠에 관한 정보를 임베딩 처리하여 입력 벡터들을 출력하도록 구성되고, 상기 심층 신경망 계층은 상기 입력 벡터들을 처리하여 복수의 출력 값을 제공하도록 구성되고, 상기 시그모이드 함수 계층은 상기 복수의 출력 값에 기초하여 상기 특정 컨텐츠에 대한 재시청 확률값을 제공하도록 구성되고 - 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 -, 상기 프로세싱 엔진은 상기 재시청 확률값에 기초하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하도록 더 구성될 수 있다.In another aspect, an apparatus for content recommendation based on deep learning is provided. The device implements a deep learning module including a database unit for storing information about customer information and content, and an input layer, a deep neural network layer, and a sigmoid function layer, and from the database unit, customer information of a specific customer and and a processing engine configured to retrieve information about specific content to be input into the deep learning module. The customer information of the specific customer includes viewing history information, evaluation history information, and re-viewing history information of the specific customer, the specific content is content that the specific customer has viewed, and the input layer is the specific customer is configured to output input vectors by embedding customer information of and information about the specific content, the deep neural network layer is configured to process the input vectors to provide a plurality of output values, and the sigmoid function layer comprises: and provide a re-view probability value for the particular content based on the plurality of output values, wherein the re-view probability value represents a probability that the particular customer will re-view the particular content, the processing engine comprising the re-view probability value It may be further configured to determine whether to recommend the specific content to the specific customer based on the

일 실시예에서, 상기 특정 고객의 고객 정보는 상기 특정 고객의 고객 ID 및 프로필 정보를 더 포함한다.In an embodiment, the customer information of the specific customer further includes a customer ID and profile information of the specific customer.

일 실시예에서, 상기 특정 고객의 프로필 정보는 상기 특정 고객의 가입 정보, 상기 특정 고객의 나이에 관한 정보 및 상기 특정 고객의 성별에 관한 정보를 포함한다.In an embodiment, the profile information of the specific customer includes subscription information of the specific customer, information about the age of the specific customer, and information about the gender of the specific customer.

일 실시예에서, 상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 ID를 포함한다.In an embodiment, the information about the specific content includes a content ID of the specific content.

일 실시예에서, 상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 메타 정보를 더 포함한다.In an embodiment, the information about the specific content further includes content meta information of the specific content.

일 실시예에서, 상기 입력 계층은, 상기 특정 고객의 시청 이력 정보를 인코딩하여 제1 벡터를 제공하고, 상기 특정 고객의 평가 이력 정보를 인코딩하여 제2 벡터를 제공하고, 상기 특정 고객의 재시청 이력 정보를 인코딩하여 제3 벡터를 제공하고, 상기 제1 벡터와 상기 제3 벡터를 외적하여 제4 벡터를 제공하고, 상기 제2 벡터와 상기 제3 벡터를 외적하여 제5 벡터를 제공하고, 상기 제1 벡터와 상기 제3 벡터를 내적하여 제1 스칼라 값을 제공하고, 상기 제2 벡터와 상기 제3 벡터를 내적하여 제2 스칼라 값을 제공하고, 상기 제4 벡터, 상기 제5 벡터, 상기 제1 스칼라 값 및 상기 제2 스칼라 값을 이용하여 재시청 의사 특징 벡터를 생성하도록 더 구성된다.In an embodiment, the input layer encodes the viewing history information of the specific customer to provide a first vector, encodes the evaluation history information of the specific customer to provide a second vector, and re-views the specific customer providing a third vector by encoding the history information, providing a fourth vector by cross-producting the first vector and the third vector, and providing a fifth vector by cross-producting the second vector and the third vector; a dot product of the first vector and the third vector to provide a first scalar value, a dot product of the second vector and the third vector to provide a second scalar value, the fourth vector and the fifth vector; and generate a replay pseudo feature vector by using the first scalar value and the second scalar value.

일 실시예에서, 상기 프로세싱 엔진은 상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층을 학습 데이터로 학습시키도록 더 구성된다.In an embodiment, the processing engine is further configured to train the input layer, the deep neural network layer and the sigmoid function layer with training data.

일 실시예에서, 상기 학습 데이터는 고객 정보 및 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 포함하고, 상기 고객 정보는 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층은 복수의 입력 노드 및 복수의 출력 노드를 포함하고, 상기 입력 노드들과 상기 출력 노드들 간에는 가중치들이 설정되어 있으며, 상기 프로세싱 엔진은, 상기 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 상기 입력 계층으로 입력시켰을 때 상기 시그모이드 함수 계층으로부터 출력되는 재시청 확률값이 선정된 임계값 이상이 되도록 상기 가중치들을 변경하도록 더 구성된다.In an embodiment, the learning data includes customer information and information about content that the customer has re-viewed, and the customer information includes viewing history information, evaluation history information, and re-viewing history information, and the input A layer, the deep neural network layer, and the sigmoid function layer include a plurality of input nodes and a plurality of output nodes, weights are set between the input nodes and the output nodes, and the processing engine is configured to: and changing the weights so that, when information on the content having a history of re-viewing is input to the input layer, the re-viewing probability value output from the sigmoid function layer is greater than or equal to a predetermined threshold value.

일 실시예에서, 상기 시그모이드 함수 계층은 상기 복수의 출력값에 시그모이드 함수를 적용해서 상기 재시청 확률값을 제공하도록 더 구성된다.In an embodiment, the sigmoid function layer is further configured to apply a sigmoid function to the plurality of output values to provide the replay probability value.

일 실시예에서, 상기 프로세싱 엔진은, 상기 재시청 확률값이 선정된 임계값 이상인 경우 상기 특정 컨텐츠를 상기 특정 고객에게 추천하도록 더 구성된다.In an embodiment, the processing engine is further configured to recommend the specific content to the specific customer when the re-viewing probability value is equal to or greater than a predetermined threshold value.

또 다른 측면에서, 프로그램을 기록한 컴퓨터 판독가능 기록매체가 제공된다. 여기서 상기 프로그램은 명령어들을 포함하고, 상기 명령어들은 컴퓨터에 의해 실행될 때 상기 방법을 수행한다.In another aspect, a computer-readable recording medium recording a program is provided. wherein the program includes instructions, the instructions performing the method when executed by a computer.

본 발명의 실시예들에 따르면, 고객 개개인의 시청 이력에 관한 정보를 바탕으로 고객 개개인 별로 재시청할 가능성이 높은 컨텐츠를 예측하여 추천함으로써 컨텐츠 매출을 제고할 수 있는 기술적 효과가 있다.According to embodiments of the present invention, there is a technical effect of increasing content sales by predicting and recommending content that is highly likely to be re-viewed for each individual customer based on information about each customer's viewing history.

도 1은 심층 학습(Deep Learning)에 기반한 컨텐츠 추천을 위한 장치의 블록도의 일 실시예를 도시한 도면이다.
도 2는 심층 학습에 기반한 컨텐츠 추천 방법을 설명하기 위한 흐름도의 일 실시예를 도시한 도면이다.
1 is a diagram illustrating an embodiment of a block diagram of an apparatus for content recommendation based on deep learning.
2 is a diagram illustrating an embodiment of a flowchart for explaining a content recommendation method based on deep learning.

본 발명의 이점들과 특징들 그리고 이들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해 질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 본 실시예들은 단지 본 발명의 개시가 완전하도록 하며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려 주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Advantages and features of the present invention and a method of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in a variety of different forms, and these embodiments merely allow the disclosure of the present invention to be complete and those of ordinary skill in the art to which the present invention pertains. It is provided to fully inform the person of the scope of the invention, and the present invention is only defined by the scope of the claims.

본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로 본 발명을 한정하려는 의도에서 사용된 것이 아니다. 예를 들어, 단수로 표현된 구성 요소는 문맥상 명백하게 단수만을 의미하지 않는다면 복수의 구성 요소를 포함하는 개념으로 이해되어야 한다. 또한, 본 발명의 명세서에서, '포함하다' 또는 '가지다' 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐이고, 이러한 용어의 사용에 의해 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성이 배제되는 것은 아니다. 또한, 본 명세서에 기재된 실시예에 있어서 '모듈' 혹은 '부'는 적어도 하나의 기능이나 동작을 수행하는 기능적 부분을 의미할 수 있다.The terms used herein are used only to describe specific embodiments and are not intended to limit the present invention. For example, a component expressed in a singular should be understood as a concept including a plurality of components unless the context clearly means only the singular. In addition, in the specification of the present invention, terms such as 'include' or 'have' are only intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, and such The use of the term does not exclude the presence or addition of one or more other features or numbers, steps, operations, components, parts, or combinations thereof. In addition, in the embodiments described in this specification, a 'module' or 'unit' may mean a functional part that performs at least one function or operation.

덧붙여, 다르게 정의되지 않는 한 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미가 있는 것으로 해석되어야 하며, 본 발명의 명세서에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in the specification of the present invention, it should be interpreted in an ideal or excessively formal meaning. doesn't happen

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 보다 상세히 설명한다. 다만, 이하의 설명에서는 본 발명의 요지를 불필요하게 흐릴 우려가 있는 경우, 널리 알려진 기능이나 구성에 관한 구체적 설명은 생략하기로 한다.Hereinafter, embodiments of the present invention will be described in more detail with reference to the accompanying drawings. However, in the following description, if there is a risk of unnecessarily obscuring the gist of the present invention, detailed descriptions of well-known functions or configurations will be omitted.

도 1은 심층 학습(Deep Learning)에 기반한 컨텐츠 추천을 위한 장치의 블록도의 일 실시예를 도시한 도면이다.1 is a diagram illustrating an embodiment of a block diagram of an apparatus for content recommendation based on deep learning.

도 1의 컨텐츠 추천을 위한 장치(100)는 IPTV 서비스 사업자와 같은 컨텐츠 제공 서비스 사업자가 운용하는, 하나 이상의 위치에 설치되는 하나 이상의 서버 컴퓨터에서 실행되는 컴퓨터 프로그램들로서 구현되는 시스템의 일 예일 수 있다. 도 1에 도시된 바와 같이, 장치(100)는 데이터베이스부(110)를 포함할 수 있다. 데이터베이스부(110)는 고객 정보를 저장할 수 있다. 고객 정보는 복수의 고객의 ID들(Identifications), 복수의 고객의 각각의 프로필 정보 및 복수의 고객의 각각에 대한 시청 이력 정보, 평가 정보 및 재시청 이력 정보를 포함할 수 있다. 복수의 고객의 각각의 프로필 정보는 해당 고객의 가입 정보, 해당 고객의 나이에 관한 정보 및 해당 고객의 성별에 관한 정보를 포함할 수 있다. 고객의 가입 정보는 보급형 채널 상품, CJ 채널 상품, 아이들나라 상품 등과 같은 해당 고객이 가입한 가입 상품에 관한 정보일 수 있다. 고객에 대한 시청 이력 정보는 해당 고객이 시청한 이력이 있는 컨텐츠들을 식별하는 정보일 수 있다. 고객에 대한 평가 이력 정보는 해당 고객이 평가한 컨텐츠들을 식별하는 정보일 수 있다. 고객에 대한 재시청 이력 정보는 해당 고객이 재시청한 이력이 있는 컨텐츠들을 식별하는 정보일 수 있다. 이상으로 설명한 고객 정보는 고객측에 설치된 셋탑박스(Set-top Box)와 인터넷(Internet)과 같은 통신망을 통해 통신하면서 고객의 요청을 수신하고 이에 응답하여 컨텐츠를 제공하는 서비스 제공 서버로부터 다양한 방식으로 획득하는 것이 가능하나, 고객 정보를 획득하는 방식이 이에 제한되는 것이 아님을 인식하여야 한다. 데이터베이스부(110)는, 예컨대 VOD(video on demand) 컨텐츠와 같은 컨텐츠에 관한 정보를 더 저장할 수 있다. 컨텐츠에 관한 정보는 컨텐츠 제공 서비스 사업자가 제공하고 있는 컨텐츠들의 타이틀에 관한 정보와 해당 컨텐츠들의 ID들 및 메타 정보를 포함할 수 있다. 컨텐츠의 메타 정보(content meta information)는 해당 컨텐츠의 키워드, 분위기, 장르, 소재, 줄거리, 배우, 감독 등에 관한 정보를 포함할 수 있다. 컨텐츠에 관한 정보는 컨텐츠 제공 서비스 사업자가 제공하고 있는 컨텐츠들의 현재 가격 정보를 더 포함할 수 있다.The apparatus 100 for content recommendation of FIG. 1 may be an example of a system implemented as computer programs executed on one or more server computers installed in one or more locations and operated by a content providing service provider such as an IPTV service provider. As shown in FIG. 1 , the device 100 may include a database unit 110 . The database unit 110 may store customer information. The customer information may include IDs (Identifications) of a plurality of customers, profile information of each of the plurality of customers, and viewing history information, evaluation information, and re-viewing history information for each of the plurality of customers. Profile information of each of the plurality of customers may include subscription information of the corresponding customer, information about the age of the customer, and information about the gender of the customer. The customer's subscription information may be information on subscription products to which the customer has subscribed, such as low-end channel products, CJ channel products, children's country products, and the like. The viewing history information about the customer may be information identifying contents that the customer has viewed. The evaluation history information on the customer may be information identifying contents evaluated by the customer. The re-viewing history information about the customer may be information identifying contents that have been re-viewed by the corresponding customer. The customer information described above is transmitted in various ways from a service providing server that receives customer requests and provides contents in response while communicating through a communication network such as a set-top box installed on the customer side and the Internet. Although it is possible to obtain it, it should be recognized that the manner in which customer information is obtained is not limited thereto. The database unit 110 may further store information about content, for example, video on demand (VOD) content. The information about the content may include information about the title of the content provided by the content providing service provider, IDs of the corresponding content, and meta information. The content meta information may include information about keywords, atmosphere, genre, material, plot, actors, directors, and the like of the corresponding content. The information on the content may further include current price information of the content provided by the content providing service provider.

데이터베이스부(110)는, 플래시 메모리 타입(flash memory type), 하드 디스크 타입(hard disk type), 멀티미디어 카드(MultiMedia Card: MMC), 카드 타입의 메모리(예를 들어, SD(Secure Digital) 카드 또는 XD(eXtream Digital) 카드 등), RAM(Random Access Memory), SRAM(Static Random Access Memory), ROM(Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크 및 광 디스크 중 어느 하나의 저장 매체로 구현될 수 있으나, 당업자라면 데이터베이스부(110)의 구현 형태가 이에 한정되는 것이 아님을 알 수 있을 것이다.The database unit 110 is a flash memory type (flash memory type), a hard disk type (hard disk type), a multimedia card (MultiMedia Card: MMC), a card type memory (eg, SD (Secure Digital) card or XD (eXtream Digital) cards, etc.), RAM (Random Access Memory), SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory) ), a magnetic memory, a magnetic disk, and an optical disk may be implemented as any one storage medium, but those skilled in the art will understand that the implementation form of the database unit 110 is not limited thereto.

장치(100)는 데이터베이스부(110)에 통신가능한 방식으로 결합된 프로세싱 엔진(processing engine, 120)을 더 포함할 수 있다. 프로세싱 엔진(120)은 입력 계층(Input Layer, 133), 심층 신경망(Deep Neural Network: DNN) 계층(135) 및 시그모이드 함수 계층(Sigmoid Function Layer, 137)을 포함하는 심층 학습 모듈(Deep Learning Module, 130)을 구현하도록 설계될 수 있다. 심층 학습 모듈(130)은 감독 학습(supervised learning), 준감독 학습(semi-supervised learning) 및 무감독 학습(unsupervised learning) 중 어느 하나의 방식으로 기계 학습의 일종인 심층 학습을 수행하도록 구현될 수 있다. 프로세싱 엔진(120)은 데이터베이스부(110)로부터 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 검색하여 심층 학습 모듈(130)로 입력되게 하도록 작동될 수 있다. 특정 고객의 고객 정보는 해당 고객의 시청 이력 정보, 평가 정보 및 재시청 이력 정보를 포함할 수 있다. 특정 고객의 고객 정보는 해당 고객의 ID 및 해당 고객의 프로필 정보를 더 포함할 수 있다. 특정 컨텐츠에 관한 정보는 특정 고객이 시청한 이력이 있는 컨텐츠로서 특정 고객이 앞으로 재시청할 가능성이 있는지를 예측해 보고자 하는 대상이 되는 컨텐츠에 관한 정보로서, 해당 컨텐츠의 ID 및 해당 컨텐츠의 메타 정보를 포함할 수 있다.The apparatus 100 may further include a processing engine 120 coupled to the database unit 110 in a communicable manner. The processing engine 120 is a deep learning module including an input layer (Input Layer, 133), a deep neural network (DNN) layer 135 and a sigmoid function layer (Sigmoid Function Layer, 137). Module, 130) can be designed to implement. The deep learning module 130 may be implemented to perform deep learning, a type of machine learning, in any one of supervised learning, semi-supervised learning, and unsupervised learning. have. The processing engine 120 may be operated to retrieve customer information of a specific customer and information on specific content from the database unit 110 to be input to the deep learning module 130 . The customer information of the specific customer may include viewing history information, evaluation information, and re-viewing history information of the corresponding customer. The customer information of the specific customer may further include an ID of the customer and profile information of the customer. Information about specific content is information about the content that a specific customer has a history of watching and is the target of predicting whether a specific customer is likely to re-view in the future, including the ID of the content and meta information of the content can do.

심층 학습 모듈(130)의 입력 계층(133)은 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 임베딩(embedding) 처리하여 입력 벡터들을 출력하도록 구성될 수 있다. 일 실시예에서, 입력 계층(130)은 입력 정보에 임베딩 함수들(embedding functions)을 적용하도록 구성될 수 있다. 일 실시예에서, 입력 정보에 임베딩 함수들을 적용하는 동작은, 예컨대 룩업테이블(lookup table)을 이용하여 입력 정보를 인코딩하는 동작을 수반할 수 있다. 예컨대, 컨텐츠 제공 서비스 사업자 측에서 제공하는 컨텐츠들의 수가 10개이고 특정 고객이 컨텐츠 3번 및 컨텐츠 7번 내지 컨텐츠 9번을 시청한 이력이 있는 경우, 특정 고객의 시청 이력 정보는 [0, 0, 1, 0, 0, 0, 1, 1, 1, 0]와 같이 시청 이력 벡터로 인코딩이 가능하다. 또한 이 경우 특정 고객이 컨텐츠 3번 및 컨텐츠 8번에 대해 평가를 한 이력이 있는 경우 특정 고객의 평가 이력 정보는 [0, 0, 1, 0, 0, 0, 0, 1, 0, 0]와 같이 평가 이력 벡터로 인코딩이 가능하고, 특정 고객이 컨텐츠 8번에 대해 재시청을 한 이력이 있는 경우, 특정 고객의 재시청 이력 정보는 [0, 0, 0, 0, 0, 0, 0, 1, 0, 0]와 같이 재시청 이력 벡터로 인코딩이 가능하다. 입력 계층(133)은 시청 이력 벡터, 평가 이력 벡터 및 재시청 이력 벡터를 별개의 입력 벡터들로서 출력하는 대신 이들 벡터를 가공하여 하나의 입력 벡터로 출력하도록 구성될 수 있다. 예컨대, 입력 계층(133)은 시청 이력 벡터와 재시청 이력 벡터를 외적하여 제1 벡터를 제공하고, 평가 이력 벡터와 재시청 이력 벡터를 외적하여 제2 벡터를 제공하고, 시청 이력 벡터와 재시청 이력 벡터를 내적하여 제1 스칼라 값을 제공하고, 평가 이력 벡터와 재시청 이력 벡터를 내적하여 제2 스칼라 값을 제공하고, 제1 벡터, 제2 벡터, 제1 스칼라 값 및 제2 스칼라 값을 이용하여 재시청 의사 특징 벡터를 생성하여 이를 입력 벡터로서 출력하도록 구성될 수 있다. 일 실시예에서, 입력 계층(133)은 제1 벡터, 제2 벡터, 제1 스칼라 값 및 제2 스칼라 값을 서로 연접하여 재시청 의사 특징 벡터를 생성하도록 구성된다. 이와 같이 시청 이력 벡터, 평가 이력 벡터 및 재시청 이력 벡터에 대해 외적 및 내적 연산을 수행하여 재시청 의사 특징 벡터를 구성하는 이유는 재시청 의사를 반영하는 정보가 심층 신경망 계층(135) 및 시그모이드 함수 계층(137)에서 연산 처리되도록 함으로써 보다 유의미한 출력 정보를 얻을 수 있도록 하기 위함이다. 고객의 프로필 정보도 가입 정보, 나이 정보 및 성별 정보의 각각에 대하여 적당한 개수의 비트를 할당함으로써 선정된 개수의 비트로 인코딩하는 것이 가능하다. 일 실시예에서, 입력 계층(133)은 재시청 의사 특징 벡터, 고객의 ID를 인코딩한 입력 벡터, 고객의 프로필 정보를 인코딩하여 구성한 입력 벡터, 고객이 앞으로 재시청할 가능성이 있는지를 예측해 보고자 하는 대상이 되는 컨텐츠의 ID를 인코딩한 입력 벡터 및 해당 컨텐츠의 메타 정보를 인코딩한 입력 벡터를 출력하도록 구성될 수 있다. 일 실시예에서, 입력 정보에 임베딩 함수들을 적용하는 동작은 입력 정보에 가중치(weight)를 적용하는 동작을 더 수반할 수 있다.The input layer 133 of the deep learning module 130 may be configured to output input vectors by embedding input information including customer information of a specific customer and information about specific content. In one embodiment, the input layer 130 may be configured to apply embedding functions to the input information. In one embodiment, applying the embedding functions to the input information may involve encoding the input information using, for example, a lookup table. For example, if the number of contents provided by the content providing service provider is 10 and a specific customer has a history of viewing contents 3 and 7 to 9, the viewing history information of the specific customer is [0, 0, 1 , 0, 0, 0, 1, 1, 1, 0], it is possible to encode the viewing history vector. In addition, in this case, if a specific customer has a history of evaluating contents 3 and 8, the evaluation history information of the specific customer is [0, 0, 1, 0, 0, 0, 0, 1, 0, 0] It is possible to encode with an evaluation history vector as shown in , 1, 0, 0], it can be encoded as a replay history vector. The input layer 133 may be configured to process and output the viewing history vector, the rating history vector, and the re-viewing history vector as one input vector instead of outputting them as separate input vectors. For example, the input layer 133 provides a first vector by cross-producting the viewing history vector and the re-viewing history vector, cross-producting the evaluation history vector and the re-viewing history vector to provide a second vector, and the viewing history vector and re-viewing The history vector is dotted to provide a first scalar value, the rating history vector and the replay history vector are dotted to provide a second scalar value, and the first vector, the second vector, the first scalar value, and the second scalar value are It may be configured to generate a re-viewing pseudo feature vector by using it and output it as an input vector. In one embodiment, the input layer 133 is configured to concatenate the first vector, the second vector, the first scalar value, and the second scalar value with each other to generate a replay pseudo feature vector. The reason why the re-viewing intention feature vector is constructed by performing external and inner product operations on the viewing history vector, the evaluation history vector, and the re-viewing history vector is that the information reflecting the re-viewing intention is the deep neural network layer 135 and the sigmoy This is so that more meaningful output information can be obtained by making the calculation process in the de function layer 137 . The customer's profile information can also be encoded into a predetermined number of bits by allocating an appropriate number of bits to each of the subscription information, age information, and gender information. In one embodiment, the input layer 133 may include a re-viewing pseudo feature vector, an input vector encoding the customer ID, an input vector constructed by encoding customer profile information, and a target for predicting whether the customer is likely to rewatch in the future. It may be configured to output an input vector encoding the ID of the content and an input vector encoding meta information of the corresponding content. In an embodiment, the operation of applying the embedding functions to the input information may further include an operation of applying a weight to the input information.

심층 학습 모듈(130)의 심층 신경망 계층(135)은 복수의 은닉층(hidden layers)을 포함할 수 있다. 복수의 은닉층의 각각은 복수의 노드(nodes)를 포함할 수 있다. 최하위 은닉층에서의 노드들은 입력 계층(133)으로부터 출력되는 입력 벡터들을 수신하도록 구현될 수 있다. 상대적으로 하위에 있는 은닉층의 노드들에서의 값들은 상대적으로 상위에 있는 은닉층의 노드들로 가중치들이 적용되어 전달될 수 있다. 심층 신경망 계층(135)은 입력 벡터들을 입력으로 하여 복수의 은닉층에서의 비선형적 연산 처리에 의해 입력 정보의 대안적 표현값들(alternative representations)인 복수의 출력 값을 제공하도록 구성될 수 있다.The deep neural network layer 135 of the deep learning module 130 may include a plurality of hidden layers. Each of the plurality of hidden layers may include a plurality of nodes. Nodes in the lowest hidden layer may be implemented to receive input vectors output from the input layer 133 . Values in the nodes of the hidden layer that are relatively lower may be transmitted by applying weights to the nodes of the hidden layer that are relatively higher. The deep neural network layer 135 may be configured to provide a plurality of output values that are alternative representations of input information by non-linear computational processing in a plurality of hidden layers by taking input vectors as input.

심층 학습 모듈(130)의 시그모이드 함수 계층(137)은 심층 신경망 계층(135)으로부터 출력되는 복수의 출력 값에 기초하여 특정 컨텐츠(고객이 앞으로 재시청할 가능성이 있는지를 예측해 보고자 하는 대상이 되는 컨텐츠)에 대한 재시청 확률값을 제공하도록 구성될 수 있다. 특정 컨텐츠에 대한 재시청 확률값은 특정 고객이 특정 컨텐츠를 재시청할 확률을 나타낸다. 재시청 확률값은 0 이상이고 1 이하인 값일 수 있다. 일 실시예에서, 시그모이드 함수 계층(137)은 복수의 출력 값에 시그모이드 함수(Sigmoid Function)를 적용해서 재시청 확률값을 제공하도록 구성될 수 있다. 시그모이드 함수 계층(137)은 심층 신경망 계층(135)의 복수의 출력 노드에 가중치들이 각각 적용되어 연결된 출력 노드를 포함할 수 있다.The sigmoid function layer 137 of the deep learning module 130 is a target for predicting whether a specific content (customer is likely to re-view in the future) based on a plurality of output values output from the deep neural network layer 135 content) may be configured to provide a re-viewing probability value. The re-viewing probability value for the specific content represents a probability that a specific customer will re-view the specific content. The re-view probability value may be a value greater than or equal to 0 and less than or equal to 1. In an embodiment, the sigmoid function layer 137 may be configured to provide a replay probability value by applying a sigmoid function to a plurality of output values. The sigmoid function layer 137 may include an output node connected by applying weights to a plurality of output nodes of the deep neural network layer 135 , respectively.

프로세싱 엔진(120)은 심층 학습 모듈(130)에 통신가능한 방식으로 결합된 필터 계층(140)을 구현하도록 더 설계될 수 있다. 필터 계층(140)은 시그모이드 함수 계층(137)으로부터 출력되는 재시청 확률값에 기초하여 특정 컨텐츠를 특정 고객에게 추천할지 여부를 결정하도록 구성될 수 있다. 필터 계층(140)은 재시청 확률값이 선정된 임계값 이상인 경우 특정 컨텐츠를 특정 고객에게 추천하도록 구성될 수 있다. 일 실시예에서, 필터 계층(140)은 재시청 확률값이 0.5 이상인 경우 특정 컨텐츠를 특정 고객에게 추천하도록 구성될 수 있다. 예를 들어, '알라딘'에 대한 재시청 확률값이 0.7로 출력되는 경우, 필터 계층(140)은 '알라딘'을 특정 고객에게 추천하는 것으로 결정할 수 있다.The processing engine 120 may be further designed to implement the filter layer 140 coupled in a communicable manner to the deep learning module 130 . The filter layer 140 may be configured to determine whether to recommend specific content to a specific customer based on a re-viewing probability value output from the sigmoid function layer 137 . The filter layer 140 may be configured to recommend specific content to a specific customer when the re-viewing probability value is equal to or greater than a predetermined threshold value. In an embodiment, the filter layer 140 may be configured to recommend specific content to a specific customer when the re-viewing probability value is 0.5 or more. For example, when a re-viewing probability value of 'Aladdin' is output as 0.7, the filter layer 140 may determine that 'Aladdin' is recommended to a specific customer.

이상의 설명에서는 프로세싱 엔진(120)이 데이터베이스부(110)로부터 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 검색하여 심층 학습 모듈(130)로 입력되게 함으로써 특정 컨텐츠를 특정 고객에게 추천할지 여부를 결정하는 것으로 설명하였으나, 심층 학습 모듈(130)이 유의미한 결과를 출력하도록 하기 위해서는 심층 학습 모듈(130)이 학습되어야 할 필요가 있다. 프로세싱 엔진(120)은 학습 데이터를 이용하여 심층 학습 모듈(130)을 학습시키도록 더 구성될 수 있다. 학습 데이터는 복수의 고객에 대한 고객 정보 및 복수의 고객의 각각이 재시청한 이력이 있는 적어도 하나의 컨텐츠에 관한 정보를 포함할 수 있다. 복수의 고객의 각각에 대한 고객 정보는 해당 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함할 수 있다. 복수의 고객의 각각에 대한 고객 정보는 해당 고객의 고객 ID 및 프로필 정보를 더 포함할 수 있다. 고객이 재시청한 이력이 있는 적어도 하나의 컨텐츠에 관한 정보는 해당 고객이 재시청한 이력이 있는 적어도 하나의 컨텐츠의 ID 및 메타 정보를 포함할 수 있다. 프로세싱 엔진(120)은, 고객 정보 및 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 입력 계층(133)으로 입력시켰을 때 시그모이드 함수 계층(137)으로부터 출력되는 재시청 확률값이 선정된 임계값 이상이 되도록 입력 계층(133), 심층 신경망 계층(135) 및 시그모이드 함수 계층(137)에서의 가중치들을 변경하는 방식으로 심층 학습 모듈(130)을 학습시키도록 구성될 수 있다. 프로세싱 엔진(120)은 심층 학습 모듈(130)이 보다 정확한 결과를 출력할 수 있도록 복수의 고객에 대한 고객 정보를 이용하여 심층 학습 모듈(130)을 복수 회 학습시키도록 더 구성될 수 있다. 심층 학습 모듈(130)이 잘 학습되면 입력 정보에 잘 부합되는 재시청 확률값을 얻는 것이 가능해진다.In the above description, the processing engine 120 determines whether to recommend specific content to a specific customer by retrieving customer information of a specific customer and information on specific content from the database unit 110 and inputting the information into the deep learning module 130 . Although it has been described that, in order for the deep learning module 130 to output a meaningful result, the deep learning module 130 needs to be learned. The processing engine 120 may be further configured to train the deep learning module 130 using the training data. The learning data may include customer information on the plurality of customers and information on at least one content that has been re-viewed by each of the plurality of customers. The customer information for each of the plurality of customers may include viewing history information, evaluation history information, and re-viewing history information of the corresponding customer. The customer information for each of the plurality of customers may further include a customer ID and profile information of the corresponding customer. The information about the at least one content that the customer has re-viewed may include ID and meta information of the at least one content that the customer has re-viewed. The processing engine 120, when the customer information and information about the content having a history of re-viewing by the customer are input to the input layer 133, the re-viewing probability value output from the sigmoid function layer 137 is a selected threshold It may be configured to train the deep learning module 130 in such a way as to change the weights in the input layer 133 , the deep neural network layer 135 , and the sigmoid function layer 137 to be greater than or equal to a value. The processing engine 120 may be further configured to learn the deep learning module 130 a plurality of times using customer information about a plurality of customers so that the deep learning module 130 can output more accurate results. When the deep learning module 130 is well trained, it becomes possible to obtain a replay probability value that matches the input information well.

프로세싱 엔진(120)은, 응용 주문형 집적 회로(Application Specific Integrated Circuits: ASICs), 디지털 신호 처리기(Digital Signal Processors: DSPs), 디지털 신호 처리 소자(Digital Signal Processing Devices: DSPDs), 프로그램 가능 논리 소자(Programmable Logic Devices: PLDs), 현장 프로그램 가능 게이트 어레이(Field-Programmable Gate Arrays: FPGAs), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers) 및 마이크로 프로세서(microprocessors) 중 적어도 하나에 기반한 하드웨어 플랫폼(hardware platform)으로서 구현될 수 있다. 프로세싱 엔진(120)은 또한 전술한 하드웨어 플랫폼 상에서 실행 가능한 펌웨어(firmware)/소프트웨어 모듈로 구현될 수 있다. 이 경우, 소프트웨어 모듈은 적절한 프로그램(program) 언어로 쓰여진 소프트웨어 애플리케이션(application)에 의해 구현될 수 있다.The processing engine 120 includes Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), and programmable logic devices (Programmable Logic Devices). Hardware based on at least one of Logic Devices (PLDs), Field-Programmable Gate Arrays (FPGAs), processors, controllers, micro-controllers, and microprocessors. It may be implemented as a hardware platform. The processing engine 120 may also be implemented as a firmware/software module executable on the hardware platform described above. In this case, the software module may be implemented by a software application written in an appropriate program language.

도 2는 심층 학습에 기반한 컨텐츠 추천 방법을 설명하기 위한 흐름도의 일 실시예를 도시한 도면이다.2 is a diagram illustrating an embodiment of a flowchart for explaining a content recommendation method based on deep learning.

도 2에 도시된 바와 같이, 본 컨텐츠 추천 방법은, 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 수신하는 단계(S205)로부터 시작된다. 특정 고객의 고객 정보는 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함할 수 있다. 특정 고객의 고객 정보는 특정 고객의 고객 ID 및 프로필 정보를 더 포함할 수 있다. 특정 고객의 프로필 정보는 특정 고객의 가입 정보, 특정 고객의 나이에 관한 정보 및 특정 고객의 성별에 관한 정보를 포함할 수 있다. 특정 컨텐츠는 특정 고객이 시청한 이력이 있는 VOD(video on demand) 컨텐츠와 같은 컨텐츠이고, 특정 컨텐츠에 관한 정보는 특정 컨텐츠의 컨텐츠 ID 및/또는 컨텐츠 메타 정보를 포함할 수 있다. 단계(S210)에서는 입력 정보를 입력 계층으로 입력하여 임베딩 처리를 수행함으로써 입력 벡터들을 출력한다. 여기서 임베딩 처리는, 특정 고객의 시청 이력 정보를 인코딩하여 제1 벡터를 제공하고, 특정 고객의 평가 이력 정보를 인코딩하여 제2 벡터를 제공하고, 특정 고객의 재시청 이력 정보를 인코딩하여 제3 벡터를 제공하고, 제1 벡터와 제3 벡터를 외적하여 제4 벡터를 제공하고, 제2 벡터와 제3 벡터를 외적하여 제5 벡터를 제공하고, 제1 벡터와 제3 벡터를 내적하여 제1 스칼라 값을 제공하고, 제2 벡터와 제3 벡터를 내적하여 제2 스칼라 값을 제공하고, 제4 벡터, 제5 벡터, 제1 스칼라 값 및 제2 스칼라 값을 이용하여 재시청 의사 특징 벡터를 생성하는 처리를 포함할 수 있다. 단계(S215)에서는 입력 벡터들을 심층 신경망 계층으로 입력하여 복수의 출력 값을 제공한다. 단계(S220)에서는 복수의 출력 값을 시그모이드 함수 계층으로 입력하여 특정 컨텐츠에 대한 재시청 확률값을 제공한다. 본 단계에서는 복수의 출력값에 시그모이드 함수를 적용해서 재시청 확률값을 제공할 수 있다. 여기서 재시청 확률값은 특정 고객이 특정 컨텐츠를 재시청할 확률을 나타낸다. 단계(S225)에서는 재시청 확률값을 필터 계층으로 입력하여 특정 컨텐츠를 특정 고객에게 추천할지 여부를 결정한다. 본 단계에서는 재시청 확률값이 선정된 임계값 이상인 경우 특정 컨텐츠를 특정 고객에게 추천하는 것으로 결정할 수 있다.As shown in FIG. 2 , the present content recommendation method starts with receiving input information including customer information of a specific customer and information on specific content ( S205 ). The customer information of the specific customer may include viewing history information, evaluation history information, and re-viewing history information of the specific customer. The customer information of the specific customer may further include customer ID and profile information of the specific customer. The specific customer's profile information may include subscription information of the specific customer, information about the specific customer's age, and information about the specific customer's gender. The specific content is content such as video on demand (VOD) content that has been viewed by a specific customer, and the information about the specific content may include a content ID and/or content meta information of the specific content. In step S210, input vectors are output by inputting input information into an input layer and performing embedding processing. Here, the embedding process provides a first vector by encoding the viewing history information of a specific customer, encoding the evaluation history information of the specific customer to provide a second vector, and encoding the re-viewing history information of the specific customer to provide a third vector The first vector and the third vector are cross product to provide a fourth vector, the second vector and the third vector are cross product to provide a fifth vector, and the first vector and the third vector are dot product to provide a first vector A scalar value is provided, a second scalar value is provided by dot product of the second vector and a third vector, and a replay pseudo feature vector is obtained using the fourth vector, the fifth vector, the first scalar value, and the second scalar value. It may include processing to generate In step S215, input vectors are input to the deep neural network layer to provide a plurality of output values. In step S220, a plurality of output values are input to the sigmoid function layer to provide a re-viewing probability value for a specific content. In this step, a re-viewing probability value may be provided by applying a sigmoid function to a plurality of output values. Here, the re-viewing probability value represents a probability that a specific customer will re-view specific content. In step S225, it is determined whether or not to recommend specific content to a specific customer by inputting a re-viewing probability value to the filter layer. In this step, when the re-viewing probability value is greater than or equal to a predetermined threshold, it may be determined that specific content is recommended to a specific customer.

이상의 설명에 있어서 어떤 구성 요소가 다른 구성 요소에 접속되거나 결합된다는 기재의 의미는 당해 구성 요소가 그 다른 구성 요소에 직접적으로 접속되거나 결합된다는 의미뿐만 아니라 이들이 그 사이에 개재된 하나 또는 그 이상의 타 구성 요소를 통해 접속되거나 결합될 수 있다는 의미를 포함하는 것으로 이해되어야 한다. 이외에도 구성 요소들 간의 관계를 기술하기 위한 용어들(예컨대, '간에', '사이에' 등)도 유사한 의미로 해석되어야 한다.In the above description, the meaning of the description that a component is connected to or coupled to another component does not only mean that the component is directly connected or coupled to the other component, but also means that one or more other components are interposed therebetween. It should be understood to include the meaning that may be connected or coupled via an element. In addition, terms for describing the relationship between the elements (eg, 'between', 'between', etc.) should also be interpreted with similar meanings.

본원에 개시된 실시예들에 있어서, 도시된 구성 요소들의 배치는 발명이 구현되는 환경 또는 요구 사항에 따라 달라질 수 있다. 예컨대, 일부 구성 요소가 생략되거나 몇몇 구성 요소들이 통합되어 하나로 실시될 수 있다. 또한 일부 구성 요소들의 배치 순서 및 연결이 변경될 수 있다.In the embodiments disclosed herein, the arrangement of the illustrated components may vary depending on the environment or requirements in which the invention is implemented. For example, some components may be omitted or some components may be integrated and implemented as one. Also, the arrangement order and connection of some components may be changed.

이상에서는 본 발명의 다양한 실시예들에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예들에 한정되지 아니하며, 상술한 실시예들은 첨부하는 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양하게 변형 실시될 수 있음은 물론이고, 이러한 변형 실시예들이 본 발명의 기술적 사상이나 범위와 별개로 이해되어져서는 아니 될 것이다. 따라서, 본 발명의 기술적 범위는 오직 첨부된 특허청구범위에 의해서만 정해져야 할 것이다.In the above, various embodiments of the present invention have been shown and described, but the present invention is not limited to the specific embodiments described above, and the above-described embodiments depart from the gist of the present invention as claimed in the appended claims. Without this, various modifications may be made by those of ordinary skill in the art to which the present invention pertains, and these modified embodiments should not be understood separately from the technical spirit or scope of the present invention. Accordingly, the technical scope of the present invention should be defined only by the appended claims.

100: 컨텐츠 추천을 위한 장치
110: 데이터베이스부
120: 프로세싱 엔진
130: 심층 학습 모듈
133: 입력 계층
135: 심층 신경망 계층
137: 시그모이드 함수 계층
140: 필터 계층
100: device for content recommendation
110: database unit
120: processing engine
130: deep learning module
133: input layer
135: deep neural network layer
137: sigmoid function layer
140: filter layer

Claims (31)

심층 학습(Deep Learning)에 기반한 컨텐츠 추천 방법으로서,
특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 수신하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠임 -,
상기 입력 정보를 입력 계층으로 입력하여 임베딩(embedding) 처리를 수행함으로써 입력 벡터들을 출력하는 단계,
상기 입력 벡터들을 심층 신경망(Deep Neural Network: DNN) 계층으로 입력하여 복수의 출력 값을 제공하는 단계,
상기 복수의 출력 값을 시그모이드 함수 계층(Sigmoid Function Layer)으로 입력하여 상기 특정 컨텐츠에 대한 재시청 확률값을 제공하는 단계 - 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 -, 및
상기 재시청 확률값을 필터 계층으로 입력하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계를 포함하고,
상기 입력 정보를 입력 계층으로 입력하여 임베딩(embedding) 처리를 수행함으로써 입력 벡터들을 출력하는 단계는, 상기 특정 고객의 시청 이력 정보를 인코딩하여 제1 벡터를 제공하는 단계, 상기 특정 고객의 평가 이력 정보를 인코딩하여 제2 벡터를 제공하는 단계, 상기 특정 고객의 재시청 이력 정보를 인코딩하여 제3 벡터를 제공하는 단계, 상기 제1 벡터와 상기 제3 벡터를 외적하여 제4 벡터를 제공하는 단계, 상기 제2 벡터와 상기 제3 벡터를 외적하여 제5 벡터를 제공하는 단계, 상기 제1 벡터와 상기 제3 벡터를 내적하여 제1 스칼라 값을 제공하는 단계, 상기 제2 벡터와 상기 제3 벡터를 내적하여 제2 스칼라 값을 제공하는 단계 및 상기 제4 벡터, 상기 제5 벡터, 상기 제1 스칼라 값 및 상기 제2 스칼라 값을 이용하여 재시청 의사 특징 벡터를 생성하는 단계를 포함하는, 컨텐츠 추천 방법.
As a content recommendation method based on deep learning,
Receiving input information including customer information of a specific customer and information about specific content, wherein the customer information of the specific customer includes viewing history information, evaluation history information, and re-viewing history information of the specific customer, and The content is the content that the specific customer has watched -,
outputting input vectors by inputting the input information into an input layer and performing an embedding process;
providing a plurality of output values by inputting the input vectors to a deep neural network (DNN) layer;
providing a re-viewing probability value for the specific content by inputting the plurality of output values to a sigmoid function layer - The re-viewing probability value represents a probability that the specific customer will re-view the specific content -, and
determining whether to recommend the specific content to the specific customer by inputting the re-viewing probability value to a filter layer;
The step of outputting input vectors by inputting the input information into an input layer and performing embedding processing includes: encoding the viewing history information of the specific customer to provide a first vector; Evaluation history information of the specific customer providing a second vector by encoding, providing a third vector by encoding re-viewing history information of the specific customer, providing a fourth vector by cross product of the first vector and the third vector; providing a fifth vector by cross product of the second vector and the third vector; providing a first scalar value by dot product of the first vector and the third vector; and the second vector and the third vector content, comprising the steps of providing a second scalar value by dot product of Recommended way.
제1항에 있어서,
상기 특정 고객의 고객 정보는 상기 특정 고객의 고객 ID(Identification) 및 프로필 정보를 더 포함하는, 컨텐츠 추천 방법.
According to claim 1,
The customer information of the specific customer further comprises a customer ID (Identification) and profile information of the specific customer, content recommendation method.
제2항에 있어서,
상기 특정 고객의 프로필 정보는 상기 특정 고객의 가입 정보, 상기 특정 고객의 나이에 관한 정보 및 상기 특정 고객의 성별에 관한 정보를 포함하는, 컨텐츠 추천 방법.
3. The method of claim 2,
The profile information of the specific customer includes subscription information of the specific customer, information about the age of the specific customer, and information about the gender of the specific customer, content recommendation method.
제1항에 있어서,
상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 ID를 포함하는, 컨텐츠 추천 방법.
According to claim 1,
The content recommendation method, wherein the information on the specific content includes a content ID of the specific content.
제4항에 있어서,
상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 메타 정보(content meta information)를 더 포함하는, 컨텐츠 추천 방법.
5. The method of claim 4,
The content recommendation method, wherein the information on the specific content further includes content meta information of the specific content.
제1항에 있어서,
상기 특정 컨텐츠는 VOD(video on demand) 컨텐츠인, 컨텐츠 추천 방법.
According to claim 1,
The specific content is video on demand (VOD) content, the content recommendation method.
삭제delete 제1항에 있어서,
상기 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 수신하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보, 재시청 이력 정보 및 프로필 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠임 - 이전에, 상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층을 학습 데이터로 학습시키는 단계를 더 포함하는, 컨텐츠 추천 방법.
According to claim 1,
Receiving input information including customer information of the specific customer and information on specific content - The customer information of the specific customer includes viewing history information, evaluation history information, re-viewing history information, and profile information of the specific customer And, the specific content is the content that the specific customer has a history of watching - Previously, further comprising the step of learning the input layer, the deep neural network layer, and the sigmoid function layer as training data, content recommendation Way.
제8항에 있어서,
상기 학습 데이터는 고객 정보 및 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 포함하고, 상기 고객 정보는 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고,
상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층은 복수의 입력 노드 및 복수의 출력 노드를 포함하고,
상기 입력 노드들과 상기 출력 노드들 간에는 가중치들이 설정되어 있으며,
상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층을 학습 데이터로 학습시키는 단계는, 상기 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 상기 입력 계층으로 입력시켰을 때 상기 시그모이드 함수 계층으로부터 출력되는 재시청 확률값이 선정된 임계값 이상이 되도록 상기 가중치들을 변경하는 단계를 포함하는, 컨텐츠 추천 방법.
9. The method of claim 8,
The learning data includes customer information and information on content that the customer has re-viewed, and the customer information includes viewing history information, evaluation history information, and re-viewing history information,
The input layer, the deep neural network layer, and the sigmoid function layer include a plurality of input nodes and a plurality of output nodes,
Weights are set between the input nodes and the output nodes,
The step of learning the input layer, the deep neural network layer, and the sigmoid function layer as learning data includes the sigmoid function when the customer inputs information about content having a history of re-viewing to the input layer. and changing the weights so that a re-viewing probability value output from a layer is equal to or greater than a predetermined threshold value.
제1항에 있어서,
상기 복수의 출력 값을 시그모이드 함수 계층(Sigmoid Function Layer)으로 입력하여 상기 특정 컨텐츠에 대한 재시청 확률값을 제공하는 단계 - 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 - 는, 상기 복수의 출력값에 시그모이드 함수를 적용해서 상기 재시청 확률값을 제공하는 단계를 포함하는, 컨텐츠 추천 방법.
According to claim 1,
providing a re-viewing probability value for the specific content by inputting the plurality of output values to a sigmoid function layer - The re-viewing probability value represents a probability that the specific customer will re-view the specific content - is, by applying a sigmoid function to the plurality of output values, comprising the step of providing the re-viewing probability value, the content recommendation method.
제1항에 있어서,
상기 재시청 확률값을 필터 계층으로 입력하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계는, 상기 재시청 확률값이 선정된 임계값 이상인 경우 상기 특정 컨텐츠를 상기 특정 고객에게 추천하는 것으로 결정하는 단계를 포함하는, 컨텐츠 추천 방법.
According to claim 1,
The step of determining whether to recommend the specific content to the specific customer by inputting the re-viewing probability value to the filter layer includes determining that the specific content is recommended to the specific customer when the re-viewing probability value is greater than or equal to a predetermined threshold value A content recommendation method comprising the step of doing.
심층 학습에 기반한 컨텐츠 추천 방법으로서,
특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 심층 학습 모듈로 입력함으로써 상기 특정 컨텐츠에 대한 재시청 확률값 제공하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠이며, 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 -, 및
상기 재시청 확률값에 기초하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계를 포함하고,
상기 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 포함하는 입력 정보를 심층 학습 모듈로 입력함으로써 상기 특정 컨텐츠에 대한 재시청 확률값 제공하는 단계 - 상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠이며, 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 - 는, 상기 특정 고객의 시청 이력 정보를 인코딩하여 제1 벡터를 제공하는 단계, 상기 특정 고객의 평가 이력 정보를 인코딩하여 제2 벡터를 제공하는 단계, 상기 특정 고객의 재시청 이력 정보를 인코딩하여 제3 벡터를 제공하는 단계, 상기 제1 벡터와 상기 제3 벡터를 외적하여 제4 벡터를 제공하는 단계, 상기 제2 벡터와 상기 제3 벡터를 외적하여 제5 벡터를 제공하는 단계, 상기 제1 벡터와 상기 제3 벡터를 내적하여 제1 스칼라 값을 제공하는 단계, 상기 제2 벡터와 상기 제3 벡터를 내적하여 제2 스칼라 값을 제공하는 단계 및 상기 제4 벡터, 상기 제5 벡터, 상기 제1 스칼라 값 및 상기 제2 스칼라 값을 이용하여 재시청 의사 특징 벡터를 생성하는 단계를 포함하는, 컨텐츠 추천 방법.
As a content recommendation method based on deep learning,
Providing a re-viewing probability value for the specific content by inputting input information including information about the specific customer's customer information and specific content into the deep learning module - The specific customer's customer information includes the specific customer's viewing history information; evaluation history information and re-viewing history information, wherein the specific content is a content that has been viewed by the specific customer, and the re-viewing probability value represents a probability that the specific customer will re-view the specific content -, and
determining whether to recommend the specific content to the specific customer based on the re-viewing probability value;
Providing a re-viewing probability value for the specific content by inputting input information including the customer information of the specific customer and information on the specific content into the deep learning module - The customer information of the specific customer is the viewing history information of the specific customer , evaluation history information and re-viewing history information, wherein the specific content is a content that has been viewed by the specific customer, and the re-viewing probability value represents a probability that the specific customer will re-view the specific content - is, encoding the specific customer's viewing history information to provide a first vector; encoding the specific customer's evaluation history information to provide a second vector; encoding the specific customer's re-viewing history information to provide a third vector providing a fourth vector by cross-producting the first vector and the third vector, providing a fifth vector by cross-producting the second vector and the third vector, the first vector and providing a first scalar value by dot product of the third vector; providing a second scalar value by dot product of the second vector and the third vector; and the fourth vector, the fifth vector, and the first and generating a replay pseudo feature vector by using a scalar value and the second scalar value.
제12항에 있어서,
상기 특정 고객의 고객 정보는 상기 특정 고객의 고객 ID 및 프로필 정보를 더 포함하는, 컨텐츠 추천 방법.
13. The method of claim 12,
The customer information of the specific customer further comprises a customer ID and profile information of the specific customer, content recommendation method.
제13항에 있어서,
상기 특정 고객의 프로필 정보는 상기 특정 고객의 가입 정보, 상기 특정 고객의 나이에 관한 정보 및 상기 특정 고객의 성별에 관한 정보를 포함하는, 컨텐츠 추천 방법.
14. The method of claim 13,
The profile information of the specific customer includes subscription information of the specific customer, information about the age of the specific customer, and information about the gender of the specific customer, content recommendation method.
제12항에 있어서,
상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 ID를 포함하는, 컨텐츠 추천 방법.
13. The method of claim 12,
The content recommendation method, wherein the information on the specific content includes a content ID of the specific content.
제15항에 있어서,
상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 메타 정보를 더 포함하는, 컨텐츠 추천 방법.
16. The method of claim 15,
The content recommendation method, wherein the information on the specific content further includes content meta information of the specific content.
삭제delete 제12항에 있어서,
상기 심층 학습 모듈은 입력 계층, 심층 신경망 계층 및 시그모이드 함수 계층을 포함하는, 컨텐츠 추천 방법.
13. The method of claim 12,
The deep learning module includes an input layer, a deep neural network layer, and a sigmoid function layer, the content recommendation method.
제12항에 있어서,
상기 재시청 확률값에 기초하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하는 단계는, 상기 재시청 확률값이 선정된 임계값 이상인 경우 상기 특정 컨텐츠를 상기 특정 고객에게 추천하는 것으로 결정하는 단계를 포함하는, 컨텐츠 추천 방법.
13. The method of claim 12,
The step of determining whether to recommend the specific content to the specific customer based on the re-viewing probability value may include determining whether to recommend the specific content to the specific customer when the re-viewing probability value is greater than or equal to a predetermined threshold value. Including, content recommendation method.
심층 학습에 기반한 컨텐츠 추천을 위한 장치로서,
고객 정보 및 컨텐츠에 관한 정보를 저장하는 데이터베이스부, 및
입력 계층, 심층 신경망 계층 및 시그모이드 함수 계층을 포함하는 심층 학습 모듈을 구현하며, 상기 데이터베이스부로부터 특정 고객의 고객 정보 및 특정 컨텐츠에 관한 정보를 검색하여 상기 심층 학습 모듈로 입력되게 하도록 구성된 프로세싱 엔진을 포함하며,
상기 특정 고객의 고객 정보는 상기 특정 고객의 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고, 상기 특정 컨텐츠는 상기 특정 고객이 시청한 이력이 있는 컨텐츠이고,
상기 입력 계층은 상기 특정 고객의 고객 정보 및 상기 특정 컨텐츠에 관한 정보를 임베딩 처리하여 입력 벡터들을 출력하도록 구성되고,
상기 심층 신경망 계층은 상기 입력 벡터들을 처리하여 복수의 출력 값을 제공하도록 구성되고,
상기 시그모이드 함수 계층은 상기 복수의 출력 값에 기초하여 상기 특정 컨텐츠에 대한 재시청 확률값을 제공하도록 구성되고 - 상기 재시청 확률값은 상기 특정 고객이 상기 특정 컨텐츠를 재시청할 확률을 나타냄 -,
상기 프로세싱 엔진은 상기 재시청 확률값에 기초하여 상기 특정 컨텐츠를 상기 특정 고객에게 추천할지 여부를 결정하도록 더 구성되고,
상기 입력 계층은, 상기 특정 고객의 시청 이력 정보를 인코딩하여 제1 벡터를 제공하고, 상기 특정 고객의 평가 이력 정보를 인코딩하여 제2 벡터를 제공하고, 상기 특정 고객의 재시청 이력 정보를 인코딩하여 제3 벡터를 제공하고, 상기 제1 벡터와 상기 제3 벡터를 외적하여 제4 벡터를 제공하고, 상기 제2 벡터와 상기 제3 벡터를 외적하여 제5 벡터를 제공하고, 상기 제1 벡터와 상기 제3 벡터를 내적하여 제1 스칼라 값을 제공하고, 상기 제2 벡터와 상기 제3 벡터를 내적하여 제2 스칼라 값을 제공하고, 상기 제4 벡터, 상기 제5 벡터, 상기 제1 스칼라 값 및 상기 제2 스칼라 값을 이용하여 재시청 의사 특징 벡터를 생성하도록 더 구성되는, 컨텐츠 추천을 위한 장치.
As a device for content recommendation based on deep learning,
A database unit for storing information about customer information and content, and
A processing configured to implement a deep learning module including an input layer, a deep neural network layer, and a sigmoid function layer, and to retrieve customer information of a specific customer and information about specific content from the database unit and input to the deep learning module including the engine;
The customer information of the specific customer includes viewing history information, evaluation history information, and re-viewing history information of the specific customer, and the specific content is content that has a history watched by the specific customer,
The input layer is configured to embed customer information of the specific customer and information about the specific content to output input vectors,
the deep neural network layer is configured to process the input vectors to provide a plurality of output values;
the sigmoid function layer is configured to provide a re-view probability value for the specific content based on the plurality of output values, wherein the re-view probability value represents a probability that the specific customer will re-view the specific content;
the processing engine is further configured to determine whether to recommend the specific content to the specific customer based on the re-viewing probability value;
The input layer provides a first vector by encoding the viewing history information of the specific customer, provides a second vector by encoding the evaluation history information of the specific customer, and encoding the re-viewing history information of the specific customer providing a third vector, cross-producting the first vector and the third vector to provide a fourth vector, cross-producting the second vector and the third vector to provide a fifth vector, and The third vector is dot product to provide a first scalar value, the second vector and the third vector are dot product to provide a second scalar value, and the fourth vector, the fifth vector, and the first scalar value and generating a replay pseudo feature vector using the second scalar value.
제20항에 있어서,
상기 특정 고객의 고객 정보는 상기 특정 고객의 고객 ID 및 프로필 정보를 더 포함하는, 컨텐츠 추천을 위한 장치.
21. The method of claim 20,
The customer information of the specific customer further comprises a customer ID and profile information of the specific customer, the device for content recommendation.
제21항에 있어서,
상기 특정 고객의 프로필 정보는 상기 특정 고객의 가입 정보, 상기 특정 고객의 나이에 관한 정보 및 상기 특정 고객의 성별에 관한 정보를 포함하는, 컨텐츠 추천을 위한 장치.
22. The method of claim 21,
The specific customer's profile information includes subscription information of the specific customer, information on the age of the specific customer, and information on the gender of the specific customer.
제20항에 있어서,
상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 ID를 포함하는, 컨텐츠 추천을 위한 장치.
21. The method of claim 20,
The information on the specific content includes a content ID of the specific content, the content recommendation apparatus.
제23항에 있어서,
상기 특정 컨텐츠에 관한 정보는 상기 특정 컨텐츠의 컨텐츠 메타 정보를 더 포함하는, 컨텐츠 추천을 위한 장치.
24. The method of claim 23,
The information about the specific content further includes content meta information of the specific content, the content recommendation apparatus.
삭제delete 제20항에 있어서,
상기 프로세싱 엔진은 상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층을 학습 데이터로 학습시키도록 더 구성되는, 컨텐츠 추천을 위한 장치.
21. The method of claim 20,
The apparatus for content recommendation, wherein the processing engine is further configured to train the input layer, the deep neural network layer, and the sigmoid function layer as training data.
제26항에 있어서,
상기 학습 데이터는 고객 정보 및 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 포함하고, 상기 고객 정보는 시청 이력 정보, 평가 이력 정보 및 재시청 이력 정보를 포함하고,
상기 입력 계층, 상기 심층 신경망 계층 및 상기 시그모이드 함수 계층은 복수의 입력 노드 및 복수의 출력 노드를 포함하고,
상기 입력 노드들과 상기 출력 노드들 간에는 가중치들이 설정되어 있으며,
상기 프로세싱 엔진은, 상기 고객이 재시청한 이력이 있는 컨텐츠에 관한 정보를 상기 입력 계층으로 입력시켰을 때 상기 시그모이드 함수 계층으로부터 출력되는 재시청 확률값이 선정된 임계값 이상이 되도록 상기 가중치들을 변경하도록 더 구성되는, 컨텐츠 추천을 위한 장치.
27. The method of claim 26,
The learning data includes customer information and information on content that the customer has re-viewed, and the customer information includes viewing history information, evaluation history information, and re-viewing history information,
The input layer, the deep neural network layer, and the sigmoid function layer include a plurality of input nodes and a plurality of output nodes,
Weights are set between the input nodes and the output nodes,
The processing engine changes the weights so that when the customer inputs information about the content having a history of re-viewing to the input layer, the re-viewing probability value output from the sigmoid function layer is equal to or greater than a predetermined threshold value. A device for content recommendation, further configured to do so.
제20항에 있어서,
상기 시그모이드 함수 계층은 상기 복수의 출력값에 시그모이드 함수를 적용해서 상기 재시청 확률값을 제공하도록 더 구성되는, 컨텐츠 추천을 위한 장치.
21. The method of claim 20,
The apparatus for content recommendation, wherein the sigmoid function layer is further configured to provide the replay probability value by applying a sigmoid function to the plurality of output values.
제20항에 있어서,
상기 프로세싱 엔진은, 상기 재시청 확률값이 선정된 임계값 이상인 경우 상기 특정 컨텐츠를 상기 특정 고객에게 추천하도록 더 구성되는, 컨텐츠 추천을 위한 장치.
21. The method of claim 20,
The processing engine is further configured to recommend the specific content to the specific customer when the re-viewing probability value is equal to or greater than a predetermined threshold value.
프로그램을 기록한 컴퓨터 판독가능 기록매체로서, 상기 프로그램은 명령어들을 포함하고, 상기 명령어들은 컴퓨터에 의해 실행될 때 제1항 내지 제6항 및 제8항 내지 제11항 중 어느 한 항에 따른 방법을 수행하는, 컴퓨터 판독가능 기록매체.
A computer-readable recording medium recording a program, the program including instructions, which, when executed by a computer, perform the method according to any one of claims 1 to 6 and 8 to 11 which is a computer-readable recording medium.
프로그램을 기록한 컴퓨터 판독가능 기록매체로서, 상기 프로그램은 명령어들을 포함하고, 상기 명령어들은 컴퓨터에 의해 실행될 때 제12항 내지 제16항, 제18항 및 제19항 중 어느 한 항에 따른 방법을 수행하는, 컴퓨터 판독가능 기록매체.

A computer-readable recording medium recording a program, the program including instructions, which, when executed by a computer, perform the method according to any one of claims 12 to 16, 18 and 19 which is a computer-readable recording medium.

KR1020200037393A 2020-03-27 2020-03-27 Method and Apparatus for Deep Learning Based Content Recommendation KR102342492B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200037393A KR102342492B1 (en) 2020-03-27 2020-03-27 Method and Apparatus for Deep Learning Based Content Recommendation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200037393A KR102342492B1 (en) 2020-03-27 2020-03-27 Method and Apparatus for Deep Learning Based Content Recommendation

Publications (2)

Publication Number Publication Date
KR20210120545A KR20210120545A (en) 2021-10-07
KR102342492B1 true KR102342492B1 (en) 2021-12-22

Family

ID=78114853

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200037393A KR102342492B1 (en) 2020-03-27 2020-03-27 Method and Apparatus for Deep Learning Based Content Recommendation

Country Status (1)

Country Link
KR (1) KR102342492B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102086604B1 (en) * 2018-09-10 2020-03-09 서울대학교산학협력단 Deep learning based conversation-style sentence spacing method and system using context information

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9485543B2 (en) * 2013-11-12 2016-11-01 Google Inc. Methods, systems, and media for presenting suggestions of media content
KR20180121466A (en) * 2017-04-06 2018-11-07 네이버 주식회사 Personalized product recommendation using deep learning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102086604B1 (en) * 2018-09-10 2020-03-09 서울대학교산학협력단 Deep learning based conversation-style sentence spacing method and system using context information

Also Published As

Publication number Publication date
KR20210120545A (en) 2021-10-07

Similar Documents

Publication Publication Date Title
US11017024B2 (en) Media content rankings for discovery of novel content
CN108595493B (en) Media content pushing method and device, storage medium and electronic device
Maddodi NETFLIX bigdata analytics-the emergence of data driven recommendation
US11153655B1 (en) Content appeal prediction using machine learning
CN107592572B (en) Video recommendation method, device and equipment
US11657219B2 (en) Systems and methods for using machine learning models to organize and select modular components for user interface templates
US20210103606A1 (en) Methods and systems for performing context maintenance on search queries in a conversational search environment
CN115066906A (en) Method and system for recommending based on user-provided criteria
KR102342492B1 (en) Method and Apparatus for Deep Learning Based Content Recommendation
KR102342485B1 (en) Method and Apparatus for Deep Learning Based Content Recommendation
KR102357360B1 (en) Method and Apparatus for Deep Learning Based Real-time Program Recommendation
KR102330059B1 (en) Method and device for recommending a poster
KR102536499B1 (en) Method and Apparatus for Deep Learning Based Content Recommendation
KR102380871B1 (en) Method and Apparatus for Recommendation of Similar Content Items
KR102361593B1 (en) Method and Apparatus for Determining Whether to Automatically Play Recommended Content Based on Deep Learning
CN114357301A (en) Data processing method, device and readable storage medium
KR102391644B1 (en) Method and Apparatus for VOD Content Recommendation
US11550991B2 (en) Methods and systems for generating alternative content using adversarial networks implemented in an application programming interface layer
KR102399834B1 (en) Method and Apparatus for VOD Content Recommendation
CN113761364B (en) Multimedia data pushing method and device
JP7090777B1 (en) Content recommendation device and content recommendation method
US20230362444A1 (en) Computing device and operating method thereof
US20240129583A1 (en) Methods and systems for modifying a media guidance application based on user data
KR102357357B1 (en) Method and Apparatus for Content Recommendation Based on User-Based Collaborative Filtering
US20240121475A1 (en) Methods and systems for modifying a media guidance application based on user data

Legal Events

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