KR102051311B1 - 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버 - Google Patents

개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버 Download PDF

Info

Publication number
KR102051311B1
KR102051311B1 KR1020180020771A KR20180020771A KR102051311B1 KR 102051311 B1 KR102051311 B1 KR 102051311B1 KR 1020180020771 A KR1020180020771 A KR 1020180020771A KR 20180020771 A KR20180020771 A KR 20180020771A KR 102051311 B1 KR102051311 B1 KR 102051311B1
Authority
KR
South Korea
Prior art keywords
site
customer
sites
tag
similarity
Prior art date
Application number
KR1020180020771A
Other languages
English (en)
Other versions
KR20190100789A (ko
Inventor
이주연
박정아
양윤경
정지현
Original Assignee
현대카드 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대카드 주식회사 filed Critical 현대카드 주식회사
Priority to KR1020180020771A priority Critical patent/KR102051311B1/ko
Publication of KR20190100789A publication Critical patent/KR20190100789A/ko
Application granted granted Critical
Publication of KR102051311B1 publication Critical patent/KR102051311B1/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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • G06Q30/0271Personalized advertisement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0254Targeted advertisements based on statistics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Abstract

본 발명은 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법에 관한 것이다. 본 발명에 따른 개인화 알고리즘은, 고객의 구매 내역으로부터 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 구매 태그와 태그 값을 생성하여 사이트 태그 테이블을 형성하는 단계, 사이트 태그 테이블을 이용하여 각 사이트들 사이의 유사도를 산출하는 단계, 고객들로부터 취득한 로그 정보를 바탕으로 고객 로그 태그 테이블을 형성하는 단계, 고객 로그 태그 테이블로부터 고객 별 상위 소정 개수의 사이트를 선별하는 단계, 그리고 산출된 유사도와 선별된 소정 개수의 사이트를 바탕으로 각 고객별로 선정된 사이트들과 유사도가 높은 상위 랭킹의 사이트를 개인화된 소비 맞춤형 사이트로 제시하는 단계를 포함한다.

Description

개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버{METHOD FOR RECOMMENDING INFORMATION ON WEBSITES CUSTOMIZED TO CLIENTS' LOG BY USING PERSONALIZATION ALGORITHM AND SERVER USING THE SAME}
본 발명은 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법에 관한 것으로, 보다 상세하게는, (a) 개인화 알고리즘 서버가, 고객들이 임의의 사이트를 이용하여 구매한 구매 정보를 바탕으로, 각각의 고객에 대해, 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 사이트 구매 태그 및 각 특정 고객이 상기 특정 사이트에서의 구매 횟수를 바탕으로 형성된 태그 값을 나열한 사이트 태그 테이블을 생성하는 단계; (b) 상기 개인화 알고리즘 서버가, 상기 사이트 태그 테이블 내의 상기 모든 사이트 중에서 임의로 선택되는 두 개의 사이트 각각에 대한 모든 고객들의 태그 값들을 이용하여, 상기 임의로 선택되는 두 개의 사이트들 사이의 유사도를 계산하여 각 사이트들 사이의 유사도 값을 나타낸 사이트 유사도 테이블을 생성하는 단계; (c) 상기 개인화 알고리즘 서버가, 상기 고객으로부터 취득한 적어도 하나의 특정 사이트에 대해서 수행한 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부를 포함하는 로그 정보를 바탕으로, 상기 각 고객별로 그리고 각각의 고객 당 상기 특정 사이트별로 구분되어 형성된 각각의 로그 정보 태그와, 상기 로그 정보 태그에 대응하는 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부에 대한 처리 횟수를 포함하는 로그 횟수를 바탕으로 형성된 태그 값을 나열한 고객 로그 태그 테이블을 생성하는 단계; (d) 상기 개인화 알고리즘 서버가, 상기 고객 로그 태그 테이블에서 상기 각 사이트 별 태그 값들을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하는 단계; 및 (e) 상기 개인화 알고리즘 서버가, 상기 각 고객별로 상기 각 고객에 관련되어 상기 (d) 단계에서 선별된 소정 순위의 상위 사이트들 및 상기 선별된 소정 순위의 상위 사이트들과 유사도 값이 높은 사이트들을 상기 고객에 최적화된 고객 로그 맞춤형 추천 사이트로 제시하는 단계;를 포함하는 방법 및 개인화 알고리즘 서버에 관한 것이다.
인터넷의 발달로 인해 인터넷을 이용한 전자 상거래도 폭발적으로 증가하고 있다. 인터넷을 통해 제공되는 정보의 양이 기하 급수적으로 늘어남에 따라 사용자는 정보의 탐색, 검색, 비교를 위해 많은 시간과 노력을 소모하여야 하는 문제가 있다. 즉, 정보 과잉의 시대가 도래하여 정보, 서비스, 생산의 과잉으로 인해 소비자는 선택과 의사 결정에 보다 많은 시간을 들어야 한다.
특히, 온라인 쇼핑몰의 이용 시, 사용자는 인터넷 검색을 통해 구매하고자 하는 물품 종류나 사이트 이름을 직접 입력하여 검색한 후, 검색 사이트나 쇼핑몰에서 제시하는 리스트들을 하나하나 살펴보거나 제시된 일부 링크를 따라가 물품을 살펴본 후, 구매를 진행한다.
한편, 사용자의 요구 사항이 까다로워지고 개인에게 맞춤화 된 요구 사항이 증가함에 따라 개인패턴을 분석한 데이터를 기반으로 사용자 맞춤형 정보를 제공하는 서비스가 다양한 방법으로 제시되고 있다.
기존의 방법 중 하나로, 한국 등록특허공보 제10-1419504호에 개시된 "사용자 성향 분석을 통한 맞춤형 쇼핑 정보 시스템 및 방법"에 제시된 방법은, 각 사용자의 구매 성향 분석을 통해 효과적인 쇼핑 정보를 제공할 수 있도록 사용자 성향 분석을 통해 맞춤형 쇼핑 정보를 제공하고 있다. 위 종래 기술에서는 수집된 정보를 온톨로지 처리하여 적어도 하나의 상품 태그 및 각각의 상품 태그에 대한 적어도 하나의 성향 태그를 생성하는 온톨로지 모듈과 상기 온톨로지 모듈을 통해 생성된 상기 상품 태그를 상기 적어도 하나의 성향 태그와 매핑하여 정보 데이터 베이스에 저장하는 태그 매칭 저장 모듈을 이용하여 고객의 다양한 구매 성향을 분석하고 있다.
그러나 이와 같은 기존의 분석 방법으로는 각 사용자의 성향 분석과 특정 용어를 바탕으로 맞춤형 쇼핑 정보를 제공하기 때문에, 개개의 고객의 성향만을 파악하여 제공한다는 문제점과 용어 기반 매칭 방법으로 고객에 최적화된 사이트 제공을 한다는 한계가 있다.
본 발명은 상술한 문제점을 모두 해결하는 것을 목적으로 한다.
본 발명은 특정 고객에게 최적화된 사이트를 제공하는 경우, 구매 내역에 없는 고객들에 대해서도 해당 고객들에게서 얻은 사이트와 관련된 고객의 로그 정보를 바탕으로 특정 고객에게 신뢰도가 높은 최적화된 사이트를 제공하는 것을 목적으로 한다.
또한 본 발명은 다수의 고객으로부터 얻은 다수 또는 전체 고객의 정보를 통합하여, 각각의 고객에게 최적화된 사이트를 제공하는 것을 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한, 본 발명의 특징적인 구성은 하기와 같다.
본 발명의 일 실시예에 따르면, 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법은, (a) 개인화 알고리즘 서버가, 고객들이 임의의 사이트를 이용하여 구매한 구매 정보를 바탕으로, 각각의 고객에 대해, 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 사이트 구매 태그 및 각 특정 고객이 상기 특정 사이트에서의 구매 횟수를 바탕으로 형성된 태그 값을 나열한 사이트 태그 테이블을 생성하는 단계; (b) 상기 개인화 알고리즘 서버가, 상기 사이트 태그 테이블 내의 상기 모든 사이트 중에서 임의로 선택되는 두 개의 사이트 각각에 대한 모든 고객들의 태그 값들을 이용하여, 상기 임의로 선택되는 두 개의 사이트들 사이의 유사도를 계산하여 각 사이트들 사이의 유사도 값을 나타낸 사이트 유사도 테이블을 생성하는 단계; (c) 상기 개인화 알고리즘 서버가, 상기 고객으로부터 취득한 적어도 하나의 특정 사이트에 대해서 수행한 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부를 포함하는 로그 정보를 바탕으로, 상기 각 고객별로 그리고 각각의 고객 당 상기 특정 사이트별로 구분되어 형성된 각각의 로그 정보 태그와, 상기 로그 정보 태그에 대응하는 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부에 대한 처리 횟수를 포함하는 로그 횟수를 바탕으로 형성된 태그 값을 나열한 고객 로그 태그 테이블을 생성하는 단계; (d) 상기 개인화 알고리즘 서버가, 상기 고객 로그 태그 테이블에서 상기 각 사이트 별 태그 값들을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하는 단계; 및 (e) 상기 개인화 알고리즘 서버가, 상기 각 고객별로 상기 각 고객에 관련되어 상기 (d) 단계에서 선별된 소정 순위의 상위 사이트들 및 상기 선별된 소정 순위의 상위 사이트들과 유사도 값이 높은 사이트들을 상기 고객에 최적화된 고객 로그 맞춤형 추천 사이트로 제시하는 단계;를 포함한다.
일 실시예에서, 상기 (d) 단계는, 각각 고객별로 동일한 사이트에 대응하는 하나 이상의 상기 로그 정보 태그들에 대해서는, 상기 고객별 각각의 동일 사이트에 대응하는 모든 로그 정보 태그의 태그 값들을, 로그 정보 태그 종류를 참조로 하여 합산한, 합산 태그 값을 생성하고, 상기 합산된 태그 값을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별한다.
일 실시예에서, 상기 (d) 단계는, 상기 각각의 사이트 별로 상기 로그 정보 태그에 따라 서로 다른 소정의 가중치를 대응하는 태그 값에 곱하여, 합산한다.
일 실시예에서, 상기 (b) 단계에서 사이트들 사이의 상기 유사도 값 계산은 다음의 수학식
Figure 112018018416700-pat00001
을 통해 계산되며, 여기서,
a=(a1, a2, …, am) : 사이트 태그 테이블 내의 한 사이트의 태그 값들
b=(b1, b2, …, bm) : 사이트 태그 테이블 내의 다른 사이트의 태그 값들
m은 사이트구매가 있는 전체 고객 수이다.
일 실시예에서, 상기 (e) 단계는, 각 사이트들에 대해 상기 (d) 단계를 통해 선별된 상기 소정 순위 상위 사이트들과, 상기 (b) 단계에서 얻은 소정 값 이상의 유사도를 갖는 사이트들의 정보를 바탕으로, 상기 선별된 소정 순위 상위 사이트들 각각의 사이트에 대한 유사한 사이트들의 개수(Voting value)와 상기 유사한 사이트들과의 유사도 값들 중 가장 큰 유사도 값을 이용하여, 추천 값(Score)을 계산하고, 상기 추천 값이 큰 순서로 소정 개수의 사이트를 상기 고객 로그 맞춤형 추천 사이트로 제시한다.
일 실시예에서, 상기 (e) 단계는, 상기 (d) 단계를 통해 선별된 상기 소정 순위의 상위 사이트들 중 임의의 한 사이트인 제1 사이트와, 상기 제1 사이트와 유사한 사이트들인 하나 이상의 제2 사이트들 사이의 유사도들을 바탕으로, 상기 제2 사이트들의 전체 개수(Voting value)를 산출하고, 상기 제1 사이트와 상기 제2 사이트들 사이의 유사도 값들 중 최대 값을 산출한 후, 상기 제2 사이트들 각각에 대해서 상기 고객에 대한 추천 값을 산출한다.
일 실시예에서, 상기 추천 값은 아래 식
Figure 112018018416700-pat00002
을 통해 계산되며, 여기서, cosine은 특정 사이트의 관련된 사이트들과의 유사도 값들 중 가장 큰 값이며, voting_weight 는 가중치 상수이며, voting은 상기 유사도 값이 0을 초과하는, 상기 제1 사이트와 유사한 제2 사이트들의 개수이며, max(voting, 각 고객별)은 각 고객의 voting 값들 중 최대 값이다.
본 발명의 다른 특징에 따르면, 고객 로그 맞춤형 사이트를 추천하는 개인화 알고리즘 서버는, 각 고객들의 구매 내역 및/또는 상기 고객에 사이트에 대한 로그 정보를 전달받기 위한 통신부; 및 (i) 상기 고객들이 임의의 사이트를 이용하여 구매한 구매 정보를 바탕으로, 각각의 고객에 대해, 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 사이트 구매 태그 및 각 특정 고객이 상기 특정 사이트에서의 구매 횟수를 바탕으로 형성된 태그 값을 나열한 사이트 태그 테이블을 생성하는 프로세스; (ii) 상기 사이트 태그 테이블 내의 상기 모든 사이트 중에서 임의로 선택되는 두 개의 사이트 각각에 대한 모든 고객들의 태그 값들을 이용하여, 상기 임의로 선택되는 두 개의 사이트들 사이의 유사도를 계산하여 각 사이트들 사이의 유사도 값을 나타낸 사이트 유사도 테이블을 생성하는 프로세스; (iii) 상기 고객으로부터 취득한 적어도 하나의 특정 사이트에 대해서 수행한 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부를 포함하는 로그 정보를 바탕으로, 상기 각 고객별로 그리고 각각의 고객 당 상기 특정 사이트별로 구분되어 형성된 각각의 로그 정보 태그와, 상기 로그 정보 태그에 대응하는 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부에 대한 처리 횟수를 포함하는 로그 횟수를 바탕으로 형성된 태그 값을 나열한 고객 로그 태그 테이블을 생성하는 프로세스; (iv) 상기 고객 로그 태그 테이블에서 상기 각 사이트 별 태그 값들을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하는 프로세스; 및 (v) 상기 각 고객별로 상기 각 고객에 관련되어 상기 (iv) 프로세스에서 선별된 소정 순위의 상위 사이트들 및 상기 선별된 소정 순위의 상위 사이트들과 유사도 값이 높은 사이트들을 상기 고객에 최적화된 고객 로그 맞춤형 추천 사이트로 제시하는 프로세스;를 수행하는 프로세서;를 포함한다.
본 발명은 고객에 최적화된 사이트를 제시할 때, 구매 내역이 없는 고객들에 대해서도 고객의 사이트 방문 등의 행동 정보를 포함하는 한 로그 정보를 바탕으로 신뢰도가 높은 최적화된 사이트를 제공하는 개인화 알고리즘을 제공한다.
또한 본 발명은, 해당 고객의 태그(속성)만을 이용하지 않고 모든 고객으로부터 취합하여, 유사한 특성의 고객들의 구매 특성에서 해당 고객에 맞는 최적의 사이트를 제공하는 개인화 알고리즘을 제공한다.
도 1은 본 발명에 따른 개인화 알고리즘의 기본 개념을 설명하는 도면이다.
도 2는 본 발명에 따른 로그 정보를 이용한 개인화 알고리즘을 이용한 최적화 사이트 제공 방법의 흐름도이다.
도 3은 사이트 태그 테이블에서 사이트끼리의 유사도를 산출하는 모습을 나타낸다.
도 4는 회원 정보로부터 각 사이트에 대한 로그 정보를 취득하는 예를 나타낸다.
도 5는 본 발명에 따른 고객 로그 태그 테이블의 태그 값을 생성하는 과정을 나타낸 흐름도이다.
도 6은 본 발명에 따른 개인화 알고리즘 서버의 개략적인 구성도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명에 따른 개인화 알고리즘의 기본 개념을 설명하는 도면이다.
도 1을 참조하면, 본 발명에 따른 개인화 알고리즘은 고객들의 활동 기반 데이터를 바탕으로 고객들이 특정 사이트에 대해 수행했던 클릭 횟수, 북마크 수행 횟수, 좋아요 클릭 횟수 등의 로그 데이터를 바탕으로 한 태그 값을 반영한 고객 로그 태그 테이블을 형성한다. 또한 그 이전에 전체 고객들의 구매 내역으로부터 각 고객이 구매한 모든 사이트에 대한 정보를 바탕으로 사이트 별 구매 태그와 태그 값을 생성한 사이트 태그 테이블을 형성하고, 형성된 사이트 태그 테이블을 이용하여 각 사이트들 사이의 유사도를 산출한다.
그런 다음, 고객 로그 태그 테이블로부터 고객별로 상위 소정 개수의 사이트를 선별하고, 선별된 사이트들과 유사한 사이트들을 선택하여 각 고객에게 최적화된 사이트를 추천한다.
여기서 고객들의 구매 데이터는 카드 사용 내역 등을 통해 취득할 수 있다.
도 2는 본 발명에 따른 로그 정보를 이용한 개인화 알고리즘을 이용한 최적화 사이트 제공 방법의 흐름도이다.
도 2를 참조하면, 본 발명에 따른 고객 로그 태그를 애용한 개인화 알고리즘은, 고객의 구매 내역으로부터 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 구매 태그와 태그 값을 생성하여 사이트 태그 테이블을 형성하는 단계(S10), 사이트 태그 테이블을 이용하여 각 사이트들 사이의 유사도를 산출하는 단계(S20), 고객들로부터 취득한 로그 정보를 바탕으로 고객 로그 태그 테이블을 형성하는 단계(S30), 고객 로그 태그 테이블로부터 고객 별 상위 소정 개수의 사이트를 선별하는 단계(S40), 그리고 산출된 유사도와 선별된 소정 개수의 사이트를 바탕으로 각 고객별로 선정된 사이트들과 유사도가 높은 상위 랭킹의 사이트를 개인화된 소비 맞춤형 사이트로 제시하는 단계(S50)를 포함한다.
도 3은 사이트 태그 테이블에서 사이트끼리의 유사도를 산출하는 모습을 나타내고, 도 4는 회원 정보로부터 각 사이트에 대한 로그 정보를 취득하는 예를 나타낸다.
도 5는 본 발명에 따른 고객 로그 태그 테이블의 태그 값을 생성하는 과정을 나타낸 흐름도이다.
도 5를 참조하면, 도 2의 S30단계는, 각 고객들의 고객 정보 및 로그 정보로부터 각 고객 별로 로그 정보에 대응하는 사이트 키 추출 단계(S31), 로그 정보 별로 로그 정보에 따라 다르게 설정된 태그 값들을 부여하는 단계(S32) 및 각 고객별로 그리고 각각의 고객 당 특정 사이트별로 대응하는 태그 값을 합산하여 고객 로그 태그 테이블을 형성하는 단계(S33)를 포함한다.
한편, 도 6은 본 발명에 따른 개인화 알고리즘 서버의 개략적인 구성도이다.
도 6을 참조하면, 본 발명에 따른 개인화 알고리즘 서버(100)는 통신부(10)와 프로세서(20)를 포함한다.
이하, 도 1 내지 도 6을 참조하여, 본 발명에 따른 개인화 알고리즘을 이용한 사이트 추천 방법을 구체적으로 설명한다.
먼저 통신부(10)는 각 고객들의 구매 내역과 로그 활동 내역 등을 전달받기 위한 기능을 수행하며, 프로세서(20)는 도 2 및 도 5의 각 단계에 따른 프로세스를 수행하는 기능을 한다.
먼저 개인화 알고리즘 서버(100)의 통신부(10)를 통해 고객의 구매 내역과 개인화를 위한 고객의 정보 및 사이트와 상기 고객의 로그 활동 내역이 포함되는 로그 정보 내역을 전달 받으면, 프로세서(20)는 고객의 구매 내역으로부터 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 구매 태그와 태그 값을 생성하여 사이트 태그 테이블을 형성하는 단계(S10)를 수행하며, 이 단계는 구체적으로, 고객들이 임의의 사이트들을 이용하여 구매한 구매 정보를 바탕으로 각각의 고객에 대해, 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 사이트 구매 태그 (예를 들어, 사이트 키)와 각 특정 고객이 상기 특정 사이트에서의 구매 횟수를 바탕으로 형성된 태그 값(예를 들어, 특정 사이트 키에 대응하는 사이트에서 구매한 구매 횟수)을 나열한 사이트 태그 테이블을 형성한다.
예를 들어, 프로세서(20)는 통신부(10)를 통해 전체 고객(예를 들어, n 명의 고객)들에 대한 고객별 다수의 구매 내역 정보를 전달 받고, 각각의 구매 내역이 어떤 고객의 구매 내역인지와, 각 구매 내역으로부터 특정 사이트에 관련된 구매 내역인지에 대한 구매 개인화 태그(즉, 사이트 구매 태그)를 뽑아 내고, 각 고객별로 특정 사이트 구매 태그와 관련된 구매 횟수를 모두 합산하여, 태그 값으로 설정하여 각 고객별로 사이트 구매 태그와 태그 값을 관련시켜 사이트 태그 테이블을 형성한다.
표 1은 사이트 키 "FS1600001" 및 "FS160002"에 대한 고객 1 내지 고객 5에 대한 일부의 구매 내역을 통해 얻은 사이트 구매 태그 및 그 태그 값의 예를 나타낸다.
고객번호 사이트 구매 태그 CNT
(카운트)
고객1 사이트구매_FS1600001_건수 4
고객2 사이트구매_FS1600001_건수 3
고객3 사이트구매_FS1600001_건수 2
고객4 사이트구매_FS1600001_건수 6
고객1 사이트구매_FS1600002_건수 3
고객2 사이트구매_FS1600002_건수 1
고객4 사이트구매_FS1600002_건수 4
고객5 사이트구매_FS1600002_건수 8
표 1을 참조하면, 고객1 내지 고객5까지의 고객들의 구매 정보를 이용하여 사이트 태그 테이블을 형성하는 데, 고객1의 특정 구매 건수(예를 들어 구매 건수 번호 01)의 구매 내역이 사이트 키가 "FS1600001"인 사이트에 대한 구매 내역으로 확인되면, 고객 1의 사이트 구매 태그 "사이트구매_FS1600001_건수"의 카운트를 1로 하고, 만일 고객1의 특정 구매 건수(예를 들어 구매 건수 번호 02)의 구매 내역이 또 다시 사이트 키가 "FS160001"인 사이트에 대한 구매 내역으로 확인되면, 고객 1의 사이트 구매 태그 "사이트구매_FS1600001_건수"의 카운트를 2로 변경한다. 이런 식으로, 고객 1의 전체 구매 내역을 검토하여, 사이트 키가 "FS1600001"인 사이트에 대한 구매 내역의 횟수가 4회 이면, 고객 1의 사이트 구매 태그 "사이트구매_FS1600001_건수"에 대한 태그 값은 4로 설정된다. 마찬가지로, 고객 1의 전체 구매 내역을 검토하여, 사이트 키가 "FS1600002"인 사이트에 대한 구매 내역의 횟수가 3회 이면, 고객 1의 사이트 구매 태그 "사이트구매_FS1600002_건수"에 대한 태그 값은 3으로 설정된다.
마찬가지로, 고객 2의 전체 구매 내역을 검토하여, 사이트 키가 "FS1600001"인 사이트에 대한 구매 내역의 횟수가 3회 이면, 고객 2의 사이트 구매 태그 "사이트구매_FS1600001_건수"에 대한 태그 값은 3으로 설정된다. 그리고, 고객 2의 전체 구매 내역을 검토하여, 사이트 키가 "FS1600002"인 사이트에 대한 구매 내역의 횟수가 1회 이면, 고객 2의 사이트 구매 태그 "사이트구매_FS1600002_건수"에 대한 태그 값은 1로 설정된다.
이와 같은 방식으로 모든 구매 고객에 대해, 각 고객별로 전체 구매 내역을 검토하여, 사이트 키 별로 횟수를 분석하여, 사이트 구매 태그와 해당 사이트 구매 태그에 대응하는 구매 건수를 태그 값으로 설정하여, 사이트 태그 테이블을 형성한다.
그런 다음, 프로세서(20)는, 표 1의 사이트 태그 테이블을 이용하여 각 사이트들 사이의 유사도를 산출(S20)하는 프로세스를 수행한다.
구체적으로, 프로세서(20)는 표 1의 사이트 태그 테이블 내의 상기 모든 사이트 중에서 임으로 선택되는 두 개의 사이트 각각에 대한 모든 고객들의 태그 값들을 이용하여, 상기 임의로 선택되는 두 개의 사이트들 사이의 유사도를 계산하여 각 사이트들 사이의 유사도 값을 나타낸 사이트 유사도 테이블을 생성한다.
도 3은 사이트 태그 테이블에서 사이트끼리의 유사도를 산출하는 모습을 나타낸다.
도 3을 참조하면, 표 1의 사이트 태그 테이블 및 이와 동일한 테이블을 통해 사이트 사이의 유사도를 산출하는데, 예를 들면, 하나의 사이트 태그 테이블(제1 사이트 태그 테이블) 내의 사이트 구매 태그 "사이트구매_FS1600001_건수"에 대한 고객들의 태그 값들과 다른 사이트 태그 테이블 (제2 사이트 태그 테이블, 이때 제2 사이트 태그 테이블은 제1 사이트 태그 테이블과 동일한 내용의 테이블이다) 내의 사이트 구매 태그 "사이트구매_FS1600002_건수"에 대한 고객들의 태그 값들을 이용하여 사이트 키 "FS1600001"에 대한 사이트와 사이트 키 "FS1600002"에 대한 사이트의 유사도를 산출한다.
이와 같은 방식으로 각각의 모든 사이트들에 대해 서로 간의 사이트 유사도를 구할 수 있게 된다. 만일 사이트 태그 테이블에 있는 사이트가 s 개 존재한다면, s2 개의 유사도 값들이 산출될 수 있을 것이다.
한편, 프로세서(20)는, 아래의 수학식 1의 코사인 유사도 함수를 이용하여 표 1의 사이트 태그 테이블의 태그 값들을 이용하여 임의의 두 사이트들 사이의 유사도 값들을 산출한다.
Figure 112018018416700-pat00003
여기서 cos(θ) 는 코사인 유사도 함수를 나타내며,
a=(a1, a2, …, am )은 사이트 태그 테이블 내의 임의의 한 사이트(제1 사이트)의 태그 값들을 나타낸다. 즉, 임의의 한 사이트에 대해서 m 명의 고객이 있다면, 각 고객 들에 대해 상기 임의의 한 사이트에 대한 태그 값들이 존재하고, a는 그 태그 값들을 나타낸다. 그리고, b=(b1, b2, …, bm )은 사이트 태그 테이블 내의 다른 사이트(제2 사이트)의 태그 테이블의 태그 값이고, m 은 사이트 구매가 있는 전체 고객 수를 나타낸다.
수학식 1을 통해 표 1의 사이트 태그 테이블을 이용하여 각 사이들 사이의 유사도 값들을 구하면, 예시적으로 아래의 유사도 결과 표 (표 2)와 같이 산출될 수 있다.
제1 사이트 키 제2 사이트 키 유사도
(cosine)
FS1600002 FS1600002 1
FS1600002 FS1603708 0.0483368
FS1600004 FS1600004 1
FS1600004 FS1602529 0.2041241
FS1600004 FS1601505 0.1581139
FS1600004 FS1603708 0.0206725
FS1600004 FS1603904 0.0117671
FS1603708 FS1603708 1
FS1603708 FS1600002 0.0483368
FS1603708 FS1601048 0.0483368
FS1603708 FS1603978 0.0483368
FS1603708 FS1604053 0.0483368
FS1603708 FS1603990 0.0432338
FS1603708 FS1600284 0.0402671
FS1603708 FS1603926 0.0399273
FS1603708 FS1600794 0.0354544
FS1603708 FS1601261 0.0346641
FS1603708 FS1603271 0.0341793
FS1603708 FS1601105 0.0319787
FS1603708 FS1601432 0.0306303
표 2를 참조하면, 예시적으로, 사이트 키 "FS1600002"와 "FS1600002"사이의 유사도는 서로 동일 사이트이기 때문에 1 값이 나오고, 사이트 키 "FS1600002"와 "FS1600008"사이의 유사도는 0.0483368 값이 나오며, FS1600004"와 "FS1600004"사이의 유사도는 서로 동일 사이트이기 때문에 1 값이 나오고, 사이트 키 "FS1600004"와 "FS1602529"사이의 유사도는 0.2041241 값이 나온다.
다시 도 2를 참조하면, 프로세서(20)는, 고객들로부터 취득한 로그 정보를 바탕으로 고객 로그 태그 테이블을 형성하는 단계(S30)를 수행한다. 구체적으로 프로세서(20)는, 상기 고객으로부터 취득한 적어도 하나의 특정 사이트에 대해서 수행한 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부를 포함하는 로그 정보를 바탕으로, 상기 각 고객별로 그리고 각각의 고객 당 상기 특정 사이트별로 구분되어 형성된 각각의 로그 정보 태그와, 상기 로그 정보 태그에 대응하는 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부에 대한 처리 횟수를 포함하는 로그 횟수를 바탕으로 형성된 태그 값을 나열한 고객 로그 태그 테이블을 생성한다.
이러한 과정은 도 5에 좀 더 구체적으로 도시된다.
도 5의 고객 로그 태그 테이블을 형성하는 과정을 살펴보면, 고객 로그 태그 테이블 생성 과정은, 우선 각 고객들의 고객 정보 및 로그 정보로부터 각 고객 별로 로그 정보에 대응하는 사이트 키를 추출하는 단계(S31)로 시작한다. 도 4를 참조하면, 고객 정보로부터 고객이 특정 사이트에 대해서 '좋아요'를 클릭했던 정보, 특정 사이트를 '방문'했던 정보, 특정 사이트에 대해 '북마크'를 했던 정보를 취득하고, 상기 '좋아요'를 클릭했던 정보에서 어떤 사이트에 대한 것이었는지 해당 사이트 키를 추출하고, 또한, '방문' 정보로부터 어떤 사이트에 대해 방문했는지 해당 사이트 키를 추출하며, '북마크' 했던 사이트가 어떤 사이트였는지 해당 사이트 키를 추출하여 확인한다.
그런 다음, 모든 고객별로 그리고 각 사이트 별로 어떤 로그 정보(예를 들어, 좋아요, 북마크, 클릭 등)를 갖고 있으며, 대응하는 행동이 몇 회인지를 카운트하여 고객 로그 태그 테이블을 형성한다.
이렇게 생성된 고객 로그 태그 테이블의 예는 아래 표 3와 같다.
고객 번호 사이트 키 로그 정보 태그 CNT
(카운트)
고객1 FS1600002 좋아요 1
고객1 FS1600002 북마크 2
고객1 FS1600002 클릭 5
고객1 FS1603708 좋아요 1
고객1 FS1600004 좋아요 2
고객2 FS1600251 좋아요 2
고객2 FS1600380 북마크 3
고객2 FS1600225 북마크 1
고객2 FS1601700 북마크 1
고객3 FS1600002 좋아요 1
고객3 FS1603708 클릭 6
고객3 FS1600004 클릭 10
고객3 FS1600380 좋아요 4
표 3을 참조하면, 고객1은 사이트 키 "FS1600002"에 대응하는 사이트에 대해서 '좋아요'를 1회 클릭했으며, '북마크'를 2회 수행했고, '클릭'즉 사이트 방문을 5회 했음을 나타내고, 사이트 키 "FS1603708"에 대응하는 사이트에 대해서 '좋아요'를 1회 클릭했음을 나타낸다. 이와 같이 모든 고객들에 대해서 각 고객 별로 모든 사이트들 별로 로그 정보에 대응하는 로그 정보 태그와 그 횟수에 대응하는 태그 값을 나열하여 로그 태그 테이블을 생성한다.
그리고 나서 프로세서(20)는, 로그 정보 별로 로그 정보에 따라 다르게 설정된 태그 값들을 부여하는 단계(S32)를 수행한다. 예를 들어, '좋아요'와 '북마크'에 대한 1회 수행 횟수는 '클릭' 즉 방문 횟수 5번과 같은 비율로 설정할 수 있을 것이다. 이에 따라, 변경된 태그 값은 아래 표 4와 같이 된다.
고객 번호 사이트 키 로그 정보 태그 CNT
(카운트)
태그 값
고객1 FS1600002 좋아요 1 1
고객1 FS1600002 북마크 2 2
고객1 FS1600002 클릭 5 1
고객1 FS1603708 좋아요 1 1
고객1 FS1600004 좋아요 2 2
고객2 FS1600251 좋아요 2 2
고객2 FS1600380 북마크 3 3
고객2 FS1600225 북마크 1 1
고객2 FS1601700 북마크 1 1
고객3 FS1600002 좋아요 1 1
고객3 FS1603708 클릭 6 1
고객3 FS1600004 클릭 10 2
고객3 FS1600380 좋아요 4 4
표 3 및 표 4의 굵게 표시된 부분을 참조하면, 고객1의 사이트키 "FS1600002"에 대한 로그 정보 태그 "클릭"의 태그 값은 CNT(카운트 값) 5를 바탕으로 1로 설정되고, 고객3의 사이트키 "FS1603708"에 대한 로그 정보 태그 "클릭"의 태그 값은 CNT(카운트 값) 6을 바탕으로 1로 설정되며, 고객3의 사이트키 "FS1600004"에 대한 로그 정보 태그 "클릭"의 태그 값은 CNT(카운트 값) 10를 바탕으로 2로 설정된다.
그런 다음, 프로세서(20)는 각 고객별로 그리고 각각의 고객 당 특정 사이트별로 대응하는 태그 값을 합산하여 고객 로그 태그 테이블을 형성(S33)한다. 구체적으로 설명하면, 표 4에서 고객 1에 대해 사이트 키 "FS1600002"에 대한 동일한 로그 정보 태그가 3개가 있을 때, 동일 사이트 키 "FS1600002"에 대한 태그 값을 합산한다. 이와 같은 방식으로 모든 고객들에 대해서 동일한 사이트에 대한 태그 값들은 모두 합산하여, 사이트 별로 하나의 태그 값들을 갖도록 하여 고객 로그 태그 테이블을 형성하게 된다.
이러한 예시적인 결과가 아래 표 5로 표시된다.
고객 번호 사이트 키 태그 값(사이트 별 합산 태그 값)
고객1 FS1600002 4
고객1 FS1600004 2
고객1 FS1603708 1
고객2 FS1600225 1
고객2 FS1600251 2
고객2 FS1600380 3
고객2 FS1601700 1
고객3 FS1600002 1
고객3 FS1600004 2
고객3 FS1600380 4
고객3 FS1603708 1
그리고 다시 도 2를 참조하면, 프로세서(20)는 고객 로그 태그 테이블로부터 고객 별 상위 소정 개수의 사이트를 선별하는 단계(S40)를 수행한다. 구체적으로, 프로세서(20)는 고객 로그 태그 테이블에서 상기 각 사이트 별 태그 값들을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별한다. 예시적으로 각 고객별로 태그 값이 높은 순서로 상위 3개 상위 4개의 사이트를 선별할 수 있을 것이다.
만일 표 5에서 고객 1에 대해 상위 3개의 사이트를 선별할 결과, 사이트 기가 "FS1600002", "FS1600004", "FS1603708"가 선별되었다면, 고객1에 대해서는 표 2에서 상기 사이트들에 대한 유사도 결과만을 선택하여 고객 1에 대한 추천 대상 사이트 리스트 테이블을 형성한다. 그 예시적인 결과는 아래 표 6과 같다.
고객 번호 제1 사이트 키 제2 사이트 키 유사도
(cosine)
고객1 FS1600002 FS1600002 1
고객1 FS1600002 FS1603708 0.0483368
고객1 FS1600004 FS1600004 1
고객1 FS1600004 FS1602529 0.2041241
고객1 FS1600004 FS1601505 0.1581139
고객1 FS1600004 FS1603708 0.0206725
고객1 FS1600004 FS1603904 0.0117671
고객1 FS1603708 FS1603708 1
고객1 FS1603708 FS1600002 0.0483368
고객1 FS1603708 FS1601048 0.0483368
고객1 FS1603708 FS1603978 0.0483368
고객1 FS1603708 FS1604053 0.0483368
고객1 FS1603708 FS1603990 0.0432338
고객1 FS1603708 FS1600284 0.0402671
고객1 FS1603708 FS1603926 0.0399273
고객1 FS1603708 FS1600794 0.0354544
고객1 FS1603708 FS1601261 0.0346641
고객1 FS1603708 FS1603271 0.0341793
고객1 FS1603708 FS1601105 0.0319787
고객1 FS1603708 FS1601432 0.0306303
표 6에서는 고객1에 대해서만 나타내었지만, 모든 고객에 대해서 선별된 상위 사이트들 및 상기 선별된 상위 사이트들과 다른 사이트들의 유사도 결과를 모두 테이블 안에 형성할 수 있을 것이다.
그런 다음 프로세서(20)는 산출된 유사도와 선별된 소정 개수의 사이트를 바탕으로 각 고객별로 선정된 사이트들과 유사도가 높은 상위 랭킹의 사이트를 개인화된 맞춤형 사이트로 제시하는 단계(S50)를 수행한다.
구체적으로, 각 고객별로 상기 각 고객에 관련되어 S40 단계에서 선별된 소정 순위의 상위 사이트들 및 상기 선별된 소정 순위의 상위 사이트들과 유사도 값이 높은 사이트들을 상기 고객에 최적화된 고객 로그 맞춤형 추천 사이트로 제시하는데, 이때, 프로세서(20)는, 각 사이트들에 대해 상기 S40 단계를 통해 선별된 상기 소정 순위 상위 사이트들과, 상기 S20 단계에서 얻은 소정 값 이상의 유사도를 갖는 사이트들의 정보를 바탕으로, (i) 상기 선별된 소정 순위 상위 사이트들 각각의 사이트에 대한 유사한 사이트들의 개수(Voting value) 및 (ii) 상기 유사한 사이트들과의 유사도 값들 중 가장 큰 유사도 값을 이용하여, 추천 값(Score)을 계산하고, 상기 추천 값이 큰 순서로 소정 개수의 사이트를 상기 고객 로그 맞춤형 추천 사이트로 제시한다.
예를 들면, 표 6에 나타낸 바와 같이, S40 단계를 통해 선별된 상기 소정 순위의 상위 사이트들 중 임의의 한 사이트인 제1 사이트와, 상기 제1 사이트와 유사한 사이트들인 하나 이상의 제2 사이트들 사이의 유사도들을 바탕으로, 상기 제2 사이트들의 전체 개수(Voting value)를 산출하고, 상기 제1 사이트와 상기 제2 사이트들 사이의 유사도 값들 중 최대 값을 산출한 후, 상기 제2 사이트들 각각에 대해서 상기 고객에 대한 추천 값을 산출한다.
표 6의 굵게 표시된 부분을 참조하면, 고객 1에 대서 S40단계에서 선별된 제1 사이트들과 유사한 제2 사이트들 중에서 사이트 키 "FS1600002"에 대한 카운팅 수, 즉, 제2 사이트들에서 사이트 키 "FS1600002"의 전체 개수(Voting value)는 2이며, 고객 1에 대서 S40단계에서 선별된 제1 사이트들과 유사한 제2 사이트들 중에서 사이트 키 "FS1603708"에 대한 카운팅 수, 즉, 제2 사이트들에서 사이트 키 "FS1603708"의 전체 개수(Voting value)는 3이 된다. 이런 식으로 고객 1을 포함한 모든 고객에 대한 제2 사이트들에 대한 각각의 전체 개수를 산출하면 아래 표 7과 같이 각 고객별 제2 사이트들에 대한 전체 개수에 대한 결과가 생성될 수 있다.
고객 번호 제2 사이트 키 VOTING
(전체 개수)
최대 유사도
(cosine)
고객1 FS1603708 3 1
고객1 FS1600002 2 1
고객1 FS1600004 1 1
고객1 FS1602529 1 0.204124145
고객1 FS1601505 1 0.158113883
고객1 FS1601048 1 0.048336824
고객1 FS1603978 1 0.048336824
고객1 FS1604053 1 0.048336824
고객1 FS1603990 1 0.04323377
고객1 FS1600284 1 0.040267136
고객1 FS1603926 1 0.039927341
고객1 FS1600794 1 0.035454426
고객1 FS1601261 1 0.034664133
고객1 FS1603271 1 0.034179296
고객2 FS1603990 1 0.04323377
고객2 FS1600284 1 0.040267136
한편, 표 7을 참조하면, 프로세서(20)는, 제2 사이트의 전체 개수를 산출할 때 사이트 1과 사이트 2 사이의 유사도 값도 가져오는데, 제2 사이트와 관련된 유사도 값들 중에서 가장 큰 값을 가져오게 된다. 즉, 표 7에서 사이트 키 "FS1603708"과 관련된 유사도 값은 표 6에서 "0.0483368", "0.0206725" 및 "1" 값을 갖기에, 이 중 가장 큰 값인 "1" 값을 가져오고, 표 7에서 사이트 키 "FS1600002"과 관련된 유사도 값은 표 6에서 "1" 및 "0.0483368"값을 갖기에, 이 중 가장 큰 값인 "1 값을 가져오고, 표 7에서 사이트 키 "FS1602529"와 관련된 유사도 값은 표 6에서 "0.2041241" 값 만을 갖기에 그 값을 그대로 (표 7에서는 "0.204124145" 으로 표시되었으나, 반올림하여 표시된 값은 표6에서와 같다) 가져온다.
그런 다음, 프로세서(20)는, 표 7의 제2 사이트의 개수 즉, S40에서 선별된 사이트들과 유사한 사이트들 각각의 개수와 이들 사이트들 각각의 최대 유사도 값을 바탕으로 아래 수학식 2를 이용하여 추천 값을 산출한다.
Figure 112018018416700-pat00004
여기서, cosine은 특정 사이트의 관련된 사이트들과의 유사도 값들 중 가장 큰 값이며, voting_weight 는 가중치 상수이며, voting은 상기 유사도 값이 0을 초과하는, 상기 제1 사이트와 유사한 제2 사이트들의 개수이며, max(voting, 각 고객별)은 각 고객의 voting 값들 중 최대 값이다.
표 7을 이용하여 해당 고객과 특정 사이트의 추천 값을 산출하면, 아래 표 8과 같다.
고객 번호 제2 사이트 키 VOTING
(전체 개수)
최대 유사도
(cosine)
추천 값
고객1 FS1603708 3 1 1
고객1 FS1600002 2 1 0.999917
고객1 FS1600004 1 1 0.999833
고객1 FS1602529 1 0.204124145 0.672268
고객1 FS1601505 1 0.158113883 0.630758
고객1 FS1601048 1 0.048336824 0.469577
고객1 FS1603978 1 0.048336824 0.469577
고객1 FS1604053 1 0.048336824 0.469577
고객1 FS1603990 1 0.04323377 0.456753
고객1 FS1600284 1 0.040267136 0.44877
고객1 FS1603926 1 0.039927341 0.447829
고객1 FS1600794 1 0.035454426 0.434836
고객1 FS1601261 1 0.034664133 0.432415
고객1 FS1603271 1 0.034179296 0.430909
고객2 FS1603990 1 0.04323377 0.45849
고객2 FS1600284 1 0.040267136 0.450601
그리고 프로세서(20)는 위 수학식 2를 통해 산출한 추천 값을 바탕으로 상기 추천 값이 큰 순서로 소정 개수의 사이트를 상기 고객 로그 맞춤형 추천 사이트로 제시하게 된다.
예를 들어, 로그 정보를 바탕으로 고객1에게 맞춤형 사이트로 제시되는 사이트는 (상위 4개의 사이트를 추천 하는 경우) 고객 1에 대해 제2 사이트의 추천 값이 가장 높은 상위 사이트인 "FS1603708", "FS1600002", "FS1600004", "FS1602529"가 될 것이다.
본 발명은 위와 같은 개인화 알고리즘을 통해, 고객에 최적화된 사이트를 제시할 때, 구매 내역이 없는 고객들에 대해서도 고객의 사이트 방문 등의 행동 정보를 포함하는 한 로그 정보를 바탕으로 신뢰도가 높은 최적화된 사이트를 제공하는 개인화 알고리즘을 제공한다. 또한 본 발명은, 해당 고객의 태그(속성)만을 이용하지 않고 모든 고객으로부터 취합하여, 유사한 특성의 고객들의 구매 특성에서 해당 고객에 맞는 최적의 사이트를 제공하는 개인화 알고리즘을 제공할 수 있다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (14)

  1. 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법에 있어서,
    (a) 개인화 알고리즘 서버가, 고객들이 임의의 사이트를 이용하여 구매한 구매 정보를 바탕으로, 각각의 고객에 대해, 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 사이트 구매 태그 및 각 특정 고객이 특정 사이트에서의 구매 횟수를 바탕으로 형성된 태그 값을 나열한 사이트 태그 테이블을 생성하는 단계;
    (b) 상기 개인화 알고리즘 서버가, 상기 사이트 태그 테이블 내의 상기 모든 사이트 중에서 임의로 선택되는 두 개의 사이트 각각에 대한 모든 고객들의 태그 값들을 이용하여, 상기 임의로 선택되는 두 개의 사이트들 사이의 유사도를 계산하여 각 사이트들 사이의 유사도 값을 나타낸 사이트 유사도 테이블을 생성하는 단계;
    (c) 상기 개인화 알고리즘 서버가, 상기 고객으로부터 취득한 적어도 하나의 특정 사이트에 대해서 수행한 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부를 포함하는 로그 정보를 바탕으로, 각 고객별로 그리고 각각의 고객 당 상기 특정 사이트별로 구분되어 형성된 각각의 로그 정보 태그와, 상기 로그 정보 태그에 대응하는 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부에 대한 처리 횟수를 포함하는 로그 횟수를 바탕으로 형성된 태그 값을 나열한 고객 로그 태그 테이블을 생성하는 단계;
    (d) 상기 개인화 알고리즘 서버가, 상기 고객 로그 태그 테이블에서 상기 각 사이트 별 태그 값들을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하는 단계; 및
    (e) 상기 개인화 알고리즘 서버가, 상기 각 고객별로 상기 각 고객에 관련되어 상기 (d) 단계에서 선별된 소정 순위의 상위 사이트들 및 상기 선별된 소정 순위의 상위 사이트들과 유사도 값이 높은 사이트들을 상기 고객에 최적화된 고객 로그 맞춤형 추천 사이트로 제시하는 단계;
    를 포함하되,
    상기 (d) 단계는, 각각 고객별로 동일한 사이트에 대응하는 하나 이상의 상기 로그 정보 태그들에 대해서는, 상기 고객별 각각의 동일 사이트에 대응하는 모든 로그 정보 태그의 태그 값들을, 로그 정보 태그 종류를 참조로 하여 합산한, 합산 태그 값을 생성하고, 상기 합산된 태그 값을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하는 것을 특징으로 하고,
    상기 (d) 단계는, 상기 각각의 사이트 별로 상기 로그 정보 태그에 따라 서로 다른 소정의 가중치를 대응하는 태그 값에 곱하여, 합산하는 것을 특징으로 하며,
    상기 (d) 단계는,
    상기 고객 로그 태그 테이블에서의 상기 로그 정보 태그들에 대응되는 각각의 태그 값들을, 상기 로그 정보 태그들 각각에 대응하여 설정된 서로 다른 소정의 가중치로 상기 태그 값들을 나눈값의 정수값으로 변경한 변경 태그 값들로 설정하며,
    각각의 고객별로 동일한 사이트에 대응하는 모든 로그 정보 태그에 해당하는 변경 태그 값들을 합산하여, 각각의 고객별로 사이트 별 하나의 합산 태그 값을 갖도록 한 다음, 각각의 고객별로 상위 소정 순위의 상기 합산 태그 값들 확인하며, 상기 상위 소정 순위의 상기 합산 태그 값에 대응되는 사이트를 선별함으로써 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하고,
    상기 (e) 단계는,
    상기 (d) 단계를 통해 선별된 상기 소정 순위 상위 사이트들과, 상기 (b) 단계에서 얻은 소정 값 이상의 유사도를 갖는 사이트들의 정보를 바탕으로, 상기 소정 순위 상위 사이트들 중 임의의 한 사이트인 제1 사이트와, 상기 제1 사이트와 유사한 사이트인 하나 이상의 제2 사이트들 사이의 유사도를 참조하여 상기 제2 사이트들의 전체 개수(Voting value)를 산출하고, 상기 제1 사이트와 상기 제2 사이트들 사이의 유사도 값들 중 최대 값을 산출하며,
    상기 소정 순위 상위 사이트들 각각의 사이트에 대한 유사한 사이트들의 개수(Voting value)와 상기 유사한 사이트들과의 유사도 값들 중 가장 큰 유사도 값을 이용하여 상기 제2 사이트들에 대한 추천값(Score)을 계산하고, 상기 추천 값이 큰 순서로 소정 개수의 사이트를 상기 고객 로그 맞춤형 추천 사이트로 제시하고,
    상기 추천값은 아래 식
    Figure 112019503902687-pat00015

    을 통해 계산되며, 여기서, cosine은 특정 사이트의 관련된 사이트들과의 유사도 값들 중 가장 큰 값이며, voting_weight 는 가중치 상수이며, voting은 상기 유사도 값이 0을 초과하는, 상기 제1 사이트와 유사한 제2 사이트들의 개수이며, max(voting, 각 고객별)은 각 고객의 voting 값들 중 최대 값인 것을 특징으로 하는 사이트 추천 방법.
  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 (b) 단계에서 사이트들 사이의 상기 유사도 값 계산은 다음의 수학식
    Figure 112018018416700-pat00005

    을 통해 계산되며, 여기서,
    a=(a1, a2, …, am) : 사이트 태그 테이블 내의 한 사이트의 태그 값들
    b=(b1, b2, …, bm) : 사이트 태그 테이블 내의 다른 사이트의 태그 값들
    m은 사이트구매가 있는 전체 고객 수인 것을 특징으로 하는 사이트 추천 방법.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 고객 로그 맞춤형 사이트를 추천하는 개인화 알고리즘 서버에 있어서,
    각 고객들의 구매 내역 및/또는 상기 고객에 사이트에 대한 로그 정보를 전달받기 위한 통신부; 및
    (i) 상기 고객들이 임의의 사이트를 이용하여 구매한 구매 정보를 바탕으로, 각각의 고객에 대해, 각 고객이 구매한 모든 사이트 정보에 대한 사이트 별 사이트 구매 태그 및 각 특정 고객이 특정 사이트에서의 구매 횟수를 바탕으로 형성된 태그 값을 나열한 사이트 태그 테이블을 생성하는 프로세스; (ii) 상기 사이트 태그 테이블 내의 상기 모든 사이트 중에서 임의로 선택되는 두 개의 사이트 각각에 대한 모든 고객들의 태그 값들을 이용하여, 상기 임의로 선택되는 두 개의 사이트들 사이의 유사도를 계산하여 각 사이트들 사이의 유사도 값을 나타낸 사이트 유사도 테이블을 생성하는 프로세스; (iii) 상기 고객으로부터 취득한 적어도 하나의 특정 사이트에 대해서 수행한 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부를 포함하는 로그 정보를 바탕으로, 각 고객별로 그리고 각각의 고객 당 상기 특정 사이트별로 구분되어 형성된 각각의 로그 정보 태그와, 상기 로그 정보 태그에 대응하는 호감 표시, 북마크 처리 및 클릭 행위 중 적어도 일부에 대한 처리 횟수를 포함하는 로그 횟수를 바탕으로 형성된 태그 값을 나열한 고객 로그 태그 테이블을 생성하는 프로세스; (iv) 상기 고객 로그 태그 테이블에서 상기 각 사이트 별 태그 값들을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하는 프로세스; 및 (v) 각 고객별로 상기 각 고객에 관련되어 상기 (iv) 프로세스에서 선별된 소정 순위의 상위 사이트들 및 상기 선별된 소정 순위의 상위 사이트들과 유사도 값이 높은 사이트들을 상기 고객에 최적화된 고객 로그 맞춤형 추천 사이트로 제시하는 프로세스;를 수행하는 프로세서;를 포함하되,
    상기 (iv) 프로세스는, 각각 고객별로 동일한 사이트에 대응하는 하나 이상의 상기 로그 정보 태그들에 대해서는, 상기 고객별 각각의 동일 사이트에 대응하는 모든 로그 정보 태그의 태그 값들을, 로그 정보 태그 종류를 참조로 하여 합산한, 합산 태그 값을 생성하고, 상기 합산된 태그 값을 바탕으로 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하는 것을 특징으로 하고,
    상기 (iv) 프로세스는, 상기 각각의 사이트 별로 상기 로그 정보 태그에 따라 서로 다른 소정의 가중치를 대응하는 태그 값에 곱하여, 합산하는 것을 특징으로 하며,
    상기 (iv) 프로세스는,
    상기 고객 로그 태그 테이블에서의 상기 로그 정보 태그들에 대응되는 각각의 태그 값들을, 상기 로그 정보 태그들 각각에 대응하여 설정된 서로 다른 소정의 가중치로 상기 태그 값들을 나눈값의 정수값으로 변경한 변경 태그 값들로 설정하며,
    각각의 고객별로 동일한 사이트에 대응하는 모든 로그 정보 태그에 해당하는 변경 태그 값들을 합산하여, 각각의 고객별로 사이트 별 하나의 합산 태그 값을 갖도록 한 다음, 각각의 고객별로 상위 소정 순위의 상기 합산 태그 값들 확인하며, 상기 상위 소정 순위의 상기 합산 태그 값에 대응되는 사이트를 선별함으로써 상기 고객 별 상위 소정 순위에 속하는 사이트를 선별하고,
    상기 (v) 프로세스는,
    상기 (iv) 프로세스를 통해 선별된 상기 소정 순위 상위 사이트들과, 상기 (ii) 프로세스에서 얻은 소정 값 이상의 유사도를 갖는 사이트들의 정보를 바탕으로, 상기 소정 순위 상위 사이트들 중 임의의 한 사이트인 제1 사이트와, 상기 제1 사이트와 유사한 사이트인 하나 이상의 제2 사이트들 사이의 유사도를 참조하여 상기 제2 사이트들의 전체 개수(Voting value)를 산출하고, 상기 제1 사이트와 상기 제2 사이트들 사이의 유사도 값들 중 최대 값을 산출하며,
    상기 소정 순위 상위 사이트들 각각의 사이트에 대한 유사한 사이트들의 개수(Voting value)와 상기 유사한 사이트들과의 유사도 값들 중 가장 큰 유사도 값을 이용하여 상기 제2 사이트들에 대한 추천값(Score)을 계산하고, 상기 추천 값이 큰 순서로 소정 개수의 사이트를 상기 고객 로그 맞춤형 추천 사이트로 제시하고,
    상기 추천값은 아래 식
    Figure 112019503902687-pat00016

    을 통해 계산되며, 여기서, cosine은 특정 사이트의 관련된 사이트들과의 유사도 값들 중 가장 큰 값이며, voting_weight 는 가중치 상수이며, voting은 상기 유사도 값이 0을 초과하는, 상기 제1 사이트와 유사한 제2 사이트들의 개수이며, max(voting, 각 고객별)은 각 고객의 voting 값들 중 최대 값인 것을 특징으로 하는 서버.
  9. 삭제
  10. 삭제
  11. 제 8 항에 있어서,
    상기 (ii) 프로세스에서 사이트들 사이의 상기 유사도 값 계산은 다음의 수학식
    Figure 112018018416700-pat00007

    을 통해 계산되며, 여기서,
    a=(a1, a2, …, am) : 사이트 태그 테이블 내의 한 사이트의 태그 값들
    b=(b1, b2, …, bm) : 사이트 태그 테이블 내의 다른 사이트의 태그 값들
    m은 사이트구매가 있는 전체 고객 수인 것을 특징으로 하는 서버.
  12. 삭제
  13. 삭제
  14. 삭제
KR1020180020771A 2018-02-21 2018-02-21 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버 KR102051311B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180020771A KR102051311B1 (ko) 2018-02-21 2018-02-21 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180020771A KR102051311B1 (ko) 2018-02-21 2018-02-21 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버

Publications (2)

Publication Number Publication Date
KR20190100789A KR20190100789A (ko) 2019-08-29
KR102051311B1 true KR102051311B1 (ko) 2020-01-08

Family

ID=67776000

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180020771A KR102051311B1 (ko) 2018-02-21 2018-02-21 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버

Country Status (1)

Country Link
KR (1) KR102051311B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102537900B1 (ko) * 2022-02-23 2023-05-31 현대카드 주식회사 사용자 특징을 지시하는 태그를 생성하기 위한 장치, 방법 및 명령을 기록한 기록 매체
KR102551788B1 (ko) * 2022-07-12 2023-07-06 주식회사 제이알에이치 상품 구매대행 시스템
KR102646345B1 (ko) * 2022-10-31 2024-03-12 주식회사 제이알에이치 상품 관리와 이용 편의성이 증대되도록 구성되는 상품 구매대행 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053616A (ja) 2004-08-09 2006-02-23 Kddi Corp サーバ装置、webサイト推奨方法およびプログラム
JP2010157006A (ja) 2008-12-26 2010-07-15 Alphastream Inc インターネット上の各webサイト属性判定方法
US20110106610A1 (en) 2009-10-06 2011-05-05 Landis Kenneth M Systems and methods for providing and commercially exploiting online persona validation
US20110276921A1 (en) 2010-05-05 2011-11-10 Yahoo! Inc. Selecting content based on interest tags that are included in an interest cloud

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120006694A (ko) * 2010-07-13 2012-01-19 (주)팍스넷 모바일 쇼핑몰에서 상품 정보 제공 시스템 및 방법
KR101419504B1 (ko) * 2012-08-24 2014-07-15 (주)에이엔비 사용자 성향 분석을 통한 맞춤형 쇼핑 정보 제공 시스템 및 방법
KR102166186B1 (ko) * 2016-05-04 2020-10-15 한국전자통신연구원 사용자 단말에서의 상품 구매 내역 기반 컨텍스트 생성 장치 및 상품 추천 로컬 서비스 플랫폼
KR101867421B1 (ko) * 2016-05-23 2018-06-15 식신 주식회사 소셜 데이터를 이용한 서비스 제공업체 추천 방법 및 장치
KR101755409B1 (ko) * 2016-09-20 2017-07-27 에스케이플래닛 주식회사 컨텐츠 추천 시스템 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053616A (ja) 2004-08-09 2006-02-23 Kddi Corp サーバ装置、webサイト推奨方法およびプログラム
JP2010157006A (ja) 2008-12-26 2010-07-15 Alphastream Inc インターネット上の各webサイト属性判定方法
US20110106610A1 (en) 2009-10-06 2011-05-05 Landis Kenneth M Systems and methods for providing and commercially exploiting online persona validation
US20110276921A1 (en) 2010-05-05 2011-11-10 Yahoo! Inc. Selecting content based on interest tags that are included in an interest cloud

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
질의어의 근접성 정보 및 그래프 프로파일링 기법을 이용한 태그 기반 개인화 검색, 2014 한국컴퓨터 종합학술대회 논문집. 2014.12, 177-179(3Pages) 1부.*

Also Published As

Publication number Publication date
KR20190100789A (ko) 2019-08-29

Similar Documents

Publication Publication Date Title
Wu et al. Turning clicks into purchases: Revenue optimization for product search in e-commerce
US10452662B2 (en) Determining search result rankings based on trust level values associated with sellers
US8285602B1 (en) System for recommending item bundles
US8019766B2 (en) Processes for calculating item distances and performing item clustering
US7941383B2 (en) Maintaining state transition data for a plurality of users, modeling, detecting, and predicting user states and behavior
US7966225B2 (en) Method, system, and medium for cluster-based categorization and presentation of item recommendations
US7979445B2 (en) Processes for assessing user affinities for particular item categories of a hierarchical browse structure
Chen et al. Facilitating effective user navigation through website structure improvement
US9727906B1 (en) Generating item clusters based on aggregated search history data
US20070214133A1 (en) Methods for filtering data and filling in missing data using nonlinear inference
US20100057717A1 (en) System And Method For Generating A Search Ranking Score For A Web Page
EP2704080A1 (en) Recommendation systems and methods
Gogna et al. DiABlO: Optimization based design for improving diversity in recommender system
US20160210321A1 (en) Real-time content recommendation system
CN111488385B (zh) 基于人工智能的数据处理方法、装置和计算机设备
KR102051311B1 (ko) 개인화 알고리즘을 이용하여 고객 로그 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버
Kaminskas et al. Product-seeded and basket-seeded recommendations for small-scale retailers
Moraes et al. The role of attributes in product quality comparisons
US8700625B1 (en) Identifying alternative products
Kim et al. Recommender systems using SVD with social network information
KR102051300B1 (ko) 개인화 알고리즘을 이용하여 고객 질문답 맞춤형 사이트를 추천하는 방법 및 개인화 알고리즘 서버
CN110827044A (zh) 提取用户兴趣模式的方法和装置
KR101983704B1 (ko) 개인화 알고리즘을 이용한 사이트 추천 방법 및 개인화 알고리즘 서버
Somya et al. A novel approach to collect and analyze market customer behavior data on online shop
Ganapathy et al. Models for recommender systems in web usage mining based on user ratings

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant