KR102205324B1 - Merchant Recommend Method using Double DNN - Google Patents

Merchant Recommend Method using Double DNN Download PDF

Info

Publication number
KR102205324B1
KR102205324B1 KR1020190048494A KR20190048494A KR102205324B1 KR 102205324 B1 KR102205324 B1 KR 102205324B1 KR 1020190048494 A KR1020190048494 A KR 1020190048494A KR 20190048494 A KR20190048494 A KR 20190048494A KR 102205324 B1 KR102205324 B1 KR 102205324B1
Authority
KR
South Korea
Prior art keywords
vector
customer
neural network
affiliated
dnn
Prior art date
Application number
KR1020190048494A
Other languages
Korean (ko)
Other versions
KR20200130760A (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 KR1020190048494A priority Critical patent/KR102205324B1/en
Publication of KR20200130760A publication Critical patent/KR20200130760A/en
Application granted granted Critical
Publication of KR102205324B1 publication Critical patent/KR102205324B1/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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • 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/0201Market modelling; Market analysis; Collecting market data
    • 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

Abstract

본 발명은 이중 DNN을 이용한 가맹점 추천방법에 관한 것으로서 보다 상세하게는, 신용카드사 또는 은행 등 고객들을 상대하는 금융기업에서, 신용카드를 사용하는 고객의 라이프 스타일을 파악하기 위하여, 고객이 다음에 신용카드를 사용할 것으로 예측되는 사용처 즉 다음 방문 가맹점을 예측 및 추천하기 위한 것이다. 은행 및 카드사 등은 이러한 예측을 통하여 고객에게 알맞은 프로모션과 비즈니스 기회를 제공할 수 있으며, 이를 통하여 매출 증대를 꾀할 수 있다. 이를 위하여 본 발명은 제1신경망이, 고객에 대한 고객벡터와 가맹점벡터를 이용하여 상기 고객이 다음에 방문할 t시점에서의 가맹점들의 확률벡터를 계산하되, 상기 가맹점벡터는 상기 t시점의 직전시점인 t-1시점의 가맹점벡터와 상기 t-1시점의 직전시점인 t-2시점의 가맹점벡터에 대한 평균으로 하여 계산하는 제1단계; 제2신경망이, 상기 고객벡터와 상기 t-2시점의 가맹점벡터를 이용하여 상기 고객이 상기 t-1시점에 방문할 가맹점들의 확률벡터를 계산하는 제2단계; 및 상기 제1신경망이 계산한 가맹점들의 확률벡터와 상기 제2신경망이 계산한 가맹점들의 확률벡터를 이용하여 결합 확률분포를 계산하는 제3단계; 를 포함하는 것이 바람직하다.The present invention relates to a method for recommending affiliated stores using a double DNN, and more particularly, in a financial company dealing with customers such as a credit card company or a bank, in order to understand the lifestyle of a customer using a credit card, It is for predicting and recommending the next visited affiliate store that is expected to use the card. Banks and credit card companies can provide suitable promotions and business opportunities to customers through such predictions, thereby increasing sales. To this end, in the present invention, the first neural network calculates the probability vector of the affiliated stores at the point t that the customer will visit next by using the customer vector and the affiliated store vector for the customer, and the affiliated store vector is the point immediately before the point t. A first step of calculating the average of the affiliate store vector at the point t-1 and the affiliate store vector at the point t-2 immediately before the point t-1; A second step of calculating, by a second neural network, a probability vector of affiliated stores that the customer will visit at the time t-1 by using the customer vector and the affiliated store vector at the time t-2; And a third step of calculating a joint probability distribution using the probability vector of the affiliated stores calculated by the first neural network and the probability vector of the affiliated stores calculated by the second neural network. It is preferable to include.

Description

이중 DNN을 이용한 가맹점 추천방법 {Merchant Recommend Method using Double DNN}Merchant Recommend Method using Double DNN}

본 발명은 이중 DNN을 이용한 가맹점 추천방법에 관한 것으로서 보다 상세하게는, 신용카드사 또는 은행 등 고객들을 상대하는 금융기업에서, 신용카드를 사용하는 고객의 라이프 스타일을 파악하기 위하여, 고객이 다음에 신용카드를 사용할 것으로 예측되는 사용처 즉 다음 방문 가맹점을 예측 및 추천하기 위한 것이다. 은행 및 카드사 등은 이러한 예측을 통하여 고객에게 알맞은 프로모션과 비즈니스 기회를 제공할 수 있으며, 이를 통하여 매출 증대를 꾀할 수 있다. The present invention relates to a method for recommending affiliated stores using a double DNN, and more particularly, in a financial company dealing with customers such as a credit card company or a bank, in order to understand the lifestyle of a customer using a credit card, It is for predicting and recommending the next visited affiliate store that is expected to use the card. Banks and credit card companies can provide suitable promotions and business opportunities to customers through such predictions, thereby increasing sales.

신용카드나 체크카드 등을 고객에게 발급하여 매출수수료를 수입원으로 하는 신용카드사나 은행 등에 있어서는, 고객의 다음 신용카드 사용처 즉 다음 가맹점을 예측하여 추천할 수 있다면 고객의 라이프 스타일을 파악 할 수 있을 것이며, 신용카드사나 은행 등은 이를 통하여 고객에게 알맞은 여러 프로모션과 비즈니스 기회를 포착할 수 있고 이는 결국 매출증대로 이어질 수 있게 된다. For credit card companies or banks that issue credit cards or debit cards to customers and use sales commission as a source of income, if you can predict and recommend the customer's next credit card use, that is, the next affiliate store, you will be able to grasp the customer's lifestyle. In addition, credit card companies and banks can capture various promotions and business opportunities suitable for customers through this, which can lead to increased sales.

이와 같이 다음 가맹점 등을 예측하는 시스템은 추천시스템의 일종이다. 추천 시스템은 컴퓨터시스템에 의하여 작동하는 기계학습 분야 중 실제 비즈니스에서 가장 성공적으로 널리 사용되는, 컴퓨터시스템용 응용 프로그램 중 하나이다. 특히 Collaborative Filtering 알고리즘은 추천 시스템에서 사용되는 주요 알고리즘 중 하나이며 구매 순서에 따라 다음에 구매될 항목을 예측한다. Collaborative Filtering 알고리즘에 대한 최신의 모델들 대부분은 컴퓨터시스템에 탑재된 심층신경망(Deep Neural Network, DNN)을 기반으로 작동한다.In this way, the system for predicting the next affiliate store, etc. is a kind of recommendation system. The recommendation system is one of the most successful and widely used application programs for computer systems in the field of machine learning operated by computer systems. In particular, the Collaborative Filtering algorithm is one of the main algorithms used in the recommendation system and predicts the next item to be purchased according to the purchase order. Most of the latest models for collaborative filtering algorithms operate based on a deep neural network (DNN) installed in a computer system.

심층신경망(DNN)을 기반으로 하는 추천시스템 중 Neural Collaborative Filtering (NCF)가 있다. 도 1은 NCF 모델을 도시한 것으로서, 도 1에서 보는 바와 같이 NCF는 세 개의 심층신경망을 이용하여 상품을 추천하는데, NCF가 사용하는 첫 번째 신경망은, 활성함수로서 identity 함수를 이용하는 Generalized Matrix Factorization(GMF)이다. 두 번째 신경망은 ReLU를 활성함수로 이용하는 Multi-Layer Perceptron (MLP)이다. 이 두 신경망의 역할은 고객 또는 상품을 임베딩 벡터(embedding vector)로 변환시키는 것이다. 변환된 각 임베딩 벡터는 결합되어 Neural Matrix Factorization (NeuMF)라 불리는 마지막 신경망인 NeuMF의 입력으로 들어간다. 마지막 신경망인 NeuMF는 사용자가 구매할 상품을 예측하게 되며, 훈련은 아래와 같이 예측 값

Figure 112019042828761-pat00001
과 타겟 값
Figure 112019042828761-pat00002
사이의 손실을 최소화함으로써 수행된다. Among the recommendation systems based on deep neural networks (DNN), there is Neural Collaborative Filtering (NCF). FIG. 1 shows the NCF model. As shown in FIG. 1, NCF recommends products using three deep neural networks. The first neural network used by NCF is a Generalized Matrix Factorization using an identity function as an activation function. GMF). The second neural network is Multi-Layer Perceptron (MLP), which uses ReLU as an activation function. The role of these two neural networks is to transform the customer or product into an embedding vector. Each transformed embedding vector is combined and fed into the input of the final neural network, NeuMF, called Neural Matrix Factorization (NeuMF). The last neural network, NeuMF, predicts the product the user will purchase, and the training is the predicted value as follows.
Figure 112019042828761-pat00001
And target value
Figure 112019042828761-pat00002
This is done by minimizing the loss between.

Figure 112019042828761-pat00003
Figure 112019042828761-pat00003

여기서

Figure 112019042828761-pat00004
는 타겟값의 집합을 나타내며,
Figure 112019042828761-pat00005
는 예측값의 집합을 나타낸다.
Figure 112019042828761-pat00006
는 학습 인스턴스
Figure 112019042828761-pat00007
의 가중치를 나타내는 하이퍼 매개 변수이다.here
Figure 112019042828761-pat00004
Represents a set of target values,
Figure 112019042828761-pat00005
Represents a set of predicted values.
Figure 112019042828761-pat00006
Is a learning instance
Figure 112019042828761-pat00007
Is a hyper parameter that indicates the weight of

또 다른 추천시스템 중 Deep Neural Neworks for YouTube Recommendations가 있다. YouTube Recommender System은 사용자가 동영상을 시청한 후 그 사용자가 다음에 시청할만한 동영상을 추천하는 것을 목표로 한다. 도 2는 YouTube Recommender System의 DNN(심층신경망)모델이다. 도 2에서 보는 바와 같이 YouTube Recommender System은 두 개의 심층신경망으로 구성된다. 하나는 후보 생성을 담당하는 후보생성 신경망이고, 다른 하나는 생성된 후보의 순위를 매기는데 사용되는 순위생성 신경망이다. 후보생성 신경망은 사용자의 동영상 시청내역을 입력으로 받아 사용자가 시청할 만한 수백만 건의 동영상을 찾아낸다. 순위생성 신경망은 동영상과 사용자의 관계를 설명할 수 있는 더 많은 특징을 사용하여 학습된다. 순위생성 신경망의 입력은 후보생성 신경망의 출력이다. 즉 순위생성 신경망은 후보생성 신경망이 생성해낸 수백만 건의 동영상 중에서 수백 개의 동영상을 추출하여 순위를 매긴다. 상술한 바와 같이 본 발명은 고객에 대하여 다음 상품을 추천하기 위해 고객과 상품과의 관계를 성공적으로 파악하기 위한 것이다. YouTube Recommender System 또한 다음 상품의 확률을 계산하며, 이를 위해 아래 식을 사용한다.Another recommendation system is Deep Neural Neworks for YouTube Recommendations. The YouTube Recommender System aims to recommend videos that users will watch next after they watch them. 2 is a DNN (Deep Neural Network) model of the YouTube Recommender System. As shown in Fig. 2, the YouTube Recommender System consists of two deep neural networks. One is a candidate generation neural network in charge of generating candidates, and the other is a ranking generation neural network used to rank the generated candidates. The candidate-generated neural network receives the user's video viewing history as input and finds millions of videos that the user can watch. The ranking neural network is trained using more features that can describe the relationship between the video and the user. The input of the ranking generating neural network is the output of the candidate generating neural network. That is, the ranking generation neural network ranks hundreds of videos out of the millions of videos generated by the candidate generation neural network. As described above, the present invention is to successfully grasp the relationship between the customer and the product in order to recommend the next product to the customer. YouTube Recommender System also calculates the probability of the next product, and uses the following equation for this.

Figure 112019042828761-pat00008
Figure 112019042828761-pat00008

하지만 순차적으로 발생하는 이벤트에는, 예를 들어 동영상 시청에는, 노이즈가 있을 수 있다. 즉

Figure 112019042828761-pat00009
Figure 112019042828761-pat00010
의 연관 관계가 적어 다음 동영상, 상품 또는 가맹점의 추천결과에 안 좋은 영향을 끼칠 수 있다. 가맹점 추천의 경우를 예를 들자면 고객이
Figure 112019042828761-pat00011
에서 이용한 가맹점이 평상시 이용하는 패턴에 의한 가맹점이 아니라 타인을 위한 선물을 사기 위하여 이용한 가맹점인 경우
Figure 112019042828761-pat00012
에서 이용한 가맹점정보는 노이즈가 되고, 이로 인하여 가맹점의 추천결과는 전혀 엉뚱하게 나올 수가 있는 것이다.However, in events that occur sequentially, for example, watching a video, there may be noise. In other words
Figure 112019042828761-pat00009
and
Figure 112019042828761-pat00010
The relationship between the following videos, products, or affiliates may adversely affect the recommendation results. In the case of affiliate recommendation, for example, a customer
Figure 112019042828761-pat00011
If the affiliated store used in is an affiliated store used to buy a gift for another person, not an affiliated store based on the pattern used normally
Figure 112019042828761-pat00012
The affiliated store information used in is noise, and the affiliated store's recommendation result may come out completely wrong.

