KR102193345B1 - Item recommendataion method and apparatus between group member and group item - Google Patents

Item recommendataion method and apparatus between group member and group item Download PDF

Info

Publication number
KR102193345B1
KR102193345B1 KR1020190004741A KR20190004741A KR102193345B1 KR 102193345 B1 KR102193345 B1 KR 102193345B1 KR 1020190004741 A KR1020190004741 A KR 1020190004741A KR 20190004741 A KR20190004741 A KR 20190004741A KR 102193345 B1 KR102193345 B1 KR 102193345B1
Authority
KR
South Korea
Prior art keywords
product
products
customers
customer
group
Prior art date
Application number
KR1020190004741A
Other languages
Korean (ko)
Other versions
KR20200088132A (en
Inventor
최원규
문현규
정유현
Original Assignee
카페24 주식회사
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 카페24 주식회사 filed Critical 카페24 주식회사
Priority to KR1020190004741A priority Critical patent/KR102193345B1/en
Publication of KR20200088132A publication Critical patent/KR20200088132A/en
Application granted granted Critical
Publication of KR102193345B1 publication Critical patent/KR102193345B1/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/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0254Targeted advertisements based on statistics
    • 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/0255Targeted advertisements based on user history
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • 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/0277Online advertisement
    • 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

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 일 양태는 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법을 개시하고 있다. 상기 방법은, 복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하는 단계, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하는 단계, 상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬을 생성하는 단계(상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임), 상기 행렬의 개별 행에 대하여, 적어도 둘 이상의 고객들의 구매가능성 지표의 제 1 부분합을 산출하는 단계, 상기 산출된 제 1 부분합을 순위화하는 단계, 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품들을 선택하는 단계, 상기 행렬의 개별 열에 대하여, 상기 선택된 상품들에 대한 고객별 제 2 부분합을 산출하는 단계, 상기 산출된 제 2 부분합을 순위화하는 단계, 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객들을 선택하는 단계, 및 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 단계를 포함한다.An aspect of the present invention discloses a product recommendation method between a group customer and a group product in an e-commerce system. The method includes receiving data of a plurality of products available for purchase in a plurality of online shopping malls and a plurality of customers related to purchases through the online shopping mall, and a purchaseability index of individual products and individual customers based on the received data Obtaining, generating a matrix by configuring at least two or more of the plurality of products as a column and at least two or more of the plurality of customers as a row (some of the plurality of customers are It has a relationship with some of the plurality of products, and the content included in the blanks of the matrix is a purchaseability index between the product and the customer), for each row of the matrix, the purchaseability index of at least two customers Calculating a first subtotal, ranking the calculated first subtotal, selecting products with a higher first subtotal ranking as many as the number of first products, for individual columns of the matrix, for the selected products Calculating a second subtotal for each customer, ranking the calculated second subtotal, selecting customers with a higher second subtotal ranking by the number of first customers, and the selected products for the selected customers And performing a promotion using the online shopping mall.

Description

그룹 고객과 그룹 상품 간의 상품 추천 방법 및 장치{ITEM RECOMMENDATAION METHOD AND APPARATUS BETWEEN GROUP MEMBER AND GROUP ITEM}Product recommendation method and device between group customers and group products {ITEM RECOMMENDATAION METHOD AND APPARATUS BETWEEN GROUP MEMBER AND GROUP ITEM}

본 발명은 상품 추천 방법에 관한 것으로, 보다 상세하세는, 상품의 프로모션(promotion)의 효율을 극대화시키기 위한 상품 추천 방법에 관한 것이다.The present invention relates to a product recommendation method, and more particularly, to a product recommendation method for maximizing the efficiency of product promotion.

최근 전자상거래를 이용하여 상품을 구매하는 현상이 늘어감에 따라 개인에게 최적화된 상품을 추천하기 위한 상품 추천 알고리듬에 대한 연구가 많이 이루어지고 있다.Recently, as the phenomenon of purchasing products using e-commerce increases, many researches on product recommendation algorithms for recommending products optimized for individuals have been conducted.

종래의 상품 추천 방법 중 하나는, 특정 상품을 기준으로, 이 상품의 이미지 분석 및 속성을 분석하여 상품의 유사도를 정량화하여 추천 상품을 순위화하는 방식이다. One of the conventional product recommendation methods is a method of ranking recommended products by quantifying the similarity of products by analyzing images and attributes of this product based on a specific product.

다만, 다수의 상품과, 다수의 고객을 대상으로 프로모션(promotion)을 진행하는 경우는 다른 방식이 필요하다. 예를 들어 10개의 상품 중에 4건을 골라서, 전체 100 명의 고객 중 특별히 선정한 20명에게 프로모션을 진행하고자 한다면, 다음과 같은 질문을 해결해야 한다.However, a different method is required when promoting a plurality of products and a plurality of customers. For example, if you choose 4 out of 10 products and want to promote a promotion to 20 specially selected out of 100 customers, you need to solve the following questions.

(1) 10 개의 상품 중 어떤 상품으로 프로모션을 구성할 것인가(1) Which of the 10 products will constitute the promotion

(2) 100 명의 고객 중 어떤 사람에게 위 상품 프로모션을 진행할 것인가(2) Which of the 100 customers will be promoting the above product

다만, 종래의 유사도를 정량화하여 추천하는 방법으로는 위와 같은 그룹 단위의 상품 및 그룹 단위의 고객에 대한 상품 프로모션에 대입하여 사용하는데 어려움이 있고, 실제로 쇼핑몰에 방문하는 사람 및 상품의 수가 충분히 많은 것을 고려하면, 종래 방식을 사용하여 개별 상품 및 개별 고객 간의 유사도 기반으로 상품을 추천하는 것은 구매자 입장에서는 효율적일지 몰라도, 쇼핑몰을 운영하는 운영자 입장에서는 비효율적이라는 문제가 존재한다. However, in the conventional method of quantifying and recommending similarity, it is difficult to substitute and use product promotions for group-level products and group-level customers as described above, and the number of people and products that actually visit the shopping mall is large enough. In consideration, although recommending products based on similarity between individual products and individual customers using a conventional method may be efficient from a buyer's point of view, there is a problem that it is inefficient from the point of view of an operator who operates a shopping mall.

상술한 문제점을 해결하기 위한 본 발명의 일 양태에 따른 목적은 상품 그룹과 고객 그룹 단위에서 구매가 일어날 가능성을 최적화한 상품 바스켓 기반의 상품 추천(프로모션) 방법을 제공하는 것이다.An object of the present invention for solving the above-described problem is to provide a product basket-based product recommendation (promotion) method that optimizes the likelihood of a purchase occurring in a product group and a customer group.

상기한 목적을 달성하기 위한 본 발명의 일 양태에 따른 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법은, 복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하는 단계, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하는 단계, 상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬을 생성하는 단계(상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임), 상기 행렬의 개별 행에 대하여, 적어도 둘 이상의 고객들의 구매가능성 지표의 제 1 부분합을 산출하는 단계, 상기 산출된 제 1 부분합을 순위화하는 단계, 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품들을 선택하는 단계, 상기 행렬의 개별 열에 대하여, 상기 선택된 상품들에 대한 고객별 제 2 부분합을 산출하는 단계, 상기 산출된 제 2 부분합을 순위화하는 단계, 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객들을 선택하는 단계, 및 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 단계를 포함할 수 있다.In order to achieve the above object, a product recommendation method between a group customer and a group product in an electronic commerce system according to an aspect of the present invention is related to a plurality of products available for purchase in a plurality of online shopping malls and a purchase through the online shopping mall. Receiving data of a plurality of customers, acquiring an individual product and a purchaseability index of an individual customer based on the received data, at least two of the plurality of products as a column, the plurality of Creating a matrix by configuring at least two or more of the customers in rows (some of the plurality of customers have a relationship with some of the plurality of products, and the contents included in the blanks of the matrix are products And a purchaseability index between customers), calculating a first subtotal of at least two purchaseability indexes of at least two customers for each row of the matrix, ranking the calculated first subtotal, the number of first products Selecting products with a higher first subtotal ranking by the first subtotal, calculating a second subtotal for each customer for the selected products, with respect to individual columns of the matrix, ranking the calculated second subtotal, first It may include selecting customers having a second subtotal ranking as high as the number of customers, and performing a promotion for the selected products for the selected customers using an online shopping mall.

상기 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품을 선택하는 단계는, 상기 제 1 부분합 순위가 높은 상품을 선택하고 나머지 상품을 삭제하여 행렬을 재구성하는 단계를 포함하고, 상기 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객을 선택하는 단계는 상기 제 2 부분합 순위가 높은 고객을 선택하고 나머지 고객을 삭제하는 단계를 포함할 수 있다.Selecting a product having a higher first subtotal ranking as much as the number of first products includes reconfiguring a matrix by selecting a product with a higher first subtotal ranking and deleting the remaining products, Selecting a customer with a higher second subtotal ranking may include selecting a customer with a higher second subtotal ranking and deleting the remaining customers.

상기 구매가능성 지표는 상품 노드 계층, 주문 노드 계층 및 고객 노드 계층으로 구성된 그래프 형태의 데이터에서의 연결경로의 수를 포함할 수 있다.The purchaseability indicator may include the number of connection paths in graph-type data consisting of a product node hierarchy, an order node hierarchy, and a customer node hierarchy.

상기 그래프 형태의 데이터는 제 1 노드 계층의 제 1 노드를 중심으로 제 2 노드 계층의 적어도 하나의 제 2 노드가 연결되고 그리고, 상기 적어도 하나의 제 2 노드에 제 3 노드 계층의 제 3 노드가 연결됨에 따라, 방사형의 그래프 형태로 생성될 수 있다.In the graph-type data, at least one second node of the second node layer is connected to the first node of the first node layer, and a third node of the third node layer is connected to the at least one second node. As connected, it can be generated in the form of a radial graph.

상기 적어도 하나의 상품 노드 계층의 노드들 및 적어도 하나의 고객 노드 계층의 노드들 중 적어도 두 노드가 연결될 수 있는 연결경로의 갯수를 상기 구매가능성 지표로써 사용할 수 있다.The number of connection paths to which at least two of the nodes of the at least one product node layer and the nodes of the at least one customer node layer can be connected may be used as the purchaseability index.

상기 구매가능성 지표는 유사도 기반의 상품 추천 알고리즘을 이용하여 산출된 값일 수 있다.The purchaseability index may be a value calculated using a product recommendation algorithm based on similarity.

상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계는, 상기 선택된 고객들에게 상기 선택된 상품들을 상기 온라인 쇼핑몰의 첫 번째 웹 페이지의 제 1 영역에 배치하여 디스플레이하는 단계를 포함할 수 있다.Promoting the selected products to the selected customers using an online shopping mall includes placing and displaying the selected products in a first area of a first web page of the online shopping mall to the selected customers. Can include.

상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계는, 상기 선택된 고객들에게만 상기 선택된 상품들을 할인하여 판매하는 단계를 포함할 수 있다.Promoting the selected products to the selected customers by using an online shopping mall may include selling the selected products at a discount to only the selected customers.

상기한 목적을 달성하기 위한 본 발명의 일 양태에 따른 전자상거래 시스템에서의 상품 추천 장치는, 유선 및 무선 네트워크 중 적어도 하나와 통신하는 통신부, 및 상기 통신부를 통해 복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하고, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하며, 상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬 - 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임 - 을 생성하며, 상기 행렬의 개별 행에 대하여, 적어도 둘 이상의 고객들의 구매가능성 지표의 제 1 부분합을 산출하여 순위화하고, 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품들을 선택하며, 상기 행렬의 개별 열에 대하여, 상기 선택된 상품들에 대한 고객별 제 2 부분합을 산출하여 순위화하고, 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객들을 선택함에 의해, 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 프로세서를 포함할 수 있다.A product recommendation device in an electronic commerce system according to an aspect of the present invention for achieving the above object includes a communication unit communicating with at least one of a wired and wireless network, and a plurality of purchaseable online shopping malls through the communication unit. Receives data of a plurality of customers related to products and purchases through the online shopping mall, obtains an individual product and a purchaseability index of an individual customer based on the received data, and selects at least two or more of the plurality of products. A matrix consisting of at least two or more of the plurality of customers in a row as a column-Some of the plurality of customers have an association relationship with some of the plurality of products, and in the blank space of the matrix The included content is a purchaseability index between a product and a customer-is generated, and for each row of the matrix, a first subtotal of the purchaseability index of at least two customers is calculated and ranked, and divided by the number of the first product. 1 Selecting products with a high subtotal ranking, calculating and ranking a second subtotal for each customer for the selected products for individual columns of the matrix, and selecting customers with a second subtotal ranking as high as the number of first customers. Accordingly, it may include a processor that performs a promotion for the selected products to the selected customers using an online shopping mall.

상기한 목적을 달성하기 위한 본 발명의 다른 양태에 따른 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법은, 복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하는 단계, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하는 단계, 상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬을 생성하는 단계(상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임), 상기 행렬의 개별 열에 대하여, 적어도 둘 이상의 상품들에 대한 구매가능성 지표의 제 1 부분합을 산출하는 단계, 상기 산출된 제 1 부분합 값을 갖는 상품을 순위화하는 단계, 제 1 고객 수만큼 제 1 부분합 순위가 높은 고객들을 선택하는 단계, 상기 행렬의 개별 열에 대하여, 상기 선택된 고객들에 대한 상품별 제 2 부분합을 산출하는 단계, 및 상기 산출된 제 2 부분합을 순위화하는 단계, 제 1 상품 개수만큼 제 2 부분합 순위가 높은 상품들을 선택하는 단계, 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 단계를 포함할 수 있다.In order to achieve the above object, a product recommendation method between a group customer and a group product in an electronic commerce system according to another aspect of the present invention is related to a plurality of products available for purchase in a plurality of online shopping malls and a purchase through the online shopping mall. Receiving data of a plurality of customers, acquiring an individual product and a purchaseability index of an individual customer based on the received data, at least two of the plurality of products as a column, the plurality of Creating a matrix by configuring at least two or more of the customers in rows (some of the plurality of customers have a relationship with some of the plurality of products, and the contents included in the blanks of the matrix are products And a purchaseability index between customers), calculating a first subtotal of a purchaseability index for at least two products, for individual columns of the matrix, ranking products having the calculated first subtotal value , Selecting customers with a higher first subtotal ranking by the number of first customers, calculating a second subtotal for each product for the selected customers with respect to individual columns of the matrix, and ranking the calculated second subtotal The step may include selecting products with a second subtotal ranking as high as the number of first products, and performing a promotion for the selected products for the selected customers using an online shopping mall.

상기 제 1 고객 수만큼 제 1 부분합 순위가 높은 고객들을 선택하는 단계는, 상기 제 1 부분합 순위가 높은 고객들을 선택하고 나머지 상품을 삭제하여 행렬을 재구성하는 단계를 포함하고, 상기 제 1 상품 개수만큼 제 2 부분합 순위가 높은 상품들을 선택하는 단계는 상기 제 2 부분합 순위가 높은 상품들을 선택하고 나머지 상품을 삭제하는 단계를 포함할 수 있다.The selecting of customers having a higher first subtotal ranking as many as the number of first customers includes reconfiguring a matrix by selecting customers with a higher first subtotal ranking and deleting the remaining products, Selecting products with a higher second subtotal ranking may include selecting products with a higher second subtotal ranking and deleting the remaining products.

상기 구매가능성 지표는 상품 노드 계층, 주문 노드 계층 및 고객 노드 계층으로 구성된 그래프 형태의 데이터에서의 연결경로의 수를 포함할 수 있다.The purchaseability indicator may include the number of connection paths in graph-type data consisting of a product node hierarchy, an order node hierarchy, and a customer node hierarchy.

상기 그래프 형태의 데이터는 제 1 노드 계층의 제 1 노드를 중심으로 제 2 노드 계층의 적어도 하나의 제 2 노드가 연결되고 그리고, 상기 적어도 하나의 제 2 노드에 제 3 노드 계층의 제 3 노드가 연결됨에 따라, 방사형의 그래프 형태로 생성될 수 있다.In the graph-type data, at least one second node of the second node layer is connected to the first node of the first node layer, and a third node of the third node layer is connected to the at least one second node. As connected, it can be generated in the form of a radial graph.

상기 적어도 하나의 상품 노드 계층의 노드들 및 적어도 하나의 고객 노드 계층의 노드들 중 적어도 두 노드가 연결될 수 있는 연결경로의 갯수를 상기 구매가능성 지표로써 사용할 수 있다.The number of connection paths to which at least two of the nodes of the at least one product node layer and the nodes of the at least one customer node layer can be connected may be used as the purchaseability index.

상기 구매가능성 지표는 유사도 기반의 상품 추천 알고리즘을 이용하여 산출된 값일 수 있다.The purchaseability index may be a value calculated using a product recommendation algorithm based on similarity.

상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계는, 상기 선택된 고객들에게 상기 선택된 상품들을 상기 온라인 쇼핑몰의 첫 번째 웹 페이지의 제 1 영역에 배치하여 디스플레이하는 단계를 포함할 수 있다.Promoting the selected products to the selected customers using an online shopping mall includes placing and displaying the selected products in a first area of a first web page of the online shopping mall to the selected customers. Can include.

상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계는, 상기 선택된 고객들에게만 상기 선택된 상품들을 할인하여 판매하는 단계를 포함할 수 있다.Promoting the selected products to the selected customers by using an online shopping mall may include selling the selected products at a discount to only the selected customers.

상기한 목적을 달성하기 위한 본 발명의 다른 양태에 따른 전자상거래 시스템에서의 상품 추천 장치는, 유선 및 무선 네트워크 중 적어도 하나와 통신하는 통신부 및 상기 통신부를 통해 복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하고, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하며, 상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬 - 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임 - 을 생성하며, 상기 행렬의 개별 열에 대하여, 적어도 둘 이상의 상품객들의 구매가능성 지표의 제 1 부분합을 산출하여 순위화하고, 제 1 고객 수만큼 제 1 부분합 순위가 높은 고객들을 선택하며, 상기 행렬의 개별 행에 대하여, 상기 선택된 고객들에 대한 상품별 제 2 부분합을 산출하여 순위화하고, 제 1 상품 개수만큼 제 2 부분합 순위가 높은 상품들을 선택함에 의해, 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 프로세서를 포함할 수 있다.A product recommendation device in an electronic commerce system according to another aspect of the present invention for achieving the above object includes a communication unit communicating with at least one of a wired and wireless network, and a plurality of products available for purchase in a plurality of online shopping malls through the communication unit. Receive data of a plurality of customers related to purchases through the online shopping mall and the online shopping mall, obtain an individual product and a purchaseability index of an individual customer based on the received data, and open at least two of the plurality of products. (column), a matrix consisting of at least two or more of the plurality of customers in a row-Some of the plurality of customers have a relationship with some of the plurality of products, and are included in the blanks of the matrix The content is a purchaseability index between product and customer-is generated, and for each column of the matrix, a first subtotal of the purchaseability index of at least two product customers is calculated and ranked, and the number of first customers is first. By selecting customers with a high subtotal ranking, calculating and ranking a second subtotal for each product for the selected customers for individual rows of the matrix, and selecting products with a second subtotal ranking as high as the number of first products, It may include a processor that performs a promotion for the selected products to the selected customers using an online shopping mall.

본 발명의 그룹 고객과 그룹 상품 간의 상품 추천 방법 및 장치에 따르면, 다수의 상품 및 다수의 고객에 대한 프로모션을 하나의 묶음으로 진행할 수 있으므로, 운영자 입장에서의 관리가 매우 효율적이라는 효과가 있다.According to the method and apparatus for recommending a product between a group customer and a group product of the present invention, since promotions for a plurality of products and a plurality of customers can be performed in a single bundle, there is an effect that management from the viewpoint of an operator is very efficient.

도 1은 본 발명의 그래프 데이터베이스를 이용한 상품 추천 방법이 적용되는 시스템을 도시한 개념도,
도 2는 유사도 기반의 상품추천 방법을 설명하기 위한 개념도,
도 3은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 상품 노드, 주문 노드 및 고객 노드 기반의 그래프,
도 4는 상품간의 직접적인 상관성과 간접적인 상관성을 설명하기 위한 개념도,
도 5는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 나타낸 흐름도,
도 6은 상품 중심의 복수 개의 방사형 그래프가 얽혀있는 모습을 나타낸 개념도,
도 7은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 동일/유사 카테고리와 결합 카테고리의 적절한 사용을 설명하기 위한 도면,
도 8은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 추천 알고리즘 관련 인공지능 학습 방법을 설명하기 위한 개념도,
도 9는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 연결경로 인덱싱 방법을 설명하기 위한 개념도,
도 10a 내지 도 10d는 상품과 고객 노드를 입력으로 지정하여 유사 상품 및 유사 성향의 고객을 출력으로 찾는 다양한 실시예를 나타낸 도면,
도 11은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 웹 페이지에서 구현한 결과를 나타낸 도면,
도 12는 본 발명의 다른 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 나타낸 흐름도,
도 13a 및 도 13b는 본 발명의 다른 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 상품 경로예측의 예시적인 모습을 나타낸 도면,
도 14a 및 도 14b는 도 13a의 실시예에서의 상품 조회 이후, 다음 상품을 조회한 상황에서의 상품 경로예측의 예시적인 모습을 나타낸 도면,
도 15는 상품 판매활성도 분석에 따라 판매가 저조해진 상품들에 대한 프로모션이 필요한 상황을 설명하기 위한 개념도,
도 16a 및 도 16b는 5명의 고객과 6개의 상품이 있는 경우, 특정 수의 고객 군과 특정 수의 상품군을 매칭하여 특별 프로모션을 제공하기 위한 매칭방법을 설명하기 위한 개념도,
도 17a 및 도 17b는 본 발명의 또 다른 실시예에 따른 상품 바스켓 추천 방법을 나타낸 흐름도,
도 18은 본 발명의 또 다른 실시예에 따른 상품기반 바스켓 추천 방법을 나타낸 흐름도,
도 19a 내지 도 19c는 도 18의 바스켓 추천 방법의 각 단계별 행렬 생성 방법을 구체적으로 설명하기 위한 테이블,
도 20은 본 발명의 또 다른 실시예에 따른 고객기반 바스켓 추천 방법을 나타낸 흐름도,
도 21a 내지 도 21c는 도 20의 바스켓 추천 방법의 각 단계별 행렬 생성 방법을 구체적으로 설명하기 위한 테이블,
도 22는 본 발명의 일 실시예에 따른 그래프 데이터베이스 기반의 상품추천 방법 및 상품 바스켓 추천 방법을 사용하는 장치를 개략적으로 나타낸 블록도이다.
1 is a conceptual diagram showing a system to which a product recommendation method using a graph database of the present invention is applied;
2 is a conceptual diagram for explaining a similarity-based product recommendation method;
3 is a graph based on a product node, an order node, and a customer node used in a product recommendation method using a graph database according to an embodiment of the present invention;
4 is a conceptual diagram for explaining direct and indirect correlations between products;
5 is a flowchart showing a product recommendation method using a graph database according to an embodiment of the present invention;
6 is a conceptual diagram showing a state in which a plurality of radial graphs centered on a product are entangled;
7 is a diagram for explaining proper use of the same/similar category and a combined category in a product recommendation method using a graph database according to an embodiment of the present invention;
FIG. 8 is a conceptual diagram illustrating an artificial intelligence learning method related to a recommendation algorithm used in a product recommendation method using a graph database according to an embodiment of the present invention.
9 is a conceptual diagram illustrating a connection path indexing method of a product recommendation method using a graph database according to an embodiment of the present invention;
10A to 10D are diagrams showing various embodiments of finding similar products and customers of similar tendency as outputs by designating products and customer nodes as inputs;
11 is a diagram showing a result of implementing a product recommendation method using a graph database according to an embodiment of the present invention in a web page;
12 is a flowchart illustrating a product recommendation method using a graph database according to another embodiment of the present invention.
13A and 13B are diagrams showing an exemplary aspect of product path prediction in a product recommendation method using a graph database according to another embodiment of the present invention;
14A and 14B are diagrams illustrating exemplary product path prediction in a situation in which a next product is inquired after product inquiry in the embodiment of FIG. 13A;
15 is a conceptual diagram for explaining a situation in which a promotion is required for products with low sales according to product sales activity analysis;
16A and 16B are conceptual diagrams illustrating a matching method for providing a special promotion by matching a specific number of customer groups and a specific number of product groups when there are 5 customers and 6 products;
17A and 17B are flowcharts illustrating a method of recommending a product basket according to another embodiment of the present invention;
18 is a flow chart showing a product-based basket recommendation method according to another embodiment of the present invention;
19A to 19C are tables for specifically explaining a method of generating a matrix for each step of the basket recommendation method of FIG. 18;
20 is a flow chart showing a customer-based basket recommendation method according to another embodiment of the present invention;
21A to 21C are tables for specifically explaining a method of generating a matrix for each step of the basket recommendation method of FIG. 20;
22 is a block diagram schematically illustrating an apparatus using a product recommendation method based on a graph database and a product basket recommendation method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.In the present invention, various modifications may be made and various embodiments may be provided, and specific embodiments will be illustrated in the drawings and described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.However, this is not intended to limit the present invention to a specific embodiment, it is to be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the present invention.

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

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

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, terms such as "comprise" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof, does not preclude in advance.

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

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings. In describing the present invention, in order to facilitate an overall understanding, the same reference numerals are used for the same elements in the drawings, and duplicate descriptions for the same elements are omitted.

그래프 데이터베이스를 이용한 상품 추천 방법Product recommendation method using graph database

도 1은 본 발명의 그래프 데이터베이스를 이용한 상품 추천 방법이 적용되는 시스템을 도시한 개념도이다. 도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 상품추천 시스템은 다수의 쇼핑몰(110-1~110-N), 네트워크(120), 서버(130), 데이터베이스(140) 및 사용자 단말(150)을 포함할 수 있다. 1 is a conceptual diagram showing a system to which a product recommendation method using a graph database of the present invention is applied. As shown in FIG. 1, the product recommendation system according to an embodiment of the present invention includes a plurality of shopping malls 110-1 to 110-N, a network 120, a server 130, a database 140, and a user terminal. 150 may be included.

도 1을 참조하면, 쇼핑몰(110-1~110~N)은 인터넷을 통하여 상품 및/또는 서비스를 판매하는 온라인 쇼핑몰을 의미한다. 쇼핑몰(110-1~110~N)은 특정 URL을 가지고 인터넷 상에서 해당 주소로의 방문자들을 상대로 상품을 판매한다. 쇼핑몰 운영자는 판매된 상품에 대한 금액 중 적어도 일부를 쇼핑몰과 연관된 자신의 계좌를 통해 획득하는 방식으로 쇼핑몰을 운영한다. Referring to FIG. 1, shopping malls 110-1 to 110 to N refer to online shopping malls that sell products and/or services through the Internet. Shopping malls 110-1 to 110 to N sell products to visitors to a corresponding address on the Internet with a specific URL. The shopping mall operator operates the shopping mall by acquiring at least a portion of the amount of the sold product through his/her account associated with the shopping mall.

도 1의 실시예에 있어서, 쇼핑몰(110-1~110~N)은 앞서 설명한 바와 같이, 인터넷 상의 특정주소(예컨대, URL)와 연관된 웹 페이지, 쇼핑몰과 연관된 정보를 취급하는 서버 또는 쇼핑몰의 운영자의 단말기로써 구현될 수 있다. 단말은 스마트폰, PC 등의 컴퓨팅 디바이스를 포함할 수 있다. In the embodiment of FIG. 1, shopping malls 110-1 to 110 to N are web pages associated with a specific address (eg, URL) on the Internet, a server handling information related to the shopping mall, or an operator of the shopping mall, as described above. It can be implemented as a terminal of. The terminal may include a computing device such as a smartphone or a PC.

본 발명의 실시예에 따르면, 복수 개의 쇼핑몰(110-1~110-N)은 네트워크(120)를 통해 서버(130)와 연동할 수 있다. 여기서, 서버(130)는 복수 개의 쇼핑몰(110-1~110-N)로부터 정보를 획득하고 상품추천 질의에 대응하여 상품을 추천하는 장치이다. 아하 "장치" 또는 "상품 추천 장치"라는 용어는, 도 1의 서버(130)를 지칭하는 것으로 해석될 수 있다. 서버(130)는 쇼핑몰을 개설하고 운영하도록 지원하는 플랫폼(platform)을 배포하고 관리하는 서버(미도시)이거나 또는 상기 서버와 연동하는 서버일 수 있다. 따라서, 서버(130)는 하나의 쇼핑몰(110-1)과 연관된 정보만을 취급하는 것이 아니라, 다수의 쇼핑몰(110-1~110-N)과 연관된 정보를 취급하고, 빅데이터를 기반으로 다양한 정보를 분석 및 학습할 수 있다.According to an embodiment of the present invention, the plurality of shopping malls 110-1 to 110 -N may interwork with the server 130 through the network 120. Here, the server 130 is a device that obtains information from a plurality of shopping malls 110-1 to 110-N and recommends a product in response to a product recommendation query. The term “device” or “product recommendation device” may be interpreted as referring to the server 130 of FIG. 1. The server 130 may be a server (not shown) that distributes and manages a platform that supports opening and operating a shopping mall, or may be a server interlocking with the server. Therefore, the server 130 not only handles information related to one shopping mall 110-1, but also handles information related to a plurality of shopping malls 110-1 to 110-N, and provides various information based on big data. Can analyze and learn.

서버(130)는 컴퓨팅 장치로 구현될 수 있다. 여기서 말하는 컴퓨팅 장치는 서버 급 컴퓨터 단말기로 구현될 수 있다. 상기 컴퓨팅 장치는 통상적인 컴퓨터 단말이 가지는 입력 장치, 표시 장치, 네트워킹 장치, 하드디스크, 프로그램을 저장하는 메모리 및 메모리에 저장된 프로그램을 수행시키는 프로세서 등을 구비할 수 있다. 다만, 반드시 서버 급 컴퓨터 단말로 구현되어야 하는 것은 아니다. The server 130 may be implemented as a computing device. The computing device referred to herein may be implemented as a server-class computer terminal. The computing device may include an input device of a typical computer terminal, a display device, a networking device, a hard disk, a memory for storing a program, and a processor for executing a program stored in the memory. However, it is not necessarily implemented as a server-class computer terminal.

네트워크(120)는 쇼핑몰(110-1~110-N)과 서버(130)를 연결하는 통신망으로써, 유선망 및/또는 무선망(인터넷(internet))을 포함할 수 있다.The network 120 is a communication network connecting the shopping malls 110-1 to 110-N and the server 130, and may include a wired network and/or a wireless network (Internet).

서버(130)는 쇼핑몰(110-1~110-N) 및/또는 쇼핑몰(110-1~110-N)의 정보를 전반적으로 관리하는 쇼핑몰 운영서버(미도시)로부터 주문이력 데이터 및/또는 상품조회 데이터를 획득한다. 그리고는, 획득된 데이터를 복수 개의 노드 계층을 갖는 그래프 형태로 변환한다. 그래프 형태로 변환된 데이터는 서버(130)의 외부의 데이터베이스(140)에 저장된다. 다만, 반드시 데이터베이스(140)가 서버(130)의 외부에 있어야 하는 것은 아니다. 내부에 존재할 수도 있다. The server 130 is the order history data and/or products from the shopping mall operation server (not shown) that generally manages the information of the shopping malls 110-1 to 110-N and/or the shopping malls 110-1 to 110-N. Acquire inquiry data. Then, the obtained data is converted into a graph form having a plurality of node hierarchies. The data converted into a graph form is stored in the database 140 outside the server 130. However, the database 140 does not necessarily have to be outside the server 130. It may exist inside.

서버(130)는 사용자 단말(150)로부터의 상품추천 요청("추천 상품 검색 요청", "질의" 등으로 불릴 수 있음)에 대응하여 3개 노드 계층으로 구성된 그래프를 이용하여 특정상품으로부터 유사상품 검색에 대한 질의를 처리한다. 이때, 변환된 형태의 그래프 데이터 상에서, 상품과 상품, 고객과 고객, 또는 상품과 고객 간의 연결경로를 추출하고, 추출된 연결경로의 거리 및/또는 갯수를 고려하여 서로 간의 유사도를 판단할 수 있다. 또한, 상품조회 데이터를 활용하는 경우, 그래프 상에서, 상품 검색 이전 또는 이후의 일정 스텝(step) 동안의 조회 이력을 분석하여 유사상품에 대한 질의를 처리한다. 유사상품에 대한 질의를 처리하는 기술과 관련된 부분은 이하 보다 상세히 설명한다. The server 130 responds to a product recommendation request from the user terminal 150 (which may be referred to as a "recommended product search request", a "query", etc.), using a graph composed of three node hierarchies to provide similar products from a specific product. Process queries for search. At this time, on the converted graph data, the connection path between the product and the product, the customer and the customer, or the product and the customer is extracted, and the degree of similarity between the extracted connection paths may be determined by considering the distance and/or number of the extracted connection paths. . In addition, when product search data is used, a query for similar products is processed by analyzing the inquiry history during a certain step before or after product search on a graph. The part related to the technology for processing queries for similar products will be described in more detail below.

본 발명의 다른 실시예에 있어서, 서버(130)는 개별 고객과 개별 상품 사이의 구매가능성을 나타내는 지표(위의 그래프 데이터베이스를 이용한 유사도를 포함할 수 있음)가 존재하는 것을 기반으로 이를 이용하여 상품 바스켓(basket)을 최적화할 수 있다. 즉, 본 발명의 실시예에 따른 상품 바스켓 추천 방법을 사용하면, 적어도 하나의 고객(복수의 경우, 고객 군(group))에게 최적화된 복수 개의 상품군을 적절하게 프로모션(promotion)할 수 있다.In another embodiment of the present invention, the server 130 uses the product based on the existence of an index (which may include similarity using the graph database above) indicating the purchaseability between individual customers and individual products. The basket can be optimized. That is, if the product basket recommendation method according to an embodiment of the present invention is used, a plurality of product groups optimized for at least one customer (in multiple cases, a customer group) can be appropriately promoted.

사용자 단말(150)은 쇼핑몰(110-1)의 구매자의 단말일 수 있다. 구매자는 사용자 단말(150)을 이용하여 서버(130) 또는 별도의 쇼핑몰 관리 서버(미도시)로 상품 추천 요청을 전송할 수 있다. 별도의 쇼핑몰 관리 서버가 존재한다면, 쇼핑몰 관리 서버는 수신된 상품 추천 요청을 서버(130)로 전달한다. 상품 추천 요청은 유사상품에 대한 질의를 포함할 수 있다. 나아가, 유사 고객에 대한 질의를 포함할 수 있다. 그리고는, 그래프 기반의 데이터 분석 방법 및/또는 바스켓 추천 방법을 이용하여 상기 질의에 대한 처리가 완료되면, 처리완료된 데이터를 사용자 단말(150)로 제공하여 구매자가 이를 확인하고, 이를 토대로 상품을 선택할 수 있도록 한다. 사용자 단말(150)은 네트워크(120)(네트워크 내의 특정 웹페이지)를 이용하여 상품 추천 요청을 서버(130)로 제공할 수 있다.The user terminal 150 may be a terminal of a purchaser of the shopping mall 110-1. The purchaser may transmit a product recommendation request to the server 130 or a separate shopping mall management server (not shown) using the user terminal 150. If a separate shopping mall management server exists, the shopping mall management server transmits the received product recommendation request to the server 130. The product recommendation request may include a query for similar products. Furthermore, it may include queries for similar customers. Then, when the processing of the query is completed using a graph-based data analysis method and/or a basket recommendation method, the processed data is provided to the user terminal 150 so that the buyer checks it and selects a product based on this. Make it possible. The user terminal 150 may provide a product recommendation request to the server 130 using the network 120 (a specific web page within the network).

본 발명의 다른 실시예에 따르면, 쇼핑몰(110-1~110-N)과 연관된 단말 또는 사용자 단말(150)은 서버(130)에서 제공하는 애플리케이션을 다운로드 받아 애플리케이션을 통해 자동생성을 수행할 수 있다. 즉, 쇼핑몰(110-1~110-N)과 연관된 단말 또는 사용자 단말(150)에서, 사용자가 유사상품 또는 유사고객에 대한 질의를 입력하면 그래프 기반의 상품 추천 과정 또는 상품 바스켓 추천 과정을 단말 내에서 수행할 수 있다. 별도의 서버장치 없이 단말의 프로세서(미도시)가 다운받은 애플리케이션을 실행하여, 데이터 변형 및 변형된 데이터 분석을 통해 최적의 상품을 추천하도록 할 수 있다. According to another embodiment of the present invention, a terminal or user terminal 150 associated with the shopping malls 110-1 to 110-N may download an application provided from the server 130 and perform automatic generation through the application. . That is, in the terminal or user terminal 150 associated with the shopping malls 110-1 to 110-N, when a user inputs a query for a similar product or similar customer, a graph-based product recommendation process or a product basket recommendation process is performed in the terminal. Can be done in Without a separate server device, the processor (not shown) of the terminal executes the downloaded application, and the optimal product may be recommended through data transformation and analysis of the transformed data.

도 2는 유사도 기반의 상품추천 방법을 설명하기 위한 개념도이다. 2 is a conceptual diagram for explaining a product recommendation method based on similarity.

도 2를 참조하면, 장치는 일반적으로 상품의 이미지 및 속성의 유사성을 기반으로 상품추천을 수행한다. 즉, 먼저, 상품 이미지 간의 유사도를 이미지 분석 모듈을 이용하여 산출함으로써 구매가능성 지표로 활용할 수 있다. 도 2의 실시예에 있어서, 장치는 신발상품 1의 색상, 형상 등을 이미지 분석하여, 데이터베이스 내에 저장된 수많은 상품 이미지들 중 가장 유사한 색상과 형상을 가진 신발상품 2를 추출할 수 있다. 또는, 신발상품 1의 상품속성을 기반으로 속성이 유사한 신발상품 2를 추출할 수 있다. 예컨대, 신발상품 1의 색상은 붉은 색이고, 사이즈는 250이며, 브랜드는 "A 브랜드"이고, 형태는 "단화"인 경우, 동일 또는 유사한 속성의 신발상품 2를 데이터베이스에서 검색하여 추출할 수 있다. 다만, 이러한 이미지 및/또는 상품 속성에 기반한 유사도를 이용하는 방법은 앞서 설명한 바와 같이, 유사 상품을 동시에 구매하는 경우에 해당되어 구매가능성이 아주 높다고 할 수 없고, 구매자의 수요를 충족시킬 수 없는 경우가 발생한다. Referring to FIG. 2, the device generally recommends products based on similarities between images and attributes of products. That is, first, the degree of similarity between product images can be calculated using an image analysis module to be utilized as a purchaseability index. In the embodiment of FIG. 2, the apparatus may analyze the color, shape, etc. of the shoe product 1 to extract the shoe product 2 having the most similar color and shape among numerous product images stored in the database. Alternatively, shoe product 2 having similar attributes may be extracted based on the product attributes of shoe product 1. For example, if the color of the shoe product 1 is red, the size is 250, the brand is "A brand", and the shape is "shoe", the shoe product 2 of the same or similar attribute may be searched and extracted from the database. . However, the method of using the similarity based on the image and/or product attributes, as described above, corresponds to the case of purchasing similar products at the same time, so it cannot be said that the purchase possibility is very high, and the demand of the buyer cannot be satisfied. Occurs.

본 발명의 실시예에 따르면, 장치는 특정 고객의 구매이력을 기반으로 많이 구매한 상품의 속성을 추출하여 그에 대응되는 속성을 갖는 상품의 구매가능성 지표를 높게 책정할 수 있다. 이러한 점을 이용하여 고객이 구매한 상품의 속성을 가지고 고객을 카테고리화하여 구매가능성 지표를 산출할 수도 있다. 즉, 해당 상품을 구매한 고객들과 유사 성향을 갖는 고객들을 찾아서, 유사성향 고객이 구매한 상품을 유사상품으로 추천할 수 있다.According to an embodiment of the present invention, the device may extract attributes of products that have been purchased a lot based on the purchase history of a specific customer, and set a high purchaseability index of products having corresponding attributes. Using this point, a purchase possibility index can be calculated by categorizing the customer with the attributes of the product purchased by the customer. That is, it is possible to find customers who have a similar tendency to those who have purchased the product, and recommend a product purchased by a similar customer as a similar product.

상기한 바와 같이, 다양한 방식의 상품 이미지, 상품속성 및/또는 고객속성 분석에 기반한 구매가능성 지표는 추후 상품 바스켓 추천 방법에서 행렬의 빈 칸에 들어가는 요소로써 활용될 수 있다. As described above, the purchaseability index based on various methods of product image, product attribute, and/or customer attribute analysis may be used as an element that enters the blank space of the matrix in the method of recommending product baskets in the future.

도 3은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 상품, 주문 및 고객 노드 기반의 그래프이다. 3 is a graph based on product, order, and customer nodes used in a product recommendation method using a graph database according to an embodiment of the present invention.

도 3을 참조하면, 장치는 주문 이력 데이터를 수집하여 적어도 3개의 노드 계층으로 구성된 그래프를 생성할 수 있다. 주문 이력 데이터는 기본적으로 "특정 고객 A가 특정 쇼핑몰에서 주문 B를 이용하여 상품 C를 주문하였다"는 정보를 포함한다. 즉, 고객과 주문, 그리고 상품 간의 연관관계를 포함하는 데이터이다. Referring to FIG. 3, the device may collect order history data and generate a graph composed of at least three node hierarchies. The order history data basically includes information that "a specific customer A has ordered product C using order B in a specific shopping mall". In other words, it is data that includes the relationship between customers, orders, and products.

장치는 각각의 주문 이력 데이터를 기반으로 상품을 제 1 노드 계층으로, 주문을 제 2 노드 계층으로, 고객을 제 3 노드 계층으로 형성하여 방사형의 그래프를 생성한다. 도 3의 실시예에서는, 상품 A(310)는 6개의 주문들(320: 주문 A 내지 주문 F)에 포함되어 있고, 각각의 주문은 서로 다른 고객(330)으로부터 획득된 것이다. 이러한 경우, 장치는, 상품 A(310)를 중심으로, 주문 A(320) 내지 주문 F를 연결선을 이용하여 연결하고, 주문 A(320)을 요청한 고객 A(330)을 주문 A(320)에 각각 연결하여 상품으로부터 방사형의 그래프가 생성되도록 한다. 다시 말해, 상품-주문 연결선은 주문에 포함된 상품을, 주문-고객 연결선은 주문을 한 고객을 나타낸다. 이때, 그래프의 각 노드 계층 중 제 1 노드 계층(상품 계층)은 붉은 색으로, 제 2 노드 계층(주문 계층)은 초록 색으로, 제 3 노드 계층(고객 계층)은 파란 색으로 나타낼 수 있다. 이렇게 생성된 그래프는 시각화되어 디스플레이 장치를 통해 표시될 수 있다.The apparatus generates a radial graph by forming a product into a first node layer, an order into a second node layer, and a customer into a third node layer based on each order history data. In the embodiment of FIG. 3, product A 310 is included in six orders 320 (orders A to F), and each order is obtained from a different customer 330. In this case, the device connects the order A (320) to the order F using a connecting line, centering on the product A (310), and connects the customer A (330) requesting the order A (320) to the order A (320). Connect each so that a radial graph is created from the product. In other words, the product-order connection line represents the product included in the order, and the order-customer connection line represents the customer who placed the order. In this case, the first node layer (product layer) of each node layer of the graph may be indicated in red color, the second node layer (order layer) may be indicated in green color, and the third node layer (customer layer) may be indicated in blue color. The graph generated in this way may be visualized and displayed through a display device.

도 3의 실시예에 도시된 바와 같이, 장치는 한 상품(310: 상품 A)이 포함된 다수의 주문과 해당 주문을 한 고객을 표시할 수 있다. 이때, 도 3의 그래프에 포함된 고객들(330) 간에는, 거리 4(고객 → 주문 → 상품 → 주문 → 고객)의 길이로 연결된 경로가 1개씩 존재한다고 볼 수 있다. 따라서, 이들 고객들은 그렇지 아니한 고객 대비 구매성향에 있어서 유사성을 보인다고 볼 수 있다. 거리 4의 의미와 관련하여서는 다음의 도 4를 통해 보다 상세히 설명한다.As shown in the embodiment of FIG. 3, the device may display a plurality of orders including one product 310 (product A) and a customer who has placed the order. At this time, it can be seen that between the customers 330 included in the graph of FIG. 3, there is one path connected by a length of distance 4 (customer → order → product → order → customer). Therefore, it can be seen that these customers show similarity in purchasing tendency compared to those who do not. The meaning of the distance 4 will be described in more detail with reference to FIG. 4 below.

도 4는 상품간의 직접적인 상관성과 간접적인 상관성을 설명하기 위한 개념도이다. 4 is a conceptual diagram illustrating direct correlation and indirect correlation between products.

도 4의 (a)를 참조하면, 매우 비슷한 두 상품(상의에 속하는 상품일 수 있음)을 동시에 주문하는 사람은 많지 않다. 즉, 직접적인 상관성이 높은, 거리 2의 연결경로의 경우, 유사도가 낮다고 판단하는 것이 바람직하다. Referring to FIG. 4A, there are not many people who order two very similar products (which may belong to a top) at the same time. That is, in the case of the connection path of distance 2, which has a high direct correlation, it is preferable to determine that the similarity is low.

그러나, 도 4의 (b)를 참조하면, 다른 상품(하의(상품 3))를 매개로 볼 때, (상품 1- 상품 3), (상품 2-상품 3)의 조합으로 구매하는 고객은 다수가 존재할 수 있다. 즉, 최초 직접적 상관성(거리 2)(도 4의 (a) 실시예 참조)은 낮은 유사도를 나타내지만, 거리가 일정간격 멀어지게 되면(예컨대, 거리 4), 간접적인 상관성을 관찰할 수 있고, 이러한 간접적인 상관성은 구매가능성 측면에서 높은 지표로 구현되는 것이 바람직하다. 다시 말해, 두 상품(상품 1과 상품 2)가 정해진 거리(도 4의 (b)의 실시예에서는 거리 4)를 두고 연결될 수 있는 경로의 갯수가 유사성을 나타내는 지표가 될 수 있는 것이다.However, referring to (b) of FIG. 4, when viewed through another product (bottom (product 3)), a number of customers who purchase with a combination of (product 1- product 3) and (product 2- product 3) May exist. That is, the initial direct correlation (distance 2) (refer to the embodiment (a) of FIG. 4) shows a low degree of similarity, but when the distance becomes distant (e.g., distance 4), indirect correlation can be observed, It is desirable that this indirect correlation be implemented as a high indicator in terms of purchaseability. In other words, the number of paths to which two products (product 1 and product 2) can be connected at a fixed distance (distance 4 in the embodiment of FIG. 4B) may be an index indicating similarity.

다시 도 3으로 돌아가서, 위와 같은 상관성의 측면에서 볼 때, 거리 4로 연결된 고객들은 "특정 고객이 구매한 상품을 구매한 다른 고객들"이라는 관계를 가질 수 있다. 특정 고객에 대해, 위와 같이 "같은 상품을 구매한 고객"이라는 관계를 찾아보면, 서로 다른 상품을 매개로 특정 고객과 다른 고객이 연결되는 경로를 추출할 수 있다. 본 발명의 일 실시예에 따르면, 장치는 연결되는 경로가 가장 많은 고객으로, 특정 고객(고객 A)와 가장 구매 성향이 유사한 고객 B로 판단할 수 있다. Returning to FIG. 3 again, in view of the above correlation, customers connected to the distance 4 may have a relationship of “other customers who have purchased a product purchased by a specific customer”. For a specific customer, by looking for a relationship of "customer who purchased the same product" as above, a path through which a specific customer and another customer are connected through different products can be extracted. According to an embodiment of the present invention, the device may be determined as a customer with the largest number of connected routes, and as a customer B having the most similar purchasing tendency to a specific customer (customer A).

따라서, 장치는 그래프 데이터베이스를 기반으로 특정 고객 A는 구매하였으나, 유사한 고객 B가 구매하지 않은 상품은 고객 B에게 추천할 수 있다. 마찬가지로, 고객 B가 구매하였으나, 고객 A가 구매하지 않은 상품을 A에게 추천할 수 있다. 즉, 장치는 공통된 상품 A(310)를 매개로 고객 A와 고객 B를 연결시킬 수 있고, 연결경로의 길이 및 연결경로의 갯수를 고려하여 유사도를 분석한다. Accordingly, the device may recommend a product that a specific customer A has purchased, but a similar customer B has not purchased, to the customer B based on the graph database. Similarly, a product purchased by customer B but not purchased by customer A may be recommended to A. That is, the device can connect the customer A and the customer B via the common product A 310, and analyze the similarity in consideration of the length of the connection path and the number of connection paths.

도 5는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 나타낸 흐름도이다. 5 is a flowchart illustrating a product recommendation method using a graph database according to an embodiment of the present invention.

도 5를 참조하면, 서버("장치"라고 부를 수 있음)는 주문 이력 데이터를 온라인 쇼핑몰 또는 쇼핑몰을 관리하는 서버로부터 수집한다(S510). 이때, 획득되는 데이터는 상품과 해당 상품을 포함하는 주문, 그리고 해당 주문을 수행한 주체인 고객과의 연관관계에 대한 정보를 포함한다. Referring to FIG. 5, a server (which may be referred to as a “device”) collects order history data from an online shopping mall or a server managing the shopping mall (S510). At this time, the acquired data includes information on the product, the order including the product, and the relationship between the customer, who performed the order.

장치는 수집된 주문 이력 데이터를 그래프 형태의 데이터로 변환한다(S512). 그래프는 3개의 노드 계층으로 구성되고, 제 1 노드 계층인 상품을 제 2 노드 계층인 주문과 연결선을 통해 연결하고, 주문은 제 3 노드 계층인 고객과 연결선을 통해 연결하여, 제 1 노드 계층을 중심으로 방사형의 그래프 형태를 가질 수 있다. 그리고는, 장치는 그래프 형태로 변환된 데이터를 데이터베이스에 저장한다(S514). The device converts the collected order history data into graph-type data (S512). The graph is composed of three node hierarchies, and the first node layer is connected to the product, which is the second node layer, through a connecting line, and the order is connected to the customer, which is the third node layer, through a connecting line, and the first node layer is connected. It can have a radial graph shape around the center. Then, the device stores the data converted in the form of a graph in the database (S514).

클라이언트 단말은 추천 상품 검색 요청을 입력한다(S516). 입력된 요청 정보는 장치(서버) 측으로 전송된다. 이때, 추천 상품 검색 요청은 (i) 상품 중심으로 검색하는 요청과 (ii) 고객 중심으로 검색하는 요청으로 구분되어 입력될 수 있다. 이는 도 10a 내지 도 10d를 통해 보다 상세히 설명한다. The client terminal inputs a recommended product search request (S516). The input request information is transmitted to the device (server) side. In this case, the recommended product search request may be divided into (i) a product-oriented search request and (ii) a customer-oriented search request, and input. This will be described in more detail with reference to FIGS. 10A to 10D.

추천 상품 검색 요청이 입력되면, 장치는 그래프 형태의 변환된 데이터를 이용하여 대상상품 또는 대상고객을 중심으로 상관성을 분석한다(S518). 그리고는, 대상상품 또는 대상고객을 중심에 놓고, 분석된 상관성을 기반으로 타 상품 또는 타 고객까지 연결경로를 생성한다(S520). 이때, 생성된 연결경로의 거리를 기반으로 일정 거리 범위 내에 존재하는 연결경로인지 판단한다(S522). 앞서 설명한 바와 같이, 직접적인 상관성을 나타내는 거리 2보다는 큰 거리를 갖는 것이 바람직하고(예컨대, a=2), 거리가 길어지면, 연결되는 경로가 비례적으로 많아지기 때문에, 과도하게 큰 거리 값을 갖는 연결경로는 제외하는 것이 바람직하다(예컨대, b=10). 거리 범위를 정의하는 a 및 b 값은 사용자 설정을 통해 설정할 수 있고 임의로 변경도 가능하다. 또한, 머신러닝(machine learning)을 통해 최적의 해를 찾는 형태로 a 및 b의 값을 변화시킬 수 있다. 정해진 범위 미만의 거리를 갖거나 상기 범위를 초과하는 거리를 갖는 연결경로는 배체시킨다(S524).When a request to search for recommended products is input, the device analyzes the correlation centering on the target product or target customer using the converted data in the form of a graph (S518). Then, the target product or target customer is placed at the center, and a connection path to other products or other customers is generated based on the analyzed correlation (S520). At this time, it is determined whether the connection path exists within a certain distance range based on the distance of the generated connection path (S522). As described above, it is preferable to have a distance larger than the distance 2 indicating a direct correlation (e.g., a=2), and as the distance increases, the route to be connected increases proportionally, so that the distance value is excessively large. It is preferable to exclude the connection path (eg b=10). The values a and b that define the distance range can be set through user settings and can be arbitrarily changed. In addition, the values of a and b can be changed in the form of finding an optimal solution through machine learning. A connection path having a distance less than a predetermined range or a distance exceeding the range is distributed (S524).

본 발명의 실시예에 따르면, 장치는 두 노드 간의 연결경로의 거리를 고려하여 연결경로의 갯수를 조정할 수 있다. 앞서 설명한 바와 같이, 직접적으로 연결된 두 노드 간의 거리는 1 홉(hop)의 거리로 정의된다. 이때, 제 1 연결경로의 거리는 n1이(n1은 자연수)고, 제 2 연결경로의 거리는 n2(n2는 자연수)라고 할 때, 제 1 연결경로의 갯수는 1/n1으로 조정되어 산정될 수 있다. 또한, 제 2 연결경로의 갯수는 1/n2으로 조정되어 산정될 수 있다. 즉, 거리 2의 직접적인 상관성을 제외하고는, 짧은 거리로 연결되는 노드가 유사도가 높을 수 있으므로, 이를 보다 중요하게 고려하여 해당 거리로 나눠줌으로써 연결경로의 수를 조정할 수 있다. 예컨대, 거리 4의 노드 간의 연결경로의 갯수는 1/4로 고려되어, 거리 8의 연결경로의 갯수인 1/8보다, 크게(중요하게) 고려될 수 있다. According to an embodiment of the present invention, the device may adjust the number of connection paths in consideration of the distance of connection paths between two nodes. As described above, the distance between two directly connected nodes is defined as a distance of 1 hop. At this time, when the distance of the first connection path is n 1 (n 1 is a natural number) and the distance of the second connection path is n 2 (n 2 is a natural number), the number of the first connection paths is adjusted to 1/n 1 Can be calculated. In addition, the number of second connection paths may be calculated by adjusting to 1/n 2 . That is, except for the direct correlation of distance 2, since nodes connected by a short distance may have high similarity, the number of connection paths can be adjusted by dividing by the corresponding distance considering this more importantly. For example, the number of connection paths between nodes of the distance 4 is considered as 1/4, and may be considered larger (importantly) than 1/8, which is the number of connection paths of the distance 8.

장치는 설정된 거리 범위 내에 존재하는 연결경로의 수를 위와 같은 방식을 기반으로 계산한다(S526). 그리고는, 가장 많은 연결경로의 갯수 값을 갖는 상품 또는 고객을 추출한다(S528). 이때, 연결경로의 수를 기반으로 정렬하여 상위 몇 개의 상품 또는 고객을 유사도가 높은 상품 또는 고객으로 추출할 수 있다. 유사도가 높다는 것은 구매성향이 유사하다는 것을 의미한다. 특히, 고객 대 고객의 유사도가 높은 경우, 유사하다고 판단된 고객 관점에서, 공통된 상품을 매개로 하여 공통상품을 포함하는 제 1 주문 내에서 상기 공통 상품을 뺀 나머지 상품을 대상 고객이 구매할 가능성이 높다고 판단할 수 있으므로, 이러한 상품을 추천상품으로 도출할 수 있다. The device calculates the number of connection paths existing within the set distance range based on the above method (S526). Then, the product or customer having the most number of connection paths is extracted (S528). In this case, by sorting based on the number of connection paths, the top several products or customers may be extracted as products or customers with high similarity. The high degree of similarity means that the purchasing tendency is similar. In particular, when the similarity between customers and customers is high, it is likely that the target customer will purchase the remaining products minus the common product within the first order containing the common product through a common product from the viewpoint of the customer determined to be similar. Because it can be judged, these products can be derived as recommended products.

이와 같이, 유사도 결과로 나온 상품 및 고객의 정보, 그 밖에 해당 고객을 기반으로 공통상품을 제외하고 상기 제 1 주문 내의 나머지 상품에 대한 정보를 클라이언트 단말로 제공한다. 단말은 제공된 정보를 출력함으로써 구매자에거 표시할 수 있다(S530). In this way, information on the products and customers resulting from the similarity, and other products in the first order, excluding common products based on the corresponding customer, is provided to the client terminal. The terminal may display the provided information to the purchaser (S530).

도 6은 상품 중심의 복수 개의 방사형 그래프가 얽혀있는 모습을 나타낸 개념도이다. 6 is a conceptual diagram showing a state in which a plurality of radial graphs centered on a product are entangled.

도 6을 참조하면, 복수 개의 방사형 그래프(610, 620, 630, 640)이 얽혀있는 형태를 나타낼 수 있다. 장치는, 상품 A를 중심으로 하는 제 1 방사형 그래프(610)와 상품 B를 중심으로 하는 제 2 방사형 그래프(620)는 주문 A 또는 고객 A를 매개로 서로 연결될 수 있다. 이러한 두 개의 방사형 그래프(610, 620)는 디스플레이 화면에 2차원적으로 시각화하여 표시할 수 있다. 나아가, 제 1 방사형 그래프(610)와 상품 C를 중심으로 하는 제 3 방사형 그래프(630)는 주문 B 또는 고객 B를 매개로 서로 연결될 수 있고, 이때, 제 2 방사형 그래프(620)와 제 3 방사형 그래프(630) 역시 주문 C 또는 고객 C를 매개로 서로 연결될 수 있다. 이와 같이, 셋 이상의 방사형 그래프(620)가 연결될 때 2차원적으로 각 방사형 그래프들 간의 상관관계를 시각화하여 표현하기는 어렵다. Referring to FIG. 6, a plurality of radial graphs 610, 620, 630, and 640 may be entangled. In the apparatus, a first radial graph 610 centered on product A and a second radial graph 620 centered on product B may be connected to each other through order A or customer A. These two radial graphs 610 and 620 may be visualized and displayed in two dimensions on a display screen. Furthermore, the first radial graph 610 and the third radial graph 630 centered on the product C may be connected to each other via order B or customer B, and at this time, the second radial graph 620 and the third radial graph 630 The graph 630 may also be connected to each other via order C or customer C. As described above, when three or more radial graphs 620 are connected, it is difficult to visualize and express the correlation between each radial graph in two dimensions.

따라서, 본 발명의 일 실시예에 있어서, 장치는 3차원으로 방사형 그래프들을 표시할 수 있다. 즉, xy 평면에서 제 1 및 제 2 방사형 그래프(610, 620)가 표시된다면, z 축 방향으로 제 1 각도를 가지고 제 1 및 제 3 방사형 그래프(610, 630)가 표시될 수 있고, 제 2 각도를 가지고 제 2 및 제 4 방사형 그래프(620, 640)가 표시될 수 있도록 할 수 있다. 이에 따라, 사용자 인터페이스의 줌-인/줌-아웃 기능을 통해 그래프들을 당겨볼 수 있도록 하고, 패닝(panning) 기능을 이용하여 3차원적인 각도를 조정하여 복수 개의 방사형 그래프 간의 연결관계를 볼 수 있도록 시각화할 수 있다. 그리고, 특정 노드를 선택할 시, 선택된 노드가 화면의 중심으로 오도록 하여, 중심노드와 연결된 복수 개의 방사형 그래프들을 전방향으로 표시하도록 할 수 있다. Thus, in an embodiment of the present invention, the device may display radial graphs in three dimensions. That is, if the first and second radial graphs 610 and 620 are displayed in the xy plane, the first and third radial graphs 610 and 630 may be displayed with a first angle in the z-axis direction, and the second The second and fourth radial graphs 620 and 640 may be displayed with an angle. Accordingly, it is possible to pull the graphs through the zoom-in/zoom-out function of the user interface, and to see the connection relationship between a plurality of radial graphs by adjusting the three-dimensional angle using the panning function. Can be visualized. In addition, when a specific node is selected, the selected node may be brought to the center of the screen, so that a plurality of radial graphs connected to the central node may be displayed in all directions.

본 발명의 다른 실시예에 따르면, 반드시 관계의 유형을 "고객-주문-상품-주문-고객"으로 가져가야만 하는 것은 아니고, 고객을 중심으로 "상품-주문-고객-주문-상품"의 관계를 지정할 수 있다. 즉, 관계의 기준은 다양하게 가져가도 무방하다. According to another embodiment of the present invention, it is not necessary to take the type of the relationship as "customer-order-product-order-customer", but the relationship of "product-order-customer-order-product" centering on the customer. Can be specified. In other words, it is okay to take various standards of relationship.

도 7은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 동일/유사 카테고리와 결합 카테고리의 적절한 사용을 설명하기 위한 도면이다. 7 is a diagram for explaining appropriate use of the same/similar category and a combined category in a product recommendation method using a graph database according to an embodiment of the present invention.

도 7을 참조하면, 장치는 유사도 판단시 그리고, 유사한 상품/고객을 추출한 뒤, 추천 상품을 도출할 때, 상품 카테고리 정보를 활용할 수 있다. 예컨대, 유사상품을 찾음에 있어서, 같은 카테고리(예컨대, 상의) 내에서만 유사상품을 찾을 수 있고, 또는 다른 카테고리(앞서 설명한, 경합 또는 결합에 의한 카테고리)(예컨대, 상의와 하의, 하의와 구두 등)에 해당하는 상품을 찾도록 할 수 있다.Referring to FIG. 7, the device may utilize product category information when determining similarity and when extracting similar products/customers and then derives recommended products. For example, in searching for similar products, similar products can only be found within the same category (e.g., tops), or in different categories (categories by competition or combination) (e.g., tops and bottoms, bottoms and shoes, etc.) You can try to find a product corresponding to ).

