KR20190103505A - Method and apparatus for recommending items based on deep learning - Google Patents

Method and apparatus for recommending items based on deep learning Download PDF

Info

Publication number
KR20190103505A
KR20190103505A KR1020180016949A KR20180016949A KR20190103505A KR 20190103505 A KR20190103505 A KR 20190103505A KR 1020180016949 A KR1020180016949 A KR 1020180016949A KR 20180016949 A KR20180016949 A KR 20180016949A KR 20190103505 A KR20190103505 A KR 20190103505A
Authority
KR
South Korea
Prior art keywords
item
evaluation information
deep learning
items
evaluation
Prior art date
Application number
KR1020180016949A
Other languages
Korean (ko)
Other versions
KR102129583B1 (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 KR1020180016949A priority Critical patent/KR102129583B1/en
Publication of KR20190103505A publication Critical patent/KR20190103505A/en
Application granted granted Critical
Publication of KR102129583B1 publication Critical patent/KR102129583B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • 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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0254Targeted advertisements based on statistics

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Probability & Statistics with Applications (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Disclosed is an apparatus for recommending items based on deep learning which accurately recommends top N items. According to an embodiment of the present invention, the apparatus for recommending items by using initial evaluation information including evaluation result values obtained by evaluating at least one among a plurality of items by a plurality of users comprises: a step of inputting a prescribed initial result value as an evaluation result value corresponding to a non-evaluation item which is not evaluated by users for the initial evaluation information to generate update evaluation information; a step of learning a deep learning model based on the update evaluation information and a prescribed differential weight applied to an error corresponding to the non-evaluation item in the update evaluation information; a step of generating prediction evaluation information predicting results obtained by evaluating the plurality of items by the plurality of users based on the deep learning model and the initial evaluation information; and a step of using the prediction evaluation information to recommend a plurality of recommendation items among the plurality of items to a recommendation subject who is one among the plurality of users.

Description

딥러닝 기반의 아이템 추천 방법 및 장치 {METHOD AND APPARATUS FOR RECOMMENDING ITEMS BASED ON DEEP LEARNING}Deep learning-based item recommendation method and device {METHOD AND APPARATUS FOR RECOMMENDING ITEMS BASED ON DEEP LEARNING}

본 발명은 딥러닝에 기반하여 아이템을 추천하는 방법 및 장치에 관한 것으로, 더욱 상세하게는, 딥러닝 모델 기반의 협업 필터링을 구현함으로써 추천 정확도가 향상된 아이템 추천 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for recommending items based on deep learning, and more particularly, to an item recommendation method and apparatus for improving recommendation accuracy by implementing deep learning model-based collaborative filtering.

추천 시스템은 오늘날 대부분의 온라인 쇼핑몰에서 사용자의 구매 촉진을 위해 필수적으로 이용되고 있으며, 학계에서도 활발히 연구되고 있다. 추천 알고리즘의 여러 접근방법들 중 가장 대표적인 것으로 협업 필터링(collaborative filtering, CF)을 들 수 있다. 협업 필터링은 사용자가 남긴 평점을 기반으로 사용자의 취향과 아이템(상품)에 관한 성향을 분석한 후, 사용자가 아직 구매하지 않은 아이템들에 부여할 평점 혹은 구매할만한 상위 N개(top-N)의 아이템을 예측한다.The recommendation system is indispensable for the promotion of users' purchases in most online shopping malls today, and is actively studied in academia. The most representative of the various approaches to the recommendation algorithm is collaborative filtering (CF). Collaborative filtering analyzes the user's taste and propensity about the item (goods) based on the user's ratings, and then gives the user the top-N ratings or ratings to give to items that the user has not yet purchased. Predict the item.

또한, 최근 딥러닝(deep learning)이 여러 분야에 성공적으로 적용됨에 따라, 추천 시스템에도 딥러닝을 접목하려는 시도가 늘고 있다. 그 중 오토인코더(autoencoder)는 대표적인 딥러닝 모델로써 다양한 추천 연구들에서 활발하게 사용되고 있다. In addition, as deep learning has been successfully applied in various fields recently, attempts to apply deep learning to recommendation systems are increasing. Among them, autoencoder is a representative deep learning model and is actively used in various recommended studies.

그러나, 기존의 딥러닝 모델을 이용한 추천 시스템은 모두 사용자가 아이템에 어떤 평점을 부여할 것인지를 정확하게 예측하는 것에 초점을 맞추었으며, 상위 N개 아이템 추천의 정확도를 높이려는 시도는 이루어지지 않고 있다. However, all of the existing deep learning model recommendation systems focused on accurately predicting which rating the user would give to the item, and no attempt was made to increase the accuracy of the top N item recommendation.

따라서, 딥러닝 모델을 기반으로 하는 협업 필터링을 이용하여 상위 N개 아이템 추천을 수행할 때, 추천 결과의 정확성을 향상시킬 수 있는 방법 및 장치에 관한 필요성이 대두되고 있다.Therefore, there is a need for a method and apparatus for improving the accuracy of the recommendation result when performing the top N item recommendation using collaborative filtering based on the deep learning model.

관련 선행기술로는 대한민국 공개특허공보 제 10-2014-0046108호(발명의 명칭: 온라인 쇼핑몰에서 상품 간의 연관 분석을 통한 상품추천시스템, 공개일자: 2014년 4월 18일)가 있다.Related prior arts include Korean Laid-Open Patent Publication No. 10-2014-0046108 (name of the invention: a product recommendation system through an analysis of the association between products in an online shopping mall, publication date: April 18, 2014).

본 발명은 딥러닝 모델을 기반으로 하는 협업 필터링을 이용하여 상위 N개(top-N) 아이템을 보다 높은 정확도로 추천하는 방법 및 장치를 제공하고자 한다.An object of the present invention is to provide a method and apparatus for recommending top N items with higher accuracy using collaborative filtering based on a deep learning model.

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

상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 방법은 복수의 사용자 각각이 복수의 아이템 중 적어도 하나를 평가한 평가결과값을 포함하는 정보인 초기평가정보를 이용하여 아이템을 추천하는 방법에 있어서, 상기 초기평가정보에 대하여 사용자가 평가하지 않은 아이템인 미평가아이템에 대응되는 평가결과값으로 소정의 초기결과값을 입력하여, 갱신평가정보를 생성하는 단계; 상기 갱신평가정보 및 상기 갱신평가정보에서 상기 미평가아이템에 대응되는 오차에 적용되는 소정의 차등가중치에 기초하여, 딥러닝 모델(deep learning model)을 학습시키는 단계; 상기 딥러닝 모델 및 상기 초기평가정보에 기초하여, 상기 복수의 사용자가 상기 복수의 아이템을 평가한 결과를 예측하는 예측평가정보를 생성하는 단계; 및 상기 예측평가정보를 이용하여 상기 복수의 사용자 중 하나인 추천대상자에게 상기 복수의 아이템 중에서 복수의 추천아이템을 추천하는 단계를 포함한다.The deep learning-based item recommendation method according to an embodiment of the present invention for solving the above problem is performed by using initial evaluation information which is information including a result of evaluating at least one of a plurality of items by each of a plurality of users. A method for recommending an item, the method comprising: inputting predetermined initial result values as evaluation result values corresponding to unevaluated items which are items that the user has not evaluated with respect to the initial evaluation information, and generating updated evaluation information; Learning a deep learning model based on a predetermined differential weight value applied to the update evaluation information and the error corresponding to the unrated item in the update evaluation information; Generating predictive evaluation information for predicting a result of evaluating the plurality of items by the plurality of users based on the deep learning model and the initial evaluation information; And recommending a plurality of recommendation items among the plurality of items to the recommendation target person, which is one of the plurality of users, using the predictive evaluation information.

바람직하게는, 상기 초기결과값은 상기 복수의 아이템 각각에 부여할 수 있는 평가결과값 중에서, 소정의 임계평가값 이하의 값으로 결정될 수 있다.Preferably, the initial result value may be determined to be a value less than or equal to a predetermined threshold evaluation value among evaluation results that can be given to each of the plurality of items.

바람직하게는, 상기 딥러닝 모델을 학습시키는 단계는 상기 갱신평가정보에서 상기 미평가아이템에 대응되는 오차에 적용되는 가중치로 상기 차등가중치를 설정하는 단계; 상기 갱신평가정보에서 상기 미평가아이템을 제외한 나머지 아이템인 평가아이템에 대응되는 오차에 적용되는 가중치로 상기 차등가중치보다 큰 값을 갖는 기본가중치를 설정하는 단계; 및 상기 차등가중치, 상기 기본가중치 및 상기 갱신평가정보를 이용하여, 상기 딥러닝 모델을 반복적으로 학습시키는 단계를 포함할 수 있다.Preferably, the training of the deep learning model comprises: setting the differential weight value with a weight applied to an error corresponding to the unrated item in the updated evaluation information; Setting a basic weight value having a value greater than the differential weight value as a weight applied to an error corresponding to an evaluation item which is a remaining item other than the unrated item in the update evaluation information; And repeatedly learning the deep learning model using the differential weight value, the basic weight value, and the update evaluation information.

바람직하게는, 상기 딥러닝 모델은 오토인코더(autoencoder)에 기반할 수 있다. Advantageously, the deep learning model may be based on an autoencoder.

바람직하게는, 상기 복수의 추천아이템을 추천하는 단계는 상기 예측평가정보로부터 상기 추천대상자에 대한 상기 복수의 아이템에 대응되는 평가결과값을 추출하는 단계; 상기 추출된 평가결과값을 내림차순으로 정렬하는 단계; 및 상기 정렬된 평가결과값의 크기 순서에 따라, 상기 복수의 추천아이템을 추천하는 단계를 포함할 수 있다.Preferably, the recommending of the plurality of recommendation items comprises: extracting evaluation result values corresponding to the plurality of items for the recommendation target from the prediction evaluation information; Sorting the extracted evaluation result values in descending order; And recommending the plurality of recommendation items according to the order of magnitude of the sorted evaluation result values.

또한, 상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 장치는 복수의 사용자 각각이 복수의 아이템 중 적어도 하나를 평가한 평가결과값을 포함하는 정보인 초기평가정보를 이용하여 아이템을 추천하는 장치에 있어서, 상기 초기평가정보에 대하여 사용자가 평가하지 않은 아이템인 미평가아이템에 대응되는 평가결과값으로 소정의 초기결과값을 입력하여, 갱신평가정보를 생성하는 갱신부; 상기 갱신평가정보 및 상기 갱신평가정보에서 상기 미평가아이템에 대응되는 오차에 적용되는 소정의 차등가중치에 기초하여, 딥러닝 모델(deep learning model)을 학습시키는 학습부; 상기 딥러닝 모델 및 상기 초기평가정보에 기초하여, 상기 복수의 사용자가 상기 복수의 아이템을 평가한 결과를 예측하는 예측평가정보를 생성하는 예측부; 및 상기 예측평가정보를 이용하여 상기 복수의 사용자 중 하나인 추천대상자에게 상기 복수의 아이템 중에서 복수의 추천아이템을 추천하는 추천부를 포함한다.In addition, the deep learning-based item recommendation apparatus according to an embodiment of the present invention for solving the above problems is the initial evaluation information that is information including the evaluation result value of each of the plurality of users to evaluate at least one of the plurality of items An apparatus for recommending an item by using an update unit, comprising: an update unit configured to generate predetermined evaluation result values by inputting predetermined initial result values as evaluation result values corresponding to unevaluated items which are items that the user has not evaluated with respect to the initial evaluation information. ; A learning unit learning a deep learning model based on a predetermined differential weight value applied to the update evaluation information and the error corresponding to the unrated item in the update evaluation information; A predicting unit configured to generate predictive evaluation information for predicting a result of evaluating the plurality of items by the plurality of users based on the deep learning model and the initial evaluation information; And a recommendation unit recommending a plurality of recommendation items among the plurality of items to the recommendation target person, which is one of the plurality of users, using the predictive evaluation information.

바람직하게는, 상기 초기결과값은 상기 복수의 아이템 각각에 부여할 수 있는 평가결과값 중에서, 소정의 임계평가값 이하의 값으로 결정될 수 있다.Preferably, the initial result value may be determined to be a value less than or equal to a predetermined threshold evaluation value among evaluation results that can be given to each of the plurality of items.

바람직하게는, 상기 학습부는 상기 갱신평가정보에서 상기 미평가아이템에 대응되는 오차에 적용되는 가중치로 상기 차등가중치를 설정하고, 상기 갱신평가정보에서 상기 미평가아이템을 제외한 나머지 아이템인 평가아이템에 대응되는 오차에 적용되는 가중치로 상기 차등가중치보다 큰 값을 갖는 기본가중치를 설정한 후, 상기 차등가중치, 상기 기본가중치 및 상기 갱신평가정보를 이용하여, 상기 딥러닝 모델을 반복적으로 학습시킬 수 있다.Preferably, the learning unit sets the differential weight to a weight applied to an error corresponding to the unevaluated item in the update evaluation information, and corresponds to the evaluation item which is the remaining item except for the unevaluated item in the update evaluation information. After setting a basic weight having a value greater than the differential weight as a weight applied to the error, the deep learning model may be repeatedly learned using the differential weight, the basic weight, and the update evaluation information.

바람직하게는, 상기 딥러닝 모델은 오토인코더(autoencoder)에 기반할 수 있다.Advantageously, the deep learning model may be based on an autoencoder.

바람직하게는, 상기 추천부는 상기 예측평가정보로부터 상기 추천대상자에 대한 상기 복수의 아이템에 대응되는 평가결과값을 추출하고, 상기 추출된 평가결과값을 내림차순으로 정렬하고, 상기 정렬된 평가결과값의 크기 순서에 따라, 상기 복수의 추천아이템을 추천할 수 있다.Preferably, the recommendation unit extracts evaluation result values corresponding to the plurality of items for the recommendation subject from the prediction evaluation information, sorts the extracted evaluation result values in descending order, and calculates the sorted evaluation result values. According to the size order, the plurality of recommended items may be recommended.

본 발명은 사용자들의 아이템 각각에 대한 상대적 선호도를 보다 효과적으로 학습하는 딥러닝 모델을 기반으로 하는 협업 필터링을 이용함으로써, 사용자들에게 상위 N개(top-N) 아이템을 보다 높은 정확도로 추천할 수 있는 효과가 있다.The present invention utilizes collaborative filtering based on a deep learning model that more effectively learns the relative preferences for each item of users, thereby allowing users to recommend top N items with higher accuracy. It works.

도 1은 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 딥러닝 모델의 학습 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 복수의 추천아이템을 추천하는 방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 장치를 설명하기 위한 블록도이다.
도 5는 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 방법의 효과를 설명하기 위한 도면이다.
1 is a flowchart illustrating a deep learning based item recommendation method according to an embodiment of the present invention.
2 is a flowchart illustrating a learning method of a deep learning model according to an exemplary embodiment of the present invention.
3 is a flowchart illustrating a method of recommending a plurality of recommended items according to an embodiment of the present invention.
4 is a block diagram illustrating a deep learning based item recommendation apparatus according to an embodiment of the present invention.
5 is a view for explaining the effect of the deep learning-based item recommendation method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the drawings, similar reference numerals are used for similar elements.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 방법을 설명하기 위한 흐름도이다.1 is a flowchart illustrating a deep learning based item recommendation method according to an embodiment of the present invention.

단계 S110에서는, 아이템 추천 장치가 초기평가정보에 대하여 사용자가 평가하지 않은 아이템인 미평가아이템에 대응되는 평가결과값으로 소정의 초기결과값을 입력하여, 갱신평가정보를 생성한다.In step S110, the item recommendation apparatus inputs a predetermined initial result value as an evaluation result value corresponding to an unevaluated item which is an item which the user has not evaluated with respect to the initial evaluation information, and generates updated evaluation information.

이때, 초기평가정보는 복수의 사용자 각각이 복수의 아이템 중 적어도 하나를 평가한 평가결과값을 포함하는 정보일 수 있다. In this case, the initial evaluation information may be information including an evaluation result value in which each of the plurality of users evaluates at least one of the plurality of items.

예컨대, 초기평가정보는, 사용자 M명과 영화 N개가 존재하는 인터넷 영화사이트에서, 그 사용자 M명 각각이 N개의 영화 각각에 대하여 평가한 평가결과값을 포함하는 정보일 수 있다. 하지만, 현실적으로 그 사용자 M명 모두가 N개의 영화를 전부 관람하고 평가하는 것은 극히 가능성이 낮은 일이다. 따라서, 초기평가정보는 사용자별로 관람한 N개 이하의 영화에 대한 평가결과값을 포함하지만, 관람하지 않은 나머지 영화에 대한 평가결과값은 포함하지 않을 수 있다.For example, the initial evaluation information may be information including an evaluation result value evaluated for each of the N movies by each of the M users in the Internet movie site where the M users and the N movies exist. In reality, however, it is extremely unlikely that all M users would watch and rate all N movies. Therefore, the initial evaluation information may include evaluation result values for N or fewer movies watched by each user, but may not include evaluation result values for the remaining movies not viewed.

여기서, 아이템 추천 장치는 초기평가정보에 존재하는 미평가아이템에 대응되는 평가결과값으로 초기결과값을 입력하여, 갱신평가정보를 생성할 수 있다. 즉, 갱신평가정보는 사용자가 평가한 아이템인 평가아이템에 대하여는 사용자가 직접 평가한 값으로 구성된 평가결과값을 포함하고, 미평가아이템에 대하여는 초기결과값으로 구성된 평가결과값을 포함하여 구성될 수 있다.Here, the item recommendation apparatus may generate the updated evaluation information by inputting the initial result value as the evaluation result value corresponding to the unevaluated item present in the initial evaluation information. In other words, the updated evaluation information may include an evaluation result value configured by the user directly for the evaluation item, which is an item evaluated by the user, and an evaluation result value including the initial result value for the unevaluated item. have.

다른 실시예에서는, 초기결과값은 사용자가 복수의 아이템 각각에 부여할 수 있는 평가결과값 중에서, 소정의 임계평가값 이하의 값으로 결정될 수 있다.In another embodiment, the initial result value may be determined to be a value less than or equal to a predetermined threshold evaluation value among evaluation results values that the user may assign to each of the plurality of items.

예컨대, 사용자가 아이템에 관하여 {0, 1, 2, 3, 4, 5} 중 하나의 평가결과값으로 평가하는 경우를 가정할 수 있다. 이때, 임계평가값이 0이라면 초기결과값은 0이하인 0으로 결정될 수 있다. 또한, 임계평가값이 1이라면 초기결과값은 0 및 1 중 하나로 결정될 수 있다.For example, it may be assumed that a user evaluates an evaluation result of one of {0, 1, 2, 3, 4, 5} with respect to an item. At this time, if the threshold evaluation value is 0, the initial result value may be determined as 0 which is 0 or less. In addition, if the threshold evaluation value is 1, the initial result value may be determined as one of 0 and 1.

이처럼, 초기결과값이 사용자가 부여할 수 있는 평가결과값 중에서 적절히 낮은 값으로 결정됨으로써, 아이템 추천 장치가 추후에 아이템에 관한 평가결과값을 정확하게 예측하는 측면에서는 불리할 수 있지만, 각 아이템 간의 상대적인 선호도를 예측하는 측면에서는 유리할 수 있다. 이는, 미평가아이템에 대한 평가결과값이 상대적으로 낮아져서, 평가아이템과 미평가아이템 간의 평가결과값의 차이가 두드러질 수 있기 때문이다.As such, since the initial result value is determined to be an appropriately low value among the evaluation result values that can be given by the user, the item recommendation device may be disadvantageous in terms of accurately predicting the evaluation result value for the item later, This may be advantageous in terms of predicting preferences. This is because the evaluation result value for the unevaluated item is relatively low, so that the difference in the evaluation result value between the evaluation item and the unevaluated item may be noticeable.

단계 S120에서는, 아이템 추천 장치가 그 갱신평가정보 및 갱신평가정보에서 미평가아이템에 대응되는 오차에 적용되는 소정의 차등가중치에 기초하여, 딥러닝 모델(deep learning model)을 학습시킨다.In step S120, the item recommendation apparatus learns a deep learning model based on a predetermined differential weight value applied to the error corresponding to the unrated item in the updated evaluation information and the updated evaluation information.

즉, 아이템 추천 장치는 그 갱신평가정보 및 차등가중치를 이용하여, 딥러닝 모델을 반복적으로 학습시킴으로써, 보다 정확하게 상위 N개의 아이템을 추천할 수 있다.That is, the item recommendation apparatus can recommend the top N items more accurately by repeatedly learning the deep learning model using the update evaluation information and the differential weight.

한편, 아이템 추천 장치가 딥러닝 모델을 학습시키는 구체적인 방법에 관하여는 도 2에 대한 설명에서 구체적으로 후술한다.On the other hand, a specific method for the item recommendation apparatus to learn the deep learning model will be described later in detail with reference to FIG.

다른 실시예에서는, 딥러닝 모델은 오토인코더(autoencoder)에 기반할 수 있다.In other embodiments, the deep learning model may be based on an autoencoder.

여기서, 오토인코더는 비감독 학습(unsupervised learning)을 위하여 사용되는 인공신경망(artificial neural network)으로, 입력과 출력이 최대한 같아지도록 학습될 수 있다.Here, the autoencoder is an artificial neural network used for unsupervised learning and can be trained to have the same input and output as possible.

나아가, 본 발명의 딥러닝 모델은 오토인코더에 기반하는 오토렉(AutoRec) 모델에 기반할 수 있다. 오토렉은 하나 또는 다수의 은닉층을 가지는 오토인코더 기반의 추천 모델로, 협업 필터링의 접근 방법을 이용한다. Furthermore, the deep learning model of the present invention may be based on an AutoRec model based on an auto encoder. Autorec is an auto-encoder-based recommendation model with one or more hidden layers and uses a collaborative filtering approach.

한편, 오토렉의 동작 방법을 간략히 설명하면, 오토렉은 사용자의 평점 벡터를 은닉층으로 인코딩한 후, 인코딩된 정보를 다시 디코딩한다. 이때, 그 디코딩된 결과가 최초 입력된 평점 벡터와 같아지도록 인코딩 모델 파라미터와 디코딩 모델 파라미터가 학습될 수 있다. 몇 번의 반복 학습을 통해 인코딩 모델 파라미터와 디코딩 모델 파라미터의 학습이 완료되면, 오토렉은 사용자의 평점 벡터를 인코딩한 후 다시 디코딩함으로써, 각 사용자의 평점 벡터의 비어있는 평가결과값(즉, 평가되지 않은 아이템에 관한 평가결과값)을 예측하여 계산할 수 있다.On the other hand, when the operation method of the autorec is briefly described, the autorec encodes the user's rating vector into the hidden layer and then decodes the encoded information again. At this time, the encoding model parameter and the decoding model parameter may be learned such that the decoded result is equal to the first input rating vector. After several iterations of learning the encoding model parameters and the decoding model parameters, Autorec encodes the user's rating vector and decodes it again, so that each user's empty evaluation result (ie, no rating) is evaluated. Can be calculated by predicting the evaluation result value for the missing item).

한편, 본 발명의 딥러닝 모델은 상술한 종래 기술의 오토렉을 이용하는 예측 방법과 비교할 때, 딥러닝 모델을 학습시키기 위한 방법 및 학습 데이터의 구성에서 차이가 존재한다. 이는, 본 발명의 딥러닝 모델은 평가결과값의 정확한 예측을 위한 모델이 아니라, 상위 N개 아이템 추천을 정확하게 수행하기 위한 모델이기 때문이다. 이러한 차이점에 관하여는 도 2에 대한 설명에서 구체적으로 후술한다.On the other hand, the deep learning model of the present invention, when compared with the above-described prediction method using the conventional autorec, there is a difference in the configuration of the method and the training data for learning the deep learning model. This is because the deep learning model of the present invention is not a model for accurate prediction of the evaluation result value, but a model for accurately performing the top N item recommendations. This difference will be described later in detail with reference to FIG. 2.

단계 S130에서는, 아이템 추천 장치가 그 딥러닝 모델 및 초기평가정보에 기초하여, 복수의 사용자가 복수의 아이템을 평가한 결과를 예측하는 예측평가정보를 생성한다.In step S130, the item recommendation apparatus generates predictive evaluation information for predicting a result of the plurality of users evaluating the plurality of items based on the deep learning model and the initial evaluation information.

예컨대, 아이템 추천 장치는 그 학습된 딥러닝 모델을 이용하여 초기평가정보를 인코딩하고, 디코딩함으로써 초기평가정보에 포함된 미평가아이템에 대응되는 평가결과값을 산출하여, 예측평가정보를 생성할 수 있다.For example, the item recommendation apparatus may generate the predictive evaluation information by encoding and decoding the initial evaluation information using the learned deep learning model to calculate an evaluation result value corresponding to the unevaluated item included in the initial evaluation information. have.

보다 구체적으로, M1-M10까지의 사용자가 존재하고, N1-N10까지의 아이템이 존재하는 경우를 가정한다. 만일, 사용자 M1은 N1-N5의 아이템만을 평가하였고, 사용자 M2는 N5-N10의 아이템만을 평가하였다면, 초기평가정보에서 사용자 M1 및 M2 각각이 평가하지 않은 미평가아이템에 관한 평가결과값은 존재하지 않을 수 있다. 이때, 아이템 추천 장치가 그 학습된 딥러닝 모델을 이용하여 초기평가정보를 인코딩 및 디코딩함으로써, 사용자 M1 및 M2 각각의 미평가아이템(즉, N6-N10 및 N1-N4)에 관한 평가결과값을 산출하여 예측평가정보를 생성할 수 있다.More specifically, it is assumed that there are users up to M1-M10, and there are items up to N1-N10. If the user M1 evaluates only the items of N1-N5, and the user M2 evaluates only the items of the N5-N10, there is no evaluation result value for the unrated item that each of the users M1 and M2 did not evaluate in the initial evaluation information. You may not. At this time, the item recommendation apparatus encodes and decodes the initial evaluation information using the learned deep learning model, thereby evaluating the evaluation result values for the unevaluated items of the users M1 and M2 (ie, N6-N10 and N1-N4). By calculating the prediction evaluation information can be generated.

마지막으로 단계 S140에서는, 아이템 추천 장치가 그 예측평가정보를 이용하여 복수의 사용자 중 하나인 추천대상자에게 복수의 아이템 중에서 복수의 추천아이템을 추천한다.Finally, in step S140, the item recommendation apparatus recommends a plurality of recommendation items among the plurality of items to the recommendation person, which is one of the plurality of users, using the predictive evaluation information.

즉, 아이템 추천 장치는 추천대상자에게 그 예측평가정보에 포함된 복수의 아이템별로 평가결과값이 높은 순서에 따라 복수의 추천아이템을 추천할 수 있다. 이때, 복수의 추천아이템은 평가결과값이 높은 상위 N개(top-N) 아이템에 해당할 수 있다.That is, the item recommendation apparatus may recommend a plurality of recommendation items to the recommendation target in order of increasing evaluation result value for each of the plurality of items included in the predictive evaluation information. In this case, the plurality of recommended items may correspond to the top-N items having a high evaluation result value.

한편, 도 5를 참조하면, N이 5 및 20일 때, 본 발명에 따른 딥러닝 모델(proposed)와 오토렉 모델(AutoRec)의 은닉 노드(hidden nodes) 수에 따른 추천의 정확도가 나타나 있다. 여기서, x축은 은닉 노드의 수, y축은 precision@N의 값을 나타낸다. Meanwhile, referring to FIG. 5, when N is 5 and 20, the accuracy of the recommendation according to the number of hidden nodes of the deep learning model and the AutoRec model according to the present invention is shown. Here, the x axis represents the number of hidden nodes and the y axis represents the value of precision @ N.

실험 결과에서 볼 수 있듯이 본 발명의 딥러닝 모델을 이용하는 방법이 기존의 오토렉 모델을 이용하는 방법보다 정확한 top-N 아이템 추천을 수행하는 것을 알 수 있다. 이는 본 발명의 딥러닝 모델을 이용하는 방법이 평가결과값을 정확하게 예측하기 보다는 사용자별로 아이템에 대한 상대적인 선호도를 정확하게 예측하는 것을 목적으로 학습데이터(초기평가정보)에 적절히 낮은 값(초기결과값)을 채우고, 이를 고려하기 위하여 차등적인 가중치를 부여하는 학습 방법을 적용하였기 때문이다. As can be seen from the experimental results, it can be seen that the method using the deep learning model of the present invention performs more accurate top-N item recommendation than the method using the conventional Autolek model. This is because the method using the deep learning model of the present invention has an appropriately low value (initial result value) in the training data (initial evaluation information) for the purpose of accurately predicting the relative preference for the item for each user rather than accurately predicting the evaluation result value. This is because the learning method that fills and considers the differential weight is applied.

보다 구체적으로 도 5의 실험을 설명하면 다음과 같다. 도 5의 실험은 MovieLens 100K 데이터를 이용하여 수행되었으며, 이 데이터는 943명의 사용자와 1682편의 영화, 10만 건의 평점으로 구성되어 있다. 이때, 10만 건의 평점들 중 임의로 선택한 80%의 평점을 딥러닝 모델 학습을 위한 데이터로 사용하였고, 나머지 20% 데이터를 추천 정확도를 평가하기 위한 데이터로 사용하였다. 본 발명의 딥러닝 모델과 기존의 오토렉 모델을 각각 학습 데이터를 이용하여 학습시키고, 평가 데이터를 이용하여 각 모델의 top-N 추천 정확도를 계산한 후, 그 결과를 비교하였다. 학습을 이용한 최적화 알고리즘은 널리 이용되는 Adam optimizer를 이용하였으며, learning rate는 0.001로 설정하였다. 정확도 계산을 위한 척도는 기존에 널리 이용되는 precision@N을 이용하였다. 각 모델의 은닉 층은 하나만 두었으며, 은닉 층에 존재하는 은닉 노드의 수는 20개부터 60개까지 20개씩 증가시켜 가며 각각의 정확도를 측정하다.More specifically, the experiment of FIG. 5 is as follows. The experiment of FIG. 5 was performed using MovieLens 100K data, which consists of 943 users, 1682 movies, and 100,000 ratings. At this time, 80% of randomly selected scores among 100,000 scores were used as data for deep learning model training, and the remaining 20% data was used as data for evaluating recommendation accuracy. The deep learning model of the present invention and the existing autoleg model were trained using the training data, and the top-N recommendation accuracy of each model was calculated using the evaluation data, and the results were compared. The optimization algorithm using learning uses the Adam optimizer which is widely used, and the learning rate is set to 0.001. As a measure for accuracy, precision @ N is widely used. There is only one hidden layer in each model, and the number of hidden nodes in the hidden layer increases from 20 to 60 by 20 to measure the accuracy of each.

이와 같이, 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 방법은 사용자들의 아이템 각각에 대한 상대적 선호도를 보다 효과적으로 학습하는 딥러닝 모델을 기반으로 하는 협업 필터링을 이용함으로써, 사용자들에게 상위 N개 아이템을 보다 높은 정확도로 추천할 수 있는 효과가 있다.As such, the deep learning-based item recommendation method according to an embodiment of the present invention utilizes collaborative filtering based on a deep learning model that more effectively learns the relative preference of each item of the user, thereby providing users with the top N. It is effective to recommend dog items with higher accuracy.

도 2는 본 발명의 일 실시예에 따른 딥러닝 모델의 학습 방법을 설명하기 위한 흐름도이다.2 is a flowchart illustrating a learning method of a deep learning model according to an exemplary embodiment of the present invention.

단계 S210에서는, 아이템 추천 장치가 갱신평가정보에서 미평가아이템에 대응되는 오차에 적용되는 가중치로 차등가중치를 설정한다.In step S210, the item recommendation apparatus sets the differential weight to a weight applied to an error corresponding to the unrated item in the updated evaluation information.

즉, 아이템 추천 장치는 딥러닝 모델의 학습 과정에서 미평가아이템과 관련된 오차에 적용되는 가중치로 차등가중치를 설정할 수 있다. 보다 구체적으로, 차등가중치는 딥러닝 모델의 학습 과정에서 이용되는 가중치로, 아이템 추천 장치가 딥러닝 모델에 차등가중치를 설정할 수 있다.That is, the item recommendation apparatus may set the differential weight as a weight applied to an error related to the unevaluated item in the learning process of the deep learning model. More specifically, the differential weight is a weight used in the learning process of the deep learning model, and the item recommendation apparatus may set the differential weight to the deep learning model.

단계 S220에서는, 아이템 추천 장치가 갱신평가정보에서 미평가아이템을 제외한 나머지 아이템인 평가아이템에 대응되는 오차에 적용되는 가중치로 차등가중치보다 큰 값을 갖는 기본가중치를 설정한다.In step S220, the item recommendation apparatus sets a basic weight having a value greater than the differential weight as a weight applied to an error corresponding to the evaluation item which is the remaining item except the unrated item in the update evaluation information.

즉, 아이템 추천 장치는 딥러닝 모델의 학습 과정에서 평가아이템과 관련된 오차에 적용되는 가중치로 기본가중치를 설정할 수 있다. 보다 구체적으로, 기본가중치는 딥러닝 모델의 학습 과정에서 이용되는 가중치로, 아이템 추천 장치가 딥러닝 모델에 기본가중치를 설정할 수 있다. That is, the item recommendation apparatus may set a basic weight as a weight applied to an error related to an evaluation item in the learning process of the deep learning model. More specifically, the default weights are weights used in the learning process of the deep learning model, and the item recommendation apparatus may set the default weights in the deep learning model.

이때, 기본가중치는 차등가중치보다 큰 값을 가진다. 예컨대, 기본가중치는 1.0이고 차등가중치는 0.7일 수 있다. At this time, the basic weight value is larger than the differential weight value. For example, the default weight may be 1.0 and the differential weight may be 0.7.

이처럼, 기본가중치의 값을 차등가중치의 값보다 크게 설정하는 이유는 사용자가 평가결과값을 부여한 아이템인 평가아이템과 그렇지 않은 미평가아이템에 대응되는 오차를 동등하게 고려하여 딥러닝 모델을 학습시키는 것이 적절하지 않기 때문이다. 즉, 아이템 추천 장치는 미평가아이템에 대응되는 오차에 기본가중치보다 낮은 차등가중치를 부여함으로써, 평가아이템에 대응되는 오차와 미평가아이템에 대응되는 오차가 차등적으로 고려되도록 할 수 있다.As such, the reason for setting the value of the base weight value to be greater than the value of the differential weight value is to train the deep learning model by considering the error corresponding to the evaluation item, which is the item to which the user has given the evaluation result, and the unevaluated item that are not. Because it is not appropriate. That is, the item recommendation apparatus may assign a differential weight value lower than the basic weight value to an error corresponding to the unrated item, so that the error corresponding to the evaluated item and the error corresponding to the unrated item may be considered differentially.

마지막으로 단계 S230에서는, 아이템 추천 장치가 차등가중치, 기본가중치 및 갱신평가정보를 이용하여, 딥러닝 모델을 반복적으로 학습시킨다.Finally, in step S230, the item recommendation apparatus repeatedly learns the deep learning model using the differential weight value, the basic weight value, and the update evaluation information.

예컨대, 아이템 추천 장치는 차등가중치, 기본가중치 및 갱신평가정보를 딥러닝 모델에 입력한 후, 그 딥러닝 모델이 갱신평가정보를 반복적으로 인코딩 및 디코딩함으로써 인코딩 모델 파라미터와 디코딩 모델 파라미터를 보다 정확하게 학습시킬 수 있다.For example, the item recommendation apparatus inputs differential weights, basic weights, and update evaluation information into the deep learning model, and then the deep learning model repeatedly encodes and decodes the update evaluation information, thereby more accurately learning the encoding model parameters and the decoding model parameters. You can.

이와 같이, 본 발명의 일 실시예에 따른 딥러닝 모델의 학습 방법은 평가아이템에 대응되는 오차에 기본가중치보다 낮은 차등가중치를 부여함으로써, 평가아이템에 대응되는 오차와 미평가아이템에 대응되는 오차를 차등적으로 고려하여, 상위 N개 아이템의 추천 정확도를 향상시킬 수 있도록 딥러닝 모델을 학습시킬 수 있는 효과가 있다.As described above, the learning method of the deep learning model according to an exemplary embodiment of the present invention provides a differential weight value lower than the basic weight value to an error corresponding to the evaluation item, thereby obtaining an error corresponding to the evaluation item and an error corresponding to the unevaluated item. Considering the differential, there is an effect that can train the deep learning model to improve the recommended accuracy of the top N items.

도 3은 본 발명의 일 실시예에 따른 복수의 추천아이템을 추천하는 방법을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a method of recommending a plurality of recommended items according to an embodiment of the present invention.

단계 S310에서는, 아이템 추천 장치가 예측평가정보로부터 추천대상자에 대한 복수의 아이템에 대응되는 평가결과값을 추출한다.In step S310, the item recommendation apparatus extracts evaluation result values corresponding to the plurality of items for the recommendation target from the predictive evaluation information.

이때, 예측평가정보에는 복수의 사용자 각각에 대하여 평가아이템 및 미평가아이템에 대응되는 평가결과값의 산출 결과가 모두 포함되어 있다. 아이템 추천 장치는 그 예측평가정보로부터 추천대상자에 대한 복수의 아이템에 대한 평가결과값을 모두 추출할 수 있다.In this case, the predictive evaluation information includes calculation results of evaluation results corresponding to the evaluation item and the unevaluated item for each of the plurality of users. The item recommendation apparatus may extract all evaluation result values for a plurality of items for the recommendation target from the prediction evaluation information.

단계 S320에서는, 아이템 추천 장치가 그 추출된 평가결과값을 내림차순으로 정렬한다.In step S320, the item recommendation apparatus sorts the extracted evaluation result values in descending order.

즉, 아이템 추천 장치는 추천대상자의 복수의 아이템에 대응되는 평가결과값을 크기에 따라 내림차순으로 정렬할 수 있다. 즉, 평가결과값이 가장 큰 아이템부터 가장 작은 아이템의 순서로 정렬할 수 있다.That is, the item recommendation apparatus may sort the evaluation result values corresponding to the plurality of items of the recommendation object in descending order according to the size. That is, the evaluation result may be sorted in order from the largest item to the smallest item.

마지막으로 단계 S330에서는, 아이템 추천 장치가 그 정렬된 평가결과값의 크기 순서에 따라, 복수의 추천아이템을 추천대상자에게 추천한다.Finally, in step S330, the item recommendation apparatus recommends the plurality of recommendation items to the recommendation subject according to the size order of the sorted evaluation result values.

이때, 아이템 추천 장치는 그 정렬된 평가결과값의 크기에 따라, 상위 N개의 추천아이템을 추천대상자에게 추천할 수 있다. 즉, 아이템 추천 장치는 상위 N개(즉, top-N)의 아이템을 복수의 추천아이템으로 추천할 수 있다.In this case, the item recommendation apparatus may recommend the top N recommendation items to the recommendation subject according to the size of the sorted evaluation result value. That is, the item recommendation device may recommend the top N items (ie, top-N) as a plurality of recommendation items.

도 4는 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 장치를 설명하기 위한 블록도이다.4 is a block diagram illustrating a deep learning based item recommendation apparatus according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시예에 따른 딥러닝 기반의 아이템 추천 장치(400)는 갱신부(410), 학습부(420), 예측부(430) 및 추천부(440)를 포함한다.Referring to FIG. 4, the deep learning based item recommendation apparatus 400 according to an embodiment of the present invention includes an updater 410, a learner 420, a predictor 430, and a recommender 440. do.

한편, 딥러닝 기반의 아이템 추천 장치(400)는 PC, 서버, 스마트폰 및 태블릿과 같은 다양한 컴퓨팅 장치에 탑재되어, 아이템을 추천하기 위하여 이용될 수 있다.Meanwhile, the deep learning based item recommendation device 400 may be mounted on various computing devices such as a PC, a server, a smartphone, and a tablet, and used to recommend an item.

갱신부(410)는 초기평가정보에 대하여 사용자가 평가하지 않은 아이템인 미평가아이템에 대응되는 평가결과값으로 소정의 초기결과값을 입력하여, 갱신평가정보를 생성한다.The updater 410 generates the updated evaluation information by inputting a predetermined initial result value as an evaluation result value corresponding to the unevaluated item which is an item which the user has not evaluated with respect to the initial evaluation information.

다른 실시예에서는, 초기결과값은 복수의 아이템 각각에 부여할 수 있는 평가결과값 중에서, 소정의 임계평가값 이하의 값으로 결정될 수 있다.In another embodiment, the initial result value may be determined to be a value less than or equal to a predetermined threshold evaluation value among evaluation results that can be given to each of the plurality of items.

학습부(420)는 그 갱신평가정보 및 갱신평가정보에서 미평가아이템에 대응되는 오차에 적용되는 소정의 차등가중치에 기초하여, 딥러닝 모델을 학습시킨다.The learning unit 420 trains the deep learning model based on the predetermined evaluation weights applied to the error corresponding to the unevaluated item in the update evaluation information and the update evaluation information.

다른 실시예에서는, 학습부(420)는 갱신평가정보에서 미평가아이템에 대응되는 오차에 적용되는 가중치로 차등가중치를 설정하고, 갱신평가정보에서 미평가아이템을 제외한 나머지 아이템인 평가아이템에 대응되는 오차에 적용되는 가중치로 차등가중치보다 큰 값을 갖는 기본가중치를 설정한 후, 그 차등가중치, 기본가중치 및 갱신평가정보를 이용하여, 딥러닝 모델을 반복적으로 학습시킬 수 있다.In another embodiment, the learning unit 420 sets a differential weight with a weight applied to an error corresponding to an unrated item in the updated evaluation information, and corresponds to an evaluation item that is a remaining item except for the unrated item in the updated evaluation information. After setting a basic weight having a value greater than the differential weight as a weight applied to the error, the deep learning model can be repeatedly learned using the differential weight, the basic weight, and the update evaluation information.

또 다른 실시예에서는, 딥러닝 모델은 오토인코더에 기반할 수 있다.In yet another embodiment, the deep learning model may be based on an autoencoder.

예측부(430)는 그 딥러닝 모델 및 초기평가정보에 기초하여, 복수의 사용자가 복수의 아이템을 평가한 결과를 예측하는 예측평가정보를 생성한다.The prediction unit 430 generates predictive evaluation information for predicting a result of evaluating a plurality of items by a plurality of users based on the deep learning model and the initial evaluation information.

마지막으로 추천부(440)는 그 예측평가정보를 이용하여 복수의 사용자 중 하나인 추천대상자에게 복수의 아이템 중에서 복수의 추천아이템을 추천한다.Finally, the recommendation unit 440 recommends a plurality of recommendation items among the plurality of items to the recommendation target person, which is one of the plurality of users, using the predictive evaluation information.

다른 실시예에서는, 추천부(440)는 그 예측평가정보로부터 추천대상자에 대한 복수의 아이템에 대응되는 평가결과값을 추출하고, 그 추출된 평가결과값을 내림차순으로 정렬하고, 그 정렬된 평가결과값의 크기 순서에 따라, 복수의 추천아이템을 추천할 수 있다.In another embodiment, the recommendation unit 440 extracts evaluation result values corresponding to a plurality of items for the recommendation target from the predicted evaluation information, sorts the extracted evaluation result values in descending order, and sorts the evaluation results. In accordance with the order of the values, a plurality of recommended items can be recommended.

한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.Meanwhile, the above-described embodiments of the present invention can be written as a program that can be executed in a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium.

상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 를 포함한다.The computer-readable recording medium may include a magnetic storage medium (for example, a ROM, a floppy disk, a hard disk, etc.) and an optical reading medium (for example, a CD-ROM, DVD, etc.).

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

Claims (10)

복수의 사용자 각각이 복수의 아이템 중 적어도 하나를 평가한 평가결과값을 포함하는 정보인 초기평가정보를 이용하여 아이템을 추천하는 방법에 있어서,
상기 초기평가정보에 대하여 사용자가 평가하지 않은 아이템인 미평가아이템에 대응되는 평가결과값으로 소정의 초기결과값을 입력하여, 갱신평가정보를 생성하는 단계;
상기 갱신평가정보 및 상기 갱신평가정보에서 상기 미평가아이템에 대응되는 오차에 적용되는 소정의 차등가중치에 기초하여, 딥러닝 모델(deep learning model)을 학습시키는 단계;
상기 딥러닝 모델 및 상기 초기평가정보에 기초하여, 상기 복수의 사용자가 상기 복수의 아이템을 평가한 결과를 예측하는 예측평가정보를 생성하는 단계; 및
상기 예측평가정보를 이용하여 상기 복수의 사용자 중 하나인 추천대상자에게 상기 복수의 아이템 중에서 복수의 추천아이템을 추천하는 단계
를 포함하는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 방법.
A method for recommending an item using initial evaluation information, the information including an evaluation result value in which each of the plurality of users evaluates at least one of the plurality of items,
Generating updated evaluation information by inputting a predetermined initial result value as an evaluation result value corresponding to an unevaluated item which is an item which the user has not evaluated with respect to the initial evaluation information;
Learning a deep learning model based on a predetermined differential weight value applied to the update evaluation information and the error corresponding to the unrated item in the update evaluation information;
Generating predictive evaluation information for predicting a result of evaluating the plurality of items by the plurality of users based on the deep learning model and the initial evaluation information; And
Recommending a plurality of recommendation items among the plurality of items to the recommendation target person, which is one of the plurality of users, using the predictive evaluation information.
Deep learning-based item recommendation method comprising a.
제1항에 있어서,
상기 초기결과값은
상기 복수의 아이템 각각에 부여할 수 있는 평가결과값 중에서, 소정의 임계평가값 이하의 값으로 결정되는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 방법.
The method of claim 1,
The initial result is
Deep learning-based item recommendation method, characterized in that determined from the evaluation result value that can be given to each of the plurality of items, a value less than a predetermined threshold evaluation value.
제1항에 있어서,
상기 딥러닝 모델을 학습시키는 단계는
상기 갱신평가정보에서 상기 미평가아이템에 대응되는 오차에 적용되는 가중치로 상기 차등가중치를 설정하는 단계;
상기 갱신평가정보에서 상기 미평가아이템을 제외한 나머지 아이템인 평가아이템에 대응되는 오차에 적용되는 가중치로 상기 차등가중치보다 큰 값을 갖는 기본가중치를 설정하는 단계; 및
상기 차등가중치, 상기 기본가중치 및 상기 갱신평가정보를 이용하여, 상기 딥러닝 모델을 반복적으로 학습시키는 단계
를 포함하는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 방법.
The method of claim 1,
Training the deep learning model
Setting the differential weight to a weight applied to an error corresponding to the unrated item in the update evaluation information;
Setting a basic weight value having a value greater than the differential weight value as a weight applied to an error corresponding to an evaluation item which is a remaining item other than the unrated item in the update evaluation information; And
Repeatedly learning the deep learning model using the differential weight value, the basic weight value, and the update evaluation information.
Deep learning-based item recommendation method comprising a.
제1항에 있어서,
상기 딥러닝 모델은
오토인코더(autoencoder)에 기반하는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 방법.
The method of claim 1,
The deep learning model
Deep learning based item recommendation method, characterized in that based on an autoencoder (autoencoder).
제1항에 있어서,
상기 복수의 추천아이템을 추천하는 단계는
상기 예측평가정보로부터 상기 추천대상자에 대한 상기 복수의 아이템에 대응되는 평가결과값을 추출하는 단계;
상기 추출된 평가결과값을 내림차순으로 정렬하는 단계; 및
상기 정렬된 평가결과값의 크기 순서에 따라, 상기 복수의 추천아이템을 추천하는 단계
를 포함하는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 방법.
The method of claim 1,
Recommending the plurality of recommended items
Extracting evaluation result values corresponding to the plurality of items for the recommendation subject from the prediction evaluation information;
Sorting the extracted evaluation result values in descending order; And
Recommending the plurality of recommended items according to the order of magnitude of the sorted evaluation result values;
Deep learning-based item recommendation method comprising a.
복수의 사용자 각각이 복수의 아이템 중 적어도 하나를 평가한 평가결과값을 포함하는 정보인 초기평가정보를 이용하여 아이템을 추천하는 장치에 있어서,
상기 초기평가정보에 대하여 사용자가 평가하지 않은 아이템인 미평가아이템에 대응되는 평가결과값으로 소정의 초기결과값을 입력하여, 갱신평가정보를 생성하는 갱신부;
상기 갱신평가정보 및 상기 갱신평가정보에서 상기 미평가아이템에 대응되는 오차에 적용되는 소정의 차등가중치에 기초하여, 딥러닝 모델(deep learning model)을 학습시키는 학습부;
상기 딥러닝 모델 및 상기 초기평가정보에 기초하여, 상기 복수의 사용자가 상기 복수의 아이템을 평가한 결과를 예측하는 예측평가정보를 생성하는 예측부; 및
상기 예측평가정보를 이용하여 상기 복수의 사용자 중 하나인 추천대상자에게 상기 복수의 아이템 중에서 복수의 추천아이템을 추천하는 추천부
를 포함하는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 장치.
An apparatus for recommending an item using initial evaluation information that is information including a result of evaluating at least one of a plurality of items by each of a plurality of users,
An update unit for generating update evaluation information by inputting a predetermined initial result value as an evaluation result value corresponding to an unevaluated item which is an item which the user has not evaluated with respect to the initial evaluation information;
A learning unit learning a deep learning model based on a predetermined differential weight value applied to the update evaluation information and the error corresponding to the unrated item in the update evaluation information;
A predicting unit configured to generate predictive evaluation information for predicting a result of evaluating the plurality of items by the plurality of users based on the deep learning model and the initial evaluation information; And
A recommendation unit recommending a plurality of recommendation items among the plurality of items to the recommendation target person, which is one of the plurality of users, using the predictive evaluation information.
Deep learning-based item recommendation apparatus comprising a.
제6항에 있어서,
상기 초기결과값은
상기 복수의 아이템 각각에 부여할 수 있는 평가결과값 중에서, 소정의 임계평가값 이하의 값으로 결정되는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 장치.
The method of claim 6,
The initial result is
Deep learning-based item recommendation device, characterized in that determined from the evaluation result value that can be given to each of the plurality of items, the value less than a predetermined threshold evaluation value.
제6항에 있어서,
상기 학습부는
상기 갱신평가정보에서 상기 미평가아이템에 대응되는 오차에 적용되는 가중치로 상기 차등가중치를 설정하고,
상기 갱신평가정보에서 상기 미평가아이템을 제외한 나머지 아이템인 평가아이템에 대응되는 오차에 적용되는 가중치로 상기 차등가중치보다 큰 값을 갖는 기본가중치를 설정한 후,
상기 차등가중치, 상기 기본가중치 및 상기 갱신평가정보를 이용하여, 상기 딥러닝 모델을 반복적으로 학습시키는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 장치.
The method of claim 6,
The learning unit
The differential weight value is set to a weight applied to an error corresponding to the unrated item in the update evaluation information,
After setting the basic weight value having a value larger than the differential weight as a weight applied to an error corresponding to the evaluation item that is the remaining items other than the unrated item in the update evaluation information,
Deep learning based item recommendation apparatus, characterized in that for learning the deep learning model by using the differential weight, the basic weight and the update evaluation information.
제6항에 있어서,
상기 딥러닝 모델은
오토인코더(autoencoder)에 기반하는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 장치.
The method of claim 6,
The deep learning model
Deep learning based item recommendation device, characterized in that based on the autoencoder (autoencoder).
제6항에 있어서,
상기 추천부는
상기 예측평가정보로부터 상기 추천대상자에 대한 상기 복수의 아이템에 대응되는 평가결과값을 추출하고,
상기 추출된 평가결과값을 내림차순으로 정렬하고,
상기 정렬된 평가결과값의 크기 순서에 따라, 상기 복수의 추천아이템을 추천하는 것을 특징으로 하는 딥러닝 기반의 아이템 추천 장치.
The method of claim 6,
The recommendation part
Extracting evaluation result values corresponding to the plurality of items for the recommendation target from the prediction evaluation information,
Sorting the extracted evaluation result values in descending order,
Deep learning based item recommendation device, characterized in that for recommending the plurality of recommended items in the order of the order of the evaluation result value.
KR1020180016949A 2018-02-12 2018-02-12 Method and apparatus for recommending items based on deep learning KR102129583B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180016949A KR102129583B1 (en) 2018-02-12 2018-02-12 Method and apparatus for recommending items based on deep learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180016949A KR102129583B1 (en) 2018-02-12 2018-02-12 Method and apparatus for recommending items based on deep learning

Publications (2)

Publication Number Publication Date
KR20190103505A true KR20190103505A (en) 2019-09-05
KR102129583B1 KR102129583B1 (en) 2020-07-03

Family

ID=67949601

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180016949A KR102129583B1 (en) 2018-02-12 2018-02-12 Method and apparatus for recommending items based on deep learning

Country Status (1)

Country Link
KR (1) KR102129583B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102223161B1 (en) 2019-10-11 2021-03-03 노주현 System and methods of predicting timeliness products based on weather data
WO2021132922A1 (en) * 2019-12-26 2021-07-01 Samsung Electronics Co., Ltd. Computing device and operation method thereof
CN113515704A (en) * 2021-07-22 2021-10-19 中移(杭州)信息技术有限公司 Recommendation effect evaluation method, device and system and computer program product
WO2021242073A1 (en) * 2020-05-29 2021-12-02 삼성전자주식회사 Electronic device and control method therefor
KR20220093694A (en) * 2020-12-28 2022-07-05 엠케이지 주식회사 Coffee recommending system based on artificial intelligence
KR102596352B1 (en) * 2023-03-29 2023-11-01 주식회사 리버트리 AI-based product recommendation system based on user psychology
US12035007B2 (en) 2020-03-19 2024-07-09 Samsung Electronics Co., Ltd. Computing device and operating method thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130046688A (en) * 2011-10-28 2013-05-08 주식회사 비트컴퓨터 Item recommendation system and method for personalization services
KR20150028497A (en) * 2013-09-06 2015-03-16 한양대학교 산학협력단 Data Imputation Using a Trust Network for Recommendation via Matrix Factorization
US20170132509A1 (en) * 2015-11-06 2017-05-11 Adobe Systems Incorporated Item recommendations via deep collaborative filtering

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130046688A (en) * 2011-10-28 2013-05-08 주식회사 비트컴퓨터 Item recommendation system and method for personalization services
KR20150028497A (en) * 2013-09-06 2015-03-16 한양대학교 산학협력단 Data Imputation Using a Trust Network for Recommendation via Matrix Factorization
US20170132509A1 (en) * 2015-11-06 2017-05-11 Adobe Systems Incorporated Item recommendations via deep collaborative filtering

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102223161B1 (en) 2019-10-11 2021-03-03 노주현 System and methods of predicting timeliness products based on weather data
WO2021132922A1 (en) * 2019-12-26 2021-07-01 Samsung Electronics Co., Ltd. Computing device and operation method thereof
US12035007B2 (en) 2020-03-19 2024-07-09 Samsung Electronics Co., Ltd. Computing device and operating method thereof
WO2021242073A1 (en) * 2020-05-29 2021-12-02 삼성전자주식회사 Electronic device and control method therefor
KR20220093694A (en) * 2020-12-28 2022-07-05 엠케이지 주식회사 Coffee recommending system based on artificial intelligence
CN113515704A (en) * 2021-07-22 2021-10-19 中移(杭州)信息技术有限公司 Recommendation effect evaluation method, device and system and computer program product
CN113515704B (en) * 2021-07-22 2024-05-03 中移(杭州)信息技术有限公司 Recommendation effect evaluation method, device, system and computer program product
KR102596352B1 (en) * 2023-03-29 2023-11-01 주식회사 리버트리 AI-based product recommendation system based on user psychology

Also Published As

Publication number Publication date
KR102129583B1 (en) 2020-07-03

Similar Documents

Publication Publication Date Title
KR102129583B1 (en) Method and apparatus for recommending items based on deep learning
US11699095B2 (en) Cross-domain recommender systems using domain separation networks and autoencoders
CN111708950B (en) Content recommendation method and device and electronic equipment
CN111797321B (en) Personalized knowledge recommendation method and system for different scenes
Alhijawi et al. Using genetic algorithms for measuring the similarity values between users in collaborative filtering recommender systems
CN110162709B (en) Robust personalized ranking method for generating network by combining dual confrontation
AU2018203129A1 (en) Method and apparatus for judging age brackets of users
CN115082142B (en) Recommendation method, device and medium based on heterogeneous relational graph neural network
CN112597392B (en) Recommendation system based on dynamic attention and hierarchical reinforcement learning
KR102195894B1 (en) Hybrid item recommending method and apparatus
US20180293312A1 (en) Computerized Method and System for Organizing Video Files
CN114780831A (en) Sequence recommendation method and system based on Transformer
CN116308685B (en) Product recommendation method and system based on aspect emotion prediction and collaborative filtering
CN114386513A (en) Interactive grading prediction method and system integrating comment and grading
KR102280301B1 (en) Method and apparatus for recommending items using explicit and implicit feedback
KR102262118B1 (en) Apparatus and method for providing user-customized recommending-information, and computer-readable recording media recorded a program for executing it
Cheng et al. The new similarity measure based on user preference models for collaborative filtering
CN117216376A (en) Fair perception recommendation system and recommendation method based on depth map neural network
Aharon et al. Dynamic personalized recommendation of comment-eliciting stories
CN112784153B (en) Tourist attraction recommendation method integrating attribute feature attention and heterogeneous type information
CN114912031A (en) Mixed recommendation method and system based on clustering and collaborative filtering
Boryczka et al. Differential evolution in a recommendation system based on collaborative filtering
US20240154988A1 (en) System configured to detect and block the distribution of malicious content that is attributable to an entity
CN117934126B (en) Personalized target information recommendation system based on user emotion analysis
CN117474637B (en) Personalized commodity recommendation method and system based on time sequence diagram convolution network

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)