Paul Covington, Jay Adams and Emre Sargin. “Neural Networks for YouTube Recommendations”In RecSys'16 Proceedings of the 10th ACM Conference on Recommender Systems, September 2016. pp.191-198Paul Covington, Jay Adams and Emre Sargin. “Neural Networks for YouTube Recommendations” In RecSys'16 Proceedings of the 10th ACM Conference on Recommender Systems, September 2016. pp.191-198 Xiangnam He, Lizi Liao, Hanwang Zhang, Liqiang Nie, Xia Hu, Tat-Seng Chua. “Collaborative Filtering”In WWW'17 Proceedings of the 26th International Conference on World Wide Web, April 2017. pp.173-182.Xiangnam He, Lizi Liao, Hanwang Zhang, Liqiang Nie, Xia Hu, Tat-Seng Chua. “Collaborative Filtering” In WWW'17 Proceedings of the 26th International Conference on World Wide Web, April 2017. pp.173-182. Helene Massam, Jinnan Liu and Adrian Dobra. “Conjugate Prior for Discrete Hierarchical Log-linear models”In The Annals of Statistics Vol.37, No.6A, 2009. pp.3431-3467.Helene Massam, Jinnan Liu and Adrian Dobra. “Conjugate Prior for Discrete Hierarchical Log-linear models” In The Annals of Statistics Vol.37, No.6A, 2009. pp.3431-3467. W. Edwards Deming and Frederick F.Stephan. “a Least Squares adjustment of a sampled frequency table when the expected marginal totals are known”In The Annals of Mathematical Statistics. Vol.35, 1940. pp.615-630.W. Edwards Deming and Frederick F. Stephan. “A Least Squares adjustment of a sampled frequency table when the expected marginal totals are known” In The Annals of Mathematical Statistics. Vol. 35, 1940. pp. 615-630. Hao Wu, Yue Ning, Prithwish Chakraborty, Jilles Vreeken, Nikolaj Tatti, Naren Ramakrishnan. “Realistic Synthetic Population Datasets”arXiv:1602.06844v3 [cs.DB] 25 Feb 2016.Hao Wu, Yue Ning, Prithwish Chakraborty, Jilles Vreeken, Nikolaj Tatti, Naren Ramakrishnan. “Realistic Synthetic Population Datasets” arXiv:1602.06844v3 [cs.DB] 25 Feb 2016. Agresti, Alan. “Data Analysis”Third Edition. Wiley. 2012.Agresti, Alan. “Data Analysis” Third Edition. Wiley. 2012. Suvash Sedhain, Aditya Menon, Scott Sanner, Lexing Xie. “Autoencoders Meet Collaborative”In WWW'15 Companion Proceedings of the 24th International Conference on World Wide Web, May 2015. pp.111-112. Suvash Sedhain, Aditya Menon, Scott Sanner, Lexing Xie. “Autoencoders Meet Collaborative” In WWW'15 Companion Proceedings of the 24th International Conference on World Wide Web, May 2015. pp.111-112. Aaron van den Oord, Sander Dieleman, Benjamin Schrauwen. “content-based music recommendation”In NIPS'13 Proceedings of the 26th International Conference on Neural Information Processing Systems. Vol.2, December 2013. pp.2643-2651.Aaron van den Oord, Sander Dieleman, Benjamin Schrauwen. “Content-based music recommendation” In NIPS'13 Proceedings of the 26th International Conference on Neural Information Processing Systems. Vol. 2, December 2013. pp.2643-2651. Hao Wang, Naiyan Wang and Dit-Yan Yeung. “Deep Learning for Recommender Systems”In KDD'15 Proceedings of the 21st ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, August 2015. pp.1235-1244.Hao Wang, Naiyan Wang and Dit-Yan Yeung. “Deep Learning for Recommender Systems” In KDD'15 Proceedings of the 21st ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, August 2015. pp.1235-1244. Tomas Mikolov, Kai Chen, Greg Corrado and Jeffrey Dean. “Estimation of Word Representations in Vector Space”arXiv:1301.3781v3 [cs.CL] 7 Sep 2013.Tomas Mikolov, Kai Chen, Greg Corrado and Jeffrey Dean. “Estimation of Word Representations in Vector Space” arXiv:1301.3781v3 [cs.CL] 7 Sep 2013. Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg Corrado and Jeffrey Dean. “Representations of Words and Phrases and their Compositionality”In NIPS'13 Proceedings of the 26th International Conference on Neural Information Processing Systems Vol.2, December 2013. pp.3111-3119. Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg Corrado and Jeffrey Dean. “Representations of Words and Phrases and their Compositionality” In NIPS'13 Proceedings of the 26th International Conference on Neural Information Processing Systems Vol. 2, December 2013. pp. 3111-3119.

본 발명에서는 상술한 문제점에서 오는 상황을 극복할 수 있도록 DoubleDNN 모델을 제시한다. 즉, 순차적으로 발생되는 이벤트에는 노이즈가 있을 수 있는 문제를 해결하기 위하여 본 발명에서는 DoubleDNN을 사용하여 고객이 다음에 방문할 가맹점을 예측 및 추천하되 노이즈의 영향을 최소화 하는 추천모델을 제시하는 것을 목표로 한다. In the present invention, a DoubleDNN model is proposed to overcome the situation resulting from the above-described problem. In other words, in order to solve the problem that there may be noise in events that occur sequentially, the present invention uses DoubleDNN to predict and recommend affiliate stores that customers will visit next, but aims to present a recommendation model that minimizes the effect of noise. To

본 발명이 이루고자 하는 기술적 과제는 위에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다. The technical problem to be achieved by the present invention is not limited to the above-mentioned technical problem, and other technical problems that are not mentioned can be clearly understood by those of ordinary skill in the technical field to which the present invention belongs from the following description. will be.

본 발명에 의한 이중 DNN을 이용한 가맹점 추천방법의 바람직한 실시예는, 두 개의 심층신경망(DNN)을 가지는 컴퓨터시스템에 의하여 수행되는 가맹점 추천방법으로서, 상기 컴퓨터시스템이 제1신경망으로, 고객에 대한 고객벡터와 가맹점벡터를 이용하여 상기 고객이 다음에 방문할 t시점에서의 가맹점들의 확률벡터를 계산하되, 상기 가맹점벡터는 상기 t시점의 직전시점인 t-1시점의 가맹점벡터와 상기 t-1시점의 직전시점인 t-2시점의 가맹점벡터에 대한 평균으로 하여 계산하는 제1단계; 상기 컴퓨터시스템이 제2신경망으로, 상기 고객벡터와 상기 t-2시점의 가맹점벡터를 이용하여 상기 고객이 상기 t-1시점에 방문할 가맹점들의 확률벡터를 계산하는 제2단계; 및 상기 컴퓨터시스템이,상기 제1신경망이 계산한 가맹점들의 확률벡터와 상기 제2신경망이 계산한 가맹점들의 확률벡터를 이용하여 결합 확률분포를 계산하는 제3단계; 를 포함하는 것을 특징으로 하는 이중 DNN을 이용한 가맹점 추천방법으로 하는 것이 바람직하다.A preferred embodiment of the method for recommending an affiliate store using a double DNN according to the present invention is a method for recommending an affiliate store performed by a computer system having two deep neural networks (DNNs), wherein the computer system is the first neural network, and the customer to the customer The vector and the affiliated store vector are used to calculate the probability vector of the affiliated stores at the point t that the customer will visit next, and the affiliated store vector is the affiliated store vector at the point t-1 and the point t-1, which is the point immediately preceding the point t. A first step of calculating the average of the affiliated store vector at the point t-2, which is a point immediately before of A second step of calculating, by the computer system, a probability vector of affiliated stores that the customer will visit at the time t-1 by using the customer vector and the affiliated store vector at the time t-2 using the second neural network; And a third step of calculating, by the computer system, a combined probability distribution using a probability vector of affiliated stores calculated by the first neural network and a probability vector of affiliated stores calculated by the second neural network. It is preferable to use the affiliate store recommendation method using a double DNN, characterized in that it includes.

또한 상술한 특징들에 더하여 상기 제1신경망이 계산한 가맹점들의 확률벡터는 아래와 같으며,In addition to the above features, the probability vector of the affiliated stores calculated by the first neural network is as follows,

Figure 112019042828761-pat00013
Figure 112019042828761-pat00013

상기 제2신경망이 계산한 가맹점들의 확률벡터는 아래와 같으며,The probability vector of the affiliated stores calculated by the second neural network is as follows,

Figure 112019042828761-pat00014
Figure 112019042828761-pat00014

상기 결합 확률분포는 아래와 같은 것을 특징으로 하는 이중 DNN을 이용한 가맹점 추천방법으로 하는 것이 바람직한데,The combination probability distribution is preferably an affiliate store recommendation method using a double DNN, characterized in that:

Figure 112019042828761-pat00015
Figure 112019042828761-pat00015

여기서

Figure 112019042828761-pat00016
는 j번째 고객의 고객벡터,
Figure 112019042828761-pat00017
,
Figure 112019042828761-pat00018
,
Figure 112019042828761-pat00019
는 t, t-1 및 t-2시점에서 j번째 고객이 방문한 가맹점의 가맹점벡터이다.here
Figure 112019042828761-pat00016
Is the customer vector of the jth customer,
Figure 112019042828761-pat00017
,
Figure 112019042828761-pat00018
,
Figure 112019042828761-pat00019
Is the affiliate store vector of the affiliated store visited by the j-th customer at the time points t, t-1 and t-2.

또한 상술한 특징들에 더하여 상기 제1신경망 및 상기 제2신경망에 사용되는 손실함수는 Categorical cross-entropy를 사용하며, 상기 Categorical cross-entropy에서 모델 확률분포 q와 타겟 확률분포 p간의 거리 H는 아래와 같이 측정하는 것을 특징으로 하는 이중 DNN을 이용한 가맹점 추천방법으로 하는 것도 바람직하다.In addition to the above-described features, the loss function used for the first and second neural networks uses a categorical cross-entropy, and in the categorical cross-entropy, the distance H between the model probability distribution q and the target probability distribution p is It is also preferable to use a method for recommending an affiliate store using a double DNN, which is characterized in that the measurement is performed together.

