KR101937987B1 - 유사 사용자를 매칭하는 장치 및 방법 - Google Patents
유사 사용자를 매칭하는 장치 및 방법 Download PDFInfo
- Publication number
- KR101937987B1 KR101937987B1 KR1020170008006A KR20170008006A KR101937987B1 KR 101937987 B1 KR101937987 B1 KR 101937987B1 KR 1020170008006 A KR1020170008006 A KR 1020170008006A KR 20170008006 A KR20170008006 A KR 20170008006A KR 101937987 B1 KR101937987 B1 KR 101937987B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- preference
- sequence
- matching
- similar
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000002776 aggregation Effects 0.000 claims description 5
- 238000004220 aggregation Methods 0.000 claims description 5
- 238000011524 similarity measure Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 8
- 238000001914 filtration Methods 0.000 description 8
- 230000007423 decrease Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 235000007688 Lycopersicon esculentum Nutrition 0.000 description 1
- 240000003768 Solanum lycopersicum Species 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0255—Targeted advertisements based on user history
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Data Mining & Analysis (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Algebra (AREA)
- Bioinformatics & Computational Biology (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Operations Research (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
유사 선호도를 가지는 사용자를 매칭하는 방법은 제 1 사용자에 대한 적어도 하나의 선호 아이템을 포함하는 선호 아이템 시퀀스 정보를 수집하는 단계, 선호 아이템 시퀀스 정보에 포함된 선호 아이템을 시간 순서대로 소정 개수를 하나의 집합 시퀀스로 재구성하는 단계, 제 1 사용자에 대한 선호 아이템의 집합 시퀀스를 슬라이딩 윈도우로 구성하고, 다른 사용자에 대한 선호 아이템의 집합 시퀀스를 디스조인트 윈도우로 구성하는 단계, 슬라이딩 윈도우와 디스조인트 윈도우 간의 유사도를 측정하는 단계 및 측정된 유사도에 기초하여 복수의 사용자 중 선호도가 유사한 사용자를 유사 사용자로 매칭하는 단계를 포함한다.
Description
본원은 집합 개념을 사용한 유사 사용자 매칭 장치 및 방법에 관한 것이다.
데이터스트림이란 시간의 흐름에 따라서 순차적으로 무한히 생성되는 데이터를 의미할 수 있다. 이러한 데이터스트림의 환경은 대량의 데이터가 실시간으로 빠르게 들어오는 특징을 가질 수 있으며, 데이터스트림의 예로는 네트워크 패킷 데이터, 이동통신 통화기록 데이터, 주식시세 변환 데이터 등이 있을 수 있다.
최근 디지털 기기의 보급과 소셜 네트워크 서비스의 발전으로 인해 수 많은 데이터가 데이터스트림의 형태로 생성되는 빅데이터 환경이 도래하였고, 이에 따라 영화와 같은 콘텐츠에 대한 평점 데이터를 사용자들이 시간과 위치에 관계없이 실시간으로 생성할 수 있게 되었고, 이를 동적인 데이터스트림으로 모델링할 수 있게 되었다.
한편, 다양한 콘텐츠 중 사용자가 선호할 만한 아이템을 추천해주는 서비스가 등장하기 시작했고, 이러한 추천 시스템은 사용자가 직접 수 많은 아이템을 살펴보지 않아도 되는 편리성을 제공할 수 있고, 빅데이터 환경이 도래함에 따라 이러한 추천 시스템의 중요성이 점차 대두되고 있으며, 콘텐츠 추천 시스템에 대한 연구와 니즈 또한 증가하고 있다.
본원의 배경이 되는 기술은 한국특허공개공보 제2012-0071194호에 개시되어 있다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 추천 시스템에서 선호가 유사한 유사 사용자를 보다 정확하게 찾는 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 추천의 정확도를 높이기 위해 사용자의 선호에 시간을 고려하고, 집합 개념을 고려하여 시간이 일치하지 않는 유사 사용자를 찾아내기 위한 방법 및 장치를 제공하는 것을 목적으로 한다.
다만, 본원의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들도 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 유사 선호도를 가지는 사용자를 매칭하는 방법은 제 1 사용자에 대한 적어도 하나의 선호 아이템을 포함하는 선호 아이템 시퀀스 정보를 수집하는 단계, 선호 아이템 시퀀스 정보에 포함된 선호 아이템을 시간 순서대로 소정 개수를 하나의 집합 시퀀스로 재구성하는 단계, 제 1 사용자에 대한 선호 아이템의 집합 시퀀스를 슬라이딩 윈도우로 구성하고, 다른 사용자에 대한 선호 아이템의 집합 시퀀스를 디스조인트 윈도우로 구성하는 단계, 슬라이딩 윈도우와 디스조인트 윈도우 간의 유사도를 측정하는 단계 및 측정된 유사도에 기초하여 복수의 사용자 중 선호도가 유사한 사용자를 유사 사용자로 매칭하는 단계를 포함할 수 있다.
또한, 본원의 일 실시예에 있어서, 선호 아이템 시퀀스 정보는 사용자가 선호한 아이템을 선호 시간 순서대로 정렬한 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 집합 시퀀스는 선호 아이템을 시간 순서대로 집합의 크기만큼 소정 개수를 하나로 묶어서 구성한 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 슬라이딩 윈도우 및 디스조인트 윈도우는 최근 시점부터 과거 시점 방향으로 구성되는 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 유사도를 측정하는 단계는 슬라이딩 윈도우와 디스조인트 윈도우 간의 유클리디안 거리를 측정하는 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 유사한 사용자로 매칭하는 단계는 측정된 유클리디안 거리가 소정 임계치보다 작은 경우, 유사한 사용자로 매칭하는 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 유사한 사용자로 매칭하는 단계는 측정된 유클리디안 거리가 소정 임계치보다 작은 경우, 유사한 사용자의 후보군으로 결정하는 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 유사도를 측정하는 단계는 결정된 후보군 및 제 1 사용자의 슬라이딩 윈도우 간의 유사도를 측정하는 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 유사한 사용자로 매칭하는 단계는 측정된 유사도가 소정 임계치보다 작거나 또는 같은 경우 선호도가 유사한 사용자로 매칭하는 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 아이템은 적어도 하나 이상의 속성을 포함하되, 속성은 계층 구조를 가지는 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 유사한 사용자로 매칭하는 단계는 아이템의 속성에 기초하여 복수의 사용자 중 선호도가 유사한 사용자를 유사 사용자로 매칭하는 것일 수 있다.
또한, 본원의 일 실시예에 있어서, 유사 선호도를 가지는 사용자를 매칭하는 장치는 제 1 사용자에 대한 적어도 하나의 선호 아이템을 포함하는 선호 아이템 시퀀스 정보를 수집하는 정보 수집부, 선호 아이템 시퀀스 정보에 포함된 선호 아이템을 시간 순서대로 소정 개수를 하나의 집합 시퀀스로 재구성하는 집합 시퀀스부, 제 1 사용자에 대한 선호 아이템의 집합 시퀀스를 슬라이딩 윈도우로 구성하고, 다른 사용자에 대한 선호 아이템의 집합 시퀀스를 디스조인트 윈도우로 구성하는 윈도우 구성부, 슬라이딩 윈도우와 디스조인트 윈도우 간의 유사도를 측정하는 측정부 및 측정된 유사도에 기초하여 복수의 사용자 중 선호도가 유사한 사용자를 유사 사용자로 매칭하는 매칭부를 포함할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본원을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 추가적인 실시예가 존재할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 사용자의 선호에 시간 개념을 고려하여 선호가 유사한 유사 사용자를 보다 정확하게 찾을 수 있다. 사용자의 선호 시간 및 집합 개념을 고려하여 시간이 일치하지 않는 유사 사용자에 대해서도 정확하게 유사 사용자를 찾을 수 있다. 또한 서브시퀀스 매칭을 사용하여 모든 사용자의 모든 시점에서의 유사 사용자 여부를 검색하여 유사 사용자 매칭의 정확도를 높일 수 있다.
도 1은 본원의 일 실시예에 따른 매칭 시스템을 나타내는 도면이다
도 2는 본원의 일 실시예에 따른 사용자 매칭 장치를 나타내는 도면이다
도3a 내지 3b는 본원의 일 실시예에 따른 아이템 시퀀스 매칭을 나타내는 도면이다.
도4는 본원의 일 실시예에 따른 윈도우를 나타내는 도면이다.
도 5는 본원의 일 실시예에 따른 집합 시퀀스 매칭을 나타내는 도면이다.
도 6a 내지 6b는 본원의 일 실시예에 따른 계층 구조가 고려된 집합 시퀀스 매칭을 나타내는 도면이다.
도 7 내지 도 8은 본원의 일 실시예에 따른 알고리즘을 나타내는 도면이다.
도 9는 본원의 일 실시예에 따른 사용자 매칭 방법을 나타내는 도면이다.
도 2는 본원의 일 실시예에 따른 사용자 매칭 장치를 나타내는 도면이다
도3a 내지 3b는 본원의 일 실시예에 따른 아이템 시퀀스 매칭을 나타내는 도면이다.
도4는 본원의 일 실시예에 따른 윈도우를 나타내는 도면이다.
도 5는 본원의 일 실시예에 따른 집합 시퀀스 매칭을 나타내는 도면이다.
도 6a 내지 6b는 본원의 일 실시예에 따른 계층 구조가 고려된 집합 시퀀스 매칭을 나타내는 도면이다.
도 7 내지 도 8은 본원의 일 실시예에 따른 알고리즘을 나타내는 도면이다.
도 9는 본원의 일 실시예에 따른 사용자 매칭 방법을 나타내는 도면이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 "상에", "상부에", "상단에", "하에", "하부에", "하단에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
사용자와 유사한 선호를 가지는 사용자를 매칭하는 방법과 관련하여 대표적으로 협업 필터링(Collaborative filtering) 기법이 있다. 협업 필터링은 추천 서비스를 받을 사용자와 유사한 다른 사용자를 찾고, 찾은 유사 사용자가 선호한 아이템을 추천하는 방식이다. 협업 필터링 기법은 아이템을 추천 받을 사용자와 다른 사용자가 존재하는 경우, 아이템을 추천 받을 사용자와 같은 아이템을 선호한 사용자를 찾고, 찾은 사용자가 선호한 아이템들 중 아이템을 추천 받을 사용자가 선호한 적이 없는 다른 아이템을 추천하는 기법으로, 유사한 다른 사용자를 찾기 위해서 과거의 아이템들에 대한 선호 정보를 사용하고, 두 사용자가 과거에 비슷한 아이템들을 선호하였다면, 앞으로도 비슷한 아이템을 선호할 것이라는 가정에 기반하여 아이템을 추천하게 된다. 이에 협업 필터링 기법에서는 과거 유사한 선호를 보이는 사용자를 정확하게 찾아내는 것이 중요하다.
하지만, 협업 필터링 기법은 유사 사용자를 찾는데 있어, 과거의 선호와 최근의 선호를 구분하지 않아, 변화하는 선호로 인하여 아이템을 추천 받을 사용자와 선호가 일치하지 않는 사용자를 유사한 사용자로 찾는 문제가 있다. 또한, 두 사용자가 공통적으로 선호한 아이템의 수가 적어 유사 사용자로 선정되지 않는 문제를 가진다. 협업 필터링 기법에서의 데이터의 희소성 문제는 협업 필터링 기법이 전적으로 유사 사용자의 선호 아이템 중에서 아이템을 추천받을 사용자가 선호할 아이템을 추천하기 때문에, 두 사용자의 공통되는 선호 아이템을 기준으로 공통 선호 아이템이 많을수록 더 유사하다고 판단할 수 있다. 하지만, 전체 사용자와 전체 사용자에 대응하는 선호 아이템의 수가 많아짐에 따라 전체 아이템 중 두 사용자의 공통되는 선호 아이템의 데이터가 희소해져 데이터 희소성 문제가 발생할 수 있다. 이에 따라, 위와 같은 협업 필터링 기법의 문제점을 해결하기 위한 방법이 요구되고 있다.
도 1은 본원의 일 실시예에 따른 매칭 시스템을 나타내는 도면이다. 도 1을 참조하면, 매칭 시스템은 사용자 매칭 장치(10) 및 사용자 매칭 장치(10)와 네트워크(30)로 연결된 복수의 사용자 단말(20)을 포함할 수 있다.
사용자 매칭 장치(10)는 제 1 사용자에 대한 선호 아이템 시퀀스 정보에 기초하여 제 1 사용자와 유사한 선호도를 가지는 유사 사용자를 매칭할 수 있다. 사용자 매칭 장치(10)는 매칭된 유사 사용자가 선호한 선호 아이템 중 제 1 사용자의 선호 아이템에 포함되지 않는 아이템을 추천할 수 있다.
사용자 매칭 장치(10)는 사용자가 아이템을 선호한 시간 정보를 고려하고, 시간의 흐름에 따라 실시간으로 생성되는 사용자의 선호 데이터를 데이터스트림의 시퀀스로하여 유사한 사용자를 찾을 수 있다. 데이터스트림의 시퀀스는 데이터베이스 상에 저장된 연속적인 값들을 의미할 수 있다. 사용자 매칭 장치(10)는 사용자 간의 유사도를 측정하는데 있어, 선호 아이템들을 구성하는 속성 또는 메타데이터에 계층성이 존재함을 이용할 수 있다. 다시 말해, 사용자 매칭 장치(10)는 사용자의 선호도를 파악하기 위해 해당 아이템이 무엇인지에 대한 정보뿐만 아니라, 해당 아이템의 계층구조적 속성을 이용할 수 있다. 아이템이 영화일 경우, 영화 ID, 영화배우, 영화 장르 등의 속성을 이용할 수 있다. 이와 같은 사용자 매칭 장치(10)의 동작은 후술되는 도 2에서 자세히 설명된다.
복수의 사용자 단말(20)은 사용자 매칭 장치(10)와 네트워크(30)로 연결되어, 매칭된 유사 사용자에 대한 정보를 수신하거나 또 사용자 매칭 장치(10)에 의해 추천된 아이템에 대한 정보를 수신할 수 있다. 복수의 사용자 단말(20)은 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC (desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라, 또는 웨어러블 장치(wearable device) (예: 스마트 안경, 머리 착용형 장치(headmounted-device(HMD)), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 스마트 미러, 또는 스마트 와치(smart watch))중 적어도 하나를 포함할 수 있다.
네트워크(30)는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 무선 통신 및 유선 통신을 포함할 수 있다. 상기 무선 통신은, 예를 들면 셀룰러 통신 프로토콜로서, 예를 들면 LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro, 또는 GSM 등 중 적어도 하나를 사용할 수 있다. 또한 상기 무선 통신은, 예를 들면, 근거리 통신을 포함할 수 있다. 상기 근거리 통신은, 예를 들면, Wi-Fi, Bluetooth, NFC(near field communication), 또는 GPS(global positioning system) 등 중 적어도 하나를 포함할 수 있다. 상기 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232), 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 네트워크(300)는 통신 네트워크(telecommunications network), 예를 들면, 컴퓨터 네트워크(computer network)(예: LAN 또는 WAN), 인터넷(Internet), 또는 전화망(telephone network) 중 적어도 하나를 포함할 수 있다.
도 2는 본원의 일 실시예에 따른 사용자 매칭 장치(10)를 나타내는 도면이다. 도 2를 참조하면, 사용자 매칭 장치(10)는 정보 수집부(110), 집합 시퀀스부(120), 윈도우 구성부(130), 측정부(140) 및 매칭부(150)를 포함한다. 다만, 사용자 매칭 장치(10)의 구성이 앞서 개시된 것들로 한정되는 것은 아니다. 예를 들어, 사용자 매칭 장치(10)는 정보를 저장하기 위한 데이터베이스를 더 포함할 수 있다.
정보 수집부(110)는 제 1 사용자에 대한 적어도 하나의 선호 아이템을 포함하는 선호 아이템 시퀀스 정보를 수집할 수 있다. 이 때, 선호 아이템 시퀀스 정보는 사용자가 선호한 아이템을 선호 시간 순서대로 정렬한 것일 수 있다. 예를 들어, 정보 수집부(110)는 제 1 사용자의 선호에 시간 개념을 고려하기 위해 제 1 사용자가 선호한 아이템을 하나의 엔트리로 하여 사용자의 모든 선호 아이템을 시퀀스로 구성할 수 있다. 선호 아이템 시퀀스는 제 1 사용자가 선호한 아이템들을 선호 시간 순서대로 정렬한 것으로, 사용자 집합 U={u1, u2, ... um }와 아이템 집합 E={e1, e2, ... en}가 존재하는 하는 경우, 시간 t에 대하여 어떤 아이템을 선호했다는 것을 라고 표현하면, 사용자 u1 의 선호 아이템 시퀀스는 (, ,...)(단, tl < tl + 1)로 표현될 수 있다. 그리고, pi 의 k번째 엔트리는 pi[k]로 표현될 수 있다.
선호 아이템 시퀀스을 통해 유사 시퀀스를 매칭하는 것과 관련하여 사용자 매칭 장치(10)는 두 시퀀스 간의 유사도가 특정 값 이상이면 유사하다고 판단할 수 있다. 일반적으로 두 사용자의 유사도를 판단할 때는 모든 번째 엔트리에 대해서 와 의 아이템이 일치하는지를 확인한 뒤 전체 시퀀스에서 일치하는 아이템이 많을수록 두 사용자의 유사도가 높다고 판단할 수 있다. 사용자 간의 유사도를 측정하는 방법과 관련하여 이하 도 3을 통해 자세히 설명된다.
도 3a 내지 도3b는 본원의 일 실시예에 따른 선호 아이템 시퀀스 매칭을 나타내는 도면이다. 도 3a 및 도 3b를 참조하면, 두 사용자 와 의 선호 아이템 시퀀스 와 의 시퀀스 매칭을 나타낼 수 있다. 이 때, 화살표 방향으로 시간이 흐르고, 사용자가 어떤 아이템을 선호하면 해당 시점에 아이템을 원으로 표시하는 것을 가정할 수 있다. 두 사용자의 시퀀스 매칭은 두 시퀀스의 같은 순서의 선호 아이템 간의 일치 여부를 판단하는 것으로, 도 3a 와 도 3b에서 사용자 매칭 장치(10)가 두 사용자 간의 일치 여부를 판단하는 것과 관련하여 같은 순서의 선호 아이템들은 점선으로 연결될 수 있다. 사용자 매칭 장치(10)는 일치 여부를 판단한 이후, 일치하는 선호 아이템의 개수가 소정 임계값 이상인 경우 두 사용자를 유사한 사용자로 선정할 수 있다.
임계 값을 선호 아이템 시퀀스의 전체 엔트리 개수의 1/2개로 가정하면, 도 3a에서 사용자 는 아이템 A,B,F,G,H,I를 순서대로 선호하였고 사용자 는 아이템 A,Y,F,G,H,I를 순서대로 선호하였고, 도 3a에서 시퀀스 매칭을 수행하면 선호 아이템 시퀀스의 전체 여섯 개의 엔트리 중에서 두 번째 엔트리를 제외한 다섯 개의 엔트리가 서로 일치한다. 도3a의 두 시퀀스는 전체 엔트리 개수의 개의 아이템이 일치하여 주어진 임계 값 이상이므로 두 사용자 와 는 유사한 사용자로 선정될 수 있다.
하지만, 도 3b에서 사용자 는 아이템 A,B,F,G,H,I를 순서대로 선호하였고 사용자 는 아이템 B,A,C,I,H,F를 순서대로 선호하였다. 도 3b에서 시퀀스 매칭을 수행하면 선호 아이템 시퀀스의 전체 여섯 개의 엔트리 중에서 다섯 번째 엔트리인 만이 서로 일치한다. 도 3b의 두 시퀀스는 전체 엔트리 개수의 1/6개의 아이템이 일치하므로 주어진 임계 값 미만이므로 두 사용자 와 는 유사한 사용자로 선정되지 않는다.
사용자 매칭 장치(10)가 선호 아이템 시퀀스에 기초하여 유사 사용자 매칭을 수행하면 두 사용자가 정확히 같은 순서대로 같은 아이템을 선호하는 경우에만, 유사 사용자로 매칭할 수 있다. 이로 인해 실제로 선호가 같은 두 사용자가 선호 아이템의 시간 순서가 정확히 일치하지 않아 유사 사용자로 선정되지 않는 불일치 문제가 발생할 수 있다. 도 3b에서 두 사용자 와 는 여섯 개의 아이템 중에서 다섯 개의 아이템이 같은 아이템인 유사한 사용자이나, 시퀀스 매칭을 수행할 때에 아이템을 선호한 순서가 정확히 일치하지 않아서 유사한 사용자로 선정되지 않을 수 있다.
집합 시퀀스부(120)는 선호 아이템 시퀀스 정보에 포함된 선호 아이템을 시간 순서대로 소정 개수를 하나의 집합 시퀀스로 재구성할 수 있다. 다시 말해, 집합 시퀀스부(120)는 사용자의 선호를 집합 개념의 시퀀스로 다시 모델링 할 수 있다. 이 때, 집합 시퀀스는 선호 아이템 시퀀스에 포함된 각각의 엔트리가 선호 아이템의 집합이 되는 것으로, 선호 아이템 시퀀스에서 일정 시간 간격 안에 포함된 모든 아이템들의 집합일 수 있다. 시간 간격을 라 하고, 시작 시간 이이고 종료 시간이 인 시간 구간 에서 사용자 의 선호 아이템 집합은 의 엔트리 중 시간 가 인 엔트리의 집합이며 로 표현될 수 있다. 이를 통해 실제로 선호가 같은 두 사용자가 선호 아이템의 시간 순서가 정확히 일치하지 않아 유사 사용자로 선정되지 않는 문제를 시간 기준을 느슨하게 함으로써 불일치 문제를 해결할 수 있다.
윈도우 구성부(130)는 제 1 사용자에 대한 선호 아이템의 집합 시퀀스를 슬라이딩 윈도우(131)로 구성하고, 다른 사용자에 대한 선호 아이템의 집합 시퀀스를 디스조인트 윈도우(132)로 구성할 수 있다. 이 때, 슬라이딩 윈도우(131) 및 디스조인트 윈도우(132)는 최근 시점부터 과거 시점 방향으로 구성될 수 있다.
사용자 매칭 장치(10)는 유사한 사용자를 매칭하는데 있어, 일정한 길이 단위로 윈도우를 구성하여 유사도 계산을 수행할 수 있다. 다시 말해, 사용자 매칭 장치(10)는 모든 시퀀스마다 전체길이 시퀀스 유사도 계산을 수행하는 것이 아니라 윈도우 간의 유사도 계산을 통해 유사 사용자를 매칭할 수 있다.
Symbols | Definitions |
데이터 시퀀스의 개수 | |
번째 데이터 시퀀스 | |
시퀀스 의 길이 | |
시퀀스 의 번째 엔트리 | |
시퀀스 의 번째 엔트리에서 번째 엔트리까지로 구성된 서브시퀀스 |
|
사용자에 의해 주어지는 질의 시퀀스 | |
슬라이딩 또는 디스조인트 윈도우 크기 | |
질의 시퀀스 의 허용치 | |
시퀀스 의 번째 디스조인트 윈도우 |
표 1은 윈도우의 속성을 나타낸다. M은 데이터 시퀀스의 개수, S_i는 i 번째 데이터 시퀀스(1≤i≤M), Len(S)은 시퀀스 S의 길이, S[i] 시퀀스는 S의 i 번째 엔트리(1≤i≤Len(S)), S[i:j]는 시퀀스 S의 i 번째 엔트리에서 j번째 엔트리까지로 구성된 서브시퀀스 (i<j), Q는 사용자에 의해 주어지는 질의 시퀀스, ω는 슬라이딩 또는 디스조인트 윈도우 크기, ε는 질의 시퀀스 Q의 허용치, 는 시퀀스 S의 i번째 디스조인트 윈도우 를 나타낼 수 있다.
윈도우 구성부(130)는 제 1 사용자에 대한 선호 아이템의 집합 시퀀스를 슬라이딩 윈도우(131)로 구성하고, 다른 사용자에 대한 선호 아이템의 집합 시퀀스를 디스조인트 윈도우(132)로 구성할 수 있다. 도 4를 참조하면, 도 4는 본원의 일 실시예에 따른 윈도우를 나타내는 도면이다. 윈도우 구성부(130)는 제 1 사용자가 아닌 다른 사용자들의 선호 아이템 집합 시퀀스인 데이터 시퀀스는 디스조인트 윈도우(132)로 나누고 제 1 사용자의 선호 아이템 집합 시퀀스인 질의 시퀀스는 슬라이딩 윈도우(131)로 나누어 윈도우를 구성할 수 있다. 윈도우의 구성 방향은 최근 시점부터 과거 시점 방향으로 구성될 수 있다. 이는 데이터스트림 환경의 특징을 고려한 윈도우 구성으로, 데이터스트림 환경에서는 매 시점마다 새로운 데이터가 무한히 생성되고 실시간으로 무한정 생성되는 대량의 데이터 시퀀스는 저장 공간의 문제로 과거 시점의 데이터부터 소멸될 수 있다. 따라서 윈도우 구성부(130)는 데이터스트림 내에서 최근의 데이터가 더 큰 의미를 가지므로 최근 시점부터 과거 시점 방향으로 윈도우를 구성할 수 있다.
좀 더 상세히 설명하면, 먼저 시퀀스 S의 크기 ω인 슬라이딩 윈도우(131)는 시작 엔트리가 S[i](1≤i≤Len(S)-ω+1)인 길이 ω의 서브시퀀스가 될 수 있고, 시퀀스 S의 크기 ω인 디스조인트 윈도우(132)는 시작 엔트리가 S[(i-1)×ω+1](1≤i≤(Len(S)-ω+1)/ω)인 길이 ω의 서브시퀀스가 될 수 있다.
윈도우 구성부(130)는 윈도우를 구성하는데 있어 개의 데이터 시퀀스들이 모여있는 데이터베이스 내에서 각 데이터 시퀀스는 사용자들의 선호를 최근 시점부터 디스조인트 윈도우로 구성할 수 있고, 질의 시퀀스로써 실시간으로 제 1 사용자의 선호가 추가될 때마다 슬라이딩 윈도우(131)를 생성할 수 있다.
다시 말해, 윈도우 구성부(130)는 데이터 시퀀스를 디스조인트 윈도우(132)로 나누고, 질의 시퀀스는 슬라이딩 윈도우(131)로 나눌 수 있다. 두 시퀀스를 모두 슬라이딩 윈도우로 나누는 것은 많은 저장 공간을 필요하기 때문에 윈도우 구성부(130)는 저장 공간을 절약하기 위해 두 시퀀스 중에서 하나는 슬라이딩 윈도우로 나누고 나머지 하나는 디스조인트 윈도우로 나누어 구성할 수 있다. 이러한 윈도우 구성을 통해 측정부(140)를 통해 윈도우 간의 유사도를 계산한 뒤에 후보를 선정하게 되면 기존의 윈도우를 이용한 유사 시퀀스 매칭에서 얻은 후보의 수보다 더 적은 수의 후보를 얻을 수 있으며, 전체길이 유사도 계산을 수행할 후보 질의 시퀀스의 수가 줄기 때문에 필요한 연산의 수도 줄어들게 되어 수행 상의 이득을 얻을 수 있다.
측정부(140)는 슬라이딩 윈도우(131)와 디스조인트 윈도우(132) 간의 유사도를 측정할 수 있다. 예를 들어, 측정부(140)는 사용자의 선호 유사도를 측정하기 위해 집합 시퀀스 간의 유사도를 측정할 수 있다. 측정부(140)는 자카드 계수(Jaccard coefficient)를 통해 집합 시퀀스 간의 유사도를 측정할 수 있다. 자카드 계수는 두 집합의 교집합 원소의 크기를 합집합 원소의 크기로 나누어 유사도를 계산할 수 있다. 자카드 계수는 0부터 1까지의 유사도 값을 가지며, 자카드 계수가 0일 경우에는 두 집합이 유사성이 전혀 없다는 것이며 1일 경우에는 두 집합이 완전히 같다는 의미를 가질 수 있다. 두 집합 A와 B의 자카드 계수 값 계산은 다음 수학식 1로 표현될 수 있다. 측정부(140)는 소렌센-다이스(Sorensen -Dice) 계수를 이용하여 집합 시퀀스 간의 유사도를 측정할 수도 있다.
측정부(140)는 슬라이딩 윈도우(131)와 디스조인트 윈도우(132) 간의 유클리디안 거리를 측정할 수 있다. 예를 들어, 측정부(140)는 두 사용자 와 의 선호 아이템 집합 시퀀스 와 가 존재할 때, 와 의 차이의 합인 유클리디안 집합 거리를 수학식 2와 같이 측정할 수 있다.
매칭부(150)는 측정된 유사도에 기초하여 복수의 사용자 중 선호도가 유사한 사용자를 매칭할 수 있다. 예를 들어, 매칭부(150)는 선호 아이템 집합 시퀀스에서 두 아이템 집합 시퀀스 간의 유사도가 특정 값 이상이면 유사하다고 판단할 수 있고, 두 사용자의 유사도를 판단할 때, 모든 번째 엔트리에 대해서 와 의 집합 유사도 매칭을 수행한 뒤 전체 시퀀스에서 유사한 아이템 집합이 많을수록 두 사용자의 유사도가 높다고 판단할 수도 있다.
매칭부(150)는 수학식 2에서 두 선호 아이템 집합 시퀀스 와 사이의 거리인 가 사용자가 제시한 허용치 값 이하인 경우 시퀀스 와 를 유사한 것으로 매칭할 수 있으며, 또한 두 개의 선호 아이템 집합 시퀀스의 유클리디안 집합 거리가 허용치 이하일 경우 유사한 사용자로 매칭할 수 있다.
도 5는 본원의 일 실시예에 따른 집합 시퀀스 매칭을 나타내는 도면이다. 도 5를 통해 예를 들면, 화살표 방향으로 시간이 흐를 때 사용자가 어떤 아이템을 선호하면 해당 시점에 아이템을 원으로 표시하는 것으로 가정하고, 일정 시간 간격으로 아이템들을 묶어서 도 5의 점선으로 표시된 것과 같이 아이템 집합으로 표현할 수 있다.
좀 더 상세히 말하면, 도 5는 두 사용자의 시퀀스 매칭은 시퀀스 내의 같은 순서의 아이템 집합 간의 유사도를 측정하여 유사한 사용자를 매칭하는 것 일 수 있다. 매칭부(150)는 두 아이템 집합의 자카드 계수 값이 이상일 경우 두 아이템 집합이 유사한 것으로 매칭할 수 있다. 또한, 매칭부(150)는 선호 아이템 집합 시퀀스의 전체 엔트리 개수 중에서 개 이상의 아이템 집합이 서로 유사할 경우 두 사용자가 유사한 것으로 매칭할 수 있다. 도 5에서 매칭부(150)는 선호 아이템 집합 시퀀스에서 두 사용자의 첫 번째 엔트리 간의 자카드 계수는 이므로 첫 번째 아이템 집합은 유사한 것으로 매칭할 수 있고, 두 번째 엔트리 간의 자카드 계수 값은 이므로 두 번째 엔트리 또한 서로 유사한 것으로 매칭할 수 있다. 다시 말해, 매칭부(150)는 두 사용자의 선호 아이템 집합 시퀀스의 전체 두 개의 엔트리 중에서 두 개의 엔트리 모두 유사한 아이템 집합이므로 1/2개 이상의 아이템 집합이 유사하므로 두 사용자 와 는 유사한 사용자로 매칭할 수 있다.
매칭부(150)는 선호 아이템 집합 시퀀스에서 두 선호 아이템 집합 시퀀스의 유사도 값으로 유사 사용자를 매칭할 수 있다. 두 사용자 와 가 유사 사용자인지 판단하는 식은 다음 수학식 3과 같다.
매칭부(150)는 수학식 3을 통해 사용자의 선호 아이템 집합의 유사도 값이 일정 임계 값 이상일 경우 유사한 사용자로 매칭할 수 있다. 수학식 3에서 JAC()는 수학식 1의 자카드 계수 값이다. 그리고 는 선호 아이템 집합 시퀀스 의 엔트리 개수이며 이를 의 길이라고 표현할 수 있다. 선호 아이템 집합 시퀀스 매칭에서는 두 사용자의 의 길이가 동일하다고 가정하면, 는 최근의 선호에 더 가중치를 주기 위한 값으로 최근 집합일수록 선형적으로 더 큰 값을 할당하는 역할을 수행하게 된다. 이는 선호 아이템 집합 시퀀스에서 해당 엔트리의 순서 값을 1부터 선호 아이템 집합 시퀀스의 전체 엔트리 개수까지의 합으로 나눈 값일 수 있다. 이를 통해 도 5의 아래 엔트리 가중치를 계산하면, 두 번째 엔트리의 가중치 값은 2/(1+2)=2/3가 될 수 있다.
측정부(140)는 두 집합 시퀀스의 전체 길이만큼 유사도를 계산하는 것이 아닌 윈도우 구성부(130)를 통해 구성된 윈도우들 간의 거리를 측정하여 유사도를 계산하기 때문에 그 과정에서 착오기각이 발생하지 않는다는 것이 보장되어야 한다.
이를 위해, 1) 데이터 시퀀스 길이가 윈도우 크기와 동일한 경우, 2) 데이터 시퀀스가 정확히 개의 디스조인트 윈도우로 구성되는 경우, 3) 데이터 시퀀스를 p개의 디스조인트로 나누었을 때 나머지가 있는 경우로 나누어 설명하고자 한다.
먼저, 데이터 시퀀스의 길이가 윈도우 크기와 동일한 경우를 설명하면, 이 경우 질의 시퀀스와 -매치하는 데이터 시퀀스를 찾는 문제이므로, 전체 매칭으로 볼 수 있다. 두 번째로 데이터 시퀀스가 정확히 개의 디스조인트 윈도우로 구성되는 경우를 설명하면, 사용자 의 선호 아이템 집합 시퀀스인 데이터 시퀀스 와 액티브 사용자 의 선호 아이템 집합 시퀀스인 질의 시퀀스 가 동일한 길이이며 이를 각각 p개의 디스조인트 윈도우 와 로 나누었을 때, 두 시퀀스 와 가 -매치하면, 적어도 하나 이상의 쌍이 -매치한다. 다시 말해 수학식 4가 성립할 수 있다.
세 번째로 데이터 시퀀스를 개의 디스조인트로 나누었을 때 나머지가 있는 경우를 설명하면, 사용자 의 선호 아이템 집합 시퀀스인 데이터 시퀀스 와 액티브 사용자 의 선호 아이템 집합 시퀀스인 질의 시퀀스 가 동일한 길이이며 두 시퀀스 와 가 -매치하면, 인 어떠한 서브시퀀스 쌍도 -매치하게된다. 즉, 수학식 5가 성립한다.
한편, 선호 아이템 시퀀스에 포함된 아이템을 구성하는 속성은 계층성이 존재할 수 있다. 예를 들어, 아이템이 영화일 경우에는 영화ID, 영화배우, 영화감독, 영화 장르, 나라와 같은 속성이 계층성을 가질 수 있다. 사용자 매칭 장치(10)는 아이템의 다양한 속성이 각각 어느 계층에 속하는 속성인지 구별하기 위해서 해당 속성이 아이템을 구분해낼 수 있는 능력을 측정하며 이를 각 속성의 계층 구별 기준으로 삼을 수 있다. 이때 하위 계층일수록 더 세밀하게 작은 단위로 아이템을 구분할 수 있는 능력을 가지며 상위 계층일수록 더 큰 단위로 아이템을 구분할 수 있는 능력을 가질 수 있다. 예를 들어, 영화에서 영화ID라는 속성은 각각의 아이템을 정확히 하나로 구분하는 능력을 가지므로 가장 하위 계층인 1계층에 속하며 영화 장르라는 속성은 아이템을 큰 단위로 구분하는 능력을 가지므로 영화ID보다 상위의 계층에 속할 수 있다.
사용자 매칭 장치(10)가 아이템을 구분하는 능력은 데이터 희소성 문제 해결 능력과 반비례할 수 있다. 다시 말해, 하위 계층의 속성을 이용하면 아이템을 구분하는 능력이 높으나 데이터 희소성 문제를 해결하는 능력은 낮아질 수 있고, 이와 반대로 상위 계층의 속성을 이용하면 아이템을 구분하는 능력은 낮으나 데이터 희소성 문제를 해결하는 능력을 높일 수 있다. 예를 들어, 아이템이 영화인 경우, 영화에서 하위 계층 속성인 영화ID를 이용하여 유사 사용자를 찾는 것은 정확히 영화ID가 일치해야 유사하다고 판단할 수 있으나, 영화의 상위 계층 속성인 장르를 이용하면 정확히 영화ID가 일치하지 않지만, 선호 영화들의 장르가 유사한 경우에도, 유사 사용자로 매칭할 수 있어, 데이터 희소성 문제를 해결할 수 있다.
도 6a 내지 도6b는 본원의 일 실시예에 따른 계층 구조가 고려된 집합 시퀀스 매칭을 나타내는 도면이다. 도 6a 내지도 6b를 참조하면, 사용자 매칭 장치(10)는 특정 속성의 아이템을 구분하는 능력을 해당 속성의 아이템 개수의 평균으로 표현할 수 있고, 특정 속성의 아이템 개수 평균은 해당 속성의 하나의 속성 값에 평균적으로 속하는 아이템의 개수일 수 있다. 특정 속성의 도메인(domain) 값들의 수인 카디널리티(cardinality)를 r로 표현한다면, 해당 속성의 도메인 집합은 로 표현된다. 이때 k 번째 속성 값 가 갖는 아이템 개수를 로 표현한다면, 특정 속성의 아이템 개수 평균은 로 계산되며 로 표현될 수 있다.
속성의 아이템 개수 평균이 작을수록 아이템 구분 능력이 높은 하위 계층이고 속성의 아이템 개수 평균이 클수록 아이템 구분 능력이 낮은 상위 계층이 될 수 있다. 예를 들어, GroupLens에서 제공하는 HetRec 2011 MovieLens + IMDb/Rotten Tomatoes 데이터에 기초하여 영화감독으로 영화를 구분하면 평균 2.5개로 구분할 수 있으며, 아이템에 대한 작은 단위로 구분되므로 영화감독은 상대적으로 하위 계층이 될 수 있고, 장르로 영화를 구분하면 평균 1040.45개가 구분되어 아이템이 큰 단위로 구분되므로 장르는 상대적으로 상위 계층이 될 수 있다.
하지만, 단순히 아이템에 대한 속성의 아이템 개수 평균만을 고려하면 신뢰할만한 아이템 구분 능력을 측정하는데 어려움이 생길 수 있다. 아이템에 대한 속성의 각 도메인 값들에 아이템 개수가 고르게 분포되어 있지 않고 몇 개의 속성 값에만 아이템 개수가 편향되어 있으면 해당 속성의 아이템 개수 평균은 속성의 특성을 제대로 표현할 수 없으므로 신뢰성이 떨어질 수 있다. 따라서 사용자 매칭 장치(10)가 아이템 구분 능력을 측정하는 경우, 아이템의 속성에 대한 아이템 개수 편향성이 고려되어야 한다.
사용자 매칭 장치(10)는 속성의 아이템 개수가 편향되어 있을 때 적은 아이템 개수를 갖는 속성 값들을 꼬리 속성 값(tail attribute value)이라고 표현할 수 있고, 속성 값의 아이템 개수가 해당 속성의 전체 아이템 개수의 3% 미만일 경우 해당 속성 값을 꼬리 속성 값으로 볼 수 있다. 다시 말해, 사용자 매칭 장치(10)를 통해 아이템 구분 능력을 평가하려는 속성에 꼬리 속성 값들이 많으면 속성의 아이템 개수 평균은 낮아지고 실제 속성의 특성을 제대로 표현할 수 없기 때문에, 편향된 속성에 있어서 꼬리 속성 값들을 제거하고 속성의 아이템 개수 평균을 구하여야 신뢰할만한 아이템 구분 능력을 측정할 수 있다.
사용자 매칭 장치(10)가 특정 속성의 아이템 구분하는 능력은 ATD(ability to distinguish)라고 할 수 있으며, 이는 해당 속성의 아이템 개수 평균인 로 표현될 수 있다. 특정 속성의 모든 아이템 개수 중에서 일부 소수의 속성 값에만 아이템 개수 값이 편향되어 있을 경우 적은 아이템 개수를 갖는 속성 값을 꼬리 속성 값이라고 표현하고, 해당 속성의 아이템 개수가 편향되어 있을 경우에는 아이템 구분 능력으로 꼬리 속성 값을 제외한 속성의 아이템 개수 평균을 사용할 수 있다.
아이템 구분 능력인 ATD는 값이 클수록 아이템 구분 능력이 낮음을 의미할 수 있고, 값이 작을수록 아이템 구분 능력이 높음을 의미할 수 있다. 다시 말해, 해당 속성의 아이템 개수 평균이 높아 큰 단위로 아이템을 구분할수록 아이템 구분 능력이 낮으며 해당 속성의 아이템 개수 평균이 낮아서 세밀하게 작은 단위로 아이템을 구분할수록 아이템 구분 능력이 높음을 의미할 수 있다. 예를 들어, HetRec 2011 데이터에서 1계층은 영화ID, 2계층은 영화배우, 3계층은 영화감독, 4계층은 영화 장르, 5계층은 나라가 될 수 있다.
사용자 매칭 장치(10)의 측정부(140)는 아이템의 계층구조를 고려하여 유사 사용자를 찾기 위해서는 아이템 속성의 계층에 따라 아이템 집합 시퀀스 매칭을 수행하여 계층별 유사도를 측정할 수 있다. 또한, 측정부(140)는 측정된 계층별 유사도에 계층에 따라 다른 가중치를 주어 두 사용자의 유사도를 측정할 수 있다. 아이템 k계층의 가중치는 다음 수학식 6을 통해 측정할 수 있다.
수학식 6은 속성의 아이템 개수 평균이 작아서 아이템 구분 능력이 높을수록 큰 가중치를 갖고 아이템 구분 능력이 낮을수록 작은 가중치를 갖는 것을 의미할 수 있으며, 이를 위해 아이템 구분 능력의 로그 값의 역수를 해당 속성의 가중치로 설정할 수 있다. 예를 들어, HetRec 2011 데이터에서 1계층인 영화ID의 ATD는 1이므로 가중치는 이고, 2계층인 영화배우의 ATD는 2.43이므로 가중치는 이며, 5계층인 나라의 ATD는 2807.67이므로 가중치는 가 될 수 있다.
수학식 7은 두 사용자의 각 계층별 유사도에 계층별 가중치를 곱한 합을 모든 계층 가중치의 합으로 나누어서 구한 유사도 값이 일정 임계 값 이상일 경우 유사한 사용자로 선정하는 것을 의미할 수 있다. 수학식 6에서 h는 아이템의 계층구조에 존재하는 레벨(level)의 수이고, k 번째 계층의 유사도인 는 해당 계층의 속성을 이용하여 아이템 집합 시퀀스 매칭을 수행한 값 일 수 있다. 한편,k 번째 계층의 가중치인 는 수학식 7을 통해 얻은 값을 사용할 수 있다. 이 때, 수학식 7에서 모든 계층의 가중치를 합한 값인 으로 각 계층별 유사도와 가중치를 곱한 값들의 합을 나누어 정규화를 통해 유사도 값이 0 내지 1 사이의 값을 갖도록 할 수 있다.
매칭부(150)는 아이템의 계층구조를 고려하여, 아이템 정보뿐만 아니라 더 많은 정보인 아이템의 계층적 속성을 이용하여 유사 사용자를 매칭할 수 있어, 유사 사용자 매칭의 정확도가 향상될 수 있다. 또한, 두 사용자의 선호 영화가 정확히 일치하지 않는 경우에도, 두 사용자의 선호에 대한 상위 계층적 속성이 유사한 것을 통해 유사 사용자로 매칭할 수 있어, 데이터 희소성으로 발생할 수 있는 문제를 해결할 수 있다.
한편, 매칭부(150)가 유사 사용자를 매칭하는데 있어, 검색할 선호의 범위를 모든 시점으로 확장하기 위해 아이템 계층의 ATD 값을 동적으로 고려하여 속성의 가중치를 가변적으로 변경할 수 있다. 일정한 시간으로 범위가 고정되어 있었을 때에는 ATD 값도 해당 시점으로 고정되기 때문에 가변적으로 고려하지 않으나, 모든 시점으로 검색 범위를 확장하면 ATD 값을 해당 시점에 맞게 가변적으로 변화시킬 수 있다.
측정부(140)는 가변적 계층 가중치를 측정하기 위해서는 먼저 기준이 되는 현재 시점에서 계층별 가중치를 측정할 수 있다. 측정부(140)가 다른 시점의 가중치를 측정하는 경우, ATD 값에 따라서 가변적으로 각 계층이 갖는 가중치의 비율을 변화시킬 수 있다. 아이템 속성의 계층구조에서 대부분의 계층은 시간이 지날수록 ATD 값이 증가하나, 시간이 지나도 ATD 값이 변하지 않는 계층도 존재하므로 두 경우를 나누어서 가변 가중치를 고려할 수 있다. 예를 들어, 아이템이 영화일 경우 영화 장르와 나라 속성은 시간이 지나도 ATD 값이 고정적으로 유지될 수 있다. 그러나 영화 배우는 시간이 지날수록 더 많은 영화를 찍으므로 ATD 값이 증가할 수 있다. 과거 시점일수록 ATD 값이 감소하는 계층은 현재 시점에 비해 감소한 해당 시점의 ATD의 비율에 따라서 전체 가중치에서 해당 계층이 차지하는 가중치의 비율을 감소시킨다. 그리고 시점에 상관없이 ATD 값이 동일한 계층은 상대적으로 아이템 구분 능력이 높아지므로, 감소된 전체 가중치의 비율만큼 가중치를 증가시킬 수 있다. HetRec 2011 데이터를 통해 예를 들면, 현재 시점의 기준 계층별 가중치는 하위 계층일수록 높을 수 있다. 아이템이 영화인 경우, 상위 계층인 장르와 나라를 제외하고, 하위 계층은 과거 시점일수록 ATD 값이 감소하므로, 과거 특정 시점의 수정된 계층별 가중치는 하위 계층보다 상위 계층에서 증가될 수 있다.
매칭부(150)는 측정된 유클리디안 거리가 소정 임계치보다 작은 경우, 유사한 사용자로 매칭할 수 있으나, 본원의 일 실시예에 따르면, 측정된 매칭부(150)는 유클리디안 거리가 소정 임계치보다 작은 사용자를 유사한 사용자의 후보군으로 결정하고, 측정부(140)는 결정된 후보군 및 제 1 사용자의 슬라이딩 윈도우(131) 간의 유사도를 측정하고, 매칭부(150)는 측정된 유사도가 소정 임계치보다 적거나 같은 경우, 선호도가 유사한 사용자로 매칭할 수 있다.
유사 사용자를 매칭하는 예를 들어 매칭부(150)는 후보를 매칭한 뒤, 유사 사용자를 매칭할 수 있다. 좀 더 상세히 말하면, 매칭부(150)는 후보 매칭 단계에서는 데이터 시퀀스와 질의 시퀀스를 각각 해당하는 윈도우로 나누어 유클리디안 집합 거리를 계산하여 후보 데이터 시퀀스인 후보 유사 사용자를 찾고, 유사 사용자를 매칭하는 단계에서, 후보 데이터 시퀀스들의 실제 유사도 계산을 수행하여 실제 결과 데이터 시퀀스인 유사 사용자를 매칭할 수 있다.
다시 말해, 매칭부(150)는 후보 매칭 단계에서 다른 사용자들의 선호인 데이터 시퀀스, 액티브 사용자의 선호인 질의 시퀀스, 질의 시퀀스의 허용치를 입력으로 받아서 해당 질의 시퀀스와 서브시퀀스 매칭할 가능성이 높은 후보 데이터 시퀀스와 해당 시점이 표시된 후보 테이블을 출력하고, 이 때, 측정부(140)는 각각의 데이터 시퀀스와 질의 시퀀스를 윈도우로 구성하여 유사도 계산을 수행할 수 있다. 유사도 계산을 위해 사용되는 유사 모델은 유클리디안 집합 거리일 수 있다.
도 7 내지 도 8을 통해 좀 더 자세히 설명하고자 한다. 도 7 내지 도 8은 본원의 일 실시예에 따른 알고리즘을 나타내는 도면이다. 도 7을 참조하면, 알고리즘의 단계 1 내지 11의 동작은 전체적으로 모든 데이터 시퀀스에 대해서 반복적으로 수행될 수 있다. 측정부(140)는 알고리즘의 단계 2에서 각 데이터 시퀀스가 나누어지는 디스조인트 윈도우(132)의 최대 개수인 를 측정할 수 있다. 알고리즘의 단계 3에서 윈도우 구성부(130)는 질의 시퀀스를 슬라이딩 윈도우(131)로 나누고 데이터 시퀀스는 디스조인트 윈도우로 나눌 수 있다. 알고리즘의 단계 4 내지 8 에서 측정부(140)는 각각의 윈도우에 대해서 유사도 값으로 유클리디안 집합 거리를 계산하고, 알고리즘의 단계 9 에서 매칭부(150)는 각각의 윈도우 중 적어도 하나 이상의 윈도우가 유사도 계산 값을 이하로 가질 때 해당 데이터 시퀀스와 해당 시점을 후보로 지정할 수 있다. 알고리즘의 단계 10에서 매칭부(150)는 후보 테이블인 Canditable에 후보 데이터 시퀀스의 식별자와 해당 시점을 표시할 수 있다.
도 8을 참조하면, 매칭부(150)는 후처리 단계에서 다른 사용자들의 선호인 데이터 시퀀스, 액티브 사용자의 선호인 질의 시퀀스, 질의 시퀀스의 허용치, 후보 테이블을 입력받고, 실제 결과 데이터 시퀀스가 아닌데 후보 테이블에 포함되어 있는 데이터 시퀀스인 착오해답을 제거하고 실제 결과 데이터 시퀀스와 결과의 해당 시점을 출력할 수 있다.
좀 더 상세히 설명하면, 도 8의 알고리즘의 단계 1 내지 단계 6은 전체적으로 후보 테이블에 속한 후보 데이터 시퀀스에 대해서 반복적으로 수행될 수 있다. 또한 각 데이터 시퀀스의 모든 후보 시점들에 대해서 반복적으로 수행될 수 있다. 알고리즘의 단계 3 에서 측정부(140)는 모든 후보들에 대해서 실제 두 시퀀스 간의 유사도 값으로 유클리디안 집합 거리를 계산하고, 알고리즘의 단계 4 에서 매칭부(150)는 해당 유사도 값이 이하일 경우 해당 데이터 스트림의 사용자를 유사 사용자로 선정하고 해당 시점을 결과로 출력할 수 있다.
도 9는 본원의 일 실시예에 따른 사용자 매칭 방법을 나타내는 도면이다. 도 9에 도시된 사용자 매칭 방법은 도 1 내지 도 8을 통해 설명된 사용자 매칭 장치(10)의 동작을 수행한다. 따라서, 도 9에서 설명되지 않은 내용은 도 1 내지 도 8을 통해 설명된 사용자 매칭 장치(10)의 설명에도 적용되므로, 자세한 설명은 생략된다.
도 9를 참조하면, 사용자 매칭 장치(10)는 단계 S901에서 제 1 사용자에 대한 적어도 하나의 선호 아이템을 포함하는 선호 아이템 시퀀스 정보를 수집할 수 있다. 사용자 매칭 장치(10)는 단계 S902에서 선호 아이템 시퀀스 정보에 포함된 선호 아이템을 시간 순서대로 소정 개수를 하나의 집합 시퀀스로 재구성할 수 있다. 이후, 단계 S903에서 사용자 매칭 장치(10)는 제 1 사용자에 대한 선호 아이템의 집합 시퀀스를 슬라이딩 윈도우로 구성하고, 다른 사용자에 대한 선호 아이템의 집합 시퀀스를 디스조인트 윈도우로 구성할 수 있고, 단계 S904에서 슬라이딩 윈도우와 디스조인트 윈도우 간의 유사도를 측정할 수 있다. 사용자 매칭 장치(10)는 단계 S905에서 측정된 유사도에 기초하여 복수의 사용자 중 선호도가 유사한 사용자를 유사 사용자로 매칭할 수 있다.
이와 같은 사용자 매칭 장치(10)는 시간의 흐름에 따른 사용자의 선호에 집합 개념을 도입하여 선호 아이템 집합 시퀀스 구조에 기초할 수 있다. 기존의 사용자 매칭 기법은 사용자의 선호에 단순히 시간 정보만을 추가하여 유사 사용자 매칭을 수행하면, 두 사용자가 공통으로 선호한 아이템이 정확히 같은 순서에 존재하는 경우에만 유사한 사용자로 선정하고, 순서가 다른 경우 유사하지 않다고 판단하는 문제점을 가져, 시간의 흐름에 따른 사용자의 선호를 일정 시간 간격으로 모아 집합으로 묶음으로써, 일정 시간 간격 안에서 사용자의 선호 아이템의 시간 정보가 정확하게 일치하지 않은 경우에도 유사한 사용자를 찾아 매칭할 수 있다. 이 때, 선호 아이템 집합 시퀀스 간의 유사도를 측정하기 위해 유클리디안 거리를 집합으로 확장한 유클리디안 집합 거리가 이용될 수 있다.
또한, 사용자 매칭 장치(10)는 사용자의 선호에 아이템의 계층구조를 고려할 수 있다. 기존에는 단순히 두 사용자 간의 공통되는 아이템의 정보만을 통해 시간에 따라 더 많은 공통 선호 아이템이 존재하는 경우에만 유사한 사용자로 매칭하였으나, 이러한 방법은 두 사용자가 실제 유사한 선호도를 가지는 경우라도, 공통적으로 선호한 아이템의 수가 적으면 유사 사용자로 매칭되지 않는 문제점이 있었다. 이에, 사용자 매칭 장치(10)는 아이템 그 자체뿐만 아니라, 계층구조를 갖는 아이템의 속성 또는 메타데이터를 유사도를 판단하는데 이용할 수 있다.
사용자 매칭 장치(10)는 사용자의 선호를 최근의 시점에서만 검색하는 것이 아닌, 과거의 모든 시점에 대해서도 검색할 수 있다. 사용자의 선호는 시간이 흐름에 따라 변할 수 있고, 제 1 사용자의 현재 선호도와 유사한 선호를 가지는 사용자는 과거에도 존재할 수 있다. 이를 위해, 사용자 매칭 장치(10)는 현재 시점뿐만 아니라, 과거 시점까지 검색하는 서브 시퀀스 매칭을 통해 유사 사용자를 매칭할 수도 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
10: 사용자 매칭 장치
110: 정보 수집부
120: 집합 시퀀스부
130: 윈도우 구성부
131: 슬라이딩 윈도우
132: 디스조인트 윈도우
140: 측정부
150: 매칭부
110: 정보 수집부
120: 집합 시퀀스부
130: 윈도우 구성부
131: 슬라이딩 윈도우
132: 디스조인트 윈도우
140: 측정부
150: 매칭부
Claims (12)
- 유사 선호도를 가지는 사용자를 매칭하는 사용자 매칭 장치에서, 유사 선호도를 가지는 사용자를 매칭하는 방법에 있어서,
제 1 사용자에 대한 적어도 하나의 선호 아이템에 대응하는 선호 아이템 시퀀스 정보를 수집하는 단계;
상기 선호 아이템 시퀀스 정보에 기초하여 시간 순서대로 배열된 적어도 둘 이상의 선호 아이템들의 집합인 집합 시퀀스를 재구성하는 단계;
상기 제 1 사용자에 대한 집합 시퀀스를 슬라이딩 윈도우로 구성하고, 다른 사용자에 대한 집합 시퀀스를 디스조인트 윈도우로 구성하는 단계;
상기 슬라이딩 윈도우와 상기 디스조인트 윈도우 간의 유사도를 측정하는 단계; 및
상기 측정된 유사도에 기초하여 복수의 사용자 중 선호도가 유사한 사용자를 유사 사용자로 매칭하는 단계를 포함하되,
상기 사용자 매칭 장치에서,
상기 선호 아이템 시퀀스 정보에 기초하여 제1사용자의 선호 아이템 시퀀스 및 제2사용자의 선호 아이템 시퀀스에서 동일한 순서의 선호 아이템간의 일치 여부를 판단하는 일대일 매칭이 수행되되,
제1사용자의 선호 아이템 및 제2사용자의 선호 아이템의 선호 순서가 정확히 일치하지 않아 유사한 사용자로 매칭되지 않을 경우,상기 집합 시퀀스를 재구성하는 단계가 수행되고, 상기 집합 시퀀스는 선호 아이템을 시간 순서대로 상기 집합 시퀀스의 크기만큼 소정 개수를 하나로 묶어서 구성되는 것이며, 상기 제1사용자의 집합 시퀀스 및 상기 제2사용자의 집합 시퀀스의 매칭은 집합 시퀀스에 포함된 선호 아이템의 선호 시간 순서에 상관없이 매칭되는 것인, 사용자 매칭 방법.
- 제 1 항에 있어서,
상기 선호 아이템 시퀀스 정보는 상기 사용자가 선호한 아이템을 선호 시간 순서대로 정렬한 것인 사용자 매칭 방법.
- 삭제
- 제 1 항에 있어서,
상기 슬라이딩 윈도우 및 상기 디스조인트 윈도우는 최근 시점부터 과거 시점 방향으로 구성되는 것인, 사용자 매칭 방법.
- 제 1 항에 있어서,
상기 유사도를 측정하는 단계는
상기 슬라이딩 윈도우와 상기 디스조인트 윈도우 간의 유클리디안 거리를 측정하는 것인, 사용자 매칭 방법.
- 제 5 항에 있어서,
상기 유사한 사용자로 매칭하는 단계는
상기 측정된 유클리디안 거리가 소정 임계치보다 작은 경우, 상기 유사한 사용자로 매칭하는 것인, 사용자 매칭 방법.
- 제 5 항에 있어서,
상기 유사한 사용자로 매칭하는 단계는,
상기 측정된 유클리디안 거리가 소정 임계치보다 작은 경우, 상기 유사한 사용자의 후보군으로 결정하는 것인, 사용자 매칭 방법.
- 제 7 항에 있어서,
상기 유사도를 측정하는 단계는
상기 결정된 후보군 및 상기 제 1 사용자의 슬라이딩 윈도우 간의 유사도를 측정하는 것인, 사용자 매칭 방법.
- 제 8 항에 있어서,
상기 유사한 사용자로 매칭하는 단계는
상기 측정된 유사도가 소정 임계치보다 작거나 또는 같은 경우 상기 선호도가 유사한 사용자로 매칭하는 것인, 사용자 매칭 방법.
- 제 1 항에 있어서,
상기 아이템은 적어도 하나 이상의 속성을 포함하되, 상기 속성은 계층 구조를 가지는 것인, 사용자 매칭 방법
- 제 10 항에 있어서,
상기 유사한 사용자로 매칭하는 단계는 상기 아이템의 상기 속성에 기초하여 상기 복수의 사용자 중 선호도가 유사한 사용자를 상기 유사 사용자로 매칭하는 것인, 사용자 매칭 방법.
- 유사 선호도를 가지는 사용자를 매칭하는 사용자 매칭 장치에 있어서,
제 1 사용자에 대한 적어도 하나의 선호 아이템에 대응하는 선호 아이템 시퀀스 정보를 수집하는 정보 수집부;
상기 선호 아이템 시퀀스 정보에 기초하여 시간 순서대로 배열된 적어도 둘 이상의 선호 아이템들의 집합인 집합 시퀀스를 재구성하는 집합 시퀀스부;
상기 제 1 사용자에 대한 집합 시퀀스를 슬라이딩 윈도우로 구성하고, 다른 사용자에 대한 집합 시퀀스를 디스조인트 윈도우로 구성하는 윈도우 구성부;
상기 슬라이딩 윈도우와 상기 디스조인트 윈도우 간의 유사도를 측정하는 측정부; 및
상기 측정된 유사도에 기초하여 복수의 사용자 중 선호도가 유사한 사용자를 유사 사용자로 매칭하는 매칭부를 포함하되,
상기 사용자 매칭 장치에서,
상기 선호 아이템 시퀀스 정보에 기초하여 제1사용자의 선호 아이템 시퀀스 및 제2사용자의 선호 아이템 시퀀스에서 동일한 순서의 선호 아이템간의 일치 여부를 판단하는 일대일 매칭이 수행되되,
제1사용자의 선호 아이템 및 제2사용자의 선호 아이템의 선호 순서가 정확히 일치하지 않아 유사한 사용자로 매칭되지 않을 경우, 상기 집합 시퀀스를 재구성하는 단계가 수행되고, 상기 집합 시퀀스는 선호 아이템을 시간 순서대로 상기 집합 시퀀스의 크기만큼 소정 개수를 하나로 묶어서 구성되는 것이며, 상기 제1사용자의 집합 시퀀스 및 상기 제2사용자의 집합 시퀀스의 매칭은 집합 시퀀스에 포함된 선호 아이템의 선호 시간 순서에 상관없이 매칭되는 것인, 사용자 매칭 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170008006A KR101937987B1 (ko) | 2017-01-17 | 2017-01-17 | 유사 사용자를 매칭하는 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170008006A KR101937987B1 (ko) | 2017-01-17 | 2017-01-17 | 유사 사용자를 매칭하는 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180084421A KR20180084421A (ko) | 2018-07-25 |
KR101937987B1 true KR101937987B1 (ko) | 2019-01-11 |
Family
ID=63058830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170008006A KR101937987B1 (ko) | 2017-01-17 | 2017-01-17 | 유사 사용자를 매칭하는 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101937987B1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102290655B1 (ko) * | 2019-02-01 | 2021-08-18 | 주식회사 메디오피아테크 | 유사도에 기반한 문제 추천 방법 및 문제 추천 서버 |
CN112578351B (zh) * | 2020-02-28 | 2024-09-13 | 加特兰微电子科技(上海)有限公司 | 目标匹配方法、集成电路、无线电器件及设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101345119B1 (ko) | 2013-01-30 | 2014-01-27 | 공미선 | 이미지 취향 아이디 코드 생성, 진단 시스템 및 방법, 그리고 정보 제공 시스템 및 정보 제공 방법 |
-
2017
- 2017-01-17 KR KR1020170008006A patent/KR101937987B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101345119B1 (ko) | 2013-01-30 | 2014-01-27 | 공미선 | 이미지 취향 아이디 코드 생성, 진단 시스템 및 방법, 그리고 정보 제공 시스템 및 정보 제공 방법 |
Non-Patent Citations (1)
Title |
---|
여은지 외 2명, 아이템 집합 시계열 개념을 사용한 유사 데이터스트림 매칭 방법, 한국정보과학회 2016년 한국컴퓨터종합학술대회 논문집, 2016.6, 237-239 |
Also Published As
Publication number | Publication date |
---|---|
KR20180084421A (ko) | 2018-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11861507B2 (en) | Deriving semantic relationships based on empirical organization of content by users | |
TWI636416B (zh) | 內容個人化之多相排序方法和系統 | |
Feng et al. | STREAMCUBE: Hierarchical spatio-temporal hashtag clustering for event exploration over the Twitter stream | |
US8683389B1 (en) | Method and apparatus for dynamic information visualization | |
US20170140058A1 (en) | Systems and Methods for Identifying Influencers and Their Communities in a Social Data Network | |
TWI533246B (zh) | 使用者未知興趣之探索方法與系統 | |
US10956454B2 (en) | Probabilistically generated identity database system and method | |
WO2019223552A1 (zh) | 文章推荐方法、装置、计算机设备及存储介质 | |
KR101098871B1 (ko) | 랭크된 사용자의 피드백 정보에 기반한 컨텐츠 유사도 측정 장치, 방법 및 그 방법을 실행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 | |
KR20110069067A (ko) | 컨텐트 검색 결과를 배열하는 방법, 장치 및 컴퓨터 판독 가능 저장 매체 | |
US20130097182A1 (en) | Method for calculating distances between users in a social graph | |
CN110569496A (zh) | 实体链接方法、装置及存储介质 | |
US8997008B2 (en) | System and method for searching through a graphic user interface | |
CN112000763B (zh) | 兴趣点竞争关系确定方法、装置、设备和介质 | |
CN108764324A (zh) | 一种基于K-Means算法和共现词的文本数据快速处理方法 | |
CN107092609A (zh) | 一种信息推送方法及装置 | |
KR101937987B1 (ko) | 유사 사용자를 매칭하는 장치 및 방법 | |
CN106708871A (zh) | 一种社交业务特征用户的识别方法和装置 | |
CN105159898A (zh) | 一种搜索的方法和装置 | |
CN107608995A (zh) | 一种产品链对象数据库的建立、查询方法、装置和系统 | |
Chung et al. | Person identification between different online social networks | |
JP5545876B2 (ja) | クエリ提供装置、クエリ提供方法及びクエリ提供プログラム | |
Peng et al. | A graph indexing approach for content-based recommendation system | |
Mohbey et al. | Constraint based interesting location and mobile web service sequence mining in M-commerce environment | |
KR101300498B1 (ko) | 관심기술 네트워크 구조화 서비스 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
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 |