특히, 상품 카테고리의 클래스를 구분하여 제 1 클래스는 상의, 하의, 신발, 액세서리 등의 가장 큰 범주의 카테고리로 구분하여, 동일/유사 카테고리와 결합 카테고리를 구분하고, 제 2 클래스는 제 1 클래스 내에서 세분화하여 정의할 수 있다. 각 상품카테고리는 식별자를 통해 정의되고, 식별자들 간의 유사/결합 관계를 코딩(coding)하여 각 상품카테고리가 어떤 관계인지 식별할 수 있게 한다. 제 2 클래스의 경우, 예컨대, 상의 내에서, 셔츠, 남방, 티셔츠, 후드, 조끼 등으로 구분될 수 있다. 제 3 클래스는 제 2 클래스를 세분화한 카테고리로 정의된다. In particular, by classifying the class of the product category, the first class is divided into the largest category such as tops, bottoms, shoes, and accessories, and the same/similar category and the combined category are classified, and the second class is within the first class. It can be subdivided and defined in Each product category is defined through an identifier, and a similarity/combination relationship between the identifiers is coded so that it is possible to identify what kind of relationship each product category is. In the case of the second class, for example, it can be classified into a shirt, a southern shirt, a T-shirt, a hood, a vest, etc. The third class is defined as a category subdividing the second class.

본 발명의 실시예에 따르면, 클래스 구분이 제 3 클래스까지 있다고 가정할 때, 제 1 클래스 내지 제 3 클래스까지 전 클래스에서 동일/유사 상품 카테고리를 사용하여 유사상품을 도출하도록 할 수 있다. 이 경우, "티셔츠"에 대하여, "남방" 상품 카테고리가 "상의"이면서 "티셔츠"와 유사한 상품 카테고리로 선택될 수 있고, 특정 주문 내에서 "남방"의 상품 카테고리에 속하는 상품이 유사상품으로 도출될 수 있다. According to an embodiment of the present invention, assuming that class classification is up to the third class, it is possible to derive similar products by using the same/similar product category in all classes from the first class to the third class. In this case, for the "T-shirt", the "Southern" product category may be selected as a "top" and similar product category as the "T-shirt", and products belonging to the "Southern" product category within a specific order are derived as similar products. Can be.

또는, 제 1 클래스에서 결합 카테고리를 사용하여 유사상품을 도출할 수도 있다. 이 경우, "티셔츠"에 대해 "하의" 카테고리가 선택되어, 하의 상품 카테고리에 속하는 상품이 티셔츠의 유사상품으로 도출될 수 있다. 티셔츠의 경우, 하의와 함께 결합되어 구매되는 상황이 많기 때문에, 이러한 설정이 적절할 수 있다. Alternatively, similar products may be derived using the combined category in the first class. In this case, a "bottom" category is selected for the "T-shirt", so that products belonging to the bottom product category may be derived as similar products of the T-shirt. In the case of T-shirts, since there are many situations where they are purchased in combination with bottoms, this setting may be appropriate.

다른 실시예에 있어서, 제 1 클래스에서는 동일/유사 카테고리를 사용하되, 제 2 클래스에서는, 결합 카테고리를 사용하도록 설정할 수도 있다. 이 경우, "티셔츠"에 대해서, 제 1 클래스에서 동일/유사 카테고리로써, "상의"의 카테고리가 선택되고, 제 2 클래스에서, "티셔츠"와 결합되는 "점퍼" 카테고리가 선택될 수 있다. 즉, 특정 주문 내에서 "점퍼"의 상품 카테고리에 속하는 상품이 유사상품으로 도출될 수 있다.In another embodiment, the first class may use the same/similar category, but the second class may use the combined category. In this case, for "T-shirt", as the same/similar category in the first class, a category of "top" may be selected, and in the second class, a "jumper" category combined with "T-shirt" may be selected. That is, within a specific order, products belonging to the product category of the "jumper" may be derived as similar products.

이와 같이, 그래프를 사용하여 유사상품을 도출함에 있어서, 동일/유사 상품 카테고리를 사용할지, 결합 상품 카테고리를 사용할지 결정하는 것은 그 결과 값이 달라지기 때문에, 중요하게 고려되는 팩터이다. 또한, 어느 클래스에서 유사 카테고리를 사용하고 결합 카테고리를 사용하는지에 따라서도 그 결과 값이 달라진다. 장치는 이러한 설정을 사용자 설정을 통해 정의하고, 임의로 사용자가 변경할 수 있도록 할 수 있다. 아니면, 빅데이터 기반의 인공지능을 사용하여 이와 같은 부분을 최적으로 조정할 수 있다. 인공지능 모델을 활용하는 방법은 도 8을 통해 보다 상세히 설명한다.In this way, in deriving a similar product using a graph, determining whether to use the same/similar product category or a combined product category is an important factor to be considered because the resulting value is different. Also, the result value varies depending on which class uses the similar category and the combined category. The device can define these settings through user settings and allow the user to arbitrarily change these settings. Or, big data-based artificial intelligence can be used to optimally tune these areas. A method of using the artificial intelligence model will be described in more detail with reference to FIG. 8.

도 8은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 추천 알고리즘 관련 인공지능 학습 방법을 설명하기 위한 개념도이다. FIG. 8 is a conceptual diagram illustrating an artificial intelligence learning method related to a recommendation algorithm used in a product recommendation method using a graph database according to an embodiment of the present invention.

도 8을 참조하면, 분할된 특정 클래스에서 "동일/유사 카테고리"를 사용할지 "결합 카테고리"를 사용할지 결정하는 것은 그 결과값이 전혀 달라지기 때문에, 매우 중요하다고 할 수 있다. 따라서, 장치는 인공지능 학습 모듈(미도시)을 이용하여 인공지능 모델을 학습시킨 후, 학습완료된 인공지능 모델을 기반으로 특정 클래스에서의 유사 또는 결합 카테고리의 사용 여부를 설정할 수 있다. Referring to FIG. 8, it can be said that it is very important to determine whether to use "same/similar category" or "combination category" in a divided specific class because the result value is completely different. Accordingly, the device may train an artificial intelligence model using an artificial intelligence learning module (not shown), and then set whether to use a similar or combined category in a specific class based on the learned artificial intelligence model.

본 발명의 일 실시예에 따르면, 장치에서 사용되는 인공지능 모델은 딥 러닝 콘볼루션 신경망 모델(CNN: Convolution Neural Network)을 포함한다. 다만, 이에 국한되는 것은 아니고, DNN(Deep Neural Network), RNN(Recurrent Neural Network) 및 LSTM(Long Short Term Memory Network) 중 어느 하나를 포함할 수도 있다.According to an embodiment of the present invention, an artificial intelligence model used in a device includes a deep learning convolutional neural network model (CNN). However, the present invention is not limited thereto, and may include any one of a deep neural network (DNN), a recurrent neural network (RNN), and a long short term memory network (LSTM).

장치는 주문 데이터 1과 주문 데이터 2를 학습 데이터 세트로 생성한다. 이때, 두 개의 주문 데이터는 본 발명의 일 실시예에 따른 그래프 기반의 유사상품 도출에 따라 선택과정의 이전 주문데이터(유사성 검색 요청의 대상이 되는 주문데이터)와 상품 추천 이후 실제 주문에 의해 생성된 주문데이터의 관계를 갖는다. 즉, 주문 데이터 1을 주문한 고객이 본 발명의 일 실시예에 따른 그래프 기반의 유사상품 도출방법을 이용하여 복수 개의 상품들을 추천받고, 추천받은 데이터들 중 하나를 선택하여 이루어진 주문 데이터 2를 조합하여 학습데이터 셋(set)을 생성한다. 이때, 상품추천을 위해 그래프 기반의 유사상품 도출을 함에 있어서, 제 1 클래스에서 유사 또는 결합 카테고리를 사용할지 여부, 제 2 클래스에서 유사 또는 결합 카테고리를 사용할지 여부를 변경하면서 유사상품을 도출하고, 도출 이후의 주문데이터를 기반으로 상기 그래프 기반의 유사상품 도출과정을 통해 최상위로 도출된 상품 내에서 주문이 이루어지도록 하는 방향으로 인공지능을 학습시킨다. The device generates order data 1 and order data 2 as a training data set. At this time, the two order data are generated by the order data prior to the selection process (order data subject to the similarity search request) and the actual order after product recommendation according to graph-based similar product derivation according to an embodiment of the present invention. It has a relationship of order data. That is, a customer who ordered order data 1 receives a recommendation of a plurality of products using a graph-based similar product derivation method according to an embodiment of the present invention, and combines order data 2 formed by selecting one of the recommended data. Create a learning data set. At this time, in deriving graph-based similar products for product recommendation, similar products are derived while changing whether to use a similar or combined category in the first class and whether to use a similar or combined category in the second class, Based on the order data after derivation, artificial intelligence is trained in the direction of placing an order within the product derived as the highest through the graph-based similar product derivation process.

또한, 최적거리 범위를 위한 임계값(앞선 도 5에서의 a 및 b 값)도 변경시키면서 주문데이터 1 및 주문데이터 2의 학습 데이터 세트를 기반으로 그 결과값을 축적시켜 가면서 최적의 임계값을 찾도록 한다. In addition, while changing the threshold for the optimal distance range (values a and b in Fig. 5), the optimal threshold value is found by accumulating the result value based on the learning data set of order data 1 and order data 2. Let's do it.

이때, 학습데이터를 형성하는 주문 데이터 1과 주문 데이터 2의 매개가 되는 노드계층은 반드시 제 1 노드 계층인 "상품"이어야만 하는 것은 아니고, 제 3 노드 계층인 "고객"이어도 무방하다. 또한, 제 2 노드 계층이 기준이 될 수도 있다. At this time, the node layer used as an intermediate between the order data 1 and the order data 2 forming the learning data does not necessarily have to be the first node layer “product”, but may be the third node layer “customer”. Also, the second node layer may be the reference.

도 9는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 연결경로 인덱싱 방법을 설명하기 위한 개념도이다. 9 is a conceptual diagram illustrating a connection path indexing method of a product recommendation method using a graph database according to an embodiment of the present invention.

도 9를 참조하면, 장치는 상품과 상품, 고객과 고객, 또는 상품과 고객 간의 연결경로를 데이터함에 있어서, 인덱싱을 하여 식별한다. 이때, 연결경로는 노드계층 식별자와 인덱스 넘버로 구성될 수 있다. 노드계층 식별자는 검색 중심이 되는 대상 노드의 식별자와 최종 도착 노드의 식별자의 조합으로 구성된다. 이때, 제 1 노드 계층(상품 노드)은 p로, 제 3 대상 노드 계층(고객 노드)은 m으로 식별될 수 있다. 이와 같은 방법으로 출발노드와 도착노드의 노드계층을 식별하고 나면, 이후, 인덱싱 번호가 붙는다. 인덱싱 번호는 질의와 관련된 것으로, 특별한 의미를 갖을 수 있다. 예컨대, pp 노드계층 식별자에 "0100" 인덱스가 붙으면, 이는 해당 상품을 구매한 고객들이 구매한 다른 상품을 찾아달라는 질의를 의미하고, 이와 연관된 경로는 제 1 상품(출발노드)을 주문한 고객이 묶음주문한 다른 상품을 의미한다. 노드계층 식별자에 직접 후속하여 붙는 인덱스의 의미에 따른 질의에 대한 설명은 도 10을 통해 보다 상세히 설명한다. Referring to FIG. 9, the device identifies products and products, customers and customers, or a connection path between products and customers by indexing data. In this case, the connection path may be composed of a node layer identifier and an index number. The node layer identifier is composed of a combination of the identifier of the target node that is the center of the search and the identifier of the final destination node. In this case, the first node layer (product node) may be identified as p, and the third target node layer (customer node) may be identified as m. After identifying the node hierarchy of the starting node and the destination node in this way, the indexing number is attached. The indexing number is related to a query and may have a special meaning. For example, if an index of "0100" is attached to the pp node hierarchy, it means a query for customers who purchased the product to find another product purchased, and the path associated with this is a group of customers who order the first product (departure node). It means another product ordered. A description of the query according to the meaning of the index attached directly to the node layer identifier will be described in more detail with reference to FIG. 10.

이와 같이, 인덱스까지 붙은 상태에서 각 연결경로는 "-1"의 형태로 식별된다. 즉, pp0100 질의와 연관된 첫 번째 경로는 "pp0100-1"로 데이터화될 수 있다. 이후, "-" 뒷단의 숫자를 1씩 증가하며 경로를 식별할 수 있다. 예컨대, 제 1 상품을 주문한 고객이 묶음 주문한 다른 상품이 다수 개 있으면, pp0100-1, pp0100-2, pp0100-3 등으로 정의될 수 있다. In this way, each connection path is identified in the form of "-1" with the index attached. That is, the first path associated with the pp0100 query may be dataized as "pp0100-1". After that, the number at the end of the "-" is increased by 1 to identify the route. For example, if a customer who ordered the first product has a plurality of other products ordered in a bundle, it may be defined as pp0100-1, pp0100-2, pp0100-3, and the like.

같은 방법으로, 제 1 고객으로부터 제 2 고객까지의 연결경로는 mm0100-1, mm0100-2, 또는 mm0101-1, mm0101-2 등으로 표현된다. 제 1 상품으로부터 제 1 고객까지의 연결경로는 pm0100-1, pm0100-2 등으로 표현된다. 제 1 고객으로부터 제 1 상품까지의 연결경로는 mp0100-1, mp0100-2 등으로 표현된다. In the same way, the connection path from the first customer to the second customer is expressed as mm0100-1, mm0100-2, or mm0101-1, mm0101-2, and the like. The connection path from the first product to the first customer is expressed as pm0100-1, pm0100-2, and so on. The connection path from the first customer to the first product is expressed as mp0100-1, mp0100-2, and the like.

이와 같이 연결경로는 데이터화하여 장치는 보유할 수 있고, 이를 이용하여 특정 거리 범위 내의 연결경로의 수를 산출한다. In this way, the connection path is converted into data, and the device can hold it, and the number of connection paths within a specific distance range is calculated using this.

추가적으로, 장치는 도 6의 그래프 형태의 구현에서 연결경로 리스트 형태로 변환이 가능하도록 제어할 수 있다. 즉, 복수 개의 방사형 그래프를 시각화하는 중에, 특정 출발 노드와 특정 도착 노드 간의 연결경로와 관련된 정보를 리스트 형태로의 변환에 대한 요청이 있으면, 상기 출발 노드와 상기 도착 노드 간의 연결경로 인덱스를 리스트로 표시할 수 있다. 또한, 해당 리스트에는 제 1 인데스의 연결경로(예컨대, pp0100-1)의 거리도 함께 표시할 수 있다. 이에 따라, 특정 인덱스를 갖는 연결경로를 클릭할 시, 해당 경로가 그래프 상에 하이라이트된 상태로 표시되고, 어느 경로를 거쳐 출발노드로부터 도착노드로 연결되는지를 직관적으로 볼 수 있도록 시각화한다. Additionally, the device may be controlled to enable conversion in the form of a connection path list in the implementation of the graph of FIG. 6. That is, while visualizing a plurality of radial graphs, if there is a request to convert information related to a connection path between a specific departure node and a specific arrival node into a list, the connection path index between the departure node and the destination node is converted into a list. Can be displayed. Also, the distance of the connection path of the first index (eg, pp0100-1) may be displayed in the corresponding list. Accordingly, when a connection route having a specific index is clicked, the corresponding route is displayed in a highlighted state on the graph, and through which route is connected from the departure node to the destination node, it is visualized so that it can be seen intuitively.

또한, pp0100-1과 pp0101과 같은 경우, 중복되어 인덱싱될 수 있는데, 이를 방지하기 위해, pp0100에 대한 연결경로를 모두 추출할 경우에는 pp0100-1로 추출되고, pp0101에 대한 연결경로를 모두 추출할 경우에는 pp0101-1로 추출되어 중복되지 않도록 하고, 모든 경로를 추출할 경우, 중복되는 pp0100-1을 제외하고, 그보다 좀 더 구체화된 연결경로를 표현하는 pp0101-1로 식별되도록 할 수 있다. In addition, in the case of pp0100-1 and pp0101, they may be duplicated and indexed.To prevent this, when all connection paths for pp0100 are extracted, they are extracted as pp0100-1, and all connection paths for pp0101 are extracted. In this case, it is extracted as pp0101-1 so that it is not duplicated, and when all routes are extracted, the duplicated pp0100-1 can be excluded and identified as pp0101-1, which represents a more detailed connection route.

도 10a 내지 도 10d는 상품과 고객 노드를 입력으로 지정하여 유사 상품 및 유사 성향의 고객을 출력으로 찾는 다양한 실시예를 나타낸 도면이다. 10A to 10D are diagrams illustrating various embodiments of searching for similar products and similar-minded customers as outputs by designating products and customer nodes as inputs.

장치는 상품 또는 고객 노드를 입력으로 지정하여 유사 상품 및 고객을 찾는 질의를 생성한다. The device generates a query to find similar products and customers by designating a product or customer node as an input.

도 10a를 참조하면, 특정상품과 유사성이 있는 상품을 찾는 질의를 생성한다. 상품을 주문한 고객이 묶음 주문한 다른 상품을 나타내는 pp0100 질의를 생성할 수 있다. 또한, 상품을 주문한 고객이 묶음 주문한 다른 상품 중 같은 카테고리 내 상품을 나타내는 pp0101 질의를 이용하여 연결경로를 도출할 수 있다. Referring to FIG. 10A, a query for finding products similar to a specific product is generated. A customer who ordered a product can generate a pp0100 query that shows other products ordered in a bundle. In addition, a connection path can be derived by using a query pp0101 that indicates a product in the same category among other products ordered in a bundle by a customer who ordered the product.

또한, 상품을 주문한 고객이 다른 주문으로 구매한 상품을 나타내는 pp0200 질의 및 상기 다른 주문에서 같은 카테고리 내 상품을 나타내는 pp0201 질의를 이용할 수 있다. In addition, a pp0200 query indicating a product purchased by a customer who has ordered a product in another order and a pp0201 query indicating a product in the same category in the other order may be used.

도 10b를 참조하면, 특정고객과 유사성이 있는 고객을 찾는 질의는 다음과 같은 것이 있다. 제 1 고객과 같은 상품을 주문한 제 2 고객을 나타내는 mm0100 질의를 이용할 수 있다. 나아가, 제 1 고객이 주문한 제 1 상품과 완전 동일한 상품이 아니라 동일한 카테고리의 제 2 상품을 주문한 제 2 고객까지의 경로를 찾기 위한 mm0101 질의를 이용할 수도 있다. Referring to FIG. 10B, a query for finding a customer having similarity to a specific customer is as follows. An mm0100 query representing a second customer who has ordered the same product as the first customer can be used. Further, the mm0101 query may be used to find a route to a second customer who has ordered the second product of the same category, not the product that is not exactly the same as the first product ordered by the first customer.

도 10c를 참조하면, 특정상품과 유사성이 있는 고객을 찾는 질의와 관련하여, 해당 상품과 묶음 구매된 상품을 구매한 고객까지의 경로를 나타내는 pm0000 질의와, 상기 묶음 구매된 상품 중에, 상기 해당 상품과 동일 카테고리 내의 상품을 구매한 고객가지의 경로를 나타내는 pm0100 질의를 이용할 수 있다.Referring to FIG. 10C, in relation to a query for finding a customer with similarity to a specific product, a query pm0000 indicating a path to a customer who has purchased a product and a product purchased in a bundle, and among the products purchased in a bundle, the corresponding product You can use the pm0100 query indicating the path of the customer who purchased the product in the same category as and.

도 10d를 참조하면, 특정 고객과 유사성이 있는 상품을 찾는 질의와 관련하여, 해당 고객이 주문한 상품과 같이 묶음 구매된 상품들까지의 경로를 나타내는 mp0000 질의와, 상기 묶음 구매된 상품 중에, 상기 해당 상품과 동일 카테고리 내의 상품까지의 경로를 나타내는 mp0001 질의를 이용할 수 있다.Referring to FIG. 10D, in relation to a query for finding a product similar to a specific customer, an mp0000 query indicating a path to products purchased in a bundle, such as a product ordered by a corresponding customer, and among the bundled products, the corresponding You can use the mp0001 query indicating the path to the product and the product in the same category.

본 발명의 실시예에 따르면, 상품과 상품 간의 유사성 판단에 있어서, 위와 같은 질의가 존재하고, 질의에 대한 연결경로 또한, ppXXXX-X로 표현된다. 특히, 상품과 상품 간의 연결경로 ppXXXX-X를 이용할 수도 있지만, 상품-고객 간의 유사성과 관련된 경로를 나타내는, pmXXXX-X 경로와 고객과 상품 간의 유사성과 관련된 연결경로를 나타내는, mpXXXX-X 경로의 조합을 이용할 수 있다. 즉, pm0000-1 + mp0000-1을 이용하여 상품과 상품 간의 유사성을 판단할 수도 있다. 또한, pm0000-1 + mm0100-1 + mp0000-1을 이용하는 등, 3가지 이상의 유사성 관련 연결경로를 이용하여 상품과 상품 간의 유사성을 판단할 수 있다. According to an embodiment of the present invention, in determining the similarity between a product and a product, the above query exists, and the connection path for the query is also expressed as ppXXXX-X. In particular, although ppXXXX-X may be used as the connection path between products and products, a combination of the pmXXXX-X path, which represents the path related to similarity between product and customer, and the mpXXXX-X path, represents the connection path related to similarity between customers and products. You can use That is, it is also possible to determine the similarity between a product and a product using pm0000-1 + mp0000-1. In addition, it is possible to determine the similarity between a product and a product by using three or more similarity-related connection paths, such as using pm0000-1 + mm0100-1 + mp0000-1.

본 발명의 실시예에 따르면, (i) ppXXXX-X 경로와 (ii) pmXXXX-X + mmXXXX-X + mpXXXX-X의 경로 중 어느 것을 이용할 때, 최적의 상품추천이 가능한지에 대한 것도 앞서 도 8의 인공지능 학습 모델을 이용하여 경로와 연관된 파라미터(가중치 포함)를 변경시키면서 학습을 시킴으로써 정확도를 제고시킬 수 있다. According to an embodiment of the present invention, when using any of the paths of (i) ppXXXX-X and (ii) pmXXXX-X + mmXXXX-X + mpXXXX-X, it is also possible to recommend an optimal product. The accuracy can be improved by learning while changing the parameters (including weights) associated with the path using the artificial intelligence learning model of.

도 11은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 웹 페이지에서 구현한 결과를 나타낸 도면이다. 11 is a diagram illustrating a result of implementing a product recommendation method using a graph database according to an embodiment of the present invention in a web page.

도 11을 참조하면, 장치는 REST API를 이용하여 접속함에 의해 상기와 같은 알고리즘을 실행할 수 있도록 한다. 장치는, URL(Uniform Resource Locator)을 이용하여 어떤 로직(관계)를 적용할 것인지 지정한다. 도 11의 실시예에서는, pp0100을 지정하여 해당 상품을 구매한 회원들이 구매한 다른 상품을 도출하도록 한다.Referring to FIG. 11, the device enables the above algorithm to be executed by accessing it using a REST API. The device designates which logic (relationship) to apply using a URL (Uniform Resource Locator). In the embodiment of FIG. 11, pp0100 is designated to derive other products purchased by members who have purchased the product.

URL 경로에 있어서, pp0100과 같은 질의에 후속하여 쿼리 파라미터(Query Parameter)가 붙을 수 있는데, 여기에는 중심이 되는 상품번호, 반환할 데이터의 건수 및 회원 ID 등이 포함될 수 있다. 즉, 추천 로직에 따라 고객 또는 상품 정보만 사용할 수 있다. 이와 같은 상품코드, 고객 번호 등의 추가파라미터는 URL 인코딩(encoding) 방식으로 전달된다. In the URL path, a query parameter such as pp0100 may be followed by a query parameter, which may include a central product number, the number of data to be returned, and a member ID. That is, only customer or product information can be used according to the recommendation logic. Additional parameters such as product code and customer number are transmitted in a URL encoding method.

이러한 쿼리에 응답하여, 쿼리 출력으로는, 데이터의 개수(n), 상품 또는 회원(node), 중요도(hits: 검색된 경로의 갯수) 및 암호화 쿼리(디버깅 용도의 사이퍼 쿼리(Cypher query)가 제공될 수 있다.In response to these queries, as query output, the number of data (n), product or member (node), importance (hits: number of paths retrieved), and cryptographic queries (Cypher query for debugging purposes) will be provided. I can.

장치는 유사성이 높은, 즉, 연결경로가 많은 순서로 상위 n개(본 실시예에서는 n=5, 즉, 5개)의 상품 및 해당 상품별 경로의 갯수를 반환할 수 있다.The device may return the number of products of the top n (n=5, ie, 5) and the number of paths for each product in the order of high similarity, that is, the number of connection paths.

상품구매 이력을 이용하는 경우, 고객의 선호도를 파악하는 시점이 늦을 수 있고, 구매 건의 경우 데이터가 충분히 많지 않아 통계적인 연관성을 보기 어렵기 때문에, 사용자가 상품을 조회한 이력을 이용하여 상품을 추천하는 것을 고려할 수 있다. In the case of using the product purchase history, the time to grasp the customer's preference may be delayed, and in the case of purchase, it is difficult to see statistical relevance because there is not enough data, so that the user recommends the product using the product search history. Can be considered.

도 12는 본 발명의 다른 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 나타낸 흐름도이다. 12 is a flowchart illustrating a product recommendation method using a graph database according to another embodiment of the present invention.

도 12를 참조하면, 장치(서버)는 상품 조회와 연관된 조회 이력 데이터를 쇼핑몰들 및/또는 쇼핑몰들을 관리하는 서버로부터 수집한다(S1210). 이는 웹 로그 파일로부터 사용자들의 상품정보 조회 이력을 추출함에 의해 달성될 수 있다. 조회이력은 순차적인 상품코드로 변환하여 데이터화할 수 있다. 예컨대, 상품 1을 보고, 상품 2를 조회하고, 상품 4를 조회한 후, 다시 상품 1을 보고 로그아웃한 이력에서 시계열적인 부분까지 고려하여 상품코드로 변환함에 의해 조회 이력 데이터를 생성한다. Referring to FIG. 12, an apparatus (server) collects inquiry history data related to product inquiry from a server that manages shopping malls and/or shopping malls (S1210). This can be achieved by extracting the user's product information inquiry history from the web log file. The inquiry history can be converted into sequential product codes and converted into data. For example, after viewing product 1, inquiring product 2, and inquiring product 4, the inquiry history data is generated by converting the product code into a product code by considering product 1 and logging out from the logout history.

그리고는, 장치는 조회 이력 데이터를 그래프 형태로 변환한 후(S1212), 데이터베이스에 저장한다(S1214). 이때, 그래프의 구조는 앞선 "상품-주문-고객"에 대응되도록, "세션-페이지-상품"의 구조를 가질 수 있다.Then, the device converts the inquiry history data into a graph form (S1212) and stores it in the database (S1214). In this case, the structure of the graph may have a structure of “session-page-product” so as to correspond to the preceding “product-order-customer”.

클라이언트(사용자 단말)은 추천 상품 검색 요청을 입력할 수 있다(S1216). 이는 도 11에서 설명한 바와 같이, URL을 이용하여 이루어질 수 있다. The client (user terminal) may input a request to search for a recommended product (S1216). This can be accomplished using a URL, as described in FIG. 11.

장치는 특정한 상품을 검색한 이후 또는 이전의 x개의 웹 페이지 범위 내에서 조회한 상품을 추출한다(S1218). x 값은 사용자 설정에 의해 결정될 수 있고, 임의로 변경가능하다. The device extracts the searched product within the range of x web pages before or after searching for a specific product (S1218). The x value can be determined by user settings and can be arbitrarily changed.

장치는, 조회한 상품 중에서 조회수가 많은 상품 순으로 구매자에게 추천할 수 있다(S1220). 클라이언트는 추천된 상품 정보를 수신하여 출력할 수 있다(S1222). The device may recommend to the buyer in the order of the products with the highest number of views among the searched products (S1220). The client may receive and output the recommended product information (S1222).

도 13a 및 도 13b는 본 발명의 다른 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 상품 경로예측의 예시적인 모습을 나타낸 도면이다. 13A and 13B are diagrams illustrating exemplary product path prediction in a product recommendation method using a graph database according to another embodiment of the present invention.

도 13a 및 도13b를 참조하면, 추천 상품 수(n)를 10개로 하여, 추천 상품 요청에 있을 경우, 장치는 적어도 3개의 노드 계층으로 형성된 그래프를 생성한다. 이는, 제 1 노드 계층인 세션(1330)을 중심으로 사용자가 조회했던 웹 페이지(1320: 제 2 노드 계층)과 해당 웹 페이지에서 검색한 상품(1310: 제 3 노드 계층)을 포함할 수 있다. 노드 계층은 상품이 제 1 노드 계층, 페이지가 제 2 노드 계층, 그리고, 세션이 제 3 노드 계층이 되도록 변경되어도 무방하다. 13A and 13B, when the number of recommended products n is set to 10, and when there is a request for recommended products, the device generates a graph formed by at least three node hierarchies. This may include a web page 1320 (a second node layer) searched by a user centering on the session 1330 as a first node layer and a product 1310 (third node layer) searched on the web page. The node layer may be changed so that the product is the first node layer, the page is the second node layer, and the session is the third node layer.

장치는 특정 세션(1330)과 연관된 웹 페이지(1320)를 연결하고, 웹 페이지(1320) 내에서 검색한 상품(1310)이 웹 페이지(1320)와 연결되도록 구성한다. 그리고, 시계열적인 순서를 파악할 수 있도록 직선으로 형성된 연결선(-)이 아닌, 화살표(→)를 사용하여 선행 동작과 후속 동작을 구분하여 그래프를 구성하는 것이 바람직하다. The device connects the web page 1320 associated with the specific session 1330 and configures the product 1310 searched in the web page 1320 to be connected to the web page 1320. In addition, it is preferable to construct a graph by using an arrow (→) instead of a connecting line (-) formed in a straight line to identify the time-series order by separating the preceding operation and the subsequent operation.

그래프를 구성하고 나서, 장치는 상품 24522(1310) 조회 이후, 3 페이지 범위 내에서 조회한 상품을 조회수가 많은 순서로 10개 검색하여 추천한다. 이후의 3개 웹 페이지와 관련된 내용은 도 14a 및 도 14b를 통해 설명한다. After constructing the graph, the device searches and recommends 10 products searched within the range of 3 pages in the order of the highest number of views after product 24522 (1310) search. Contents related to the following three web pages will be described with reference to FIGS. 14A and 14B.

도 14a 및 도 14b는 도 13a의 실시예에서의 상품 조회 이후, 다음 상품을 조회한 상황에서의 상품 경로예측의 예시적인 모습을 나타낸 도면이다. 14A and 14B are diagrams illustrating exemplary product path prediction in a situation in which a next product is inquired after product inquiry in the embodiment of FIG. 13A.

도 14a 및 도 14b를 참조하면, 장치는, 고객이 상품 24522(미도시)를 조회하고 다음에 웹 페이지(1420)를 통해 상품 25799(1410)를 조회한 후, 웹 페이지(1422)를 이용하여 상품 25622(1412)를 조회한 사실을 변환된 그래프 데이터를 기반으로 확인할 수 있다. 이러한 방식으로 특정 상품 이후에 특정 횟수의 페이지의 범위(본 실시예에서는 3개 페이지일 수 있음) 내에서 조회한 상품을 조회수가 많은 순서로 10개 검색하여 반환함으로써 앞선 도 13a 내지 도 13b의 클라이언트로부터의 요청을 처리할 수 있다. 다만, 이때, 3개 페이지는 상품 검색이 이루어진 페이지가 되도록 설정할 수 있다. 즉, 상품 검색이 없는 웹 페이지는 페이지 획수 산정에서 제외하고, 상품 검색이 이루어진 페이지를 기준으로 3개 페이지를 산정하여 해당 페이지 범위 내에서 조회가 많이 이루어진 상위 상품을 추천하는 것이 바람직하다. 14A and 14B, the device uses a web page 1422 after a customer inquires a product 24522 (not shown) and then a product 25799 (1410) through a web page 1420. The fact of inquiring the product 25622 (1412) can be confirmed based on the converted graph data. In this way, after a specific product, 10 products searched within the range of a specific number of pages (which may be 3 pages in this embodiment) are searched and returned in the order of the number of views. Can process requests from However, in this case, the three pages may be set to be a page in which product search is performed. That is, it is preferable to exclude a web page without product search from calculating the number of page strokes, and to recommend a higher product that has been viewed a lot within the range of the page by calculating three pages based on the page on which the product search was performed.

본 발명의 다른 실시예에 따르면, 페이지에만 제한을 두어 상품을 추천해야만 하는 것은 아니고, 세션에 제한을 두어, 3개 세션 내에서 이루어진 상품의 조회수를 기반으로 상품을 추천할 수 있다. 나아가, 조회수가 높아 추천된 상품의 카테고리 식별자를 이용하여 경합의 카테고리에 있는 상품만 추천하거나, 유사의 카테고리에 있는 상품을 추천할 수 있다. 유사 또는 경합 카테고리의 사용, 클래스의 사용 부분 역시 도 8의 인공지능 모델을 이용하여 그 설정값을 최적화할 수 있다. 이때의 학습데이터 셋은 검색 요청의 대상이 되는 조회 데이터 1과 본 발명의 일 실시예에 따른 그래프 기반의 상품추천 과정을 통해 실제 구매가 이루어진 상품과 연관된 조회 데이터 2의 세트가 될 수 있다. According to another embodiment of the present invention, it is not necessary to recommend a product by limiting only to the page, but by limiting the session, it is possible to recommend a product based on the number of views of products made within three sessions. Further, by using the category identifier of the product recommended due to the high number of views, it is possible to recommend only products in a contending category or a product in a similar category. The use of similar or contention categories and the use of classes can also be optimized using the artificial intelligence model of FIG. 8. The learning data set at this time may be a set of inquiry data 1 that is a target of a search request and inquiry data 2 related to a product that has been actually purchased through a graph-based product recommendation process according to an embodiment of the present invention.

본 발명의 실시예에 있어서, 장치는, 상품 구매 이력 데이터 기반의 제 1 그래프 데이터베이스와 상품 조회 이력 데이터 기반의 제 2 그래프 데이터베이스를 혼합하여 사용할 수 있다. 예컨대, 제 2 그래프 데이터베이스를 이용하여 조회수가 많은 상위 10개 상품을 검색한 후, 추천 후보 10개 상품과 요청대상 상품의 유사성의 정도를 제 1 그래프 데이터베이스를 이용하여 산출할 수 있다. 그래서, 제 1 그래프 데이터베이스를 이용하여 유사도가 높은 상품을 기반으로 추천 10개 후보의 추천 순서를 변경할 수 있다. 그 반대의 경우도 가능하다. In an embodiment of the present invention, the apparatus may mix and use a first graph database based on product purchase history data and a second graph database based on product inquiry history data. For example, after searching for the top 10 products with many views using the second graph database, the degree of similarity between the 10 recommendation candidate products and the requested product may be calculated using the first graph database. Thus, it is possible to change the order of recommendation of 10 recommendation candidates based on products with high similarity using the first graph database. The opposite is also possible.

추가적으로, 제 1 그래프 데이터베이스를 기반으로 산정한 추천 상품 후보에 가중치 1을 부여하고, 제 2 그래프 데이터베이스 기반으로 산정한 추천 상품 후보에 가중치 2를 부여하여 가중치를 기반으로 가장 높은 유사성을 갖는 상품을 최종 후보로 선택하는 방법을 고려할 수 있다. In addition, a weight of 1 is given to the recommended product candidate calculated based on the first graph database, and a weight 2 is assigned to the recommended product candidate calculated based on the second graph database to finalize the product with the highest similarity based on the weight. You can consider how to select a candidate.

상품 바스켓(basket) 추천 방법How to recommend a product basket

도 15는 상품 판매활성도 분석에 따라 판매가 저조해진 상품들에 대한 프로모션이 필요한 상황을 설명하기 위한 개념도이다. 15 is a conceptual diagram illustrating a situation in which a promotion is required for products whose sales are poor according to product sales activity analysis.

도 15를 참조하면, 장치는, 상품의 판매량과 상품의 판매활성도 분석을 수행하여 판매가 저조해진 상품들(활성도가 0.2보다 낮은 상품들)(lagger 단계의 상품들) 10개 중 일부를 대상으로 프로모션이 요구될 수 있다. 즉, 10개의 판매 저조 상품들 중 4개를 뽑아서 프로모션을 진행하고자 하는 경우, 본 발명의 일 실시예에 따른 상품 바스켓 추천 방법이 사용될 수 있다.Referring to FIG. 15, the apparatus performs promotion for some of 10 products (products with an activity lower than 0.2) (products in lagger stage) with low sales by analyzing the sales volume of the product and the sales activity of the product. May be required. That is, when four out of 10 low-selling products are selected to be promoted, the product basket recommendation method according to an embodiment of the present invention may be used.

도 16a 및 도 16b는 5명의 고객과 6개의 상품이 있는 경우, 특정 수의 고객 군과 특정 수의 상품군을 매칭하여 특별 프로모션을 제공하기 위한 매칭방법을 설명하기 위한 개념도이다.16A and 16B are conceptual diagrams illustrating a matching method for providing a special promotion by matching a specific number of customer groups and a specific number of product groups when there are 5 customers and 6 products.

도 16a를 참조하면, 5명의 고객과 6개의 상품이 존재하는데, 고객 3명에서 상품 3개를 프로모션하고자 하는 경우, 판매가능성을 최적화하는 결정이 요구된다. 장치는 이를 위해, 두 가지 방법을 통해 최적화된 프로모션을 수행할 수 있다.Referring to FIG. 16A, there are 5 customers and 6 products. When 3 products are to be promoted by 3 customers, a decision to optimize saleability is required. For this, the device can perform an optimized promotion through two methods.

(1) 첫 번째 방법은, 6개 상품 중 5명에게 최적인 상품군을 먼저 선정하고 선정된 상품에 대해 최적의 고객을 이차적으로 선정하여 복수 상품군과 복수 고객군을 매칭하는 방법이다(도 18 참조). (1) The first method is a method of matching multiple product groups and multiple customer groups by first selecting the best product group for 5 out of 6 products and secondarily selecting the best customer for the selected product (see Fig. 18). .

(2) 두 번째 방법은, 5명의 고객에게 6개 상품에 최적인 고객군을 먼저 선정하고, 선정된 고객들에 대해 최적의 상품을 이차적으로 선택하여 복수 상품군과 복수 고객군을 매칭하는 방법이다(도 20 참조).(2) The second method is a method of matching multiple product groups and multiple customer groups by first selecting the best customer group for 6 products to 5 customers, and secondly selecting the best product for the selected customers (Fig. 20). Reference).

장치는 위와 같은 두 가지 방법 중 적어도 하나의 방법을 사용하여 판매가능성을 최적화하는 결정을 수행하고, 그 결정에 의해, 도 16b와 같은 상태에서 프로모션을 진행할 수 있다.The apparatus performs a determination to optimize the saleability using at least one of the above two methods, and by the determination, the promotion may proceed in a state as shown in FIG. 16B.

도 16b를 참조하면, 장치는 고객 1, 고객 3 및 고객 4에게 상품 2, 상품 3 및 상품 6으로 구성된 패키지를 프로모션한다. 프로모션은 해당 패키지에 포함된 상품을 해당 고객에게만 특별할인 제공하는 형태로 진행될 수 있다. 또는, 쇼핑몰의 첫 페이지에 팝업 방식으로 해당 패키지의 상품이 표시되도록 할 수도 있고, 가장 눈에 띄는 일부 영역에 패키지 상품을 배열하여 판매를 유도할 수 있다. Referring to FIG. 16B, the device promotes a package consisting of product 2, product 3, and product 6 to customer 1, customer 3, and customer 4. Promotion can be conducted in the form of offering a special discount only to the customer of the product included in the package. Alternatively, a product of a corresponding package may be displayed in a pop-up manner on the first page of a shopping mall, or package products may be arranged in some of the most prominent areas to induce sales.

도 17a 및 도 17b는 본 발명의 또 다른 실시예에 따른 상품 바스켓 추천 방법을 나타낸 흐름도이다. 17A and 17B are flowcharts illustrating a method of recommending a product basket according to another embodiment of the present invention.

도 17a 및 도 17b을 참조하면, 장치는 복수 개의 상품(예컨대, 10개의 상품)에 대해 각각 추천할 고객을 선정하여 프로모션할 때, 다음의 절차를 따른다. Referring to FIGS. 17A and 17B, the apparatus follows the following procedure when selecting and promoting a customer to be recommended for each of a plurality of products (eg, 10 products).

장치는 먼저, 프로모션의 후보가 되는 상품 및 고객 데이터를 획득한다(S1710). 도 17b의 실시예에서는, 10건의 상품후보와 약 100여명의 고객후보가 있으며, 이에 대한 데이터를 획득한 상황을 가정한다. 이때, 고객후보에서는 특정 상품에 대해 미리 구매한 구매자는 제외하거나 데이터를 0으로 하여 취합한다. 취합된 데이터는 행렬 형태를 취하는 것이 바람직하다. 이때, 상품을 행으로, 고객을 열로 형성한다. 물론 반대여도 무방하다. 그리고, 행렬의 빈 칸에는 개별 상품과 개별 고객의 구매가능성과 관련된 지표를 입력한다. 상기 구매가능성과 관련된 지표는 상품 이미지 분석, 상품 속성 분석, 고객 구매 이력에 따른 성향을 기반으로 산출되는 지표를 사용할 수 있다. 또는, 본 발명의 일 실시예에 따른 그래프 데이터베이스에 기반한 유사도를 상기 지표로 사용할 수 있다. 도 17b의 실시예에서는, 그래프 데이터베이스를 이용하여 연결경로를 갯수로 산출되는 유사도를 상기 구매가능성 지표로 사용한다. First, the device acquires product and customer data that are candidates for promotion (S1710). In the embodiment of FIG. 17B, it is assumed that there are 10 product candidates and about 100 customer candidates, and data for this is obtained. At this time, in the customer candidate, buyers who have previously purchased for a specific product are excluded or data is set to zero. It is preferable that the collected data take the form of a matrix. At this time, products are formed in rows and customers are formed in columns. Of course, the opposite is okay. In addition, in the blank column of the matrix, an index related to the purchaseability of individual products and individual customers is input. The index related to the purchaseability may be an index calculated based on product image analysis, product attribute analysis, and propensity according to customer purchase history. Alternatively, a similarity degree based on a graph database according to an embodiment of the present invention may be used as the index. In the embodiment of FIG. 17B, the degree of similarity calculated as the number of connection paths using a graph database is used as the purchaseability index.

데이터를 획득하여 행렬을 생성한 후, 장치는 상품별 총 연결경로의 수를 산출하여(S1720), 연결경로의 수가 큰 상위 순위의 상품들을 선택한다(S1730). 선택되는 상품의 수는 프로모션 대상 상품의 수를 따른다. 이는 사용자(예컨대, 쇼핑몰 운영자)가 사용자 인터페이스를 통해 선택할 수 있는 상황이다. 또는, 특정 갯수의 상품을 기준값으로 설정하지 않고, 임계값 이상의 연결경로의 수를 갖는 상품을 모두 선택할 수 있다. 예컨대, 700 개의 연결경로의 수보다 큰 연결경로를 갖는 상품들이 그 갯수를 제한하지 않고 선택될 수 있다. 연결경로의 수가 적은 것은 관련성이 적다고 판단될 수 있다. 이 경우, 연결경로의 수가 적은 것을 선택하여 할인을 더 많이 하는 방향으로 처리할 수 있다. 도 17b의 실시예에서, 장치는 연결경로의 수가 높은 상위 4개의 상품을 선택한다.After acquiring data and generating a matrix, the device calculates the total number of connection paths for each product (S1720), and selects high-ranking products with a large number of connection paths (S1730). The number of products selected depends on the number of products subject to promotion. This is a situation in which a user (eg, a shopping mall operator) can select through a user interface. Alternatively, a specific number of products may not be set as a reference value, and all products having a number of connection paths greater than or equal to the threshold value may be selected. For example, products having a connection path greater than the number of 700 connection paths may be selected without limiting the number. A small number of connection paths may be judged to be less relevant. In this case, it is possible to select one with a smaller number of connection paths and process in the direction of offering more discounts. In the embodiment of Fig. 17B, the device selects the top four products with a high number of connection paths.

장치는 선택된 상위 4개(이는 사용자 설정을 통해 변경가능함)의 상품만 남기고, 나머지 상품은 삭제하여 새로운 행렬로 행렬을 재구성한다(S1740). 그리고는, 남아있는 4개의 상품에 대해 연결경로의 총합이 높은 6명의 고객을 프로모션 대상 고객으로 채택한다. 장치는 선택된 4개 상품 패키지를 프로모션 대상 고객 군인 6명의 고객에게 프로모션을 진행한다(S1750). The device reorganizes the matrix into a new matrix by leaving only the top four selected products (which can be changed through user settings), deleting the remaining products (S1740). Then, for the remaining 4 products, 6 customers with a high total connection path are selected as target customers for promotion. The device promotes the selected four product packages to six customers of the promotion target customer soldier (S1750).

도 18은 본 발명의 또 다른 실시예에 따른 상품기반 바스켓 추천 방법을 나타낸 흐름도이다. 이는 도 16a의 (1) 방법에 관한 것이다.18 is a flowchart illustrating a product-based basket recommendation method according to another embodiment of the present invention. This relates to method (1) of FIG. 16A.

도 18을 참조하면, 장치는 프로모션의 후보가 될 상품 및 고객과 연관된 구매가능성 지표에 대한 데이터를 획득하고 나면, 상품을 열로, 고객을 행으로 하는 행렬을 생성한다(S1810). 행렬의 빈칸에는 상품-고객 간의 구매가능성 지표가 입력되도록 한다. Referring to FIG. 18, after acquiring data on a product to be a promotion candidate and a purchaseability index associated with a customer, the device generates a matrix in which the product is a column and the customer is a row (S1810). In the blanks of the matrix, a purchaseability index between product and customer is entered.

그리고는, 장치는 각 행에 대한 구매가능성 합계를 산출한다(S1820). 그리고는, 구매가능성 합계가 큰 순으로 상품을 순위화하여 프로모션에 의해 추천하고자 하는 상품의 갯수만큼, 구매가능성 합계 순위가 높은 상품을 선택하고, 나머지 상품은 삭제하여 행렬을 재구성한다(S1830). Then, the device calculates the sum of purchase possibilities for each row (S1820). Then, the products are ranked in the order of the highest sum of purchase possibilities, as many as the number of products to be recommended by the promotion, the products with the highest total order of purchase possibilities are selected, and the remaining products are deleted to reconstruct the matrix (S1830).

상품이 선택되고 나면, 장치는 각 열에 대한 고개별 부분합을 산출한다(S1840). 그리고는, 고객별 부분합이 큰 순서로 순위화한 후, 프로모션 대상으로 하고자 하는 고객의 수만큼 구매가능성 부분합 순위가 높은 고객을 선택하고 나머지 고객들을 제외시킨다(S1850).After the product is selected, the device calculates the individual subtotal for each row (S1840). Then, after ranking the subtotals for each customer in a large order, customers with a higher purchaseability subtotal ranking as many as the number of customers to be promoted are selected and the remaining customers are excluded (S1850).

고객 그룹과 상품 그룹에 대한 선택이 완료되면, 장치는 해당 고객 그룹을 대상으로 해당 상품 그룹을 패키지로 형성하여 프로모션을 실시한다(S1860).When the selection of the customer group and the product group is completed, the device forms the product group as a package targeting the customer group and performs promotion (S1860).

도 19a 내지 도 19c는 도 18의 바스켓 추천 방법의 각 단계별 행렬 생성 방법을 구체적으로 설명하기 위한 테이블이다. 19A to 19C are tables for explaining in detail a method of generating a matrix for each step of the basket recommendation method of FIG. 18.

도 19a를 참조하면, 장치는 고객 1 내지 고객 5와 상품 1 내지 상품 6에 대한 구매가능성 지표를 기반으로 고객을 행으로, 상품을 열로 구성하여 행렬을 생성한다.Referring to FIG. 19A, the apparatus generates a matrix by configuring customers as rows and products as columns based on purchaseability indicators for customers 1 to 5 and products 1 to 6.

도 19b를 참조하면, 장치는 행에 대한 합산을 통해, 상품별 부분합을 계산하여 순위를 매긴다. 도 19b의 실시예에 따르면, 상품 2가 69의 값으로 1위, 상품 3이 55의 값으로 2위, 상품 6이 53의 값으로 3위가 된다.Referring to FIG. 19B, the device ranks a subtotal for each product through the summation of rows. According to the embodiment of FIG. 19B, product 2 is ranked first with a value of 69, product 3 is ranked second with a value of 55, and product 6 is ranked third with a value of 53.

도 19c를 참조하면, 상위 3개 상품(상품2, 상품 3 및 상품 6)을 선정하고, 열에 대한 합산을 수행하여 고객별 부분합을 산출한다. 그리고는, 그에 대한 순위를 매긴다. 도 19c의 실시예 따르면, 고객 1이 48의 값으로 1위, 고객 3이 43의 값으로 2위, 고객 4가 33의 값으로 3위가 된다. Referring to FIG. 19C, the top three products (product 2, product 3, and product 6) are selected, and a subtotal for each customer is calculated by adding up columns. Then, rank them. According to the embodiment of FIG. 19C, customer 1 is ranked first with a value of 48, customer 3 is ranked second with a value of 43, and customer 4 is ranked third with a value of 33.

이에, 장치는, 고객 1, 고개 3 및 고객 4를 프로모션 대상 고객으로 선정하고, 상품 2, 상품 3 및 상품 6을 프로모션 대상 상품으로 선정하여 프로모션을 진행한다. Accordingly, the device selects customer 1, customer 3, and customer 4 as target customers for promotion, and selects product 2, product 3, and product 6 as promotion target products to perform promotion.

도 20은 본 발명의 또 다른 실시예에 따른 고객기반 바스켓 추천 방법을 나타낸 흐름도이다. 이는 도 16a의 (2) 방법에 관한 것이다.20 is a flowchart illustrating a method for recommending a customer-based basket according to another embodiment of the present invention. This relates to method (2) of FIG. 16A.

도 20을 참조하면, 장치는 프로모션의 후보가 될 상품 및 고객과 연관된 구매가능성 지표에 대한 데이터를 획득하고 나면, 상품을 열로, 고객을 행으로 하는 행렬을 생성한다(S2010). 행렬의 빈칸에는 상품-고객 간의 구매가능성 지표가 입력되도록 한다. Referring to FIG. 20, after acquiring data on a product to be a promotion candidate and a purchaseability index associated with a customer, the apparatus generates a matrix in which the product is a column and the customer is a row (S2010). In the blanks of the matrix, a purchaseability index between product and customer is entered.

그리고는, 장치는 각 열에 대한 구매가능성 합계를 산출한다(S2020). 그리고는, 구매가능성 합계가 큰 순으로 고객을 순위화하여 추천하고자 하는 고객의 수만큼, 구매가능성 합계 순위가 높은 고객을 선택하고, 나머지 고객은 삭제하여 행렬을 재구성한다(S2030). Then, the device calculates the sum of purchase possibilities for each column (S2020). Then, the customers are ranked in the order of the highest total purchase probability, and as many as the number of customers to be recommended, customers with a higher total purchase probability are selected, and the remaining customers are deleted to reconstruct the matrix (S2030).

고객이 선택되고 나면, 장치는 각 행에 대한 상품별 부분합을 산출한다(S2040). 그리고는, 상품별 부분합이 큰 순서로 순위화한 후, 프로모션 대상으로 하고자 하는 상품의 수만큼 구매가능성 부분합 순위가 높은 상품을 선택하고 나머지 상품들을 제외시킨다(S2050).After the customer is selected, the device calculates a subtotal for each product for each row (S2040). Then, after ranking the subtotals for each product in a large order, a product having a higher purchaseability subtotal ranking as many as the number of products to be promoted is selected and the remaining products are excluded (S2050).

고객 그룹과 상품 그룹에 대한 선택이 완료되면, 장치는 해당 고객 그룹을 대상으로 해당 상품 그룹을 패키지로 형성하여 프로모션을 실시한다(S2060).When the selection of the customer group and the product group is completed, the device forms the product group as a package targeting the customer group and performs promotion (S2060).

도 21a 내지 도 21c는 도 20의 바스켓 추천 방법의 각 단계별 행렬 생성 방법을 구체적으로 설명하기 위한 테이블이다. 21A to 21C are tables for explaining in detail a method of generating a matrix for each step of the basket recommendation method of FIG. 20.

도 21a를 참조하면, 장치는 고객 1 내지 고객 5와 상품 1 내지 상품 6에 대한 구매가능성 지표를 기반으로 고객을 행으로, 상품을 열로 구성하여 행렬을 생성한다.Referring to FIG. 21A, the apparatus generates a matrix by configuring customers as rows and products as columns based on purchaseability indicators for customers 1 to 5 and products 1 to 6.

도 21b를 참조하면, 장치는 열에 대한 합산을 통해, 고객별 부분합을 계산하여 순위를 매긴다. 도 21b의 실시예에 따르면, 고객 1이 77의 값으로 1위, 고객 3이 73의 값으로 2위, 고객 4가 72의 값으로 3위가 된다.Referring to FIG. 21B, the device ranks by calculating a subtotal for each customer through the summation of columns. According to the embodiment of FIG. 21B, customer 1 is ranked first with a value of 77, customer 3 is ranked second with a value of 73, and customer 4 is ranked third with a value of 72.

도 21c를 참조하면, 상위 3명의 고객(고객 1, 고객 3 및 고객 4)을 선정하고, 행에 대한 합산을 수행하여 상품별 부분합을 산출한다. 그리고는, 그에 대한 순위를 매긴다. 도 21c의 실시예 따르면, 상품 2가 47의 값으로 1위, 상품3이 41의 값으로 2위, 상품 5가 37의 값으로 3위가 된다. Referring to FIG. 21C, the top three customers (customer 1, customer 3, and customer 4) are selected, and a subtotal for each product is calculated by adding up the rows. Then, rank them. According to the embodiment of FIG. 21C, product 2 is ranked first with a value of 47, product 3 is ranked second with a value of 41, and product 5 is ranked third with a value of 37.

이에, 장치는, 고객 1, 고객 3 및 고객 4를 프로모션 대상 고객으로 선정하고, 상품 2, 상품 3 및 상품 5를 프로모션 대상 상품으로 선정하여 프로모션을 진행한다. Accordingly, the device selects customer 1, customer 3, and customer 4 as target customers for promotion, and selects product 2, product 3, and product 5 as promotion target products to perform promotion.

도 17의 실시예에 따른 상품 기반 추천 방법과 도 19의 실시예에 따른 고객 기반 추천 방법에 따르면, 프로모션 고객은 동일하나 상품이 달라지는 결과가 나온다. 이와 같이, 어느 방법을 사용하는지에 따라 그 결과는 전혀 다르게 나올 수 있다.According to the product-based recommendation method according to the exemplary embodiment of FIG. 17 and the customer-based recommendation method according to the exemplary embodiment of FIG. 19, the promotional customer is the same but the product is different. As such, depending on which method you use, the results can be completely different.

도 22는 본 발명의 일 실시예에 따른 그래프 데이터베이스 기반의 상품추천 방법 및 상품 바스켓 추천 방법을 사용하는 장치를 개략적으로 나타낸 블록도이다. 도 22에 도시된 바와 같이, 본 발명의 일 실시예에 따른 상품추천 장치는 통신부(2210), 디스플레이부(2220), 프로세서(2230), 메모리(2240) 및 입력부(2250)를 포함할 수 있다.22 is a block diagram schematically illustrating an apparatus using a product recommendation method based on a graph database and a product basket recommendation method according to an embodiment of the present invention. As shown in FIG. 22, the product recommendation device according to an embodiment of the present invention may include a communication unit 2210, a display unit 2220, a processor 2230, a memory 2240, and an input unit 2250. .

도 22를 참조하면, 통신부(2210)는 네트워크와 연결되어 타 장치와 통신을 위한 구성요소이다. 통신부(2210)는 안테나, 통신 관련 칩(chip) 등으로 구현될 수 있다.Referring to FIG. 22, the communication unit 2210 is a component for communication with other devices by being connected to a network. The communication unit 2210 may be implemented with an antenna, a communication related chip, or the like.

디스플레이부(2220)는 통신부(2210)를 통해 입출력되는 정보 및 프로세서(2230)를 통해 처리되는 정보를 디스플레이하는 구성요소이다. 이는, 모니터, TV 및 기타 패널 중 하나로 구현될 수 있다. The display unit 2220 is a component that displays information input/output through the communication unit 2210 and information processed through the processor 2230. This can be implemented with one of a monitor, a TV and other panels.

프로세서(2230)는 본 발명의 일 실시예에 따른 그래프 기반의 유사성 판단 및 상품 바스켓 추천 알고리즘을 실행하는 구성요소이다. 이는 마이크로 프로세서로 구현될 수 있다. 프로세서(2230)는 통신부(2210)를 통해 입력되는 주문 이력 데이터 및 조회 이력 데이터를 기반으로 그래프 형태의 데이터로 변환하고, 클라이언트로부터의 유사상품에 대한 질의에 대응하여 변환된 그래프 형태의 데이터를 이용하여 유사상품 및 유사고객에 대한 정보를 반환한다. 이때, 제 1 노드로부터 제 2 노드까지의 연결경로(이는 일정 범위의 거리를 갖는 것으로 제한될 수 있음)의 갯수를 기반으로 가장 유사도가 높은 순으로 상품 및/또는 고객을 정렬하여 반환할 수 있다. The processor 2230 is a component that executes a graph-based similarity determination and product basket recommendation algorithm according to an embodiment of the present invention. This can be implemented with a microprocessor. Processor 2230 converts the data in graph form based on order history data and inquiry history data input through the communication unit 2210, and uses the data in graph form converted in response to a query for similar products from a client. This returns information on similar products and similar customers. At this time, products and/or customers may be sorted and returned in the order of the highest similarity based on the number of connection paths from the first node to the second node (this may be limited to having a certain range of distances). .

또한, 프로세서(2230)는 제 1 상품 조회 이전 또는 이후의 일정 범위 내의 페이지에서 검색이 가장 많이 된 상품 순으로 정렬하여 반환할 수 있다. 반환된 결과 데이터는 디스플레이부(2220)를 통해 표시될 수도 있고, 통신부(2210)를 통해 요청된 단말로 제공될 수도 있다.Also, the processor 2230 may sort and return products in the order of the most searched products in pages within a certain range before or after the first product search. The returned result data may be displayed through the display unit 2220 or may be provided to a terminal requested through the communication unit 2210.

프로세서(2230)는 그래프 기반의 유사도 정보 또는 기타 다른 유사성 지표를 기반으로 하는 개별 상품과 개별 고객의 구매가능성 지표 관련 정보를 획득하여 고객과 상품을 각각 열과 행으로 하는 행렬을 생성한다. 그리고는, 생성된 행렬의 행 및 열의 부분합을 산출하고, 산출된 값을 순위화하여 특정 고객 그룹에 최적의 상품 패키지를 생성함에 의해 적절한 프로모션이 이루어지도록 할 수 있다.The processor 2230 obtains graph-based similarity information or other similarity index-based information on purchaseability indexes of individual products and individual customers, and generates a matrix in which the customer and product are each column and row. Then, by calculating a subtotal of rows and columns of the generated matrix, ranking the calculated values, and generating an optimal product package for a specific customer group, appropriate promotion may be performed.

본 발명의 실시예에 따르면, 프로세서(2230)는 인공지능 모델 학습 모듈(미도시) 및 인공지능 모델 실행 모듈(미도시)을 포함하여, 그래프 기반의 유사성 판단의 정확도를 높이기 위한 인공지능 모델을 학습시키고, 학습된 인공지능 모델을 실행하여 실제 상품 추천의 정확도를 제고시킬 수 있다.According to an embodiment of the present invention, the processor 2230 includes an artificial intelligence model learning module (not shown) and an artificial intelligence model execution module (not shown), and provides an artificial intelligence model for increasing the accuracy of graph-based similarity determination. It is possible to improve the accuracy of product recommendation by training and executing the learned artificial intelligence model.

메모리(2240)는 프로세서(2230)에서 실행되는 프로그램의 지시어를 저장하는 저장소이다. 메모리(2240)는 통신부(2210)를 통해 수신 또는 송신되는 정보를 저장한다. 또한, 프로세서(2230)를 통해 처리되는 정보 중 적어도 일부를 저장할 수 있다.The memory 2240 is a storage for storing instructions of a program executed by the processor 2230. The memory 2240 stores information received or transmitted through the communication unit 2210. Also, at least some of the information processed by the processor 2230 may be stored.

입력부(2250)는 사용자의 입력을 입력받는 구성요소로써, 키보드, 마우스, 터치패널 등으로 구현될 수 있다. 입력부(2250)를 통해 최적 상품 추천과 관련된 각종 파라미터를 직접 입력받을 수 있다.The input unit 2250 is a component that receives a user's input and may be implemented as a keyboard, a mouse, a touch panel, or the like. Various parameters related to optimal product recommendation may be directly input through the input unit 2250.

이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 시스템, 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The system or device described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the systems, devices, and components described in the embodiments include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA). ), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, such as one or more general purpose computers or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, those of ordinary skill in the art, the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to behave as desired or processed independently or collectively. You can command the device. Software and/or data may be interpreted by a processing device or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

실시예들에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiments may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of the program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited embodiments and drawings, various modifications and variations are possible from the above description by those of ordinary skill in the art. For example, the described techniques are performed in a different order from the described method, and/or components such as a system, structure, device, circuit, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and claims and equivalents fall within the scope of the claims to be described later.

Claims (18)

상품 추천 장치의, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법에 있어서,
복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하는 단계;
상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하는 단계;
상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬을 생성하는 단계, 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임;
상기 행렬의 개별 행에 대하여, 적어도 둘 이상의 고객들의 구매가능성 지표의 제 1 부분합을 산출하는 단계;
상기 산출된 제 1 부분합을 순위화하는 단계;
제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품들을 선택하는 단계;
상기 행렬의 개별 열에 대하여, 상기 선택된 상품들에 대한 고객별 제 2 부분합을 산출하는 단계;
상기 산출된 제 2 부분합을 순위화하는 단계;
제 1 고객 수만큼 제 2 부분합 순위가 높은 고객들을 선택하는 단계;
상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 단계를 포함하는 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
In a product recommendation method between a group customer and a group product in an e-commerce system of a product recommendation device,
Receiving data of a plurality of products available for purchase in a plurality of online shopping malls and a plurality of customers associated with purchases through the online shopping mall;
Obtaining an individual product and a purchaseability index of an individual customer based on the received data;
Generating a matrix by configuring at least two or more of the plurality of products as a column and at least two or more of the plurality of customers as a row, and some of the plurality of customers are the plurality of products Has a relationship with some of them, and the content included in the blanks of the matrix is a purchaseability index between products and customers;
For each row of the matrix, calculating a first subtotal of at least two or more customers' purchaseability indicators;
Ranking the calculated first subtotals;
Selecting products having a higher first subtotal ranking by the number of first products;
Calculating a second subtotal for each customer for the selected products for individual columns of the matrix;
Ranking the calculated second subtotals;
Selecting customers having a higher second subtotal ranking by the number of first customers;
A product recommendation method between a group customer and a group product in an e-commerce system comprising the step of performing a promotion on the selected products to the selected customers using an online shopping mall.
제 1 항에 있어서,
상기 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품을 선택하는 단계는, 상기 제 1 부분합 순위가 높은 상품을 선택하고 나머지 상품을 삭제하여 행렬을 재구성하는 단계를 포함하고,
상기 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객을 선택하는 단계는 상기 제 2 부분합 순위가 높은 고객을 선택하고 나머지 고객을 삭제하는 단계를 포함하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 1,
Selecting a product having a high first subtotal ranking as much as the number of first products includes reconfiguring a matrix by selecting a product having a high first subtotal ranking and deleting the remaining products,
The step of selecting a customer with a higher second subtotal ranking as much as the number of first customers includes selecting a customer with a higher second subtotal ranking and deleting the remaining customers, between a group customer and a group product in an e-commerce system. How to recommend products.
제 1 항에 있어서,
상기 구매가능성 지표는 상품 노드 계층, 주문 노드 계층 및 고객 노드 계층으로 구성된 그래프 형태의 데이터에서의 연결경로의 수를 포함하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 1,
The purchaseability index includes the number of connection paths in graph-type data consisting of a product node hierarchy, an order node hierarchy, and a customer node hierarchy, wherein the product recommendation method between a group customer and a group product in an e-commerce system.
제 3 항에 있어서, 상기 그래프 형태의 데이터는
제 1 노드 계층의 제 1 노드를 중심으로 제 2 노드 계층의 적어도 하나의 제 2 노드가 연결되고; 그리고,
상기 적어도 하나의 제 2 노드에 제 3 노드 계층의 제 3 노드가 연결됨에 따라, 방사형의 그래프 형태로 생성되는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 3, wherein the data in the form of a graph
At least one second node of the second node layer is connected around the first node of the first node layer; And,
As a third node of a third node hierarchy is connected to the at least one second node, a product recommendation method between a group customer and a group product in an e-commerce system is generated in the form of a radial graph.
제 3 항에 있어서,
상기 적어도 하나의 상품 노드 계층의 노드들 및 적어도 하나의 고객 노드 계층의 노드들 중 적어도 두 노드가 연결될 수 있는 연결경로의 갯수를 상기 구매가능성 지표로써 사용하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 3,
Group customers and groups in an e-commerce system using the number of connection paths to which at least two of the nodes of the at least one product node layer and nodes of the at least one customer node layer can be connected as the purchaseability index How to recommend products between products.
제 1 항에 있어서,
상기 구매가능성 지표는 유사도 기반의 상품 추천 알고리즘을 이용하여 산출된 값인, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 1,
The purchaseability index is a value calculated using a similarity-based product recommendation algorithm, a method for recommending a product between a group customer and a group product in an e-commerce system.
제 1 항에 있어서,
상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계는,
상기 선택된 고객들에게 상기 선택된 상품들을 상기 온라인 쇼핑몰의 첫 번째 웹 페이지의 제 1 영역에 배치하여 디스플레이하는 단계를 포함하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 1,
Promoting the selected products to the selected customers using an online shopping mall,
And arranging and displaying the selected products in a first area of a first web page of the online shopping mall to the selected customers.
제 1 항에 있어서,
상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계는,
상기 선택된 고객들에게만 상기 선택된 상품들을 할인하여 판매하는 단계를 포함하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 1,
Promoting the selected products to the selected customers using an online shopping mall,
A method of recommending a product between a group customer and a group product in an e-commerce system, comprising the step of discounting and selling the selected products only to the selected customers.
전자상거래 시스템에서의 상품 추천 장치에 있어서,
유선 및 무선 네트워크 중 적어도 하나와 통신하는 통신부;
상기 통신부를 통해 복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하고, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하며, 상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬 - 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임 - 을 생성하며, 상기 행렬의 개별 행에 대하여, 적어도 둘 이상의 고객들의 구매가능성 지표의 제 1 부분합을 산출하여 순위화하고, 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품들을 선택하며, 상기 행렬의 개별 열에 대하여, 상기 선택된 상품들에 대한 고객별 제 2 부분합을 산출하여 순위화하고, 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객들을 선택함에 의해, 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 프로세서를 포함하는 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 장치.
In the product recommendation device in an e-commerce system,
A communication unit that communicates with at least one of wired and wireless networks;
Through the communication unit, a plurality of products available for purchase in a plurality of online shopping malls and data of a plurality of customers related to purchase through the online shopping mall are received, and a purchase possibility index of individual products and individual customers is calculated based on the received data. Obtained, and a matrix consisting of at least two or more of the plurality of products as a column and at least two or more of the plurality of customers as a row-Some of the plurality of customers are among the plurality of products It has a relationship with a part, and the content included in the blank space of the matrix is a purchaseability index between the product and the customer-and for each row of the matrix, the first subsum of the purchaseability index of at least two customers Calculate and rank products, select products with a first subtotal ranking as high as the number of first products, calculate and rank a second subtotal for each customer for the selected products with respect to individual columns of the matrix, Group customers in an e-commerce system including a processor for performing promotions using an online shopping mall for the selected products for the selected customers by selecting customers with a second subtotal ranking as high as the number of customers A device for recommending a product between a group and a group product.
상품 추천 장치의, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법에 있어서,
복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하는 단계;
상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하는 단계;
상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬을 생성하는 단계, 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임;
상기 행렬의 개별 열에 대하여, 적어도 둘 이상의 상품들에 대한 구매가능성 지표의 제 1 부분합을 산출하는 단계;
상기 산출된 제 1 부분합 값을 갖는 상품을 순위화하는 단계;
제 1 고객 수만큼 제 1 부분합 순위가 높은 고객들을 선택하는 단계;
상기 행렬의 개별 열에 대하여, 상기 선택된 고객들에 대한 상품별 제 2 부분합을 산출하는 단계;
상기 산출된 제 2 부분합을 순위화하는 단계;
제 1 상품 개수만큼 제 2 부분합 순위가 높은 상품들을 선택하는 단계;
상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 단계를 포함하는 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
In a product recommendation method between a group customer and a group product in an e-commerce system of a product recommendation device,
Receiving data of a plurality of products available for purchase in a plurality of online shopping malls and a plurality of customers associated with purchases through the online shopping mall;
Obtaining an individual product and a purchaseability index of an individual customer based on the received data;
Generating a matrix by configuring at least two or more of the plurality of products as a column and at least two or more of the plurality of customers as a row, and some of the plurality of customers are the plurality of products Has a relationship with some of them, and the content included in the blanks of the matrix is a purchaseability index between products and customers;
For each column of the matrix, calculating a first subtotal of a purchaseability index for at least two products;
Ranking products having the calculated first subtotal value;
Selecting customers having a higher first subtotal ranking by the number of first customers;
Calculating a second subtotal for each product for the selected customers for individual columns of the matrix;
Ranking the calculated second subtotals;
Selecting products having a higher second subtotal ranking by the number of first products;
A product recommendation method between a group customer and a group product in an e-commerce system comprising the step of performing a promotion on the selected products for the selected customers using an online shopping mall.
제 10 항에 있어서,
상기 제 1 고객 수만큼 제 1 부분합 순위가 높은 고객들을 선택하는 단계는, 상기 제 1 부분합 순위가 높은 고객들을 선택하고 나머지 상품을 삭제하여 행렬을 재구성하는 단계를 포함하고,
상기 제 1 상품 개수만큼 제 2 부분합 순위가 높은 상품들을 선택하는 단계는 상기 제 2 부분합 순위가 높은 상품들을 선택하고 나머지 상품을 삭제하는 단계를 포함하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 10,
The selecting of customers having a higher first subtotal ranking as many as the number of first customers comprises reconfiguring a matrix by selecting customers with a higher first subtotal ranking and deleting the remaining products,
The step of selecting the products with the second subtotal ranking as high as the number of the first products includes selecting products with the second subtotal ranking and deleting the remaining products, between a group customer and a group product in an e-commerce system. How to recommend products.
제 10 항에 있어서,
상기 구매가능성 지표는 상품 노드 계층, 주문 노드 계층 및 고객 노드 계층으로 구성된 그래프 형태의 데이터에서의 연결경로의 수를 포함하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 10,
The purchaseability index includes the number of connection paths in graph-type data consisting of a product node hierarchy, an order node hierarchy, and a customer node hierarchy, wherein the product recommendation method between a group customer and a group product in an e-commerce system.
제 12 항에 있어서, 상기 그래프 형태의 데이터는
제 1 노드 계층의 제 1 노드를 중심으로 제 2 노드 계층의 적어도 하나의 제 2 노드가 연결되고; 그리고,
상기 적어도 하나의 제 2 노드에 제 3 노드 계층의 제 3 노드가 연결됨에 따라, 방사형의 그래프 형태로 생성되는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 12, wherein the data in the form of a graph
At least one second node of the second node layer is connected around the first node of the first node layer; And,
As a third node of a third node hierarchy is connected to the at least one second node, a product recommendation method between a group customer and a group product in an e-commerce system is generated in the form of a radial graph.
제 12 항에 있어서,
상기 적어도 하나의 상품 노드 계층의 노드들 및 적어도 하나의 고객 노드 계층의 노드들 중 적어도 두 노드가 연결될 수 있는 연결경로의 갯수를 상기 구매가능성 지표로써 사용하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 12,
Group customers and groups in an e-commerce system using the number of connection paths to which at least two of the nodes of the at least one product node layer and nodes of the at least one customer node layer can be connected as the purchaseability index How to recommend products between products.
제 10 항에 있어서,
상기 구매가능성 지표는 유사도 기반의 상품 추천 알고리즘을 이용하여 산출된 값인, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 10,
The purchaseability index is a value calculated using a similarity-based product recommendation algorithm, a method for recommending a product between a group customer and a group product in an e-commerce system.
제 10 항에 있어서,
상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계는,
상기 선택된 고객들에게 상기 선택된 상품들을 상기 온라인 쇼핑몰의 첫 번째 웹 페이지의 제 1 영역에 배치하여 디스플레이하는 단계를 포함하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 10,
Promoting the selected products to the selected customers using an online shopping mall,
And arranging and displaying the selected products in a first area of a first web page of the online shopping mall to the selected customers.
제 10 항에 있어서,
상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계는,
상기 선택된 고객들에게만 상기 선택된 상품들을 할인하여 판매하는 단계를 포함하는, 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 방법.
The method of claim 10,
Promoting the selected products to the selected customers using an online shopping mall,
A method of recommending a product between a group customer and a group product in an e-commerce system, comprising the step of discounting and selling the selected products only to the selected customers.
전자상거래 시스템에서의 상품 추천 장치에 있어서,
유선 및 무선 네트워크 중 적어도 하나와 통신하는 통신부;
상기 통신부를 통해 복수의 온라인 쇼핑몰의 구매가능한 복수의 상품들과 상기 온라인 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하고, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하며, 상기 복수의 상품들 중 적어도 둘 이상을 열(column)로, 상기 복수의 고객들 중 적어도 둘 이상을 행(row)으로 구성하여 행렬 - 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임 - 을 생성하며, 상기 행렬의 개별 열에 대하여, 적어도 둘 이상의 상품객들의 구매가능성 지표의 제 1 부분합을 산출하여 순위화하고, 제 1 고객 수만큼 제 1 부분합 순위가 높은 고객들을 선택하며, 상기 행렬의 개별 행에 대하여, 상기 선택된 고객들에 대한 상품별 제 2 부분합을 산출하여 순위화하고, 제 1 상품 개수만큼 제 2 부분합 순위가 높은 상품들을 선택함에 의해, 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 온라인 쇼핑몰을 이용하여 프로모션(promotion)을 실시하는 프로세서를 포함하는 전자상거래 시스템에서의 그룹 고객과 그룹 상품 간의 상품 추천 장치.

In the product recommendation device in an e-commerce system,
A communication unit that communicates with at least one of wired and wireless networks;
Through the communication unit, a plurality of products available for purchase in a plurality of online shopping malls and data of a plurality of customers related to purchase through the online shopping mall are received, and a purchase possibility index of individual products and individual customers is calculated based on the received data. Obtained, and a matrix consisting of at least two or more of the plurality of products as a column and at least two or more of the plurality of customers as a row-Some of the plurality of customers are among the plurality of products It has a relationship with a part, and the content included in the blank space of the matrix is the purchaseability index between the product and the customer-and, for each column of the matrix, the first subsum of the purchaseability index of at least two product customers Calculate and rank, select customers with a first subtotal ranking as high as the number of first customers, calculate and rank a second subtotal for each product for the selected customers for each row of the matrix, and rank the first product Group customers in an e-commerce system including a processor for performing promotions using an online shopping mall for the selected products targeting the selected customers by selecting products with a higher second subtotal ranking by the number of Product recommendation device between group products.

KR1020190004741A 2019-01-14 2019-01-14 Item recommendataion method and apparatus between group member and group item KR102193345B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190004741A KR102193345B1 (en) 2019-01-14 2019-01-14 Item recommendataion method and apparatus between group member and group item

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190004741A KR102193345B1 (en) 2019-01-14 2019-01-14 Item recommendataion method and apparatus between group member and group item

Publications (2)

Publication Number Publication Date
KR20200088132A KR20200088132A (en) 2020-07-22
KR102193345B1 true KR102193345B1 (en) 2020-12-21

Family

ID=71893224

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190004741A KR102193345B1 (en) 2019-01-14 2019-01-14 Item recommendataion method and apparatus between group member and group item

Country Status (1)

Country Link
KR (1) KR102193345B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102653642B1 (en) * 2020-10-27 2024-04-01 주식회사 이너아워 Method, computer program, and server for recommending goods
CN117150150B (en) * 2023-10-31 2024-02-09 中国科学技术大学 Group recommendation method based on graph signal processing

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101129538B1 (en) * 2009-12-10 2012-03-29 동국대학교 산학협력단 Apparatus and method for product recommendation
KR20140056731A (en) * 2012-10-31 2014-05-12 에스케이플래닛 주식회사 Purchase recommendation service system and method

Also Published As

Publication number Publication date
KR20200088132A (en) 2020-07-22

Similar Documents

Publication Publication Date Title
KR102246538B1 (en) Item recommendation method and apparatus using graph database
KR101993771B1 (en) Chatbot searching system and program
JP6511455B2 (en) Method and system for extracting features of user behavior and personalizing recommendations
CN103914492B (en) Query word fusion method, merchandise news dissemination method and searching method and system
CN104679771B (en) A kind of individuation data searching method and device
JP5897019B2 (en) Method and apparatus for determining linked list of candidate products
CN103699700B (en) A kind of generation method of search index, system and associated server
JP5859606B2 (en) Ad source and keyword set adaptation in online commerce platforms
JP6679451B2 (en) Selection device, selection method, and selection program
KR102142126B1 (en) Hierarchical Category Cluster Based Shopping Basket Associated Recommendation Method
CN108153792A (en) A kind of data processing method and relevant apparatus
KR102193345B1 (en) Item recommendataion method and apparatus between group member and group item
KR102533180B1 (en) System for increasing open market product sales and efficient operation
KR102538398B1 (en) Method, Apparatus and System for Recommendation in Groups Using Bigdata
KR102518389B1 (en) Method, Apparatus and System for Item Recommendation Using Consumer Bigdata
KR20210032691A (en) Method and apparatus of recommending goods based on network
CN110264277A (en) Data processing method and device, medium and the calculating equipment executed by calculating equipment
KR20220001616A (en) Method, Apparatus and System for Constructing Bigdata Based on Generating United Identifier of Customer
Ping et al. User consumption intention prediction in meituan
KR102381757B1 (en) Platform and method for intermediating packaging
KR20160117678A (en) Product registration and recommendation method in curation commerce
WO2020016204A1 (en) Determining item relevancy
JP2024028172A (en) Service providing device and method for providing search path
JP7001380B2 (en) Information processing systems, information processing methods, and programs
KR20220085470A (en) Online Shopping Mall Contents Producing Devices and Systems Using Tracking Data

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