Figure 112019042828761-pat00020
Figure 112019042828761-pat00020

뿐만 아니라 상술한 특징들 외에 상기 모델 확률분포 q는 Softmax 계층에서 계산되며, 상기 Softmax 함수는 아래와 같은 것을 특징으로 하는 이중 DNN을 이용한 가맹점 추천방법으로 하는 것도 바람직한데, In addition, in addition to the above-described features, the model probability distribution q is calculated in the Softmax layer, and the Softmax function is preferably used as an affiliate store recommendation method using a double DNN, characterized in that:

Figure 112019042828761-pat00021
Figure 112019042828761-pat00021

여기서

Figure 112019042828761-pat00022
은 출력 계층의
Figure 112019042828761-pat00023
번째 output이다. here
Figure 112019042828761-pat00022
Is the output layer
Figure 112019042828761-pat00023
Is the second output.

본 발명에서는 고객들이 다음에 방문할 가맹점을 예측 및 추천할 수 있는 방법을 제공하기 때문에 신용카드사 등에서 고객에게 알맞은 프로모션과 비즈니스 기회를 제공할 수 있는 효과가 있다. 또한 본 발명에서는 DoubleDNN을 사용하여 고객이 다음에 방문할 가맹점을 예측 및 추천하기 때문에 데이터 상에 노이즈가 있는 경우에도 이를 상쇄시켜 정확한 예측 및 추천을 할 수 있는 효과가 있다.In the present invention, since a method for predicting and recommending an affiliated store to be visited next by customers is provided, there is an effect that a credit card company or the like can provide appropriate promotions and business opportunities to customers. In addition, in the present invention, since doubleDNN is used to predict and recommend an affiliate store to be visited next by a customer, even when there is noise in the data, there is an effect of canceling the noise and making accurate prediction and recommendation.

도 1은 종래기술에 의한 DNN 기반 추천시스템 중 Neural Collaborative Filtering (NCF) 모델을 도시한 것이다.
도 2는 종래기술에 의한 DNN 기반 추천시스템 중 YouTube Recommender System의 DNN모델을 도시한 것이다.
도 3은 본 발명에 의한 이중 DNN읕 이용한 가맹점 추천방법이 수행되는 이중DNN 모델을 도시한 것이다.
도 4는 본 발명에 의한 이중 DNN읕 이용한 가맹점 추천 모델 중 제1신경망의 모델을 도시한 것이다.
도 5는 본 발명에 의한 이중 DNN읕 이용한 가맹점 추천 모델 중 제2신경망의 모델을 도시한 것이다.
도 6은 본 발명에 의한 이중DNN을 이용한 가맹점 추천방법의 실험에 사용된 contingency table의 구성도이다.
도 7은 본 발명에 의한 DoubleDNN 모델과 다른 DNN 모델과 비교한 성능비교로서 Precisions@5에 대한 결과이다.
도 8은 본 발명에 의한 DoubleDNN 모델과 다른 DNN 모델과 비교한 성능비교로서 Recall@5에 대한 결과이다.
도 9는 본 발명에 의한 DoubleDNN 모델과 다른 DNN 모델과 비교한 성능비교로서 F1-Score@5에 대한 결과이다.
도 10은 본 발명에 의한 DoubleDNN 모델과 다른 DNN 모델과 비교한 성능비교로서 NDCG@5에 대한 결과이다.
1 shows a Neural Collaborative Filtering (NCF) model of a DNN-based recommendation system according to the prior art.
2 shows a DNN model of a YouTube Recommender System among DNN-based recommendation systems according to the prior art.
3 shows a dual DNN model in which an affiliate store recommendation method using a dual DNN according to the present invention is performed.
4 is a diagram illustrating a model of a first neural network among affiliated store recommendation models using a double DNN according to the present invention.
FIG. 5 shows a model of a second neural network among the affiliate store recommendation models using a double DNN according to the present invention.
6 is a configuration diagram of a contingency table used in an experiment of an affiliate store recommendation method using a double DNN according to the present invention.
7 is a performance comparison between the DoubleDNN model according to the present invention and other DNN models, showing the results for Precisions@5.
8 is a performance comparison between the DoubleDNN model according to the present invention and other DNN models, showing the result of Recall@5.
9 is a performance comparison between the DoubleDNN model according to the present invention and other DNN models, showing results for F1-Score@5.
10 is a performance comparison between the DoubleDNN model according to the present invention and other DNN models, showing the results for NDCG@5.

이하에서 상술한 목적과 특징이 분명해지도록 본 발명을 상세하게 설명할 것이며, 이에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한 본 발명을 설명함에 있어서 본 발명과 관련한 공지기술 중 이미 그 기술 분야에 익히 알려져 있는 것으로서, 그 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. Hereinafter, the present invention will be described in detail so that the above-described objects and features become clear, and accordingly, a person of ordinary skill in the technical field to which the present invention pertains will be able to easily implement the technical idea of the present invention. In addition, in describing the present invention, when it is determined that a detailed description of the known technology may unnecessarily obscure the subject matter of the present invention, a detailed description thereof is provided as it is already well known in the technical field among known technologies related to the present invention. I will omit it.

아울러, 본 발명에서 사용되는 용어는 가능한 한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며 이 경우는 해당되는 발명의 설명부분에서 상세히 그 의미를 기재하였으므로, 단순한 용어의 명칭이 아닌 용어가 가지는 의미로서 본 발명을 파악하여야 함을 밝혀두고자 한다. 실시 예들에 대한 설명에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 실시 예들을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. In addition, the terms used in the present invention have selected general terms that are currently widely used as far as possible, but in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning of the terms has been described in detail in the description of the corresponding invention. It should be noted that the present invention should be understood as the meaning of the term, not the name of. The terms used in the description of the embodiments are only used to describe specific embodiments, and are not intended to limit the embodiments. Singular expressions include plural expressions unless the context clearly indicates otherwise.

실시 예들은 여러 가지 형태로 변경을 가할 수 있고 다양한 부가적 실시 예들을 가질 수 있는데, 여기에서는 특정한 실시 예들이 도면에 표시되고 관련된 상세한 설명이 기재되어 있다. 그러나 이는 실시 예들을 특정한 형태에 한정하려는 것이 아니며, 실시 예들의 사상 및 기술 범위에 포함되는 모든 변경이나 균등물 내지 대체물을 포함하는 것으로 이해되어야 할 것이다. The embodiments may be changed in various forms and may have various additional embodiments, in which specific embodiments are indicated in the drawings and related detailed descriptions are described. However, this is not intended to limit the embodiments to a specific form, and it should be understood that all changes, equivalents, or substitutes included in the spirit and scope of the embodiments are included.

다양한 실시 예들에 대한 설명 가운데 “제1”“제2”“첫째”또는“둘째”등의 표현들이 실시 예들의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분 짓기 위해 사용될 수 있다. In the description of various embodiments, expressions such as "first," "second," "first," or "second" may modify various elements of the embodiments, but the corresponding elements are not limited. For example, the expressions do not limit the order and/or importance of corresponding elements. The above expressions may be used to distinguish one component from another component.

이하에서는 첨부된 도면을 참조하여 본 발명을 설명한다. 본 발명에 의한, 가맹점 추천 문제는 분류문제로 해석할 수 있다. 여기서 레이블은 고객이 다음에 방문할 가맹점이 된다. Softmax 계층은 출력의 확률을 계산하는데 사용되며 이는 다음에 방문할 가맹점의 확률이 된다. 본 발명에서는 데이터 상에 노이즈가 있는 경우에도 이를 상쇄시켜 정확한 예측 및 추천을 할 수 있도록 두 개의 심층신경망으로 구성된 컴퓨터시스템을 사용하도록 하고 있다.Hereinafter, the present invention will be described with reference to the accompanying drawings. According to the present invention, the problem of recommending an affiliate store can be interpreted as a classification problem. Here, the label becomes the merchant the customer will visit next. The Softmax layer is used to calculate the probability of the output, which becomes the probability of the merchant to visit next. In the present invention, even if there is noise in the data, a computer system composed of two deep neural networks is used so that accurate prediction and recommendation can be made by canceling it.

이를 위하여 컴퓨터시스템은, 먼저 첫 번째 신경망인 제1신경망(DNN-1)으로 하여금, 주어진 고객과 가맹점 벡터에 대하여 해당 고객이 다음에 방문할 가맹점들의 확률을 계산하도록 하는 것이 바람직하다. 즉 상기 제1신경망(DNN-1)은, 고객에 대한 고객벡터와 가맹점벡터를 이용하여 상기 고객이 다음에 방문할 t시점에서의 가맹점들의 확률벡터를 계산하는 제1단계를 수행하는 것이 바람직하다. 여기서 상기 가맹점벡터는 상기 t시점의 직전시점인 t-1시점의 가맹점벡터 와 상기 t-1시점의 직전시점인 t-2시점의 가맹점벡터에 대한 평균으로 하여 계산하는 것이 바람직하다. 따라서 상기 제1신경망(DNN-1)이 계산한 가맹점들의 확률벡터는 아래와 같이 하는 것이 바람직하다. To this end, it is preferable that the computer system first allow the first neural network (DNN-1), which is the first neural network, to calculate the probability of the affiliate stores that the customer will visit next for a given customer and affiliate store vector. That is, the first neural network (DNN-1) preferably performs the first step of calculating the probability vectors of the affiliated stores at the point t that the customer will visit next, using the customer vector and the affiliated store vector for the customer. . Here, the affiliated point vector is preferably calculated as an average of the affiliated point vector at the point t-1, which is a point immediately before the point t-1, and the affiliated point vector at point t-2, which is the point immediately before the point t-1. Therefore, it is preferable that the probability vectors of affiliated stores calculated by the first neural network (DNN-1) be as follows.

Figure 112019042828761-pat00024
Figure 112019042828761-pat00024

그러나 상술한 바와 같은 이유로 상기 t-1시점의 가맹점

Figure 112019042828761-pat00025
은 노이즈로 작용할 수 있기 때문에 본 발명에서는 두 번째 심층신경망을 이용하여 이를 상쇄시키게 된다. 따라서 두 번째인 신경망인 제2신경망(DNN-2)은, 상기 고객벡터와 상기 t-2시점의 가맹점벡터를 이용하여 상기 고객이 상기 t-1시점에 방문할 가맹점들의 확률벡터를 계산하는 제2단계를 수행하는 것이 바람직하다. 그리고 상기 제2신경망(DNN-2)이 계산한 가맹점들의 확률벡터는 아래와 같이 하는 것이 바람직하다.However, for the same reason as described above, the affiliated store at time t-1
Figure 112019042828761-pat00025
Since silver can act as noise, in the present invention, the second deep neural network is used to cancel it. Therefore, the second neural network (DNN-2), which is the second neural network, uses the customer vector and the affiliate store vector at the time t-2 to calculate the probability vectors of the affiliate stores that the customer will visit at the time t-1. It is desirable to carry out step 2. In addition, the probability vector of the affiliated stores calculated by the second neural network (DNN-2) is preferably as follows.

Figure 112019042828761-pat00026
Figure 112019042828761-pat00026

상기 제1단계 및 상기 제2단계가 수행된 뒤에는 두 신경망의 출력인 가맹점 확률벡터인 상기 제1신경망이 계산한 가맹점들의 확률벡터와 상기 제2신경망이 계산한 가맹점들의 확률벡터를 이용해

Figure 112019042828761-pat00027
Figure 112019042828761-pat00028
의 결합 확률분포를 아래와 같이 계산하는 제3단계를 수행하는 것이 바람직하다.After the first and second steps are performed, a probability vector of affiliate stores calculated by the first neural network, which is an affiliate store probability vector that is an output of two neural networks, and a probability vector of affiliate stores calculated by the second neural network are used.
Figure 112019042828761-pat00027
and
Figure 112019042828761-pat00028
It is desirable to perform the third step of calculating the combined probability distribution of.

Figure 112019042828761-pat00029
Figure 112019042828761-pat00029

여기서

Figure 112019042828761-pat00030
는 j번째 고객의 고객벡터,
Figure 112019042828761-pat00031
,
Figure 112019042828761-pat00032
,
Figure 112019042828761-pat00033
는 t, t-1 및 t-2시점에서 j번째 고객이 방문한 가맹점의 가맹점벡터이다. 도 3은 상술한 상기 제1단계 내지 상기 제3단계가 수행되는 과정이 포함된, 본 발명에 의한 이중 DNN읕 이용한 가맹점 추천모델을 도시한 것이다. 도 3에서 보는 바와 같이 본 발명에 의한 DoubleDNN은 심층신경망이 2개(DNN-1, DNN-2) 이다. 즉 어떤 고객의 t-1시점과 t-2시점에 이용한 가맹점정보가 주어 졌을 때 t시점에서의 가맹점을 예측하는 모델이 왼쪽에 도시된 제1신경망(DNN-1)과, 어떤 고객의 t-2시점에 이용한 가맹점정보가 주어졌을 때 t-1시점에 이용할 것으로 예상되는 가맹점을 예측하는 제2신경망(DNN-2)을 포함한다. train data의 input은 word2vec model 사용해서 고객 embedding vector 및 가맹점 embedding vector를 생성하는 것이 바람직한데, 도 3에 표시된 mer2vec 및 cus2vec가 각각 이에 해당되는 부분이다. here
Figure 112019042828761-pat00030
Is the customer vector of the jth customer,
Figure 112019042828761-pat00031
,
Figure 112019042828761-pat00032
,
Figure 112019042828761-pat00033
Is the affiliate store vector of the affiliated store visited by the j-th customer at times t, t-1 and t-2. 3 is a diagram illustrating an affiliated store recommendation model using a double DNN according to the present invention, including the process of performing the above-described first to third steps. As shown in Figure 3, the DoubleDNN according to the present invention has two deep neural networks (DNN-1, DNN-2). In other words, given the affiliated store information used at the t-1 and t-2 points of a customer, the first neural network (DNN-1) shown on the left and the t- It includes a second neural network (DNN-2) that predicts the affiliate store expected to be used at the point t-1 when the affiliate store information used at the point 2 is given. For input of train data, it is preferable to generate a customer embedding vector and an affiliate store embedding vector using the word2vec model, and mer2vec and cus2vec shown in FIG. 3 are corresponding parts, respectively.

한편 상기 제1신경망(DNN-1) 및 상기 제2신경망(DNN-2)에 사용되는 손실함수는 Categorical cross-entropy를 사용하며, 상기 Categorical cross-entropy에서 모델 확률분포 q와 타겟 확률분포 p간의 거리 H는 아래와 같이 측정하도록 하는 것이 바람직하다. Meanwhile, the loss function used for the first neural network (DNN-1) and the second neural network (DNN-2) uses a categorical cross-entropy, and in the categorical cross-entropy, a model probability distribution q and a target probability distribution p It is desirable to measure the distance H as follows.

Figure 112019042828761-pat00034
Figure 112019042828761-pat00034

또한 상기 모델 확률분포 q는 Softmax 계층에서 계산되며, 상기 Softmax 함수는 아래와 같이 계산하는 것이 바람직하다. In addition, the model probability distribution q is calculated in the Softmax layer, and the Softmax function is preferably calculated as follows.

Figure 112019042828761-pat00035
Figure 112019042828761-pat00035

여기서

Figure 112019042828761-pat00036
은 출력 계층의
Figure 112019042828761-pat00037
번째 output 이다.here
Figure 112019042828761-pat00036
Is the output layer
Figure 112019042828761-pat00037
Is the second output.

한편 도 4 및 도 5는 상기 제1신경망(DNN-1) 및 상기 제2신경망(DNN-2)의 모델을 각각 도시하는 도면이다. 먼저 도 4는 상기 제1신경망(DNN-1)의 모델로서 어떤 고객이 t-2시점과 t-1시점에 이용한 가맹점 정보가 주어졌을 때 t시점에 이용할 가맹점정보를 예측하는 모델이다. 상기 제1신경망 모델의 input으로는 고객 embedding vector와 함께 가맹점 embedding vector들의 평균 vector가 들어간다. 그리고 Output은 t시점에서 가맹점에 대한 index가 된다. 이 때 손실함수(Loss function)는 cross entropy를 사용하도록 하고, Optimization method는 Adam optimizer를 사용하도록 하는 것이 바람직하다.Meanwhile, FIGS. 4 and 5 are diagrams illustrating models of the first neural network (DNN-1) and the second neural network (DNN-2), respectively. First, FIG. 4 is a model of the first neural network (DNN-1), which is a model for predicting affiliate store information to be used at time t when a customer is given affiliate store information used at time t-2 and time t-1. As an input of the first neural network model, an average vector of affiliate store embedding vectors together with a customer embedding vector is entered. And Output becomes the index for the affiliate store at time t. In this case, it is preferable to use cross entropy for the loss function and Adam optimizer for the optimization method.

그리고 먼저 도 3은 상기 제2신경망(DNN-2)의 모델로서 어떤 고객이 t-2시점에 이용한 가맹점 정보가 주어졌을 때 t-1시점에 이용할 가맹점정보를 예측하는 모델이다. 상기 제2신경망 모델의 input으로는 고객 embedding vector와 함께 가맹점 embedding vector가 들어간다. 그리고 Output은 t-1시점에서 가맹점에 대한 index가 된다. 이 때 손실함수(Loss function)는 cross entropy를 사용하도록 하고, Optimization method는 Adam optimizer를 사용하도록 하는 것이 바람직하다.And first, as a model of the second neural network (DNN-2), FIG. 3 is a model for predicting the affiliate store information to be used at the time t-1 when a customer is given the affiliate store information used at the time t-2. As an input of the second neural network model, an affiliate store embedding vector is entered together with a customer embedding vector. And the output becomes the index for the affiliated store at the time t-1. In this case, it is preferable to use cross entropy for the loss function and Adam optimizer for the optimization method.

이하에서는 실시예를 통하여 본 발명에 대하여 좀 더 상세하게 설명한다. 이하에서 설명되는 실시예는 본 발명의 이해를 돕기 위하여 예시적으로 나타낸 것이며, 본 발명은 여기서 설명되는 실시예와 다르게 다양하게 변형되어 실시될 수 있음이 이해되어야 할 것이다. 이와 같이 본 발명의 범주 및 기술사상 범위 내에서 다양한 변경 및 수정이 가능함은 본 기술분야에서 통상의 지식을 가진 자에게 있어서 명백한 것이며, 이러한 변형 및 수정이 첨부된 특허 청구범위에 속하는 것도 당연한 것이다. Hereinafter, the present invention will be described in more detail through examples. The embodiments described below are illustratively shown to aid understanding of the present invention, and it should be understood that the present invention may be variously modified and implemented differently from the embodiments described herein. As described above, it is obvious to those of ordinary skill in the art that various changes and modifications can be made within the scope and spirit of the present invention, and it is natural that such modifications and modifications belong to the appended claims.

<실시예><Example>

BC카드사의 데이터분포를 따르는 인공 생성된 신용카드 사용내역 데이터를 이용하여, 본 발명에 의한 이중DNN을 이용한 가맹점 추천방법을 실시하는 실험을 함으로써, 본 발명의 우수성을 검증하였다.The excellence of the present invention was verified by conducting an experiment in which an affiliate store recommendation method using a double DNN according to the present invention was conducted using artificially generated credit card usage history data following the data distribution of BC Card.

1. 인공데이터 생성1. Artificial data creation

본 발명의 우수성을 검증하기 위한 실험의 실시를 위하여 원 데이터의 contingency table과 Iterative Proportional Fitting (IPF) 알고리즘을 사용하여 신용카드 사용내역 인공데이터를 생성했다. N개의 패턴으로 데이터를 표현하는 일반적인 방법은 contingency table을 이용하는 것이다. 따라서 contingency table이 N개 패턴의 빈도 분포를 보여 줄 수 있도록 구성하였는데, 도 6은 본 발명의 실시예에 사용된 contingency table의 구성도이다. 도 6에서 보는 바와 같이 각각의 패턴에 4가지 범주 속성을 생성하였고 각 범주 속성은 고객 (12 그룹), 가맹점 (15 그룹), 거래 날짜 (12 범주), 금액 (6 범주)로 구성한 후, N개의 패턴의 빈도 분포(frequency)를 표시하는 contingency table에서 고객에 대하여 age, gender 등을 기준으로 12개 category로 나누었다. 그리고 가맹점에 대하여는 business category로 15개로 나누었다. 금액에 대하여는 그 크기에 따라서 6개 category로 나누었다. 거래 날짜는 월 기준으로 12개 category로 나누었다. In order to conduct an experiment to verify the excellence of the present invention, artificial data on credit card usage was generated using the contingency table of the original data and the Iterative Proportional Fitting (IPF) algorithm. A common method of representing data in N patterns is to use a contingency table. Accordingly, the contingency table is configured to show the frequency distribution of N patterns, and FIG. 6 is a configuration diagram of a contingency table used in an embodiment of the present invention. As shown in Fig. 6, four category attributes were created for each pattern, and each category attribute was composed of customer (12 groups), affiliated stores (15 groups), transaction date (12 categories), and amount (6 categories), and then N In the contingency table that displays the frequency distribution of dog patterns, customers were divided into 12 categories based on age and gender. And the franchisees were divided into 15 business categories. As for the amount, it was divided into 6 categories according to the size. The transaction date was divided into 12 categories on a monthly basis.

반응변수가 따로 없고 변수들의 범주에 따라 관측된 도수들로 이루어진 contingency table 형식의 데이터에 변수들 간의 독립성이나 조건부 독립성 등의 관계를 탐색하는데 사용되는 로그 선형 모델을 사용했다. Contingency table을 사용하여 data의 distribution을 찾는 model은 log-linear model이다. Log-linear 모델을 사용하여 데이터 생성하는 알고리즘이 몇 개 있는데, 본 발명에서는 BC카드사의 데이터분포를 따르는 신용카드 사용내역 데이터를 만들기 위해 iterative Proportional Fitting (IPF) 알고리즘을 사용하여 인공 데이터를 생성하였다.A logarithmic linear model used to search for the relationship such as independence or conditional independence between variables was used in data in the form of a contingency table consisting of frequencies observed according to the categories of variables without any response variable. The model for finding the distribution of data using the contingency table is a log-linear model. There are several algorithms for generating data using a log-linear model. In the present invention, artificial data is generated using an iterative proportional fitting (IPF) algorithm to create credit card usage history data that follows the data distribution of BC Card.

2. 데이터2. Data

모델의 학습과 검증을 위해 신용카드 사용내역의 합성데이터를 사용하였다. 데이터에 대한 자세한 정보는 아래 표와 같다. 각각의 고객이 마지막에 방문한 가맹점을 검증 셋으로 사용되었고 나머지 데이터는 훈련 셋으로 사용되었다. 고객 및 가맹점에 대한 vector dimension은 32, 64, 128로 했다.Synthetic data of credit card usage history was used for model learning and verification. Detailed information on the data is shown in the table below. The affiliate store that each customer visited last was used as a verification set, and the rest of the data were used as a training set. The vector dimensions for customers and affiliated stores were 32, 64, and 128.

고객 수 Number of customers 가맹점 개수Number of affiliated stores 데이터 건수Number of data 신용카드 데이터 1Credit card data 1 4,4274,427 6,9596,959 159,169159,169

3. 평가 지표3. Evaluation index

Precision, Recall, F1-score, Normalized Discounted Cumulative Gain(NDCG)를 평가 지표로 사용하여 각 고객에 대해 top-5 가맹점을 추천하였다. 평가지표 각각에 대한 수식은 다음과 같은데, 아래 수식들에서

Figure 112019042828761-pat00038
는 고객 집합이며,
Figure 112019042828761-pat00039
는 타겟 가맹점의 집합이다. 그리고
Figure 112019042828761-pat00040
은 모델이 추천한 가맹점 집합이며,
Figure 112019042828761-pat00041
는 고객 수이다.
Figure 112019042828761-pat00042
Figure 112019042828761-pat00043
가맹점에 대한 점수,
Figure 112019042828761-pat00044
Figure 112019042828761-pat00045
가맹점에 랭킹 점수이다. Using Precision, Recall, F1-score, and Normalized Discounted Cumulative Gain (NDCG) as evaluation indicators, the top-5 affiliates were recommended for each customer. The formula for each evaluation index is as follows, in the formulas below
Figure 112019042828761-pat00038
Is the set of customers,
Figure 112019042828761-pat00039
Is the set of target affiliate stores. And
Figure 112019042828761-pat00040
Is the set of affiliate stores recommended by the model,
Figure 112019042828761-pat00041
Is the number of customers.
Figure 112019042828761-pat00042
Is
Figure 112019042828761-pat00043
The score for the merchant,
Figure 112019042828761-pat00044
silver
Figure 112019042828761-pat00045
This is the ranking score for the affiliated store.

먼저 Precision은 exactness 대한 척도인데, Precision은 추천한 모든 가맹점을 기준으로 정확하게 추천한 가맹점의 확률을 계산한다. 즉 Precision은 아래와 같은 개념이다.First, Precision is a measure of exactness, and Precision calculates the probability of accurately recommending affiliates based on all recommended affiliates. That is, Precision is a concept as follows.

Figure 112019042828761-pat00046
Figure 112019042828761-pat00046

따라서 top-5 가맹점에 대한 Precision은 다음과 같다.Therefore, the precision of the top-5 affiliates is as follows.

Figure 112019042828761-pat00047
Figure 112019042828761-pat00047

한편 Recall은 completeness에 대한 척도이다. 따라서 Recall은 target 가맹점을 기준으로 정확하게 추천한 가맹점의 확률을 계산한다. 즉 Recall은 아래와 같은 개념이다.Meanwhile, Recall is a measure of completeness. Therefore, Recall calculates the probability of the recommended affiliate store accurately based on the target affiliate store. That is, Recall is a concept as follows.

Figure 112019042828761-pat00048
Figure 112019042828761-pat00048

따라서 top-5 가맹점에 대한 Recall은 다음과 같다. Therefore, the recall to the top-5 affiliated stores is as follows.

Figure 112019042828761-pat00049
Figure 112019042828761-pat00049

F1-Score는 precision, recall을 사용해서 추천 system이 얼마나 좋은지를 계산한다. 따라서 top-5 가맹점에 대한 F1- score는 아래와 같이 계산된다. F1-Score uses precision and recall to calculate how good the recommended system is. Therefore, the F1-score for the top-5 affiliated stores is calculated as follows.

Figure 112019042828761-pat00050
Figure 112019042828761-pat00050

추천한 가맹점의 sequence도 중요하므로 NDCG(Normalized Discounted Cumulative Gain)를 이용하여 추천 system을 얼마나 좋은지를 계산한다. top-5 가맹점에 대한 NDCG는 아래와 같이 계산된다. Since the sequence of recommended affiliates is also important, calculate how good the recommendation system is using NDCG (Normalized Discounted Cumulative Gain). The NDCG for the top-5 affiliates is calculated as follows.

Figure 112019042828761-pat00051
Figure 112019042828761-pat00051

4 실험 결과4 experimental results

실험결과는 도 7 내지 도 10과 같다. 도 7 내지 10은 본 발명에 의한 모델인 DoubleDNN 모델이 다른 DNN 모델보다 성능이 우수하다는 것을 보여주는 것으로서, 도 7은 Precisions@5에 대한 결과로서 DNN에 비하여 이중DNN이 우수함을 알 수 있으며, 도 8은 Recall@5에 대한 결과로서 이 또한 DNN에 비하여 이중DNN이 우수함을 알 수 있다. 그리고 도 9는 F1-Score@55에 대한 결과로서 DNN에 비하여 이중DNN이 우수함을 알 수 있으며, 도 10은 NDCG@5에 대한 결과로서 이 또한 DNN에 비하여 이중DNN이 우수함을 알 수 있다. 이들 모두 가맹점 벡터의 차원이 32, 64, 128로 변함에 따라 DoubleDNN은 항상 DNN보다 성능이 우수하다는 것을 보여준다. Experimental results are shown in FIGS. 7 to 10. 7 to 10 show that the DoubleDNN model, which is a model according to the present invention, has better performance than other DNN models, and FIG. 7 shows that the double DNN is superior to the DNN as a result of Precisions@5, and FIG. As a result of Recall@5, it can be seen that double DNN is superior to DNN. In addition, FIG. 9 shows that the double DNN is superior to the DNN as a result of F1-Score@55, and FIG. 10 shows that the double DNN is superior to the DNN as a result of NDCG@5. All of them show that DoubleDNN always outperforms DNN as the dimension of the affiliate store vector changes to 32, 64, and 128.

이상에서 살펴본 바와 같이 본 발명에서는 가맹점 방문과 같이 순차적으로 발생하는 이벤트에는 노이즈가 있어서 제거하기 위해 두 개의 신경망을 이용한 DoubleDNN 모델을 제안하였다. 실험 결과에서, 제안한 모델은 최신 DNN 모델에 비해 더 좋은 성능을 보이는 것을 확인하였다. 가맹점 벡터의 차원에 따라 평가 지표들이 바뀌었다. 임베딩 벡터의 차원이 커지면 오버피팅이 발생하고 추천 모델의 성능이 저하될 수 있는 것을 알아냈다. As described above, the present invention proposes a DoubleDNN model using two neural networks in order to remove noise from events that occur sequentially, such as visiting an affiliate store. From the experimental results, it was confirmed that the proposed model shows better performance than the latest DNN model. The evaluation indices changed according to the dimension of the affiliate store vector. It was found that if the dimension of the embedding vector increases, overfitting may occur and the performance of the recommendation model may be degraded.

상술한 여러 가지 예로 본 발명을 설명하였으나, 본 발명은 반드시 이러한 예들에 국한되는 것이 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형 실시될 수 있다. 따라서 본 발명에 개시된 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 예들에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 한다. Although the present invention has been described with various examples described above, the present invention is not necessarily limited to these examples, and various modifications may be made without departing from the spirit of the present invention. Accordingly, the examples disclosed in the present invention are not intended to limit the technical idea of the present invention, but to explain the technical idea, and the scope of the technical idea of the present invention is not limited by these examples. The scope of protection of the present invention should be interpreted by the claims below, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

Claims (4)

두 개의 심층신경망(DNN)을 가지는 컴퓨터시스템에 의하여 수행되는 가맹점 추천방법으로서,
상기 컴퓨터시스템이 제1신경망으로, 고객에 대한 고객벡터와 가맹점벡터를 이용하여 상기 고객이 다음에 방문할 t시점에서의 가맹점들의 확률벡터를 계산하되, 상기 가맹점벡터는 상기 t시점의 직전시점인 t-1시점의 가맹점벡터와 상기 t-1시점의 직전시점인 t-2시점의 가맹점벡터에 대한 평균으로 하여 계산하는 제1단계;
상기 컴퓨터시스템이 제2신경망으로, 상기 고객벡터와 상기 t-2시점의 가맹점벡터를 이용하여 상기 고객이 상기 t-1시점에 방문할 가맹점들의 확률벡터를 계산하는 제2단계; 및
상기 컴퓨터시스템이, 상기 제1신경망이 계산한 가맹점들의 확률벡터와 상기 제2신경망이 계산한 가맹점들의 확률벡터를 이용하여 결합 확률분포를 계산하는 제3단계; 를 포함하는 것을 특징으로 하는 이중 DNN을 이용한 가맹점 추천방법
As an affiliate store recommendation method performed by a computer system having two deep neural networks (DNNs),
The computer system is the first neural network, and calculates the probability vector of the affiliated stores at the point t that the customer will visit next, using the customer vector and the affiliated store vector for the customer, wherein the affiliated store vector is the point immediately before the point t. a first step of calculating the average of the affiliate store vector at the time point t-1 and the affiliate store vector at the time point t-2, which is a point immediately before the time point t-1;
A second step of calculating, by the computer system, a probability vector of affiliated stores that the customer will visit at the time t-1 by using the customer vector and the affiliated store vector at the time t-2 using the second neural network; And
A third step of calculating, by the computer system, a combined probability distribution using a probability vector of affiliated stores calculated by the first neural network and a probability vector of affiliated stores calculated by the second neural network; Affiliate recommendation method using dual DNN, characterized in that including
제1항에 있어서,
상기 제1신경망이 계산한 가맹점들의 확률벡터는 아래와 같으며,
Figure 112019042828761-pat00052

상기 제2신경망이 계산한 가맹점들의 확률벡터는 아래와 같으며,
Figure 112019042828761-pat00053

상기 결합 확률분포는 아래와 같은 것을 특징으로 하는 이중 DNN을 이용한 가맹점 추천방법
Figure 112019042828761-pat00054

여기서
Figure 112019042828761-pat00055
는 j번째 고객의 고객벡터,
Figure 112019042828761-pat00056
,
Figure 112019042828761-pat00057
,
Figure 112019042828761-pat00058
는 t, t-1 및 t-2시점에서 j번째 고객이 방문한 가맹점의 가맹점벡터
The method of claim 1,
The probability vector of the affiliated stores calculated by the first neural network is as follows,
Figure 112019042828761-pat00052

The probability vector of the affiliated stores calculated by the second neural network is as follows,
Figure 112019042828761-pat00053

The combination probability distribution is a method for recommending an affiliate store using a double DNN, characterized in that:
Figure 112019042828761-pat00054

here
Figure 112019042828761-pat00055
Is the customer vector of the jth customer,
Figure 112019042828761-pat00056
,
Figure 112019042828761-pat00057
,
Figure 112019042828761-pat00058
Is the affiliate store vector of the affiliated store visited by the j-th customer at times t, t-1 and t-2
제1항에 있어서,
상기 제1신경망 및 상기 제2신경망에 사용되는 손실함수는 Categorical cross-entropy를 사용하며, 상기 Categorical cross-entropy에서 모델 확률분포 q와 타겟 확률분포 p간의 거리 H는 아래와 같이 측정하는 것을 특징으로 하는 이중 DNN을 이용한 가맹점 추천방법
Figure 112020126282298-pat00059

The method of claim 1,
The loss function used for the first and second neural networks uses a categorical cross-entropy, and the distance H between the model probability distribution q and the target probability distribution p in the categorical cross-entropy is measured as follows. Affiliate recommendation method using double DNN
Figure 112020126282298-pat00059

제3항에 있어서,
상기 모델 확률분포 q는 Softmax 계층에서 계산되며, Softmax 함수는 아래와 같은 것을 특징으로 하는 이중 DNN을 이용한 가맹점 추천방법
Figure 112020126282298-pat00060

여기서
Figure 112020126282298-pat00061
은 출력 계층의
Figure 112020126282298-pat00062
번째 output
The method of claim 3,
The model probability distribution q is calculated in the Softmax layer, and the Softmax function is an affiliate store recommendation method using a double DNN, characterized in that:
Figure 112020126282298-pat00060

here
Figure 112020126282298-pat00061
Is the output layer
Figure 112020126282298-pat00062
Th output
KR1020190048494A 2019-04-25 2019-04-25 Merchant Recommend Method using Double DNN KR102205324B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190048494A KR102205324B1 (en) 2019-04-25 2019-04-25 Merchant Recommend Method using Double DNN

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190048494A KR102205324B1 (en) 2019-04-25 2019-04-25 Merchant Recommend Method using Double DNN

Publications (2)

Publication Number Publication Date
KR20200130760A KR20200130760A (en) 2020-11-20
KR102205324B1 true KR102205324B1 (en) 2021-01-20

Family

ID=73697199

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190048494A KR102205324B1 (en) 2019-04-25 2019-04-25 Merchant Recommend Method using Double DNN

Country Status (1)

Country Link
KR (1) KR102205324B1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0764965A (en) * 1993-08-30 1995-03-10 Hitachi Ltd Method for predicting sales quantity
US6430539B1 (en) * 1999-05-06 2002-08-06 Hnc Software Predictive modeling of consumer financial behavior
KR101979401B1 (en) * 2012-06-22 2019-05-16 구글 엘엘씨 Ranking nearby destinations based on visit likelihoods and predicting future visits to places from location history
CN108171103A (en) * 2016-12-07 2018-06-15 北京三星通信技术研究有限公司 Object detection method and device
KR101957347B1 (en) * 2017-07-29 2019-03-12 한남대학교 산학협력단 Personalized prediction method for purchase timing using purchased pattern data and target promotion system

Also Published As

Publication number Publication date
KR20200130760A (en) 2020-11-20

Similar Documents

Publication Publication Date Title
Li et al. Spam review detection with graph convolutional networks
CN102737333B (en) For calculating user and the offer order engine to the coupling of small segmentation
Wang et al. Leveraging product adopter information from online reviews for product recommendation
CN111461841B (en) Article recommendation method, device, server and storage medium
US20090198602A1 (en) Ranking commercial offers based on user financial data
CN111709810A (en) Object recommendation method and device based on recommendation model
Li et al. Deep heterogeneous autoencoders for collaborative filtering
Kumar et al. ecommercegan: A generative adversarial network for e-commerce
WO2019072128A1 (en) Object identification method and system therefor
Patil et al. Studying the contribution of machine learning and artificial intelligence in the interface design of e-commerce site
US11461824B2 (en) Systems and methods of product recommendation and integrated language modelling
Behera et al. Collaborative filtering with temporal features for movie recommendation system
Hu et al. Tourism demand forecasting using nonadditive forecast combinations
Le et al. A multi-criteria collaborative filtering approach using deep learning and dempster-shafer theory for hotel recommendations
KR20210144330A (en) Method and apparatus for recommending item based on collaborative filtering neural network
Manimurugan et al. A user-based video recommendation approach using CAC filtering, PCA with LDOS-CoMoDa
Ryngksai et al. Recommender systems: types of filtering techniques
Narang et al. FuseRec: fusing user and item homophily modeling with temporal recommender systems
Liu et al. An improved autoencoder for recommendation to alleviate the vanishing gradient problem
CN111708945A (en) Product recommendation method and device, electronic equipment and computer storage medium
KR102205324B1 (en) Merchant Recommend Method using Double DNN
Edi Surya et al. Recommendation System with Content-Based Filtering in NFT Marketplace
Han et al. An evidence-based credit evaluation ensemble framework for online retail SMEs
Qiu A predictive model for customer purchase behavior in e-commerce context
Bachhav et al. Book Recommendation System using Machine learning and Collaborative Filtering

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction