KR101365993B1 - 데이터처리방법, 데이터처리장치, 데이터수집방법, 및 정보제공방법 - Google Patents
데이터처리방법, 데이터처리장치, 데이터수집방법, 및 정보제공방법 Download PDFInfo
- Publication number
- KR101365993B1 KR101365993B1 KR1020120060839A KR20120060839A KR101365993B1 KR 101365993 B1 KR101365993 B1 KR 101365993B1 KR 1020120060839 A KR1020120060839 A KR 1020120060839A KR 20120060839 A KR20120060839 A KR 20120060839A KR 101365993 B1 KR101365993 B1 KR 101365993B1
- Authority
- KR
- South Korea
- Prior art keywords
- information
- data
- location
- interest
- probability
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Navigation (AREA)
Abstract
빅데이터를 처리하는 방법이 공개된다. 이 방법은, 예컨대, 사람의 특성 또는 기상변화현황과 같은 관심대상에 관한 복수 개의 빅데이터를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 정보영역에 관한 정보를 생성하는 단계를 포함한다. 그 다음, 상기 관심대상의 현재 데이터를 제공받고, 상기 현재 데이터가 매핑되는 상기 복수 개의 정보영역의 제1 정보영역을 결정하는 단계와, 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 복수 개의 정보영역의 제2 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 관련된 정보를 생성하는 단계를 포함할 수 있다.
Description
본 발명은 상당히 많은 숫자의, 시간정보가 부가된(time-stamped) 빅데이터(big data)를 군집화하는 기술 및 군집화된 영역 간의 전이확률을 제공하여 빅데이터가 나타내는 패턴을 추출 및 표현하는 빅데이터 패턴정보 기술에 관한 것이다.
빅데이터라는 용어는, 어느 정도 경과한 시간 내에 속한 데이터를 수집, 관리, 저장, 검색, 공유, 분석, 및 시각화하기 위한 보통의 소프트웨어 툴 및 컴퓨터 시스템으로는 다루기 어려운 수준의 데이터양을 갖는 데이터 셋(data set)에 대하여 주로 적용된다. 빅데이터의 사이즈 테라바이트, 엑사바이트, 또는 제타바이트의 범위를 가질 수도 있다.
빅데이터는 다양한 분야에 존재할 수 있는데, 웹로그(web logs), RFID, 센서 네트워크, 소셜 네트워크, 소셜 데이터, 인터넷 텍스트와 문서, 인터넷 검색 인덱싱(internet search indexing), 천문학, 기상한, 유전체학, 생물지구화학(biogeochemistry), 생물학, 군사 감시, 의료 기록, 사진 기록, 비디오 기록, 및 전자상거래 등이 그 예이다.
이동물체, 예컨대 사람의 위치데이터도 빅데이터의 일 예로 볼 수 있다. 컴퓨터공학 및 전자공학을 포함하는 다양한 연구 분야에서, 사람이동모델은 정확한 연구결과 또는 부가가치가 큰 상품을 만들어낼 수 있다. 따라서 연구 및 산업의 다양한 분야에서 현실적인 사람이동패턴 정보에 대한 요구가 존재하여 왔다. 예를 들어, 전염병의 확산패턴 또는 인터넷에서의 바이러스 확산패턴은 사람이동패턴에 의해 영향을 받을 가능성이 크며, 따라서 관련된 이에 관한 연구가 수행되었다. 또한, 청소년 보호의 목적에서, 젊은이들이 자주 방문하는 장소의 영향을 파악하기 위해 젊은이들이 자주 방문하는 장소를 조사해 왔으며, 이러한 연구는 젊은이들이 가지고 다니는 휴대용 GPS 장치에 의해 수집되는 이동 데이터를 기초로 할 수 있었다. 성능예측 및 시뮬레이션 목적을 위한 MANET(Mobile Ad-hoc Network) 분야에서 사람이동모델에 대한 많은 요구가 존재해왔고, 그 밖에 다양한 연구 분야에도 현실적인 사람이동모델에 대한 강한 요구가 존재해 왔다. 복잡계 물리(complex system physics) 분야에서의 최근 연구 중 하나는 사람이동패턴의 최대 93%가 예측될 수 있다는 것을 보여준다. 스마트폰 또는 내비게이션 시스템과 같은 위치파악 시스템을 포함하는 이동장치를 폭넓게 사용하게 됨으로써, 매우 높은 정확성을 가지고 사람이동패턴에 대한 더 많은 정보를 수집할 수 있게 되었다. 보통 이러한 장치들은 GPS 또는 WPS(Wifi-based Positioning System)의 기능이 내장되어 있다. 위치파악을 위한 다른 간단한 방법은 휴대폰이 인접 기지국에 연결될 때 기지국 위치를 얻어내는 방법을 사용한다. 이러한 새로운 기술을 이용할 수 있게 됨으로써 사람이동연구를 위한 그 다음 단계가 가능하게 되었다. 예를 들어, 운반자의 위치정보를 수집하기 위한 기능을 갖는 GPS 또는 WPS 장치를 사용함으로써, 이러한 장치로부터 얻은 정보를 저장하고 처리함으로써 사람의 이동패턴을 알아낼 수 있다.
사람이동성에 대한 연구는 크게 개인모델 및 그룹모델의 두 그룹으로 구분될 수 있다. 개인모델은 성별, 나이, 직업 등의 개인적 파라미터에 의해 영향을 받으며 사람의 심리적 파라미터에 의해서도 영향을 받는다. 예를 들어, 길을 선택하는 사람의 습관 또는 경향이 연구되었고 직선의 깔끔한 도로가 선호된다는 결과가 나왔다. 또한, 사람의 소셜 네트워크를 기초로 자주 가는 곳을 파악하는 사회적 궤도 기반 연구도 수행되어 왔다. 그룹이동모델은 군대그룹에서 분명히 발견될 수 있다. 이러한 그룹에서, 리더는 그룹의 이동패턴에 크게 영향을 미칠 수 있다.
본 발명에서는 복수 개의 빅데이터를 사용자의 목적에 맞게 필터링하고, 복수 개의 클러스터로 군집화하고, 군집화된 각 클러스터들 간의 전이확률을 제공하여 빅데이터에 내재된 패턴을 추출 및 표현할 수 있는 기술을 제공하고자 한다.
나아가, 사람의 이동성에 관한 데이터를 빅데이터의 일 예로서 사용하여, 사람의 이동성 데이터에 내재된 패턴을 도출하고 표현할 수 있는 기술을 제공하고자 한다.
본 발명이 상술한 목적에 의해 제한되는 것은 아니다.
상술한 목적을 해결하기 위한 본 발명의 일 관점에 따른 데이터 처리방법이 제공된다. 이 방법은, 관심대상의 현재 데이터를 제공받는 단계; 및 미리 결정된 복수 개의 정보영역(information area) 중 상기 현재 데이터가 매핑되는 제1 영역(area)을 결정하는 단계; 포함한다. 이때, 상기 복수 개의 정보영역은 미리 수집된 복수 개의 데이터를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다. 여기서 '데이터 처리방법'은 '데이터의 정보영역 매핑방법'으로 불릴 수도 있다.
본 발명의 다른 관점에 따른 데이터 처리방법이 제공된다. 이 방법은, 관심대상에 관한 복수 개의 데이터를 제공받는 단계; 및 상기 복수 개의 데이터를 확률기반 군집화(clustering) 알고리듬으로 처리함으로써, 복수 개의 정보영역(information area)에 관한 데이터-패턴을 생성하는 단계를 포함한다. 여기서 이 '데이터 처리방법'은 '데이터-패턴 생성 방법'으로 지칭될 수도 있다.
이때, 이 데이터 처리방법은, 상기 관심대상에 관한 새로운 한 개 이상의 데이터를 제공받는 단계; 및 상기 한 개 이상의 데이터를 이용하여 상기 복수 개의 정보영역에 관한 정보를 정제(refine)하는 단계를 더 포함할 수 있다. 또는, 상기 복수 개의 데이터는 시간에 관한 속성을 포함할 수 있다.
또는, 상기 정보영역은, 관심속성에 대응하는 클러스터-영역들과, 상기 클러스터-영역에 속하지 않은 여집합 데이터 영역들의 합집합일 수 있다. 이때, 상기 생성하는 단계는, 상기 데이터의 속성에 근거하여 상기 데이터 중 오류 데이터를 필터링하는 단계; 상기 복수 개의 데이터를 복수 개의 초기 정보영역으로 분할하는 단계; 상기 초기 정보영역을 확률 기반 군집화를 이용하여 복수 개의 제2 정보영역으로 정제하는 단계; 상기 복수 개의 제2 정보영역의 각 영역에 속한 데이터의 통계량을 추출하는 단계; 상기 통계량을 이용하여, 상기 클러스터-영역들 간의 관계를 확률적 함수로 표현하고, 상기 클러스터-영역들을 수학적 상태로 표현하는 단계;를 포함할 수 있다. 이때, 상기 수학적 상태는 상기 각 클러스터-영역을 의미하고, 상기 확률적 함수는 상기 각 클러스터-영역 간의 관계확률(relation-probability)을 표현할 수 있다.
이때, 상기 군집화를 수행을 위하여, 상기 데이터의 속성에 따라 미리 결정된 확률 함수가 수식으로서 사용될 수 있다.
본 발명의 다른 관점에 따른 데이터 처리장치가 제공된다. 이 장치는, 통신부; 및 처리부를 포함한다. 이때, 상기 통신부는, 관심대상의 현재 데이터를 제공받도록 되어 있고, 상기 처리부는, 미리 결정된 복수 개의 정보영역(information area) 중 상기 현재 데이터가 매핑되는 제1 영역(area)을 결정하도록 되어 있으며, 상기 복수 개의 정보영역은, 미리 수집된 복수 개의 데이터를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다.
본 발명의 또 다른 관점에 따른 데이터 처리장치는, 통신부; 및 처리부를 포함한다. 이때, 상기 통신부는, 관심대상에 관한 복수 개의 데이터를 제공받도록 되어 있고, 상기 처리부는, 상기 복수 개의 데이터를 확률기반 군집화(clustering) 알고리듬으로 처리함으로써, 복수 개의 정보영역(information area)에 관한 데이터-패턴을 생성하도록 되어 있다.
이때, 상기 복수 개의 정보영역은, 상기 복수 개의 데이터의 관심속성에 대응하는 클러스터-영역들과, 상기 클러스터-영역에 속하지 않은 여집합 데이터 영역들의 합집합일 수 있다. 그리고 상기 처리부는, 상기 복수 개의 데이터의 속성에 근거하여 상기 복수 개의 데이터 중 오류가 있는 데이터를 필터링하도록 되어 있고, 상기 복수 개의 데이터를 복수 개의 초기 정보영역으로 분할하도록 되어 있고, 상기 초기 정보영역을 확률 기반 군집화를 이용하여 복수 개의 제2 정보영역으로 정제하도록 되어 있고, 상기 복수 개의 제2 정보영역의 각 영역에 속한 데이터의 통계량을 추출하도록 되어 있고, 상기 통계량을 이용하여, 상기 클러스터-영역들 간의 관계를 확률적 함수로 표현하고, 상기 클러스터-영역들을 수학적 상태로 표현하도록 되어 있을 수 있다.
이때, 상기 관심대상은 사용자이며, 상기 데이터는 상기 사용자의 위치데이터로서, 시간, 위도, 및 경도 정보를 포함하는 위치데이터(또는 위도 및 경도와 동일하게 지구상의 위치를 특정하는 지구위치좌표정보데이터)이며, 상기 정보영역은 위치영역일 수 있다.
본 발명의 또 다른 관점에 따른, 관심대상에 대한 정보 수집방법이 제공된다. 이 방법은, 관심대상의 데이터의 관심속성이 복수 개의 정보영역 중 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률이 미리 결정된 규칙을 만족하는, 상기 관심대상에 관한 정보를 서버에게 요청하는 단계; 및 상기 관심대상에 관한 정보를 상기 서버로부터 수신하는 단계;를 포함한다. 이때, 상기 전이할 관계확률이 상기 미리 결정된 규칙을 만족하는지 여부는, 상기 서버가, 상기 관심대상의 현재 데이터 관한 정보를 제공받는 단계, 상기 복수 개의 정보영역 중 상기 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계, 및 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률이 상기 미리 결정된 규칙을 만족하는지를 판단하는 단계를 포함하는 프로세스를 수행하여 판단한다.
이때, 상기 복수 개의 정보영역은, 미리 수집된 상기 관심대상에 관한 복수 개의 데이터를 확률기반 알고리듬으로 처리하여 생성한 것일 수 있다.
본 발명의 또 다른 관점에 따른, 관심대상에 대한 정보 수집방법이 제공된다. 이 방법은, 관심대상에 관한 데이터의 관심속성이 미리 결정된 복수 개의 정보영역에 속하는 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 대한 정보를 서버에게 요청하는 단계; 및 상기 관계확률에 관한 정보를 상기 서버로부터 수신하는 단계를 포함한다. 이때, 상기 관계확률은, 상기 서버가, 상기 복수 개의 정보영역 중 상기 관심대상의 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계, 및 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 관한 정보를 추출하는 단계를 포함하는 프로세서를 수행하여 계산된다.
이때, 상기 복수 개의 정보영역은, 미리 수집된 상기 관심대상에 관한 복수 개의 데이터를 확률기반 군집화 알고리듬으로 처리하여 생성한 것일 수 있다.
본 발명의 또 다른 관점에 따른, 관심대상에 대한 정보 제공방법이 제공된다. 이 방법은, 관심대상의 현재 데이터를 제공받는 단계; 미리 결정된 복수 개의 정보영역 중 상기 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계; 및 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 복수 개의 위치영역에 속한 제2 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 관한 정보를 제공하는 단계를 포함한다. 이때, 상기 복수 개의 정보영역은, 미리 수집된 상기 관심대상에 관한 복수 개의 데이터를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다.
이때, 상기 관계확률에 관한 정보는, 상기 관계확률이 미리 결정된 임계값을 초과했는지 여부에 관한 정보일 수 있다.
이때, 상기 관심대상은 사용자이며, 상기 데이터는 상기 사용자의 위치데이터로서, 시간, 위도, 및 경도 정보를 포함하는 위치데이터이며, 상기 정보영역은 위치영역이며, 상기 관심속성은 상기 위도 및 경도일 수 있다.
상술한 목적을 해결하기 위한 본 발명의 또 다른 관점에 따른 사용자 위치 결정방법은, 사용자의 현재 위치를 제공받는 단계; 및 미리 결정된 복수 개의 위치영역(location cluster) 중 위의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계를 포함하며, 위의 복수 개의 위치영역은, 미리 수집된 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다.
본 발명의 또 다른 관점에 따른 위치정보모델 생성방법은, 사용자에 관한 복수 개의 위치정보를 제공받는 단계; 및 위의 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하는 단계를 포함한다.
본 발명의 또 다른 관점에 따른 위치정보 처리서버는, 통신부; 및 처리부를 포함하며, 위의 통신부는 사용자의 현재 위치를 수신하도록 되어 있고, 위의 처리부는, 미리 결정된 복수 개의 위치영역 중 위의 현재 위치가 매핑되는 제1 위치영역을 결정하도록 되어 있으며, 위의 복수 개의 위치영역은, 미리 수집된 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다.
발명의 또 다른 관점에 따른 위치정보 처리서버는, 통신부; 및 처리부를 포함하며, 위의 통신부는 사용자에 관한 복수 개의 위치정보를 수신하도록 되어 있고, 위의 처리부는, 위의 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하도록 되어 있다.
발명의 또 다른 관점에 따른 사용자 정보 수집방법은, 복수 개의 위치영역 중, 미리 결정된 특정 위치를 포함하는 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는 사용자에 관한 정보를 서버에게 요청하는 단계; 및 위의 사용자에 관한 정보를 위의 서버로부터 수신하는 단계를 포함하며, 위의 이동할 확률이 미리 결정된 규칙을 만족하는지 여부는, 위의 서버가, 위의 사용자의 현재 위치에 관한 정보를 제공받는 단계, 위의 복수 개의 위치영역 중 위의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계, 및 위의 제1 위치영역으로부터 위의 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는지를 판단하는 단계를 포함하는 프로세스를 수행하여 판단한다.
발명의 또 다른 관점에 따른 사용자 정보 수집방법은, 사용자가 미리 결정된 복수 개의 위치영역에 속하는 특정 위치영역으로 이동할 확률에 관한 정보를 서버에게 요청하는 단계; 및 위의 확률에 관한 정보를 위의 서버로부터 수신하는 단계를 포함하며, 위의 확률은, 위의 서버가, 위의 복수 개의 위치영역 중 위의 사용자의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계, 및 위의 사용자가 위의 제1 위치영역으로부터 위의 특정 위치영역으로 이동할 확률에 관한 정보를 추출하는 단계를 포함하는 프로세서를 수행하여 계산된다.
본 발명의 또 다른 관점에 따른 사용자 이동정보 제공방법은, 사용자의 현재 위치를 제공받는 단계; 미리 결정된 복수 개의 위치영역(location cluster) 중 위의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계; 및 위의 사용자가 위의 제1 위치영역으로부터 위의 복수 개의 위치영역에 속한 제2 위치영역으로 이동할 이동확률에 관한 정보를 제공하는 단계를 포함하며, 위의 복수 개의 위치영역은, 미리 수집된 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다.
본 발명에 의하면 복수 개의 빅데이터 패턴정보를 복수 개의 클러스터로 군집화하고, 군집화된 각 클러스터들 간의 전이확률을 확률함수의 형태로 제공할 수 있는 기술이 제공될 수 있다.
나아가, 사람의 이동성 데이터에 내재된 패턴을 출하고 표현할 수 있는 기술을 제공할 수 있다.
본 발명이 상술한 효과에 의해 제한되는 것은 아니다.
도 1은 빅데이터의 일 예인 사람의 이동성 데이터를 추출하기 위한 기초 실험의 결과를 보여준다.
도 2는 학생의 일상의 이동에 대한 수집된 데이터 세트로부터 얻은 클러스터링 실험을 위한 원본 자료이다.
도 3은 클러스터된 위치데이터 세트의 수적 결과를 보여준다.
도 4는 도 3의 결과를 시각화한 것으로서 실제 지도에 위치한 클러스터를 보여준다.
도 5는 GPS 궤적 데이터와 EM 클러스터링 알고리즘을 이용하여 학생의 일상생활을 위한 주요 장소를 식별한 결과를 토대로 Markov Chain 형태의 이동성 모델을 생성한 결과를 나타낸 것이다.
도 6a, 도 6b, 및 도 6c는 본 발명의 일 실시예에 따른 위치정보 제공방법을 설명하기 위한 것이다.
도 7은 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다.
도 8a 및 도 8b는 도 7에서 설명한 단계를 구체적인 예를 들어 설명하기 위한 것이다.
도 9는 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다.
도 10은 도 6a에 도시한 서버의 내부구조의 일 예를 나타낸다.
도 11은 본 발명의 일 실시예에 따라 수집된 빅데이터(제1실험자의 서울에서의 위치데이터)를 지도 상에 나타낸 일 예이다.
도 12는 본 발명의 일 실시예에 따라 수집된 빅데이터(제2실험자의 서울 및 제주도에서의 위치데이터)를 지도 상에 나타낸 예이다.
도 13은 도 11에 제시한 빅데이터를 클러스터링한 결과 중 일부를 지도상에 나타낸 일 예이다.
도 14는 도 11에 제시한 빅데이터를 클러스터링한 결과를 모두 지도상에 나타낸 다른 예이다.
도 15는 도 12에 제시한 빅데이터를 클러스터링한 결과 중 서울에서의 결과를 지도 상에 나타낸 예이다.
도 16은 도 12에 제시한 빅데이터를 클러스터링한 결과 중 제주도의 제주시를 중심으로 한 결과를 지도 상에 나타낸 예이다.
도 17은 도 12에 제시한 빅데이터를 클러스터링한 결과 중 제주도에서의 결과를 지도 상에 나타낸 예이다.
도 18은 도 11의 제1실험자로부터 얻은 빅데이터를 클러스터링 하는데 사용된 확률밀도함수의 일 예이다.
도 19는 도 12의 제2실험자로부터 얻은 빅데이터를 클러스터링 하는데 사용된 확률밀도함수의 일 예이다.
도 20은 도 11의 제1실험자로부터 얻은 빅데이터로부터 추출되어 CTMC로 표현된 패턴을 나타낸 것이다.
도 21a 및 도 21b는 도 12의 제2실험자로부터 얻은 빅데이터로부터 추출되어 CTMC로 표현된 패턴을 나타낸 것이다.
도 22는 도 12의 제2실험자로부터 얻은 빅데이터로부터 생성한 13개의 클러스터에 대한 세부정보를 나타낸 것이다.
도 2는 학생의 일상의 이동에 대한 수집된 데이터 세트로부터 얻은 클러스터링 실험을 위한 원본 자료이다.
도 3은 클러스터된 위치데이터 세트의 수적 결과를 보여준다.
도 4는 도 3의 결과를 시각화한 것으로서 실제 지도에 위치한 클러스터를 보여준다.
도 5는 GPS 궤적 데이터와 EM 클러스터링 알고리즘을 이용하여 학생의 일상생활을 위한 주요 장소를 식별한 결과를 토대로 Markov Chain 형태의 이동성 모델을 생성한 결과를 나타낸 것이다.
도 6a, 도 6b, 및 도 6c는 본 발명의 일 실시예에 따른 위치정보 제공방법을 설명하기 위한 것이다.
도 7은 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다.
도 8a 및 도 8b는 도 7에서 설명한 단계를 구체적인 예를 들어 설명하기 위한 것이다.
도 9는 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다.
도 10은 도 6a에 도시한 서버의 내부구조의 일 예를 나타낸다.
도 11은 본 발명의 일 실시예에 따라 수집된 빅데이터(제1실험자의 서울에서의 위치데이터)를 지도 상에 나타낸 일 예이다.
도 12는 본 발명의 일 실시예에 따라 수집된 빅데이터(제2실험자의 서울 및 제주도에서의 위치데이터)를 지도 상에 나타낸 예이다.
도 13은 도 11에 제시한 빅데이터를 클러스터링한 결과 중 일부를 지도상에 나타낸 일 예이다.
도 14는 도 11에 제시한 빅데이터를 클러스터링한 결과를 모두 지도상에 나타낸 다른 예이다.
도 15는 도 12에 제시한 빅데이터를 클러스터링한 결과 중 서울에서의 결과를 지도 상에 나타낸 예이다.
도 16은 도 12에 제시한 빅데이터를 클러스터링한 결과 중 제주도의 제주시를 중심으로 한 결과를 지도 상에 나타낸 예이다.
도 17은 도 12에 제시한 빅데이터를 클러스터링한 결과 중 제주도에서의 결과를 지도 상에 나타낸 예이다.
도 18은 도 11의 제1실험자로부터 얻은 빅데이터를 클러스터링 하는데 사용된 확률밀도함수의 일 예이다.
도 19는 도 12의 제2실험자로부터 얻은 빅데이터를 클러스터링 하는데 사용된 확률밀도함수의 일 예이다.
도 20은 도 11의 제1실험자로부터 얻은 빅데이터로부터 추출되어 CTMC로 표현된 패턴을 나타낸 것이다.
도 21a 및 도 21b는 도 12의 제2실험자로부터 얻은 빅데이터로부터 추출되어 CTMC로 표현된 패턴을 나타낸 것이다.
도 22는 도 12의 제2실험자로부터 얻은 빅데이터로부터 생성한 13개의 클러스터에 대한 세부정보를 나타낸 것이다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있는 것으로, 이하의 실시예는 본 발명의 개시가 완전하도록 하며, 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.
본 발명의 사상은 빅데이터라고 하는 집합적이고 추상적인 개념을 기초로 제시된 것인데, 본 발명을 구체화하는 한편 본 발명의 이해를 돕기 위하여 본 명세서에서는 이하 사람의 위치 및/또는 이동에 관한 데이터를 예로 삼아 설명한다. 이하 설명하는 위치데이터는 빅데이터의 일 예로 간주할 수 있다.
<사람 이동데이터의 취득>
본 발명의 일 실시예를 위한 실험에서는, 복잡한 사람이동모델 구조를 기초로 학생의 일상생활 이동성을 파악하였다. 학생의 일상생활 이동패턴은 상용의 휴대용 GPS 장치를 가지고 다니는 학생 스스로에 의해 수집되었다. GPS 장치에 의해 수집되는 GPS 데이터는 20일 이상 저장된다. 위치 데이터는 몇몇 필수적이지 않은 정보뿐만 아니라 <시간, 위도, 경도> 튜플을 포함한다. 그러나 다음의 이유 때문에 이러한 가공되지 않은 숫자로 표현된 형식을 사용할 수 없다:
- 수로 표현된 데이터는 직관적이지 않으며 사람에 의해 인지되기 어렵다. 이 데이터들은 사람에게 친숙한 형태로 해석될 필요가 있다.
- GPS 시스템의 특성 때문에, 데이터는 위치에 대한 내재적인 오류를 포함할 수 있다. GPS 장치가 갖는 내재적인 오류 및 위치적 환경에 의한 영향 때문에, GPS 장치가 잠시 동안 정지하더라도 수집된 데이터는 GPS 장치가 이동하였다는 결과를 나타낼 수도 있다. 위치적 환경에 기인한 오류가 매우 심각할 수 있다. 특히, 장치가 건물 안에 있을 때에는 건물 또는 장애물에 의해 차단 또는 왜곡되는 약한 GPS 신호 때문에 연속적 오류뿐만 아니라 많은 양의 위치적 오류가 수집될 수 있다.
- 따라서 하나의 위치데이터가 반드시 사람의 정확한 위치를 나타낸다고 보장할 수 없다. 수집된 위치데이터의 오류여부를 검출하기 위해서는 상당한 시간 동안 상당한 수의 데이터 세트가 수집될 필요가 있다.
상당한 개수 그리고 상당한 시간 간격 동안의 데이터 세트를 인식하여야만 한다. 이렇게 상당한 개수와 시간에 해당되는 데이터의 군집화를 클러스터링이라 하며, 이를 위해, 본 발명의 일 실시예에서는 클러스터링 기법을 사용할 수 있다. 그리고 이렇게 클러스터된 데이터는 건물명, 거리명, 도시명, 대학 등의 위치 정보로 표현될 수 있다. 사실상, 수집된 GPS 데이터는 군집화(클러스터)된다. 본 발명의 일 실시예에서는 개인 이동성 구성에 대해 EM 알고리즘을 기초로 한 클러스터링 테크닉을 사용하고, Levy Walk와 같은 최근의 연구를 기초로 한 적절한 클러스터링 방법을 사용할 수 있다. 이를 위해, 이하 본 발명의 일 실시예에서 사용되는 EM 클러스터링 알고리즘 및 EM 클러스터링 교정(calibration)의 방법을 설명한다. 또한, 수집된 GPS 데이터를 기초로 한 실험의 결과를 설명한다.
<기대 극대화(Expectation Maximization)에 의한 클러스터링>
EM 알고리즘은 1958년 Hartley 등에 의해 처음 소개되었고, 1977년 Dempster 등에 의해 발전하였다. EM 알고리즘은 최초 모델을 생성하고, 데이터 세트의 반복적인 개선이 최적 모델로 알려진 최대 우도로 이끈다. 대상이 혼합 모델에 속할 확률이 반복적으로 교정되어 최적 모델이 될 수 있고 모델의 적합성이 로그 우도 함수에 의해 결정될 수 있다. 다시 말해, EM 알고리즘은 확률 기반 클러스터링 알고리즘이다. 파라미터 θ, 관측 결과에 대한 임의 변수 X, 그리고 관찰될 수 없는 임의 변수 Z를 이용하여, (X, Z)의 확률 분포를 L(θ;X, Z)=p(X, Z|θ)와 같이 표현할 수 있다. 따라서 이는 [수학식 1]과 같이 우도 함수로 극대화되어야 한다:
[수학식 1]
EM 알고리즘의 단계적 접근 방법에 의하여, 파라미터 θ(t)를 계산한 후에 그 다음 단계에서는 파라미터 θ(t+1)를 계산한다. 이들 단계 역시 기대(E) 단계 및 극대화(M) 단계로 구분된다. 기대 단계에서는, 알고리즘은 주어진 θ(t) 우도 함수의 기댓값 Q를 [수학식 2]와 같이 정의한다.
[수학식 2]
극대화 단계에서는, 알고리즘은 [수학식 3]과 같이 Q를 극대화하여 θ(t+1)를 계산한다.
[수학식 3]
실제로 구현할 때에는 임의의 다른 적절한 값(또는 벡터)으로 θ(0)를 초기화하고 원하는 범위의 근사치 레벨로 반복적으로 θ(t)를 계산한다.
<본 발명의 일 실시예에 따른 EM 클러스터링 방법>
본 발명의 일 실시예에서는 우선 적절한 EM 클러스터링 방법을 정의한다. GPS 장치로부터 수집된 사람 이동데이터를 사용하며, 이에 따라 EM 클러스터링을 위한 확률모델을 결정한다. 일반적으로 가우시안 분포로 알려진 정규분포를 사용할 수 있는데, 이러한 정규분포는 본 발명의 일 실시예에는 적합하지 않을 수 있다. 정규분포를 이용한 실험을 기초로 하면, 사람이동모델이 소위 Levy Walk라 불리는 두꺼운 꼬리 분포(heavy-tailed distribution)를 보이기 때문에 매우 부정확한 클러스터링 결과를 얻게 될 수 있다. 또한, 사람이동패턴은 보통 특정 시간 동안(사람의 거주기간) 1 또는 2 킬로미터 내의 영역(거주영역, 즉, 클러스터)에 집중되는 것을 관찰할 수 있었다. 그리고 거주영역 간의 전이는 거듭제곱분포(power law distribution) (사람 이동의 전이 기간)를 보인다. 따라서 본 발명의 일 실시예에서는 지수분포와 유사한 거듭제곱분포를 사용할 수 있다. 이러한 분포를 본 발명에서는 변형된 지수분포라 칭할 수 있는데, 파라미터는 거주영역의 중심부로부터의 사람이동의 거리이다. 다음의 [수학식 4]는 본 발명의 일실시예에서 사용하는 확률 분포를 나타낸다.
[수학식 4]
여기서, λ는 클러스터의 평균반경을 나타내는 제어 가능한 파라미터인데, 이 값을 상수 값으로 고정할 수 있으며 적절한 알고리즘에 의하여 계산이 가능하다. 또한, x는 사람의 현재 위치와 클러스터의 중심 사이의 거리를 나타낸다.
이와 더불어, 사람의 이동속도를 고려할 수 있다. 사람 이동의 거주기간 동안, 10Km/h이하의 속도를 갖는 경우 머무름 상태로 인식될 수 있다. 우리는 GPS 등의 위치 데이터로 특정 시간에 따라 이동하는 사람의 속도를 계산할 수 있고, 사람의 최대 걷는 속도에 의해 10Km/h라는 속도 임계치를 설정할 수 있다. 또한, 10Km/h 이상의 속도를 갖는 하나 이상의 GPS 데이터는 전이 기간으로 간주할 수 있고, 이 때 사람은 이동상태에 있는 것으로 간주할 수 있다.
이러한 이동상태 및 머무름 상태의 구분과 함께, 클러스터의 영역크기, 즉, 클러스터 지름이라는 파라미터를 고려할 수 있다. 본 발명의 일 실시예에서는 사람의 통상적인 걷는 거리와 건물단지의 최대 크기를 고려하여 클러스터 지름을 최대 수 킬로미터로 정의할 수 있다. 클러스터 지름을 크게 설정하면 사람의 개략적인 이동패턴을 파악할 수 있고, 클러스터 지름을 작게 설정하면 더 정확한 사람이동패턴을 얻을 수 있다. 그러나 클러스터 지름에 따라 계산량이 폭발적으로 증가할 수 있다. 그 결과, 본 발명의 일 실시예에 따른 실험에 있어서, 초기단계 실험을 기초로 클러스터 지름을 2 킬로미터 또는 3 킬로미터로 선택하였다. 이러한 기초 파라미터를 고려하여, 사람 이동성을 위한 클러스터링은 다음과 같은 단계로 수행할 수 있다.
- 클러스터 내부의 GPS 등 위치정보 포인트로 클러스터를 초기화한다.
- 클러스터 내의 포인트 개수를 계산한다.
- [수학식 4]와 같은 확률 분포로 각각의 위치정보 포인트가 클러스터에 속할 확률을 계산한다.
- 각 포인트가 나타내는 사람의 이동속도로 클러스터에 속한 포인트의 확률을 교정한다.
- EM 클러스터링 알고리즘을 반복한다.
더 높은 속도는 포인트의 이동 상태를 암시하고 따라서 포인트가 클러스터의 멤버가 될 가능성이 적음을 암시하기 때문에, 포인트의 속도로 포인트가 클러스터에 속할 확률을 교정할 수 있다. 높은 속도일 때, 교정과정은 포인트가 클러스터의 멤버일 확률을 많이 감소시킬 수 있다.
<실험 프로세스>
기초 실험:
본 발명의 일 실시예에 따른 실험 예에서는, 위치파악 시스템으로부터 획득한 학생의 일상생활에 대한 위치 데이터를 이용했다. 위치파악 시스템 중, 실제 서비스 상태의 두 개의 일반적인 위치파악 시스템인 범지구 위치결정 시스템(Global Positioning System)과 3G 기지국 위치결정 시스템을 이용했다. 이 실험에서 우선 위치 데이터의 유용성을 파악하였다. 즉, 위치파악 시스템으로부터 수집된 데이터가 웬만한 오류를 가지고 실제 위치를 나타낼 만큼 충분히 정확한지 여부를 확인하였다. 3G 기지국(3GBS) 위치를 이용한 일반적인 위치파악 기술은 RSS(Radio Signal Strength) 시스템의 약점 때문에 위치에 오류(기지국의 잦은 변경)를 갖는 경향이 있기 때문에 그 유용성이 의심된다. 그리고 현재의 GPS 시스템은 명백한 문제를 갖는다. 즉, GPS 신호는 건물 안에서는 감소하거나 왜곡된다. 여기에서는 매우 기초적인 실험을 수행하였다. 고정된 위치에 대해, 수 시간 동안 건물 외부영역과 건물 내부에서 GPS 및 3GBS 위치 데이터가 모두 수집되었다. GPS 데이터 수집을 위해 Garmin GPS 장치를 사용하였고, 3GBS 데이터 수집을 위해 3G 위치파악 기능을 갖는 상용의 갤럭시 탭을 사용하였다. 여기서, 포인트는 갤럭시 탭에 연결된 가장 인접한 기지국이다.
도 1은 빅데이터의 일 예인 사람의 이동성 데이터를 추출하기 위한 기초 실험의 결과를 보여준다. GPS, 3GBS, 건물 내부, 및 외부 영역의 조합이 표시되었다. 데이터의 #은 각각의 실험 상황에 대해 획득된 전체 데이터의 개수를 의미한다. 이 실험에서 GPS 및 외부 영역 상황에 대해 2187개의 위치 데이터를 획득하였다. 두 개의 연속적인 위치파악 데이터 사이의 위치 변화를 감지하였는데, 위치파악 장치를 실험 위치에 고정하였기 때문에 그 데이터를 오류로 간주하였다. 두 개의 연속적인 데이터 사이의 거리는 오류거리이다. 오류거리는 미터 단위이다. Average 칼럼은 오류거리의 평균값을 보여주고, 또한 오류거리의 표준 편차를 보여준다. 그리고 Maximum은 최대오류거리를 보여준다. 마지막 칼럼 Error Ratio는 각각의 하위실험에서의 오류의 비율을 보여준다. 하위실험 중 하나인 GPS-내부에 따른 결과는 흥미롭다. GPS 장치가 GPS 신호를 획득할 수 없으면 과거의 속도 데이터를 이용하여 장치의 위치를 자동으로 추정하기 때문에 Garmin GPS 장치를 이용한 내부결과는 의미가 없을 수 있다. 다시 말해, 장치가 건물 안에서 GPS 신호를 놓치면 오직 현재 위치를 추정할 뿐이다. 이와 같은 장치 제조자의 정책의 "사용자 친화적인 추정"의 특징은 위치 데이터에서 큰 오류를 야기하고, 따라서 실험 결과는 현실적이지 않다. 이 실험을 통해 3GBS가 건물 안에서도 작동함을 발견하였으나, 이는 GPS 데이터에 비해 일반적으로 훨씬 큰 위치 오류를 보여준다. 또한, 36% 이상의 3GBS 데이터에 오류가 존재한다. GPS 데이터는 12.30%의 오류를 보이며, 오류위치에서 거리는 최대 52미터로 보통 건물 범위 내이다. 따라서 이 실험을 위한 추가적인 위치파악 데이터를 위해 GPS 장치를 사용한다.
<이동성 인식을 위한 클러스터링>
학생의 일상의 이동에 대한 수집된 데이터 세트로부터 도 2에 나타난 바와 같이 클러스터링 실험을 수행하였다. 휴대용 GPS 장치를 사용했고 결과를 MapSource 및 Google Earth로 시각화했다. 데이터는 한 달 동안 수집되었고 Google map을 사용하여 지원 수집자(volunteer for data collection)에 의해 시각적으로 검증되었다. 데이터 수집의 영역은 한국, 서울의 수도권으로, 인천의 학생의 집, 서울의 학생의 대학교를 포함하며, 부천 및 김포의 이동 자취를 포함한다. 도 2에서, 분 단위의 GPS 데이터 수집이 Google Earth를 사용하여 도시되었다. 예상하였던 바와 같이, 수많은 위치파악 지점들이 두 영역, 집 및 회사에 집중되어 있다. EM 기반 클러스터링 테크닉을 이용하여 이 GPS 데이터 세트를 클러스터링하였고 그 결과 몇몇의 주요 클러스터가 인식되었다. 이하, 이 실험의 자세한 결과 및 검토를 설명한다.
<실험 결과 및 분석>
도 3은 클러스터된 위치데이터 세트의 수적 결과를 보여준다. 6개의 클러스터가 인식되었고 위치파악 데이터 수집자에 의해 검증되었다. 도 3은 각각의 클러스터의 중심위치, 각각의 클러스터에서 클러스터 멤버의 위치의 표준편차, 초기화 단계에서 최대 클러스터 반경, 각 클러스터의 평균반경, 반경의 표준편차, 각 클러스터에서 클러스터 멤버의 평균속도, 각 클러스터에 머무른 시간, 각 클러스터 내의 머무름 시간의 비율, 각 클러스터에서 위치 데이터의 개수를 포함하는 클러스터 정보를 포함한다. 예상되는 바와 같이, 최대의 클러스터는 인천에 있는 집 그리고 서울, 마포 주변의 회사 영역에서 발견되고, 다른 작은 클러스터는 부천의 도심지, 김포에 있는 레스토랑, 서울 중심부로의 드문 방문, 강남으로 알려진 서울 남부의 치과 방문을 위한 것이다. 도 4는 도 3의 결과를 시각화한 것으로서 실제 지도에 위치한 클러스터를 보여준다. 예를 들어, 사람의 직관으로, 클러스터 #1은 홍익대학교를 나타낸다. 수적인 위치 데이터를 기관 이름으로 자동 매핑할 수 있으면 이러한 직관적인 결과는 더욱 인간 친화적이다.
이러한 클러스터링 실험에서, 주어진 데이터 세트에 대해 사람이동모델의 주요 영역을 성공적으로 추출할 수 있었다.
상술한 실험에 의해 실험자의 일상생활에서의 이동패턴이 파악되었다. GPS 궤적 데이터와 EM 클러스터링 알고리즘을 이용하여 학생의 일상생활을 위한 주요 장소를 식별하였다. 이러한 결과를 토대로 도 5에 나타낸 것과 같이 Markov Chain 형태의 이동성 모델을 생성할 수 있다.
본 발명의 일 실시예에서는 데이터의 일부 또는 전부를 복수 개의 클러스터-영역으로 클러스터링하고, 이 클러스터-영역들을 수학적 상태로 표현하고, 이 클러스터-영역들 간의 관계를 확률적 함수로 표현하는 단계를 포함하는 모델을 할 수 있다. 상술한 Markov Chain 모델은 이러한 모델의 일 형태라고 볼 수 있다.
도 5는, 관측대상(한 사람 또는 한 집단)의 위치 데이터 및 상술한 클러스터링 알고리즘을 이용하여 얻은 클러스터와 관련된 6개의 상태 및 그 상태 간의 천이 확률을 나타낸 것이다. 예컨대, 상태(305)는 관측대상이 김포라고 명명된 클러스터 #5에 위치하는 상태를 나타내고, 상태(302)는 관측대상이 인천이라고 명명한 클러스터 #2에 위치하는 상태를 나타낸다.
도 5의 모델의 의하면 상태(305)는 상태(302) 또는 상태(305)로만 바뀔 수 두 확률의 합은 1.000이다. 또한, 상태(302)는 상태(305), 상태(303), 상태(301), 및 상태(302)로만 바뀔 수 있으며 각 상태로의 전이확률은 0.0113, 0.0057, 0.1089, 0.8741이다. 다른 상태들(301, 306, 304)에 대해서도 마찬가지로 설명할 수 있다.
도 5와 같은 모델을 이용하여 다양한 애플리케이션을 개발할 수 있다. 예컨대, 관측대상이 상태(306)에서 상태(301)로 이동하는 경우를 살펴본다. 클러스터 #1, 클러스터 #2, 및 클러스터 #6에는 각각 상점 #1, 상점 #2, 및 상점 #6이 존재할 수 있다.
이러한 상황에서, 도 5의 모델에 따르면 관측대상이 클러스터 #6으로부터 클러스터 #1로 이동할 확률이 0.4132이기 때문에, 즉, 상태(306)에서 상태(301)로 천이할 확률이 0.4132이기 때문에, 클러스터 #1에 존재하는 상점 #1은 클러스터 #6에 있는 관측 대상에게 마케팅 정보를 전송하여 관측대상의 구매의욕을 자극할 실익이 있다.
반면, 클러스터 #6에 위치한 관측대상이 클러스터 #2로 즉시 이동할 확률은 0이기 때문에, 즉, 상태(306)에서 상태(302)로 즉시 천이할 확률은 0이기 때문에, 클러스터 #2에 존재하는 상점 #2는 클러스터 #6에 위치한 관측 대상에게 자신의 마케팅 정보를 즉시 전달할 실익이 상대적으로 떨어진다.
다만, 관측대상이 클러스터 #1에 위치한 경우에는, 관측대상이 클러스터 #1로부터 클러스터 #2로 이동할 확률이 0.0986이기 때문에, 즉, 상태(301)에서 상태(302)로 천이할 확률이 0.0986이기 때문에, 클러스터 #2에 존재하는 상점 #2가 클러스터 #1에 위치한 관측 대상에게 자신의 마케팅 정보를 즉시 전달할 실익이 상승한다.
관측대상의 존재 위치를 복수 개의 그룹(클러스터)으로 나누고, 각 그룹 간의 전이확률(transition probability)을 알게 된다면, 관측대상의 현재 위치에 관한 정보를 기반으로 하는 다양한 서비스를 개발할 수 있다. 관측대상으로부터 수집한 위치 정보의 일부가 상술한 복수 개의 클러스터 중 어느 것에도 속하지 않을 수 있음은 상술한 바와 같으며, 이러한 일부의 정보는 관측대상이 이동 중에 있음을 암시할 수 있다.
클러스터링에 사용되는 데이터가 많을수록 다양한 환경에 따른 더 복잡한 인간이동패턴을 규명할 수 있다. 이 데이터가 많을수록 클러스터링에 소요되는 계산시간이 늘어나기 때문에 EM 클러스터링 알고리즘에 한정하지 않고 다른 종류의 확률적 클러스터링 알고리즘을 사용할 수 있다.
상술한 클러스터링 단계 이전과 이후에 전처리 단계 및 후처리 단계를 추가할 수 있다. 수집된 위치 데이터는 오류를 가질 수 있는데, 오류를 갖는 위치 데이터를 이용하여 클러스터링 하는 경우 정확한 결과가 나타나지 않는다. 따라서 전처리 단계에서는 오류를 갖는 위치 데이터를 필터링할 수 있다. 이러한 데이터 필터링을 위하여 OCSVM(One Class Support Vector Machine)을 사용할 수 있다. 클러스터링 된 결과는 <위도, 경도> 튜플과 같은 형태로 제시될 수 있는데, 이러한 형태는 사람이 그 의미를 알기 어렵기 때문에, 사용자 친화성을 부여하기 위하여 지역이름, 건물이름 등과 같은 자료와 매핑하여 제시하는 후처리 단계를 거칠 수 있다.
<실시예 1>
도 6a, 도 6b, 및 도 6c는 본 발명의 일 실시예에 따라 사용자의 위치정보모델을 생성하는 방법 및 사용자의 위치를 결정하는 방법을 설명하기 위한 것이다. 사용자의 위치정보모델을 생성하고 사용자의 위치를 결정하기 위하여 사용자가 소지하고 있는 사용자 기기(2) 및/또는 서버(1)를 이용할 수 있다. 여기서, 위치정보모델은 '위치패턴'이라는 이름으로 불릴 수도 있다.
이하 도 6a을 참조하여 본 발명의 일 실시예에 따른 위치정보모델 생성방법을 설명한다. 이 위치정보모델 생성방법은 서버(1)에서 실행될 수 있다. 그리고 이 위치정보모델은 예컨대 도 5에 나타낸 Markov chain의 개념을 구체화한 요소를 포함할 수 있다.
이 위치정보모델 생성방법은, 사용자 기기를 가지고 정지해 있는 또는 이동하고 있는 사용자로부터 수집된 복수 개의 사용자 위치데이터를 제공받는 단계(S11)를 포함할 수 있다. 여기서 위치데이터는 빅데이터의 일 예로 간주될 수 있다. 여기서 복수 개의 사용자 위치데이터는, 도 2에 나타낸 것과 같이, 사용자가 소지하고 있는 사용자 기기(2)가 자신의 지구위치정보를 검출하여 생성한 것일 수 있다. 한 명의 사용자는 복수 개의 사용자 기기(2)를 동시에 소지하거나 또는 번갈아 가면서 소지할 수도 있는데, 이때 각 사용자 기기(2)를 식별하는 장치 식별자는 서로 다를 수 있지만, 각 사용자 기기(2)는 이들을 소지하고 있는 한 명의 사용자를 식별하는 하나의 사용자 식별자를 모두 포함하고 있을 수 있다. 도 6a에서는 사용자 기기(2)가 서버(1)에게 복수 개의 사용자 위치데이터를 직접 제공하는 것으로 나타내었지만, 변형된 실시예에서는 사용자 기기(2)가 복수 개의 위치데이터를 다른 제3의 장치에 저장한 다음, 이 제3의 장치가 자신에게 저장된 정보를 서버(1)에게 제공할 수도 있다. 본 발명을 구현할 때에 사용자의 위치는 사용자 기기의 위치와 동일하게 취급될 수 있다.
그 다음, 이 위치정보모델 생성방법은, 상술한 복수 개의 사용자 위치데이터를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역으로 군집화하고, 이 복수 개의 위치영역에 관한 정보를 생성하는 단계(S12)를 포함할 수 있다. 여기서 '위치영역'은 한 세트의 빅데이터를 군집화하여 형성한 '정보영역'의 일 예로 간주될 수 있다. 여기서 확률기반 군집화 알고리즘은 예컨대 위의 [수학식 1] 내지 [수학식 4]를 통해 설명한 EM 알고리즘일 수 있는데, 이에 한정되는 것은 아니다. 그리고 복수 개의 위치영역에 관한 정보는, 예컨대 도 4에 나타낸 것과 같이 군집화된 위치영역에 관한 정보를 포함할 수 있으며, 또한 이들 위치영역 중 하나의 위치영역에서 다른 하나의 위치영역으로 이동할 확률에 관한 정보를 포함할 수 있다. 다른 말로, 복수 개의 위치영역에 관한 정보는, 예컨대 도 5에 나타낸 것과 같이 클러스터 #1 내지 클러스터 #6(301 ~ 306)에 관한 정보를 포함할 수 있으며, 이 클러스터들 중 어느 하나의 클러스터에서 다른 하나의 클러스터로 이동할 확률에 관한 정보를 포함할 수 있다. 위에서 각각의 위치영역 또는 각각의 클러스터는, 그 자신이 표상하는 지구위치의 범위에 관한 정보를 포함할 수 있다. 상술한 복수 개의 위치영역에 관한 정보는 예컨대 도 5에 나타낸 Markov chain와 같은 개념이거나 Markov chain을 포함하는 또는 이와 유사한 개념일 수 있다.
위의 생성하는 단계(S12)는 더 세분화된 단계들을 포함할 수 있다. 이를 도 6b를 참조하여 설명한다.
즉, 위의 복수 개의 사용자 위치데이터를 복수 개의 초기 군집으로 분할하는 단계(S610)를 포함할 수 있다. 이때 초기 군집은 미리 정해진 임의의 결정적(deterministic) 규칙 또는 랜덤(random)한 규칙에 따라 만들 수 있다.
그 다음, 예컨대 [수학식 1] 내지 [수학식 4]를 통해 설명한 EM 알고리즘 기반 군집화를 이용하여 위의 초기 군집을, 위의 초기 군집과는 다른 경계영역을 갖는 복수 개의 제2 군집으로 정제(refinement)하는 단계(S620)를 포함할 수 있다. 이때, EM 알고리즘 기반 군집화에 사용되는 확률밀도함수로서, 예컨대 Levy walk를 표현하는 수식을 이용할 수 있다. 여기서 Levy walk란 Marta C. Gonzalez와 A. Hidalgo, 그리고 Albert-Laszlo Barabasi가 Nature에 2008년도에 발표한 "Understanding individual human mobility patterns"이라는 논문에 제시한 개념으로서 이미 공지되어 있는 내용이다.
그 다음, 제2 군집의 각 군에서 위치데이터 통계량을 추출하는 단계(S630)를 포함할 수 있다. 여기서 '위치데이터'는 '빅데이터'의 일 예로 간주될 수 있다. 이때, 위치데이터 통계량은 도 3에 나타낸 것과 같이 각 군의 중심점(center position), 위치의 표준편차(Std. Dev. of Positions), 평균 반지름(Mean Radius), 체류시간(stay time), 사용자 위치데이터의 개수(# of GPS data)와 같은 정보를 포함할 수 있다.
그 다음, 이 위치데이터 통계량을 이용하여 Markov chain을 형성(building)하는 단계(S640)를 포함할 수 있다. 이때, Markov chain에서 상태(state)는 각 위치영역을 의미하고, 전이확률(transition probability)은 위치영역 간의 이동확률(관계확률)을 나타낼 수 있다.
위와 같이 두 개의 단계(S11, S12)를 수행하면 하나의 위치정보모델이 생성될 수 있다. 하나의 위치정보모델은 한 명의 사용자의 이동패턴을 나타낼 수 있다.
그 다음, 위의 위치정보모델을 갱신하는 방법을 도 6c를 참조하여 설명한다. 즉, 상술한 단계(S12)를 수행한 이후에 상술한 복수 개의 사용자 위치데이터 외의 새로운 한 개 이상의 사용자 위치데이터를 제공받는 단계(S13)를 더 포함할 수 있다. 그 다음, 상기 한 개 이상의 사용자 위치데이터를 이용하여 상기 복수 개의 위치영역에 관한 정보를 추가로 정제하는 단계(S14)를 더 포함할 수 있다. 즉, 단계(S11, S12)에 의해 생성된 복수 개의 위치영역에 관한 정보, 즉 위치정보모델은, 새로운 사용자 위치데이터를 제공받아 이용함으로써 갱신될 수 있다. 단계(S11, S11) 이외에 단계(S13, S14)가 실행되는 경우에, 단계(S13, S14)는 도 6a에 나타낸 단계(S110)를 수행하기 이전에 수행될 수 있다.
위에서 설명한 모든 사용자 위치데이터는, 그 정보를 획득할 당시의 사용자가 위치한 위도/경도 그리고 획득시간에 대한 정보를 포함할 수 있다.
위에서는 위치정보모델 생성방법을 위한 각 단계(S12 ~ S14)가 서버(1)에서 수행되었지만, 계산능력이 뛰어난 사용자 기기(2) 내에서 직접 수행될 수 있다. 이 경우에는 서버(1)가 사용자 위치데이터를 획득하는 단계(S11)는 생략될 수 있다.
<실시예 2>
이하 도 6a을 참조하여 본 발명의 다른 실시예에 따른 사용자 위치 결정방법을 설명한다. 이 사용자 위치 결정방법은 서버(1)에서 실행될 수 있다.
이 사용자 위치 결정방법은, 사용자의 현재 위치를 제공받는 단계(S110)를 포함할 수 있다. 사용자의 현재 위치는 사용자가 소지한 사용자 기기(2)가 자신의 지구위치정보를 검출하여 생성한 것일 수 있다. 사용자는 두 개 이상의 사용자 기기를 동시에 소지하거나 번갈아 가면서 소지하고 다닐 수 있다. 따라서 단계(S11)에서 사용자 위치데이터를 보내준 사용자 기기와 단계(S110)에서 사용자 위치데이터를 보내준 사용자 기기는 서로 같을 수도 있고 다른 것일 수도 있다.
그 다음, 이 사용자 위치 결정방법은, 미리 결정된 복수 개의 위치영역 중 위의 사용자의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계(S120)를 포함할 수 있다. 여기서 미리 결정된 복수 개의 위치영역은, 상술한 단계(S12)에 의해 생성된 것일 수 있다. 즉, 단계(S11)에서 수집된 복수 개의 사용자 위치데이터를 확률기반 군집화 알고리듬으로 처리하여 생성한 것일 수 있다.
즉 이 실시예에 따르면, 사용자의 위치데이터를 단순히 지구위치정보에 따라 하나의 경도, 위도 값으로 결정하여 제공하는 것이 아니라, 과거의 사용자의 위치들에 관한 정보를 이용하고 확률기반 군집화 알고리즘을 이용하여 생성한 복수 개의 위치영역에 매핑하여 제공한다.
도 6a에서는 이 실시예의 각 단계가 서버(1)에서 실행되는 것으로 나타내었으나, 변형된 실시예에서는 사용자 기기(2)에서 실행될 수도 있다. 이 경우, 사용자 기기(2)는 단계(S12)를 실행할 수 있어야 할 수 있다. 그렇지 않다면, 사용자 기기(2)는, 단계(S11) 및 단계(S12)를 실행한 서버(1)로부터 실시예 1에서 설명한 복수 개의 위치영역에 관한 정보를 수신하여 저장하고 있어야 할 수 있다.
<실시예 3>
이하 도 6a을 참조하여 본 발명의 또 다른 실시예에 따른 사용자 위치정보 제공방법을 설명한다. 이 사용자 위치 결정방법은 서버(1)에서 실행될 수 있다.
이 실시예는 실시예 2에서 설명한 단계(S120)에 따라 사용자의 현재 위치가 결정된 것을 전제로 한다. 이하 실시예 3에서는 설명의 편의를 위해 단계(S120)에서 결정된 사용자의 현재 위치가 제1 위치영역에 존재하는 것으로 가정하고 설명한다.
이 사용자 위치정보 제공방법은, 사용자가 현재 위치하고 있는 제1 위치영역으로부터 제2 위치영역으로 이동할 이동확률정보를 추출하는 단계(S130)를 포함할 수 있다. 여기서 제1 위치영역과 제2 위치영역은 각각, 예컨대 도 5의 클러스터 #1(301) 및 클러스터 #2(302)일 수 있고, 이때 위의 이동확률정보는 0.0986라는 값이거나 이로부터 가공된 값일 수 있다. 여기서 가공된 값은 예컨대, 이동할 확률이 0.5보다 큰 경우에는 1의 값을 갖고 그렇지 않은 경우에는 0의 값을 가질 수 있으나, 이에 한정되는 것은 아니며 다양한 방식이 있을 수 있다.
한편, 도 5에 나타난 각각의 클러스터들은 사용자의 위치데이터들로부터 얻은 복수 개의 위치영역 중 일부에 대응한다. 즉, 각각의 클러스터에 의해 표현되지 않는 위치영역들이 존재할 수 있다. 도 5에 나타낸 각 클러스터들은 사용자가 주로 머무는 공간을 나타낸 것이며, 이 공간들 사이를 이동하는 경우 생성되는 위치데이터는 각 클러스터에 포함되지 않을 수 있다. 따라서 상술한 제1 위치영역이 반드시 도 5에 나타낸 클러스터 중 어느 하나로 한정되는 것이 아님은 쉽게 이해할 수 있다.
그 다음, 이 사용자 위치정보 제공방법은, 위의 이동확률정보를 가입자 기기(3)에 제공할 수 있다(S140). 또는 이동확률이 매우 높은 경우에는 사용자가 근접한 위치에 도달할 것이라는 정보(사용자 근접여부 정보)를 제공할 수도 있다(S140). 제공은 유선 또는 무선의 네트워크를 통하여 이루어질 수 있다. 여기서 가입자 기기는 사용자 기기와 다를 수도 있고 같을 수도 있다. 여기서는 다른 경우의 예를 들어 설명한다. 가입자 기기는, 예컨대 위의 사용자를 고객, 또는 잠재고객으로 여기고 있는 사업자가 이용하는 장치일 수 있으며, 이동형 기기 또는 고정형 기기일 수 있다.
위의 사업자의 사업장이 위의 제2 위치영역에 존재하는 경우에는, 위의 사용자가 제2 위치영역으로 이동하는 경우에는 위의 사업자의 사업장에 방문할 가능성이 커지기 때문에, 위의 사업자는 위의 사용자가 제2 위치영역으로 이동할 확률에 대하여 큰 관심을 가질 수 있다. 따라서 도 6a과 같이 서버(1)가 가입자 기기(3)에 사용자가 제1 위치영역에서 제2 위치영역으로 이동할 이동확률정보를 제공하는 것은 영업상 의미가 있을 수 있으며, 실시예 3에 의하여 이러한 사업상 요구를 만족시킬 수 있다.
만일 위의 사업자의 사업장이 또 다른 제3 위치영역, 예컨대, 도 5의 클러스터 #3(303)에 존재하는 경우에는, 위의 사업자는 위의 사용자가 제2 위치영역으로 이동할 확률에 대해서는 큰 관심이 없을 가능성이 크다. 왜냐하면, 위의 사업자의 사업장은 제2 위치영역에 존재하지 않기 때문이다.
따라서 복수의 사업자가 존재하고, 각각의 사업자가 서로 다른 가입자 기기(3)를 이용하고 있는 경우에, 서버(1)가 모든 가입자 기기(3)에 사용자의 위치영역 간 이동확률을 모두 제공할 필요는 없으며, 각 사업자의 요구에 맞추어 이동확률정보를 제공하거나 제공하지 않을 수 있다. 예컨대, 제n 위치영역에 사업장을 가지고 있는 사업자가 사용하는 가입자 기기에는 사용자가 제n 위치영역으로 이동할 확률만을 제공할 수 있다.
또한, 단계(S150)에서는 사용자 기기(2)가 소정의 시간 후에 제공자에게 근접할 것이라는 정보(제공자 근접여부 정보)를, 서버(1)가 사용자 기기(2)에게 전송할 수도 있다. 또한, 단계(S140, S150)과 함께 또는 별도로 가입자 기기(3)의 제공자가 사용자 기기(2)의 사용자에게 홍보 및 통신을 할 수 있는 수단을 제공하는 단계(S160)를 서버(1)가 제공할 수 있다.
위에서는 가입자 기기(3)가 무엇인지 설명하기 위하여 상업 활동을 하는 사업자와 사업장이라는 개념을 이용하여 설명하였으나, 가입자 기기(3)라는 것이 반드시 이에 한정되는 것은 아니라는 것을 이해할 수 있을 것이다.
도 6a에서는 본 실시예에 따른 위치정보 제공방법이 서버(1)에서 수행되는 것으로 도시하였으나, 변형된 실시예에서는 이 제공방법이 사용자 기기(2)에서 수행될 수도 있다. 이를 위해서는 사용자 기기(2)가 단계(S120, S130, S140)을 서버(1) 대신에 수행할 능력을 가질 필요가 있다.
<실시예 4>
이하 도 7을 참조하여 본 발명이 다른 실시예에 따른 사용자 정보 처리방법을 설명한다. 도 7은 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다. 이 방법은 사용자 기기(3)에서 실행될 수 있다.
이 사용자 정보 처리방법은, 가입자 기기(3)를 이용하는 자가 지정한 특정 위치를 포함하는 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는 사용자에 관한 식별정보를 서버에게 요청하는 단계(S210)를 포함할 수 있다. 여기서, 가입자 기기(3)를 이용하는 자가 지정한 특정 위치는, 예컨대 가입자 기기(3)를 사용하는 사업자가 실제로 상품이나 서비스를 판매하는 위치일 수 있다. 또한, 여기서 특정 위치영역은, 예컨대 도 4에 나타낸 것과 같이 군집화된 미리 결정된 복수 개의 위치영역 중 어느 하나일 수 있다. 다른 말로, 복수 개의 위치영역은, 예컨대 도 5에 나타낸 것과 같이 클러스터 #1 내지 클러스터 #6(301 ~ 306)일 수 있다. 또한, 위의 특정 위치영역으로 이동할 확률은, 예컨대 도 5에서 사용자가 클러스터 #1(301)로 이동할 확률을 지칭할 수 있다. 여기서 특정 위치는 가입자 기기(3)를 이용하는 자가 지정하는 것이지만, 위의 특정 위치를 포함하는 특정 위치영역이 어디이며 무엇인지는 서버(1)가 판단할 수 있다.
그 다음, 이 사용자 정보 처리방법은, 위의 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는 사용자에 관한 정보(예컨대, 사용자 ID, 또는 사용자 기기 ID)를 서버(1)로부터 수신하는 단계(S220)를 포함할 수 있다. 여기서 미리 결정된 규칙이란, 예컨대 이동할 확률이 특정 값보다 큰지 작은지를 판단하는 규칙일 수 있으나, 이에 한정되지 않고 다양한 방식이 있을 수 있다. 그리고 선택된 사용자란 가입자 기기(3)의 제공자의 사업장 등에 인접한 사용자를 의미할 수 있다.
이때, 단계(S220)를 실현하기 위하여, 서버(1)는 도 7에 도시한 다음의 단계들 중 하나 이상을 수행할 수 있다.
우선 서버(1)는 사용자 기기를 가지고 정지해 있는 또는 이동하고 있는 제1 사용자로부터 수집된 복수 개의 제1 사용자 위치데이터를 제공받는 단계(S11) 및 제2 사용자로부터 수집된 복수 개의 제2 사용자 위치데이터를 제공받는 단계(S12)를 수행할 수 있다. 그 다음, 서버(1)는 실시예 1에서 설명한 확률기반 군집화 알고리즘을 이용하여, 복수 개의 제1 사용자 위치데이터를 복수 개의 제1 위치영역으로 군집화하여 복수 개의 제1 위치영역에 관한 정보를 생성하고, 복수 개의 제2 사용자 위치데이터를 복수 개의 제2 위치영역으로 군집화하여 복수 개의 제2 위치영역에 관한 정보를 생성하는 단계(S33)를 수행할 수 있다. 여기서 복수 개의 제1 위치영역에 관한 정보 및 복수 개의 제2 위치영역에 관한 정보는, 도 5에 나타낸 Markov chain와 같은 개념이거나 Markov chain을 포함하는 개념일 수 있다. 만일 복수 개의 제1 위치영역에 관한 정보 및 복수 개의 제2 위치영역에 관한 정보가 미리 제공되어 있다면 위의 단계(S11, S12, S33)의 수행은 생략될 수도 있다. 단계(S33) 이후에는 상술한 단계(S13, S14)가 추가로 수행될 수도 있다.
그 다음, 서버(1)는 제1 사용자의 현재 위치를 제공받는 단계(S111) 및 제2 사용자의 현재 위치를 제공받는 단계(S112)를 수행할 수 있다. 단계(S111)에서 제1 사용자의 현재 위치를 보내준 사용자 기기와 단계(S11)에서 복수 개의 제1 사용자 위치데이터를 보내준 사용자 기기는 서로 같을 수도 있고 다른 것일 수도 있다. 또한, 단계(S112)에서 제2 사용자의 현재 위치를 보내준 사용자 기기와 단계(S12)에서 복수 개의 제2 사용자 위치데이터를 보내준 사용자 기기는 서로 같을 수도 있고 다른 것일 수도 있다. 이에 대하여는 실시예 2에서 설명하였다.
그 다음, 서버(1)는, 복수 개의 제1 위치영역 중 제1 사용자의 현재 위치를 포함하는 위치영역 1을 결정하고, 복수 개의 제2 위치영역 중 제2 사용자의 현재 위치를 포함하는 위치영역 2을 결정하는 단계(S121)를 포함할 수 있다. 여기서 미리 결정된 복수 개의 위치영역은, 상술한 단계(S33)에 의해 생성된 것일 수 있다.
그 다음, 서버(1)는 제1 사용자에 대한 제1 확률 및 제2 사용자에 대한 제2 확률을 추출하는 단계(S131)를 수행할 수 있다. 이때 제1 확률은, 제1 사용자가, (현재 체류 중인 위치영역 1로부터,) 가입자 기기(3)의 이용자가 지정한 특정 위치를 포함하는 특정 위치영역[1]로 이동할 확률이다. 여기서 특정 위치영역[1]은 복수 개의 제1 위치영역에 포함되는 위치영역이다. 제2 확률은, 제2 사용자가, (현재 체류 중인 위치영역 2으로부터,) 가입자 기기(3)의 이용자가 지정한 특정 위치를 포함하는 특정 위치영역[2]로 이동할 확률이다. 특정 위치영역[2]는 복수 개의 제2 위치영역에 포함되는 위치영역이다. 위의 특정 위치영역[1] 및 특정 위치영역[2]는, 가입자 기기(3)가 지정한 특정 위치를 포함하는 특정 위치영역에 대응된다.
그 다음, 서버(1)는 제1 확률과 제2 확률이 미리 결정된 규칙을 만족하는지를 판단하여, 만족하는 사용자에 관한 정보를 선택하는 단계(S141)를 수행할 수 있다. 이때, 미리 결정된 규칙은, 예컨대 이동 확률이 0.5 이상인 사용자의 정보만 선택하도록 하는 규칙일 수 있는데, 이에 한정되는 것은 아니다.
또한, 단계(S230)에서는 사용자 기기(2)가 소정의 시간 후에 제공자에게 근접할 것이라는 정보(제공자 근접여부 정보)를, 서버(1)가 사용자 기기(21, 22)에게 전송할 수도 있다. 또한, 단계(S220, S230)과 함께 또는 별도로 가입자 기기(3)의 제공자가 사용자 기기(21, 22)의 사용자에게 홍보 및 통신을 할 수 있는 수단을 제공하는 단계(S240)를 서버(1)가 제공할 수 있다.
위의 실시예 1 내지 3에서는 서버(1)에서 실행되는 단계들이 경우에 따라 사용자 기기(2)에서 실행될 수도 있었다. 실시예 4에서도 이와 마찬가지로 서버(1)가 실행한 단계들이 사용자 기기(21, 22)에서 실행될 수도 있다.
도 8a 및 도 8b는 도 7에서 설명한 단계(S11, S21, S33, S111, S112, S121, S131, S141, S210, S220)을 구체적인 예를 들어 설명하기 위한 것이다.
도 8a는, 제1 사용자로부터 얻은 복수 개의 제1 사용자 위치데이터를 확률기반 군집화 알고리즘을 이용하여 얻은 복수 개의 제1 위치영역에 관한 정보를 나타낸다. 이 예에서, 사용자가 주로 머무르는 클러스터-영역은 3개로 주어지며, 이 클러스터-영역과는 다른 하나 이상의 위치영역이 존재할 수 있다.
도 8b는, 제2 사용자로부터 얻은 복수 개의 제2 사용자 위치데이터를 확률기반 군집화 알고리즘을 이용하여 얻은 복수 개의 제2 위치영역에 관한 정보를 나타낸다. 이 예에서, 사용자가 주로 머무르는 클러스터-영역은 3개로 주어지며, 이 클러스터-영역과는 다른 하나 이상의 위치영역이 존재할 수 있다.
도 8a 및 도 8b의 예에서 가입자 기기(3)가 지정한 특정 위치는 서초 1동으로 가정한다. 이때, 제1 사용자의 현재 위치는 위치영역 #11(여의도)이고 제2 사용자의 현재 위치는 위치영역 #21(종로)로 가정한다. 이때, 가입자 기기(3)가 지정한 특정 위치인 서초 1동을 포함하는 특정 위치영역은, 제1 사용자의 경우에는 위치영역 #12(서초 1동, 서초 2동)가 되고, 제2 사용자의 경우에는 위치영역 #22(서초 1동, 서초 3동)가 된다. 따라서 상술한 제1 임의의 위치영역은 위치영역 #12가 되고, 제2 임의의 위치영역은 위치영역 #22가 된다. 이때, 제1 사용자가 위치영역 #11에서 위치영역 #12로 이동할 확률은 0.6이고, 제2 사용자가 위치영역 #21에서 위치영역 #22로 이동할 확률은 0.4이다. 상술한 미리 결정된 규칙이, 이동 확률이 0.5 이상인 사용자의 정보만 선택하도록 하는 규칙이라고 가정하면, 위의 경우 제1 사용자의 정보만 선택하여 가입자 기기(3)에 전송할 것이다. 가입자 기기(3)를 이용하는 자가 예컨대 상품이나 서비스를 제공하는 사업자이며, 이 사업자가 운영하는 매장이 서초 1동에 위치한 경우에는, 이 사업자는 지리적 위치상 자신의 매장에 방문할 가능성이 제1 사용자의 정보를 받아 제1 사용자에게 개별적인 마케팅활동을 할 수도 있을 것이다.
도 7에 관한 설명에서, 특정 위치는 가입자 기기(3)를 이용하는 자가 지정하는 것이지만, 위의 특정 위치를 포함하는 특정 위치영역이 어디이며 무엇인지는 서버(1)가 판단할 수 있다고 하였다. 예컨대, 도 8의 경우 특정 위치인 서초 1동은 가입자 기기(3)를 이용하는 자가 지정한 것이지만, 특정 위치영역은 제1 사용자와 제2 사용자에 대해 서로 다를 수 있다. 즉, 제1 사용자의 경우 위의 특정 위치를 포함하는 특정 위치영역은 위치영역 #11이지만, 제2 사용자의 경우에는 위치영역 #21이다. 이와 같이 특정 위치영역은 가입자 기기(3) 및/또는 가입자 기기(3)를 이용하는 자가 지정하거나 판단하기 어려울 수 있다.
<실시예 5>
이하 도 9를 참조하여 본 발명이 다른 실시예에 따른 사용자 정보 처리방법을 설명한다. 도 9는 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다. 이 방법은 가입자 기기(3)에서 수행될 수 있다. 실시예 5는 실시예 4의 변형된 예로서, 여기서 특별히 설명하지 않는 개념은 실시예 4에서 설명한 내용과 같을 수 있다.
이 사용자 정보 처리방법은, 특정 위치를 포함하는 특정 위치영역으로 사용자가 이동할 확률에 관한 정보를, 가입자 기기(3)가 서버(1)에게 요청하는 단계(S310)를 포함할 수 있다. 이때 사용자에 관한 정보를 가입자 기기(3) 또는 가입자 기기(3)를 이용하는 자가 미리 알고 있을 수 있다. 여기서 특정 위치는 가입자 기기(3)를 이용하는 자가 지정한 것일 수 있으며, 고정된 위치일 수도 있고 시간에 따라 변동되는 위치일 수도 있다. 예컨대 특정 위치는 가입자 기기(3)를 사용하는 사업자가 실제로 상품이나 서비스를 판매하는 위치일 수 있다. 그러나 위의 특정 위치를 포함하는 특정 위치영역이 어떤 영역을 의미하는지는 서버(1)가 판단할 수 있다.
그 다음, 이 사용자 정보 처리방법에서는, 가입자 기기(3)가 위의 특정 위치영역으로 이동할 확률에 대한 정보를 서버(1)로부터 수신할 수 있다. 이 확률에 관한 정보는 확률 그 자체일 수 있으며, 또는 확률 그 자체 값을 가공하여 얻은 가공된 정보일 수 있다. 예컨대, 여기서 미리 결정된 규칙이란, 이동할 확률이 특정 값보다 큰지 작은지를 판단하는 규칙일 수 있다. 이러한 확률에 관한 정보를 얻기 위해 서버(1)에서는 다음의 단계들을 수행할 수 있다.
우선 서버(1)는 사용자 기기를 가지고 정지해 있는 또는 이동하고 있는 사용자로부터 수집된 복수 개의 사용자 위치데이터를 제공받는 단계(S11)를 수행할 수 있다. 그 다음, 서버(1)는 실시예 1에서 설명한 확률기반 군집화 알고리즘을 이용하여, 복수 개의 사용자 위치데이터를 복수 개의 위치영역으로 군집화하여 이 복수 개의 위치영역에 관한 정보를 생성하는 단계(S12)를 수행할 수 있다. 여기서 복수 개의 위치영역에 관한 정보는, 도 5에 나타낸 Markov chain와 같은 개념이거나 Markov chain을 포함하는 개념일 수 있다. 만일 복수 개의 위치영역에 관한 정보가 미리 제공되어 있다면 위의 단계(S11, S12)의 수행은 생략될 수도 있다.
그 다음, 서버(1)는 사용자의 현재 위치를 제공받는 단계(S110)를 수행할 수 있다. 단계(S110)에서 사용자의 현재 위치를 보내준 사용자 기기와 단계(S11)에서 복수 개의 사용자 위치데이터를 보내준 사용자 기기는 서로 같을 수도 있고 다른 것일 수도 있다. 이에 대하여는 실시예 2에서 설명하였다.
그 다음, 서버(1)는, 복수 개의 위치영역 중 사용자의 현재 위치가 매핑되는 제1 위치영역을 결정하는 단계(S120)를 포함할 수 있다. 여기서 미리 결정된 복수 개의 위치영역은, 상술한 단계(S12)에 의해 생성된 것일 수 있다.
그 다음, 서버(1)는 사용자에 대한 확률 추출하는 단계(S130)를 수행할 수 있다. 이때 위의 확률은, 사용자가 (현재 체류 중인 제1 위치영역으로부터,) 가입자 기기(3)가 지정한 특정 위치를 포함하는 특정 위치영역으로 이동할 확률이다. 특정 위치영역은 복수 개의 위치영역에 포함되는 위치영역이다.
그 다음, 추출된 확률에 관한 정보를 서버(1)가 가입자 기기(3)에게 송신하는 단계(S320)가 수행될 수 있다. 이때, 추출된 확률에 관한 정보를 송신하는 대신, 사용자 기기(2)의 사용자가 가입자 기기(3)의 제공자에게 근접할지 여부를 상기 추출된 확률에 근거하여 나타낸 사용자 근접 여부 정보를 송신할 수도 있다.
또한, 단계(S330)에서는 사용자 기기(2)가 소정의 시간 후에 제공자에게 근접할 것이라는 정보(제공자 근접여부 정보)를, 서버(1)가 사용자 기기(2)에게 전송할 수도 있다. 또한, 단계(S320, S330)과 함께 또는 별도로 가입자 기기(3)의 제공자가 사용자 기기(2)의 사용자에게 홍보 및 통신을 할 수 있는 수단을 제공하는 단계(S340)를 서버(1)가 제공할 수 있다.
위의 실시예 1 내지 실시예 4에서는 서버(1)에서 실행되는 단계들이 경우에 따라 사용자 기기(2)에서 실행될 수도 있었다. 실시예 5에서도 이와 마찬가지로 서버(1)가 실행한 단계들이 사용자 기기(2)에서 실행될 수도 있다.
도 10은 본 발명의 일 실시예를 위해 사용될 수 있는 서버의 구조를 나타낸다.
도 10을 참조하면, 서버(1)는 통신부(100) 및 통신부(100)와 데이터 및/또는 명령을 주고받는 처리부(200)를 포함할 수 있다. 처리부(200)는 연산부(210) 및 저장부(220)를 포함할 수 있다.
처리부(200)는 도 3에 예로서 제시한 각 군에 관한 통계량을 계산할 수 있고, 도 5에 제시한 Markov chain을 생성할 수 있으며, 도 6a의 단계(S12, S120, S130), 도 7의 단계(S33, S121, S131, S141), 도 9의 단계(S12, S120, S130)를 실행할 수 있다. 통신부(100)는 도 6a의 단계(S11, S110, S140), 도 7의 단계(S11, S21, S112, S121, S220), 도 9의 단계(S11, S110, S320)를 실행할 수 있다.
본 발명의 일 실시예에서 사용되는 Markov chain의 개념은 continuous time Markov chain과 discrete time Markov chain으로 구분되는데, 이 중 어느 것이라도 사용될 수 있으나, 실시예에 따라서는 continuous time Markov chain을 사용하는 것이 더 좋을 수 있다.
<빅데이터의 패턴추출방법으로의 확장>
상술한 실시예들에서 설명한 '위치데이터'는 '빅데이터'의 일 예로 간주할 수 있다. 본 발명의 일 실시예에서는 한 세트의 빅데이터의 일부 또는 전부를 복수 개의 클러스터-영역으로 클러스터링하고, 이 클러스터-영역들을 수학적 상태로 표현하고, 이 클러스터-영역들 간의 관계를 확률적 함수로 표현하는 단계를 포함하는 모델을 할 수 있다. 이때, 한 세트의 빅데이터의 일부 데이터로부터 복수 개의 클러스터-영역을 생성하는 경우, 나머지 데이터는 상기 복수 개의 클러스터-영역과는 다른 정보영역에 매핑될 수 있다. 도 5에 나타낸 Markov Chain 모델은 이러한 모델의 일 형태라고 볼 수 있다. 실시예 1에서 설명한 '위치정보모델'은 이하 설명할 본 발명의 일 실시예에 따른 빅데이터로부터 생성하는 '데이터정보모델'의 일 예로 간주될 수 있다. 이때, '데이터정보모델'은 '데이터패턴'이라는 이름으로 불릴 수도 있다. 또한, 실시예 1에서 설명한 '위치영역'은 한 세트의 빅데이터를 군집화하여 형성한 '정보영역'의 일 예로 간주될 수 있다. 이와 같이, 상술한 사람의 이동데이터로부터 이동패턴을 검출하기 위한 본 발명의 일 관점에 따른 방법은, 일반적인 '빅데이터'에 대하여 확장하여 적용할 수 있다. 이는 상술한 사람의 '이동데이터'와 '빅데이터'가 한 개 이상의 속성을 포함하는데, 이 한 개 이상의 속성에는 공통적으로 시간 정보가 포함되어 있기 때문이다.
도 6a, 도 6b, 도 6c, 도 7, 도 8a, 도 8b, 및 도 9에 위첨자로 나타낸 1) '사용자 위치데이터'는 '관심대상의 데이터'로 그 개념을 확장할 수 있다. 또한, 위첨자로 나타낸 2) '위치영역'은 '정보영역'으로 그 개념을 확장할 수 있다.
이하, 본 발명의 일 실시예에 따른 빅데이터의 데이터패턴 생성방법 등에 대하여 설명한다.
<실시예 6>
본 발명의 일 실시예에 따라 빅데이터의 데이터-패턴을 생성하는 방법이 제공된다.
이 방법은, '관심대상'에 관한 복수 개의 '데이터(빅데이터)'를 제공받는 단계(S610), 및 상기 복수 개의 데이터를 '확률기반 군집화 알고리듬'으로 처리함으로써, 복수 개의 '정보영역(information area)'에 관한 데이터-패턴을 생성하는 단계(S620)를 포함할 수 있다.
여기서, 예컨대, 관심대상은 사람이고 데이터는 위치데이터일 수 있다. 또 다른 예로서 관심대상은 기상변화현황이고 데이터는 기상데이터일 수 있다. 이때 기상데이터는 시간, 풍속, 풍향 등을 정보를 포함할 수 있다. 위에서 데이터의 예로서 제시한 위치데이터와 기상데이터는 모두 시간에 관한 정보를 포함한다는 점에서 공통점을 찾을 수 있다.
이때, 위의 정보영역은, '관심속성'에 대응하는 '클러스터-영역'들과, 상기 클러스터-영역에 속하지 않은 '여집합-영역'들의 합집합으로 볼 수 있다. 만일 위의 데이터가 기상데이터인 것으로 가정하고, 이 기상데이터는 기압, 강우유무, 위도, 경도의 정보를 포함하는 것으로 가정할 수 있다. 이때, 예컨대 위의 관심속성을 "비가 오면서 저기압인 위도-경도"로 정의할 수 있으며, "비가 오면서 저기압인 위도-경도"를 갖는 데이터는 상기 클러스터-영역에 매핑되며, 그렇지 않은 데이터는 상기 여집합-영역에 매핑될 수 있다.
이 방법에 따르면, 수집한 총 N개의 데이터를 군집화하여 M개의 정보영역을 생성할 수 있다. 이때, N개의 데이터 중 임의의 하나의 데이터는 M개의 정보영역 중 어느 하나에 매핑될 수 있다.
한편 위의 생성하는 단계(S620)는, 데이터의 속성에 근거하여 데이터 중 오류 데이터를 필터링하는 단계(S621)를 포함할 수 있다. 예컨대, 위의 데이터로서 사람의 위치데이터를 이용한다고 가정하자. 이때, 위치데이터에는 시간, 위도, 경도 정보가 포함되어 있으며, 이 정보들을 이용하여 관 심대상인 사람의 속도 및 가속도를 산출할 수 있다. 이때, 사람의 가속도를 위의 '데이터의 속성'으로 볼 수 있는데, 사람이 너무 큰 가속도를 갖는 경우 데이터에 오류가 있는 것으로 판단할 수 있다. 이와 같이, 데이터의 속성에 근거하여 데이터 중 오류 데이터를 필터링할 수 있다.
또한, 위의 생성하는 단계(S620)는, 위의 복수 개의 데이터를 복수 개의 초기 정보영역으로 분할하는 단계(S622), 상기 초기 정보영역을 확률 기반 군집화를 이용하여 복수 개의 제2 정보영역으로 정제하는 단계(S623), 상기 복수 개의 제2 정보영역의 각 영역에 속한 데이터의 통계량을 추출하는 단계(S624), 상기 통계량을 이용하여, 상기 클러스터-영역들 간의 관계를 확률적 함수로 표현하고, 상기 클러스터-영역들을 수학적 상태로 표현하는 단계(S625)를 더 포함할 수 있다. 이때, 상기 수학적 상태는 상기 각 클러스터-영역을 의미하고, 상기 확률적 함수는 상기 각 클러스터-영역 간의 '관계확률(relation-probability)'을 표현하는 것일 수 있다.
예컨대 위의 단계(S625)에 의하여 도 5에 제시한 것과 같은 Markov chain이 생성될 수 있다. 이때, 위의 관계확률은 Markov chain의 제1상태에서 제2상태로 천이할 확률로 정의될 수 있다.
위의 확률기반 군집화 알고리듬의 일 예는 상술한 기대 극대화(Expectation Maximization)에 의한 클러스터링 기법일 수 있다.
이 방법에 따른 군집화를 수행을 위하여, 데이터의 속성에 따라 미리 결정된 확률 함수가 수식으로서 사용될 수 있다. 예컨대, 실시예 1과 같이 관심대상이 사람이고, 데이터가 위치데이터인 경우, 확률 함수로서 수학식 4의 변형된 지수분포가 사용되었다.
위의 단계(S620) (단계(S621) ~ 단계(S625)) 이후에는, 상기 관심대상에 관한 새로운 한 개 이상의 데이터를 제공받는 단계(S630), 및 상기 한 개 이상의 데이터를 이용하여 상기 복수 개의 정보영역에 관한 정보를 정제(refine)하는 단계(S640)가 더 수행될 수 있다.
실시예 6에 의하여 복수 개의 정보영역에 대한 데이터-패턴이 생성된 경우, 새로운 데이터를 이미 생성되어 있는 복수 개의 정보영역 중 어느 하나의 제1 영역에 매핑할 수 있다.
실시예 6에 따른 방법은 처리부와 통신부를 갖는 단말기 또는 서버와 같은 장치에서 수행될 수 있다. 통신부는 새로운 데이터를 이 장치의 외부로부터 획득하는 역할을 할 수 있고, 처리부는 통신부로부터 가져온 데이터를 이용하여 상술한 각종 단계를 수행할 수 있다.
위에서, 특정 상태와 관련되어 있는 다른 상태의 관계확률은 고정값일 수도 있지만, 시간의 함수일 수도 있다. 일례로 사람의 키와 체중과의 관계는 긴 시간에 걸쳐서 변할 수 있지만 단기간에 걸쳐서는 고정값이다. 이와는 달리, 특정인의 위치는 대부분의 경우 시간에 따라 변한다. 즉, 출근 시 집이라는 상태에서 직장이라는 상태까지 상태의 전이는 특정 시간에 집중되어 있어, 이때 집과 직장의 관계확률은 시간의 함수로 나타내야 의미가 있다. 비근한 예로, 기상정보의 경우 청주시의 기압 상태가 수 시간 내에 대전시의 기압 상태에 영향을 미칠 관계확률은 시간의 함수이며, 마찬가지로 대전시의 먹구름이 청주시의 강우확률에 영향을 미칠 관계확률 역시 시간의 함수이다. 즉, 특정한 상태들 간의 관계확률을 시간의 함수로 간주하여야 좀 더 정확하게 관계확률을 묘사하는 일반적인 방법론이 될 수 있다.
<실시예 7>
이하 본 발명의 일 실시예에 따른 빅데이터 정보 수집방법을 설명한다.
이 방법은, 관심대상에 관한 정보를 서버에게 요청하는 단계(S710)를 포함한다. 이때, 관심대상의 데이터의 '관심속성'이 복수 개의 정보영역 중 특정 정보영역의 관심속성의 '범주'에 포함되게 될 관계확률이 미리 결정된 규칙을 만족하는 경우에만 상기 요청을 서버에게 전송하게 된다. 임의의 하나의 정보영역은 한 개 이상의 데이터를 포함하는 집합이기 때문에, 그 임의의 하나의 정보영역에 포함된 데이터의 관심속성은 하나의 값을 갖는 것이 아니라 소정의 범주를 갖는 값을 가질 수 있다.
예컨대, 관심대상이 기상변화현황이고 데이터가 위도, 경도, 및 기압 정보를 포함하는 기상데이터인 경우에 있어서, 이 기상데이터의 관심속성을 '기압'으로 정의할 수 있다. 이때, 위의 복수 개의 정보영역이 정보영역 A와 정보영역 B를 포함하는 경우를 가정할 수 있다. 이때 정보영역 A는 관심속성인 기압이 760mmHg 이하인 값을 갖는 데이터들을 포함하는 영역이고, 정보영역 B는 관심속성인 기압이 760mmHg 이상의 값을 갖는 데이터들을 포함하는 영역인 것으로 가정할 수 있다. 이 경우 특정 위도 및 경도를 갖는 지점에서의 현재 기압이 765mmHg라고 가정할 때에, 이 지점에서의 기압이 760mmHg 이하로 떨어질 관계확률이 어느 정도인지 계산할 수 있다. 이때 예컨대 상기 미리 결정된 규칙을 "관계확률이 0.5보다 큰 것을 만족하는 것"으로 정의할 수 있다. 이 예에서, 위의 단계(S710)은 다음과 같이 구체화될 수 있다. 즉, 단계(S710)에서는 관심대상(ex: 기상변화현황)에 관한 정보(ex: 관계확률(p))를 서버에게 요청하는데, 이때, 관심대상의 데이터(ex: 위도(x), 경도(y), 기압(765mmHg))의 관심속성(ex: 기압=765mmHg)이 복수 개의 정보영역 중 특정 정보영역(ex: 정보영역 A)의 관심속성의 범주(ex: 기압 < 760mmHg)에 포함되게 될 관계확률(p)이 미리 결정된 규칙(ex: p > 0.5)을 만족하는 경우에만 상기 요청을 서버에게 전송하게 된다.
다른 예로서, 관심대상이 사람이고 데이터가 위도 및 경도를 포함하는 위치데이터인 경우 상술한 단계(S710)는 다음과 같이 구체화될 수 있다. 즉, 단계(S710)에서는 관심대상(ex: 사람)에 관한 정보(ex: 관계확률(p))를 서버에게 요청하는데, 이때, 관심대상의 데이터의 관심속성(ex: 위도=85°)이 복수 개의 정보영역(ex: 정보영역 C(89°< 위도 < 90°), 정보영역 D(84°< 위도 < 89°)) 중 특정 정보영역(ex: 정보영역 C)의 관심속성의 범주(89°< 위도 < 90°)에 포함되게 될 관계확률(p)이 미리 결정된 규칙(ex: p > 0.5)을 만족하는 경우에만 상기 요청을 서버에게 전송하게 된다.
이때, 상기 관계확률(p)이 상기 미리 결정된 규칙을 만족하는지 여부는, 상기 서버가, 상기 관심대상의 현재 데이터 관한 정보를 제공받는 단계(S711), 상기 복수 개의 정보영역 중 상기 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계(S712), 및 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률이 상기 미리 결정된 규칙을 만족하는지를 판단하는 단계(S713)를 포함하는 프로세스를 수행하여 판단할 수 있다.
예컨대, 관심대상이 기상변화현황이고 데이터가 상술한 기상데이터인 경우에 있어서, 단계(S711)에서는 관심대상의 현재 데이터(ex: 위도(x), 경도(y), 기압=765mmHg)를 제공받으며, 단계(S712)에서는 상기 복수 개의 정보영역 중 상기 현재 데이터가 매핑되는 제1 정보영역이 상기 정보영역 B(ex: 기압 > 760mmHg)이라고 결정할 수 있다. 그리고 단계(S713)에서는 상기 관심대상의 기상데이터의 관심속성(ex: 기압)이 특정 정보영역(ex: 정보영역 A)의 관심속성(ex: 기압 < 760mmHg)의 범주에 속할 관계확률(p)이 미리 결정된 규칙(ex: p > 0.5)을 만족하는지를 판단할 수 있다.
다른 예로서, 관심대상이 사람이고 데이터가 위치데이터인 경우에 있어서, 단계(S711)에서는 관심대상의 현재 데이터(ex: 위도=85°, 경도=180°, 시간)를 제공받으며, 단계(S712)에서는 상기 복수 개의 정보영역 중 상기 현재 데이터가 매핑되는 제1 정보영역이 상기 정보영역 D(ex: 84°< 위도 < 89°)이라고 결정할 수 있다. 그 다음, 단계(S713)에서는 상기 관심대상의 위치데이터의 관심속성(ex: 위도)이 특정 정보영역(ex: 정보영역 C)의 관심속성(ex: 89°< 위도 < 90°)의 범주에 속할 관계확률(p)이 미리 결정된 규칙(ex: p > 0.5)을 만족하는지를 판단할 수 있다.
위의 단계(S710)(즉, 단계(S711) ~ 단계(S713)) 이후에는, 상기 관심대상에 관한 정보를 상기 서버로부터 수신하는 단계(S720)가 수행될 수 있다.
<실시예 8>
이하 본 발명의 일 실시예에 따른 빅데이터를 갖는 관심대상에 대한 정보 수집방법을 설명한다.
이 방법은, 관심대상에 관한 데이터의 관심속성이 미리 결정된 복수 개의 정보영역에 속하는 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 대한 정보를 서버에게 요청하는 단계(S810) 및 상기 관계확률에 관한 정보를 상기 서버로부터 수신하는 단계(S820)를 포함한다. 이때, 상기 관계확률은, 상기 서버가, 상기 복수 개의 정보영역 중 상기 관심대상의 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계(S811), 및 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 관한 정보를 추출하는 단계(S812)를 포함하는 프로세서를 수행하여 계산될 수 있다.
예컨대, 관심대상이 사람이고 데이터가 위치데이터인 경우에 있어서, 단계(S810)에서는 관심대상에 관한 데이터의 관심속성(ex: 위도)이 미리 결정된 복수 개의 정보영역(ex: 정보영역 C, 정보영역 D)에 속하는 특정 정보영역(ex: 정보영역 C)의 관심속성(ex: 위도)의 범주(ex: 89°< 위도 < 90°)에 포함되게 될 관계확률(p)에 대한 정보를 서버에게 요청한다. 이때, 단계(S811)에서는, 상기 서버가, 상기 복수 개의 정보영역 중 상기 관심대상의 현재 데이터(ex: 위도=85°, 경도=180°, 시간)가 매핑되는 제1 정보영역이 위의 정보영역 D(ex: 84°< 위도 < 89°)라고 결정할 수 있다. 그 다음, 단계(S812)에서는, 상기 관심대상의 데이터의 관심속성(ex: 위도)이 특정 정보영역(ex: 정보영역 C)의 관심속성의 범주(ex: 89°< 위도 < 90°)에 포함되게 될 관계확률(ex: p=0.01)을 추출할 수 있다. 그 다음 단계(S820)에서 상기 관계확률에 관한 정보(ex: p=0.01)를 상기 서버로부터 수신할 수 있다.
<실시예 9>
이하 본 발명의 일 실시예에 따른 빅데이터를 갖는 관심대상에 대한 정보를 제공하는 방법을 설명한다.
이 방법은, 관심대상의 현재 데이터를 제공받는 단계(S910) 및 미리 결정된 복수 개의 정보영역 중 상기 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계(S920), 및 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 복수 개의 위치영역에 속한 제2 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 관한 정보를 제공하는 단계(S930)를 포함할 수 있다.
예컨대, 관심대상이 사람이고 데이터가 위치데이터인 경우에 있어서, 단계(S910)에서는 관심대상의 현재 데이터(ex: 위도=85°, 경도=180°, 시간)를 제공받을 수 있다. 그 다음, 단계(S920)에서는 미리 결정된 복수 개의 정보영역(ex: 정보영역 C, 정보영역 D) 중 현재 데이터가 매핑되는 제1 정보영역이 정보영역 D(ex: 84°< 위도 < 89°)라고 결정할 수 있다. 그 다음, 단계(S930)에서는 상기 관심대상의 데이터의 관심속성(ex: 위도)이 제2 정보영역(ex: 정보영역 C)의 관심속성의 범주(ex: 89°< 위도 < 90°)에 포함되게 될 관계확률에 관한 정보(p=0.01)를 제공할 수 있다.
이하, 본 발명의 일 실시예에 따른 사용자 위치 예측방법을 도 6a, 도 7를 참조하여 설명한다.
이 예측방법은, 사용자 기기(2)의 사용자에 관한 복수 개의 사용자 위치데이터를 수집하여(S11), 이 복수 개의 사용자 위치데이터를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하는 단계(S12, S33)를 포함한다. 그 다음, 사용자 기기(2)의 사용자의 현재 위치데이터를 제공받고(S110, S111), 상기 현재 위치데이터가 매핑되는 상기 복수 개의 위치영역의 제1 위치영역을 결정하는 단계(S120, S121)를 포함한다. 그 다음, 상기 사용자 기기(2)의 사용자가 상기 제1 위치영역으로부터 상기 복수 개의 위치영역의 제2 위치영역으로 이동할 확률에 관련된 정보를 생성하는 단계(S130, S131, S141)를 포함할 수 있다.
이 예측방법은, 통신부 및 처리부를 포함하는 서버 또는 사용자 기기와 같은 장치에서 수행될 수 있으며, 이 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체도 제공될 수 있다. 이러한 예측방법과 관련된 장치 및 매체를 제공하는 것은 쉽게 이루어질 수 있다.
<인간의 이동성에 관한 빅데이터의 처리 예>
이하 인간의 이동성에 관한 빅데이터를 본 발명의 일 실시예에 따라 군집화하여 처리한 결과를 예시한다.
도 11은 본 발명의 일 실시예에 따라 수집된 빅데이터(제1실험자의 서울에서의 위치데이터)를 지도상에 나타낸 일 예이다. 그리고 도 12는 본 발명의 일 실시예에 따라 수집된 빅데이터(제2실험자의 서울 및 제주도에서의 위치데이터)를 지도상에 나타낸 다른 예이다.
도 11 및 도 12에는 제1실험자 및 제2실험자의 위치만이 지도상에 표시되어 있을 뿐이며, 이 위치로부터 얻을 수 있는 위치영역 또는 클러스터-영역에 대한 정보는 표시되어 있지 않다.
도 13은 도 11에 제시한 빅데이터를 클러스터링한 결과 중 일부를 지도상에 나타낸 일 예이다. 도 13에는 김포(Gimpo) 근처에 클러스터-영역 #5(Cluster 5)가 형성되어 있고, 부천(Bucheon) 근처에 클러스터-영역 #3(Cluster 3)이 형성되어 있고, 그 사이에 클러스터-영역 #2(Cluster 2)이 형성되어 있다.
도 14는 도 11에 제시한 빅데이터를 클러스터링한 결과를 모두 지도상에 나타낸 다른 예이다. 클러스터-영역 #1 내지 #6까지 형성되어 있는 것을 확인할 수 있다.
도 15는 도 12에 제시한 빅데이터를 클러스터링한 결과 중 서울에서의 결과를 지도 상에 나타낸 예이다. 클러스터-영역 #1 ~ #6, 및 #13이 형성되어 있는 것을 확인할 수 있다.
도 16은 도 12에 제시한 빅데이터를 클러스터링한 결과 중 제주도의 제주시를 중심으로 한 결과를 지도 상에 나타낸 예이다. 클러스터-영역 #7 ~ #9가 형성되어 있는 것을 확인할 수 있다.
도 17은 도 12에 제시한 빅데이터를 클러스터링한 결과 중 제주도에서의 결과를 지도 상에 나타낸 예이다. 클러스터-영역 #7 ~ #12가 형성되어 있는 것을 확인할 수 있다.
도 18은 도 11의 제1실험자로부터 얻은 빅데이터를 클러스터링 하는데 사용된 확률밀도함수의 일 예이다. 도 20에 나타낸 그래프의 x 축은 클러스터의 중심부터의 거리를 나타내고 y 축은 확률밀도를 나타낸다. 이 그래프에서 실선, 긴 점선, 및 짧은 점선은 각각 도 14에 나타낸 클러스터-영역 #2, #5, #3에서의 확률밀도함수를 나타낸다. 각 클러스터-영역에서의 확률밀도함수는 변형 지수 분포이며, 파라미터는 확률 기반 클러스터링에 의하여 산출된 것이다.
도 19는 도 12의 제2실험자로부터 얻은 빅데이터를 클러스터링 하는데 사용된 확률밀도함수의 일 예이다. 이 그래프에서 실선, 긴 점선, 및 짧은 점선은 각각 도 16에 나타낸 클러스터-영역 #7, #8, #9에서의 확률밀도함수를 나타낸다.
도 20은 도 11의 제1실험자로부터 얻은 빅데이터로부터 추출되어 CTMC로 표현된 패턴을 나타낸 것이다. 도 14에 나타낸 6개의 클러스터-영역과 함께 각 클러스터-영역 간의 전이확률이 함께 도시되어 있다. 그리고 여기서 CTMC는 Continuous Time Markov Chain의 약자로서 연속시간에 특정 상태의 묘사와 상태 간의 전이확률을 제공할 수 있는 기법 중 하나를 의미한다.
도 21a 및 도 21b는 도 12의 제2실험자로부터 얻은 빅데이터로부터 추출되어 CTMC로 표현된 패턴을 나타낸 것이다. 도 21a는 서울에서의 결과를 나타낸 것이고, 도 21b는 제주도에서의 결과를 나타낸 것이다. 도 21a의 클러스터-영역 #13과 도 21b의 클러스터-영역 #9와의 관계확률(전이확률)이 함께 표시되어 있다.
도 22는 도 12의 제2실험자로부터 얻은 빅데이터로부터 생성한 13개의 클러스터에 대한 세부정보를 나타낸 것이다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.
Claims (20)
- 서버가, 사용자에 관한 복수 개의 위치데이터를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하는 단계;
상기 서버가, 상기 사용자의 현재 위치데이터를 제공받고, 상기 현재 위치데이터가 매핑되는 상기 복수 개의 위치영역의 제1 위치영역을 결정하는 단계; 및
상기 서버가, 상기 사용자가 상기 제1 위치영역으로부터 상기 복수 개의 위치영역의 제2 위치영역으로 이동할 확률에 관련된 제2정보를 생성하는 단계;
를 포함하며,
상기 위치데이터는 위도, 경도, 및 시간으로 이루어지는 데이터 튜플이며,
상기 복수 개의 위치영역 모두에 대하여, 상기 정보는 상기 각각의 위치영역의 확정된 대표 위치값을 포함하는 것을 특징으로 하는,
사용자 위치 예측방법. - 제1항에 있어서,
상기 복수 개의 위치영역에 관한 정보는 마코프-체인(Markov chain)의 형태로 주어질 수 있는 정보이며,
상기 각각의 위치영역은 마코프-체인의 상태(state)에 대응하고,
상기 제1 위치영역으로부터 상기 제2 위치영역으로 이동할 확률은, 상기 제1 위치영역에 대응하는 상기 마코프-체인의 제1 상태로부터, 상기 제2 위치영역에 대응하는 상기 마코프-체인의 제2 상태로 천이할 확률을 나타내는,
사용자 위치 예측방법. - 제1항에 있어서, 상기 복수 개의 위치영역에 관한 정보는, 상기 복수 개의 위치데이터가 군집화되어 생성된 복수 개의 위치영역의 수학적 상태에 관한 정보, 및 상기 위치영역들 간의 관계를 확률적 함수로 표현한 정보를 포함하는, 사용자 위치 예측방법.
- 처리부; 및 통신부를 포함하며,
상기 처리부는,
상기 통신부를 통해 사용자에 관한 복수 개의 위치데이터를 제공받아, 상기 복수 개의 위치데이터를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하도록 되어 있고;
상기 통신부를 통해 상기 사용자의 현재 위치데이터를 제공받아, 상기 현재 위치데이터가 매핑되는 상기 복수 개의 위치영역의 제1 위치영역을 결정하도록 되어 있으며; 그리고
상기 사용자가 상기 제1 위치영역으로부터 상기 복수 개의 위치영역의 제2 위치영역으로 이동할 확률에 관련된 제2정보를 생성하도록 되어 있으며,
상기 위치데이터는 위도, 경도, 및 시간으로 이루어지는 데이터 튜플이며,
상기 복수 개의 위치영역 모두에 대하여, 상기 정보는 상기 각각의 위치영역의 확정된 대표 위치값을 포함하는 것을 특징으로 하는,
사용자 위치 예측장치. - 컴퓨터가,
사용자에 관한 복수 개의 위치데이터를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하는 단계;
상기 사용자의 현재 위치데이터를 제공받고, 상기 현재 위치데이터가 매핑되는 상기 복수 개의 위치영역의 제1 위치영역을 결정하는 단계; 및
상기 사용자가 상기 제1 위치영역으로부터 상기 복수 개의 위치영역의 제2 위치영역으로 이동할 확률에 관련된 제2정보를 생성하는 단계;
를 수행하도록 하는 사용자 위치 예측 프로그램이 기록되어 있고,
상기 위치데이터는 위도, 경도, 및 시간으로 이루어지는 데이터 튜플이며,
상기 복수 개의 위치영역 모두에 대하여, 상기 정보는 상기 각각의 위치영역의 확정된 대표 위치값을 포함하는 것을 특징으로 하는,
컴퓨터로 읽을 수 있는 매체. - 서버가, 관심대상에 관한 복수 개의 데이터를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 정보영역에 관한 정보를 생성하는 단계;
상기 서버가, 상기 관심대상의 현재 데이터를 제공받고, 상기 현재 데이터가 매핑되는 상기 복수 개의 정보영역의 제1 정보영역을 결정하는 단계; 및
상기 서버가, 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 복수 개의 정보영역의 제2 정보영역의 관심속성의 범주로 전이되게 될 관계확률에 관련된 제2정보를 생성하는 단계
를 포함하며,
상기 복수 개의 정보영역 모두에 대하여, 상기 정보는 상기 각각의 정보영역의 확정된 대표값을 포함하는 것을 특징으로 하는,
데이터 처리방법. - 삭제
- 서버가, 관심대상에 관한 복수 개의 데이터를 제공받는 단계; 및
상기 서버가, 상기 복수 개의 데이터를 확률기반 군집화(clustering) 알고리듬으로 처리함으로써, 복수 개의 정보영역(information area)에 관한 데이터-패턴을 생성하는 단계
를 포함하며,
상기 정보영역은, 관심속성에 대응하는 클러스터-영역들과, 상기 클러스터-영역에 속하지 않은 여집합-영역들의 합집합이며,
상기 생성하는 단계는,
상기 데이터의 속성에 근거하여 상기 데이터 중 오류 데이터를 필터링하는 단계;
상기 복수 개의 데이터를 복수 개의 초기 정보영역으로 분할하는 단계;
상기 초기 정보영역을 확률 기반 군집화를 이용하여 복수 개의 제2 정보영역으로 정제하는 단계;
상기 복수 개의 제2 정보영역의 각 영역에 속한 데이터의 통계량을 추출하는 단계; 및
상기 통계량을 이용하여, 상기 클러스터-영역들 간의 관계를 확률적 함수로 표현하고, 상기 클러스터-영역들을 수학적 상태로 표현하는 단계;
를 포함하는,
데이터 처리방법. - 제8항에 있어서,
상기 관심대상에 관한 새로운 한 개 이상의 데이터를 제공받는 단계; 및
상기 한 개 이상의 데이터를 이용하여 상기 복수 개의 정보영역에 관한 정보를 정제(refine)하는 단계
를 더 포함하는,
데이터 처리방법. - 제8항에 있어서, 상기 복수 개의 데이터는 시간에 관한 속성을 포함하는, 데이터 처리방법.
- 제8항에 있어서,
상기 서버가, 상기 관심대상의 현재 데이터를 제공받는 단계; 및
상기 서버가, 상기 복수 개의 정보영역(information area) 중 상기 현재 데이터가 매핑되는 제1 영역(area)을 결정하는 단계;
를 더 포함하는,
데이터 처리방법. - 제8항에 있어서, 상기 수학적 상태는 상기 각 클러스터-영역을 의미하고, 상기 확률적 함수는 상기 각 클러스터-영역 간의 관계확률(relation-probability)을 표현하는, 데이터 처리방법.
- 제10항에 있어서, 상기 군집화를 수행을 위하여, 상기 데이터의 속성에 따라 미리 결정된 확률 함수가 수식으로서 사용되는 것을 특징으로 하는, 데이터 처리방법.
- 단말기가, 관심대상의 데이터의 관심속성이 복수 개의 정보영역 중 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률이 미리 결정된 규칙을 만족하는, 상기 관심대상에 관한 정보를 서버에게 요청하는 단계; 및
상기 단말기가, 상기 관심대상에 관한 정보를 상기 서버로부터 수신하는 단계;
를 포함하며,
상기 관계확률이 상기 미리 결정된 규칙을 만족하는지 여부는,
상기 서버가,
상기 관심대상에 관한 복수 개의 데이터를 제공받는 단계;
상기 복수 개의 데이터를 확률기반 군집화(clustering) 알고리듬으로 처리함으로써, 상기 복수 개의 정보영역(information area)에 관한 데이터-패턴을 생성하는 단계;
상기 관심대상의 현재 데이터 관한 제3정보를 제공받는 단계;
상기 복수 개의 정보영역 중 상기 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계; 및
상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 특정 정보영역의 관심속성의 범주에 포함되게 될 전이확률이 상기 미리 결정된 규칙을 만족하는지를 판단하는 단계
를 포함하는 프로세스를 수행하여 판단하며,
상기 복수 개의 정보영역 모두에 대하여, 상기 데이터-패턴은 상기 각각의 정보영역의 확정된 대표값을 포함하는 것을 특징으로 하는,
관심대상에 대한 정보 수집방법. - 제14에 있어서,
상기 복수 개의 정보영역은, 미리 수집된 상기 관심대상에 관한 복수 개의 데이터를 확률기반 알고리듬으로 처리하여 생성한 것인, 관심대상에 대한 정보 수집방법. - 단말기가, 관심대상에 관한 데이터의 관심속성이 미리 결정된 복수 개의 정보영역에 속하는 특정 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 대한 정보를 서버에게 요청하는 단계; 및
상기 단말기가, 상기 관계확률에 관한 정보를 상기 서버로부터 수신하는 단계
를 포함하며,
상기 관계확률은, 상기 서버가,
상기 관심대상에 관한 복수 개의 데이터를 제공받는 단계;
상기 복수 개의 데이터를 확률기반 군집화(clustering) 알고리듬으로 처리함으로써, 복수 개의 정보영역(information area)에 관한 데이터-패턴을 생성하는 단계;
상기 복수 개의 정보영역 중 상기 관심대상의 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계; 및
상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 특정 정보영역의 관심속성의 범주에 포함되게 될 전이확률에 관한 정보를 추출하는 단계;
를 포함하는 프로세스를 수행하여 계산되며,
상기 복수 개의 정보영역 모두에 대하여, 상기 데이터-패턴은 상기 각각의 정보영역의 확정된 대표값을 포함하는 것을 특징으로 하는,
관심대상에 대한 정보 수집방법. - 제16항에 있어서, 상기 복수 개의 정보영역은, 미리 수집된 상기 관심대상에 관한 복수 개의 데이터를 확률기반 군집화 알고리듬으로 처리하여 생성한 것인, 관심대상에 대한 정보 수집방법.
- 서버가, 관심대상에 관한 복수 개의 데이터를 제공받는 단계;
상기 서버가, 상기 복수 개의 데이터를 확률기반 군집화(clustering) 알고리듬으로 처리함으로써, 상기 복수 개의 정보영역(information area)에 관한 데이터-패턴을 생성하는 단계;
상기 서버가, 상기 관심대상의 현재 데이터를 제공받는 단계;
상기 서버가, 상기 복수 개의 정보영역 중 상기 현재 데이터가 매핑되는 제1 정보영역을 결정하는 단계; 및
상기 서버가, 상기 관심대상의 데이터의 관심속성이 상기 제1 정보영역의 관심속성의 범주에 포함된 상태에서 상기 복수 개의 정보영역에 속한 제2 정보영역의 관심속성의 범주에 포함되게 될 관계확률에 관한 정보를 제공하는 단계
를 포함하며,
상기 복수 개의 정보영역 모두에 대하여, 상기 데이터-패턴은 상기 각각의 정보영역의 확정된 대표값을 포함하는 것을 특징으로 하는,
관심대상에 대한 정보 제공방법. - 제18항에 있어서, 상기 관계확률에 관한 정보는, 상기 관계확률이 미리 결정된 임계값을 초과했는지 여부에 관한 정보인, 관심대상에 대한 정보 제공방법.
- 제18항에 있어서,
상기 관심대상은 사용자이며,
상기 데이터는 상기 사용자의 위치데이터로서, 시간, 위도, 및 경도 정보를 포함하는 위치데이터이며,
상기 정보영역은 위치영역이며,
상기 관심속성은 상기 위도 및 경도인,
관심대상에 대한 정보 제공방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/369,585 US9846736B2 (en) | 2011-12-29 | 2012-06-25 | Data processing method, data processing device, data collecting method and information providing method |
PCT/KR2012/004997 WO2013100287A1 (ko) | 2011-12-29 | 2012-06-25 | 데이터처리방법, 데이터처리장치, 데이터수집방법, 및 정보제공방법 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110146367 | 2011-12-29 | ||
KR20110146367 | 2011-12-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130077751A KR20130077751A (ko) | 2013-07-09 |
KR101365993B1 true KR101365993B1 (ko) | 2014-02-21 |
Family
ID=48990937
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120060839A KR101365993B1 (ko) | 2011-12-29 | 2012-06-07 | 데이터처리방법, 데이터처리장치, 데이터수집방법, 및 정보제공방법 |
KR20120071212A KR101510458B1 (ko) | 2011-12-29 | 2012-06-29 | 위치정보 표현방법, 위치정보 처리방법, 위치정보모델 생성방법, 및 위치정보처리장치 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20120071212A KR101510458B1 (ko) | 2011-12-29 | 2012-06-29 | 위치정보 표현방법, 위치정보 처리방법, 위치정보모델 생성방법, 및 위치정보처리장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9846736B2 (ko) |
KR (2) | KR101365993B1 (ko) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101513453B1 (ko) * | 2013-10-24 | 2015-04-20 | 에스케이텔레콤 주식회사 | 로그 정보 기반의 가구 구성원 정보 추정을 위한 장치 및 방법 |
US9288630B2 (en) * | 2013-10-28 | 2016-03-15 | Verizon Patent And Licensing Inc. | Method and apparatus for providing positioning services using multi-spacing clustering |
US9773210B2 (en) | 2013-11-08 | 2017-09-26 | Electronics And Telecommunications Research Institute | System and method for providing information |
US9510154B2 (en) | 2014-04-28 | 2016-11-29 | Samsung Electronics Co., Ltd | Location determination, mapping, and data management through crowdsourcing |
WO2015167172A1 (ko) * | 2014-04-28 | 2015-11-05 | 삼성전자 주식회사 | 크라우드소싱을 이용한 위치 결정, 매핑 및 데이터 관리 시스템 및 방법 |
KR102084249B1 (ko) * | 2014-10-15 | 2020-03-04 | 에스케이 텔레콤주식회사 | 단말기의 실제위치 확인 방법확인방법 및 그를 위한 장치 |
KR101640426B1 (ko) | 2015-09-07 | 2016-07-22 | 박해영 | 모바일 빅 데이터 분석 장치 |
CN105307121B (zh) * | 2015-10-16 | 2019-03-26 | 上海晶赞科技发展有限公司 | 一种信息处理方法及装置 |
CN108256914B (zh) * | 2018-01-17 | 2022-02-11 | 华东师范大学 | 一种基于张量分解模型的兴趣点种类预测方法 |
CN110703192B (zh) * | 2018-07-09 | 2023-04-28 | 中移物联网有限公司 | 一种定位的方法及装置、设备、存储介质 |
CN110336860A (zh) * | 2019-06-13 | 2019-10-15 | 河海大学常州校区 | 工业物联网中基于多维数据处理的关键节点数据保护方法 |
CN110473278B (zh) * | 2019-08-13 | 2023-07-21 | 深圳前海微众银行股份有限公司 | 场景可视化方法、装置、设备及计算机可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011118776A (ja) * | 2009-12-04 | 2011-06-16 | Sony Corp | データ処理装置、データ処理方法、およびプログラム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008249640A (ja) * | 2007-03-30 | 2008-10-16 | Japan Advanced Institute Of Science & Technology Hokuriku | 位置推定システム、及び、位置推定方法 |
KR101097169B1 (ko) | 2009-05-26 | 2011-12-22 | 국방과학연구소 | 이동체의 위치 예측 시스템 및 위치 예측 방법 |
JP5440080B2 (ja) * | 2009-10-02 | 2014-03-12 | ソニー株式会社 | 行動パターン解析システム、携帯端末、行動パターン解析方法、及びプログラム |
JP2011118777A (ja) * | 2009-12-04 | 2011-06-16 | Sony Corp | 学習装置および学習方法、予測装置および予測方法、並びにプログラム |
US20150087333A1 (en) * | 2012-03-30 | 2015-03-26 | Ha Yoon Song and Hongik University Industry- Academia Cooperatiob Foundation | Method for correcting position information |
KR101447671B1 (ko) * | 2012-11-19 | 2014-10-07 | 홍익대학교 산학협력단 | 대상의 위치를 확률적으로 예측하는 방법 |
KR101467318B1 (ko) * | 2013-06-24 | 2014-12-02 | 홍익대학교 산학협력단 | 위치정보 보정방법 |
US20160123728A1 (en) * | 2014-11-04 | 2016-05-05 | Ha Yoon Song | Method for classifying human mobility state using particle filter |
-
2012
- 2012-06-07 KR KR1020120060839A patent/KR101365993B1/ko active IP Right Grant
- 2012-06-25 US US14/369,585 patent/US9846736B2/en active Active
- 2012-06-29 KR KR20120071212A patent/KR101510458B1/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011118776A (ja) * | 2009-12-04 | 2011-06-16 | Sony Corp | データ処理装置、データ処理方法、およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
KR101510458B1 (ko) | 2015-04-10 |
US9846736B2 (en) | 2017-12-19 |
US20150052097A1 (en) | 2015-02-19 |
KR20130077751A (ko) | 2013-07-09 |
KR20130077754A (ko) | 2013-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101365993B1 (ko) | 데이터처리방법, 데이터처리장치, 데이터수집방법, 및 정보제공방법 | |
CN106462627B (zh) | 根据多个位置数据报告分析语义地点和相关数据 | |
Basiri et al. | Indoor location based services challenges, requirements and usability of current solutions | |
Chen et al. | Measuring place-based accessibility under travel time uncertainty | |
US10474727B2 (en) | App recommendation using crowd-sourced localized app usage data | |
US10356559B2 (en) | Harvesting labels for significant locations and updating a location fingerprint database using harvested labels | |
US8612134B2 (en) | Mining correlation between locations using location history | |
Do et al. | The places of our lives: Visiting patterns and automatic labeling from longitudinal smartphone data | |
EP2712488B1 (en) | Prediction of indoor level and location using a three stage process | |
Calabrese et al. | Human mobility prediction based on individual and collective geographical preferences | |
CN104380293B (zh) | 基于位置从地图历史提供相关元素信息的方法和计算装置 | |
KR101579032B1 (ko) | 연락처 정보에 기초한 방문 위치의 라벨링 | |
US20170131110A1 (en) | Searching similar trajectories by locations | |
WO2014137547A1 (en) | Generating a geofence via an analysis of a gps fix utilization distribution | |
EP2777304A1 (en) | A method and apparatus for determining location information of a position in a multi-storey building | |
JP2008146249A (ja) | プローブデータ解析システム | |
CN111159583A (zh) | 用户行为分析方法、装置、设备及存储介质 | |
JP5484368B2 (ja) | 移動端末からの位置情報に基づく対象エリア表示方法及びシステム | |
JP5746255B2 (ja) | 訪問poi推定装置、方法、プログラム、及びプログラムを記録したコンピュータ読取り可能な記録媒体 | |
KR20120014468A (ko) | 측위 시스템 및 측위 방법 | |
JP2019128611A (ja) | 生成装置、生成方法及び生成プログラム | |
KR101647078B1 (ko) | 자주 방문하는 장소를 판별하는 방법 및 이를 위한 장치 | |
JP6389583B1 (ja) | 行動指標評価システム、行動指標評価方法、及びプログラム | |
Adhimoolam et al. | Automatic Labeling and visiting Patterns from Longitudinal axis using Android mobile device | |
Vidmar et al. | Research Article An Automatic Wi-Fi-Based Approach for Extraction of User Places and Their Context |
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 |