KR101682340B1 - 연락처 정보에 기초한 방문 위치의 라벨링 - Google Patents

연락처 정보에 기초한 방문 위치의 라벨링 Download PDF

Info

Publication number
KR101682340B1
KR101682340B1 KR1020167009728A KR20167009728A KR101682340B1 KR 101682340 B1 KR101682340 B1 KR 101682340B1 KR 1020167009728 A KR1020167009728 A KR 1020167009728A KR 20167009728 A KR20167009728 A KR 20167009728A KR 101682340 B1 KR101682340 B1 KR 101682340B1
Authority
KR
South Korea
Prior art keywords
location
user
contact list
visited
history data
Prior art date
Application number
KR1020167009728A
Other languages
English (en)
Other versions
KR20160045922A (ko
Inventor
데일 호킨스
탐 칼 스탬
앤드류 키름스
투샤르 우데쉬
Original Assignee
구글 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 인코포레이티드 filed Critical 구글 인코포레이티드
Publication of KR20160045922A publication Critical patent/KR20160045922A/ko
Application granted granted Critical
Publication of KR101682340B1 publication Critical patent/KR101682340B1/ko

Links

Images

Classifications

    • H04W4/028
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • H04W4/04
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
    • H04W4/185Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals by embedding added-value information into content, e.g. geo-tagging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data

Abstract

본 명세서에 개시된 시스템들 및 기법들은 사용자가 방문한 위치들을 결정하고 연락처 정보에 기초하여 적절한 위치 라벨들을 방문한 위치들과 연관시키는 능력을 제공한다. 일부 예들에서, 방문한 위치와 사용자의 연락처 목록에 저장된 정보 간의 매칭에 기초하여 위치 라벨이 적용될 수 있다. 다른 예들에서, 사용자는 방문한 위치와 연관될 연락처 및 위치 라벨을 효율적으로 지정할 수 있다. 또 다른 예들에서, 사용자가 방문한 위치가 사용자의 연락처 목록에는 실려 있지 않지만, 다른 방법으로 시스템에 알려져 있다면, 방문한 위치는 적절히 라벨링될 수 있고 사용자의 연락처 목록 내의 대응하는 연락처는 방문한 위치를 포함하도록 갱신될 수 있다.

Description

연락처 정보에 기초한 방문 위치의 라벨링{LABELING VISITED LOCATIONS BASED ON CONTACT INFORMATION}
스마트폰 및 태블릿 등의 모바일 장치들 덕분에 사용자들에게 제공될 수 있는 각종 새로운 서비스들을 이용할 수 있게 되었다. 이러한 새로운 서비스들 중 매우 인기 있고 성장하고 있는 부문은 위치 추적 및 인식을 수반한다. 모바일 장치의 지리적 위치는 셀룰러 네트워크 타워, Wi-Fi 액세스 포인트 위치를 참조하는 것, 또는 GPS(Global Positioning System) 컴포넌트들로부터의 데이터를 이용하는 것을 포함하여, 위치 결정을 위한 여러 가지 기술들 중 임의의 기술을 이용하여 결정될 수 있다. 위치 추적 및 인식을 이용하는 예시적인 응용들은 위치 보고에서 위치에 기초한 사회적 상호 작용까지 모든 것을 포함한다.
이러한 새로운 서비스들의 다수가 직면하는 한 가지 흔한 문제는 지리적 위치(예컨대, 지구상의 위도와 경도)와 적절한 위치 라벨(예컨대, 집, 직장 등)과의 관련성이다. 이러한 문제를 해결하기 위한 종래 기술의 기법들과 시스템들은 업체들이나 다른 공개적으로 목록에 실린 위치들을 검색하는 것으로 제한된다. 지리적 위치들에 대한 적절하고 유의미한 라벨들을 생성하기 위한 데이터가 불완전하면 사용자에게 제시되는 정보의 품질이 저하되고, 이에 따라 위치 추적 또는 위치 인식 서비스들에 대한 사용자의 체험이 저하될 수 있다.
하나의 예에서, 이 개시 내용은 컴퓨터 프로세서를 이용하여 사용자가 방문한 위치를 라벨링하는 방법으로서, 사용자에 대한 위치 이력 데이터를 수집하고 이 위치 이력 데이터를 데이터스토어에 저장하는 단계를 포함하는 방법을 기술하고 있다. 이 예에 따르면, 이 방법은 또한 프로세서가 상기 데이터스토어와 통신하여 상기 위치 이력 데이터로부터 방문한 위치를 결정하는 단계, 및 상기 프로세서가 상기 방문한 위치에 대응하는 연락처 위치 정보를 얻기 위해 상기 사용자와 연관된 연락처 목록을 검색하는 단계를 포함한다. 이 방법은 추가로 상기 프로세서가 상기 방문한 위치를 매칭하는 연락처 위치 정보에 대응하는 연락처 위치 라벨과 연관시키는 단계를 포함할 수 있다.
또 다른 예에서, 이 개시 내용은 컴퓨터 프로세서를 이용하여 위치 정보를 연락처와 연관시키는 방법으로서, 사용자에 대한 위치 이력 데이터를 수집하고 이 위치 이력 데이터를 데이터스토어에 저장하는 단계를 포함하는 방법을 기술하고 있다. 이 예에 따르면, 이 방법은 또한 프로세서가 상기 데이터스토어와 통신하여 상기 위치 이력 데이터로부터 방문한 위치를 결정하는 단계, 상기 사용자로부터 연락처 및 위치 라벨의 지정을 수신하는 단계, 및 상기 프로세서가 상기 방문한 위치를 상기 연락처 및 상기 위치 라벨과 연관시키는 단계를 포함한다.
추가의 예에서, 이 개시 내용은 컴퓨터 프로세서를 이용하여 위치 정보를 연락처와 연관시키는 방법으로서, 제1 사용자에 대한 위치 이력 데이터를 수집하고 이 위치 이력 데이터를 데이터스토어에 저장하는 단계를 포함하는 방법을 기술하고 있다. 이 예에 따르면, 이 방법은 또한 프로세서가 상기 데이터스토어와 통신하여 상기 위치 이력 데이터로부터 상기 제1 사용자가 방문한 위치를 결정하는 단계, 및 상기 프로세서가 상기 제1 사용자가 방문한 위치가 제2 사용자와 연관되어 있는지를 결정하는 단계를 포함한다. 이 방법은 추가로 상기 방문한 위치가 상기 제2 사용자와 연관되어 있는 경우에 상기 프로세서가 상기 제1 사용자와 연관된 연락처 목록에서 상기 제2 사용자에 대한 연락처 목록 항목을 상기 방문한 위치를 포함하도록 갱신하는 단계를 포함할 수 있다.
위에 기술한 이 개시 내용의 기법들의 양상들 및 예들은 첨부 도면들과 함께 기재된 하기의 상세한 설명으로부터 보다 충분히 이해될 것이다.
도 1은 이 개시 내용의 양상들에 따른 예시적인 모바일 네트워크를 개략적으로 보여주고 있다.
도 2는 사용자에 대한 위치 이력 데이터를 수집하고 분석하는 예시적인 기법의 순서도이다.
도 3은 이 개시 내용의 양상들에서 이용되는 예시적인 위치 이력 데이터를 보여주는 표이다.
도 4는 사용자가 방문한 위치를 연락처 목록의 항목과 매칭시키기 위해 사용자와 연관된 연락처 목록을 검색하는 예시적인 기법의 순서도이다.
도 5는 이 개시 내용의 양상들에서 이용되는 예시적인 연락처 목록 항목 정보를 보여주는 표이다.
도 6은 사용자가 방문한 위치를 연락처 목록 항목과 연관시키는 예시적인 기법의 순서도이다.
도 7은 제1 사용자와 연관된 연락처 목록을 방문한 위치에 대응하는 정보로 갱신하는 예시적인 기법의 순서도이다.
본 명세서에 개시된 시스템들 및 기법들은 사용자가 방문한 위치들을 결정하고 연락처 정보에 기초하여 적절한 위치 라벨들을 방문한 위치들과 연관시키는 능력을 제공한다. 사용자와 연관된 연락처 정보(예컨대, 각 연락처에 대하여 사용자의 연락처 목록에 저장된 주소들)을 사용함으로써 이 개시 내용에 따른 시스템들 및 기법들은 방문한 위치들을 로컬 검색 쿼리들 또는 다른 공개 정보 소스들을 통하여 입수할 수 없을 때 방문한 위치들에 대한 적절한 라벨들을 제공할 수 있다. 일부 예들에서, 방문한 위치와 사용자의 연락처 목록에 저장된 정보 간의 매칭에 기초하여 위치 라벨이 적용될 수 있다. 다른 예들에서, 사용자는 방문한 위치와 연관될 연락처 및 위치 라벨을 효율적으로 지정할 수 있다. 또 다른 예들에서, 사용자가 방문한 위치가 사용자의 연락처 목록에는 실려 있지 않지만, 다른 방법으로 시스템에 알려져 있다면, 방문한 위치는 적절히 라벨링될 수 있고 사용자의 연락처 목록 내의 대응하는 연락처는 방문한 위치를 포함하도록 갱신될 수 있다.
지금부터 본 명세서에 개시된 시스템들 및 기법들의 구조, 기능, 제조, 및 사용의 원리들에 대한 전반적인 이해를 제공하기 위해 특정 예들을 기술할 것이다. 예들은 첨부 도면들에 도시되어 있다. 숙련된 당업자들은 본 명세서에 구체적으로 기술되고 첨부 도면들에 도시된 시스템들 및 기법들은 비제한적인 예들이고 본 개시 내용의 범위는 특허청구범위에 의해서만 규정된다는 것을 이해할 것이다. 하나의 예와 관련하여 도시되거나 기술된 특징들은 다른 예들의 특징들과 조합될 수 있다. 이러한 수정들 및 변형들은 본 개시 내용의 범위 안에 포함시키고자 한다.
사용자의 모바일 장치의 위치에 기초하여 사용자의 위치가 추론될 수 있다. 위치 정보는 장치와 사용자의 위치 이력을 제공하기 위해 다양한 시간 간격을 두고 저장될 수 있다. 이 위치 이력은 모바일 장치의 캐시 또는 다른 메모리에 저장될 수 있거나, 또는 그것은 모바일 네트워크를 통해 서버에 전송되어 데이터스토어에 저장될 수 있다. 사용자는, 예컨대, 사용자와 연관된 또는 사용자에 의해 사용되는 컴퓨팅 장치에 의해 실행되는, 프로그램들 또는 특징들이 사용자 정보(예컨대, 사용자의 위치에 관한 정보, 또는 예를 들어 사용자의 연락처들, 소셜 네트워크 연줄들, 사회적 행동 또는 활동들, 선호하는 것들, 또는 기타에 관한 다른 정보)를 수집하는지 여부를 제어하고, 그리고/또는 수집된 정보에 기초하여 콘텐츠 서버로부터 콘텐츠를 수신할지 여부 그리고/또는 어떻게 수신할지를 제어하는 기회를 제공받을 수 있다. 게다가, 사용자에 대하여 어떤 개인 식별 정보도 알아낼 수 없도록, 어떤 데이터는 저장되거나 사용되기 전에 하나 이상의 방식으로 처리될 수 있거나, 사용자의 특정 위치를 알아낼 수 없도록, 사용자의 지리적 위치는 위치 정보가 얻어지는 경우에 일반화될 수 있다(예를 들어 도시, 우편 번호, 또는 주 수준으로). 이러한 방식들로, 사용자는 콘텐츠 서버에 의해 어떻게 정보가 수집되고 사용되는지를 제어할 수 있다.
도 1은 위치 기반 서비스들을 제공하기 위한 모바일 네트워크(100)의 예를 보여주고 있다. 도시된 예에서, 모바일 네트워크(100)는 통신 네트워크(110)와 모바일 장치(120)를 포함한다. 모바일 장치(120)는 다양한 액세스 포인트들(130)을 통해 통신 네트워크(110)에 접속할 수 있다. 예시의 목적으로 하나의 모바일 장치(120)와 하나의 액세스 포인트(130)가 도시되어 있지만, 모바일 네트워크는 임의의 개수의 모바일 장치들과 액세스 포인트들을 포함할 수 있다.
모바일 장치(120)는 모바일 네트워크를 통하여 데이터를 교환하도록 구성되어 있는 임의의 장치일 수 있다. 예를 들어, 모바일 네트워크(100)는 GSM, TDMA, 또는 CDMA 기술이 가능한 네트워크, 또는 임의의 다른 유형의 무선 네트워크, 예컨대, IEEE 802.11, 블루투스, 또는 기타 Wi-Fi 네트워크, 또는 유선 및 무선 네트워크들의 조합일 수 있다. 액세스 포인트(130)는 모바일 장치(120)와 통신 네트워크(110) 간의 게이트웨이를 제공하는 일종의 무선 수신기 또는 송신기일 수 있다. 예를 들어, 액세스 포인트는 무선 라우터들 또는 셀룰러 네트워크 타워들일 수 있다. 일부 예들에서, 모바일 장치(120)는 GPS 위성들(140)로부터 송신된 GPS 신호들을 수신할 수도 있다.
도시된 예에서, 모바일 네트워크(100)는 통신 네트워크(110)를 통해 모바일 장치(120)와 데이터를 교환할 수 있는 로케이션 서버(150)도 포함한다. 로케이션 서버(150)는 디지털 데이터를 저장할 수 있는 데이터베이스 또는 다른 메모리 또는 저장 장치 등의 디지털 데이터스토어(170)와 통신 연결되어 있는 디지털 데이터 프로세서(160)를 포함할 수 있다.
로케이션 서버(150)는 소프트웨어, 펌웨어 또는 하드웨어 명령어들로 프로그램된 하나 이상의 컴퓨팅 장치들에 구현될 수 있다. 이러한 컴퓨팅 장치들은 하나 이상의 퍼스널 컴퓨터, 워크스테이션, 미니-컴퓨터, 클러스터 컴퓨터 시스템, 및/또는 내장형 시스템을 포함할 수 있지만, 이들에 제한되지는 않는다. 로케이션 서버(150) 기능의 일부 또는 전부가 모바일 장치(120) 자체에 구현될 수도 있다. 이러한 컴퓨팅 장치들(모바일 장치(120)을 포함)은 명령어들을 실행하고 저장하기 위한 하나 이상의 프로세서 및 메모리를 가진 장치를 포함할 수도 있지만, 이에 제한되지는 않는다. 이러한 컴퓨팅 장치는 소프트웨어, 펌웨어, 및 하드웨어를 포함할 수 있다. 소프트웨어는 하나 이상의 애플리케이션 및 운영 체제를 포함할 수 있다. 하드웨어는 프로세서, 메모리 및 그래픽 사용자 인터페이스 디스플레이를 포함할 수 있지만, 이들에 제한되지는 않는다. 로케이션 서버(150)는 하드웨어, 소프트웨어 또는 이들의 조합을 이용하여 구현될 수 있고 컴퓨터 시스템 또는 다른 프로세싱 시스템에 구현될 수 있다.
위치 정보를 수집하고 사용자가 방문한 위치들을 결정하는 예시적인 기법(200)이 도 2에 도시되어 있다. 이 기법(200)은 위치 이력 데이터를 획득하는 것을 포함할 수 있거나, 또는 그것은 기존의 위치 이력 데이터로 작동하는 것을 포함할 수도 있다. 도 2에 도시된 바와 같이, 이 기법(200)은 위치 이력 데이터가 수집되는 단계 210에서 시작된다. 예를 들어, 위치 이력 데이터는 도 1의 모바일 장치(120) 등의 모바일 장치에 의해 생성되고, 액세스 포인트들(130) 및 통신 네트워크(110)를 거쳐 모바일 네트워크(100)를 통하여 로케이션 서버(150)로 전달될 수 있다. 위치 이력 데이터는, 예를 들어, 사용자가 한 위치에 "체크인"하는 경우에 그러한 체크-인에 대해 준비하는 임의의 개수의 소셜 애플리케이션을 이용하여 로케이션 서버(150)에 의해 수집될 수도 있다.
사용자는, 예컨대, 모바일 장치(120)에 의해, 예컨대, 모바일 장치(120)에 의해 실행되는 프로그램들 또는 특징들이 사용자 정보(예컨대, 위치 이력 정보, 또는 예를 들어 사용자의 연락처들, 소셜 네트워크 연줄들, 사회적 행동 또는 활동들, 선호하는 것들, 또는 기타에 관한 다른 정보)를 수집하는지 여부를 제어하고, 그리고/또는 수집된 정보에 기초하여 콘텐츠 서버(예컨대, 로케이션 서버(150))로부터 콘텐츠를 수신할지 여부 그리고/또는 어떻게 수신할지를 제어하는 기회를 제공받을 수 있다. 게다가, 사용자에 대하여 어떤 개인 식별 정보도 알아낼 수 없도록, 어떤 데이터는 저장되거나 사용되기 전에 하나 이상의 방식으로 처리될 수 있거나, 사용자의 특정 위치를 알아낼 수 없도록, 사용자의 지리적 위치는 위치 이력 정보가 얻어지는 경우에 일반화될 수 있다(예를 들어 도시, 우편 번호, 또는 주 수준으로). 이러한 방식들로, 사용자는 콘텐츠 서버에 의해 어떻게 정보가 수집되고 사용되는지를 제어할 수 있다.
위치 이력 데이터는 모바일 장치에 의해 위치 결정을 위한 여러 가지 기술들 중 임의의 기술을 이용하여 획득될 수 있다. 예를 들어, 위치 데이터는 모바일 장치에 의해 GPS 수신기를 이용하여 획득될 수 있다. GPS(Global Positioning System)는 4 개 이상의 GPS 위성들에 대한 가시선이 방해받지 않는 지구상의 또는 그 근처의 어느 곳이든 위치 및 시간 정보를 제공하는 공간 기반의 위성 내비게이션 시스템이다. 이 시스템은 GPS 수신기로 누구든지 자유로이 액세스할 수 있고, 다수의 스마트폰 및 기타 모바일 장치들이 GPS 수신기를 포함하고 있다. 위치 데이터는 알려진 위치의 셀 타워들(또는 다른 모바일 네트워크 액세스 포인트)에의 근접도, 또는 모바일 장치와 복수의 그러한 타워들 간의 3각 측량 등, 다른 기법들을 이용하여 결정될 수도 있다.
일부 예들에서, 위치 이력 데이터는 모바일 장치에 의해 획득되어 그 장치의 메모리에 로컬로 저장될 수 있다. 위치 이력 데이터는, 일부 예들에서, 모바일 장치에서 그 장치의 프로세서를 이용하여 처리될 수 있다. 다른 예들에서, 위치 이력 데이터는 처리를 위해 로케이션 서버로 전달될 수 있다. 예를 들어, 위치 이력 데이터는 획득되고 바로 로케이션 서버로 송신될 수 있다. 일부 예들에서, 위치 이력 데이터는 모바일 장치에 저장되고 미리 정해진 간격을 두고 로케이션 서버로 송신될 수 있다. 예를 들어, 어떤 기간(예컨대, 하루, 일주일, 일개월 등) 동안에 획득된 위치 이력 데이터가 모바일 장치에 저장되고, 해당 기간의 말미에 로케이션 서버로 송신될 수 있다. 일부 예들에서, 위치 이력 데이터는 획득되고 어떤 조건들(예컨대, 무선 네트워크에의 액세스)이 충족될 때까지 모바일 장치에 저장되고, 그런 다음 로케이션 서버로 전달될 수 있다. 일부 예들에서, 위치 이력 데이터는 복수의 날에 걸치는 데이터가 수신될 때까지 로케이션 서버에, 예컨대, 도 1의 디지털 데이터스토어(170)에 저장될 수 있다. 위치 이력 데이터는 이력 위치 데이터뿐만 아니라 현재 위치 데이터도 포함할 수 있다.
위치 이력 데이터는 모바일 장치에 의해 다양한 간격을 두고 획득될 수 있다. 일부 예들에서, 위치 이력 데이터는 모바일 장치에 의해 날마다 일정한 간격을 두고 획득될 수 있다. 예를 들어, 위치 이력 데이터는 1 분마다 여러 번, 1 분마다 한 번, 1 시간마다 한 번, 2 시간마다 한 번, 또는 임의의 다른 시간 간격을 두고 획득될 수 있다. 본 명세서에 기술된 기법들에 더 유용한 위치 이력을 형성하기 위해, 위치 데이터 획득들 사이에 긴 간격들을 이용하는 것보다 더 빈번한 위치 샘플링이 더 나을 수 있다.
위치 이력 데이터는 각종의 방식들로 표현될 수 있다. 도 3에 도시된 바와 같이, 위치 이력 데이터는 지리적 위치와 시점을 나타내는 정보의 형태를 취할 수 있다(예컨대, 위도(310), 경도(312), 날짜(314), 및 시간(316)). 위치 이력 데이터는 또한 해당 위치 데이터 포인트의 정확도의 추정치를 나타내는 정확도 반경(318)을 포함할 수 있다. 정확도 반경은, 위치 데이터의 유형에 따라서, 수 미터에서 수 킬로미터에 이를 수 있다. 예를 들어, GPS 위치 데이터는 수 미터의 정확도 반경을 가질 수 있지만 셀룰러 네트워크 타워 위치 데이터는 수 킬로미터의 정확도 반경을 가질 수 있다.
도 2의 단계 212에 의해 나타낸 바와 같이, 위치 이력 데이터는 복수의 데이터 포인트들을 사용자가 방문한 위치들의 목록으로 축소하도록 처리될 수 있다. 일부 예들에서, 위치 이력 데이터는 로케이션 서버(150)에 의해 처리될 수 있다. 로케이션 서버(150)는 다수의 방식들로 위치 이력 데이터를 처리하고 분석할 수 있다. 예를 들어, (도 3에 도시된 것과 같은) 원시 지리적 위치 이력 데이터는 "방문한 위치" 지리 데이터를 생성하도록 처리될 수 있다. 예를 들어, 위치 이력 데이터는 인근의 위치 이력 데이터 포인트들의 클러스터에 대한 중심(centroid)을 산출하는 것에 의해 원시 위치 이력 데이터를 방문한 위치와 관련시키도록 처리될 수 있다. 위치 이력 데이터 포인트들의 클러스터는 물리적으로 서로 가까운 위치 이력 데이터 포인트들의 집합으로 정의될 수 있고 중심은 이러한 데이터 포인트들의 클러스터의 지리적 중심으로 정의될 수 있다. 이것은 거리 기반 클러스터링이라고 칭할 수 있다. 게다가, 위치 이력 데이터를 더 필터링하고 공간과 시간 모두에서 근접해 있는 데이터 포인트들의 클러스터들을 생성하기 위해 날짜들 및 시간들이 이용될 수 있다. 예를 들어, 사용자가 집에 있을 것으로 예상되는 기간 동안(예컨대, 야간에) 수집된 복수의 데이터 포인트들에는, 사용자의 집 내부의 상이한 위치들(예컨대, 부엌, 침실, 거실 등)에 대응하는 데이터 포인트들이 있을 수 있다. 이 기간 동안의 위치 이력 데이터는 위도와 경도의 작은 차이들을 나타낼 수 있지만, 단일 장소(집)와 관련될 것이다. 그에 따라, 시간 경과에 따라 지리적으로 가까운 이러한 포인트들은 단일 장소를 나타내는 클러스터로 간주될 수 있다. 약간 변화하는 위치들 사이에 중심을 결정하는 것에 의한 클러스터링은 방문한 위치를 나타내기 위해 단일 지리적 위치를 제공할 수 있고, 그곳에서 보낸 시간 범위(예컨대, 클러스터 내의 맨 처음 위치 이력 데이터에서 마지막 위치 이력 데이터까지 걸쳐 이어진 시간)와 연관될 수 있다. 게다가, 클러스터링은 위치 데이터 수집시의 부정확함(예컨대, GPS 또는 다른 소스들로부터의 위치 획득의 오류들)에 의해 야기되는 위치 이력 데이터의 가변성을 줄이는 데 도움이 될 수 있다.
방문한 위치를 나타내는 단일 지리적 위치로서 중심을 결정하는 것 외에도, 다른 처리는 주소나 업체 이름 등, 위치에 관한 정보를 획득하기 위한 역 지오코드 조회(reverse geocode lookups)를 포함할 수도 있다. 예를 들어, 지오코딩 및 역 지오코딩이라고 알려진 프로세스들이 지리 좌표로부터의 위치 데이터를 사람이 알아보기 쉬운 주소들로 변환하는 데 이용된다. 지오코딩은 사람이 알아보기 쉬운 주소(예컨대, 1600 Amphitheatre Parkway, Mountain View, CA)가 지리 좌표(예컨대, 위도 37.423021 및 경도 -122.083739)의 위치 데이터로 변환되는 프로세스를 지칭한다. 역 지오코딩은 역 프로세스(즉, 지리 좌표를 주소로 변환하는 것)를 지칭한다. 이러한 정보는 위치 이력 데이터와 함께 저장될 수 있다. 대안으로, 이러한 프로세스들은 원시 위치 이력 데이터 포인트들을 역 지오코딩하고 이로써, 예를 들어, 단일 주소와 관련되는 위치 이력 데이터 포인터들을 클러스터링하는 것에 의해 클러스터들을 형성하는 데 이용될 수 있다. 이것은 주소 기반 클라스터링이라고 칭할 수 있다.
위에 논의된 클러스터링 프로세스들에 의해 나타내어지는 데이터는 위도, 경도, 시작 시간, 및 종료 시간의 형태를 취할 수 있는데, 여기서 위도와 경도는 중심에 대한 것이고 시작 시간과 종료 시간은 사용자가 특정 장소에 존재한 시간 범위를 나타낸다. 클러스터링된 위치 이력 데이터는 위치 측정의 부정확함, 클러스터 내의 사람의 움직임, 또는 둘 다를 반영할 수 있는 반경을 포함할 수도 있다. 게다가, 이 데이터는 사용자의 위치 이력 데이터 내의 동일한 장소에의 다수의 방문들을 반영할 수 있다. 이러한 예에서, 데이터는 방문 시간들의 벡터를 포함할 수 있는데, 각 방문 시간은 시작 시간과 종료 시간 쌍을 포함한다.
사용자가 방문한 위치들을 결정하는 기법 단계 212는 또한 원시 위치 이력 데이터 포인트들로부터 산출된 중심과 같은, 사용자의 위치 이력 데이터로부터의 지리적 위치를 이용하여 로컬 검색을 수행하는 것을 포함할 수 있다. 일부 예들에서, 지리적 위치는 적어도 위치와 시간을 포함할 수 있다. 일부 예들에서, 지리적 위치는 또한 반경, 즉 위치로부터의 거리를 포함할 수 있다. 이 반경은 지리적 위치를 획득하는 기법에 관련된 정확도 정보로부터 도출될 수 있거나, 또는 그것은 클러스터 내의 위치의 변화에 기초할 수 있을 것이다. 대안으로, 반경에 대한 미리 선택된 값이 이용될 수 있다. 로컬 검색을 수행하는 목적은 지리적 위치에 근접한 목적지들을 반환하기 위한 것이다. 일반적으로, 목적지들은 사용자가 방문했을 수도 있는 장소들을 나타낼 수 있는 업체들, 주소들, 또는 다른 지도로 그릴 수 있는 특징들이다.
로컬 검색은 로컬 검색 엔진에서 수행될 수 있다. 로컬 검색 엔진들은 특정 지리적 지역 내의 업체 목록들 및/또는 적절한 웹 페이지들을 반환하려고 하는 검색 엔진들이다. 로컬 검색을 위해, 사용자는 검색 쿼리를 입력하고 그 검색 쿼리가 수행되어야 하는 지리적 지역을 명시할 수 있다. 로컬 검색 엔진은 그 지리적 지역 내의 업체들의 목록들 및/또는 그 지리적 지역에 관한 적절한 웹 페이지들과 같은, 적절한 결과들을 사용자에게 반환할 수 있다.
일부 예들에서, 로컬 검색은 사용자의 위치 이력 데이터로부터의 지리적 위치 및 검색이 수행되어야 하는 반경을 가지고 로컬 검색 엔진에 전화를 거는 것에 의해 수행될 수 있다. 예를 들어, 로컬 검색은 위도와 경도, 그리고 예를 들어, 200 미터와 같은, 반경에 대하여 수행될 수도 있다. 위도와 경도는 일반적으로 사용자의 위치 이력 데이터로부터의 포인트 또는 클러스터의 중심이다. 반경은 위에 기술된 바와 같이 산출될 수 있거나, 또는 그것은 200 미터와 같이 미리 선택될 수도 있다. 200 미터 반경은 위치 이력 데이터에서의 기대 정확도가 대략 100 미터인 경우에 유익할 수 있다. 이렇게 하여, 사용자의 실제 목적지가 로컬 검색의 일부로서 검색된 지역 내에 있다고 확신할 수 있다. 게다가, 로컬 검색은 반환되는 지역으로부터의 목적지의 수에 대한 한계 N을 포함할 수도 있다. 예를 들어, N=10을 명시하면 200 미터 반경 내로부터의 결과의 수를 10으로 제한할 수도 있다.
그러나, 로컬 검색에 의해 반환된 결과들은 일부 유형의 목적지들에 대하여 품질이 낮을 수 있다. 로컬 검색에 의해 반환된 결과들은 보통 공개 목록들로부터 이용 가능한 업체들, 명소들, 및 다른 정보로 제한된다. 예를 들어, 사용자가 집에 있는 친구를 방문한다면, 친구의 집은 로컬 검색에서 결과로서 생성될 가능성이 없다. 이러한 경우, 위도/경도 위치와는 대조적으로 거리 주소를 제공하기 위해 역 지오코딩 프로세스가 이용될 수 있다. 거리 주소가 위도/경도 위치보다 더 적절할 수 있지만, 어느 쪽 위치 형식도 사용자에게 특히 적절하고/하거나 바람직하지 않을 수 있다. 상이한 유형의 위치 라벨, 예컨대, "Bob의 집"이 사용자가 그가 방문한 위치들을 검토하거나, 액세스하거나, 분석하거나, 또는 다른 방법으로 그 위치들과 인터페이싱할 때 사용자에게 더 바람직하고/하거나 정황적으로 적절할 수 있다.
본 명세서에 기술된 시스템들 및 기법들은 사용자와 연관된 연락처 정보에 기초하여 적절한 위치 라벨을 방문한 위치들에 연관시키는 것에 대해 준비한다. 도 4에 도시된 일부 예들에서, 위치 라벨을 방문한 위치와 연관시키는 기법(400)이 제공된다. 우선, 위에 기술되고 도 2에 도시된 바와 같이 하나 이상의 방문한 위치들을 결정하기 위해 수집된 위치 데이터가 분석된다. 방문한 위치의 결정에 이어서, 기법 단계 410는 방문한 위치가 연락처 목록에 저장된 위치 정보와 매칭하는지를 결정하기 위해 사용자의 연락처 목록을 검색하는 것을 포함할 수 있다.
도 5는 사용자의 연락처 목록에 포함될 수 있는 데이터의 예를 보여주고 있다. 연락처 목록은 하나 이상의 항목들을 포함할 수 있는데 여기서 각 항목은 개인, 그룹, 회사, 조직 등에 대응한다. 연락처 목록은 각 연락처 목록 항목과 관련하여 임의의 개수의 데이터 필드를 포함할 수 있다. 도 5는 이름(first name)(510), 성(last name)(512), 이메일 주소(514), 전화 번호(516), 및 거리 주소(518), 도시(520), 주(522), 및 우편 번호(524)를 포함하는 집 주소를 포함하여, 표 형식의 몇 개의 예시적인 필드들을 보여주고 있다. 각 연락처 목록 항목은 임의의 개수의 주소를 포함하여, 그와 연관된 부가적인 필드들을 가질 수 있다. 각 주소는 번지, 거리 이름, 도시, 주, 및 우편 번호 등의 연락처 위치 정보뿐만 아니라, "집", "직장" 등의 연락처 위치 라벨도 포함할 수 있다. 이러한 방식으로, 사용자는 자신의 연락처 목록에 임의의 개수의 주소들과 함께 이와 관련하여 주소에 대한 부가적인 컨텍스트를 제공하는 라벨들을 저장할 수 있다.
사용자가 방문한 위치가 사용자의 연락처 목록에 저장된 위치에 대응하는지를 결정하기 위해 다양한 방식으로 사용자의 연락처 목록의 검색을 수행할 수 있다. 두 개의 위치가 매칭하는지를 결정하는 기법들은 로컬 검색 쿼리들과 관련하여 위에 논의된 것들과 유사할 수 있다. 일부 예들에서, 방문한 위치는 주소와 정확도 반경의 형태로 표현될 수 있다. 이러한 예에서, 사용자의 연락처 목록 내에 동일한 주소(예컨대, 동일한 주소 번지, 거리, 도시, 주, 및 우편 번호)가 존재하는지를 결정하는 것에 의해 사용자의 연락처 목록이 검색될 수 있다. 부분적인 매칭들이 발견되면(예컨대, 동일한 도시의 동일한 거리에 상이한 번지 등), 부분적인 매칭이 정확도 반경 안에 있는지를 결정하기 위해 방문한 위치의 주소와 부분적인 매칭 주소 간에 거리 산출이 이루어질 수 있다. 그렇다면, 부분적인 매칭은 매칭하는 주소로서 이용될 수 있다. 정확도 반경 안에 하나보다 많은 부분적인 매칭이 위치한다면, 사용자에게 둘 다의 가능한 매칭들이 제시될 수 있다. 매칭들은 거리 주소 형태로 제시될 수 있거나, 또는 사용자의 연락처 목록 내의 각각의 매칭하는 주소와 연관된 연락처 이름(예컨대, "Bob") 및 위치 라벨(예컨대, "집")의 형태로 제시될 수 있다. 그 후 사용자는 방문한 위치와 연관된 정확한 주소 또는 연락처를 선택하도록 유도(prompt)될 수 있다.
또 다른 예에서, 매칭은 우편 주소가 아니라 지리적 위치에 기초하여 성취될 수 있다. 이러한 예에서는, 지리적 위치(예컨대, 위도, 경도, 및 정확도 반경)가 사용자의 연락처 목록에 저장된 주소들의 지오코딩된 위치들(예컨대, 도 5에 도시된 각 주소 항목에 대한 위도와 경도)과 비교될 수 있다. 사용자의 연락처 목록 내의 주소의 위치가 방문한 위치의 위치의 정확도 반경 안에 있는지를 결정하기 위해 거리 산출이 이루어질 수 있다. 그렇다면, 매칭하는 위치의 연관된 주소 또는 연락처 이름 및 위치 라벨이 매칭하는 주소로서 이용될 수 있다. 연락처 목록으로부터의 하나보다 많은 항목이 방문한 위치의 정확도 반경 안에 있다면, 위에 논의된 바와 같이, 사용자는 방문한 위치에 대한 정확한 연락처를 선택하도록 유도될 수 있다.
매칭하는 주소 또는 위치가 발견되면, 기법(400)은 도 4의 단계 412에 의해 나타내어진 바와 같이, 방문한 위치를 사용자의 연락처 목록으로부터의 매칭하는 연락처 정보와 연관시키는 것을 포함할 수 있다. 방문한 위치를 매칭하는 연락처 정보와 연관시키는 것은, 예를 들어, 매칭하는 주소에 대한 연락처 이름(예컨대, "Bob") 및 위치 라벨(예컨대, "집")을 방문한 위치와 연관시키는 것을 포함할 수 있다. 이러한 예에서, 사용자가 임의의 개수의 애플리케이션들 및/또는 인터페이스들을 통하여 자신의 위치 이력 데이터를 검토하거나 다른 방법으로 이와 상호 작용할 때, 방문한 위치는 위도/경도 위치 또는 역 지오코딩된 거리 주소로서 제시되는 것이 아니라, 예컨대, "Bob의 집"으로서 제시될 수 있다. 이러한 제시는 방문한 위치에 대한 연락처 기반 라벨(예컨대, "Bob의 집")이 지리적 위치 또는 거리 주소보다 사용자에게 더 정황적으로 적절할 수 있기 때문에 유리할 수 있다.
전술한 연락처 목록 검색에 대안으로, 또는 부가적으로, 기법(400)은 사용자와 연관된 하나 이상의 다른 정보 소스들을 검색하는 것을 포함할 수 있다. 예를 들어, 기법(400)은 프로세서가 사용자와 연관된 하나 이상의 이메일들(예컨대, 사용자의 받은편지함 또는 메일 시스템에 저장된 이메일들)을 검색하는 것을 포함할 수 있다. 하나 이상의 이메일들은 사용자의 연락처 목록에 존재하지 않는 연락처 정보와 관련하여 위치 정보를 포함할 수 있다. 한 예는 발신자가 흔히 이메일의 말미에 연락처 정보 ― 주소 또는 다른 위치 정보를 포함함 ― 를 포함시키는 이메일 푸터(email footer)이다. 전형적인 이메일 푸터에 포함된 정보는, 특히 발신자의 알려진 이름과 이메일 주소와 결합될 때, 발신자에 대한 포괄적인 연락처 목록 항목과 같을 수 있다. 이에 따라, 이 개시 내용에 따른 기법들 및 시스템들은 방문한 위치가 하나 이상의 이메일에 포함된 위치 정보에 대응하는지를 결정하기 위해 하나 이상의 이메일을 검색하는 것을 포함할 수 있다. 매칭하는 정보가 발견된다면, 방문한 위치는 이메일 발신자의 이름 및, 존재한다면, 발신자에 의해 할당된 위치 라벨(예컨대, "사무실", "집" 등)을 이용하여 라벨링될 수 있다. 더욱이, 일부 예들에서 기법(400)은 방문한 위치의 주소 또는 위치와 함께 발신자에 대한 항목을 포함하도록 사용자의 연락처 목록을 생성하거나 갱신하는 것을 포함할 수 있다.
또 다른 예에서, 방문한 위치의 주소 또는 위치를 연락처 목록 항목과 신속히 연관시키는 기법들이 제공된다. 이를 행하는 예시적인 기법(600)이 도 6에 도시되어 있다. 우선, 도 2에 도시된 바와 같이 하나 이상의 방문한 위치를 결정하기 위해 수집된 위치 데이터가 분석될 수 있다. 방문한 위치의 결정에 이어서, 기법(600)은 방문한 위치를 사용자에게 제시하는 단계 610을 포함할 수 있다. 방문한 위치는, 예를 들어, 위도/경도 위치, 역 지오코딩된 주소, 또는 둘 다로서 제시될 수 있다. 게다가, 일부 예들에서 도 4에 도시된 기법이 더 정황적으로 적절한 위치 라벨이 이용 가능한지를 결정하는 데 성공적으로 이용되지 못한(즉, 방문한 위치가 임의의 연락처와 관련하여 사용자의 연락처 목록에 이미 저장되어 있지 않다고 결정된) 이후에만 위도/경도 위치 또는 역 지오코딩된 주소로서 방문한 위치가 사용자에게 제시될 수 있다. 방문한 위치는, 예를 들어, 사용자의 컴퓨터 또는 모바일 장치에서 제시된 위치 이력 검토 인터페이스를 포함하여, 각종 상이한 장치들 및 사용자 인터페이스들을 이용하여 제시될 수 있다.
이 기법은, 단계 612에 도시된 바와 같이, 사용자로부터 연락처 및 위치 라벨의 지정을 수신하는 것을 추가로 포함할 수 있다. 한 예에서, 사용자는 자신의 연락처 목록으로부터 연락처들의 목록을 제공받을 수 있고 방문한 위치와 연관된 적절한 연락처를 선택할 수 있다. 사용자는 또한 연관된 위치 라벨(예컨대, "집", "직장" 등)을 선택하거나 입력하도록 유도될 수 있다. 사용자로부터 그러한 지정을 수신한 후에, 이 기법은 방문한 위치를 사용자가 지정한 연락처 및 위치 라벨과 연관시키는 단계 614를 포함할 수 있다. 방문한 위치를 연락처와 연관시키는 것은, 예를 들어, 지정된 위치 라벨과 함께 방문한 위치의 위치 및/또는 역 지오코딩된 주소를 포함하도록 연락처에 대한 연락처 목록 항목을 갱신하는 것을 포함할 수 있다(즉, 사용자의 연락처 목록은 지정된 라벨 아래에 방문한 장소를 포함하도록 갱신될 수 있다). 이를 행한 후에, 연락처 이름 및 위치 라벨은 방문한 위치에 관한 사용자와의 추후 상호 작용들에서 이용될 수 있다.
도 7에 도시된 또 다른 예에서, 다른 사용자들과의 상호 작용들로부터 시스템에 알려진 정보를 이용할 수 있는, 연락처 라벨을 제1 사용자가 방문한 위치와 연관시키는 기법(700)이 제공된다. 위에 언급된 바와 같이, 도 2에 도시된 바와 같이, 처음에 위치 데이터가 제1 사용자로부터(예컨대, 사용자와 연관된 모바일 장치를 이용하여) 수집되고 하나 이상의 방문한 위치를 결정하기 위해 분석될 수 있다. 방문한 위치의 결정에 이어서, 기법(700)은 제1 사용자가 방문한 위치가 제2 사용자와 연관되어 있는지를 결정하는 단계 710을 포함할 수 있다. 방문한 위치는, 예를 들어, 제2 사용자가 방문한 위치에 대한 위치 및/또는 주소에 대한 라벨을 제공했다면(예컨대, 제2 사용자가 방문한 위치에 대한 위치 및/또는 주소를 "집"으로 라벨링했다면) 제2 사용자와 연관될 수 있다. 방문한 위치가 제2 사용자와 연관되어 있다면, 이 기법은 단계 712에 나타낸 바와 같이, 방문한 위치의 위치 및 제2 사용자의 위치 라벨을 포함하도록 제1 사용자와 연관된 연락처 목록에서 제2 사용자에 대한 연락처 목록 항목을 갱신하는 것을 추가로 포함할 수 있다.
예로서, 로케이션 서버(150)는 제1 사용자가 위치를 방문한다고 그리고 방문한 위치의 위치 및/또는 주소가 제1 사용자의 연락처 목록에 저장된 어떤 위치들 또는 주소들과도 매칭하지 않는다고 결정할 수 있다(예컨대, 도 4에 도시된 기법을 이용하여). 이러한 경우에, 로케이션 서버(150)는 방문한 위치가 제2 사용자와 연관되어 있는지를 결정할 수 있다. 이것은, 예를 들어, 하나 이상의 다른 사용자들에 대하여 로케이션 서버(150)에 의해 처리된 매칭하는 위치들 및/또는 주소들을 검색하는 것에 의해 행해질 수 있지만, 다수의 사용자들의 데이터에 걸쳐 수행되는 임의의 액세스 및 검색은 사용 및 프라이버시 정책들의 용인된 조건들에 따라 행해져야 한다. 매칭하는 위치가 발견된다면(예컨대, 제2 사용자 "Sally"가 방문한 위치를 "집"으로 라벨링하였다면), 제1 사용자의 연락처 목록에서 제2 사용자에 대한 연락처 목록 항목은 방문한 위치의 위치 및/또는 주소와 함께, 연관된 위치 라벨(예컨대, "Sally의 집")을 포함하도록 갱신될 수 있다. 대안으로, 제2 사용자에 대하여 어떤 연락처 목록 항목도 존재하지 않는다면, 제1 사용자의 연락처 목록을 갱신하는 것은 제2 사용자에 대한 새로운 항목을 생성하는 것을 포함할 수 있다.
제1 사용자의 연락처 목록은, 일부 예들에서, 다른 사용자들과의 상호 작용들로부터 알려진 정보를 포함하도록 자동으로 갱신될 수 있다. 그러나, 다른 예들에서, 이 기법은 제2 사용자에 대한 연락처 목록 항목을 갱신하거나, 생성하거나, 다른 방법으로 편집할 수 있는 허가를 위해 사용자를 유도하는 것을 포함할 수 있다. 또 다른 예들에서, 제2 사용자로부터의 연락처 이름 및 위치 라벨은 제1 사용자에게 위치 이력 정보를 제시할 때 이용될 수 있고, 제2 사용자에 대한 연락처 목록 항목은 제1 사용자가 선택할 때에만 생성되거나 갱신될 수 있다. 이러한 예에서, 예를 들어, 제1 사용자는 자신의 위치 이력을 나타내는 인터페이스를 제시받을 수 있고, 인터페이스는 제2 사용자로부터 얻어진 이름 및 위치 라벨을 이용하여 방문한 위치를 제시할 수 있다. 인터페이스는 정보가 제2 사용자로부터 얻어졌다는 사실을 제1 사용자에게 알려줄 수 있고, 제1 사용자는 위치 및/또는 주소, 위치 라벨, 및 연락처 이름을 자신의 연락처 목록에 추가하도록(다시 말하지만, 기존 항목을 갱신하거나 하나도 존재하지 않으면 새로운 것을 생성하는 것에 의해) 유도될 수 있다.
본 명세서에 기술된 예들은 사용자가 방문한 위치들을 결정하고 연락처 정보에 기초하여 적절한 라벨들을 그 위치들과 연관시키는 시스템들 및 기법들을 제공한다. 일반적으로, 본 명세서에 기술된 시스템들 및 기법들은 (예컨대, 사용자와 연관된 모바일 장치로부터 위치 정보를 수집하는 것에 의해) 사용자에 대해 수집된 위치 이력 데이터에 기초하여 사용자가 방문한 하나 이상의 위치들을 결정할 수 있다. 이 시스템들 및 기법들은 추가로 사용자가 방문한 위치가 사용자의 연락처 목록 내의 항목(예컨대, 연락처 목록 내의 연락처와 연관된 주소)에 대응하는지를 또는 연락처가 어떤 다른 수단에 의해 알려져 있는지(예컨대, 사용자에 의해 제공되거나 다른 사용자와의 상호 작용들로부터 시스템에 알려져 있는지)를 결정할 수 있다. 연락처가 알려져 있는 경우에, 적절한 라벨(예컨대, "John의 집")이 방문한 위치에 적용될 수 있다. 게다가, 사용자의 연락처 목록은 방문한 위치가 연락처 목록에 이전에 저장되지 않았다면 연락처와 관련하여 방문한 위치를 포함하도록 갱신될 수 있다.
더 구체적으로, 제1 양상에서, 사용자에 대한 위치 이력 데이터를 수집하고 이 위치 이력 데이터를 데이터스토어에 저장하는 것을 포함하는, 컴퓨터 프로세서를 이용하여 사용자가 방문한 위치를 라벨링하는 기법이 제공된다. 이 기법은 프로세서가 데이터스토어와 통신하여, 위치 이력 데이터로부터 방문한 위치를 결정하는 것을 추가로 포함한다. 이 기법은 또한 프로세서가 방문한 위치에 대응하는 연락처 위치 정보를 얻기 위해 사용자와 연관된 연락처 목록을 검색하는 것과, 프로세서가 방문한 위치를 매칭하는 연락처 위치 정보에 대응하는 연락처 위치 라벨과 연관시키는 것을 포함한다.
본 명세서에 기술된 시스템들 및 기법들은 다수의 변형들 및 부가적인 특징들을 가질 수 있다. 예를 들어, 일부 예들에서, 사용자와 연관된 연락처 목록을 검색하는 것은 방문한 위치와 연락처 목록에 저장된 하나 이상의 주소들 간에 가장 가까운 매칭을 검출하는 것을 포함할 수 있다.
다른 예들에서, 사용자에 대한 위치 이력 데이터를 수집하는 것은 사용자와 연관된 모바일 장치로부터 위치 이력 데이터를 수신하는 것을 포함할 수 있다. 위치 이력 데이터는, 일부 예들에서, 하나 이상의 날짜, 시간, 및 지리적 위치를 나타내는 정보를 포함할 수 있다.
또 다른 예들에서, 사용자가 방문한 하나 이상의 위치들을 결정하는 것은 위치 이력 데이터로부터 복수의 지리적 위치들을 클러스터링하는 것을 포함할 수 있다. 클러스터링은, 일부 예들에서, 위치 이력 데이터로부터 복수의 지리적 위치들의 중심을 나타내는 중심 지리적 위치 및 정확도 반경을 반환할 수 있다.
위치 이력 데이터에 포함된, 또는 그로부터 도출된 하나 이상의 지리적 위치들은 위도와 경도의 위치의 형태를 가질 수 있다. 일부 예들에서, 사용자가 방문한 위치를 결정하는 것은 위치 이력 데이터로부터 도출된 하나 이상의 지리적 위치들을 역 지오코딩하는 것을 포함할 수 있다.
어떤 예들에서, 이 기법은 사용자와 연관된 연락처 목록에 추가로 사용자와 연관된 다른 정보 소스들을 검색하는 것을 포함할 수 있다. 예를 들어, 일부 예들에서 이 기법은 프로세서가 방문한 위치에 대응하는 연락처 위치 정보를 검출하기 위해 사용자와 연관된 하나 이상의 이메일들을 검색하는 것을 포함할 수 있다. 이것은, 예를 들어, 사용자가 자신의 연락처 목록에 저장된 연락처의 주소를 가지고 있지 않지만, (예컨대, 연락처로부터의 이메일의 푸터에) 그 주소를 포함하는 연락처로부터의 이메일을 가지고 있다면 유익할 수 있다. 이러한 예에서, 연락처와 연관된 위치 라벨이 방문한 위치에 적용될 수 있고 사용자의 연락처 목록은 연락처에 대한 항목에 위치 정보를 포함하도록 갱신될 수 있다.
또 다른 양상에서, 사용자에 대한 위치 이력 데이터를 수집하고 이 위치 이력 데이터를 데이터스토어에 저장하는 것을 포함하는, 컴퓨터 프로세서를 이용하여 위치 정보를 연락처와 연관시키는 기법이 제공된다. 이 기법은 프로세서가 데이터스토어와 통신하여, 위치 이력 데이터로부터 방문한 위치를 결정하는 것을 추가로 포함한다. 이 기법은 또한 사용자로부터 연락처 및 위치 라벨의 지정을 수신하는 것과, 프로세서가 방문한 위치를 연락처 및 위치 라벨과 연관시키는 것을 포함한다. 일부 예들에서, 방문한 위치를 연락처 및 위치 라벨과 연관시키는 것은 방문한 위치와 위치 라벨을 포함하도록 연락처에 대한 연락처 항목을 갱신하는 것을 포함할 수 있다.
또 다른 양상에서, 제1 사용자에 대한 위치 이력 데이터를 수집하고 이 위치 이력 데이터를 데이터스토어에 저장하는 것과, 또한 프로세서가 데이터스토어와 통신하여, 위치 이력 데이터로부터 제1 사용자가 방문한 위치를 결정하는 것을 포함하는, 컴퓨터 프로세서를 이용하여 위치 정보를 연락처와 연관시키는 방법이 제공된다. 이 기법은 또한 프로세서가 제1 사용자가 방문한 위치가 제2 사용자와 연관되어 있는지를 결정하는 단계를 포함한다. 이 기법은 추가로 방문한 위치가 제2 사용자와 연관되어 있는 경우에 프로세서가 제1 사용자와 연관된 연락처 목록에서 제2 사용자에 대한 연락처 목록 항목을 방문한 위치를 포함하도록 갱신하는 것을 포함할 수 있다.
일부 예들에서, 연락처 목록 항목을 갱신하는 것은 제2 사용자로부터 얻어진 위치 라벨을 방문한 위치와 연관시키는 것을 포함할 수 있다. 이를 행할 때, 제1 사용자에 대한 연락처 목록이 방문한 위치 또는, 일부 경우에, 제2 사용자에 대한 항목조차 포함하지 않았을 수도 있다는 사실에도 불구하고, 시스템에 알려져 있는 한 위치가 라벨링되고 연락처 이름과 연관될 수 있다. 어떤 예들에서, 연락처 목록 항목을 갱신하는 것은 이를 행하기에 앞서 제2 사용자에 대한 연락처 목록 항목을 편집할(또는 하나도 존재하지 않으면 제2 사용자에 대한 연락처 목록 항목을 생성할) 허가를 위해 제1 사용자를 유도하는 것을 포함할 수 있다.
일부 예들에서, 이 개시 내용은 도 1에 관련하여 기술된 하나 이상의 장치들(예컨대, 모바일 장치(120) 및/또는 로케이션 서버(150))에 의해 구현될 수 있는 기법들을 기술한다. 전술한 바와 같이, 일부 예들에서, 로케이션 서버(150)의 기능은 모바일 장치(120)에 의해 구현될 수 있다. 모바일 장치(120)와 로케이션 서버(150)는 일반적으로 컴퓨팅 장치라고 칭해질 수 있다.
하나의 예에서, 기법은 컴퓨팅 장치(예컨대, 모바일 장치(120), 로케이션 서버(150), 및/또는 모바일 장치(120) 및/또는 로케이션 서버(150)에 포함된 하나 이상의 프로세서)가 사용자와 연관된 위치 이력 데이터를 수집하는 것을 포함한다. 이 기법은 또한 컴퓨팅 장치가 위치 이력 데이터에 기초하여, 사용자가 방문한 위치를 결정하는 것을 포함할 수 있다. 게다가, 이 기법은 컴퓨팅 장치가 사용자가 방문한 위치를 연락처 위치 라벨 - 이 연락처 위치 라벨은 위치 및 사용자와 연관된 연락처 정보에 적어도 부분적으로 기초하여 결정됨 - 을 연관시키는 것과, 컴퓨팅 장치가 연락처 위치 라벨을 출력하는 것을 포함할 수 있다.
일부 예들에서, 연락처 정보는 사용자의 연락처의 이름을 포함하고, 컴퓨팅 장치(예컨대, 모바일 장치(120), 로케이션 서버(150), 및/또는 모바일 장치(120) 및/또는 로케이션 서버(150)에 포함된 하나 이상의 프로세서)가 연락처 위치 라벨을 출력하는 것은 컴퓨팅 장치가 연락처 위치 라벨과 사용자의 연락처의 이름을 출력하는 것을 포함한다.
일부 예들에서, 사용자에 대한 위치 이력 데이터를 수집하는 것은 사용자와 연관된 모바일 컴퓨팅 장치(예컨대, 모바일 장치(120))로부터 위치 이력 데이터를 수신하는 것을 포함한다.
일부 예들에서, 위치 이력 데이터는 복수의 지리적 위치들, 복수의 지리적 위치들로부터의 각각의 지리적 위치와 연관된 각각의 시간, 및 복수의 지리적 위치들로부터의 각각의 지리적 위치와 연관된 각각의 날짜를 포함한다.
일부 예들에서, 사용자가 방문한 위치를 결정하는 것은 컴퓨팅 장치(예컨대, 모바일 장치(120), 로케이션 서버(150), 및/또는 모바일 장치(120) 및/또는 로케이션 서버(150)에 포함된 하나 이상의 프로세서)가 위치 이력 데이터로부터 위치 이력 데이터 포인트들의 클러스터에 대한 지리적 중심을 산출하는 것을 포함한다. 일부 예들에서, 이 기법은 추가로 컴퓨팅 장치가 지리적 중심에 대한 정확도 반경을 산출하는 것을 포함할 수 있다.
일부 예들에서, 사용자가 방문한 위치를 결정하는 것은 위치 이력 데이터로부터 도출된 지리 좌표를 주소로 변환하는 것을 포함한다.
또 다른 예에서, 이 개시 내용은 하나 이상의 프로세서를 포함하는 시스템을 기술한다. 하나 이상의 프로세서는, 예를 들어, 모바일 장치(120) 및/또는 로케이션 서버(150)에 포함될 수 있다. 하나 이상의 프로세서는 사용자와 연관된 위치 이력 데이터를 수집하고 이 위치 이력 데이터로부터 위치 이력 데이터 포인트들의 클러스터에 대한 지리적 중심 및 이 지리적 중심에 대한 정확도 반경 - 지리적 중심과 정확도 반경은 함께 사용자가 방문한 위치를 정의함 - 을 산출하도록 구성되어 있을 수 있다. 게다가, 하나 이상의 프로세서는 사용자가 방문한 위치를 연락처 위치 라벨 - 이 연락처 위치 라벨은 위치 및 사용자와 연관된 연락처 정보에 적어도 부분적으로 기초하여 결정됨 - 을 연관시키고, 연락처 위치 라벨을 출력하도록 구성되어 있을 수 있다.
일부 예들에서, 연락처 정보는 사용자의 연락처의 이름을 포함하고, 하나 이상의 프로세서는 연락처 위치 라벨 및 사용자의 연락처의 이름을 출력하도록 구성되어 있다.
일부 예들에서, 하나 이상의 프로세서는 사용자와 연관된 모바일 컴퓨팅 장치(예컨대, 모바일 장치(120))로부터 위치 이력 데이터를 수신하도록 구성되어 있다.
일부 예들에서, 위치 이력 데이터는 복수의 지리적 위치들, 복수의 지리적 위치들로부터의 각각의 지리적 위치와 연관된 각각의 시간, 및 복수의 지리적 위치들로부터의 각각의 지리적 위치와 연관된 각각의 날짜를 포함한다.
일부 예들에서, 하나 이상의 프로세서는 추가로 지리적 중심을 주소로 변환하도록 구성되어 있다.
일부 예들에서, 사용자와 연관된 연락처 정보는 적어도 하나의 주소를 포함하고, 하나 이상의 프로세서는 적어도 하나의 주소와 사용자가 방문한 위치 간의 적어도 부분적인 매칭을 검출하는 것에 의해 사용자가 방문한 위치를 연락처 위치 라벨과 연관시키도록 구성되어 있다.
또 다른 예에서, 이 개시 내용은 컴퓨팅 장치(예컨대, 모바일 장치(120), 로케이션 서버(150), 및/또는 모바일 장치(120) 및/또는 로케이션 서버(150)에 포함된 하나 이상의 프로세서)가 사용자와 연관된 위치 이력 데이터를 수집하는 것을 포함하는 기법을 기술한다. 이 기법은 또한 컴퓨팅 장치가 위치 이력 데이터에 적어도 부분적으로 기초하여, 사용자가 방문한 위치를 결정하는 것과, 컴퓨팅 장치가 사용자가 방문한 위치가 위치 라벨과 연관되어 있는 것을 결정하는 것을 포함할 수 있다. 이 기법은 추가로 컴퓨팅 장치가 위치의 표시 및 위치 라벨을 포함하는 연락처 목록 항목을 포함하도록 사용자와 연관된 연락처 목록을 갱신하는 것을 포함할 수 있다.
일부 예들에서, 위치 이력 데이터는 복수의 지리적 위치들, 복수의 지리적 위치들로부터의 각각의 지리적 위치와 연관된 각각의 시간, 및 복수의 지리적 위치들로부터의 각각의 지리적 위치와 연관된 각각의 날짜를 포함한다.
일부 예들에서, 사용자가 방문한 위치를 결정하는 것은 컴퓨팅 장치(예컨대, 모바일 장치(120), 로케이션 서버(150), 및/또는 모바일 장치(120) 및/또는 로케이션 서버(150)에 포함된 하나 이상의 프로세서)가 위치 이력 데이터로부터 위치 이력 데이터 포인트들의 클러스터에 대한 지리적 중심을 산출하는 것을 포함한다. 일부 예들에서, 이 기법은 추가로 컴퓨팅 장치(예컨대, 모바일 장치(120), 로케이션 서버(150), 및/또는 모바일 장치(120) 및/또는 로케이션 서버(150)에 포함된 하나 이상의 프로세서)가 지리적 중심에 대한 정확도 반경을 산출하는 것을 포함한다.
일부 예들에서, 사용자가 방문한 위치를 결정하는 것은 위치 이력 데이터로부터 도출된 지리 좌표를 주소로 변환하는 것을 포함한다.
일부 예들에서, 위치 라벨은 제2 사용자로부터 얻어진다.
일부 예들에서, 사용자와 연관된 연락처 목록을 갱신하는 것은 제2 사용자에 대한 연락처 목록 항목을 편집할 수 있는 허가를 위해 사용자를 유도하는 것을 포함한다.
일부 예들에서, 위치는 업체를 포함한다.
또 다른 예에서, 이 개시 내용은 하나 이상의 프로세서를 포함하는 시스템을 기술한다. 하나 이상의 프로세서는, 예를 들어, 모바일 장치(120) 및/또는 로케이션 서버(150)에 포함될 수 있다. 하나 이상의 프로세서는 사용자와 연관된 위치 이력 데이터를 수집하고; 이 위치 이력 데이터에 적어도 부분적으로 기초하여, 사용자가 방문한 위치를 결정하고; 사용자가 방문한 위치가 제2 사용자로부터 얻어진 위치 라벨과 위치 라벨과 연관되어 있는 것을 결정하고; 위치의 표시 및 위치 라벨을 포함하는 제2 사용자와 연관된 연락처 목록 항목을 포함하도록 사용자와 연관된 연락처 목록을 갱신하도록 구성되어 있을 수 있다.
일부 예들에서, 위치 이력 데이터는 복수의 지리적 위치들, 복수의 지리적 위치들로부터의 각각의 지리적 위치와 연관된 각각의 시간, 및 복수의 지리적 위치들로부터의 각각의 지리적 위치와 연관된 각각의 날짜를 포함한다.
일부 예들에서, 하나 이상의 프로세서는 위치 이력 데이터로부터 위치 이력 데이터 포인트들의 클러스터에 대한 지리적 중심 및 이 지리적 중심에 대한 정확도 반경을 산출하는 것에 의해 사용자가 방문한 위치를 결정하도록 구성되어 있다.
일부 예들에서, 하나 이상의 프로세서는 위치 이력 데이터로부터 도출된 지리 좌표를 주소로 변환하는 것에 의해 사용자가 방문한 위치를 결정하도록 구성되어 있다.
일부 예들에서, 하나 이상의 프로세서는 추가로 제2 사용자에 대한 연락처 목록 항목을 추가하도록 연락처 목록을 편집할 수 있는 허가를 위해 사용자를 유도하도록 구성되어 있다.
일부 예들에서, 위치는 업체를 포함한다.
몇 개의 예시적인 구현들이 위에 상세히 기술되었지만, 다른 변형들도 가능하다. 더욱이, 본 명세서에 기술된 시스템들 및 기법들을 수행하기 위한 다른 메커니즘들이 이용될 수도 있다. 게다가, 도면들에 도시된 논리 흐름들은 바람직한 결과들을 성취하기 위해 도시된 특정한 순서나 순차적인 순서를 요구하지 않는다. 기술된 흐름들에 다른 단계들이 제공될 수도 있고, 또는 그로부터 단계들이 제거될 수도 있고, 기술된 시스템들에 다른 컴포넌트들이 추가될 수도 있고, 또는 그로부터 제거될 수도 있다. 그에 따라, 다른 구현들이 청구항들의 범위 안에 있다.
용어 "a" 및 "an"은 위에서 상호 교환 가능하게 사용되고, 본 출원에서 이용되는 "하나 이상의(one or more)"라는 구절과 같다. 용어 "포함하는" 및 "갖는"("comprising," "having," "including," 및 "containing")은 위에서 다르게 지적되지 않는 한 제한이 없는(open-ended) 용어들(즉, "포함하지만, 제한되지 않는"을 의미함)로서 해석되어야 한다. 본 명세서에서 임의의 값들의 범위들을 열거하는 것은, 본 명세서에서 다르게 지적되지 않는 한, 그 범위에 속하는 각각의 독립된 값을 개별적으로 언급하는 것의 속기 기법으로 역할하려는 것에 불과하고, 각각의 독립된 값은 마치 그것이 개별적으로 언급된 것처럼 이 명세서에 포함된다. 본 명세서에 제공된 임의의 그리고 모든 예들, 또는 예시적인 표현(예컨대, "와 같은")의 사용은 단지 이 개시 내용을 더 잘 설명하려는 것일 뿐이고 다르게 주장되지 않는 한 이 개시 내용의 범위에 제한을 두지 않는다. 이 명세서의 어떤 표현도 이 개시 내용의 기법들의 실시에 필수적인 것으로서 어떤 청구되지 않은 요소를 나타내는 것으로 해석되어서는 안 된다. 마지막으로, 본 명세서에 인용된 임의의 논문들 및 간행물들은 이로써 그 전체가 참고로 포함된다.

Claims (20)

  1. 컴퓨팅 장치가 사용자와 연관된 위치 이력 데이터를 수집하는 단계;
    상기 컴퓨팅 장치가 상기 위치 이력 데이터에 적어도 부분적으로 기초하여 상기 사용자가 방문한 지리적 위치를 결정하는 단계;
    상기 컴퓨팅 장치가, 상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 연락처 목록에 포함된 연락처 목록 항목에 포함된 위치에 대응하는지를 결정하는 단계;
    상기 컴퓨팅 장치가 상기 연락처 목록 항목에 포함된 연락처 이름 및 상기 연락처 목록 항목에 포함된 위치 라벨의 표시를 검색하는 단계; 및
    상기 컴퓨팅 장치가 상기 사용자가 방문한 상기 지리적 위치, 상기 연락처 목록 항목에 포함된 상기 연락처 이름, 및 상기 연락처 목록 항목에 포함된 상기 위치 라벨을 연관시키는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 위치 라벨은 상기 사용자가 방문한 상기 지리적 위치에 대한 부가적인 컨텍스트를 포함하는, 방법.
  3. 제1항에 있어서,
    상기 컴퓨팅 장치가 상기 사용자와 연관된 위치 이력 데이터를 수집하는 단계는 상기 사용자와 연관된 하나 이상의 모바일 컴퓨팅 장치들 각각으로부터 상기 사용자와 연관된 상기 위치 이력 데이터의 각각의 부분들을 수신하는 단계를 포함하는 방법.
  4. 제1항에 있어서,
    상기 사용자가 방문한 상기 지리적 위치를 결정하는 단계는 상기 컴퓨팅 장치가 상기 위치 이력 데이터로부터의 위치 이력 데이터 포인트들의 클러스터에 대한 지리적 중심 및 상기 지리적 중심에 대한 정확도 반경을 계산하는 단계를 포함하는 방법.
  5. 제4항에 있어서,
    상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치에 대응하는지를 결정하는 단계는 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치가 상기 정확도 반경 내에 놓이는지를 결정하는 단계를 포함하는 방법.
  6. 제5항에 있어서,
    상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치에 대응하는지를 결정하는 단계는 상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 하나보다 많은 위치에 대응하는지를 결정하는 단계를 포함하고,
    상기 컴퓨팅 장치가, 상기 사용자가 방문한 상기 지리적 위치에 대한 정확한 연락처 목록 항목을 선택하도록 상기 사용자를 유도하기 위해 상기 연락처 목록에 포함된 상기 하나보다 많은 위치를 출력하는 단계; 및
    상기 컴퓨팅 장치가 상기 정확한 연락처 목록 항목의 표시를 수신하는 단계
    를 더 포함하고,
    상기 사용자가 방문한 상기 지리적 위치, 상기 연락처 목록 항목에 포함된 상기 연락처 이름, 및 상기 연락처 목록 항목에 포함된 상기 위치 라벨을 연관시키는 단계는 상기 사용자가 방문한 상기 지리적 위치, 상기 정확한 연락처 목록 항목에 포함된 상기 연락처 이름, 및 상기 정확한 연락처 목록 항목에 포함된 상기 위치 라벨을 연관시키는 단계를 포함하는 방법.
  7. 제1항에 있어서,
    상기 연락처 목록에 포함된 상기 위치는 적어도 하나의 거리 주소를 포함하고,
    상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치에 대응하는지를 결정하는 단계는 적어도 하나의 거리 주소와 상기 사용자가 방문한 상기 지리적 위치 사이의 적어도 부분적인 매칭을 검출하는 단계를 포함하는 방법.
  8. 제1항에 있어서,
    상기 위치 이력 데이터는 복수의 위치 이력 데이터 포인트들을 포함하고,
    각각의 위치 이력 데이터 포인트는 각각의 지리적 포인트, 상기 각각의 지리적 포인트와 연관된 각각의 시간, 및 상기 각각의 지리적 포인트와 연관된 각각의 날짜를 특정하고,
    상기 사용자가 방문한 상기 지리적 위치를 결정하는 단계는:
    상기 컴퓨팅 장치가 상기 복수의 위치 이력 데이터 포인트들 중 각각의 위치 이력 데이터 포인트에 의해 특정된 각각의 시간들 및 각각의 날짜들에 적어도 부분적으로 기초하여 상기 복수의 위치 이력 데이터 포인트들을 필터링하여 위치 이력 데이터 포인트들의 클러스터를 포함하는 필터링된 위치 이력 데이터를 생성하는 단계; 및
    상기 컴퓨팅 장치가 상기 필터링된 위치 이력 데이터로부터의 위치 이력 데이터 포인트들의 상기 클러스터에 대한 지리적 중심 및 정확도 반경을 계산하는 단계
    를 포함하고,
    상기 지리적 중심 및 상기 정확도 반경은 상기 사용자가 방문한 지리적 위치를 함께 정의하는 방법.
  9. 제8항에 있어서,
    상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치에 대응하는지를 결정하는 단계는 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치가 상기 정확도 반경 내에 놓이는지를 결정하는 단계를 포함하는 방법.
  10. 제1항에 있어서, 상기 컴퓨팅 장치가 상기 위치 라벨을 포함하는 상기 연락처 목록 항목의 표시를 출력하는 단계를 더 포함하는 방법.
  11. 하나 이상의 프로세서를 포함하는 시스템으로서,
    상기 하나 이상의 프로세서는
    사용자와 연관된 위치 이력 데이터를 수집하고;
    상기 위치 이력 데이터에 적어도 부분적으로 기초하여 상기 사용자가 방문한 지리적 위치를 결정하고;
    상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 연락처 목록에 포함된 연락처 목록 항목에 포함된 위치에 대응하는지를 결정하고;
    상기 연락처 목록 항목에 포함된 연락처 이름 및 상기 연락처 목록 항목에 포함된 위치 라벨의 표시를 검색하고; 및
    상기 사용자가 방문한 상기 지리적 위치, 상기 연락처 목록 항목에 포함된 상기 연락처 이름, 및 상기 연락처 목록 항목에 포함된 상기 위치 라벨을 연관시키도록 구성되는 시스템.
  12. 제11항에 있어서,
    상기 위치 라벨은 상기 사용자가 방문한 상기 지리적 위치에 대한 부가적인 컨텍스트를 포함하는, 시스템.
  13. 제11항에 있어서,
    상기 하나 이상의 프로세서는 상기 사용자와 연관된 하나 이상의 모바일 컴퓨팅 장치들 각각으로부터 상기 사용자와 연관된 상기 위치 이력 데이터의 각각의 부분들을 수집하도록 구성되는, 시스템.
  14. 제11항에 있어서,
    상기 하나 이상의 프로세서는 적어도 상기 위치 이력 데이터로부터의 위치 이력 데이터 포인트들의 클러스터에 대한 지리적 중심 및 상기 지리적 중심에 대한 정확도 반경을 계산함으로써 상기 사용자가 방문한 상기 지리적 위치를 결정하도록 구성되는, 시스템.
  15. 제14항에 있어서,
    상기 하나 이상의 프로세서는 적어도 상기 사용자와 연관된 상기 연락처 목록에 포함된 상기 위치가 상기 정확도 반경 내에 놓이는지를 결정함으로써 상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치에 대응하는지를 결정하도록 구성되는 시스템.
  16. 제15항에 있어서,
    상기 하나 이상의 프로세서는
    적어도 상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 하나보다 많은 위치에 대응하는지를 결정함으로써 상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치에 대응하는지를 결정하고,
    상기 사용자가 방문한 상기 지리적 위치에 대한 정확한 연락처 목록 항목을 선택하도록 상기 사용자를 유도하기 위해 상기 연락처 목록에 포함된 상기 하나보다 많은 위치를 출력하고,
    상기 정확한 연락처 목록 항목의 표시를 수신하고, 및
    적어도 상기 사용자가 방문한 상기 지리적 위치, 상기 정확한 연락처 목록 항목에 포함된 상기 연락처 이름, 및 상기 정확한 연락처 목록 항목에 포함된 상기 위치 라벨을 연관시킴으로써 상기 사용자가 방문한 상기 지리적 위치, 상기 연락처 목록 항목에 포함된 상기 연락처 이름, 및 상기 연락처 목록 항목에 포함된 상기 위치 라벨을 연관시키도록 구성되는, 시스템.
  17. 제11항에 있어서,
    상기 연락처 목록에 포함된 상기 위치는 적어도 하나의 거리 주소를 포함하고,
    상기 하나 이상의 프로세서는 적어도 하나의 거리 주소와 상기 사용자가 방문한 상기 지리적 위치 사이의 적어도 부분적인 매칭을 적어도 검출함으로써 상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치에 대응하는지를 결정하도록 구성되는, 시스템.
  18. 제11항에 있어서,
    상기 위치 이력 데이터는 복수의 위치 이력 데이터 포인트들을 포함하고,
    각각의 위치 이력 데이터 포인트는 각각의 지리적 포인트, 상기 각각의 지리적 포인트와 연관된 각각의 시간, 및 상기 각각의 지리적 포인트와 연관된 각각의 날짜를 특정하고,
    상기 하나 이상의 프로세서는 적어도:
    상기 복수의 위치 이력 데이터 포인트들 중 각각의 위치 이력 데이터 포인트에 의해 특정된 각각의 시간들 및 각각의 날짜들에 적어도 부분적으로 기초하여 상기 복수의 위치 이력 데이터 포인트들을 필터링하여 위치 이력 데이터 포인트들의 클러스터를 포함하는 필터링된 위치 이력 데이터를 생성하고; 및
    상기 필터링된 위치 이력 데이터로부터의 위치 이력 데이터 포인트들의 상기 클러스터에 대한 지리적 중심 및 정확도 반경을 계산
    함으로써 상기 사용자가 방문한 상기 지리적 위치를 결정하도록 구성되고,
    상기 지리적 중심 및 상기 정확도 반경은 상기 사용자가 방문한 지리적 위치를 함께 정의하는, 시스템.
  19. 제18항에 있어서,
    상기 하나 이상의 프로세서는 적어도 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치가 상기 정확도 반경 내에 놓이는지를 결정함으로써 상기 사용자가 방문한 상기 지리적 위치가 상기 사용자와 연관된 상기 연락처 목록에 포함된 위치에 대응하는지를 결정하도록 구성되는, 시스템.
  20. 제11항에 있어서, 상기 하나 이상의 프로세서는 상기 위치 라벨을 포함하는 상기 연락처 목록 항목의 표시를 출력하도록 더 구성되는, 시스템.
KR1020167009728A 2012-06-22 2013-06-21 연락처 정보에 기초한 방문 위치의 라벨링 KR101682340B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261662969P 2012-06-22 2012-06-22
US61/662,969 2012-06-22
US201261663810P 2012-06-25 2012-06-25
US61/663,810 2012-06-25
PCT/US2013/047184 WO2013192590A2 (en) 2012-06-22 2013-06-21 Labeling visited locations based on contact information

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020157035173A Division KR101614264B1 (ko) 2012-06-22 2013-06-21 연락처 정보에 기초한 방문 위치의 라벨링

Publications (2)

Publication Number Publication Date
KR20160045922A KR20160045922A (ko) 2016-04-27
KR101682340B1 true KR101682340B1 (ko) 2016-12-05

Family

ID=48747777

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020167009728A KR101682340B1 (ko) 2012-06-22 2013-06-21 연락처 정보에 기초한 방문 위치의 라벨링
KR1020147035644A KR101579032B1 (ko) 2012-06-22 2013-06-21 연락처 정보에 기초한 방문 위치의 라벨링
KR1020157035173A KR101614264B1 (ko) 2012-06-22 2013-06-21 연락처 정보에 기초한 방문 위치의 라벨링

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020147035644A KR101579032B1 (ko) 2012-06-22 2013-06-21 연락처 정보에 기초한 방문 위치의 라벨링
KR1020157035173A KR101614264B1 (ko) 2012-06-22 2013-06-21 연락처 정보에 기초한 방문 위치의 라벨링

Country Status (6)

Country Link
US (6) US8630663B1 (ko)
EP (2) EP3537738A1 (ko)
KR (3) KR101682340B1 (ko)
CN (4) CN106878939A (ko)
IN (1) IN2014KN02705A (ko)
WO (1) WO2013192590A2 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878939A (zh) 2012-06-22 2017-06-20 谷歌公司 基于联系人信息来标注被访问的位置的方法和系统
US9344414B2 (en) * 2013-02-01 2016-05-17 Interman Corporation User similarity provision method
US9923979B2 (en) 2013-06-27 2018-03-20 Google Llc Systems and methods of determining a geographic location based conversion
US9965492B1 (en) 2014-03-12 2018-05-08 Google Llc Using location aliases
US20150347562A1 (en) * 2014-06-02 2015-12-03 Qualcomm Incorporated Deriving user characteristics from users' log files
US11809501B2 (en) * 2014-08-28 2023-11-07 Ebay Inc. Systems, apparatuses, and methods for providing a ranking based recommendation
US9730026B2 (en) 2014-10-13 2017-08-08 Motorola Solutions, Inc. Method and apparatus for forming communication group based on location history
CN104320760B (zh) * 2014-10-17 2018-09-21 厦门美图移动科技有限公司 一种位置请求处理设备和方法和位置信息获取设备和方法
US9904932B2 (en) * 2014-12-29 2018-02-27 Google Llc Analyzing semantic places and related data from a plurality of location data reports
US9787557B2 (en) * 2015-04-28 2017-10-10 Google Inc. Determining semantic place names from location reports
CN104991924B (zh) * 2015-06-26 2018-10-09 百度在线网络技术(北京)有限公司 用于确定新供应点的地址的方法和装置
RU2609082C2 (ru) 2015-06-30 2017-01-30 Общество С Ограниченной Ответственностью "Яндекс" Способ и система определения адреса, соответствующего наиболее вероятному физическому положению электронного устройства, связанного с пользователем
US10045159B2 (en) 2015-07-02 2018-08-07 Qualcomm Incorporated Providing, organizing, and managing location history records of a mobile device
CN105159926B (zh) * 2015-08-04 2019-04-16 百度在线网络技术(北京)有限公司 建立用户的用户信息关联的方法和装置
US9706349B2 (en) 2015-09-30 2017-07-11 Here Global B.V. Method and apparatus for providing an association between a location and a user
KR101788191B1 (ko) * 2016-04-26 2017-11-15 현대자동차주식회사 폰북 동기화 제어 방법 및 장치
US10803125B2 (en) 2017-06-30 2020-10-13 Microsoft Technology Licensing, Llc Rendering locations on map based on location data
CN109734248B (zh) * 2019-01-31 2020-09-29 清华大学深圳研究生院 一种反渗透浓缩水深度处理方法与设备
CN110475028A (zh) * 2019-08-26 2019-11-19 广州讯鸿网络技术有限公司 一种千万级联系人的t9搜索方法、电子设备及存储介质
CN111148044B (zh) * 2019-12-30 2021-06-01 中国联合网络通信集团有限公司 企业位置信息获取方法、装置、设备和存储介质
CN112800253B (zh) * 2021-04-09 2021-07-06 腾讯科技(深圳)有限公司 数据聚类方法、相关设备及存储介质
US11668784B2 (en) * 2021-11-05 2023-06-06 T-Mobile Innovations Llc Method to determine the quality of civic address produced by reverse geocoder

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050181774A1 (en) 1999-01-12 2005-08-18 Nec Corporation Destination calling control system and destination calling control method
US20100004997A1 (en) 2008-05-27 2010-01-07 Chand Mehta Methods and apparatus for generating user profile based on periodic location fixes
US20100248744A1 (en) 2009-03-26 2010-09-30 Modu Ltd. Locating mobile contacts using a geo-contact list
US20110081921A1 (en) 2005-07-12 2011-04-07 Owest Communications International Inc. User Defined Location Based Notification for a Mobile Communications Device Systems and Methods

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6091956A (en) * 1997-06-12 2000-07-18 Hollenberg; Dennis D. Situation information system
US6360102B1 (en) * 1998-09-10 2002-03-19 Ericsson Inc. System and method for defining a subscriber location privacy profile
US7760137B2 (en) 1999-06-18 2010-07-20 Pfizer, Inc. Portable position determining device
US7366522B2 (en) * 2000-02-28 2008-04-29 Thomas C Douglass Method and system for location tracking
US6388612B1 (en) * 2000-03-26 2002-05-14 Timothy J Neher Global cellular position tracking device
US7082365B2 (en) * 2001-08-16 2006-07-25 Networks In Motion, Inc. Point of interest spatial rating search method and system
US7085578B2 (en) * 2001-12-20 2006-08-01 Lucent Technologies Inc. Provision of location information to a call party
US6839022B1 (en) * 2003-06-23 2005-01-04 Lucent Technologies Inc. Network support for subscriber access to mobile caller location information
US7680513B2 (en) * 2005-08-08 2010-03-16 Palm, Inc. Contact-centric user-interface features for computing devices
US7801542B1 (en) * 2005-12-19 2010-09-21 Stewart Brett B Automatic management of geographic information pertaining to social networks, groups of users, or assets
US7620404B2 (en) * 2005-12-22 2009-11-17 Pascal Chesnais Methods and apparatus for organizing and presenting contact information in a mobile communication system
CN101004444A (zh) * 2006-01-20 2007-07-25 英华达(上海)电子有限公司 Gps设备上地址簿信息存储及进行gps关联定位的方法
US8559968B2 (en) * 2006-05-12 2013-10-15 At&T Intellectual Property I, L.P. Location-based targeting
US8989778B2 (en) * 2006-06-01 2015-03-24 Green Dot Corporation Secure and private location sharing for location-aware mobile communication devices
CN101038177B (zh) * 2007-04-02 2012-08-15 深圳市赛格导航科技股份有限公司 一种gps导航装置
CN101079850A (zh) * 2007-06-27 2007-11-28 华为技术有限公司 电子邮件处理的方法和设备
US8050690B2 (en) * 2007-08-14 2011-11-01 Mpanion, Inc. Location based presence and privacy management
CN101796784A (zh) * 2007-08-30 2010-08-04 摩托罗拉公司 用于通知在用户附近出现联系人的方法和系统
US8090389B2 (en) * 2008-01-16 2012-01-03 Research In Motion Limited Method of displaying a map on a phone screen
US9646025B2 (en) * 2008-05-27 2017-05-09 Qualcomm Incorporated Method and apparatus for aggregating and presenting data associated with geographic locations
US7996015B2 (en) * 2008-10-15 2011-08-09 Sony Ericsson Mobile Communications Ab Location-based tagging and sorting of content on a mobile device
US20100205242A1 (en) * 2009-02-12 2010-08-12 Garmin Ltd. Friend-finding system
US20110029420A1 (en) * 2009-07-28 2011-02-03 Bianco Lisa B Systems and methods for a manager toolkit
US9218360B2 (en) * 2009-12-11 2015-12-22 Microsoft Technology Licensing, Llc User-selected tags for annotating geographic domains containing points-of-interest
CN102111871B (zh) * 2009-12-23 2013-08-07 中国移动通信集团公司 基于小区标识定位技术的终端定位方法及装置
US8577004B2 (en) * 2010-02-11 2013-11-05 Infineon Technologies Ag Predictive contact information representation
US20110196925A1 (en) * 2010-02-11 2011-08-11 Martin Hans Methods and apparatus for providing presence service for contact management representation
US20110244840A1 (en) * 2010-03-30 2011-10-06 Telenav, Inc. Communication system with caller identification mechanism and method of operation thereof
US20110252061A1 (en) * 2010-04-08 2011-10-13 Marks Bradley Michael Method and system for searching and presenting information in an address book
ES2751111T3 (es) * 2010-08-13 2020-03-30 Nokia Technologies Oy Método y aparato para capa de mapa personal compartida segura
EP2453367B1 (en) * 2010-11-16 2014-02-12 BlackBerry Limited Automatic file naming on a mobile device
US9128939B2 (en) * 2010-11-16 2015-09-08 Blackberry Limited Automatic file naming on a mobile device
US20120135751A1 (en) * 2010-11-30 2012-05-31 Google Inc. Use of location tagging in data communications
US9230240B2 (en) * 2011-01-21 2016-01-05 Qualcomm Incorporated Contact relevance based on context
CN102131144A (zh) * 2011-01-27 2011-07-20 宇龙计算机通信科技(深圳)有限公司 一种联系人的显示方法、系统及移动终端
US8265871B1 (en) * 2011-03-31 2012-09-11 Google Inc. Mobile record information entry and geotagging
US8538442B1 (en) * 2011-06-15 2013-09-17 Google Inc. Indoor localization of mobile device using labels
CN103891317B (zh) * 2011-10-17 2017-11-28 诺基亚技术有限公司 用于与位置相关的个性化隐私推荐的自动方法
US20130225196A1 (en) * 2012-02-27 2013-08-29 Bryan J. James Geo-Fence Generation and Updating Based on Device Movement Patterns
US9042907B2 (en) * 2012-03-09 2015-05-26 Blackberry Limited Location identification of a portable electronic device based on characteristics of an operating environment of the portable electronic device
CN106878939A (zh) * 2012-06-22 2017-06-20 谷歌公司 基于联系人信息来标注被访问的位置的方法和系统
US9615202B2 (en) * 2014-05-30 2017-04-04 Apple Inc. Determining a significant user location for providing location-based services

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050181774A1 (en) 1999-01-12 2005-08-18 Nec Corporation Destination calling control system and destination calling control method
US20110081921A1 (en) 2005-07-12 2011-04-07 Owest Communications International Inc. User Defined Location Based Notification for a Mobile Communications Device Systems and Methods
US20100004997A1 (en) 2008-05-27 2010-01-07 Chand Mehta Methods and apparatus for generating user profile based on periodic location fixes
US20100248744A1 (en) 2009-03-26 2010-09-30 Modu Ltd. Locating mobile contacts using a geo-contact list

Also Published As

Publication number Publication date
CN106878939A (zh) 2017-06-20
US8630663B1 (en) 2014-01-14
WO2013192590A3 (en) 2015-05-14
US9344852B2 (en) 2016-05-17
CN107027100B (zh) 2020-05-19
IN2014KN02705A (ko) 2015-06-12
EP2883368A4 (en) 2015-08-26
KR101579032B1 (ko) 2015-12-18
KR20150144346A (ko) 2015-12-24
US20160249179A1 (en) 2016-08-25
US8761812B2 (en) 2014-06-24
US20130344898A1 (en) 2013-12-26
CN104854884A (zh) 2015-08-19
US9986386B2 (en) 2018-05-29
CN107027100A (zh) 2017-08-08
WO2013192590A2 (en) 2013-12-27
CN104854884B (zh) 2017-01-18
CN107124695A (zh) 2017-09-01
US20140106785A1 (en) 2014-04-17
US20170118598A1 (en) 2017-04-27
KR20160045922A (ko) 2016-04-27
EP3537738A1 (en) 2019-09-11
KR101614264B1 (ko) 2016-04-21
EP2883368B1 (en) 2019-06-05
US9571984B2 (en) 2017-02-14
EP2883368A2 (en) 2015-06-17
US10469994B2 (en) 2019-11-05
CN107124695B (zh) 2020-06-30
US20140256358A1 (en) 2014-09-11
KR20150008500A (ko) 2015-01-22
US20180279088A1 (en) 2018-09-27

Similar Documents

Publication Publication Date Title
KR101682340B1 (ko) 연락처 정보에 기초한 방문 위치의 라벨링
US9204254B2 (en) Determining attractions based on location history data
US9449053B2 (en) Ranking nearby destinations based on visit likelihoods and predicting future visits to places from location history
EP2875655B1 (en) Inferring user interests
US20060058958A1 (en) Proximity search methods using tiles to represent geographical zones

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20191113

Year of fee payment: 4