KR102538398B1 - 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템 - Google Patents

빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템 Download PDF

Info

Publication number
KR102538398B1
KR102538398B1 KR1020200079824A KR20200079824A KR102538398B1 KR 102538398 B1 KR102538398 B1 KR 102538398B1 KR 1020200079824 A KR1020200079824 A KR 1020200079824A KR 20200079824 A KR20200079824 A KR 20200079824A KR 102538398 B1 KR102538398 B1 KR 102538398B1
Authority
KR
South Korea
Prior art keywords
customer
product
products
personal information
customers
Prior art date
Application number
KR1020200079824A
Other languages
English (en)
Other versions
KR20220001618A (ko
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 KR1020200079824A priority Critical patent/KR102538398B1/ko
Priority to PCT/KR2021/008120 priority patent/WO2022005140A1/ko
Publication of KR20220001618A publication Critical patent/KR20220001618A/ko
Application granted granted Critical
Publication of KR102538398B1 publication Critical patent/KR102538398B1/ko

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
    • 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/0207Discounts or incentives, e.g. coupons or rebates

Abstract

빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템이 개시되어 있다. 상품 추천 방법은 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고, 복수 개의 쇼핑몰에서의 구매 가능한 복수 개의 상품들 및 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하고, 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하고, 복수 개의 상품들 중 적어도 둘 이상을 열(Column)로 복수의 고객들 중 적어도 둘 이상을 행(Row)으로 구성하되, 복수의 고객들 중 일부는 복수의 상품들 중 일부와 연관 관계를 가지며, 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표인 행렬을 생성하고, 생성된 행렬을 분석하는 것에 의하여, 적어도 둘 이상의 상품 및 상기 적어도 둘의 상품을 추천할 적어도 둘의 고객들을 선택할 수 있다. 따라서, 그룹 고객에게 그룹 상품을 용이하게 추천할 수 있다.

Description

빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템 {Method, Apparatus and System for Recommendation in Groups Using Bigdata}
본 발명은 고객 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템에 관한 것으로, 복수 개의 쇼핑몰들로부터 빅데이터를 구축하고 이를 기반으로 하여 그룹 고객 별로 최적화된 상품 그룹을 추천을 수행할 수 있는 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템에 관한 것이다.
일반적으로, 인터넷을 기반으로 하는 온라인을 기반으로 하는 전자상거래에서 마케팅은 빼 놓을 수 없는 성공 요인이다. 이러한 인터넷을 이용한 종래의 마케팅 방식으로는 이메일 서비스, 검색 서비스 및 전자상거래 서비스 등을 제공하는 포털 사이트 또는 전자상거래 사이트 등의 웹페이지 상에 배너 광고나 이미지 광고 등을 노출시켜 사용자가 해당 광고를 클릭하면 링크된 광고주의 서버로 연결되도록 한다.
그런데, 이러한 종래의 마케팅 방식은 인터넷 사용자의 거주지역, 연령, 취향 등의 구분 없이 불특정 다수에게 광고 콘텐츠를 일괄적으로 제공하므로 고객의 입장에서는 광고가 오히려 노이즈 정보로 인식되어 짜증을 유발하고 광고 효과도 미미한 문제가 있다.
이에 따라, 타겟 광고 기술이 활발히 개발되고 있다. 예를 들어, 한국특허공개 제2013-0157475호는 사용자에게 광고 환경 설정 인터페이스를 제공하고, 사용자로부터 광고 환경 설정 정보를 수집하는 기준 정보 수집부 및 수집된 광고
환경 설정 정보를 기초로 하여 후보 광고를 검출하고, 검출된 후보 광고 중 광고 슬롯 별 노출 광고를 선택하여 편성하는 광고 관리부를 포함하는 타겟 광고 제공 장치 등의 기술을 개시하고 있다.
그러나, 이러한 종래의 타겟 광고 제공 기술은 고객이 노출될 광고나 노출을 차단할 광고들의 카테고리를 환경 설정 인터페이스를 통하여 일일이 설정하여야 하므로 번거로우며, 카테고리 별 설정을 기반으로 하므로 타겟 광고의 정확도도 떨어지므로, 실제 타겟 광고의 활용성도 높지 않은 것이 사실이다.
또한, 종래의 타겟 광고 제공 기술은 고객 정보를 수집하기 위한 링크를 각각의 웹 페이지 내의 내부프레임(I-Frame)에 삽입하여 사용자 단말기와 사용자 정보 수집 서버와 연결되는 방식을 사용하나 이는 보안 및 네트워크 로드 측면에서 효율적이지 못하며, 쇼핑몰 사업자 마다 각기 다른 정보 수집 방식을 사용하므로 수집 정보가 한정적이고 데이터의 량도 많지 않아 정확도도 떨어지는 문제를 내포하고 있다.
따라서, 전자상거래 기반의 복수 개의 쇼핑몰로부터 빅데이터를 용이하게 획득할 수 있도록 하고, 빅데이터에 기반하여 고객이 원하는 신뢰성 있는 상품 정보를 고객에게 적합한 방식으로 추천할 수 있는 새로운 기법의 마케팅 기술의 개발이 시급히 요구되고 있는 실정이다.
제2013-0157475호
본 발명은 이러한 문제점을 해결하기 위한 것으로서, 복수 개의 쇼핑몰들로부터 빅데이터를 구축하고 이를 기반으로 하여 그룹 고객 별로 최적화된 상품 그룹을 추천을 수행할 수 있는 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템을 제공하는데 그 목적이 있다.
이러한 목적을 달성하기 위하여 본 발명은 일 측면(Aspect)에서 상품 추천 방법을 제공한다. 상기 상품 추천 방법은, 전자상거래 기반의 복수 개의 쇼핑몰과 연동하는 서버에 의하여 수행되며, 상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하는 단계; 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하는 단계 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-; 상기 복수 개의 쇼핑몰에서의 구매 가능한 복수 개의 상품들 및 상기 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하는 단계, 상기 복수의 고객들은 복수 개의 통합 식별자에 의하여 식별됨; 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하는 단계; 상기 복수 개의 상품들 중 적어도 둘 이상을 열(Column)로 상기 복수의 고객들 중 적어도 둘 이상을 행(Row)으로 구성하되, 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표인 행렬을 생성하는 단계; 및 상기 생성된 행렬을 분석하는 것에 의하여, 적어도 둘 이상의 상품 및 상기 적어도 둘의 상품을 추천할 적어도 둘의 고객들을 선택하는 단계를 포함한다.
상기 복수 개의 개인 정보 요소 그룹에 포함된 개인 정보 요소들은 비식별자화된 개인 정보일 수 있다. 상기 비식별자화된 개인 정보는, 고객 이메일, 고객 이름, 고객 전화번호. 고객 별명, 고객 주소, 고객 생년월일, 고객 성별, 고객 연령 중 적어도 2개 이상과 연관될 수 있다.
상기 고객별 통합 고객 식별자를 생성하는 단계는, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정하는 단계; 및 상기 제 1 고객에 대응하는 통합 고객 식별자를 생성하는 단계를 포함할 수 있다.
상기 제 1 고객을 특정하는 단계는, 상기 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도를 산출하는 단계; 및 산출된 상기 개인 정보 유사도를 기반으로 하여 상기 제 1 고객을 특정하는 단계를 포함할 수 있다.
상기 개인 정보 유사도를 산출하는 단계는, 개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산하는 단계를 포함할 수 있다. 상기 산출된 개인 정보 유사도를 기반으로 하여 상기 제 1 고객을 특정하는 단계는, 산출된 상기 유사도가 정해진 값 이상이면 동일한 고객으로 특정하는 단계를 포함할 수 있다.
상기 선택하는 단계는, 상기 행렬의 개별 행에 대하여, 적어도 둘 이상의 고객들의 구매가능성 지표의 제 1 부분합을 산출하는 단계; 상기 산출된 제 1 부분합을 순위화하는 단계; 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품들을 선택하는 단계; 상기 행렬의 개별 열에 대하여, 상기 선택된 상품들에 대한 고객별 제 2 부분합을 산출하는 단계; 상기 산출된 제 2 부분합을 순위화하는 단계; 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객들을 선택하는 단계를 포함할 수 있다.
상기 상품 추천 방법은, 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 쇼핑몰을 이용하여 상품 추천 기반의 프로모션을 실시하는 단계를 더 포함할 수 있다.
상기 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품을 선택하는 단계는, 상기 제 1 부분합 순위가 높은 상품을 선택하고 나머지 상품을 삭제하여 행렬을 재구성하는 단계를 포함할 수 있다. 상기 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객을 선택하는 단계는, 상기 제 2 부분합 순위가 높은 고객을 선택하고 나머지 고객을 삭제하는 단계를 포함할 수 있다. 상기 구매가능성 지표는 상품 노드 계층, 주문 노드 계층 및 고객 노드 계층으로 구성된 그래프 형태의 데이터에서의 연결경로의 수를 포함할 수 있다.
상기 그래프 형태의 데이터는 제 1 노드 계층의 제 1 노드를 중심으로 제 2 노드 계층의 적어도 하나의 제 2 노드가 연결되고, 상기 적어도 하나의 제 2 노드에 제 3 노드 계층의 제 3 노드가 연결됨에 따라 방사형의 그래프 형태로 생성될 수 있다.
상기 적어도 하나의 상품 노드 계층의 노드들 및 적어도 하나의 고객 노드 계층의 노드들 중 적어도 두 노드가 연결될 수 있는 연결경로의 갯수를 상기 구매가능성 지표로써 사용할 수 있다.
상기 상품 추천 방법은 상기 선택된 고객들을 대상으로 상기 선택된 상품에 대하여 온라인 쇼핑몰을 이용하여 프로모션을 실시하는 단계를 더 포함할 수 있다. 상기 프로모션을 실시하는 단계는, 상기 선택된 고객들에게 상기 선택된 상품들을 상기 온라인 쇼핑몰의 첫 번째 웹 페이지의 제 1 영역에 배치하여 디스플레이하는 단계를 포함할 수 있다. 상기 프로모션을 실시하는 단계는, 상기 선택된 고객들에게만 상기 선택된 상품들을 할인하여 판매하는 단계를 포함할 수 있다. 상기 구매가능성 지표는 유사도 기반의 상품 추천 알고리즘을 이용하여 산출된 값일 수 있다.
한편, 상술한 본 발명의 목적을 달성하기 위하여 본 발명은 다른 측면에서 상품 추천 장치를 제공한다. 상기 상품 추천 장치는, 유선 및 무선 네트워크 중 적어도 하나와 통신하는 통신부; 상기 통신부를 통하여 상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-, 상기 복수 개의 쇼핑몰에서의 구매 가능한 복수 개의 상품들 및 상기 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하고 -상기 복수의 고객들은 복수 개의 통합 식별자에 의하여 식별됨-, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하고, 상기 복수 개의 상품들 중 적어도 둘 이상을 열(Column)로 상기 복수의 고객들 중 적어도 둘 이상을 행(Row)으로 구성하되, 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표인 행렬을 생성하고, 상기 생성된 행렬을 분석하는 것에 의하여, 적어도 둘 이상의 상품 및 상기 적어도 둘의 상품을 추천할 적어도 둘의 고객들을 선택하는 프로세서를 포함할 수 있다.
상기 복수 개의 개인 정보 요소 그룹에 포함된 개인 정보 요소들은 비식별자화된 개인 정보일 수 있다. 상기 비식별자화된 개인 정보는, 고객 이메일, 고객 이름, 고객 전화번호. 고객 별명, 고객 주소, 고객 생년월일, 고객 성별, 고객 연령 중 적어도 2개 이상과 연관될 수 있다.
상기 적어도 3개의 노드 계층은 상품과 연관된 제 1 노드 계층, 주문과 연관된 제 2 노드 계층 및 고객과 연관된 제 3 노드 계층을 포함하고, 상기 프로세서는, 상기 저장된 그래프 형태의 데이터 상에서, 상기 유사상품에 대한 질의에 대응하여 적어도 하나의 제 1 노드 계층의 노드들 및 적어도 하나의 제 3 노드 계층의 노드들 중 적어도 두 노드 사이의 연결경로의 갯수를 기반으로 상기 유사도를 판단할 수 있다.
상기 프로세서는, 상기 행렬의 개별 행에 대하여, 적어도 둘 이상의 고객들의 구매가능성 지표의 제 1 부분합을 산출하고, 상기 산출된 제 1 부분합을 순위화하고, 제 1 상품 개수만큼 제 1 부분합 순위가 높은 상품들을 선택하고, 상기 행렬의 개별 열에 대하여, 상기 선택된 상품들에 대한 고객별 제 2 부분합을 산출하고, 상기 산출된 제 2 부분합을 순위화하고, 제 1 고객 수만큼 제 2 부분합 순위가 높은 고객들을 선택할 수 있다. 상기 프로세서는 상기 선택된 고객들을 대상으로 상기 선택된 상품들에 대하여 쇼핑몰을 이용하여 상품 추천 기반의 프로모션을 실시할 수 있다.
한편, 상술한 본 발명의 목적을 달성하기 위하여 본 발명은 또 다른 측면에서 상품 추천 시스템을 제공한다. 상기 상품 추천 제공 시스템은 복수 개의 쇼핑몰; 및 상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-, 상기 복수 개의 쇼핑몰에서의 구매 가능한 복수 개의 상품들 및 상기 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하고 -상기 복수의 고객들은 복수 개의 통합 식별자에 의하여 식별됨-, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하고, 상기 복수 개의 상품들 중 적어도 둘 이상을 열(Column)로 상기 복수의 고객들 중 적어도 둘 이상을 행(Row)으로 구성하되, 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표인 행렬을 생성하고, 상기 생성된 행렬을 분석하는 것에 의하여, 적어도 둘 이상의 상품 및 상기 적어도 둘의 상품을 추천할 적어도 둘의 고객들을 선택하는 서버를 포함할 수 있다.
한편, 상술한 본 발명의 목적을 달성하기 위하여 본 발명은 또 다른 측면에서 컴퓨터에, 상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하는 단계; 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하는 단계 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-; 상기 복수 개의 쇼핑몰에서의 구매 가능한 복수 개의 상품들 및 상기 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하는 단계, 상기 복수의 고객들은 복수 개의 통합 식별자에 의하여 식별됨; 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하는 단계; 상기 복수 개의 상품들 중 적어도 둘 이상을 열(Column)로 상기 복수의 고객들 중 적어도 둘 이상을 행(Row)으로 구성하되, 상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표인 행렬을 생성하는 단계; 및 상기 생성된 행렬을 분석하는 것에 의하여, 적어도 둘 이상의 상품 및 상기 적어도 둘의 상품을 추천할 적어도 둘의 고객들을 선택하는 단계를 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램을 제공할 수 있다.
이상 설명한 바와 같이, 본 발명에 따르면 복수 개의 쇼핑몰들로부터 빅데이터를 구축하고 통합 식별자에 의하여 식별되는 고객들의 그룹인 그룹 고객 별로 최적화된 상품 그룹을 추천을 수행할 수 있다. 따라서, 프로모션의 효율성을 높일 수 있다.
도 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, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 '연결되어' 있다거나 '접속되어' 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 '직접 연결되어' 있다거나 '직접 접속되어' 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, '포함하다' 또는 '가지다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
먼저, 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축에 대하여 설명하기로 한다.
도 1은 본 발명의 바람직한 실시예에 따른 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축 및 이를 기반으로 하는 상품 추천을 위한 시스템의 구성을 도시하는 블록도이다.
도 1에 도시된 바와 같이, 시스템은 다수의 쇼핑몰(110-1~110-N), 네트워크(120), 서버(130), 데이터베이스(140) 및 사용자 단말(150)을 포함할 수 있다. 사용자 단말(150)은 쇼핑몰을 이용하는 고객 단말일 수 있다.
서버(130)는 전자상거래 기반의 복수 개의 쇼핑몰(110-1~110-N)와 네트워크(120)를 통하여 연동할 수 있다. 각각의 쇼핑몰(110-1~110-N)은, 예컨대, 전자상거래 사이트를 제공하는 웹 서버일 수 있다. 즉, 쇼핑몰(110-1~110~N)은 인터넷을 통하여 상품 또는 서비스를 판매하는 온라인 쇼핑몰을 의미한다. 쇼핑몰(110-1~110~N)은 특정 URL을 가지고 인터넷 상에서 해당 주소로의 방문자들을 상대로 상품을 판매할 수 있다. 쇼핑몰 운영자는 판매된 상품에 대한 금액 중 적어도 일부를 쇼핑몰과 연관된 자신의 계좌를 통해 획득하는 방식으로 쇼핑몰을 운영한다. 예를 들면, 쇼핑몰(110-1~110~N)은 의류 쇼핑몰, 오픈마켓 등뿐만 아니라, 유료로 물품이나 서비스를 판매하는 게임사이트, 소셜미디어 사이트, 커뮤니티 사이트, 방송 사이트, 멀티미디어 제공 사이트 등일 수 있다.
도 1에 도시된 실시예에 있어서, 쇼핑몰(110-1~110~N)은 앞서 설명한 바와 같이, 인터넷 상의 특정주소(예컨대, URL)와 연관된 웹 페이지, 쇼핑몰과 연관된 정보를 취급하는 서버 또는 쇼핑몰의 운영자의 단말기로써 구현될 수 있다. 단말기는 스마트폰, PC 등과 같은 유무선 네트워킹 컴퓨팅 디바이스를 포함할 수 있다.
상기 복수 개의 쇼핑몰(110-1~110~N)은 이종의 업체에 의하여 운영될 수 있다. 예를 들어, 제 1 쇼핑몰(110-1)는 A 전자상거래 업체 의하여 운영되는 인터넷 쇼핑몰을 제공하기 위한 웹 서버일 수 있으며, 제 2 쇼핑몰(110-2)는 A 전자상거래 업체와는 전혀 무관한 B 전자상거래 업체에 의하여 운영되는 인터넷 쇼핑몰을 제공하기 위한 서비스 웹 서버일 수 있다.
복수 개의 쇼핑몰(110-1~110-N)은 네트워크(120)를 통해 서버(130)와 연동할 수 있다. 여기서, 서버(130)는 복수 개의 쇼핑몰(110-1~110-N)로부터 정보를 획득하고 상품추천 질의에 대응하여 상품을 추천하는 장치이다.
서버(130)는 쇼핑몰을 개설하고 운영하도록 지원하는 플랫폼(platform)을 배포하고 관리하는 서버(미도시)이거나 또는 상기 서버와 연동하는 서버일 수 있다. 본 발명의 바람직한 실시예에 따른 서버(130)는 통합 고객 식별자를 생성 및 관리하는 것을 기반으로 하여 하나의 쇼핑몰(110-1)과 연관된 정보만을 취급하는 것이 아니라, 복수 개의 쇼핑몰(110-1~110-N)과 연관된 정보를 취급하고, 빅데이터를 기반으로 다양한 정보를 분석 및 학습할 수 있다.
서버(130)는 하나 또는 복수 개의 컴퓨팅 장치로 구현될 수 있다. 여기서 말하는 컴퓨팅 장치는 서버 급 컴퓨터 단말기로 구현될 수 있다. 상기 컴퓨팅 장치는 통상적인 컴퓨터 단말이 가지는 입력 장치, 표시 장치, 네트워킹 장치, 하드디스크, 프로그램을 저장하는 메모리 및 메모리에 저장된 프로그램을 수행시키는 프로세서 등을 구비할 수 있다. 다만, 반드시 서버 급 컴퓨터 단말로 구현되어야 하는 것은 아니다.
서버(130)는 복수 개의 쇼핑몰(110-1~110~N)에서 동일한 고객을 식별할 수 있는 통합 고객 식별자를 생성하고, 복수 개의 쇼핑몰(110-1~110~N)으로부터 통합 고객 식별자에 의하여 식별되는 고객의 로그 기록을 수집하고, 수집된 로그 기록을 기반으로 하여 고객에 적합화된 상품 추천을 통한 마케팅을 수행할 수 있다.
종래의 경우, 사용자의 인터넷 이용 내역에 대한 수집은 개별 전자상거래 업체별로 수행된다. 예를 들어, 개별 전자상거래 업체는 그 전자상거래 업체에서 운영하는 쇼핑몰에 접속한 사용자의 쿠키 또는 세션 등을 기록한 후 그 사용자가 다시 해당 전자상거래 업체의 쇼핑몰에 접속했을 때 사용자의 이전 사용 내역과 관련된 상품 광고를 웹 페이지 상에 표시한다. 그러나 이와 같이 전자상거래 업체 별로 수행되는 타겟 광고는 고객의 이용 내역에 대한 데이터가 하나의 쇼핑몰에 대한 전자상거래 이용 내역을 기반으로 하므로 수집 데이터의 양이 작아 신뢰도가 떨어진다.
만약 종래에 복수 개의 쇼핑몰로부터 인터넷 이용 내역을 수집하려 한다면, 각각의 웹 서버가 운영 주체도 다르고 데이터 수집 정책도 다르므로 수집되는 사용자 이용 내역 정보의 형식과 종류가 상이하여 이를 통합하기가 매우 어려우며, 특히 동일한 고객이라 하더라도 쇼핑몰마다 사용자 ID, 즉 고객에 대응하는 개별 쇼핑몰 고객 식별자가 다른 경우가 많으므로 복수 개의 쇼핑몰에서 동일한 고객의 주문 내역을 통합하기란 사실상 불가능한 것이 현실이다.
그러나, 본 발명의 바람직한 실시예에서 서버(130)는 복수 개의 쇼핑몰(110-1~110~N)로부터 상기 복수 개의 쇼핑몰(110-1~110~N)에 대응하는 복수 개의 개별 쇼핑몰 고객 식별자 및 복수 개의 개별 쇼핑몰 고객 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객을 특정하여 그 특정된 고객에 대응하는 통합 고객 식별자를 생성하고, 고객에 대응하는 통합 고객 식별자를 복수 개의 개별 쇼핑몰 고객 식별자 및 복수 개의 개인 정보 요소 그룹과 연관시켜 데이터베이스(140)에 저장하여 관리함으로써, 통합 고객 식별자를 기반으로 하여 복수 개의 쇼핑몰(110-1~110~N)로부터 특정된 고객의 로그 기록을 수집하여 빅데이터를 구축할 수 있다. 통합 고객 식별자란 복수 개의 쇼핑몰(110-1~110-N)에서 동일한 고객을 하나의 식별자로 식별하기 위한 고객 식별자일 수 있다.
네트워크(120)는 복수 개의 쇼핑몰(110-1~110-N)과 서버(130), 서버(130)와 사용자 단말(150), 복수 개의 쇼핑몰(110-1~110-N)과 사용자 단말(150)을 연결하는 통신망을 의미할 수 있다. 예를 들어, 네트워크(120)은 유선망 또는 무선망(인터넷(internet))을 포함할 수 있다.
도 2는 본 발명의 바람직한 일 실시예에 따른 고객 빅데이터 구축 과정을 설명하기 위한 흐름도이다.
도 2에 도시된 바와 같이, 서버(130)는 복수 개의 쇼핑몰(110-1~110-N)에 접속할 수 있다. 서버(130)는 복수 개의 쇼핑몰(110-1~110-N)로부터 복수 개의 쇼핑몰(110-1~110-N)에 대응하는 복수 개의 개별 쇼핑몰 고객 식별자 및 복수 개의 개별 쇼핑몰 고객 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신할 수 있다(S1).
상기 개별 쇼핑몰 고객 식별자는 개별 쇼핑몰에서 고객을 식별하기 위하여 사용되는 고객 식별자일 수 있다. 상기 개인 정보 요소 그룹은 상기 개별 쇼핑몰 고객 식별자에 대응하는 개인 정보 요소들을 의미할 수 있다. 즉, 개별 고객 식별자에 대응하여 개별 쇼핑몰에서 등록 및 관리되는 개인 정보 요소들의 집합을 의미할 수 있다. 예를 들어, 제 1 쇼핑몰(110-1)은 제 1 고객에 대하여 상기 제 1 고객에 대응하는 개별 쇼핑몰 고객 식별자를 기반으로 상기 제 1 고객을 식별하며, 상기 개별 쇼핑몰 고객 식별자에 대응하여 제 1 고객의 개인 정보 요소들을 관리할 수 있다.
개인 정보 요소 그룹에 포함되는 개인 정보 요소들은 비식별화된 개인 정보 요소일 수 있다. 비식별화된 개인 정보 요소란 식별자(ID), 주민등록번호와 같이 쇼핑몰에서 고객을 식별하기 위하여 사용하는 정보가 아닌 개인 정보 요소를 의미할 수 있다. 예를 들면, 상기 비식별화된 개인 정보 요소는 고객 이메일, 고객 이름, 고객 전화번호. 고객 별명, 고객 주소, 고객 생년월일, 고객 성별, 고객 연령 등일 수 있다.
다음으로, 서버(130)은 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정할 수 있다(S2). 이는 각각의 쇼핑몰(110-1~110-N)에 대응되는 비식별화된 개인 정보 요소 그룹을 상호 비교하여 유사성 높은 개인 정보 요소 그룹을 가지는 고객을 동일 고객으로 보고 고객을 특정하는 것이라 할 수 있다.
도 3은 도 2에 도시된 제 1 고객을 특정하는 과정의 일실시예를 설명하기 위한 흐름도이다.
도 3에 도시된 바와 같이, 서버(130)은 상기 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도를 산출할 수 있다(S11). 예들 들어, 서버(130)은 개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산할 수 있다.
이어서, 서버(1230)는 산출된 개인 정보 유사도를 기반으로 하여 상기 제 1 고객을 특정할 수 있다. 예를 들어, 서버(140)은 연산한 개인 정보 유사도가 정해진 값 이상인지를 판단하고(S12), 개인 정보 유사도가 정해진 값 이상일 경우 동일 고객으로 특정하는 것이다(S13).
예를 들어, 하나의 개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수가 10개이고, 동일 고객으로 판단하기 위하여 정해진 개인 정보 유사도 값, 즉 기준 값이 0.7이라면 서로 간에 일치하는 개인 정보 요소가 7개 이상인 개인 정보 요소 그룹에 대응하는 고객은 동일한 고객으로 판단하여 하나의 고객으로 특정할 수 있다.
한편, 본 발명의 다른 실시예에 따르면, 서버(130)는 상기 수신된 복수 개의 개인 정보 요소 그룹의 데이터를 딥러닝을 통하여 학습된 인공지능 엔진에 입력하여 동일한 고객별로 분류할 수도 있다. 상기 인공지능 엔진은 복수 개의 비식별화된 개인 정보 요소 그룹들의 데이터가 입력되면, 상호 간에 개인 정보 유사도가 높은 개인 정보 요소 그룹들을 분류하여 동일 고객에 대응시킴에 의하여, 동일한 고객별로 분류하도록 학습되어 있다.
다음으로, 서버(130)는 앞서 특정된 제 1 고객에 대응하는 통합 고객 식별자를 생성할 수 있다(S3). 상기 통합 고객 식별자란, 앞서도 언급한 바와 같이, 복수 개의 쇼핑몰(110-1~110-N)에서 동일한 고객을 하나의 식별자로 식별하기 위한 고객 식별자일 수 있다. 서버(130)는 상기와 같이 생성된 제 1 고객에 대응하는 상기 고객 식별자를 상기 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개인 정보 요소 그룹과 연관시켜 데이터베이스(140)에 저장할 수 있다(S4).
도 4는 데이터베이스(140)에 저장 및 관리되는 테이블을 예시적으로 나타내는 예시도이다.
도 4에 도시된 바와 같이, 제 1 고객은 쇼핑몰 A, 쇼핑몰 B, 쇼핑몰 C, 쇼핑몰 D의 고객이며, 각각의 쇼핑몰에서 모두 다른 개별 쇼핑몰 고객 식별자를 사용한다. 즉, 쇼핑몰 A에서는 "AAAA", 쇼핑몰 B에서는 "BBBB", 쇼핑몰 C에서는 "CCCC", 쇼핑몰 D에서는 "DDDD"를 개별 쇼핑몰 고객 식별자인 "Mall-ID"로 사용하고 있다.
각각의 쇼핑몰에서는 비식별화된 개인 정보 요소, 예컨대 제 1 고객의 이메일, 전화번호, 이름, 별명, 나이, 성별 등을 포함하는 개인 정보 요소 그룹에 대응되어 있다.
서버(130)는 개인 정보 요소 그룹 간의 개인 정보 유사도 판단을 기반으로, 쇼핑몰 A의 "AAAA", 쇼핑몰 B의 "BBBB", 쇼핑몰 C의 "CCCC", 쇼핑몰 D의 "DDDD"가 동일한 제 1 고객임을 특정하고, 4개의 쇼핑몰에서 제 1 고객을 식별할 수 있는 통합 고객 식별자 "EC-ID"로서 "CUAA01"을 생성하여, 복수 개의 개별 쇼핑몰 고객 식별자 및 개인 정보 요소 그룹에 연관시켜 도 4에 도시된 예에서와 같은 테이블을 데이터베이스(140)에 저장하여 관리할 수 있다.
한편, 신규한 제 2 고객이 복수 개의 쇼핑몰 중 어느 하나, 예컨대 제 1 쇼핑몰(110-1)로 접속하여 고객이 되면, 서버(13)은 제 1 쇼핑몰(110-1)로부터 상기 제 1 쇼핑몰(110-1)에서 제 2 고객을 식별할 수 있는 개별 쇼핑몰 고객 식별자 및 상기 제 2 고객의 개별 쇼핑몰 고객 식별자에 대응하는 개인 정보 요소 그룹을 수신할 수 있다.
서버(130)는 제 2 고객의 개별 쇼핑몰 고객 식별자를 기반으로 하여 상기 제 2 고객에 대응하는 통합 고객 식별자가 상기 데이터베이스(140)에 존재하는 지를 판단할 수 있다. 여기서 제 2 고객은 신규 유입된 고객이므로, 데이터베이스(140)에는 제 2 고객의 통합 고객 식별자는 존재하지 않는다.
따라서, 서버(130)는 데이터베이스(140)에 상기 제 2 고객에 대응하는 통합 고객 식별자가 존재하지 않는 경우, 상기 제 2 고객에 대응하는 개인 정보 요소 그룹을 기반으로 하여 상기 제 2 고객에 대응하는 통합 고객 식별자를 생성하고, 제 2 고객에 대응하는 통합 고객 식별자를 제 2 고객의 개별 쇼핑몰 고객 식별자 및 그 개별 쇼핑몰 고객 식별자에 대응하는 개인 정보 요소 그룹과 연관시켜 데이터베이스(140)에 저장할 수 있다.
한편, 만약 상기 제 2 고객이 신규한 고객이 아니고 이미 통합 고객 식별자가 존재한다고 가정할 경우, 상기 데이터베이스(140)에 상기 제 2 고객에 대응하는 통합 고객 식별자가 존재하므로, 서버(130)은 상기 데이터베이스(140)에 저장된 상기 제 2 고객의 개인 정보 요소 그룹과 수신된 개인 정보 요소 그룹을 비교하는 것을 기반으로 하여, 변경된 내용이 있는지를 판단하고, 비교 결과 변경된 내용이 있는 경우, 변경된 내용을 기반으로 제 2 고객의 개인 정보 요소 그룹의 내용을 업데이트할 수도 있다.
도 2를 다시 참조하면, 서버(130)는 이와 같이 데이터베이스(140)에 저장되어 관리되는 통합 고객 식별자를 기반으로 하여 복수 개의 쇼핑몰(110-1~110-N)로부터 제 1 고객의 로그 기록을 수집할 수 있다(S6). 즉, 고객별로 복수 개의 쇼핑몰(110-1~110-N)에서 수행한 구매 내역, 접속 내역, 반품 내역 등 고객들의 주문 이력관련 빅데이터가 수집될 수 있다.
서버(130)은 수집된 고객들의 주문 이력 데이터를 수집하여 빅데이터를 구축한 후, 제 1 방식에 의한 상품 추천 및 제 2 방식에 의한 상품 추천 중 적어도 어느 하나를 기반으로 고객들에 대응하는 맞춤형 상품 추천을 수행할 수행할 수 있다.
상기 제 1 방식에 의한 상품 추천은 예컨대, 그래프 데이터베이스를 사용하는 유사도 기반의 상품 추천일 수 있다. 상기 제 2 방식에 의한 상품 추천은 그룹 고객과 그룹 상품 간의 상품 추천, 예컨대 바스킷 추천일 수 있다.
이하에서는, 제 1 방식에 의한 추천을 설명하기로 한다. 제 1 방식은 그래프 데이터베이스를 활용하는 유사도에 기반한 상품 추천이다. 여기서 유사도는 앞서 언급한 통합 고객 식별자의 생성시 연산되는 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도와는 다른 것이다. 그래프 데이터베이스를 활용하는 유사도에 대해서는 이하에 상세히 설명한다.
도 1을 다시 참조하면, 서버(130)는 쇼핑몰(110-1~110-N) 및/또는 쇼핑몰(110-1~110-N)의 정보를 전반적으로 관리하는 쇼핑몰 운영서버(미도시)로부터 주문이력 데이터 및/또는 상품조회 데이터를 획득한다. 상기 데이터에서 고객은 통합 고객 식별자에 의하여 식별된다. 즉 서버(130)는 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터, 상품 조회 데이터 등을 수집한다.
서버(130)은 획득된 데이터를 복수 개의 노드 계층을 갖는 그래프 형태로 변환한다. 그래프 형태로 변환된 데이터는 서버(130)의 외부의 데이터베이스(140)에 저장된다. 다만, 반드시 데이터베이스(140)가 서버(130)의 외부에 있어야 하는 것은 아니다. 내부에 존재할 수도 있다.
서버(130)는 사용자 단말(150)로부터의 상품추천 요청("추천 상품 검색 요청", "질의" 등으로 불릴 수 있음)에 대응하여 3개 노드 계층으로 구성된 그래프를 이용하여 특정상품으로부터 유사상품 검색에 대한 질의를 처리한다. 이때, 변환된 형태의 그래프 데이터 상에서, 상품과 상품, 고객과 고객, 또는 상품과 고객 간의 연결경로를 추출하고, 추출된 연결경로의 거리 및/또는 갯수를 고려하여 서로 간의 유사도를 판단할 수 있다. 또한, 상품조회 데이터를 활용하는 경우, 그래프 상에서, 상품 검색 이전 또는 이후의 일정 스텝(step) 동안의 조회 이력을 분석하여 유사상품에 대한 질의를 처리한다. 유사상품에 대한 질의를 처리하는 기술과 관련된 부분은 이하 보다 상세히 설명한다.
본 발명의 다른 실시예에 있어서, 서버(130)는 개별 고객과 개별 상품 사이의 구매가능성을 나타내는 지표(위의 그래프 데이터베이스를 이용한 유사도를 포함할 수 있음)가 존재하는 것을 기반으로 이를 이용하여 상품 바스켓(basket)을 최적화할 수 있다. 즉, 본 발명의 실시예에 따른 상품 바스켓 추천 방법을 사용하면, 적어도 하나의 고객(복수의 경우, 고객 군(group))에게 최적화된 복수 개의 상품군을 적절하게 프로모션(promotion)할 수 있다.
사용자 단말(150)은 쇼핑몰(110-1)의 구매자의 단말일 수 있다. 구매자는 사용자 단말(150)을 이용하여 서버(130) 또는 별도의 쇼핑몰 관리 서버(미도시)로 상품 추천 요청을 전송할 수 있다. 별도의 쇼핑몰 관리 서버가 존재한다면, 쇼핑몰 관리 서버는 수신된 상품 추천 요청을 서버(130)로 전달한다.
상품 추천 요청은 유사상품에 대한 질의를 포함할 수 있다. 나아가, 유사 고객에 대한 질의를 포함할 수 있다. 그리고는, 그래프 기반의 데이터 분석 방법 및/또는 바스켓 추천 방법을 이용하여 상기 질의에 대한 처리가 완료되면, 처리완료된 데이터를 사용자 단말(150)로 제공하여 구매자가 이를 확인하고, 이를 토대로 상품을 선택할 수 있도록 한다. 사용자 단말(150)은 네트워크(120)(네트워크 내의 특정 웹페이지)를 이용하여 상품 추천 요청을 서버(130)로 제공할 수 있다.
본 발명의 다른 실시예에 따르면, 쇼핑몰(110-1~110-N)과 연관된 단말 또는 사용자 단말(150)은 서버(130)에서 제공하는 애플리케이션을 다운로드 받아 애플리케이션을 통해 자동생성을 수행할 수 있다. 즉, 쇼핑몰(110-1~110-N)과 연관된 단말 또는 사용자 단말(150)에서, 사용자가 유사상품 또는 유사고객에 대한 질의를 입력하면 그래프 기반의 상품 추천 과정 또는 상품 바스켓 추천 과정을 단말 내에서 수행할 수 있다. 별도의 서버장치 없이 단말의 프로세서(미도시)가 다운받은 애플리케이션을 실행하여, 데이터 변형 및 변형된 데이터 분석을 통해 최적의 상품을 추천하도록 할 수 있다.
도 5는 유사도 기반의 상품추천 방법을 설명하기 위한 개념도이다. 이하에서 언급되는 "장치" 도는 "상품 추천 장치"라는 용어는 도 1에 도시된 서버(130)을 지칭하는 것으로 해석될 수 있다.
도 5를 참조하면, 장치는 일반적으로 상품의 이미지 및 속성의 유사성을 기반으로 상품추천을 수행한다. 즉, 먼저, 상품 이미지 간의 유사도를 이미지 분석 모듈을 이용하여 산출함으로써 구매가능성 지표로 활용할 수 있다. 도 5의 실시예에 있어서, 장치는 신발상품 1의 색상, 형상 등을 이미지 분석하여, 데이터베이스 내에 저장된 수많은 상품 이미지들 중 가장 유사한 색상과 형상을 가진 신발상품 2를 추출할 수 있다. 또는, 신발상품 1의 상품속성을 기반으로 속성이 유사한 신발상품 2를 추출할 수 있다. 예컨대, 신발상품 1의 색상은 붉은 색이고, 사이즈는 250이며, 브랜드는 "A 브랜드"이고, 형태는 "단화"인 경우, 동일 또는 유사한 속성의 신발상품 2를 데이터베이스에서 검색하여 추출할 수 있다. 다만, 이러한 이미지 및/또는 상품 속성에 기반한 유사도를 이용하는 방법은 앞서 설명한 바와 같이, 유사 상품을 동시에 구매하는 경우에 해당되어 구매가능성이 아주 높다고 할 수 없고, 구매자의 수요를 충족시킬 수 없는 경우가 발생한다.
본 발명의 실시예에 따르면, 장치는 특정 고객의 구매이력을 기반으로 많이 구매한 상품의 속성을 추출하여 그에 대응되는 속성을 갖는 상품의 구매가능성 지표를 높게 책정할 수 있다. 이러한 점을 이용하여 고객이 구매한 상품의 속성을 가지고 고객을 카테고리화하여 구매가능성 지표를 산출할 수도 있다. 즉, 해당 상품을 구매한 고객들과 유사 성향을 갖는 고객들을 찾아서, 유사성향 고객이 구매한 상품을 유사상품으로 추천할 수 있다.
상기한 바와 같이, 다양한 방식의 상품 이미지, 상품속성 및/또는 고객속성 분석에 기반한 구매가능성 지표는 추후 상품 바스켓 추천 방법에서 행렬의 빈 칸에 들어가는 요소로써 활용될 수 있다.
도 6은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 상품, 주문 및 고객 노드 기반의 그래프이다.
도 6을 참조하면, 장치는 주문 이력 데이터를 수집하여 적어도 3개의 노드 계층으로 구성된 그래프를 생성할 수 있다. 주문 이력 데이터는 기본적으로 "특정 고객 A가 특정 쇼핑몰에서 주문 B를 이용하여 상품 C를 주문하였다"는 정보를 포함한다. 즉, 고객과 주문, 그리고 상품 간의 연관관계를 포함하는 데이터이다.
장치는 각각의 주문 이력 데이터를 기반으로 상품을 제 1 노드 계층으로, 주문을 제 2 노드 계층으로, 고객을 제 3 노드 계층으로 형성하여 방사형의 그래프를 생성한다. 도 6의 실시예에서는, 상품 A(310)는 6개의 주문들(320: 주문 A 내지 주문 F)에 포함되어 있고, 각각의 주문은 서로 다른 고객(330)으로부터 획득된 것이다.
이러한 경우, 장치는, 상품 A(310)를 중심으로, 주문 A(320) 내지 주문 F를 연결선을 이용하여 연결하고, 주문 A(320)을 요청한 고객 A(330)을 주문 A(320)에 각각 연결하여 상품으로부터 방사형의 그래프가 생성되도록 한다. 다시 말해, 상품-주문 연결선은 주문에 포함된 상품을, 주문-고객 연결선은 주문을 한 고객을 나타낸다. 이때, 그래프의 각 노드 계층 중 제 1 노드 계층(상품 계층)은 붉은 색으로, 제 2 노드 계층(주문 계층)은 초록 색으로, 제 3 노드 계층(고객 계층)은 파란 색으로 나타낼 수 있다. 이렇게 생성된 그래프는 시각화되어 디스플레이 장치를 통해 표시될 수 있다.
도 6의 실시예에 도시된 바와 같이, 장치는 한 상품(310: 상품 A)이 포함된 다수의 주문과 해당 주문을 한 고객을 표시할 수 있다. 이때, 도 6의 그래프에 포함된 고객들(330) 간에는, 거리 4(고객 → 주문 → 상품 → 주문 → 고객)의 길이로 연결된 경로가 1개씩 존재한다고 볼 수 있다. 따라서, 이들 고객들은 그렇지 아니한 고객 대비 구매성향에 있어서 유사성을 보인다고 볼 수 있다. 거리 4의 의미와 관련하여서는 다음의 도 7를 통해 보다 상세히 설명한다.
도 7은 상품간의 직접적인 상관성과 간접적인 상관성을 설명하기 위한 개념도이다.
도 7의 (a)를 참조하면, 매우 비슷한 두 상품(상의에 속하는 상품일 수 있음)을 동시에 주문하는 사람은 많지 않다. 즉, 직접적인 상관성이 높은, 거리 2의 연결경로의 경우, 유사도가 낮다고 판단하는 것이 바람직하다.
그러나, 도 7의 (b)를 참조하면, 다른 상품(하의(상품 3))를 매개로 볼 때, (상품 1- 상품 3), (상품 2-상품 3)의 조합으로 구매하는 고객은 다수가 존재할 수 있다. 즉, 최초 직접적 상관성(거리 2)(도 7의 (a) 실시예 참조)은 낮은 유사도를 나타내지만, 거리가 일정간격 멀어지게 되면(예컨대, 거리 4), 간접적인 상관성을 관찰할 수 있고, 이러한 간접적인 상관성은 구매가능성 측면에서 높은 지표로 구현되는 것이 바람직하다. 다시 말해, 두 상품(상품 1과 상품 2)가 정해진 거리(도 7의 (b)의 실시예에서는 거리 4)를 두고 연결될 수 있는 경로의 갯수가 유사성을 나타내는 지표가 될 수 있는 것이다.
다시 도 6으로 돌아가서, 위와 같은 상관성의 측면에서 볼 때, 거리 4로 연결된 고객들은 "특정 고객이 구매한 상품을 구매한 다른 고객들"이라는 관계를 가질 수 있다. 특정 고객에 대해, 위와 같이 "같은 상품을 구매한 고객"이라는 관계를 찾아보면, 서로 다른 상품을 매개로 특정 고객과 다른 고객이 연결되는 경로를 추출할 수 있다. 본 발명의 일 실시예에 따르면, 장치는 연결되는 경로가 가장 많은 고객으로, 특정 고객(고객 A)와 가장 구매 성향이 유사한 고객 B로 판단할 수 있다.
따라서, 장치는 그래프 데이터베이스를 기반으로 특정 고객 A는 구매하였으나, 유사한 고객 B가 구매하지 않은 상품은 고객 B에게 추천할 수 있다. 마찬가지로, 고객 B가 구매하였으나, 고객 A가 구매하지 않은 상품을 A에게 추천할 수 있다. 즉, 장치는 통합된 상품 A(310)를 매개로 고객 A와 고객 B를 연결시킬 수 있고, 연결경로의 길이 및 연결경로의 갯수를 고려하여 유사도를 분석한다.
도 8는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 나타낸 흐름도이다.
먼저, 서버("장치"라고 부를 수 있음)는 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성할 수 있다. 상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별될 수 있다.
도 8을 참조하면, 서버는 주문 이력 데이터를 온라인 쇼핑몰 또는 쇼핑몰을 관리하는 서버로부터 수집한다(S510). 예를 들어 서버는 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집한다. 이때, 획득되는 데이터는 상품과 해당 상품을 포함하는 주문, 그리고 해당 주문을 수행한 주체인 고객과의 연관관계에 대한 정보를 포함한다.
장치는 수집된 주문 이력 데이터를 그래프 형태의 데이터로 변환한다(S512). 그래프는 3개의 노드 계층으로 구성되고, 제 1 노드 계층인 상품을 제 2 노드 계층인 주문과 연결선을 통해 연결하고, 주문은 제 3 노드 계층인 고객과 연결선을 통해 연결하여, 제 1 노드 계층을 중심으로 방사형의 그래프 형태를 가질 수 있다. 그리고는, 장치는 그래프 형태로 변환된 데이터를 데이터베이스에 저장한다(S514).
클라이언트 단말 즉 사용자 단말은 추천 상품 검색 요청을 입력한다(S516). 입력된 요청 정보는 장치(서버) 측으로 전송된다. 이때, 추천 상품 검색 요청은 (i) 상품 중심으로 검색하는 요청과 (ii) 고객 중심으로 검색하는 요청으로 구분되어 입력될 수 있다. 이는 도 16a 내지 도 16d를 통해 보다 상세히 설명한다.
추천 상품 검색 요청이 입력되면, 장치는 그래프 형태의 변환된 데이터를 이용하여 대상상품 또는 대상고객을 중심으로 상관성을 분석한다(S518). 그리고는, 대상상품 또는 대상고객을 중심에 놓고, 분석된 상관성을 기반으로 타 상품 또는 타 고객까지 연결경로를 생성한다(S520). 이때, 생성된 연결경로의 거리를 기반으로 일정 거리 범위 내에 존재하는 연결경로인지 판단한다(S522).
앞서 설명한 바와 같이, 직접적인 상관성을 나타내는 거리 2보다는 큰 거리를 갖는 것이 바람직하고(예컨대, a=2), 거리가 길어지면, 연결되는 경로가 비례적으로 많아지기 때문에, 과도하게 큰 거리 값을 갖는 연결경로는 제외하는 것이 바람직하다(예컨대, b=10). 거리 범위를 정의하는 a 및 b 값은 사용자 설정을 통해 설정할 수 있고 임의로 변경도 가능하다. 또한, 머신러닝(machine learning)을 통해 최적의 해를 찾는 형태로 a 및 b의 값을 변화시킬 수 있다. 정해진 범위 미만의 거리를 갖거나 상기 범위를 초과하는 거리를 갖는 연결경로는 배체시킨다(S524).
본 발명의 실시예에 따르면, 장치는 두 노드 간의 연결경로의 거리를 고려하여 연결경로의 갯수를 조정할 수 있다. 앞서 설명한 바와 같이, 직접적으로 연결된 두 노드 간의 거리는 1 홉(hop)의 거리로 정의된다. 이때, 제 1 연결경로의 거리는 n1이(n1은 자연수)고, 제 2 연결경로의 거리는 n2(n2는 자연수)라고 할 때, 제 1 연결경로의 갯수는 1/n1으로 조정되어 산정될 수 있다. 또한, 제 2 연결경로의 갯수는 1/n2으로 조정되어 산정될 수 있다. 즉, 거리 2의 직접적인 상관성을 제외하고는, 짧은 거리로 연결되는 노드가 유사도가 높을 수 있으므로, 이를 보다 중요하게 고려하여 해당 거리로 나눠줌으로써 연결경로의 수를 조정할 수 있다. 예컨대, 거리 4의 노드 간의 연결경로의 갯수는 1/4로 고려되어, 거리 8의 연결경로의 갯수인 1/8보다, 크게(중요하게) 고려될 수 있다.
장치는 설정된 거리 범위 내에 존재하는 연결경로의 수를 위와 같은 방식을 기반으로 계산한다(S526). 그리고는, 가장 많은 연결경로의 갯수 값을 갖는 상품 또는 고객을 추출한다(S528). 이때, 연결경로의 수를 기반으로 정렬하여 상위 몇 개의 상품 또는 고객을 유사도가 높은 상품 또는 고객으로 추출할 수 있다. 유사도가 높다는 것은 구매성향이 유사하다는 것을 의미한다. 특히, 고객 대 고객의 유사도가 높은 경우, 유사하다고 판단된 고객 관점에서, 통합된 상품을 매개로 하여 통합상품을 포함하는 제 1 주문 내에서 상기 통합 상품을 뺀 나머지 상품을 대상 고객이 구매할 가능성이 높다고 판단할 수 있으므로, 이러한 상품을 추천상품으로 도출할 수 있다.
이와 같이, 유사도 결과로 나온 상품 및 고객의 정보, 그 밖에 해당 고객을 기반으로 통합상품을 제외하고 상기 제 1 주문 내의 나머지 상품에 대한 정보를 클라이언트 단말로 제공한다. 단말은 제공된 정보를 출력함으로써 구매자에거 표시할 수 있다(S530).
도 9은 상품 중심의 복수 개의 방사형 그래프가 얽혀있는 모습을 나타낸 개념도이다.
도 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차원적으로 각 방사형 그래프들 간의 상관관계를 시각화하여 표현하기는 어렵다.
따라서, 본 발명의 일 실시예에 있어서, 장치는 3차원으로 방사형 그래프들을 표시할 수 있다. 즉, xy 평면에서 제 1 및 제 2 방사형 그래프(610, 620)가 표시된다면, z 축 방향으로 제 1 각도를 가지고 제 1 및 제 3 방사형 그래프(610, 630)가 표시될 수 있고, 제 2 각도를 가지고 제 2 및 제 4 방사형 그래프(620, 640)가 표시될 수 있도록 할 수 있다. 이에 따라, 사용자 인터페이스의 줌-인/줌-아웃 기능을 통해 그래프들을 당겨볼 수 있도록 하고, 패닝(panning) 기능을 이용하여 3차원적인 각도를 조정하여 복수 개의 방사형 그래프 간의 연결관계를 볼 수 있도록 시각화할 수 있다. 그리고, 특정 노드를 선택할 시, 선택된 노드가 화면의 중심으로 오도록 하여, 중심노드와 연결된 복수 개의 방사형 그래프들을 전방향으로 표시하도록 할 수 있다.
본 발명의 다른 실시예에 따르면, 반드시 관계의 유형을 "고객-주문-상품-주문-고객"으로 가져가야만 하는 것은 아니고, 고객을 중심으로 "상품-주문-고객-주문-상품"의 관계를 지정할 수 있다. 즉, 관계의 기준은 다양하게 가져가도 무방하다.
도 10은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 동일/유사 카테고리와 결합 카테고리의 적절한 사용을 설명하기 위한 도면이다.
도 10을 참조하면, 장치는 유사도 판단시 그리고, 유사한 상품/고객을 추출한 뒤, 추천 상품을 도출할 때, 상품 카테고리 정보를 활용할 수 있다. 예컨대, 유사상품을 찾음에 있어서, 같은 카테고리(예컨대, 상의) 내에서만 유사상품을 찾을 수 있고, 또는 다른 카테고리(앞서 설명한, 경합 또는 결합에 의한 카테고리)(예컨대, 상의와 하의, 하의와 구두 등)에 해당하는 상품을 찾도록 할 수 있다.
특히, 상품 카테고리의 클래스를 구분하여 제 1 클래스는 상의, 하의, 신발, 액세서리 등의 가장 큰 범주의 카테고리로 구분하여, 동일/유사 카테고리와 결합 카테고리를 구분하고, 제 2 클래스는 제 1 클래스 내에서 세분화하여 정의할 수 있다. 각 상품카테고리는 식별자를 통해 정의되고, 식별자들 간의 유사/결합 관계를 코딩(coding)하여 각 상품카테고리가 어떤 관계인지 식별할 수 있게 한다. 제 2 클래스의 경우, 예컨대, 상의 내에서, 셔츠, 남방, 티셔츠, 후드, 조끼 등으로 구분될 수 있다. 제 3 클래스는 제 2 클래스를 세분화한 카테고리로 정의된다.
본 발명의 실시예에 따르면, 클래스 구분이 제 3 클래스까지 있다고 가정할 때, 제 1 클래스 내지 제 3 클래스까지 전 클래스에서 동일/유사 상품 카테고리를 사용하여 유사상품을 도출하도록 할 수 있다. 이 경우, "티셔츠"에 대하여, "남방" 상품 카테고리가 "상의"이면서 "티셔츠"와 유사한 상품 카테고리로 선택될 수 있고, 특정 주문 내에서 "남방"의 상품 카테고리에 속하는 상품이 유사상품으로 도출될 수 있다.
또는, 제 1 클래스에서 결합 카테고리를 사용하여 유사상품을 도출할 수도 있다. 이 경우, "티셔츠"에 대해 "하의" 카테고리가 선택되어, 하의 상품 카테고리에 속하는 상품이 티셔츠의 유사상품으로 도출될 수 있다. 티셔츠의 경우, 하의와 함께 결합되어 구매되는 상황이 많기 때문에, 이러한 설정이 적절할 수 있다.
다른 실시예에 있어서, 제 1 클래스에서는 동일/유사 카테고리를 사용하되, 제 2 클래스에서는, 결합 카테고리를 사용하도록 설정할 수도 있다. 이 경우, "티셔츠"에 대해서, 제 1 클래스에서 동일/유사 카테고리로써, "상의"의 카테고리가 선택되고, 제 2 클래스에서, "티셔츠"와 결합되는 "점퍼" 카테고리가 선택될 수 있다. 즉, 특정 주문 내에서 "점퍼"의 상품 카테고리에 속하는 상품이 유사상품으로 도출될 수 있다.
이와 같이, 그래프를 사용하여 유사상품을 도출함에 있어서, 동일/유사 상품 카테고리를 사용할지, 결합 상품 카테고리를 사용할지 결정하는 것은 그 결과 값이 달라지기 때문에, 중요하게 고려되는 팩터이다. 또한, 어느 클래스에서 유사 카테고리를 사용하고 결합 카테고리를 사용하는지에 따라서도 그 결과 값이 달라진다. 장치는 이러한 설정을 사용자 설정을 통해 정의하고, 임의로 사용자가 변경할 수 있도록 할 수 있다. 아니면, 빅데이터 기반의 인공지능을 사용하여 이와 같은 부분을 최적으로 조정할 수 있다. 인공지능 모델을 활용하는 방법은 도 11을 통해 보다 상세히 설명한다.
도 11은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법에서 사용되는 추천 알고리즘 관련 인공지능 학습 방법을 설명하기 위한 개념도이다.
도 11을 참조하면, 분할된 특정 클래스에서 "동일/유사 카테고리"를 사용할지 "결합 카테고리"를 사용할지 결정하는 것은 그 결과값이 전혀 달라지기 때문에, 매우 중요하다고 할 수 있다. 따라서, 장치는 인공지능 학습 모듈(미도시)을 이용하여 인공지능 모델을 학습시킨 후, 학습완료된 인공지능 모델을 기반으로 특정 클래스에서의 유사 또는 결합 카테고리의 사용 여부를 설정할 수 있다.
본 발명의 일 실시예에 따르면, 장치에서 사용되는 인공지능 모델은 딥 러닝 콘볼루션 신경망 모델(CNN: Convolution Neural Network)을 포함한다. 다만, 이에 국한되는 것은 아니고, DNN(Deep Neural Network), RNN(Recurrent Neural Network) 및 LSTM(Long Short Term Memory Network) 중 어느 하나를 포함할 수도 있다.
장치는 주문 데이터 1과 주문 데이터 2를 학습 데이터 세트로 생성한다. 이때, 두 개의 주문 데이터는 본 발명의 일 실시예에 따른 그래프 기반의 유사상품 도출에 따라 선택과정의 이전 주문데이터(유사성 검색 요청의 대상이 되는 주문데이터)와 상품 추천 이후 실제 주문에 의해 생성된 주문데이터의 관계를 갖는다. 즉, 주문 데이터 1을 주문한 고객이 본 발명의 일 실시예에 따른 그래프 기반의 유사상품 도출방법을 이용하여 복수 개의 상품들을 추천받고, 추천받은 데이터들 중 하나를 선택하여 이루어진 주문 데이터 2를 조합하여 학습데이터 셋(set)을 생성한다. 이때, 상품추천을 위해 그래프 기반의 유사상품 도출을 함에 있어서, 제 1 클래스에서 유사 또는 결합 카테고리를 사용할지 여부, 제 2 클래스에서 유사 또는 결합 카테고리를 사용할지 여부를 변경하면서 유사상품을 도출하고, 도출 이후의 주문데이터를 기반으로 상기 그래프 기반의 유사상품 도출과정을 통해 최상위로 도출된 상품 내에서 주문이 이루어지도록 하는 방향으로 인공지능을 학습시킨다.
또한, 최적거리 범위를 위한 임계값(앞선 도 5에서의 a 및 b 값)도 변경시키면서 주문데이터 1 및 주문데이터 2의 학습 데이터 세트를 기반으로 그 결과값을 축적시켜 가면서 최적의 임계값을 찾도록 한다.
이때, 학습데이터를 형성하는 주문 데이터 1과 주문 데이터 2의 매개가 되는 노드계층은 반드시 제 1 노드 계층인 "상품"이어야만 하는 것은 아니고, 제 3 노드 계층인 "고객"이어도 무방하다. 또한, 제 2 노드 계층이 기준이 될 수도 있다.
도 12는 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 연결경로 인덱싱 방법을 설명하기 위한 개념도이다.
도 12를 참조하면, 장치는 상품과 상품, 고객과 고객, 또는 상품과 고객 간의 연결경로를 데이터함에 있어서, 인덱싱을 하여 식별한다. 이때, 연결경로는 노드계층 식별자와 인덱스 넘버로 구성될 수 있다. 노드계층 식별자는 검색 중심이 되는 대상 노드의 식별자와 최종 도착 노드의 식별자의 조합으로 구성된다. 이때, 제 1 노드 계층(상품 노드)은 p로, 제 3 대상 노드 계층(고객 노드)은 m으로 식별될 수 있다. 이와 같은 방법으로 출발노드와 도착노드의 노드계층을 식별하고 나면, 이후, 인덱싱 번호가 붙는다. 인덱싱 번호는 질의와 관련된 것으로, 특별한 의미를 갖을 수 있다. 예컨대, pp 노드계층 식별자에 "0100" 인덱스가 붙으면, 이는 해당 상품을 구매한 고객들이 구매한 다른 상품을 찾아달라는 질의를 의미하고, 이와 연관된 경로는 제 1 상품(출발노드)을 주문한 고객이 묶음주문한 다른 상품을 의미한다. 노드계층 식별자에 직접 후속하여 붙는 인덱스의 의미에 따른 질의에 대한 설명은 도 13을 통해 보다 상세히 설명한다.
이와 같이, 인덱스까지 붙은 상태에서 각 연결경로는 "-1"의 형태로 식별된다. 즉, pp0100 질의와 연관된 첫 번째 경로는 "pp0100-1"로 데이터화될 수 있다. 이후, "-" 뒷단의 숫자를 1씩 증가하며 경로를 식별할 수 있다. 예컨대, 제 1 상품을 주문한 고객이 묶음 주문한 다른 상품이 다수 개 있으면, pp0100-1, pp0100-2, pp0100-3 등으로 정의될 수 있다.
같은 방법으로, 제 1 고객으로부터 제 2 고객까지의 연결경로는 mm0100-1, mm0100-2, 또는 mm0101-1, mm0101-2 등으로 표현된다. 제 1 상품으로부터 제 1 고객까지의 연결경로는 pm0100-1, pm0100-2 등으로 표현된다. 제 1 고객으로부터 제 1 상품까지의 연결경로는 mp0100-1, mp0100-2 등으로 표현된다.
이와 같이 연결경로는 데이터화하여 장치는 보유할 수 있고, 이를 이용하여 특정 거리 범위 내의 연결경로의 수를 산출한다.
추가적으로, 장치는 도 9의 그래프 형태의 구현에서 연결경로 리스트 형태로 변환이 가능하도록 제어할 수 있다. 즉, 복수 개의 방사형 그래프를 시각화하는 중에, 특정 출발 노드와 특정 도착 노드 간의 연결경로와 관련된 정보를 리스트 형태로의 변환에 대한 요청이 있으면, 상기 출발 노드와 상기 도착 노드 간의 연결경로 인덱스를 리스트로 표시할 수 있다. 또한, 해당 리스트에는 제 1 인데스의 연결경로(예컨대, pp0100-1)의 거리도 함께 표시할 수 있다. 이에 따라, 특정 인덱스를 갖는 연결경로를 클릭할 시, 해당 경로가 그래프 상에 하이라이트된 상태로 표시되고, 어느 경로를 거쳐 출발노드로부터 도착노드로 연결되는지를 직관적으로 볼 수 있도록 시각화한다.
또한, pp0100-1과 pp0101과 같은 경우, 중복되어 인덱싱될 수 있는데, 이를 방지하기 위해, pp0100에 대한 연결경로를 모두 추출할 경우에는 pp0100-1로 추출되고, pp0101에 대한 연결경로를 모두 추출할 경우에는 pp0101-1로 추출되어 중복되지 않도록 하고, 모든 경로를 추출할 경우, 중복되는 pp0100-1을 제외하고, 그보다 좀 더 구체화된 연결경로를 표현하는 pp0101-1로 식별되도록 할 수 있다.
도 13a 내지 도 13d는 상품과 고객 노드를 입력으로 지정하여 유사 상품 및 유사 성향의 고객을 출력으로 찾는 다양한 실시예를 나타낸 도면이다.
장치는 상품 또는 고객 노드를 입력으로 지정하여 유사 상품 및 고객을 찾는 질의를 생성한다.
도 13a를 참조하면, 특정상품과 유사성이 있는 상품을 찾는 질의를 생성한다. 상품을 주문한 고객이 묶음 주문한 다른 상품을 나타내는 pp0100 질의를 생성할 수 있다. 또한, 상품을 주문한 고객이 묶음 주문한 다른 상품 중 같은 카테고리 내 상품을 나타내는 pp0101 질의를 이용하여 연결경로를 도출할 수 있다.
또한, 상품을 주문한 고객이 다른 주문으로 구매한 상품을 나타내는 pp0200 질의 및 상기 다른 주문에서 같은 카테고리 내 상품을 나타내는 pp0201 질의를 이용할 수 있다.
도 13b를 참조하면, 특정고객과 유사성이 있는 고객을 찾는 질의는 다음과 같은 것이 있다. 제 1 고객과 같은 상품을 주문한 제 2 고객을 나타내는 mm0100 질의를 이용할 수 있다. 나아가, 제 1 고객이 주문한 제 1 상품과 완전 동일한 상품이 아니라 동일한 카테고리의 제 2 상품을 주문한 제 2 고객까지의 경로를 찾기 위한 mm0101 질의를 이용할 수도 있다.
도 13c를 참조하면, 특정상품과 유사성이 있는 고객을 찾는 질의와 관련하여, 해당 상품과 묶음 구매된 상품을 구매한 고객까지의 경로를 나타내는 pm0000 질의와, 상기 묶음 구매된 상품 중에, 상기 해당 상품과 동일 카테고리 내의 상품을 구매한 고객가지의 경로를 나타내는 pm0100 질의를 이용할 수 있다.
도 13d를 참조하면, 특정 고객과 유사성이 있는 상품을 찾는 질의와 관련하여, 해당 고객이 주문한 상품과 같이 묶음 구매된 상품들까지의 경로를 나타내는 mp0000 질의와, 상기 묶음 구매된 상품 중에, 상기 해당 상품과 동일 카테고리 내의 상품까지의 경로를 나타내는 mp0001 질의를 이용할 수 있다.
본 발명의 실시예에 따르면, 상품과 상품 간의 유사성 판단에 있어서, 위와 같은 질의가 존재하고, 질의에 대한 연결경로 또한, ppXXXX-X로 표현된다. 특히, 상품과 상품 간의 연결경로 ppXXXX-X를 이용할 수도 있지만, 상품-고객 간의 유사성과 관련된 경로를 나타내는, pmXXXX-X 경로와 고객과 상품 간의 유사성과 관련된 연결경로를 나타내는, mpXXXX-X 경로의 조합을 이용할 수 있다. 즉, pm0000-1 + mp0000-1을 이용하여 상품과 상품 간의 유사성을 판단할 수도 있다. 또한, pm0000-1 + mm0100-1 + mp0000-1을 이용하는 등, 3가지 이상의 유사성 관련 연결경로를 이용하여 상품과 상품 간의 유사성을 판단할 수 있다.
본 발명의 실시예에 따르면, (i) ppXXXX-X 경로와 (ii) pmXXXX-X + mmXXXX-X + mpXXXX-X의 경로 중 어느 것을 이용할 때, 최적의 상품추천이 가능한지에 대한 것도 앞서 도 11의 인공지능 학습 모델을 이용하여 경로와 연관된 파라미터(가중치 포함)를 변경시키면서 학습을 시킴으로써 정확도를 제고시킬 수 있다.
도 14은 본 발명의 일 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 웹 페이지에서 구현한 결과를 나타낸 도면이다.
도 14을 참조하면, 장치는 REST API를 이용하여 접속함에 의해 상기와 같은 알고리즘을 실행할 수 있도록 한다. 장치는, URL(Uniform Resource Locator)을 이용하여 어떤 로직(관계)를 적용할 것인지 지정한다. 도 14의 실시예에서는, pp0100을 지정하여 해당 상품을 구매한 회원들이 구매한 다른 상품을 도출하도록 한다.
URL 경로에 있어서, pp0100과 같은 질의에 후속하여 쿼리 파라미터(Query Parameter)가 붙을 수 있는데, 여기에는 중심이 되는 상품번호, 반환할 데이터의 건수 및 회원 ID 등이 포함될 수 있다. 즉, 추천 로직에 따라 고객 또는 상품 정보만 사용할 수 있다. 이와 같은 상품코드, 고객 번호 등의 추가파라미터는 URL 인코딩(encoding) 방식으로 전달된다.
이러한 쿼리에 응답하여, 쿼리 출력으로는, 데이터의 개수(n), 상품 또는 회원(node), 중요도(hits: 검색된 경로의 갯수) 및 암호화 쿼리(디버깅 용도의 사이퍼 쿼리(Cypher query)가 제공될 수 있다.
장치는 유사성이 높은, 즉, 연결경로가 많은 순서로 상위 n개(본 실시예에서는 n=5, 즉, 5개)의 상품 및 해당 상품별 경로의 갯수를 반환할 수 있다.
상품구매 이력을 이용하는 경우, 고객의 선호도를 파악하는 시점이 늦을 수 있고, 구매 건의 경우 데이터가 충분히 많지 않아 통계적인 연관성을 보기 어렵기 때문에, 사용자가 상품을 조회한 이력을 이용하여 상품을 추천하는 것을 고려할 수 있다.
도 15는 본 발명의 다른 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법을 나타낸 흐름도이다.
도 15를 참조하면, 장치(서버)는 상품 조회와 연관된 조회 이력 데이터를 쇼핑몰들 및/또는 쇼핑몰들을 관리하는 서버로부터 수집한다(S1210). 이는 웹 로그 파일로부터 사용자들의 상품정보 조회 이력을 추출함에 의해 달성될 수 있다. 조회이력은 순차적인 상품코드로 변환하여 데이터화할 수 있다. 예컨대, 상품 1을 보고, 상품 2를 조회하고, 상품 4를 조회한 후, 다시 상품 1을 보고 로그아웃한 이력에서 시계열적인 부분까지 고려하여 상품코드로 변환함에 의해 조회 이력 데이터를 생성한다.
그리고는, 장치는 조회 이력 데이터를 그래프 형태로 변환한 후(S1212), 데이터베이스에 저장한다(S1214). 이때, 그래프의 구조는 앞선 "상품-주문-고객"에 대응되도록, "세션-페이지-상품"의 구조를 가질 수 있다.
클라이언트(사용자 단말)은 추천 상품 검색 요청을 입력할 수 있다(S1216). 이는 도 14에서 설명한 바와 같이, URL을 이용하여 이루어질 수 있다.
장치는 특정한 상품을 검색한 이후 또는 이전의 x개의 웹 페이지 범위 내에서 조회한 상품을 추출한다(S1218). x 값은 사용자 설정에 의해 결정될 수 있고, 임의로 변경가능하다.
장치는, 조회한 상품 중에서 조회수가 많은 상품 순으로 구매자에게 추천할 수 있다(S1220). 클라이언트는 추천된 상품 정보를 수신하여 출력할 수 있다(S1222).
도 16a 및 도 16b는 본 발명의 다른 실시예에 따른 그래프 데이터베이스를 이용한 상품 추천 방법의 상품 경로예측의 예시적인 모습을 나타낸 도면이다.
도 16a 및 도13b를 참조하면, 추천 상품 수(n)를 10개로 하여, 추천 상품 요청에 있을 경우, 장치는 적어도 3개의 노드 계층으로 형성된 그래프를 생성한다. 이는, 제 1 노드 계층인 세션(1330)을 중심으로 사용자가 조회했던 웹 페이지(1320: 제 2 노드 계층)과 해당 웹 페이지에서 검색한 상품(1310: 제 3 노드 계층)을 포함할 수 있다. 노드 계층은 상품이 제 1 노드 계층, 페이지가 제 2 노드 계층, 그리고, 세션이 제 3 노드 계층이 되도록 변경되어도 무방하다.
장치는 특정 세션(1330)과 연관된 웹 페이지(1320)를 연결하고, 웹 페이지(1320) 내에서 검색한 상품(1310)이 웹 페이지(1320)와 연결되도록 구성한다. 그리고, 시계열적인 순서를 파악할 수 있도록 직선으로 형성된 연결선(-)이 아닌, 화살표(→)를 사용하여 선행 동작과 후속 동작을 구분하여 그래프를 구성하는 것이 바람직하다.
그래프를 구성하고 나서, 장치는 상품 24522(1310) 조회 이후, 3 페이지 범위 내에서 조회한 상품을 조회수가 많은 순서로 10개 검색하여 추천한다. 이후의 3개 웹 페이지와 관련된 내용은 도 17a 및 도 17b를 통해 설명한다.
도 17a 및 도 17b는 도 16a의 실시예에서의 상품 조회 이후, 다음 상품을 조회한 상황에서의 상품 경로예측의 예시적인 모습을 나타낸 도면이다.
도 17a 및 도 17b를 참조하면, 장치는, 고객이 상품 24522(미도시)를 조회하고 다음에 웹 페이지(1420)를 통해 상품 25799(1410)를 조회한 후, 웹 페이지(1422)를 이용하여 상품 25622(1412)를 조회한 사실을 변환된 그래프 데이터를 기반으로 확인할 수 있다. 이러한 방식으로 특정 상품 이후에 특정 횟수의 페이지의 범위(본 실시예에서는 3개 페이지일 수 있음) 내에서 조회한 상품을 조회수가 많은 순서로 10개 검색하여 반환함으로써 앞선 도 16a 내지 도 16b의 클라이언트로부터의 요청을 처리할 수 있다. 다만, 이때, 3개 페이지는 상품 검색이 이루어진 페이지가 되도록 설정할 수 있다. 즉, 상품 검색이 없는 웹 페이지는 페이지 획수 산정에서 제외하고, 상품 검색이 이루어진 페이지를 기준으로 3개 페이지를 산정하여 해당 페이지 범위 내에서 조회가 많이 이루어진 상위 상품을 추천하는 것이 바람직하다.
본 발명의 다른 실시예에 따르면, 페이지에만 제한을 두어 상품을 추천해야만 하는 것은 아니고, 세션에 제한을 두어, 3개 세션 내에서 이루어진 상품의 조회수를 기반으로 상품을 추천할 수 있다. 나아가, 조회수가 높아 추천된 상품의 카테고리 식별자를 이용하여 경합의 카테고리에 있는 상품만 추천하거나, 유사의 카테고리에 있는 상품을 추천할 수 있다. 유사 또는 경합 카테고리의 사용, 클래스의 사용 부분 역시 도 11의 인공지능 모델을 이용하여 그 설정값을 최적화할 수 있다. 이때의 학습데이터 셋은 검색 요청의 대상이 되는 조회 데이터 1과 본 발명의 일 실시예에 따른 그래프 기반의 상품추천 과정을 통해 실제 구매가 이루어진 상품과 연관된 조회 데이터 2의 세트가 될 수 있다.
본 발명의 실시예에 있어서, 장치는, 상품 구매 이력 데이터 기반의 제 1 그래프 데이터베이스와 상품 조회 이력 데이터 기반의 제 2 그래프 데이터베이스를 혼합하여 사용할 수 있다. 예컨대, 제 2 그래프 데이터베이스를 이용하여 조회수가 많은 상위 10개 상품을 검색한 후, 추천 후보 10개 상품과 요청대상 상품의 유사성의 정도를 제 1 그래프 데이터베이스를 이용하여 산출할 수 있다. 그래서, 제 1 그래프 데이터베이스를 이용하여 유사도가 높은 상품을 기반으로 추천 10개 후보의 추천 순서를 변경할 수 있다. 그 반대의 경우도 가능하다.
추가적으로, 제 1 그래프 데이터베이스를 기반으로 산정한 추천 상품 후보에 가중치 1을 부여하고, 제 2 그래프 데이터베이스 기반으로 산정한 추천 상품 후보에 가중치 2를 부여하여 가중치를 기반으로 가장 높은 유사성을 갖는 상품을 최종 후보로 선택하는 방법을 고려할 수 있다.
이하에서는 제 2 방식에 의한 상품 추천으로, 그룹 고객과 그룹 상품 간의 상품 추천, 예컨대 바스킷(Basket) 추천에 대하여 설명하기로 한다.
도 18는 상품 판매활성도 분석에 따라 판매가 저조해진 상품들에 대한 프로모션이 필요한 상황을 설명하기 위한 개념도이다.
도 18를 참조하면, 장치는, 상품의 판매량과 상품의 판매활성도 분석을 수행하여 판매가 저조해진 상품들(활성도가 0.2보다 낮은 상품들)(lagger 단계의 상품들) 10개 중 일부를 대상으로 프로모션이 요구될 수 있다. 즉, 10개의 판매 저조 상품들 중 4개를 뽑아서 프로모션을 진행하고자 하는 경우, 본 발명의 일 실시예에 따른 상품 바스켓 추천 방법이 사용될 수 있다.
도 19a 및 도 19b는 5명의 고객과 6개의 상품이 있는 경우, 특정 수의 고객 군과 특정 수의 상품군을 매칭하여 특별 프로모션을 제공하기 위한 매칭방법을 설명하기 위한 개념도이다.
도 19a를 참조하면, 5명의 고객과 6개의 상품이 존재하는데, 고객 3명에서 상품 3개를 프로모션하고자 하는 경우, 판매가능성을 최적화하는 결정이 요구된다. 장치는 이를 위해, 두 가지 방법을 통해 최적화된 프로모션을 수행할 수 있다.
(1) 첫 번째 방법은, 6개 상품 중 5명에게 최적인 상품군을 먼저 선정하고 선정된 상품에 대해 최적의 고객을 이차적으로 선정하여 복수 상품군과 복수 고객군을 매칭하는 방법이다(도 21 참조).
(2) 두 번째 방법은, 5명의 고객에게 6개 상품에 최적인 고객군을 먼저 선정하고, 선정된 고객들에 대해 최적의 상품을 이차적으로 선택하여 복수 상품군과 복수 고객군을 매칭하는 방법이다(도 23 참조).
장치는 위와 같은 두 가지 방법 중 적어도 하나의 방법을 사용하여 판매가능성을 최적화하는 결정을 수행하고, 그 결정에 의해, 도 19b와 같은 상태에서 프로모션을 진행할 수 있다.
도 19b를 참조하면, 장치는 고객 1, 고객 3 및 고객 4에게 상품 2, 상품 3 및 상품 6으로 구성된 패키지를 프로모션한다. 프로모션은 해당 패키지에 포함된 상품을 해당 고객에게만 특별할인 제공하는 형태로 진행될 수 있다. 또는, 쇼핑몰의 첫 페이지에 팝업 방식으로 해당 패키지의 상품이 표시되도록 할 수도 있고, 가장 눈에 띄는 일부 영역에 패키지 상품을 배열하여 판매를 유도할 수 있다.
도 20a 및 도 20b는 본 발명의 또 다른 실시예에 따른 상품 바스켓 추천 방법을 나타낸 흐름도이다.
도 20a 및 도 20b을 참조하면, 장치는 복수 개의 상품(예컨대, 10개의 상품)에 대해 각각 추천할 고객을 선정하여 프로모션할 때, 다음의 절차를 따른다.
장치는 먼저, 프로모션의 후보가 되는 상품 및 고객 데이터를 획득한다(S1710). 도 20b의 실시예에서는, 10건의 상품후보와 약 100여명의 고객후보가 있으며, 이에 대한 데이터를 획득한 상황을 가정한다. 이때, 고객후보에서는 특정 상품에 대해 미리 구매한 구매자는 제외하거나 데이터를 0으로 하여 취합한다. 취합된 데이터는 행렬 형태를 취하는 것이 바람직하다. 이때, 상품을 행으로, 고객을 열로 형성한다. 물론 반대여도 무방하다. 그리고, 행렬의 빈 칸에는 개별 상품과 개별 고객의 구매가능성과 관련된 지표를 입력한다. 상기 구매가능성과 관련된 지표는 상품 이미지 분석, 상품 속성 분석, 고객 구매 이력에 따른 성향을 기반으로 산출되는 지표를 사용할 수 있다. 또는, 본 발명의 일 실시예에 따른 그래프 데이터베이스에 기반한 유사도를 상기 지표로 사용할 수 있다. 도 20b의 실시예에서는, 그래프 데이터베이스를 이용하여 연결경로를 갯수로 산출되는 유사도를 상기 구매가능성 지표로 사용한다.
데이터를 획득하여 행렬을 생성한 후, 장치는 상품별 총 연결경로의 수를 산출하여(S1720), 연결경로의 수가 큰 상위 순위의 상품들을 선택한다(S1730). 선택되는 상품의 수는 프로모션 대상 상품의 수를 따른다. 이는 사용자(예컨대, 쇼핑몰 운영자)가 사용자 인터페이스를 통해 선택할 수 있는 상황이다. 또는, 특정 갯수의 상품을 기준값으로 설정하지 않고, 임계값 이상의 연결경로의 수를 갖는 상품을 모두 선택할 수 있다. 예컨대, 700 개의 연결경로의 수보다 큰 연결경로를 갖는 상품들이 그 갯수를 제한하지 않고 선택될 수 있다. 연결경로의 수가 적은 것은 관련성이 적다고 판단될 수 있다. 이 경우, 연결경로의 수가 적은 것을 선택하여 할인을 더 많이 하는 방향으로 처리할 수 있다. 도 20b의 실시예에서, 장치는 연결경로의 수가 높은 상위 4개의 상품을 선택한다.
장치는 선택된 상위 4개(이는 사용자 설정을 통해 변경가능함)의 상품만 남기고, 나머지 상품은 삭제하여 새로운 행렬로 행렬을 재구성한다(S1740). 그리고는, 남아있는 4개의 상품에 대해 연결경로의 총합이 높은 6명의 고객을 프로모션 대상 고객으로 채택한다. 장치는 선택된 4개 상품 패키지를 프로모션 대상 고객 군인 6명의 고객에게 프로모션을 진행한다(S1750).
도 21은 본 발명의 또 다른 실시예에 따른 상품기반 바스켓 추천 방법을 나타낸 흐름도이다. 이는 도 19a의 (1) 방법에 관한 것이다.
도 21을 참조하면, 장치는 프로모션의 후보가 될 상품 및 고객과 연관된 구매가능성 지표에 대한 데이터를 획득하고 나면, 상품을 열로, 고객을 행으로 하는 행렬을 생성한다(S1810). 행렬의 빈칸에는 상품-고객 간의 구매가능성 지표가 입력되도록 한다.
그리고는, 장치는 각 행에 대한 구매가능성 합계를 산출한다(S1820). 그리고는, 구매가능성 합계가 큰 순으로 상품을 순위화하여 프로모션에 의해 추천하고자 하는 상품의 갯수만큼, 구매가능성 합계 순위가 높은 상품을 선택하고, 나머지 상품은 삭제하여 행렬을 재구성한다(S1830).
상품이 선택되고 나면, 장치는 각 열에 대한 고개별 부분합을 산출한다(S1840). 그리고는, 고객별 부분합이 큰 순서로 순위화한 후, 프로모션 대상으로 하고자 하는 고객의 수만큼 구매가능성 부분합 순위가 높은 고객을 선택하고 나머지 고객들을 제외시킨다(S1850).
고객 그룹과 상품 그룹에 대한 선택이 완료되면, 장치는 해당 고객 그룹을 대상으로 해당 상품 그룹을 패키지로 형성하여 프로모션을 실시한다(S1860).
도 22a 내지 도 22c는 도 21의 바스켓 추천 방법의 각 단계별 행렬 생성 방법을 구체적으로 설명하기 위한 테이블이다.
도 22a를 참조하면, 장치는 고객 1 내지 고객 5와 상품 1 내지 상품 6에 대한 구매가능성 지표를 기반으로 고객을 행으로, 상품을 열로 구성하여 행렬을 생성한다.
도 22b를 참조하면, 장치는 행에 대한 합산을 통해, 상품별 부분합을 계산하여 순위를 매긴다. 도 22b의 실시예에 따르면, 상품 2가 69의 값으로 1위, 상품 3이 55의 값으로 2위, 상품 6이 53의 값으로 3위가 된다.
도 22c를 참조하면, 상위 3개 상품(상품2, 상품 3 및 상품 6)을 선정하고, 열에 대한 합산을 수행하여 고객별 부분합을 산출한다. 그리고는, 그에 대한 순위를 매긴다. 도 22c의 실시예 따르면, 고객 1이 48의 값으로 1위, 고객 3이 43의 값으로 2위, 고객 4가 33의 값으로 3위가 된다.
이에, 장치는, 고객 1, 고개 3 및 고객 4를 프로모션 대상 고객으로 선정하고, 상품 2, 상품 3 및 상품 6을 프로모션 대상 상품으로 선정하여 프로모션을 진행한다.
도 23은 본 발명의 또 다른 실시예에 따른 고객기반 바스켓 추천 방법을 나타낸 흐름도이다. 이는 도 19a의 (2) 방법에 관한 것이다.
도 23을 참조하면, 장치는 프로모션의 후보가 될 상품 및 고객과 연관된 구매가능성 지표에 대한 데이터를 획득하고 나면, 상품을 열로, 고객을 행으로 하는 행렬을 생성한다(S2010). 행렬의 빈칸에는 상품-고객 간의 구매가능성 지표가 입력되도록 한다.
그리고는, 장치는 각 열에 대한 구매가능성 합계를 산출한다(S2020). 그리고는, 구매가능성 합계가 큰 순으로 고객을 순위화하여 추천하고자 하는 고객의 수만큼, 구매가능성 합계 순위가 높은 고객을 선택하고, 나머지 고객은 삭제하여 행렬을 재구성한다(S2030).
고객이 선택되고 나면, 장치는 각 행에 대한 상품별 부분합을 산출한다(S2040). 그리고는, 상품별 부분합이 큰 순서로 순위화한 후, 프로모션 대상으로 하고자 하는 상품의 수만큼 구매가능성 부분합 순위가 높은 상품을 선택하고 나머지 상품들을 제외시킨다(S2050).
고객 그룹과 상품 그룹에 대한 선택이 완료되면, 장치는 해당 고객 그룹을 대상으로 해당 상품 그룹을 패키지로 형성하여 프로모션을 실시한다(S2060).
도 24a 내지 도 24c는 도 23의 바스켓 추천 방법의 각 단계별 행렬 생성 방법을 구체적으로 설명하기 위한 테이블이다.
도 24a를 참조하면, 장치는 고객 1 내지 고객 5와 상품 1 내지 상품 6에 대한 구매가능성 지표를 기반으로 고객을 행으로, 상품을 열로 구성하여 행렬을 생성한다.
도 24b를 참조하면, 장치는 열에 대한 합산을 통해, 고객별 부분합을 계산하여 순위를 매긴다. 도 24b의 실시예에 따르면, 고객 1이 77의 값으로 1위, 고객 3이 73의 값으로 2위, 고객 4가 72의 값으로 3위가 된다.
도 24c를 참조하면, 상위 3명의 고객(고객 1, 고객 3 및 고객 4)을 선정하고, 행에 대한 합산을 수행하여 상품별 부분합을 산출한다. 그리고는, 그에 대한 순위를 매긴다. 도 24c의 실시예 따르면, 상품 2가 47의 값으로 1위, 상품3이 41의 값으로 2위, 상품 5가 37의 값으로 3위가 된다.
이에, 장치는, 고객 1, 고객 3 및 고객 4를 프로모션 대상 고객으로 선정하고, 상품 2, 상품 3 및 상품 5를 프로모션 대상 상품으로 선정하여 프로모션을 진행한다.
도 20의 실시예에 따른 상품 기반 추천 방법과 도 22의 실시예에 따른 고객 기반 추천 방법에 따르면, 프로모션 고객은 동일하나 상품이 달라지는 결과가 나온다. 이와 같이, 어느 방법을 사용하는지에 따라 그 결과는 전혀 다르게 나올 수 있다.
도 25는 본 발명의 일 실시예에 따른 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축하고, 구축된 빅데이터를 기반으로 그래프 데이터베이스 기반의 상품추천 방법 및/또는 상품 바스켓 추천 방법을 수행하는 장치를 개략적으로 나타낸 블록도이다.
도 25에 도시된 바와 같이, 본 발명의 일 실시예에 따른 상품추천 장치는 통신부(2210), 디스플레이부(2220), 프로세서(2230), 메모리(2240) 및 입력부(2250)를 포함할 수 있다.
도 25를 참조하면, 통신부(2210)는 유선 및 무선 네트워크 중 적어도 하나와 연결되어 타 장치와 통신을 위한 구성요소이다. 통신부(2210)는 안테나, 통신 관련 칩(chip) 등으로 구현될 수 있다.
디스플레이부(2220)는 통신부(2210)를 통해 입출력되는 정보 및 프로세서(2230)를 통해 처리되는 정보를 디스플레이하는 구성요소이다. 이는, 모니터, TV 및 기타 패널 중 하나로 구현될 수 있다.
프로세서(2230)는 상기 통신부를 기반으로 복수 개의 쇼핑몰로부터 상기 복수 개의 쇼핑몰에 대응하는 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 고객 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신할 수 있다. 프로세서(2230)은 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정하고, 상기 제 1 고객에 대응하는 통합 고객 식별자를 생성하고, 상기 제 1 고객에 대응하는 상기 통합 고객 식별자를 상기 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개인 정보 요소 그룹과 연관시켜 데이터베이스에 저장하고, 상기 통합 고객 식별자를 기반으로 하여 상기 복수 개의 쇼핑몰로부터 상기 제 1 고객의 로그 기록을 데이터베이스에 수집함으로써 빅데이터를 구축할 수 있다. 프로세서(2230)은 마이크로 프로세서로 구현될 수 있다.
상기 프로세서(2230)는 복수 개의 개인 정보 요소 그룹 간의 유사도를 산출하고, 산출된 유사도를 기반으로 하여 제 1 고객을 특정할 수 있다. 상기 프로세서(2230)는 개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산할 수 있다. 상기 프로세서(2230)는, 산출된 상기 유사도가 정해진 값 이상이면 동일한 고객으로 특정할 수 있다. 상기 프로세서(2230)는, 복수 개의 개인 정보 요소 그룹의 데이터를 딥러닝을 통하여 학습된 인공지능 엔진에 입력하여 동일한 고객별로 분류할 수 있다.
상기 프로세서(2230)는 제 1 쇼핑몰로부터 제 1 쇼핑몰에서 제 2 고객을 식별할 수 있는 제 1 개별 쇼핑몰 고객 식별자 및 상기 제 1 개별 쇼핑몰 고객 식별자에 대응하는 제 1 개인 정보 요소 그룹을 수신하고, 상기 제 1 개별 쇼핑몰 고객 식별자를 기반으로 하여 상기 제 2 고객에 대응하는 통합 고객 식별자가 상기 데이터베이스에 존재하는 지를 판단하고, 상기 데이터베이스에 상기 제 2 고객에 대응하는 통합 고객 식별자가 존재하지 않는 경우, 상기 제 1 개인 정보 요소 그룹을 기반으로 하여 상기 제 2 고객에 대응하는 통합 고객 식별자를 생성하고, 상기 제 2 고객에 대응하는 통합 고객 식별자를 상기 제 1 개별 쇼핑몰 고객 식별자 및 상기 제 1 개인 정보 요소 그룹과 연관시켜 상기 데이터베이스에 저장할 수 있다.
상기 프로세서(2230)는 데이터베이스에 상기 제 2 고객에 대응하는 통합 고객 식별자가 존재하는 경우, 상기 데이터베이스에 저장된 상기 제 2 고객의 개인 정보 요소 그룹과 상기 제 1 개인 정보 요소 그룹을 비교하는 것을 기반으로 하여, 변경된 내용이 있는지를 판단할 수 있다. 이때 비교 결과 변경된 내용이 있는 경우, 변경된 내용을 기반으로 상기 제 2 고객의 개인 정보 요소 그룹의 내용을 업데이트할 수 있다.
상기 프로세서(2230)는 수집된 상기 제 1 고객의 로그 기록을 기반으로 하여 그래프 데이터베이스를 기반으로 한 상품 추천 및 바스킷 추천 중 적어도 어느 하나를 기반으로 하여 상기 제 1 고객에 대응하는 상품 추천을 수행할 수 있다. 메모리(2230)는 프로세서(2230)의 동작에 필요한 데이터를 저장할 수 있다.
상기 프로세서(2230)는 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고, 상기 복수 개의 쇼핑몰로부터 상기 복수 개의 통합 고객 식별자로서 식별되는 복수의 고객의 주문이력 데이터를 수집하고, 상기 수집된 주문이력 데이터를 적어도 3개의 노드 계층으로 구성된 그래프 형태의 데이터로 변환하고, 상기 그래프 형태의 데이터를 데이터베이스에 저장하고, 저장된 그래프 형태의 데이터를 기반으로 하여, 유사상품에 대한 질의에 대응하여 상기 적어도 3개의 노드 계층에 포함되는 노드들 중 적어도 두 노드 사이의 연결경로 개수를 기반으로 유사도를 판단하여 반환할 수 있다.
한편, 프로세서(2230)는 다른 관점에서, 본 발명의 일 실시예에 따른 그래프 기반의 유사성 판단 및 상품 바스켓 추천 알고리즘을 실행하는 구성요소이다. 프로세서(2230)는 통신부(2210)를 통해 입력되는 주문 이력 데이터 및 조회 이력 데이터를 기반으로 그래프 형태의 데이터로 변환하고, 클라이언트로부터의 유사상품에 대한 질의에 대응하여 변환된 그래프 형태의 데이터를 이용하여 유사상품 및 유사고객에 대한 정보를 반환한다. 이때, 제 1 노드로부터 제 2 노드까지의 연결경로(이는 일정 범위의 거리를 갖는 것으로 제한될 수 있음)의 갯수를 기반으로 가장 유사도가 높은 순으로 상품 및/또는 고객을 정렬하여 반환할 수 있다.
또한, 프로세서(2230)는 제 1 상품 조회 이전 또는 이후의 일정 범위 내의 페이지에서 검색이 가장 많이 된 상품 순으로 정렬하여 반환할 수 있다. 반환된 결과 데이터는 디스플레이부(2220)를 통해 표시될 수도 있고, 통신부(2210)를 통해 요청된 단말로 제공될 수도 있다.
프로세서(2230)는 그래프 기반의 유사도 정보 또는 기타 다른 유사성 지표를 기반으로 하는 개별 상품과 개별 고객의 구매가능성 지표 관련 정보를 획득하여 고객과 상품을 각각 열과 행으로 하는 행렬을 생성한다. 그리고는, 생성된 행렬의 행 및 열의 부분합을 산출하고, 산출된 값을 순위화하여 특정 고객 그룹에 최적의 상품 패키지를 생성함에 의해 적절한 프로모션이 이루어지도록 할 수 있다.
본 발명의 실시예에 따르면, 프로세서(2230)는 인공지능 모델 학습 모듈(미도시) 및 인공지능 모델 실행 모듈(미도시)을 포함할 수 있으며, 복수 개의 개인 정보 요소 그룹의 데이터를 유사도를 기반으로 동일한 고객별로 분류하도록 학습시키고, 통합 고객 식별자에 대응하기 위한 고객별 분류를 수행할 수 있다. 또한, 그래프 기반의 유사성 판단의 정확도를 높이기 위한 인공지능 모델을 학습시키고, 학습된 인공지능 모델을 실행하여 실제 상품 추천의 정확도를 제고시킬 수 있다.
메모리(2240)는 프로세서(2230)에서 실행되는 프로그램의 지시어를 저장하는 저장소이다. 메모리(2240)는 통신부(2210)를 통해 수신 또는 송신되는 정보를 저장한다. 또한, 프로세서(2230)를 통해 처리되는 정보 중 적어도 일부를 저장할 수 있다.
입력부(2250)는 사용자의 입력을 입력받는 구성요소로써, 키보드, 마우스, 터치패널 등으로 구현될 수 있다. 입력부(2250)를 통해 최적 상품 추천과 관련된 각종 파라미터를 직접 입력받을 수 있다.
이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 시스템, 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예들에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
110-1, 110-2, …, 110-N : 쇼핑몰
120 : 네트워크
130 : 서버
140 : 데이터베이스
150 : 사용자 단말

Claims (21)

  1. 전자상거래 기반의 복수 개의 쇼핑몰과 연동하는 서버에 의하여 수행되며,
    상기 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하는 단계;
    상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하는 단계 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-;
    상기 복수 개의 쇼핑몰에서의 구매 가능한 복수 개의 상품들 및 상기 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하는 단계, 상기 복수의 고객들은 복수 개의 통합 식별자에 의하여 식별됨;
    상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하는 단계;
    상기 복수 개의 상품들 중 적어도 둘 이상을 열(Column)로 상기 복수의 고객들 중 적어도 둘 이상을 행(Row)으로 구성하여 행렬을 생성하는 단계-상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임-; 및
    상기 생성된 행렬을 분석하는 것에 의하여, 적어도 둘 이상의 상품 및 상기 적어도 둘의 상품을 추천할 적어도 둘의 고객들을 선택하는 단계를 포함하고,
    상기 고객별 통합 고객 식별자를 생성하는 단계는,
    상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정하는 단계; 및
    상기 제 1 고객에 대응하는 통합 고객 식별자를 생성하는 단계를 포함하고,
    상기 제 1 고객을 특정하는 단계는,
    개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산하는 것을 기반으로 하여, 상기 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도를 산출하는 단계; 및
    산출된 상기 개인 정보 유사도가 정해진 값 이상이면 동일한 고객으로 특정하는 단계를 포함하고,
    상기 선택하는 단계는,
    상기 행렬의 개별 행에 대하여, 적어도 둘 이상의 고객들의 구매가능성 지표의 제 1 부분합을 산출하는 단계;
    상기 산출된 제 1 부분합을 순위화하는 단계;
    제 1 상품 개수만큼 제 1 부분합 순위가 가장 높은 상품들을 선택하는 단계;
    상기 행렬의 개별 열에 대하여, 상기 선택된 상품들에 대한 고객별 제 2 부분합을 산출하는 단계;
    상기 산출된 제 2 부분합을 순위화하는 단계;
    제 1 고객 수만큼 제 2 부분합 순위가 가장 높은 고객들을 선택하는 단계를 포함하고,
    상기 구매가능성 지표는 상품 노드 계층, 주문 노드 계층 및 고객 노드 계층으로 구성된 그래프 형태의 데이터에서의 연결경로의 수를 포함하는 것을 특징으로 하는 상품 추천 방법.
  2. 제 1 항에 있어서, 상기 복수 개의 개인 정보 요소 그룹에 포함된 개인 정보 요소들은 비식별자화된 개인 정보이며,
    상기 비식별자화된 개인 정보는,
    고객 이메일, 고객 이름, 고객 전화번호. 고객 별명, 고객 주소, 고객 생년월일, 고객 성별, 고객 연령 중 적어도 2개 이상과 연관되는 것을 특징으로 하는 상품 추천 방법.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 유선 및 무선 네트워크 중 적어도 하나와 통신하는 통신부;
    상기 통신부를 통하여 복수 개의 쇼핑몰로부터 복수 개의 개별 쇼핑몰 고객 식별자 및 상기 복수 개의 개별 쇼핑몰 식별자에 대응하는 복수 개의 개인 정보 요소 그룹을 수신하고, 상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 고객별 통합 고객 식별자를 생성하고 -상기 복수 개의 쇼핑몰에서 동일한 고객은 하나의 통합 고객 식별자로서 식별됨-, 상기 복수 개의 쇼핑몰에서의 구매 가능한 복수 개의 상품들 및 상기 쇼핑몰을 통한 구매와 연관된 복수의 고객들의 데이터를 수신하고 -상기 복수의 고객들은 복수 개의 통합 식별자에 의하여 식별됨-, 상기 수신된 데이터를 기반으로 개별 상품과 개별 고객의 구매가능성 지표를 획득하고, 상기 복수 개의 상품들 중 적어도 둘 이상을 열(Column)로 상기 복수의 고객들 중 적어도 둘 이상을 행(Row)으로 구성하여 행렬을 생성하고-상기 복수의 고객들 중 일부는 상기 복수의 상품들 중 일부와 연관 관계를 가지며, 상기 행렬의 빈 칸에 포함되는 내용은 상품과 고객 간의 구매가능성 지표임-, 상기 생성된 행렬을 분석하는 것에 의하여, 적어도 둘 이상의 상품 및 상기 적어도 둘의 상품을 추천할 적어도 둘의 고객들을 선택하는 프로세서를 포함하고,
    상기 프로세서는,
    상기 복수 개의 개인 정보 요소 그룹을 기반으로 하여 제 1 고객을 특정하고, 상기 제 1 고객에 대응하는 통합 고객 식별자를 생성하고,
    개인 정보 요소 그룹에 포함되는 개인 정보 요소의 개수 및 개인 정보 요소 그룹 간에 일치하는 개인 정보 요소의 개수를 연산하는 것을 기반으로 하여, 상기 복수 개의 개인 정보 요소 그룹 간의 개인 정보 유사도를 산출하고, 산출된 상기 개인 정보 유사도가 정해진 값 이상이면 동일한 고객으로 특정하고,
    적어도 3개의 노드 계층은 상품과 연관된 제 1 노드 계층, 주문과 연관된 제 2 노드 계층 및 고객과 연관된 제 3 노드 계층을 포함하고,
    상기 프로세서는,
    저장된 그래프 형태의 데이터 상에서, 유사상품에 대한 질의에 대응하여 적어도 하나의 제 1 노드 계층의 노드들 및 적어도 하나의 제 3 노드 계층의 노드들 중 적어도 두 노드 사이의 연결경로의 갯수를 기반으로 유사도를 판단하는 것을 특징으로 하는 상품 추천 장치.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
KR1020200079824A 2020-06-30 2020-06-30 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템 KR102538398B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200079824A KR102538398B1 (ko) 2020-06-30 2020-06-30 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템
PCT/KR2021/008120 WO2022005140A1 (ko) 2020-06-30 2021-06-28 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축 방법, 장치 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200079824A KR102538398B1 (ko) 2020-06-30 2020-06-30 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템

Publications (2)

Publication Number Publication Date
KR20220001618A KR20220001618A (ko) 2022-01-06
KR102538398B1 true KR102538398B1 (ko) 2023-05-31

Family

ID=79347814

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200079824A KR102538398B1 (ko) 2020-06-30 2020-06-30 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템

Country Status (1)

Country Link
KR (1) KR102538398B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023219317A1 (ko) * 2022-05-11 2023-11-16 주식회사 하렉스인포텍 사용자 중심 초개인화 상품 추천 및 마케팅 시스템, 방법
WO2023219318A1 (ko) * 2022-05-11 2023-11-16 주식회사 하렉스인포텍 자연어 처리 기반의 상품 기획 정보 제공이 가능한 상품 추천 시스템 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101765093B1 (ko) * 2017-02-06 2017-08-04 (주)소프트기획 접속 중인 고객의 구매행동 패턴 분석을 통한 실시간 판매 촉진관리 서비스 제공 시스템

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101129538B1 (ko) * 2009-12-10 2012-03-29 동국대학교 산학협력단 상품 추천 장치 및 방법
KR20130082910A (ko) * 2011-12-22 2013-07-22 주식회사 케이티 컨텐츠 추천 방법 및 장치
KR20140056731A (ko) * 2012-10-31 2014-05-12 에스케이플래닛 주식회사 구매추천 시스템 및 방법
KR20190065727A (ko) * 2017-12-04 2019-06-12 에스케이플래닛 주식회사 광고 타겟팅을 위한 서비스 제공 장치와 그 시스템 및 방법, 그리고 컴퓨터 프로그램이 기록된 비휘발성 기록매체

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101765093B1 (ko) * 2017-02-06 2017-08-04 (주)소프트기획 접속 중인 고객의 구매행동 패턴 분석을 통한 실시간 판매 촉진관리 서비스 제공 시스템

Also Published As

Publication number Publication date
KR20220001618A (ko) 2022-01-06

Similar Documents

Publication Publication Date Title
KR102246538B1 (ko) 그래프 데이터베이스를 이용한 상품 추천 방법 및 장치
CN112182412B (zh) 用于推荐体检项目的方法、计算设备和计算机存储介质
Ringel et al. Visualizing asymmetric competition among more than 1,000 products using big search data
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 (ja) オンライン商取引プラットフォームにおける広告ソースおよびキーワードセットの適合
US7680697B2 (en) Searching for a seller of a product
KR102538398B1 (ko) 빅데이터 기반의 그룹 단위의 상품 추천 방법, 장치 및 시스템
KR102518389B1 (ko) 고객 빅데이터를 활용한 상품 추천 방법, 장치 및 시스템
CN108153792A (zh) 一种数据处理方法和相关装置
KR20210032691A (ko) 네트워크 기반 상품 추천 방법 및 장치
KR20220001616A (ko) 통합 고객 식별자 생성을 기반으로 하는 고객 빅데이터 구축 방법, 장치 및 시스템
KR101026544B1 (ko) 인공지능에 기반한 랭킹 분석 방법, 이를 기록한 기록 매체, 그 장치
KR102193345B1 (ko) 그룹 고객과 그룹 상품 간의 상품 추천 방법 및 장치
KR102442988B1 (ko) Cnn 학습 방식을 이용한 사용자 경험 기반 취향관계망 생성 시스템
KR20220163089A (ko) 제품 공동구매 연계 시스템 및 방법
KR20210112258A (ko) 오프라인 구매를 위한 개인화된 추천 서비스 제공 방법 및 장치
KR102588300B1 (ko) 쇼핑몰 제품 노출 정보 제공 시스템 및 방법
Verma et al. Pruning in Recommendation System Using Learned Bloom Filter
US20240070210A1 (en) Suggesting keywords to define an audience for a recommendation about a content item
Aljomai et al. Integrating social network analysis and data mining techniques into effective e-market framework
Krawczyk et al. Smart Shop Services for Building Customer-Oriented Scenarios
Pegorin Data-driven Insights for Grocery Retailers: Developing a Serverless Tool for Business Analysis
KR20220120987A (ko) 기록매체
KR20220120993A (ko) 서비스 제공 프로그램

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant