KR102518389B1 - Method, Apparatus and System for Item Recommendation Using Consumer Bigdata - Google Patents

Method, Apparatus and System for Item Recommendation Using Consumer Bigdata Download PDF

Info

Publication number
KR102518389B1
KR102518389B1 KR1020200079823A KR20200079823A KR102518389B1 KR 102518389 B1 KR102518389 B1 KR 102518389B1 KR 1020200079823 A KR1020200079823 A KR 1020200079823A KR 20200079823 A KR20200079823 A KR 20200079823A KR 102518389 B1 KR102518389 B1 KR 102518389B1
Authority
KR
South Korea
Prior art keywords
customer
product
personal information
node
products
Prior art date
Application number
KR1020200079823A
Other languages
Korean (ko)
Other versions
KR20220001617A (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 KR1020200079823A priority Critical patent/KR102518389B1/en
Priority to PCT/KR2021/008120 priority patent/WO2022005140A1/en
Publication of KR20220001617A publication Critical patent/KR20220001617A/en
Application granted granted Critical
Publication of KR102518389B1 publication Critical patent/KR102518389B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Software Systems (AREA)
  • Game Theory and Decision Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

고객 빅데이터를 활용한 상품 추천 방법, 장치 및 시스템이 개시되어 있다. 상품 추천 방법은 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고, 복수 개의 쇼핑몰로부터 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하고, 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하고, 그래프 형태의 데이터를 데이터베이스에 저장하고, 저장된 그래프 형태의 데이터를 기반으로 하여 유사상품에 대한 질의에 대응하여 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환할 수 있다. 따라서, 고객에게 개인별로 특화된 상품 추천을 수행할 수 있다.A product recommendation method, device, and system using customer big data are disclosed. The product recommendation method receives a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from a plurality of shopping malls, and generates an integrated customer identifier for each customer based on the plurality of personal information element groups. and collects order history data of a plurality of customers identified as a plurality of integrated customer identifiers from a plurality of shopping malls, converts the collected order history data into graph-type data consisting of at least three node hierarchies, and graph-type data is stored in the database, and the similarity is determined based on the number of connection paths between at least two nodes among nodes included in at least three node hierarchies in response to queries about similar products based on the stored graph-type data and returned. can do. Accordingly, it is possible to recommend products customized for each customer.

Description

고객 빅데이터를 활용한 상품 추천 방법, 장치 및 시스템 {Method, Apparatus and System for Item Recommendation Using Consumer Bigdata}Product recommendation method, apparatus and system using customer big data {Method, Apparatus and System for Item Recommendation Using Consumer Bigdata}

본 발명은 고객 빅데이터를 활용한 상품 추천 방법, 장치 및 시스템에 관한 것으로, 복수 개의 쇼핑몰들로부터 빅데이터를 구축하고 이를 기반으로 하여 고객에게 최적화된 상품 추천을 수행할 수 있는 빅데이터를 활용한 상품 추천 방법에 관한 것이다.The present invention relates to a product recommendation method, apparatus, and system using customer big data, which builds big data from a plurality of shopping malls and uses big data to recommend products optimized for customers based on it. It is about product recommendation method.

일반적으로, 인터넷을 기반으로 하는 온라인을 기반으로 하는 전자상거래에서 마케팅은 빼 놓을 수 없는 성공 요인이다. 이러한 인터넷을 이용한 종래의 마케팅 방식으로는 이메일 서비스, 검색 서비스 및 전자상거래 서비스 등을 제공하는 포털 사이트 또는 전자상거래 사이트 등의 웹페이지 상에 배너 광고나 이미지 광고 등을 노출시켜 사용자가 해당 광고를 클릭하면 링크된 광고주의 서버로 연결되도록 한다.In general, marketing is an indispensable success factor in online-based e-commerce. As a conventional marketing method using the Internet, a banner advertisement or image advertisement is exposed on a web page such as a portal site or an e-commerce site that provides e-mail service, search service, and e-commerce service, etc., and the user clicks the advertisement. If so, it is connected to the server of the linked advertiser.

그런데, 이러한 종래의 마케팅 방식은 인터넷 사용자의 거주지역, 연령, 취향 등의 구분 없이 불특정 다수에게 광고 콘텐츠를 일괄적으로 제공하므로 고객의 입장에서는 광고가 오히려 노이즈 정보로 인식되어 짜증을 유발하고 광고 효과도 미미한 문제가 있다.However, since these conventional marketing methods collectively provide advertisement contents to an unspecified number of Internet users regardless of their region of residence, age, taste, etc., customers perceive advertisements as rather noise information, causing irritation and advertising effect. There are also minor problems.

이에 따라, 타겟 광고 기술이 활발히 개발되고 있다. 예를 들어, 한국특허공개 제2013-0157475호는 사용자에게 광고 환경 설정 인터페이스를 제공하고, 사용자로부터 광고 환경 설정 정보를 수집하는 기준 정보 수집부 및 수집된 광고 Accordingly, target advertising technology is being actively developed. For example, Korea Patent Publication No. 2013-0157475 discloses a standard information collection unit that provides an advertisement environment setting interface to users and collects advertisement environment setting information from users and collected advertisements.

환경 설정 정보를 기초로 하여 후보 광고를 검출하고, 검출된 후보 광고 중 광고 슬롯 별 노출 광고를 선택하여 편성하는 광고 관리부를 포함하는 타겟 광고 제공 장치 등의 기술을 개시하고 있다.A technology such as a target advertisement providing device including an advertisement management unit that detects candidate advertisements based on environment setting information and selects and organizes exposure advertisements for each advertisement slot among the detected candidate advertisements is disclosed.

그러나, 이러한 종래의 타겟 광고 제공 기술은 고객이 노출될 광고나 노출을 차단할 광고들의 카테고리를 환경 설정 인터페이스를 통하여 일일이 설정하여야 하므로 번거로우며, 카테고리 별 설정을 기반으로 하므로 타겟 광고의 정확도도 떨어지므로, 실제 타겟 광고의 활용성도 높지 않은 것이 사실이다.However, such a conventional technology for providing targeted advertisements is cumbersome because the customer has to set each category of advertisements to be exposed or advertisements to be blocked through the environment setting interface, and since it is based on setting by category, the accuracy of target advertisements is also low. It is true that the actual utilization of targeted advertising is not high.

또한, 종래의 타겟 광고 제공 기술은 고객 정보를 수집하기 위한 링크를 각각의 웹 페이지 내의 내부프레임(I-Frame)에 삽입하여 사용자 단말기와 사용자 정보 수집 서버와 연결되는 방식을 사용하나 이는 보안 및 네트워크 로드 측면에서 효율적이지 못하며, 쇼핑몰 사업자 마다 각기 다른 정보 수집 방식을 사용하므로 수집 정보가 한정적이고 데이터의 량도 많지 않아 정확도도 떨어지는 문제를 내포하고 있다.In addition, the conventional technology for providing targeted advertisements uses a method of connecting a user terminal and a user information collection server by inserting a link for collecting customer information into an internal frame (I-Frame) in each web page, but this method is used for security and network It is not efficient in terms of load, and since each shopping mall operator uses a different information collection method, the collection information is limited and the amount of data is not large, so the accuracy is low.

따라서, 전자상거래 기반의 복수 개의 쇼핑몰로부터 빅데이터를 용이하게 획득할 수 있도록 하고, 빅데이터에 기반하여 고객이 원하는 신뢰성 있는 상품 정보를 고객에게 적합한 방식으로 추천할 수 있는 새로운 기법의 마케팅 기술의 개발이 시급히 요구되고 있는 실정이다.Therefore, the development of a new marketing technology that can easily acquire big data from a plurality of e-commerce-based shopping malls and recommend reliable product information that customers want based on big data in a way suitable for customers. This is an urgent need.

제2013-0157475호No. 2013-0157475

본 발명은 이러한 문제점을 해결하기 위한 것으로서, 복수 개의 쇼핑몰들로부터 빅데이터를 구축하고 구축된 빅데이터를 기반으로 하여 고객에게 최적화된 상품 추천을 수행할 수 있는 빅데이터를 활용한 상품 추천 방법, 장치 및 시스템을 제공하는데 그 목적이 있다.The present invention is to solve this problem, and to build big data from a plurality of shopping malls, and based on the built big data, product recommendation method and apparatus using big data that can perform product recommendation optimized for customers and to provide a system for its purpose.

이러한 목적을 달성하기 위하여 본 발명은 일 측면(Aspect)에서 상품 추천 방법을 제공한다. 상기 상품 추천 방법은, 전자상거래 기반의 복수 개의 쇼핑몰과 연동하는 서버에 의하여 수행되며, 상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하는 단계; 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하는 단계 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-; 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하는 단계; 상기 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하는 단계; 상기 그래프 형태의 데이터를 데이터베이스에 저장하는 단계; 및 상기 저장된 그래프 형태의 데이터를 기반으로 하여, 유사상품에 대한 질의에 대응하여 상기 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환하는 단계를 포함한다.In order to achieve this object, the present invention provides a product recommendation method in one aspect (Aspect). The product recommendation method is performed by a server that interworks with a plurality of e-commerce based shopping malls, and provides a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from the plurality of shopping malls. receiving; generating an integrated customer identifier for each customer based on the plurality of personal information element groups, wherein the same customer in the plurality of shopping malls is identified as one integrated customer identifier; collecting order history data of a plurality of customers identified as the plurality of integrated customer identifiers from the plurality of shopping malls; converting the collected order history data into data in the form of a graph consisting of at least three node hierarchies; storing the data in the form of a graph in a database; and based on the stored data in the form of a graph, determining and returning a degree of similarity based on the number of connection paths between at least two nodes among nodes included in the at least three node hierarchies in response to a query about similar products. includes

상기 복수 개의 개인 정보 요소 그룹에 포함된 개인 정보 요소들은 비식별자화된 개인 정보일 수 있다. 상기 비식별자화된 개인 정보는, 고객 이메일, 고객 이름, 고객 전화번호. 고객 별명, 고객 주소, 고객 생년월일, 고객 성별, 고객 연령 중 적어도 2개 이상과 연관될 수 있다.Personal information elements included in the plurality of personal information element groups may be de-identified personal information. The de-identified personal information includes customer email, customer name, and customer phone number. It may be associated with at least two of customer nickname, customer address, customer date of birth, customer gender, and customer age.

상기 고객별 통합 고객 식별자를 생성하는 단계는, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정하는 단계; 및 상기 제 1 고객에 대응하는 통합 고객 식별자를 생성하는 단계를 포함할 수 있다. 상기 제 1 고객을 특정하는 단계는, 상기 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도를 산출하는 단계; 및 산출된 상기 개인 정보 유사도를 기반으로 하여 상기 제 1 고객을 특정하는 단계를 포함할 수 있다.The generating of the integrated customer identifier for each customer may include specifying a first customer based on the plurality of personal information element groups; and generating an integrated customer identifier corresponding to the first customer. The step of specifying the first customer may include: calculating a personal information similarity between the plurality of personal information element groups; and specifying the first customer based on the calculated personal information similarity.

상기 개인 정보 유사도를 산출하는 단계는, 개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산하는 단계를 포함할 수 있다. 상기 산출된 개인 정보 유사도를 기반으로 하여 상기 제 1 고객을 특정하는 단계는, 산출된 상기 유사도가 정해진 값 이상이면 동일한 고객으로 특정하는 단계를 포함할 수 있다.Calculating the personal information similarity may include calculating the number of personal information elements included in the personal information element group and the number of personal information elements matching between the personal information element groups. Specifying the first customer based on the calculated personal information similarity may include specifying the first customer as the same customer if the calculated similarity is greater than or equal to a predetermined value.

상기 적어도 3개의 노드 계층은 상품과 연관된 제 1 노드 계층, 주문과 연관된 제 2 노드 계층 및 고객과 연관된 제 3 노드 계층을 포함할 수 있다. 상기 유사도를 판단하여 반환하는 단계는, 상기 저장된 그래프 형태의 데이터 상에서, 상기 유사상품에 대한 질의에 대응하여 적어도 하나의 제 1 노드 계층의 노드들 및 적어도 하나의 제 3 노드 계층의 노드들 중 적어도 두 노드 사이의 연결경로의 갯수를 기반으로 상기 유사도를 판단하는 단계를 포함할 수 있다.The at least three node hierarchies may include a first node hierarchy associated with products, a second node hierarchy associated with orders, and a third node hierarchy associated with customers. The step of determining and returning the similarity may include at least one of at least one node of the first node hierarchy and at least one node of the third node hierarchy in response to a query about the similar product, on the stored graph data. The method may include determining the degree of similarity based on the number of connection paths between two nodes.

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

상기 적어도 하나의 제 1 노드 계층의 노드들 및 적어도 하나의 제 3 노드 계층의 노드들 중 적어도 두 노드가 연결될 수 있는 적어도 하나의 연결경로들 중 제 1 거리 범위 내에 속하는 연결경로들을 추출하여 추출된 연결경로의 갯수가 많을수록 유사성의 정도가 높다고 판단할 수 있다.At least two of the nodes of the at least one first node hierarchy and the nodes of the at least one third node hierarchy are extracted by extracting connection paths belonging to a first distance range among at least one connection paths to which at least two nodes can be connected. The higher the number of connection paths, the higher the degree of similarity.

상기 제 1 노드 계층의 상품은 카테고리화되어 상품 카테고리 식별자와 함께 정의될 수 있다. 상기 제 1 노드 계층의 제 1 상품에 대한 유사상품에 대한 질의에 대응하여, 상기 제 1 상품과 직간접적으로 연결된 제 2 노드 계층의 제 2 노드 및 제 3 노드 계층의 제 3 노드 중 적어도 하나와 연관된 상품들 중 제 1 상품의 제 1 상품 카테고리 식별자를 기반으로, 그와 유사의 대응관계를 갖는 제 2 상품 카테고리의 상품만을 연결경로로써 고려할 수 있다.Products of the first node hierarchy may be categorized and defined together with product category identifiers. At least one of a second node of a second node hierarchy and a third node of a third node hierarchy directly or indirectly connected to the first product in response to an inquiry about a similar product to the first product of the first node hierarchy; Among related products, based on the first product category identifier of the first product, only products of a second product category having a similar correspondence thereto may be considered as a connection path.

상기 제 1 노드의 상품은 카테고리화되어 상품 카테고리 식별자와 함께 정의될 수 있다. 상기 제 1 노드의 제 1 상품에 대한 유사상품에 대한 질의에 대응하여, 상기 제 1 상품과 직간접적으로 연결된 제 2 노드 계층의 제 2 노드 및 제 3 노드 계층의 제 3 노드 중 적어도 하나와 연관된 상품들 중 제 1 상품의 제 1 상품 카테고리 식별자를 기반으로, 그와 유사의 대응관계를 갖는 제 2 상품 카테고리의 상품과의 연결경로를 배제할 수 있다.Products of the first node may be categorized and defined together with product category identifiers. Corresponding to the query of the first node for a similar product to the first product, the first product is associated with at least one of a second node of a second node hierarchy and a third node of a third node hierarchy directly or indirectly connected to the first product. Based on the first product category identifier of the first product among the products, a connection path with a product of a second product category having a similar correspondence thereto may be excluded.

상기 제 1 노드의 상품은 카테고리화되어 상품 카테고리 식별자와 함께 정의되고, 상기 제 1 노드의 제 1 상품에 대한 유사상품에 대한 질의에 대응하여, 상기 제 1 상품과 직간접적으로 연결된 제 2 노드 계층의 제 2 노드 및 제 3 노드 계층의 제 3 노드 중 적어도 하나와 연관된 상품들 중 제 1 상품의 제 1 상품 카테고리 식별자를 기반으로, 그와 결합에 의한 대응관계를 갖는 제 3 상품 카테고리의 상품과의 연결경로를 고려할 수 있다.The product of the first node is categorized and defined together with a product category identifier, and in response to a query about a similar product to the first product of the first node, a second node hierarchy directly or indirectly connected to the first product Based on the first product category identifier of the first product among the products associated with at least one of the second node of and the third node of the third node hierarchy, a product of a third product category having a corresponding relationship by combining with the first product category identifier, and connection path can be considered.

상기 연결경로의 갯수를 기반으로 유사도를 판단하여 반환하는 단계는, 연결경로의 갯수를 산정함에 있어서, 직접적으로 연결된 두 노드의 거리를 1 홉(hop)의 거리라고 정의하고, 상기 적어도 하나의 제 1 노드 계층의 노드들 및 상기 적어도 하나의 제 3 노드 계층의 노드들 중 적어도 두 노드 간의 연결경로의 거리를 고려하여 연결경로의 갯수를 조정할 수 있다.In the step of determining and returning the similarity based on the number of connection paths, in calculating the number of connection paths, the distance between two directly connected nodes is defined as a distance of 1 hop, and the at least one first The number of connection paths may be adjusted in consideration of a distance of a connection path between at least two nodes among nodes of the first node layer and at least one node of the third node layer.

상기 제 1 노드 계층의 노드는 p로 정의하고, 상기 제 3 노드 계층의 노드는 m으로 정의하여 유사상품에 대한 질의 및 그에 대응한 노드들 간의 연결경로를 m 및 p 중 하나로 정의되는 노드 계층 식별자와 특정 노드 계층 식별자에 대한 인덱스 번호로 정의하여 쿼리(query)로 생성할 수 있다.A node of the first node hierarchy is defined as p, and a node of the third node hierarchy is defined as m, so that a query for a similar product and a connection path between corresponding nodes are defined as either m or p. and an index number for a specific node layer identifier to create a query.

상기 상품 추천 방법은, 유사도 판단의 정확도를 제고시키기 위한 인공지능 모델을 학습시키는 단계를 더 포함할 수 있다. 상기 유사상품에 대한 질의의 기준이 되는 제 1 노드를 포함하는 제 1 주문 이력 데이터와 유사도 판단에 의해 반환된 유사상품 중 실제 주문이 이루어진 상품과 관련된 제 2 노드를 포함하는 제 2 주문 이력 데이터를 학습 데이터 셋으로 생성하여 상기 인공지능 모델을 학습시킬 수 있다.The product recommendation method may further include training an artificial intelligence model to improve accuracy of similarity determination. First order history data including a first node serving as a criterion for querying similar products and second order history data including a second node related to a product for which an actual order was made among similar products returned by similarity determination The artificial intelligence model can be trained by creating a learning data set.

연결경로의 갯수 산정시, 제 1 거리 범위 내의 연결경로만 산정되되, 상기 학습 데이터 셋을 기반으로, 연결경로 산출의 임계범위가 되는 상기 제 1 거리 범위를 변경하면서 인공지능 모델을 학습시킬 수 있다. 상기 학습 데이터 셋을 기반으로 상품 카테고리 분할의 클래스와 상기 클래스에 대응하는 유사 카테고리 사용 또는 결합에 의한 카테고리 사용 여부를 변경하면서 인공지능 모델을 학습시킬 수 있다.When calculating the number of connection paths, only connection paths within the first distance range are calculated, but based on the learning data set, the artificial intelligence model can be trained while changing the first distance range, which is the critical range of connection path calculation. . Based on the learning data set, an artificial intelligence model may be trained while changing whether to use a class of product category division and a similar category corresponding to the class or a category by combination.

한편, 상술한 본 발명의 목적을 달성하기 위하여 본 발명은 다른 측면에서 상품 추천 장치는 제공한다. 상기 상품 추천 장치는, 유선 및 무선 네트워크 중 적어도 하나와 통신하는 통신부; 상기 통신부를 통하여 상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-, 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하고, 상기 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하고, 상기 그래프 형태의 데이터를 데이터베이스에 저장하고, 상기 저장된 그래프 형태의 데이터를 기반으로 하여, 유사상품에 대한 질의에 대응하여 상기 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환하는 프로세서; 및 상기 프로세서의 동작에 필요한 데이터를 저장하는 메모리를 포함할 수 있다.On the other hand, in order to achieve the above object of the present invention, the present invention provides a product recommendation device in another aspect. The product recommendation device may include a communication unit communicating with at least one of wired and wireless networks; Receiving a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from the plurality of shopping malls through the communication unit, and based on the plurality of personal information element groups, integrated customers for each customer Create an identifier -the same customer in the plurality of shopping malls is identified as one integrated customer identifier-, collect order history data of a plurality of customers identified as the plurality of integrated customer identifiers from the plurality of shopping malls, and collect the converts the order history data into graph-type data composed of at least three node hierarchies, stores the graph-type data in a database, and responds to queries about similar products based on the stored graph-type data a processor for determining and returning a degree of similarity based on the number of connection paths between at least two nodes among nodes included in the at least three node hierarchies; and a memory for storing data necessary for the operation of the processor.

상기 복수 개의 개인 정보 요소 그룹에 포함된 개인 정보 요소들은 비식별자화된 개인 정보일 수 있다. 상기 비식별자화된 개인 정보는, 고객 이메일, 고객 이름, 고객 전화번호. 고객 별명, 고객 주소, 고객 생년월일, 고객 성별, 고객 연령 중 적어도 2개 이상과 연관될 수 있다.Personal information elements included in the plurality of personal information element groups may be de-identified personal information. The de-identified personal information includes customer email, customer name, and customer phone number. It may be associated with at least two of customer nickname, customer address, customer date of birth, customer gender, and customer age.

상기 적어도 3개의 노드 계층은 상품과 연관된 제 1 노드 계층, 주문과 연관된 제 2 노드 계층 및 고객과 연관된 제 3 노드 계층을 포함할 수 있다. 상기 프로세서는, 상기 저장된 그래프 형태의 데이터 상에서, 상기 유사상품에 대한 질의에 대응하여 적어도 하나의 제 1 노드 계층의 노드들 및 적어도 하나의 제 3 노드 계층의 노드들 중 적어도 두 노드 사이의 연결경로의 갯수를 기반으로 상기 유사도를 판단할 수 있다.The at least three node hierarchies may include a first node hierarchy associated with products, a second node hierarchy associated with orders, and a third node hierarchy associated with customers. The processor determines a connection path between at least two nodes among at least one node of the first node hierarchy and at least one node of the third node hierarchy in response to the query about the similar product, on the stored data in the form of a graph. The degree of similarity may be determined based on the number of .

한편, 상술한 본 발명의 목적을 달성하기 위하여 본 발명은 또 다른 측면에서 상품 추천 시스템을 제공한다. 상기 상품 추천 시스템은, 복수 개의 쇼핑몰; 및 상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-, 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하고, 상기 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하고, 상기 그래프 형태의 데이터를 데이터베이스에 저장하고, 상기 저장된 그래프 형태의 데이터를 기반으로 하여, 유사상품에 대한 질의에 대응하여 상기 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환하는 서버를 포함할 수 있다.Meanwhile, in order to achieve the above object of the present invention, the present invention provides a product recommendation system in another aspect. The product recommendation system may include a plurality of shopping malls; and receiving a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from the plurality of shopping malls, and generating an integrated customer identifier for each customer based on the plurality of personal information element groups. And -the same customer in the plurality of shopping malls is identified as one integrated customer identifier-, collects order history data of a plurality of customers identified as the plurality of integrated customer identifiers from the plurality of shopping malls, and the collected order history Convert data into graph-type data composed of at least three node hierarchies, store the graph-type data in a database, and respond to queries about similar products based on the stored graph-type data It may include a server that determines and returns a degree of similarity based on the number of connection paths between at least two nodes among nodes included in the node hierarchy.

한편, 상술한 본 발명의 목적을 달성하기 위하여 본 발명은 또 다른 측면에서 컴퓨터에, 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하는 단계; 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하는 단계 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-; 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하는 단계; 상기 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하는 단계; 상기 그래프 형태의 데이터를 데이터베이스에 저장하는 단계; 및 상기 저장된 그래프 형태의 데이터를 기반으로 하여, 유사상품에 대한 질의에 대응하여 상기 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환하는 단계를 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램을 제공할 수 있다.Meanwhile, in order to achieve the above object of the present invention, in another aspect, the present invention receives a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from a plurality of shopping malls in a computer. doing; generating an integrated customer identifier for each customer based on the plurality of personal information element groups, wherein the same customer in the plurality of shopping malls is identified as one integrated customer identifier; collecting order history data of a plurality of customers identified as the plurality of integrated customer identifiers from the plurality of shopping malls; converting the collected order history data into data in the form of a graph consisting of at least three node hierarchies; storing the data in the form of a graph in a database; and based on the stored data in the form of a graph, determining and returning a degree of similarity based on the number of connection paths between at least two nodes among nodes included in the at least three node hierarchies in response to a query about similar products. A computer program stored in a medium may be provided to execute the.

이상 설명한 바와 같이, 본 발명에 따르면 전자상거래 기반의 복수 개의 쇼핑몰들에 산재된 고객 활동 정보를 통합 관리함으로써 빅데이터를 구축하고 그 빅데이터를 활용하여 그래프 데이터베이스를 기반으로 하는 개인에게 최적화된 상품 추천 또는 그룹 고객과 그룹 상품 간의 상품 추천을 효율적으로 수행할 수 있다.As described above, according to the present invention, by integrating and managing customer activity information scattered across a plurality of e-commerce shopping malls, big data is built, and the big data is used to recommend products optimized for individuals based on a graph database. Alternatively, product recommendation between group customers and group products can be efficiently performed.

도 1은 본 발명의 바람직한 실시예에 따른 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축 및 이를 기반으로 하는 상품 추천을 위한 시스템의 구성을 도시하는 블록도이다.
도 2는 본 발명의 바람직한 일 실시예에 따른 고객 빅데이터 구축 과정을 설명하기 위한 흐름도이다.
도 3은 도 2에 도시된 제 1 고객을 특정하는 과정의 일실시예를 설명하기 위한 흐름도이다.
도 4는 데이터베이스(140)에 저장 및 관리되는 테이블을 예시적으로 나타내는 예시도이다.
도 5는 유사도 기반의 상품추천 방법을 설명하기 위한 개념도이다.
도 6은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 상품, 주문 및 고객 노드 기반의 그래프이다.
도 7은 상품간의 직접적인 상관성과 간접적인 상관성을 설명하기 위한 개념도이다.
도 8는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 나타낸 흐름도이다.
도 9은 상품 중심의 복수 개의 방사형 그래프가 얽혀있는 모습을 나타낸 개념도이다.
도 10은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 동일/유사 카테고리와 결합 카테고리의 적절한 사용을 설명하기 위한 도면이다.
도 11은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 추천 알고리즘 관련 인공지능 학습 방법을 설명하기 위한 개념도이다.
도 12는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 연결경로 인덱싱 방법을 설명하기 위한 개념도이다.
도 13a 내지 도 13d는 상품과 고객 노드를 입력으로 지정하여 유사 상품 및 유사 성향의 고객을 출력으로 찾는 다양한 실시예를 나타낸 도면이다.
도 14은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 웹 페이지에서 구현한 결과를 나타낸 도면이다.
도 15는 본 발명의 다른 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 나타낸 흐름도이다.
도 16a 및 도 16b는 본 발명의 다른 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 상품 경로예측의 예시적인 모습을 나타낸 도면이다.
도 17a 및 도 17b는 도 16a의 실시예에서의 상품 조회 이후, 다음 상품을 조회한 상황에서의 상품 경로예측의 예시적인 모습을 나타낸 도면이다.
도 18는 상품 판매활성도 분석에 따라 판매가 저조해진 상품들에 대한 프로모션이 필요한 상황을 설명하기 위한 개념도이다.
도 19a 및 도 19b는 5명의 고객과 6개의 상품이 있는 경우, 특정 수의 고객 군과 특정 수의 상품군을 매칭하여 특별 프로모션을 제공하기 위한 매칭방법을 설명하기 위한 개념도이다.
도 20a 및 도 20b는 본 발명의 또 다른 실시예에 따른 상품 바스켓 추천 방법을 나타낸 흐름도이다.
도 21은 본 발명의 또 다른 실시예에 따른 상품기반 바스켓 추천 방법을 나타낸 흐름도이다. 이는 도 19a의 (1) 방법에 관한 것이다.
도 22a 내지 도 22c는 도 21의 바스켓 추천 방법의 각 단계별 행렬 생성 방법을 구체적으로 설명하기 위한 테이블이다.
도 23은 본 발명의 또 다른 실시예에 따른 고객기반 바스켓 추천 방법을 나타낸 흐름도이다.
도 24a 내지 도 24c는 도 23의 바스켓 추천 방법의 각 단계별 행렬 생성 방법을 구체적으로 설명하기 위한 테이블이다.
도 25는 본 발명의 일 실시예에 따른 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축하고, 구축된 빅데이터를 기반으로 그래프 데이터베이스 기반의 상품추천 방법 및/또는 상품 바스켓 추천 방법을 수행하는 장치를 개략적으로 나타낸 블록도이다.
1 is a block diagram showing the configuration of a system for constructing customer big data based on generation of an integrated customer identifier and product recommendation based thereon according to a preferred embodiment of the present invention.
2 is a flowchart for explaining a customer big data construction process according to a preferred embodiment of the present invention.
FIG. 3 is a flowchart illustrating an embodiment of a process of specifying a first customer shown in FIG. 2 .
4 is an exemplary diagram illustrating a table stored and managed in the database 140 by way of example.
5 is a conceptual diagram illustrating a product recommendation method based on similarity.
6 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.
7 is a conceptual diagram for explaining direct correlation and indirect correlation between products.
8 is a flowchart illustrating a product recommendation method using a graph database according to an embodiment of the present invention.
9 is a conceptual diagram showing a state in which a plurality of product-centered radial graphs are intertwined.
10 is a diagram for explaining proper use of same/similar categories and combined categories in a product recommendation method using a graph database according to an embodiment of the present invention.
11 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.
12 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.
13A to 13D are diagrams illustrating various embodiments of finding similar products and customers with similar tendencies as outputs by specifying product and customer nodes as inputs.
14 is a diagram showing a result of implementing a product recommendation method using a graph database according to an embodiment of the present invention on a web page.
15 is a flowchart illustrating a product recommendation method using a graph database according to another embodiment of the present invention.
16A and 16B are diagrams illustrating an example of product route prediction in a product recommendation method using a graph database according to another embodiment of the present invention.
17A and 17B are diagrams illustrating an example of product route prediction in a situation in which a next product is retrieved after product inquiry in the embodiment of FIG. 16A.
18 is a conceptual diagram illustrating a situation in which promotion is required for products whose sales are low according to product sales activity analysis.
19A and 19B are conceptual views 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.
20A and 20B are flowcharts illustrating a product basket recommendation method according to another embodiment of the present invention.
21 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. 19A.
22A to 22C are tables for explaining in detail a method of generating a matrix for each step of the basket recommendation method of FIG. 21 .
23 is a flowchart illustrating a customer-based basket recommendation method according to another embodiment of the present invention.
24A to 24C are tables for explaining in detail a method of generating a matrix for each step of the basket recommendation method of FIG. 23 .
25 is an apparatus for constructing customer big data based on generation of an integrated customer identifier and performing a graph database-based product recommendation method and/or product basket recommendation method based on the built big data according to an embodiment of the present invention. It is a schematic block diagram.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can make various changes and have various embodiments, specific embodiments are illustrated in the drawings and described in detail. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, 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 components, but the components should not be limited by the terms. These terms are only used for the purpose of distinguishing one component from another. For example, a first element may be termed a second element, and similarly, a second element may be termed a first element, without departing from the scope of the present invention. The terms and/or include any combination of a plurality of related recited items or any of a plurality of related recited items.

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

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, '포함하다' 또는 '가지다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in this 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 dictates otherwise. In this application, terms such as 'include' or 'have' are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other features It should be understood that the presence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded.

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

먼저, 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축에 대하여 설명하기로 한다.First, the construction of customer big data based on the generation of integrated customer identifiers will be described.

도 1은 본 발명의 바람직한 실시예에 따른 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축 및 이를 기반으로 하는 상품 추천을 위한 시스템의 구성을 도시하는 블록도이다.1 is a block diagram showing the configuration of a system for constructing customer big data based on generation of an integrated customer identifier and product recommendation based thereon according to a preferred embodiment of the present invention.

도 1에 도시된 바와 같이, 시스템은 다수의 쇼핑몰(110-1~110-N), 네트워크(120), 서버(130), 데이터베이스(140) 및 사용자 단말(150)을 포함할 수 있다. 사용자 단말(150)은 쇼핑몰을 이용하는 고객 단말일 수 있다.As shown in FIG. 1 , the system may include a plurality of shopping malls 110-1 to 110-N, a network 120, a server 130, a database 140, and a user terminal 150. The user terminal 150 may be a customer terminal using a shopping mall.

서버(130)는 전자상거래 기반의 복수 개의 쇼핑몰(110-1~110-N)와 네트워크(120)를 통하여 연동할 수 있다. 각각의 쇼핑몰(110-1~110-N)은, 예컨대, 전자상거래 사이트를 제공하는 웹 서버일 수 있다. 즉, 쇼핑몰(110-1~110~N)은 인터넷을 통하여 상품 또는 서비스를 판매하는 온라인 쇼핑몰을 의미한다. 쇼핑몰(110-1~110~N)은 특정 URL을 가지고 인터넷 상에서 해당 주소로의 방문자들을 상대로 상품을 판매할 수 있다. 쇼핑몰 운영자는 판매된 상품에 대한 금액 중 적어도 일부를 쇼핑몰과 연관된 자신의 계좌를 통해 획득하는 방식으로 쇼핑몰을 운영한다. 예를 들면, 쇼핑몰(110-1~110~N)은 의류 쇼핑몰, 오픈마켓 등뿐만 아니라, 유료로 물품이나 서비스를 판매하는 게임사이트, 소셜미디어 사이트, 커뮤니티 사이트, 방송 사이트, 멀티미디어 제공 사이트 등일 수 있다.The server 130 may interwork with a plurality of shopping malls 110-1 to 110-N based on e-commerce through the network 120. Each of the shopping malls 110-1 to 110-N may be, for example, a web server providing an e-commerce site. That is, the shopping malls 110-1 to 110-N refer to online shopping malls that sell products or services through the Internet. The shopping malls 110-1 to 110-N may sell products to visitors to the corresponding address on the Internet with a specific URL. The shopping mall manager operates the shopping mall by acquiring at least a part of the price of the sold product through his/her own account associated with the shopping mall. For example, the shopping malls 110-1 to 110-N may be not only clothing shopping malls and open markets, but also game sites that sell goods or services for a fee, social media sites, community sites, broadcasting sites, and multimedia providing sites. there is.

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

상기 복수 개의 쇼핑몰(110-1~110~N)은 이종의 업체에 의하여 운영될 수 있다. 예를 들어, 제 1 쇼핑몰(110-1)는 A 전자상거래 업체 의하여 운영되는 인터넷 쇼핑몰을 제공하기 위한 웹 서버일 수 있으며, 제 2 쇼핑몰(110-2)는 A 전자상거래 업체와는 전혀 무관한 B 전자상거래 업체에 의하여 운영되는 인터넷 쇼핑몰을 제공하기 위한 서비스 웹 서버일 수 있다.The plurality of shopping malls 110-1 to 110-N may be operated by different types of companies. For example, the first shopping mall 110-1 may be a web server for providing an Internet shopping mall operated by an e-commerce company A, and the second shopping mall 110-2 is completely unrelated to the e-commerce company A. B may be a service web server for providing an Internet shopping mall operated by an e-commerce company.

복수 개의 쇼핑몰(110-1~110-N)은 네트워크(120)를 통해 서버(130)와 연동할 수 있다. 여기서, 서버(130)는 복수 개의 쇼핑몰(110-1~110-N)로부터 정보를 획득하고 상품추천 질의에 대응하여 상품을 추천하는 장치이다. 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.

서버(130)는 쇼핑몰을 개설하고 운영하도록 지원하는 플랫폼(platform)을 배포하고 관리하는 서버(미도시)이거나 또는 상기 서버와 연동하는 서버일 수 있다. 본 발명의 바람직한 실시예에 따른 서버(130)는 통합 고객 식별자를 생성 및 관리하는 것을 기반으로 하여 하나의 쇼핑몰(110-1)과 연관된 정보만을 취급하는 것이 아니라, 복수 개의 쇼핑몰(110-1~110-N)과 연관된 정보를 취급하고, 빅데이터를 기반으로 다양한 정보를 분석 및 학습할 수 있다.The server 130 may be a server (not shown) distributing and managing a platform that supports the opening and operation of a shopping mall or a server interoperating with the server. The server 130 according to a preferred embodiment of the present invention does not handle only information related to one shopping mall 110-1 based on generating and managing an integrated customer identifier, but a plurality of shopping malls 110-1 to 110-1. 110-N) and can analyze and learn various information based on big data.

서버(130)는 하나 또는 복수 개의 컴퓨팅 장치로 구현될 수 있다. 여기서 말하는 컴퓨팅 장치는 서버 급 컴퓨터 단말기로 구현될 수 있다. 상기 컴퓨팅 장치는 통상적인 컴퓨터 단말이 가지는 입력 장치, 표시 장치, 네트워킹 장치, 하드디스크, 프로그램을 저장하는 메모리 및 메모리에 저장된 프로그램을 수행시키는 프로세서 등을 구비할 수 있다. 다만, 반드시 서버 급 컴퓨터 단말로 구현되어야 하는 것은 아니다.The server 130 may be implemented with one or a plurality of computing devices. 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 programs, and a processor for executing programs stored in the memory. However, it is not necessarily implemented as a server-class computer terminal.

서버(130)는 복수 개의 쇼핑몰(110-1~110~N)에서 동일한 고객을 식별할 수 있는 통합 고객 식별자를 생성하고, 복수 개의 쇼핑몰(110-1~110~N)으로부터 통합 고객 식별자에 의하여 식별되는 고객의 로그 기록을 수집하고, 수집된 로그 기록을 기반으로 하여 고객에 적합화된 상품 추천을 통한 마케팅을 수행할 수 있다.The server 130 generates an integrated customer identifier capable of identifying the same customer in the plurality of shopping malls 110-1 to 110 to N, and uses the integrated customer identifier from the plurality of shopping malls 110-1 to 110 to N. Log records of identified customers may be collected, and based on the collected log records, marketing may be performed through product recommendation tailored to the customer.

종래의 경우, 사용자의 인터넷 이용 내역에 대한 수집은 개별 전자상거래 업체별로 수행된다. 예를 들어, 개별 전자상거래 업체는 그 전자상거래 업체에서 운영하는 쇼핑몰에 접속한 사용자의 쿠키 또는 세션 등을 기록한 후 그 사용자가 다시 해당 전자상거래 업체의 쇼핑몰에 접속했을 때 사용자의 이전 사용 내역과 관련된 상품 광고를 웹 페이지 상에 표시한다. 그러나 이와 같이 전자상거래 업체 별로 수행되는 타겟 광고는 고객의 이용 내역에 대한 데이터가 하나의 쇼핑몰에 대한 전자상거래 이용 내역을 기반으로 하므로 수집 데이터의 양이 작아 신뢰도가 떨어진다.In the conventional case, the collection of user's Internet use details is performed by individual e-commerce companies. For example, an individual e-commerce company records a cookie or session of a user who accesses a shopping mall operated by the e-commerce company, and then when the user accesses the shopping mall of the corresponding e-commerce company again, information related to the user's previous usage history is recorded. Product advertisements are displayed on the web page. However, since the target advertisement performed for each e-commerce company is based on the customer's use details of a single shopping mall, the amount of collected data is small and reliability is low.

만약 종래에 복수 개의 쇼핑몰로부터 인터넷 이용 내역을 수집하려 한다면, 각각의 웹 서버가 운영 주체도 다르고 데이터 수집 정책도 다르므로 수집되는 사용자 이용 내역 정보의 형식과 종류가 상이하여 이를 통합하기가 매우 어려우며, 특히 동일한 고객이라 하더라도 쇼핑몰마다 사용자 ID, 즉 고객에 대응하는 개별 쇼핑몰 고객 식별자가 다른 경우가 많으므로 복수 개의 쇼핑몰에서 동일한 고객의 주문 내역을 통합하기란 사실상 불가능한 것이 현실이다.If you are trying to collect Internet usage history from multiple shopping malls in the past, since each web server has a different operator and data collection policy, the format and type of user usage history information collected are different, making it very difficult to integrate them. In particular, since user IDs, i.e., individual shopping mall customer identifiers corresponding to customers, are often different for each shopping mall even for the same customer, it is practically impossible to integrate the order details of the same customer in a plurality of shopping malls.

그러나, 본 발명의 바람직한 실시예에서 서버(130)는 복수 개의 쇼핑몰(110-1~110~N)로부터 상기 복수 개의 쇼핑몰(110-1~110~N)에 대응하는 복수 개의 개별 쇼핑몰 고객 식별자 및 복수 개의 개별 쇼핑몰 고객 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객을 특정하여 그 특정된 고객에 대응하는 통합 고객 식별자를 생성하고, 고객에 대응하는 통합 고객 식별자를 복수 개의 개별 쇼핑몰 고객 식별자 및 복수 개의 개인 정보 요소 그룹과 연관시켜 데이터베이스(140)에 저장하여 관리함으로써, 통합 고객 식별자를 기반으로 하여 복수 개의 쇼핑몰(110-1~110~N)로부터 특정된 고객의 로그 기록을 수집하여 빅데이터를 구축할 수 있다. 통합 고객 식별자란 복수 개의 쇼핑몰(110-1~110-N)에서 동일한 고객을 하나의 식별자로 식별하기 위한 고객 식별자일 수 있다.However, in a preferred embodiment of the present invention, the server 130 provides a plurality of individual shopping mall customer identifiers and Receiving a plurality of personal information element groups corresponding to a plurality of individual shopping mall customer identifiers, specifying a customer based on the plurality of personal information element groups, generating an integrated customer identifier corresponding to the specified customer, and responding to the customer A plurality of shopping malls (110-1 ~ 110 ~ N) based on the integrated customer identifier are stored in the database 140 and managed by associating the integrated customer identifier with a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups. It is possible to build big data by collecting log records of specified customers from The integrated customer identifier may be a customer identifier for identifying the same customer in a plurality of shopping malls 110-1 to 110-N as one identifier.

네트워크(120)는 복수 개의 쇼핑몰(110-1~110-N)과 서버(130), 서버(130)와 사용자 단말(150), 복수 개의 쇼핑몰(110-1~110-N)과 사용자 단말(150)을 연결하는 통신망을 의미할 수 있다. 예를 들어, 네트워크(120)은 유선망 또는 무선망(인터넷(internet))을 포함할 수 있다.The network 120 includes a plurality of shopping malls 110-1 to 110-N, a server 130, a server 130 and a user terminal 150, a plurality of shopping malls 110-1 to 110-N, and a user terminal ( 150) may mean a communication network that connects. For example, the network 120 may include a wired network or a wireless network (Internet).

도 2는 본 발명의 바람직한 일 실시예에 따른 고객 빅데이터 구축 과정을 설명하기 위한 흐름도이다.2 is a flowchart for explaining a customer big data construction process according to a preferred embodiment of the present invention.

도 2에 도시된 바와 같이, 서버(130)는 복수 개의 쇼핑몰(110-1~110-N)에 접속할 수 있다. 서버(130)는 복수 개의 쇼핑몰(110-1~110-N)로부터 복수 개의 쇼핑몰(110-1~110-N)에 대응하는 복수 개의 개별 쇼핑몰 고객 식별자 및 복수 개의 개별 쇼핑몰 고객 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신할 수 있다(S1).As shown in FIG. 2 , the server 130 may access a plurality of shopping malls 110-1 to 110-N. The server 130 provides a plurality of individual shopping mall customer identifiers corresponding to the plurality of shopping malls 110-1 to 110-N from the plurality of shopping malls 110-1 to 110-N and a plurality of individual shopping mall customer identifiers corresponding to the plurality of shopping mall customer identifiers. It is possible to receive two personal information element groups (S1).

상기 개별 쇼핑몰 고객 식별자는 개별 쇼핑몰에서 고객을 식별하기 위하여 사용되는 고객 식별자일 수 있다. 상기 개인 정보 요소 그룹은 상기 개별 쇼핑몰 고객 식별자에 대응하는 개인 정보 요소들을 의미할 수 있다. 즉, 개별 고객 식별자에 대응하여 개별 쇼핑몰에서 등록 및 관리되는 개인 정보 요소들의 집합을 의미할 수 있다. 예를 들어, 제 1 쇼핑몰(110-1)은 제 1 고객에 대하여 상기 제 1 고객에 대응하는 개별 쇼핑몰 고객 식별자를 기반으로 상기 제 1 고객을 식별하며, 상기 개별 쇼핑몰 고객 식별자에 대응하여 제 1 고객의 개인 정보 요소들을 관리할 수 있다.The individual shopping mall customer identifier may be a customer identifier used to identify a customer in an individual shopping mall. The personal information element group may refer to personal information elements corresponding to the individual shopping mall customer identifier. That is, it may refer to a set of personal information elements registered and managed in an individual shopping mall corresponding to an individual customer identifier. For example, the first shopping mall 110-1 identifies the first customer based on an individual shopping mall customer identifier corresponding to the first customer, and in response to the individual shopping mall customer identifier, the first shopping mall 110-1 identifies the first customer. You can manage the elements of your personal information.

개인 정보 요소 그룹에 포함되는 개인 정보 요소들은 비식별화된 개인 정보 요소일 수 있다. 비식별화된 개인 정보 요소란 식별자(ID), 주민등록번호와 같이 쇼핑몰에서 고객을 식별하기 위하여 사용하는 정보가 아닌 개인 정보 요소를 의미할 수 있다. 예를 들면, 상기 비식별화된 개인 정보 요소는 고객 이메일, 고객 이름, 고객 전화번호. 고객 별명, 고객 주소, 고객 생년월일, 고객 성별, 고객 연령 등일 수 있다. Personal information elements included in the personal information element group may be non-identified personal information elements. The non-identified personal information element may refer to a personal information element other than information used to identify a customer in a shopping mall, such as an identifier (ID) and a resident registration number. For example, the de-identified personal information elements include customer email, customer name, and customer phone number. This could be customer nickname, customer address, customer date of birth, customer gender, customer age, etc.

다음으로, 서버(130)은 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정할 수 있다(S2). 이는 각각의 쇼핑몰(110-1~110-N)에 대응되는 비식별화된 개인 정보 요소 그룹을 상호 비교하여 유사성 높은 개인 정보 요소 그룹을 가지는 고객을 동일 고객으로 보고 고객을 특정하는 것이라 할 수 있다.Next, the server 130 may specify a first customer based on the plurality of personal information element groups (S2). This can be said to identify customers by comparing non-identified personal information element groups corresponding to the respective shopping malls 110-1 to 110-N and considering customers having personal information element groups with high similarity as the same customer. .

도 3은 도 2에 도시된 제 1 고객을 특정하는 과정의 일실시예를 설명하기 위한 흐름도이다.FIG. 3 is a flowchart illustrating an embodiment of a process of specifying a first customer shown in FIG. 2 .

도 3에 도시된 바와 같이, 서버(130)은 상기 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도를 산출할 수 있다(S11). 예들 들어, 서버(130)은 개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산할 수 있다.As shown in FIG. 3 , the server 130 may calculate a personal information similarity between the plurality of personal information element groups (S11). For example, the server 130 may calculate the number of personal information elements included in the personal information element group and the number of personal information elements matched between the personal information element groups.

이어서, 서버(1230)는 산출된 개인 정보 유사도를 기반으로 하여 상기 제 1 고객을 특정할 수 있다. 예를 들어, 서버(140)은 연산한 개인 정보 유사도가 정해진 값 이상인지를 판단하고(S12), 개인 정보 유사도가 정해진 값 이상일 경우 동일 고객으로 특정하는 것이다(S13).Subsequently, the server 1230 may specify the first customer based on the calculated personal information similarity. For example, the server 140 determines whether the calculated personal information similarity is equal to or greater than a predetermined value (S12), and identifies the same customer if the personal information similarity is greater than or equal to a predetermined value (S13).

예를 들어, 하나의 개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수가 10개이고, 동일 고객으로 판단하기 위하여 정해진 개인 정보 유사도 값, 즉 기준 값이 0.7이라면 서로 간에 일치하는 개인 정보 요소가 7개 이상인 개인 정보 요소 그룹에 대응하는 고객은 동일한 고객으로 판단하여 하나의 고객으로 특정할 수 있다.For example, if the number of personal information elements included in one personal information element group is 10 and the personal information similarity value determined to determine the same customer, that is, the standard value is 0.7, then there are 7 personal information elements that match each other. Customers corresponding to the above personal information element groups may be determined as the same customer and identified as one customer.

한편, 본 발명의 다른 실시예에 따르면, 서버(130)는 상기 수신된 복수 개의 개인 정보 요소 그룹의 데이터를 딥러닝을 통하여 학습된 인공지능 엔진에 입력하여 동일한 고객별로 분류할 수도 있다. 상기 인공지능 엔진은 복수 개의 비식별화된 개인 정보 요소 그룹들의 데이터가 입력되면, 상호 간에 개인 정보 유사도가 높은 개인 정보 요소 그룹들을 분류하여 동일 고객에 대응시킴에 의하여, 동일한 고객별로 분류하도록 학습되어 있다.Meanwhile, according to another embodiment of the present invention, the server 130 may input the received data of the plurality of personal information element groups to an artificial intelligence engine learned through deep learning and classify the data according to the same customer. When the data of a plurality of non-identified personal information element groups is input, the artificial intelligence engine classifies personal information element groups having a high personal information similarity to each other and corresponds to the same customer, thereby learning to classify by the same customer there is.

다음으로, 서버(130)는 앞서 특정된 제 1 고객에 대응하는 통합 고객 식별자를 생성할 수 있다(S3). 상기 통합 고객 식별자란, 앞서도 언급한 바와 같이, 복수 개의 쇼핑몰(110-1~110-N)에서 동일한 고객을 하나의 식별자로 식별하기 위한 고객 식별자일 수 있다. 서버(130)는 상기와 같이 생성된 제 1 고객에 대응하는 상기 고객 식별자를 상기 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개인 정보 요소 그룹과 연관시켜 데이터베이스(140)에 저장할 수 있다(S4).Next, the server 130 may generate an integrated customer identifier corresponding to the first customer specified above (S3). As mentioned above, the integrated customer identifier may be a customer identifier used to identify the same customer in the plurality of shopping malls 110-1 to 110-N as one identifier. The server 130 may associate the generated customer identifier corresponding to the first customer with the plurality of individual shopping mall customer identifiers and the plurality of personal information element groups and store them in the database 140 (S4).

도 4는 데이터베이스(140)에 저장 및 관리되는 테이블을 예시적으로 나타내는 예시도이다.4 is an exemplary diagram illustrating a table stored and managed in the database 140 by way of example.

도 4에 도시된 바와 같이, 제 1 고객은 쇼핑몰 A, 쇼핑몰 B, 쇼핑몰 C, 쇼핑몰 D의 고객이며, 각각의 쇼핑몰에서 모두 다른 개별 쇼핑몰 고객 식별자를 사용한다. 즉, 쇼핑몰 A에서는 "AAAA", 쇼핑몰 B에서는 "BBBB", 쇼핑몰 C에서는 "CCCC", 쇼핑몰 D에서는 "DDDD"를 개별 쇼핑몰 고객 식별자인 "Mall-ID"로 사용하고 있다.As shown in FIG. 4, the first customers are customers of shopping malls A, B, C, and D, and each shopping mall uses a different individual shopping mall customer identifier. That is, "AAAA" in shopping mall A, "BBBB" in shopping mall B, "CCCC" in shopping mall C, and "DDDD" in shopping mall D are used as individual shopping mall customer identifiers, "Mall-ID".

각각의 쇼핑몰에서는 비식별화된 개인 정보 요소, 예컨대 제 1 고객의 이메일, 전화번호, 이름, 별명, 나이, 성별 등을 포함하는 개인 정보 요소 그룹에 대응되어 있다.Each shopping mall corresponds to a personal information element group including non-identified personal information elements, such as e-mail, phone number, name, nickname, age, and gender of the first customer.

서버(130)는 개인 정보 요소 그룹 간의 개인 정보 유사도 판단을 기반으로, 쇼핑몰 A의 "AAAA", 쇼핑몰 B의 "BBBB", 쇼핑몰 C의 "CCCC", 쇼핑몰 D의 "DDDD"가 동일한 제 1 고객임을 특정하고, 4개의 쇼핑몰에서 제 1 고객을 식별할 수 있는 통합 고객 식별자 "EC-ID"로서 "CUAA01"을 생성하여, 복수 개의 개별 쇼핑몰 고객 식별자 및 개인 정보 요소 그룹에 연관시켜 도 4에 도시된 예에서와 같은 테이블을 데이터베이스(140)에 저장하여 관리할 수 있다.The server 130 determines the personal information similarity between the personal information element groups, and determines whether "AAAA" of shopping mall A, "BBBB" of shopping mall B, "CCCC" of shopping mall C, and "DDDD" of shopping mall D are the same for the first customer. and creates "CUAA01" as an integrated customer identifier "EC-ID" capable of identifying the first customer in the four shopping malls, and associates it with a plurality of individual shopping mall customer identifiers and personal information element groups, as shown in FIG. The same table as in the example may be stored and managed in the database 140 .

한편, 신규한 제 2 고객이 복수 개의 쇼핑몰 중 어느 하나, 예컨대 제 1 쇼핑몰(110-1)로 접속하여 고객이 되면, 서버(13)은 제 1 쇼핑몰(110-1)로부터 상기 제 1 쇼핑몰(110-1)에서 제 2 고객을 식별할 수 있는 개별 쇼핑몰 고객 식별자 및 상기 제 2 고객의 개별 쇼핑몰 고객 식별자에 대응하는 개인 정보 요소 그룹을 수신할 수 있다.On the other hand, when a new second customer accesses one of a plurality of shopping malls, for example, the first shopping mall 110-1 and becomes a customer, the server 13 receives the first shopping mall (from the first shopping mall 110-1). In 110-1), an individual shopping mall customer identifier capable of identifying the second customer and a personal information element group corresponding to the individual shopping mall customer identifier of the second customer may be received.

서버(130)는 제 2 고객의 개별 쇼핑몰 고객 식별자를 기반으로 하여 상기 제 2 고객에 대응하는 통합 고객 식별자가 상기 데이터베이스(140)에 존재하는 지를 판단할 수 있다. 여기서 제 2 고객은 신규 유입된 고객이므로, 데이터베이스(140)에는 제 2 고객의 통합 고객 식별자는 존재하지 않는다.The server 130 may determine whether an integrated customer identifier corresponding to the second customer exists in the database 140 based on the individual shopping mall customer identifier of the second customer. Here, since the second customer is a newly introduced customer, the integrated customer identifier of the second customer does not exist in the database 140 .

따라서, 서버(130)는 데이터베이스(140)에 상기 제 2 고객에 대응하는 통합 고객 식별자가 존재하지 않는 경우, 상기 제 2 고객에 대응하는 개인 정보 요소 그룹을 기반으로 하여 상기 제 2 고객에 대응하는 통합 고객 식별자를 생성하고, 제 2 고객에 대응하는 통합 고객 식별자를 제 2 고객의 개별 쇼핑몰 고객 식별자 및 그 개별 쇼핑몰 고객 식별자에 대응하는 개인 정보 요소 그룹과 연관시켜 데이터베이스(140)에 저장할 수 있다.Therefore, when the integrated customer identifier corresponding to the second customer does not exist in the database 140, the server 130 determines the information corresponding to the second customer based on the personal information element group corresponding to the second customer. An integrated customer identifier may be generated, and the integrated customer identifier corresponding to the second customer may be associated with an individual shopping mall customer identifier of the second customer and a personal information element group corresponding to the individual shopping mall customer identifier, and stored in the database 140.

한편, 만약 상기 제 2 고객이 신규한 고객이 아니고 이미 통합 고객 식별자가 존재한다고 가정할 경우, 상기 데이터베이스(140)에 상기 제 2 고객에 대응하는 통합 고객 식별자가 존재하므로, 서버(130)은 상기 데이터베이스(140)에 저장된 상기 제 2 고객의 개인 정보 요소 그룹과 수신된 개인 정보 요소 그룹을 비교하는 것을 기반으로 하여, 변경된 내용이 있는지를 판단하고, 비교 결과 변경된 내용이 있는 경우, 변경된 내용을 기반으로 제 2 고객의 개인 정보 요소 그룹의 내용을 업데이트할 수도 있다.Meanwhile, if it is assumed that the second customer is not a new customer and an integrated customer identifier already exists, since an integrated customer identifier corresponding to the second customer exists in the database 140, the server 130 Based on the comparison of the personal information element group of the second customer stored in the database 140 and the received personal information element group, it is determined whether there is a change, and if there is a change as a result of the comparison, based on the changed content The content of the personal information element group of the second customer may be updated with .

도 2를 다시 참조하면, 서버(130)는 이와 같이 데이터베이스(140)에 저장되어 관리되는 통합 고객 식별자를 기반으로 하여 복수 개의 쇼핑몰(110-1~110-N)로부터 제 1 고객의 로그 기록을 수집할 수 있다(S6). 즉, 고객별로 복수 개의 쇼핑몰(110-1~110-N)에서 수행한 구매 내역, 접속 내역, 반품 내역 등 고객들의 주문 이력관련 빅데이터가 수집될 수 있다.Referring back to FIG. 2 , the server 130 records a log record of a first customer from a plurality of shopping malls 110-1 to 110-N based on the integrated customer identifier stored and managed in the database 140 as described above. It can be collected (S6). That is, big data related to customer order history, such as purchase details, access details, and return details performed in the plurality of shopping malls 110-1 to 110-N for each customer, may be collected.

서버(130)은 수집된 고객들의 주문 이력 데이터를 수집하여 빅데이터를 구축한 후, 제 1 방식에 의한 상품 추천 및 제 2 방식에 의한 상품 추천 중 적어도 어느 하나를 기반으로 고객들에 대응하는 맞춤형 상품 추천을 수행할 수행할 수 있다.The server 130 collects the collected order history data of customers to build big data, and then provides customized products corresponding to customers based on at least one of product recommendation according to the first method and product recommendation according to the second method. Recommendations can be performed.

상기 제 1 방식에 의한 상품 추천은 예컨대, 그래프 데이터베이스를 사용하는 유사도 기반의 상품 추천일 수 있다. 상기 제 2 방식에 의한 상품 추천은 그룹 고객과 그룹 상품 간의 상품 추천, 예컨대 바스킷 추천일 수 있다.Product recommendation by the first method may be product recommendation based on similarity using, for example, a graph database. Product recommendation by the second method may be product recommendation between group customers and group products, for example, basket recommendation.

이하에서는, 제 1 방식에 의한 추천을 설명하기로 한다. 제 1 방식은 그래프 데이터베이스를 활용하는 유사도에 기반한 상품 추천이다. 여기서 유사도는 앞서 언급한 통합 고객 식별자의 생성시 연산되는 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도와는 다른 것이다. 그래프 데이터베이스를 활용하는 유사도에 대해서는 이하에 상세히 설명한다.Hereinafter, the recommendation by the first method will be described. The first method is product recommendation based on similarity using a graph database. Here, the degree of similarity is different from the degree of similarity of personal information between a plurality of groups of personal information elements calculated when generating the aforementioned integrated customer identifier. Similarity using a graph database will be described in detail below.

도 1을 다시 참조하면, 서버(130)는 쇼핑몰(110-1~110-N) 및/또는 쇼핑몰(110-1~110-N)의 정보를 전반적으로 관리하는 쇼핑몰 운영서버(미도시)로부터 주문이력 데이터 및/또는 상품조회 데이터를 획득한다. 상기 데이터에서 고객은 통합 고객 식별자에 의하여 식별된다. 즉 서버(130)는 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터, 상품 조회 데이터 등을 수집한다.Referring back to FIG. 1 , the server 130 receives information from the shopping mall management server (not shown) that manages the overall information of the shopping malls 110-1 to 110-N and/or the shopping malls 110-1 to 110-N. Obtain order history data and/or product inquiry data. In the above data, the customer is identified by the combined customer identifier. That is, the server 130 collects order history data, product inquiry data, and the like of a plurality of customers identified as the plurality of integrated customer identifiers from the plurality of shopping malls.

서버(130)은 획득된 데이터를 복수 개의 노드 계층을 갖는 그래프 형태로 변환한다. 그래프 형태로 변환된 데이터는 서버(130)의 외부의 데이터베이스(140)에 저장된다. 다만, 반드시 데이터베이스(140)가 서버(130)의 외부에 있어야 하는 것은 아니다. 내부에 존재할 수도 있다. The server 130 converts the acquired data into a graph form having a plurality of node hierarchies. 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 . may exist inside.

서버(130)는 사용자 단말(150)로부터의 상품추천 요청("추천 상품 검색 요청", "질의" 등으로 불릴 수 있음)에 대응하여 3개 노드 계층으로 구성된 그래프를 이용하여 특정상품으로부터 유사상품 검색에 대한 질의를 처리한다. 이때, 변환된 형태의 그래프 데이터 상에서, 상품과 상품, 고객과 고객, 또는 상품과 고객 간의 연결경로를 추출하고, 추출된 연결경로의 거리 및/또는 갯수를 고려하여 서로 간의 유사도를 판단할 수 있다. 또한, 상품조회 데이터를 활용하는 경우, 그래프 상에서, 상품 검색 이전 또는 이후의 일정 스텝(step) 동안의 조회 이력을 분석하여 유사상품에 대한 질의를 처리한다. 유사상품에 대한 질의를 처리하는 기술과 관련된 부분은 이하 보다 상세히 설명한다. The server 130 responds to a product recommendation request (which may be called a "recommended product search request", "query", etc.) from the user terminal 150 by using a graph composed of three node hierarchies, from specific products to similar products. Process queries for searches. At this time, on the converted graph data, connection paths between products and products, customers and customers, or products and customers are extracted, and the degree of similarity between them can be determined by considering the distance and / or number of extracted connection paths. . In addition, when product inquiry data is used, queries for similar products are processed by analyzing the inquiry history for a certain step before or after product search on the graph. A part related to a technique for processing queries about 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 presence of an index (which may include a similarity using the above graph database) indicating the purchasing possibility between an individual customer and an individual product. You can optimize your basket. That is, if the product basket recommendation method according to the embodiment of the present invention is used, a plurality of product groups optimized for at least one customer (in a plurality of cases, a customer group) can be appropriately promoted.

사용자 단말(150)은 쇼핑몰(110-1)의 구매자의 단말일 수 있다. 구매자는 사용자 단말(150)을 이용하여 서버(130) 또는 별도의 쇼핑몰 관리 서버(미도시)로 상품 추천 요청을 전송할 수 있다. 별도의 쇼핑몰 관리 서버가 존재한다면, 쇼핑몰 관리 서버는 수신된 상품 추천 요청을 서버(130)로 전달한다.The user terminal 150 may be a terminal of a purchaser of the shopping mall 110-1. The buyer 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 transfers the received product recommendation request to the server 130 .

상품 추천 요청은 유사상품에 대한 질의를 포함할 수 있다. 나아가, 유사 고객에 대한 질의를 포함할 수 있다. 그리고는, 그래프 기반의 데이터 분석 방법 및/또는 바스켓 추천 방법을 이용하여 상기 질의에 대한 처리가 완료되면, 처리완료된 데이터를 사용자 단말(150)로 제공하여 구매자가 이를 확인하고, 이를 토대로 상품을 선택할 수 있도록 한다. 사용자 단말(150)은 네트워크(120)(네트워크 내의 특정 웹페이지)를 이용하여 상품 추천 요청을 서버(130)로 제공할 수 있다. The product recommendation request may include a query about similar products. Furthermore, it may include queries about similar customers. Then, when processing of the query is completed using the graph-based data analysis method and/or basket recommendation method, the processed data is provided to the user terminal 150 so that the buyer can check it and select a product based on it. 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, the terminal or user terminal 150 associated with the shopping malls 110-1 to 110-N may download an application provided by 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 about similar products or similar customers, a graph-based product recommendation process or product basket recommendation process is performed within the terminal. can be done in Without a separate server device, a processor (not shown) of the terminal may execute the downloaded application to recommend an optimal product through data transformation and analysis of the transformed data.

도 5는 유사도 기반의 상품추천 방법을 설명하기 위한 개념도이다. 이하에서 언급되는 "장치" 도는 "상품 추천 장치"라는 용어는 도 1에 도시된 서버(130)을 지칭하는 것으로 해석될 수 있다.5 is a conceptual diagram illustrating a product recommendation method based on similarity. The term "apparatus" or "product recommendation device" mentioned below may be interpreted as referring to the server 130 shown in FIG. 1 .

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

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

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

도 6은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 상품, 주문 및 고객 노드 기반의 그래프이다. 6 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.

도 6을 참조하면, 장치는 주문 이력 데이터를 수집하여 적어도 3개의 노드 계층으로 구성된 그래프를 생성할 수 있다. 주문 이력 데이터는 기본적으로 "특정 고객 A가 특정 쇼핑몰에서 주문 B를 이용하여 상품 C를 주문하였다"는 정보를 포함한다. 즉, 고객과 주문, 그리고 상품 간의 연관관계를 포함하는 데이터이다. Referring to FIG. 6 , 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 ordered product C using order B at a specific shopping mall". In other words, it is data that includes relationships between customers, orders, and products.

장치는 각각의 주문 이력 데이터를 기반으로 상품을 제 1 노드 계층으로, 주문을 제 2 노드 계층으로, 고객을 제 3 노드 계층으로 형성하여 방사형의 그래프를 생성한다. 도 6의 실시예에서는, 상품 A(310)는 6개의 주문들(320: 주문 A 내지 주문 F)에 포함되어 있고, 각각의 주문은 서로 다른 고객(330)으로부터 획득된 것이다.The device creates a radial graph by forming products as a first node layer, orders as a second node layer, and customers as a third node layer based on each order history data. In the example of FIG. 6 , product A 310 is included in six orders 320 (orders A through F), each order obtained from a different customer 330 .

이러한 경우, 장치는, 상품 A(310)를 중심으로, 주문 A(320) 내지 주문 F를 연결선을 이용하여 연결하고, 주문 A(320)을 요청한 고객 A(330)을 주문 A(320)에 각각 연결하여 상품으로부터 방사형의 그래프가 생성되도록 한다. 다시 말해, 상품-주문 연결선은 주문에 포함된 상품을, 주문-고객 연결선은 주문을 한 고객을 나타낸다. 이때, 그래프의 각 노드 계층 중 제 1 노드 계층(상품 계층)은 붉은 색으로, 제 2 노드 계층(주문 계층)은 초록 색으로, 제 3 노드 계층(고객 계층)은 파란 색으로 나타낼 수 있다. 이렇게 생성된 그래프는 시각화되어 디스플레이 장치를 통해 표시될 수 있다.In this case, the device connects order A 320 to order F around product A 310 using a connection line, and customer A 330 requesting order A 320 is connected to order A 320. Each is connected 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. At this time, among each node hierarchy of the graph, the first node hierarchy (product hierarchy) can be represented by red color, the second node hierarchy (order hierarchy) by green color, and the third node hierarchy (customer hierarchy) by blue color. The graph thus generated may be visualized and displayed through a display device.

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

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

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

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

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

따라서, 장치는 그래프 데이터베이스를 기반으로 특정 고객 A는 구매하였으나, 유사한 고객 B가 구매하지 않은 상품은 고객 B에게 추천할 수 있다. 마찬가지로, 고객 B가 구매하였으나, 고객 A가 구매하지 않은 상품을 A에게 추천할 수 있다. 즉, 장치는 통합된 상품 A(310)를 매개로 고객 A와 고객 B를 연결시킬 수 있고, 연결경로의 길이 및 연결경로의 갯수를 고려하여 유사도를 분석한다. Accordingly, the device may recommend to customer B products that a specific customer A purchased but similar customer B did not purchase, 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 may connect customer A and customer B through the integrated product A 310, and analyze the degree of similarity in consideration of the length and number of connection paths.

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

먼저, 서버("장치"라고 부를 수 있음)는 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성할 수 있다. 상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별될 수 있다.First, a server (which may be referred to as a "device") receives a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from a plurality of shopping malls, and receives the plurality of personal information element groups. Based on this, it is possible to generate an integrated customer identifier for each customer. The same customer in the plurality of shopping malls may be identified as one integrated customer identifier.

도 8을 참조하면, 서버는 주문 이력 데이터를 온라인 쇼핑몰 또는 쇼핑몰을 관리하는 서버로부터 수집한다(S510). 예를 들어 서버는 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집한다. 이때, 획득되는 데이터는 상품과 해당 상품을 포함하는 주문, 그리고 해당 주문을 수행한 주체인 고객과의 연관관계에 대한 정보를 포함한다. Referring to FIG. 8 , the server collects order history data from an online shopping mall or a server managing the shopping mall (S510). For example, the server collects order history data of a plurality of customers identified as the plurality of integrated customer identifiers from a plurality of shopping malls. At this time, the obtained data includes information about a relationship between a product, an order including the corresponding product, and a 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, the first node hierarchy, products, is connected to the second node hierarchy, orders, through a connection line, and the order is connected to the third node hierarchy, customers, through a connection line, resulting in the first node hierarchy. It may have a radial graph form with a center. Then, the device stores the data converted into a graph form in a database (S514).

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

추천 상품 검색 요청이 입력되면, 장치는 그래프 형태의 변환된 데이터를 이용하여 대상상품 또는 대상고객을 중심으로 상관성을 분석한다(S518). 그리고는, 대상상품 또는 대상고객을 중심에 놓고, 분석된 상관성을 기반으로 타 상품 또는 타 고객까지 연결경로를 생성한다(S520). 이때, 생성된 연결경로의 거리를 기반으로 일정 거리 범위 내에 존재하는 연결경로인지 판단한다(S522).When a recommendation product search request 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, with the target product or target customer at the center, a connection path to other products or other customers is created based on the analyzed correlation (S520). At this time, based on the distance of the created connection path, it is determined whether the connection path exists within a certain distance range (S522).

앞서 설명한 바와 같이, 직접적인 상관성을 나타내는 거리 2보다는 큰 거리를 갖는 것이 바람직하고(예컨대, a=2), 거리가 길어지면, 연결되는 경로가 비례적으로 많아지기 때문에, 과도하게 큰 거리 값을 갖는 연결경로는 제외하는 것이 바람직하다(예컨대, b=10). 거리 범위를 정의하는 a 및 b 값은 사용자 설정을 통해 설정할 수 있고 임의로 변경도 가능하다. 또한, 머신러닝(machine learning)을 통해 최적의 해를 찾는 형태로 a 및 b의 값을 변화시킬 수 있다. 정해진 범위 미만의 거리를 갖거나 상기 범위를 초과하는 거리를 갖는 연결경로는 배체시킨다(S524).As described above, it is preferable to have a larger distance than the distance 2, which indicates a direct correlation (eg, a = 2), and as the distance increases, the number of connected paths increases proportionally, so having an excessively large distance value It is desirable to exclude the connection path (eg, b = 10). The a and b values defining the distance range can be set through user settings and can be arbitrarily changed. In addition, the values of a and b may be changed in the form of finding an optimal solution through machine learning. A connection path having a distance less than or exceeding the specified range is excluded (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 the connection path between two nodes. As described above, the distance between two directly connected nodes is defined as a distance of 1 hop. In this case, when the distance of the first connection path is n1 (n1 is a natural number) and the distance of the second connection path is n2 (n2 is a natural number), the number of first connection paths can be calculated by adjusting to 1/n1. . Also, the number of second connection paths may be calculated by adjusting to 1/n2. That is, except for the direct correlation of distance 2, since nodes connected by a short distance may have a high similarity, the number of connection paths can be adjusted by dividing by the corresponding distance considering this more important. For example, the number of connection paths between nodes at a distance of 4 is considered to be 1/4, which may be considered larger (important) than 1/8, which is the number of connection paths at a distance of 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, products or customers having the largest number of connection paths are extracted (S528). At this time, the top several products or customers may be extracted as products or customers with high similarity by sorting based on the number of connection paths. A high degree of similarity means that the purchasing propensity is similar. In particular, when the customer-to-customer similarity is high, from the point of view of the customers judged to be similar, the possibility that the target customer will purchase the remaining products minus the integrated product within the first order including the integrated product through the integrated product is high Since it can be judged to be high, these products can be derived as recommended products.

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

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

도 9를 참조하면, 복수 개의 방사형 그래프(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. 9 , a plurality of radial graphs 610, 620, 630, and 640 may be entangled. In the device, 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 via order A or customer A. These two radial graphs 610 and 620 can be visualized and displayed on a display screen in two dimensions. Furthermore, the first radial graph 610 and the third radial graph 630 centered on product C may be connected to each other via order B or customer B, and in this case, the second radial graph 620 and the third radial graph 630 Graph 630 may also be linked to each other via order C or customer C. As such, when three or more radial graphs 620 are connected, it is difficult to visualize and express a 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 one 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 on 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 and fourth radial graphs 620 and 640 may be displayed at an angle. Accordingly, the graphs can be pulled through the zoom-in/zoom-out function of the user interface, and the connection relationship between a plurality of radial graphs can be seen by adjusting the three-dimensional angle using the panning function. can be visualized. Also, when a specific node is selected, the selected node is brought to the center of the screen so that a plurality of radial graphs connected to the center node are displayed in all directions.

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

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

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

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

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

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

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

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

도 11은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 추천 알고리즘 관련 인공지능 학습 방법을 설명하기 위한 개념도이다. 11 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.

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

본 발명의 일 실시예에 따르면, 장치에서 사용되는 인공지능 모델은 딥 러닝 콘볼루션 신경망 모델(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, the artificial intelligence model used in the device includes a deep learning convolutional neural network (CNN) model. However, it 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 training data sets. At this time, the two order data are the previous order data (order data subject to the similarity search request) of the selection process according to the graph-based derivation of similar products according to an embodiment of the present invention and the actual order data after product recommendation. It has a relationship with order data. That is, the customer who ordered order data 1 is recommended a plurality of products using the graph-based similar product derivation method according to an embodiment of the present invention, and combines order data 2 made by selecting one of the recommended data. Create a training data set. At this time, in deriving graph-based similar products for product recommendation, similar products are derived while changing whether similar or combined categories are used in the first class and whether similar or combined categories are used in the second class, Based on the order data after derivation, artificial intelligence is trained in the direction of placing an order in the product derived at the top through the graph-based similar product derivation process.

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

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

도 12는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 연결경로 인덱싱 방법을 설명하기 위한 개념도이다. 12 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.

도 12를 참조하면, 장치는 상품과 상품, 고객과 고객, 또는 상품과 고객 간의 연결경로를 데이터함에 있어서, 인덱싱을 하여 식별한다. 이때, 연결경로는 노드계층 식별자와 인덱스 넘버로 구성될 수 있다. 노드계층 식별자는 검색 중심이 되는 대상 노드의 식별자와 최종 도착 노드의 식별자의 조합으로 구성된다. 이때, 제 1 노드 계층(상품 노드)은 p로, 제 3 대상 노드 계층(고객 노드)은 m으로 식별될 수 있다. 이와 같은 방법으로 출발노드와 도착노드의 노드계층을 식별하고 나면, 이후, 인덱싱 번호가 붙는다. 인덱싱 번호는 질의와 관련된 것으로, 특별한 의미를 갖을 수 있다. 예컨대, pp 노드계층 식별자에 "0100" 인덱스가 붙으면, 이는 해당 상품을 구매한 고객들이 구매한 다른 상품을 찾아달라는 질의를 의미하고, 이와 연관된 경로는 제 1 상품(출발노드)을 주문한 고객이 묶음주문한 다른 상품을 의미한다. 노드계층 식별자에 직접 후속하여 붙는 인덱스의 의미에 따른 질의에 대한 설명은 도 13을 통해 보다 상세히 설명한다. Referring to FIG. 12 , the device performs indexing to identify connection paths between products, customers and customers, or products and customers. At this time, 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, which is the center of the search, and the identifier of the final 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 departure node and arrival node in this way, an indexing number is attached thereafter. An indexing number is related to a query and may have a special meaning. For example, if the index "0100" is attached to the pp node layer identifier, this means a query to find other products purchased by customers who purchased the product, and the path associated with this is bundled by customers who ordered the first product (start node) Means other products ordered. A description of a query according to the meaning of an index attached directly following a node layer identifier will be described in more detail with reference to FIG. 13 .

이와 같이, 인덱스까지 붙은 상태에서 각 연결경로는 "-1"의 형태로 식별된다. 즉, pp0100 질의와 연관된 첫 번째 경로는 "pp0100-1"로 데이터화될 수 있다. 이후, "-" 뒷단의 숫자를 1씩 증가하며 경로를 식별할 수 있다. 예컨대, 제 1 상품을 주문한 고객이 묶음 주문한 다른 상품이 다수 개 있으면, pp0100-1, pp0100-2, pp0100-3 등으로 정의될 수 있다. In this way, in the state where the index is attached, each connection path is identified in the form of "-1". That is, the first path associated with the pp0100 query can be dataized as "pp0100-1". After that, the number at the end of "-" is increased by 1 to identify the path. For example, if there are a plurality of other products ordered by a customer who ordered the first product 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. A connection path from the first product to the first customer is expressed as pm0100-1, pm0100-2, and the like. A 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 can be converted into data and retained by the device, and the number of connection paths within a specific distance range is calculated using this data.

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

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

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

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

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

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

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

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

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

본 발명의 실시예에 따르면, 상품과 상품 간의 유사성 판단에 있어서, 위와 같은 질의가 존재하고, 질의에 대한 연결경로 또한, 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 products, the above query exists, and the connection path for the query is also expressed as ppXXXX-X. In particular, although the connection path ppXXXX-X between products and products can be used, a combination of the pmXXXX-X path, which represents the path related to the similarity between the product and the customer, and the mpXXXX-X path, which represents the connection path related to the similarity between the customer and the product is available. That is, similarity between products may be determined using pm0000-1 + mp0000-1. In addition, similarity between products may be determined 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의 경로 중 어느 것을 이용할 때, 최적의 상품추천이 가능한지에 대한 것도 앞서 도 11의 인공지능 학습 모델을 이용하여 경로와 연관된 파라미터(가중치 포함)를 변경시키면서 학습을 시킴으로써 정확도를 제고시킬 수 있다. According to an embodiment of the present invention, when using the path of (i) ppXXXX-X and (ii) pmXXXX-X + mmXXXX-X + mpXXXX-X, whether optimal product recommendation is possible is also shown in FIG. Accuracy can be improved by learning while changing the parameters (including weights) associated with the path using the artificial intelligence learning model of .

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

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

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

장치는 유사성이 높은, 즉, 연결경로가 많은 순서로 상위 n개(본 실시예에서는 n=5, 즉, 5개)의 상품 및 해당 상품별 경로의 갯수를 반환할 수 있다.The device may return the top n products (n=5, ie, 5 in this embodiment) 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, it may be too late to identify customer preferences, and in the case of purchase cases, it is difficult to see statistical correlation because there is not enough data. that can be considered

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

도 15를 참조하면, 장치(서버)는 상품 조회와 연관된 조회 이력 데이터를 쇼핑몰들 및/또는 쇼핑몰들을 관리하는 서버로부터 수집한다(S1210). 이는 웹 로그 파일로부터 사용자들의 상품정보 조회 이력을 추출함에 의해 달성될 수 있다. 조회이력은 순차적인 상품코드로 변환하여 데이터화할 수 있다. 예컨대, 상품 1을 보고, 상품 2를 조회하고, 상품 4를 조회한 후, 다시 상품 1을 보고 로그아웃한 이력에서 시계열적인 부분까지 고려하여 상품코드로 변환함에 의해 조회 이력 데이터를 생성한다. Referring to FIG. 15 , the device (server) collects inquiry history data related to product inquiry from shopping malls and/or a server managing the shopping malls (S1210). This can be achieved by extracting product information search histories of users from web log files. The search history can be converted into sequential product codes and converted into data. For example, product 1 is viewed, product 2 is inquired, product 4 is inquired, and product 1 is viewed again and the logout history is converted into a product code in consideration of a time-series part, thereby generating inquiry history data.

그리고는, 장치는 조회 이력 데이터를 그래프 형태로 변환한 후(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” to correspond to the preceding “product-order-customer”.

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

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

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

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

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

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

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

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

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

본 발명의 다른 실시예에 따르면, 페이지에만 제한을 두어 상품을 추천해야만 하는 것은 아니고, 세션에 제한을 두어, 3개 세션 내에서 이루어진 상품의 조회수를 기반으로 상품을 추천할 수 있다. 나아가, 조회수가 높아 추천된 상품의 카테고리 식별자를 이용하여 경합의 카테고리에 있는 상품만 추천하거나, 유사의 카테고리에 있는 상품을 추천할 수 있다. 유사 또는 경합 카테고리의 사용, 클래스의 사용 부분 역시 도 11의 인공지능 모델을 이용하여 그 설정값을 최적화할 수 있다. 이때의 학습데이터 셋은 검색 요청의 대상이 되는 조회 데이터 1과 본 발명의 일 실시예에 따른 그래프 기반의 상품추천 과정을 통해 실제 구매가 이루어진 상품과 연관된 조회 데이터 2의 세트가 될 수 있다. According to another embodiment of the present invention, it is not necessary to recommend products by limiting only pages, but by limiting sessions, it is possible to recommend products based on the number of product views made within three sessions. Furthermore, only products in a competing category or products in a similar category may be recommended using a category identifier of a product recommended due to a high number of views. The use of similar or competing categories and the use of classes can also be optimized using the artificial intelligence model of FIG. 11 . At this time, the learning data set may be a set of inquiry data 1, which is the object of the search request, and inquiry data 2 related to a product 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 device 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 the largest number of hits using the second graph database, the degree of similarity between the 10 recommended products and the requested product may be calculated using the first graph database. Accordingly, the recommendation order of 10 recommended candidates may be changed based on products having a high degree of similarity using the first graph database. The reverse is also possible.

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

이하에서는 제 2 방식에 의한 상품 추천으로, 그룹 고객과 그룹 상품 간의 상품 추천, 예컨대 바스킷(Basket) 추천에 대하여 설명하기로 한다.Hereinafter, product recommendation between group customers and group products, for example, basket recommendation, as product recommendation according to the second method will be described.

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

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

도 19a 및 도 19b는 5명의 고객과 6개의 상품이 있는 경우, 특정 수의 고객 군과 특정 수의 상품군을 매칭하여 특별 프로모션을 제공하기 위한 매칭방법을 설명하기 위한 개념도이다.19A and 19B are conceptual views 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.

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

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

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

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

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

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

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

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

데이터를 획득하여 행렬을 생성한 후, 장치는 상품별 총 연결경로의 수를 산출하여(S1720), 연결경로의 수가 큰 상위 순위의 상품들을 선택한다(S1730). 선택되는 상품의 수는 프로모션 대상 상품의 수를 따른다. 이는 사용자(예컨대, 쇼핑몰 운영자)가 사용자 인터페이스를 통해 선택할 수 있는 상황이다. 또는, 특정 갯수의 상품을 기준값으로 설정하지 않고, 임계값 이상의 연결경로의 수를 갖는 상품을 모두 선택할 수 있다. 예컨대, 700 개의 연결경로의 수보다 큰 연결경로를 갖는 상품들이 그 갯수를 제한하지 않고 선택될 수 있다. 연결경로의 수가 적은 것은 관련성이 적다고 판단될 수 있다. 이 경우, 연결경로의 수가 적은 것을 선택하여 할인을 더 많이 하는 방향으로 처리할 수 있다. 도 20b의 실시예에서, 장치는 연결경로의 수가 높은 상위 4개의 상품을 선택한다.After obtaining the 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 selected products follows the number of promotional products. This is a situation that a user (eg, shopping mall operator) can select through a user interface. Alternatively, all products having a number of connection paths greater than or equal to a threshold value may be selected without setting a specific number of products as a reference value. For example, products having a connection path greater than 700 connection paths may be selected without limiting the number. A small number of connection paths may be determined to have little relevance. In this case, processing may be performed in the direction of increasing the discount by selecting a connection path having a small number. In the embodiment of FIG. 20B , the device selects the top 4 products with a high number of connection paths.

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

도 21은 본 발명의 또 다른 실시예에 따른 상품기반 바스켓 추천 방법을 나타낸 흐름도이다. 이는 도 19a의 (1) 방법에 관한 것이다.21 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. 19A.

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

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

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

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

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

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

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

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

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

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

도 23을 참조하면, 장치는 프로모션의 후보가 될 상품 및 고객과 연관된 구매가능성 지표에 대한 데이터를 획득하고 나면, 상품을 열로, 고객을 행으로 하는 행렬을 생성한다(S2010). 행렬의 빈칸에는 상품-고객 간의 구매가능성 지표가 입력되도록 한다. Referring to FIG. 23 , after obtaining data on purchaseability indicators associated with products to be promotional candidates and customers, the apparatus creates a matrix with products as columns and customers as rows (S2010). An index of purchasing possibility between a product and a customer is input in the blank of the matrix.

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

고객이 선택되고 나면, 장치는 각 행에 대한 상품별 부분합을 산출한다(S2040). 그리고는, 상품별 부분합이 큰 순서로 순위화한 후, 프로모션 대상으로 하고자 하는 상품의 수만큼 구매가능성 부분합 순위가 높은 상품을 선택하고 나머지 상품들을 제외시킨다(S2050).After the customer is selected, the device calculates subtotals for each product for each row (S2040). Then, after ranking in ascending order of subtotals for each product, a product having a higher rank of subtotal availability 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 into a package for the corresponding customer group and conducts a promotion (S2060).

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

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

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

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

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

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

도 25는 본 발명의 일 실시예에 따른 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축하고, 구축된 빅데이터를 기반으로 그래프 데이터베이스 기반의 상품추천 방법 및/또는 상품 바스켓 추천 방법을 수행하는 장치를 개략적으로 나타낸 블록도이다.25 is an apparatus for constructing customer big data based on generation of an integrated customer identifier and performing a graph database-based product recommendation method and/or product basket recommendation method based on the built big data according to an embodiment of the present invention. It is a schematic block diagram.

도 25에 도시된 바와 같이, 본 발명의 일 실시예에 따른 상품추천 장치는 통신부(2210), 디스플레이부(2220), 프로세서(2230), 메모리(2240) 및 입력부(2250)를 포함할 수 있다.As shown in FIG. 25 , 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. .

도 25를 참조하면, 통신부(2210)는 유선 및 무선 네트워크 중 적어도 하나와 연결되어 타 장치와 통신을 위한 구성요소이다. 통신부(2210)는 안테나, 통신 관련 칩(chip) 등으로 구현될 수 있다.Referring to FIG. 25 , the communication unit 2210 is a component for communicating with another device by being connected to at least one of wired and wireless networks. 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 . It can be implemented as one of monitors, TVs and other panels.

프로세서(2230)는 상기 통신부를 기반으로 복수 개의 쇼핑몰로부터 상기 복수 개의 쇼핑몰에 대응하는 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 고객 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신할 수 있다. 프로세서(2230)은 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정하고, 상기 제 1 고객에 대응하는 통합 고객 식별자를 생성하고, 상기 제 1 고객에 대응하는 상기 통합 고객 식별자를 상기 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개인 정보 요소 그룹과 연관시켜 데이터베이스에 저장하고, 상기 통합 고객 식별자를 기반으로 하여 상기 복수 개의 쇼핑몰로부터 상기 제 1 고객의 로그 기록을 데이터베이스에 수집함으로써 빅데이터를 구축할 수 있다. 프로세서(2230)은 마이크로 프로세서로 구현될 수 있다.Based on the communication unit, the processor 2230 may receive a plurality of individual shopping mall customer identifiers corresponding to the plurality of shopping malls and a plurality of personal information element groups corresponding to the plurality of individual shopping mall customer identifiers from the plurality of shopping malls. The processor 2230 identifies a first customer based on the plurality of personal information element groups, generates an integrated customer identifier corresponding to the first customer, and generates the integrated customer identifier corresponding to the first customer. Big data is stored in a database in association with a plurality of individual shopping mall customer identifiers and the plurality of personal information element groups, and by collecting log records of the first customer from the plurality of shopping malls in the database based on the integrated customer identifier can be built The processor 2230 may be implemented as a microprocessor.

상기 프로세서(2230)는 복수 개의 개인 정보 요소 그룹 간의 유사도를 산출하고, 산출된 유사도를 기반으로 하여 제 1 고객을 특정할 수 있다. 상기 프로세서(2230)는 개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산할 수 있다. 상기 프로세서(2230)는, 산출된 상기 유사도가 정해진 값 이상이면 동일한 고객으로 특정할 수 있다. 상기 프로세서(2230)는, 복수 개의 개인 정보 요소 그룹의 데이터를 딥러닝을 통하여 학습된 인공지능 엔진에 입력하여 동일한 고객별로 분류할 수 있다.The processor 2230 may calculate a similarity between a plurality of personal information element groups and specify a first customer based on the calculated similarity. The processor 2230 may calculate the number of personal information elements included in the personal information element group and the number of personal information elements matched between the personal information element groups. The processor 2230 may specify the same customer if the calculated similarity is greater than or equal to a predetermined value. The processor 2230 may input data of a plurality of personal information element groups into an artificial intelligence engine learned through deep learning and classify the data according to the same customer.

상기 프로세서(2230)는 제 1 쇼핑몰로부터 제 1 쇼핑몰에서 제 2 고객을 식별할 수 있는 제 1 개별 쇼핑몰 고객 식별자 및 상기 제 1 개별 쇼핑몰 고객 식별자에 대응하는 제 1 개인 정보 요소 그룹을 수신하고, 상기 제 1 개별 쇼핑몰 고객 식별자를 기반으로 하여 상기 제 2 고객에 대응하는 통합 고객 식별자가 상기 데이터베이스에 존재하는 지를 판단하고, 상기 데이터베이스에 상기 제 2 고객에 대응하는 통합 고객 식별자가 존재하지 않는 경우, 상기 제 1 개인 정보 요소 그룹을 기반으로 하여 상기 제 2 고객에 대응하는 통합 고객 식별자를 생성하고, 상기 제 2 고객에 대응하는 통합 고객 식별자를 상기 제 1 개별 쇼핑몰 고객 식별자 및 상기 제 1 개인 정보 요소 그룹과 연관시켜 상기 데이터베이스에 저장할 수 있다.The processor 2230 receives, from a first shopping mall, a first individual shopping mall customer identifier capable of identifying a second customer in the first shopping mall and a first personal information element group corresponding to the first individual shopping mall customer identifier; It is determined whether an integrated customer identifier corresponding to the second customer exists in the database based on the first individual shopping mall customer identifier, and if the integrated customer identifier corresponding to the second customer does not exist in the database, the An integrated customer identifier corresponding to the second customer is generated based on the first personal information element group, and the integrated customer identifier corresponding to the second customer is combined with the first individual shopping mall customer identifier and the first personal information element group. It can be associated with and stored in the database.

상기 프로세서(2230)는 데이터베이스에 상기 제 2 고객에 대응하는 통합 고객 식별자가 존재하는 경우, 상기 데이터베이스에 저장된 상기 제 2 고객의 개인 정보 요소 그룹과 상기 제 1 개인 정보 요소 그룹을 비교하는 것을 기반으로 하여, 변경된 내용이 있는지를 판단할 수 있다. 이때 비교 결과 변경된 내용이 있는 경우, 변경된 내용을 기반으로 상기 제 2 고객의 개인 정보 요소 그룹의 내용을 업데이트할 수 있다.The processor 2230 compares the personal information element group of the second customer stored in the database with the first personal information element group when an integrated customer identifier corresponding to the second customer exists in the database. Thus, it is possible to determine whether there has been any change. At this time, if there is a changed content as a result of the comparison, the content of the personal information element group of the second customer may be updated based on the changed content.

상기 프로세서(2230)는 수집된 상기 제 1 고객의 로그 기록을 기반으로 하여 그래프 데이터베이스를 기반으로 한 상품 추천 및 바스킷 추천 중 적어도 어느 하나를 기반으로 하여 상기 제 1 고객에 대응하는 상품 추천을 수행할 수 있다. 메모리(2230)는 프로세서(2230)의 동작에 필요한 데이터를 저장할 수 있다.The processor 2230 recommends a product corresponding to the first customer based on at least one of product recommendation and basket recommendation based on a graph database based on the collected log records of the first customer. can do. The memory 2230 may store data necessary for the operation of the processor 2230.

상기 프로세서(2230)는 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고, 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하고, 상기 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하고, 상기 그래프 형태의 데이터를 데이터베이스에 저장하고, 저장된 그래프 형태의 데이터를 기반으로 하여, 유사상품에 대한 질의에 대응하여 상기 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환할 수 있다.The processor 2230 receives a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from a plurality of shopping malls, and integrates for each customer based on the plurality of personal information element groups. Create a customer identifier, collect order history data of a plurality of customers identified as the plurality of integrated customer identifiers from the plurality of shopping malls, and convert the collected order history data into graph-type data composed of at least three node hierarchies. Convert, store the data in the form of a graph in a database, and based on the data in the form of a graph, connect between at least two nodes among the nodes included in the hierarchy of the at least three nodes in response to a query about a similar product Based on the number of routes, similarity can be determined and returned.

한편, 프로세서(2230)는 다른 관점에서, 본 발명의 일 실시예에 따른 그래프 기반의 유사성 판단 및 상품 바스켓 추천 알고리즘을 실행하는 구성요소이다. 프로세서(2230)는 통신부(2210)를 통해 입력되는 주문 이력 데이터 및 조회 이력 데이터를 기반으로 그래프 형태의 데이터로 변환하고, 클라이언트로부터의 유사상품에 대한 질의에 대응하여 변환된 그래프 형태의 데이터를 이용하여 유사상품 및 유사고객에 대한 정보를 반환한다. 이때, 제 1 노드로부터 제 2 노드까지의 연결경로(이는 일정 범위의 거리를 갖는 것으로 제한될 수 있음)의 갯수를 기반으로 가장 유사도가 높은 순으로 상품 및/또는 고객을 정렬하여 반환할 수 있다. Meanwhile, from another point of view, 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. The processor 2230 converts the order history data and inquiry history data input through the communication unit 2210 into graph-type data, and uses the converted graph-type data in response to a query about similar products from a client. to return information on similar products and similar customers. In this case, based on the number of connection paths from the first node to the second node (which may be limited to having a certain range of distance), products and/or customers may be sorted and returned in order of highest similarity. .

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

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

본 발명의 실시예에 따르면, 프로세서(2230)는 인공지능 모델 학습 모듈(미도시) 및 인공지능 모델 실행 모듈(미도시)을 포함할 수 있으며, 복수 개의 개인 정보 요소 그룹의 데이터를 유사도를 기반으로 동일한 고객별로 분류하도록 학습시키고, 통합 고객 식별자에 대응하기 위한 고객별 분류를 수행할 수 있다. 또한, 그래프 기반의 유사성 판단의 정확도를 높이기 위한 인공지능 모델을 학습시키고, 학습된 인공지능 모델을 실행하여 실제 상품 추천의 정확도를 제고시킬 수 있다.According to an embodiment of the present invention, the processor 2230 may include an artificial intelligence model learning module (not shown) and an artificial intelligence model execution module (not shown), and converts data of a plurality of personal information element groups based on similarity. It can be trained to classify by the same customer, and can perform classification by customer to respond to the integrated customer identifier. In addition, it is possible to train an artificial intelligence model to increase the accuracy of graph-based similarity determination and to improve the accuracy of actual product recommendation by executing the learned artificial intelligence model.

메모리(2240)는 프로세서(2230)에서 실행되는 프로그램의 지시어를 저장하는 저장소이다. 메모리(2240)는 통신부(2210)를 통해 수신 또는 송신되는 정보를 저장한다. 또한, 프로세서(2230)를 통해 처리되는 정보 중 적어도 일부를 저장할 수 있다.The memory 2240 is a storage for storing instructions of a program running on the processor 2230. The memory 2240 stores information received or transmitted through the communication unit 2210 . In addition, at least some of the information processed through 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, mouse, or touch panel. 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 apparatus described above may be implemented as hardware components, software components, and/or a combination of hardware components and software components. For example, systems, devices and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA) ), programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. A processing device may run an operating system (OS) and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of software. For convenience of understanding, there are cases in which one processing device is used, but those skilled in the art will understand that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it can include. For example, a processing device may include a plurality of processors or a processor and a controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of the foregoing, which configures a processing device to operate as desired or processes independently or collectively. You can command the device. Software and/or data may be any tangible machine, component, physical device, virtual equipment, computer storage medium or device, intended to be interpreted by or provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed on networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer readable 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 on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program commands 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. - includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

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

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

110-1, 110-2, …, 110-N : 쇼핑몰
120 : 네트워크
130 : 서버
140 : 데이터베이스
150 : 사용자 단말
110-1, 110-2, ... , 110-N: shopping mall
120: network
130: server
140: database
150: user terminal

Claims (22)

전자상거래 기반의 복수 개의 쇼핑몰과 연동하는 서버에 의하여 수행되며,
상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하는 단계;
상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하는 단계 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-;
상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하는 단계;
상기 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하는 단계;
상기 그래프 형태의 데이터를 데이터베이스에 저장하는 단계; 및
상기 저장된 그래프 형태의 데이터를 기반으로 하여, 유사상품에 대한 질의에 대응하여 상기 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환하는 단계를 포함하고,
상기 고객별 통합 고객 식별자를 생성하는 단계는,
상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정하는 단계; 및
상기 제 1 고객에 대응하는 통합 고객 식별자를 생성하는 단계를 포함하고,
상기 제 1 고객을 특정하는 단계는,
개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산하는 것을 기반으로 하여, 상기 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도를 산출하는 단계; 및
산출된 상기 개인 정보 유사도가 정해진 값 이상이면 동일한 고객으로 특정하는 단계를 포함하고,
상기 적어도 3개의 노드 계층은 상품과 연관된 제 1 노드 계층, 주문과 연관된 제 2 노드 계층 및 고객과 연관된 제 3 노드 계층을 포함하고,
유사도 판단의 정확도를 제고시키기 위한 인공지능 모델을 학습시키는 단계를 더 포함하되,
상기 유사상품에 대한 질의의 기준이 되는 제 1 노드를 포함하는 제 1 주문 이력 데이터와 유사도 판단에 의해 반환된 유사상품 중 실제 주문이 이루어진 상품과 관련된 제 2 노드를 포함하는 제 2 주문 이력 데이터를 학습 데이터 셋으로 생성하여 상기 인공지능 모델을 학습시키고,
연결경로의 갯수 산정시, 제 1 거리 범위 내의 연결경로만 산정되되, 상기 학습 데이터 셋을 기반으로, 연결경로 산출의 임계범위가 되는 상기 제 1 거리 범위를 변경하면서 인공지능 모델을 학습시키고,
상기 학습 데이터 셋을 기반으로 상품 카테고리 분할의 클래스와 상기 클래스에 대응하는 유사 카테고리 사용 또는 결합에 의한 카테고리 사용 여부를 변경하면서 인공지능 모델을 학습시키는 것을 특징으로 하는 상품 추천 방법.
It is performed by a server that links with a plurality of e-commerce based shopping malls,
receiving a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from the plurality of shopping malls;
generating an integrated customer identifier for each customer based on the plurality of personal information element groups, wherein the same customer in the plurality of shopping malls is identified as one integrated customer identifier;
collecting order history data of a plurality of customers identified as the plurality of integrated customer identifiers from the plurality of shopping malls;
converting the collected order history data into data in the form of a graph consisting of at least three node hierarchies;
storing the data in the form of a graph in a database; and
Based on the stored data in the form of a graph, determining and returning a degree of similarity based on the number of connection paths between at least two nodes among nodes included in the at least three node hierarchies in response to a query about similar products. include,
The step of generating an integrated customer identifier for each customer,
specifying a first customer based on the plurality of personal information element groups; and
generating an integrated customer identifier corresponding to the first customer;
The step of specifying the first customer,
Calculating a personal information similarity between the plurality of personal information element groups based on calculating the number of personal information elements included in the personal information element group and the number of personal information element groups that match the personal information element groups; and
If the calculated personal information similarity is greater than or equal to a predetermined value, specifying as the same customer;
The at least three node hierarchies include a first node hierarchy associated with products, a second node hierarchy associated with orders, and a third node hierarchy associated with customers;
Further comprising the step of learning an artificial intelligence model to improve the accuracy of similarity judgment,
First order history data including a first node serving as a criterion for querying similar products and second order history data including a second node related to a product for which an actual order was made among similar products returned by similarity determination Create a learning data set to train the artificial intelligence model,
When calculating the number of connection paths, only connection paths within a first distance range are calculated, and the artificial intelligence model is trained while changing the first distance range, which is a critical range of connection path calculation, based on the learning data set,
Based on the learning data set, the product recommendation method characterized in that the artificial intelligence model is trained while changing whether to use a class of product category division and a similar category corresponding to the class or a category by combination.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 상품 추천 장치에 있어서,
유선 및 무선 네트워크 중 적어도 하나와 통신하는 통신부;
상기 통신부를 통하여 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-, 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하고, 상기 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하고, 상기 그래프 형태의 데이터를 데이터베이스에 저장하고, 상기 저장된 그래프 형태의 데이터를 기반으로 하여, 유사상품에 대한 질의에 대응하여 상기 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환하는 프로세서; 및
상기 프로세서의 동작에 필요한 데이터를 저장하는 메모리를 포함하고,
상기 프로세서는 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정하고, 상기 제 1 고객에 대응하는 통합 고객 식별자를 생성하고,
개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산하는 것을 기반으로 하여, 상기 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도를 산출하고, 산출된 상기 개인 정보 유사도가 정해진 값 이상이면 동일한 고객으로 특정하고,
상기 적어도 3개의 노드 계층은 상품과 연관된 제 1 노드 계층, 주문과 연관된 제 2 노드 계층 및 고객과 연관된 제 3 노드 계층을 포함하고,
상기 프로세서는,
유사도 판단의 정확도를 제고시키기 위한 인공지능 모델을 학습시키되,
상기 유사상품에 대한 질의의 기준이 되는 제 1 노드를 포함하는 제 1 주문 이력 데이터와 유사도 판단에 의해 반환된 유사상품 중 실제 주문이 이루어진 상품과 관련된 제 2 노드를 포함하는 제 2 주문 이력 데이터를 학습 데이터 셋으로 생성하여 상기 인공지능 모델을 학습시키고,
연결경로의 갯수 산정시, 제 1 거리 범위 내의 연결경로만 산정되되, 상기 학습 데이터 셋을 기반으로, 연결경로 산출의 임계범위가 되는 상기 제 1 거리 범위를 변경하면서 인공지능 모델을 학습시키고,
상기 학습 데이터 셋을 기반으로 상품 카테고리 분할의 클래스와 상기 클래스에 대응하는 유사 카테고리 사용 또는 결합에 의한 카테고리 사용 여부를 변경하면서 인공지능 모델을 학습시키는 것을 특징으로 하는 상품 추천 장치.
In the product recommendation device,
a communication unit communicating with at least one of a wired and wireless network;
Receiving a plurality of individual shopping mall customer identifiers and a plurality of personal information element groups corresponding to the plurality of individual shopping mall identifiers from a plurality of shopping malls through the communication unit, and based on the plurality of personal information element groups, an integrated customer identifier for each customer -The same customer in the plurality of shopping malls is identified as one integrated customer identifier-, collects order history data of a plurality of customers identified as the plurality of integrated customer identifiers from the plurality of shopping malls, and the collected Convert order history data into graph-type data consisting of at least three node hierarchies, store the graph-type data in a database, and respond to queries about similar products based on the stored graph-type data a processor for determining and returning a similarity based on the number of connection paths between at least two nodes among nodes included in at least three node hierarchies; and
A memory for storing data necessary for the operation of the processor;
The processor identifies a first customer based on the plurality of personal information element groups and generates an integrated customer identifier corresponding to the first customer;
Based on calculating the number of personal information elements included in the personal information element group and the number of matching personal information elements between the personal information element groups, the personal information similarity between the plurality of personal information element groups is calculated, and the calculated If the similarity of the personal information is greater than or equal to a predetermined value, the same customer is identified,
The at least three node hierarchies include a first node hierarchy associated with products, a second node hierarchy associated with orders, and a third node hierarchy associated with customers;
the processor,
An artificial intelligence model to improve the accuracy of similarity judgment is trained,
First order history data including a first node serving as a criterion for querying similar products and second order history data including a second node related to a product for which an actual order was made among similar products returned by similarity determination Create a learning data set to train the artificial intelligence model,
When calculating the number of connection paths, only connection paths within a first distance range are calculated, and the artificial intelligence model is trained while changing the first distance range, which is a critical range of connection path calculation, based on the learning data set,
Based on the learning data set, the product recommendation device is characterized in that the artificial intelligence model is trained while changing whether to use a class of product category division and a similar category corresponding to the class or a category by combination.
삭제delete 삭제delete 삭제delete 삭제delete
KR1020200079823A 2020-06-30 2020-06-30 Method, Apparatus and System for Item Recommendation Using Consumer Bigdata KR102518389B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200079823A KR102518389B1 (en) 2020-06-30 2020-06-30 Method, Apparatus and System for Item Recommendation Using Consumer Bigdata
PCT/KR2021/008120 WO2022005140A1 (en) 2020-06-30 2021-06-28 Method, device, and system for constructing customer big data on basis of generating integrated customer identifier

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200079823A KR102518389B1 (en) 2020-06-30 2020-06-30 Method, Apparatus and System for Item Recommendation Using Consumer Bigdata

Publications (2)

Publication Number Publication Date
KR20220001617A KR20220001617A (en) 2022-01-06
KR102518389B1 true KR102518389B1 (en) 2023-04-06

Family

ID=79347812

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200079823A KR102518389B1 (en) 2020-06-30 2020-06-30 Method, Apparatus and System for Item Recommendation Using Consumer Bigdata

Country Status (1)

Country Link
KR (1) KR102518389B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114741589B (en) * 2022-03-24 2024-05-07 深圳买个宝科技有限公司 Commodity transaction system based on big data
KR102464302B1 (en) * 2022-05-12 2022-11-09 (주)커넥 Method, device and computer-readable recording medium for linking integrated managed account information to shopping mall accounts
CN114820137B (en) * 2022-05-25 2024-07-23 中国工商银行股份有限公司 Product recommendation method and device, processor and electronic equipment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101871747B1 (en) * 2017-04-07 2018-06-27 주식회사 화성 Similarity tendency based user-sightseeing recommendation system and method thereof

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101020206B1 (en) * 2008-06-16 2011-03-08 성균관대학교산학협력단 Method for recommendation to user and storage medium storing program for realizing the method
KR20100095730A (en) * 2009-02-23 2010-09-01 (주)유비전트 Integrated customer information system and method of the same
KR102097045B1 (en) * 2012-12-04 2020-04-03 에스케이플래닛 주식회사 Method and apparatus to recommend products reflecting characteristics of users
KR20150121945A (en) * 2014-04-22 2015-10-30 주식회사 포워드벤처스 Item recommend system and method for recommending item

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101871747B1 (en) * 2017-04-07 2018-06-27 주식회사 화성 Similarity tendency based user-sightseeing recommendation system and method thereof

Also Published As

Publication number Publication date
KR20220001617A (en) 2022-01-06

Similar Documents

Publication Publication Date Title
KR102246538B1 (en) Item recommendation method and apparatus using graph database
CN112182412B (en) Method, computing device, and computer storage medium for recommending physical examination items
Ringel et al. Visualizing asymmetric competition among more than 1,000 products using big search data
KR102518389B1 (en) Method, Apparatus and System for Item Recommendation Using Consumer Bigdata
CN107622427B (en) Deep learning method, device and system
US8751430B2 (en) Methods and system of filtering irrelevant items from search and match operations using emotional codes
Sılahtaroğlu et al. Analysis and prediction of Ε-customers' behavior by mining clickstream data
JP5859606B2 (en) Ad source and keyword set adaptation in online commerce platforms
CN105183727A (en) Method and system for recommending book
KR20220001616A (en) Method, Apparatus and System for Constructing Bigdata Based on Generating United Identifier of Customer
JP6679451B2 (en) Selection device, selection method, and selection program
CN106326318B (en) Searching method and device
KR102193345B1 (en) Item recommendataion method and apparatus between group member and group item
KR102538398B1 (en) Method, Apparatus and System for Recommendation in Groups Using Bigdata
KR101026544B1 (en) Method and Apparatus for ranking analysis based on artificial intelligence, and Recording medium thereof
KR102442988B1 (en) A taste network generation system based on user experience using CNN learning
CN111460300B (en) Network content pushing method, device and storage medium
Sharawi et al. Utilization of data visualization for knowledge discovery in modern logistic service companies
KR20220163089A (en) Product marketing linkage system and method
KR20220120986A (en) Recording media that records a program that provides a template for recommending goods in connection with the fan community
KR20210112258A (en) Method and apparatus for providing personalized recommendation service for offline purchase
KR102588300B1 (en) Shopping mall product exposure information provision system and method
Fan E-Commerce Data Mining Analysis based on User Preferences and Association Rules
Madke et al. User profile based behavior identificaton using data mining technique
Unadkat et al. Survey Paper on Fuzzy Logic Based Recommender System

Legal Events

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