KR101831777B1 - 위치 및 소셜 정보를 기초로 사용자에게 제공되는 관련 알림의 가격결정 방법 - Google Patents

위치 및 소셜 정보를 기초로 사용자에게 제공되는 관련 알림의 가격결정 방법 Download PDF

Info

Publication number
KR101831777B1
KR101831777B1 KR1020137018748A KR20137018748A KR101831777B1 KR 101831777 B1 KR101831777 B1 KR 101831777B1 KR 1020137018748 A KR1020137018748 A KR 1020137018748A KR 20137018748 A KR20137018748 A KR 20137018748A KR 101831777 B1 KR101831777 B1 KR 101831777B1
Authority
KR
South Korea
Prior art keywords
user
content object
social networking
networking system
party content
Prior art date
Application number
KR1020137018748A
Other languages
English (en)
Other versions
KR20140016252A (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 KR20140016252A publication Critical patent/KR20140016252A/ko
Application granted granted Critical
Publication of KR101831777B1 publication Critical patent/KR101831777B1/ko

Links

Images

Classifications

    • G06Q50/40
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0261Targeted advertisements based on user location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0273Determination of fees for advertising

Landscapes

  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

소셜 네트워킹 시스템은 사용자 위치, 관심 및 다른 소셜 정보를 컨텐츠 객체와 관련된 컨텐츠, 위치 및 타이밍을 매칭함으로써 사용자들에게 관련 제 3 자 컨텐츠 객체를 제공한다. 컨텐츠 객체는 사용자에 특화된 관련성 점수를 기초로 제공된다. 관련성 점수는 컨텐츠 객체 알림과 사용자의 이전 상호작용을 기초로 또는 소셜 네트워킹 시스템에서 사용자와 그 또는 그녀의 연결 사이에 공통된 관심을 기초로, 계산될 수 있다. 또한, 사용자를 위해 컨텍스트 검색이 제공되며, 검색 결과의 리스트는 검색 결과와 관련된 컨텐츠 객체의 관련성 점수에 따라 순위가 결정된다. 또한, 알림은 가격이 관련성을 기초로 가격이 결정되고 사용자에게 분배될 수 있다. 이런 방식으로, 시스템은 사용자의 관심 및 현재 상황과 관련이 있는 알림을 제공할 수 있으며, 관심 있는 컨텐츠 객체를 찾을 가능성을 증가시킬 수 있다.

Description

위치 및 소셜 정보를 기초로 사용자에게 제공되는 관련 알림의 가격결정 방법{PRICING RELEVANT NOTIFICATIONS PROVIDED TO A USER BASED ON LOCATION AND SOCIAL INFORMATION}
본 발명은 일반적으로 소셜 네트워킹에 관한 것이며, 특히 사용자 위치 및 소셜 정보를 기초로 소셜 네트워킹 시스템의 사용자를 위한 관련 알림을 제공하는 방법에 관한 것이다.
소셜 네트워킹 시스템은 사용자가 다른 사용자들과 연결되고 통신할 수 있는 유용한 환경을 제공하기 때문에 최근 일반화되었다. 소셜 네트워크 내에서 사용자들이 상호작용할 수 있도록 해주는 메커니즘을 제공하는 다양한 다른 유형의 소셜 네트워킹 시스템이 존재한다. 이와 관련하여, 사용자는 개인 또는, 가령 비즈니스나 다른 비-인격(non-person) 엔티티와 같은 임의의 다른 엔티티일 수 있다. 따라서, 소셜 네트워킹 시스템은 친구들 사이의 소셜 통신을 가능하게 하는 한편, 잠재 고객들과 연결해주는 비즈니스용 중요한 도구가 될 수도 있다.
그러나, 비즈니스는 통상적으로 관심사, 다른 사람들과의 연결 및 특정 위치를 기초로 사람들과 관련이 있고 시기적절한 광고 및 정보를 사람들에게 제공하는데 상당한 제약을 가진다. 기껏해야, 사용자들에 대한 정보를 얻는 통상의 방법은 기본적인 사용자-제공 프로파일 정보를 기초로, 다소 임의의 시기에 디스플레이되는 광고들로 구성되었다. 제 3 자 컨텐츠 제공자는 소셜 네트워킹 웹사이트의 회원들 간의 관계 및 연결을 여전히 활용하지 못할 뿐만 아니라 의미 있는 방식으로 그 안에 포함된 풍부한 사용자 정보를 활용하지 못했다. 또한, 제 3 자 컨텐츠 제공자는 통상적으로, 예컨대 하루의 시간 또는 사용자의 위치를 기초로, 그들의 정보와 사용자를 위한 컨텐츠의 시간 관련성(temporal relevance)을 연결시키지 못했다.
소셜 네트워킹 시스템이 관련 컨텐츠 객체를 소셜 네트워킹 시스템 사용자에게 제공할 수 있도록 하기 위해, 본 발명의 실시예들은 사용자 위치, 관심사 및 다른 소셜 정보를 제 3 자 컨텐츠 객체와 관련된 컨텐츠, 위치 및 타이밍을 매칭하기 위한 메커니즘을 제공한다. 특히, 본 발명의 실시예들은 소셜 네트워킹 시스템의 사용자에 특화된 관련성에 대해 컨텐츠 객체에 대한 관련성 점수가 계산될 수 있도록 하며, 이로부터 컨텐츠 객체의 순위 리스트(ranked list)가 사용자의 관심사, 위치 및 다른 소셜 정보를 기초로 사용자와 관련이 있는 알림(notification)을 사용자에게 제공하는데 사용될 수 있다.
일실시예로, 소셜 네트워킹 시스템은 소셜 네트워킹 시스템 사용자와 관련이 있는 광고의 가격 및 분배를 결정하도록 제공한다. 광고 관련성은 사용자 위치, 관심사 및 다른 소셜 정보를 광고와 관련된 제 3 자 컨텐츠 객체에 의해 제공되는 컨텐츠, 위치 및 타이밍 정보와 매칭하여 결정되는 관련성 점수를 기초로 한다. 광고 가격은 사용자에 대한 광고의 관련성을 기초로 한다. 이런 방식으로, 광고는 광고가 사용자의 행위에 영향을 미칠 가능성에 기반하여 가격결정되고 분배될 수 있다. 일부의 경우, 광고에 대한 가격은 분배당(per-distribution) 기준으로 상인에 의해 지불되는 반면, 다른 경우에는 광고가 사용자의 행동에 영향을 끼쳤다고 결정되었을 때에만 지불된다. 상인은 일반적인 관련성을 기초로 광고를 입찰함으로써 또는 특정 관련성 기준을 기초로 맞춤 입찰(tailored bidding)을 가능하게 하는 시장 분할 정보(market segmentation information)를 제공함으로써 광고의 분배를 제어할 수 있다.
본 발명의 내용 중에 포함되어 있다.
도 1은 소셜 네트워킹 시스템 사용자 알림을 제공하기 위한 시스템의 일실시예의 네트워크 다이어그램이다.
도 2는 본 발명의 한 실시예에 따른 소셜 네트워킹 시스템의 다이어그램이다.
도 3은 사용자 위치 및 소셜 정보를 기초로 소셜 네트워킹 시스템의 사용자를 위한 관련 알림을 제공하기 위한 프로세스의 일실시예의 상호작용 다이어그램이다.
도 4는 일실시예에 따라 소셜 네트워킹 시스템의 사용자에게 관련 알림을 제공하는 시간을 결정하기 위한 상호작용 다이어그램이다.
도 5는 일실시예에 따라 소셜 네트워킹 시스템의 친구들 사이의 공통 관심사와 관련된 컨텐츠 객체를 결정하기 위한 방법 흐름도이다.
도 6a는 소셜 네트워크에서 친구들의 사용자 프로파일에 나타난 공통 관심사를 도시하며, 도 6b는 일실시예에 따라 소셜 네트워크에서 친구들 사이의 공통 관심사의 경로를 도시한다.
도 7은 소셜 네트워킹 시스템의 사용자에게 컨텍스트 검색 결과를 제공하기 위한 프로세스의 일실시예를 도시하는 흐름도로서, 검색 결과는 그들의 위치 및 소셜 정보를 기초로 사용자와 관련된다.
도 8은 클라이언트 장치가 소셜 네트워킹 시스템의 사용자에게 검색 결과의 순위 리스트를 디스플레이하는 방법을 도시하는 일련의 샘플 스크린샷이며, 여기서 검색 결과는 사용자의 위치 및 소셜 정보를 기초로 제시된다.
도 9는 소셜 네트워킹 시스템의 사용자에게 제공되는 광고의 가격을 결정하기 위한 프로세스의 일실시예를 도시하는 상호작용 다이어그램이며, 여기서 광고는 사용자의 위치 및 소셜 정보를 기초로 사용자와 관련이 있다.
도 10은 상인이 소셜 네트워킹 시스템의 사용자에게 제공되는 광고에 대해 입찰할 수 있도록 해주는 광고 대시보드(dashboard)를 도시하는 샘플 스크린샷이며, 여기서 광고는 그들의 위치 및 소셜 정보를 기초로 사용자와 관련된다.
도면들은 단지 예로써 본 발명의 다양한 실시예들을 도시한다. 당업자는 하기의 설명을 통해 본 명세서에 나타난 구성 및 방법의 대안적인 실시예들이 본 명세서에 기술된 본 발명의 원리에서 벗어남이 없이 이용될 수 있음을 용이하게 인식할 것이다.
소셜 네트워킹 시스템 구조의 개요
도 1은 소셜 네트워킹 시스템(130)의 사용자(예컨대, 회원)를 위한 알림을 제공하기 위한 시스템(100)의 일실시예의 네트워크 다이어그램이다. 시스템(100)은 하나 이상의 사용자 장치(110), 하나 이상의 제 3 자 컨텐츠 객체 제공자(120), 소셜 네트워킹 시스템(130) 및 네트워크(140)를 포함한다. 예로써, 도 1에 도시된 시스템(100)의 실시예는 단일의 제 3 자 컨텐츠 객체 제공자(120) 및 단일의 사용자 장치(110)를 포함한다. 그러나, 다른 실시예에서, 시스템(100)은 더 많은 사용자 장치(110) 및/또는 더 많은 제 3 자 컨텐츠 객체 제공자(120)를 포함할 수 있다. 특정 실시예로, 소셜 네트워킹 시스템(130)은 소셜 네트워크 제공자에 의해 작동되는 반면, 제 3 자 컨텐츠 객체 제공자(120)는 다른 엔티티들에 의해 작동될 수 있다는 점에서 소셜 네트워킹 시스템(130)과 분리된다. 그러나, 다양한 실시예로, 소셜 네트워킹 시스템(130)과 제 3 자 컨텐츠 객체 제공자(120)는 함께 작동하여 소셜 네트워킹 시스템(130)의 사용자들에게 소셜 네트워킹 서비스를 제공한다. 이런 점에서, 소셜 네트워킹 시스템(130)은, 가령 제 3 자 컨텐츠 객체 제공자(120)와 같은 다른 시스템들이 인터넷에서 사용자들에게 소셜 네트워킹 서비스와 기능을 제공하는데 사용할 수 있는 플랫폼 또는 백본(backbone)을 제공한다.
사용자 장치(110)는 사용자로부터 입력을 수신하고 네트워크(140)를 통해 데이터를 전송 및 수신할 수 있는 하나 이상의 컴퓨팅 장치를 포함한다. 예컨대, 사용자 장치(110)는 데스크탑 컴퓨터, 랩탑 컴퓨터, 스마트폰, 개인용 휴대단말기(PDAs) 또는 컴퓨팅 기능과 데이터 통신 능력을 포함하는 임의의 다른 장치일 수 있다. 사용자 장치(110)는 무선 및 유선 통신 시스템 모두를 사용하고 근거리 네트워크 및/또는 광역 네트워크의 임의의 조합을 포함할 수 있는 네트워크를 통해, 제 3 자 컨텐츠 객체 제공자(120) 및 소셜 네트워킹 시스템(130)과 통신하도록 구성된다. 일실시예로, 사용자 장치(110)는 제 3 자 컨텐츠 객체 제공자(120)로부터 및/또는 소셜 네트워킹 시스템(130)으로부터 컨텐츠를 디스플레이한다.
제 3 자 컨텐츠 객체 제공자(120)는 적절한 시기에 사용자 장치(110)와 통신되는 하나 이상의 컨텐츠 객체 소스를 포함한다. 일실시예로, 제 3 자 컨텐츠 객체 제공자(120)는 소셜 네트워킹 시스템(130)과는 별개의 엔티티이다. 예컨대, 제 3 자 컨텐츠 객체 제공자(120)는 제 1 도메인과 관련이 있는 반면, 소셜 네트워킹 시스템(130)은 별개의 소셜 네트워킹 도메인과 관련이 있다. 다양한 실시예로, 제 3 자 컨텐츠 객체 제공자(120)는 소셜 네트워킹 시스템(130)을 호스팅하는 웹사이트나 서버와는 별도로 또는 결합하여, 웹사이트 상에 또는 대안으로 서버상에 위치된다.
제 3 자 컨텐츠 객체는, 본 명세서에서 이 용어가 사용된 것처럼, 소셜 네트워킹 시스템(130)의 사용자에 의해서라기보다는 제 3 자 컨텐츠 객체 제공자(120)에 의해 생성되는 임의의 컨텐츠 객체를 포함한다. 제 3 자 컨텐츠 객체는 일실시예에 따라, 가령 영화 쇼 타임(show time), 영화 리뷰, 레스토랑 리뷰, 레스토랑 메뉴, 제품 정보와 리뷰 등과 같은 정보형 컨텐츠 객체뿐만 아니라, 가령 쿠폰, 할인 티켓, 상품권 등과 같은 인센티브형(incentive) 컨텐츠 객체를 포함할 수 있다. 또한, 몇몇 제 3 자 컨텐츠 객체는 정보와 인센티브의 조합을 포함할 수 있다. 컨텐츠 객체의 다른 예는 이벤트와 관련된 이벤트 컨텐츠 객체(가령, 새해 전야 파티) 또는 애드혹 개더링 객체(ad-hoc gathering objects)(가령, 샌프란시스코, 유니온 스퀘어에서 100명의 즉흥 모임)를 포함한다. 컨텐츠 객체 및 컨텐츠 객체가 제시되거나 사용될 수 있는 방법의 예들은 하기에 기술된다.
소셜 네트워킹 시스템(130)은, 소셜 네트워크의 사용자들에게 복수의 사용자들을 포함하고 소셜 네트워크의 다른 사용자들과 통신 및 상호작용하는 능력을 제공하는, 소셜 네트워크 또는 소셜 그래프를 저장하는 하나 이상의 컴퓨팅 장치를 포함한다. 다양한 실시예에 따르면, 소셜 네트워킹 시스템(130)은 유선 또는 무선 네트워크(140)를 통하여 사용자 장치(110) 또는 제 3 자 컨텐츠 객체 제공자(120)에 의해 접근될 수 있는 웹사이트 또는 대안으로 서버를 포함할 수 있다. 사용시, 사용자는 소셜 네트워킹 시스템(130)에 가입한 후 사용자가 연결되기를 원하는 소셜 네트워킹 시스템(130)의 다수의 다른 사용자들과의 연결(즉, 관계)을 추가한다. 본 명세서에서 사용되는 바와 같이, "친구"란 용어는 사용자가 소셜 네트워킹 시스템(130)을 통해 연결, 연계 또는 관계를 형성한 소셜 네트워킹 시스템(130)의 임의의 다른 사용자를 말한다. 연결(connections)은 사용자에 의해 명시적으로 추가될 수 있으나, 사용자들의 공통의 특성(예컨대, 동일한 교육기관의 졸업생인 사용자들)을 기초로 소셜 네트워킹 시스템에 의해 자동으로 생성될 수 있다. 예컨대, 제 1 사용자는 특정 다른 사용자를 친구로 명확하게 선택한다. 소셜 네트워킹 시스템에서 연결은 보통 양 방향이나 반드시 그래야만 하는 것은 아니므로, "사용자" 및 "친구"란 용어는 준거 기준에 의존한다. 예컨대, 밥(Bob)과 조(Joe)가 둘 다 소셜 네트워킹 시스템의 사용자들이며 서로 연결되어 있다면, 밥과 조는 서로 간의 연결이다. 반면에, 밥은 조와 연결되어 소셜 네트워킹 시스템으로 통신된 데이터를 열람하고 싶어하나, 조는 상호 연결을 형성하는 것을 바라지 않는다면, 일방의 연결이 확립될 수 있다. 사용자들 사이의 연결은 직접 연결일 수 있다; 그러나, 소셜 네트워킹 시스템의 일부 실시예는 연결이 하나 이상의 연결 레벨이나 정도, 또는 분리를 통해 간접적일 수 있도록 한다. 따라서, 소셜 그래프를 사용하면, 소셜 네트워킹 시스템은 많은 다른 유형의 객체 및 이들 객체 사이의 상호작용과 연결을 기록할 수 있으며, 이로써 소셜 관련 정보의 매우 풍부한 스토어(store)를 유지할 수 있다.
사용자들 사이의 연결을 확립 및 유지하고, 사용자들 사이의 상호작용을 가능하게 하는 것 이외에, 소셜 네트워킹 시스템(130)은 사용자에게 소셜 네트워킹 시스템(130)에 의해 지원되는, 다양한 유형의 아이템 또는 객체에 대해 행위를 취할 수 있는 능력을 제공한다. 이런 아이템은 소셜 네트워킹 시스템의 사용자들이 속해 있을 수 있는 그룹 또는 네트워크(여기서, "네트워크"는 물리적 통신 네트워크라기보다는 사람, 엔티티 및 개념의 소셜 네트워크를 말한다), 사용자가 관심을 가질 수 있는 이벤트 또는 달력의 기입사항, 사용자가 소셜 네트워킹 시스템(130)을 통해 사용할 수 있는 컴퓨터-기반 애플리케이션, 사용자가 서비스를 통해 아이템을 사거나 팔 수 있도록 해주는 거래(transactions) 및 사용자가 소셜 네트워킹 시스템 내외에서 실행할 수 있는 광고와의 상호작용을 포함할 수 있다.
사용자가 소셜 네트워킹 시스템상에서 실행할 수 있는 아이템들의 몇몇 예들이 있으며, 많은 다른 것들도 가능하다. 사용자는 소셜 네트워킹 시스템에서 또는, 소셜 네트워킹 시스템(130)과 분리되고 네트워크(140)를 통해 소셜 네트워킹 시스템(130)과 연결되는 제 3 자 컨텐츠 객체 제공자(120)의 외부 시스템에 의해 표현될 수 있는 임의의 것들과 상호작용할 수 있다.
또한, 소셜 네트워킹 시스템(130)은 다양한 엔티티를 연결할 수 있다. 예컨대, 소셜 네트워킹 시스템(130)은 사용자들이 서로 상호작용할 수 있도록 할 뿐만 아니라 제 3 자 컨텐츠 객체 제공자(120) 또는 다른 엔티티로부터 컨텐츠를 수신할 수 있도록 하거나, 사용자들이 API 또는 다른 통신 채널을 통해 이들 엔티티와 상호작용할 수 있도록 해준다.
또한, 소셜 네트워킹 시스템(130)은 소셜 네트워킹 시스템(130)과 사용자의 상호작용을 향상시키는 사용자 생성 컨텐츠 객체를 포함한다. 사용자 생성 컨텐츠(user-generated content)는 사용자가 소셜 네트워킹 시스템(130)으로 부가, 업로드, 송신 또는 "포스트"할 수 있는 임의의 것들을 포함할 수 있다. 예컨대, 사용자는 사용자 장치(110)로부터 포스트(posts)를 소셜 네트워킹 시스템(130)으로 통신한다. 포스트는, 가령 상태 업데이트 또는 다른 텍스트 데이터와 같은 데이터, 위치 정보, 사진, 비디오, 링크, 음악 또는 다른 유사한 데이터 및/또는 매체를 포함할 수 있다. 또한, 컨텐츠는 가령 뉴스피드(newsfeed) 또는 스트림(stream)과 같은 "통신 채널"을 통하여 제 3 자에 의해 소셜 네트워킹 시스템(130)으로 추가될 수 있다.
컨텐츠 객체는 일반적으로 소셜 네트워킹 시스템(130)에서 객체로 표현되는 컨텐츠의 단일 부분들(pieces)을 나타낸다. 이런 방식으로, 소셜 네트워킹 시스템(130)의 사용자들은 다양한 통신 채널을 통해 텍스트와 다양한 유형의 컨텐츠 객체를 포스팅하여 서로 통신하도록 촉진되며, 사용자들 서로 간의 상호작용을 증가시키고 사용자가 소셜 네트워킹 시스템(130)과 상호작용하는 빈도를 증가시킨다.
도 2는 소셜 네트워킹 시스템(130)의 일실시예의 다이어그램이다. 도 2에 도시된 소셜 네트워킹 시스템(130)의 실시예는 웹 서버(210), 행위 로거(action logger)(215), API 요청 서버(220), 관련성 및 순위결정 엔진(225), 컨텐츠 객체 분류기(260), 알림 제어장치(265), 행위 로그(230), 제 3 자 컨텐츠 객체 노출 로그(third-party content object exposure log)(232), 인터페이스 모듈(275), 인증 서버(authorization server)(235), 검색 모듈(280), 광고 타겟팅 모듈(285), 사용자 인터페이스 모듈(290), 사용자 프로파일 스토어(240), 연결 스토어(245), 제 3 자 컨텐츠 스토어(250) 및 위치 스토어(255)를 포함한다. 다른 실시예로, 소셜 네트워킹 시스템(130)은 다양한 애플리케이션용 추가 모듈, 더 적은 모듈 또는 다른 모듈을 포함할 수 있다. 본 시스템의 세부사항을 가리지 않도록, 가령 네트워크 인터페이스, 보안 메커니즘, 로드 밸런서(load balancers), 장애복구 서버(failover server), 관리 및 네트워크 동작 콘솔 등과 같은 종래의 구성요소들은 도시되지 않는다.
도 1과 함께 상술한 바와 같이, 소셜 네트워킹 시스템(130)은 본 명세서에 기술된 바와 같이 사용자들이 서로 통신하거나 상호작용하고 컨텐츠에 접근할 수 있도록 해주는 컴퓨팅 시스템을 포함한다. 소셜 네트워킹 시스템(130)은 사용자 프로파일 스토어(240)에서 소셜 네트워크의 사용자를 설명하는 사용자 프로파일을 저장한다. 사용자 프로파일은 가령 경력, 학력, 취미나 선호도, 관심사, 위치 등과 같은 인명 정보, 인구학적 정보 및 다른 유형의 설명적 정보를 포함한다. 예컨대, 사용자 프로파일 스토어(240)는 사용자의 프로파일을 설명하는데 적합한 필드를 갖는 데이터 구조를 포함한다. 특정 유형의 새로운 객체가 생성되는 경우, 소셜 네트워킹 시스템(130)은 새로운 데이터 구조, 즉 해당 유형의 "노드"를 초기화하고, 고유의 객체 식별자를 새로운 데이터 구조에 할당하며, 필요에 따라 데이터를 객체에 부가하기 시작한다. 예컨대, 이는 사용자가 소셜 네트워킹 시스템(130)의 사용자가 되는 경우 소셜 네트워킹 시스템(130)이 사용자 프로파일 스토어(240)에서 사용자 프로파일의 새로운 인스턴스를 생성하고, 사용자 프로파일에 고유 식별자를 할당하며, 사용자에 의해 제공된 정보를 사용자 프로파일의 필드에 상주시키기 시작할 때 발생할 수 있다.
또한, 사용자 프로파일 스토어(240)는 사용자의 인구학적 데이터, 행동 데이터 및 다른 소셜 데이터를 설명하는데 적합한 데이터 구조를 포함할 수 있다. 인구학적 데이터는 통상, 예컨대 사용자의 프로파일에 포함된 바대로, 나이, 성별, 위치 등과 같은 사용자에 대한 데이터를 포함한다. 행동 데이터는 통상, 가령 특정 행위(포스트, 호감 표시(likes), 코멘트 작성 등), 활동 수준, 사용량 통계 등과 같은 소셜 네트워킹 시스템(13) 내의 사용자의 활동에 대한 정보를 포함한다. 다른 소셜 데이터는 가령 관심사 또는 친밀도 등과 같이 엄밀하게는 인구학적 또는 행동적이지 않는, 소셜 네트워킹 시스템(130) 내에서의 사용자에 대한 정보를 포함한다. 일실시예로, 사용자의 관심사는 소셜 네트워킹 시스템에서 사용자의 활동(예컨대, 업로드된 컨텐츠, 포스팅, 메시지 읽기)으로부터 추론될 수 있는 사용자의 프로파일 또는 관심사에 명시적으로 특정될 수 있다. 추가로, 사용자 프로파일 스토어(240)는 하나 이상의 카테고리에 따라 사용자용 사용자 관심사 정보를 관리하기 위한 로직을 포함한다. 카테고리는 일반적이거나 특화될 수 있다. 예컨대, 사용자가 신발의 브랜드에 대한 기사를 "좋아요"라고 한다면, 카테고리는 그 브랜드일 수 있거나, "신발" 또는 "옷"의 일반 카테고리일 수 있다. 다수의 카테고리가 단일의 사용자 관심사에 적용될 수 있다. 또한, 사용자 프로파일 스토어(240)는 소셜 네트워킹 시스템(130)의 다른 태양에 의해 접근될 수 있다.
예컨대, 사용자 프로파일 스토어(240)는 하나 이상의 카테고리에 따라 사용자용 관심사 정보를 관리하기 위한 로직을 포함한다. 카테고리는 일반적이거나 특화될 수 있다. 예컨대, 사용자가 신발의 브랜드에 대한 기사를 "좋아요"라고 한다면, 카테고리는 그 브랜드일 수 있거나, "신발" 또는 "옷"의 일반 카테고리일 수 있다. 다수의 카테고리가 단일의 사용자 관심사에 적용될 수 있다. 또한, 사용자 프로파일 스토어(240)는 소셜 네트워킹 시스템(130)의 다른 태양에 의해 접근될 수 있다.
소셜 네트워킹 시스템(130)은 사용자 연결 스토어(245)에서 다른 사용자들 사이의 하나 이상의 연결을 설명하는 데이터를 더 저장한다. 연결 정보는 유사하거나 공통의 직업 경력, 그룹 멤버쉽, 취미, 학력을 가지거나 임의의 방식으로 관계되거나 공유된 공통 속성에 속하는 사용자들을 나타낼 수 있다. 추가로, 소셜 네트워킹 시스템(130)은 사용자가 다른 사용자들과의 관계를 지정하도록 해주는 다른 사용자들 사이의 사용자-정의 연결을 포함한다. 예컨대, 사용자-정의 연결은 사용자가 가령 친구, 동업자, 파트너 등과 같은 사용자의 실생활 관계와 병행하는 다른 사용자들과의 관계를 생성하도록 해준다. 사용자는 기결정된 유형의 연결들로부터 선택할 수 있거나, 필요에 따라 그들 자신의 연결 유형을 정의할 수 있다. 연결 스토어(245)는 다른 사용자들과의 사용자 연결, 제 3 자 컨텐츠 객체 제공자(120)와의 연결 또는 다른 엔티티와의 연결을 설명하는데 적합한 데이터 구조를 포함한다. 또한, 연결 스토어(245)는 사용자의 개인정보 설정과 함께 사용될 수 있는, 사용자의 연결과 연결 유형을 관련시켜서 사용자에 대한 정보로의 접근을 조절할 수 있다. 또한, 연결 스토어(245)는 소셜 네트워킹 시스템(130)의 다른 태양에 의해 접근될 수 있다.
웹 서버(210)는 네트워크(140)를 통해 소셜 네트워킹 시스템(130)과 하나 이상의 사용자 장치(110) 및/또는 하나 이상의 제 3 자 컨텐츠 객체 제공자(120)를 연결한다. 웹 서버(210)는 웹페이지뿐만 아니라 가령 자바, 플래시, XML 등과 같은 다른 웹 관련 컨텐츠를 제공한다. 웹 서버(210)는 메일 서버 또는 소셜 네트워킹 시스템(130)과 하나 이상의 사용자 장치(110) 사이의 메시지를 수신 및 라우팅하기 위한 다른 메시징 기능을 포함할 수 있다. 메시지는 인스턴트 메시지, 큐잉된(queued) 메시지(예컨대, 이메일), 텍스트와 SMS 메시지 또는 임의의 다른 적합한 메시징 포맷일 수 있다.
응용 프로그램 인터페이스(API) 요청 서버(220)는 하나 이상의 제 3 자 컨텐츠 객체 제공자(120)가 하나 이상의 API를 호출하여 소셜 네트워킹 시스템(130)으로부터 정보를 접근할 수 있도록 해준다. 또한, API 요청 서버(220)는 제 3 자 컨텐츠 객체 제공자(120)가 API(들)를 호출하여 소셜 네트워킹 시스템(130)으로 정보를 송신하도록 해준다. 예컨대, 제 3 자 컨텐츠 객체 제공자(120)는 네트워크(140)를 통해 소셜 네트워킹 시스템(130)으로 API 요청을 송신하며, API 요청 서버(220)는 API 요청을 수신한다. API 요청 서버(220)는 API 요청과 관련된 API를 호출함으로써 요청을 처리하여 적절한 응답을 생성하는데, 이렇게 API 요청 서버(220)는 네트워크(140)를 통해 제 3 자 컨텐츠 객체 제공자(120)로 통신한다.
행위 로거(215)는 소셜 네트워킹 시스템(130)의 내 및/또는 외에서 사용자 행위에 대한 웹 서버(210)로부터의 통신을 수신할 수 있다. 행위 로거(215)는 사용자 행위에 대한 정보를 행위 로그(230)에 거주시키고, 소셜 네트워킹 시스템(130)이 소셜 네트워킹 시스템(130) 내에서 그리고 소셜 네트워킹 시스템(130)의 외부에서 사용자에 의해 취해진 다양한 행위를 추적하거나 모니터할 수 있도록 해준다. 특정 사용자가 다른 사용자에 대하여 취하는 임의의 행위는 행위 로그(230)에서 관리되는 정보를 통해 또는 유사한 데이터베이스나 다른 데이터 저장소(repository)에서 각각의 사용자 프로파일과 관련된다. 식별되고 저장된, 소셜 네트워킹 시스템(130) 내에서 사용자에 의해 취해진 행위의 예는 예컨대, 또 다른 사용자에 대한 연결을 추가하거나, 메시지를 또 다른 사용자에게 송신하거나, 또 다른 사용자로부터의 메시지를 읽거나, 또 다른 사용자와 관련된 컨텐츠를 열람하거나, 또 다른 사용자에 의해 포스팅된 이벤트에 참석하거나 또 다른 사용자와 상호작용하는 다른 행위를 포함할 수 있다. 사용자가 소셜 네트워킹 시스템(130) 내에서 행위를 취하는 경우, 행위는 행위 로그(230)에 기록된다. 일실시예로, 소셜 네트워킹 시스템은 엔트리(entries)의 데이터베이스로서 행위 로그(230)를 관리한다. 행위가 소셜 네트워킹 시스템(130) 내에서 취해지는 경우, 행위의 엔트리가 행위 로그(230)에 추가된다.
관련성 및 순위결정 엔진(225)은 사용자에 관하여 제 3 자 컨텐츠 객체에 대한 관련성 점수를 계산하고, 관련성 점수로 제 3 자 컨텐츠 객체의 순위를 결정하며, 알림로서 사용자에게 송신하도록 제 3 자 컨텐츠 객체를 선택하기 위한 로직을 포함한다. 관련성 점수를 계산하기 위해, 관련성 및 순위결정 엔진(225)은 컨텐츠 객체 위치와 사용자 장치(210)의 현재 위치를 비교함으로써 위치값을 결정하고, 제 3 자 컨텐츠 객체 카테고리가 사용자의 관심사에 포함되는지 여부를 기초로 한 관심값을 결정하며, 현재시간이 제 3 자 컨텐츠 객체에 대한 전달시간 범위 내에 있는지 여부를 기초로 한 시간값을 결정하고, 얼마나 많은 사용자 연결이 제 3 자 컨텐츠 객체와 관련이 있는지를 기초로 한 연결값을 결정한다. 이후, 관련성 및 순위결정 엔진(225)은 위치값, 관심값, 연결값 및 시간값을 결합하여, 사용자에 대하여 제 3 자 컨텐츠 객체에 대한 관련성 점수를 결정한다. 일실시예로, 상기 값들은 더 적합할수록(더 근접하거나, 더 유사하거나 등) 더 높으며, 1에 도달하고, 함께 곱해져서 관련성 점수를 산출한다. 각각의 제 3 자 컨텐츠 객체에 대한 관련성 점수로부터, 관련성 및 순위결정 엔진(225)은 예컨대 가장 높은 관련성 점수에서 가장 낮은 관련성 점수까지 사용자에 대한 컨텐츠 객체의 순위를 매긴다. 이후, 관련성 및 순위결정 엔진(225)은 제 3 자 컨텐츠 객체를 선택하여 알림 제어장치(265)로 송신할 수 있거나, 가장 높은 순위의 컨텐츠 객체를 직접 사용자 장치(110)에 알림(들)으로서 제공할 수 있다.
컨텐츠 객체 분류기(260)는 각각의 제 3 자 컨텐츠 객체에 위치, 카테고리 및 전달시간 범위를 할당하기 위한 로직을 포함한다. 카테고리는 다양한 카테고리의 사용자 관심사를 반영할 수 있으며, 관심사 그 자체와 관련이 있을 수 있다. 예컨대, 사용자가 신발의 브랜드에 대한 기사를 "좋아요"라고 한다면, 카테고리는 그 브랜드이거나, 신발 브랜드에 대한 기사는 "신발" 또는 "옷"의 일반 카테고리로 할당된다. 다수의 카테고리가 단일의 컨텐츠 객체에 적용될 수 있다. 일반적이거나 특정의 위치가 컨텐츠 객체뿐만 아니라, 예컨대 도시, 특정 거리 이름이나 교차로 또는 GPS 좌표에 할당될 수 있다. 전달시간 범위는 예컨대 관련 비즈니스가 열리는 시간을 기초로 한 유용한 범위를 사용하여, 각 컨텐츠 객체에 할당된다.
추가로, 사용자 행위는 하나 이상의 제 3 자 컨텐츠 객체 제공자(120)로부터 제 3 자 컨텐츠 객체로의 노출(exposure)과 관련이 있을 수 있다. 따라서, 행위 로그(230)와 함께, 제 3 자 컨텐츠 노출 로그(232)는 이런 객체로의 사용자 노출 및 마지막 노출이 발생한 시간을 관리한다. 행위 로그(215)는 객체와의 사용자 상호작용을 기술하는 데이터를 수신하며, 데이터를 제 3 자 컨텐츠 노출 로그(232)에 저장한다. 제 3 자 컨텐츠 객체 로그(270)는 제 3 자 컨텐츠 객체로의 사용자 노출 및 사용자와 객체 사이의 관련성을 저장하기 위한 로직을 포함한다. 노출 정보는 사용자에게 동일하거나 유사한 컨텐츠 객체를 노출할지 여부를 결정하는데 사용될 수 있으며, 사용자가 이전에 동일하거나 유사한 컨텐츠 객체를 노출했는지 여부를 기초로 컨텐츠 객체의 순위 및 선택을 조정하는데 사용될 수 있다. 또한, 사용자가 가령 인센티브를 사용하거나 위치에 가는 등의 행위를 통해 컨텐츠 객체와 관련지어 진다면, 이 정보도 저장되며, 컨텐츠 객체의 순위를 재결정하고 재선택하는데 사용될 수 있다.
알림 제어장치(265)는 사용자 장치(110)에 컨텐츠 객체의 알림을 제공한다. 컨텐츠 객체의 알림은 디폴트 레이트(default rate)에 따라 사용자 장치(110)로 초기에 푸시(pushed)된다. 알림과의 사용자 관계(engagement)를 기초로, 알림 제어장치(265)는 알림이 사용자 장치(110)에 제공되는 레이트를 조정할 수 있다. 초기 설정을 조정하여, 알림 제어장치(265)는 사용자가 알림과 더 관계가 있을 가능성이 클 경우 사용자 장치(110)에 컨텐츠 객체의 알림을 제공한다. 추가로, 클라이언트 장치(110)로 제공되는 컨텐츠의 유형은 사용자 관계를 기초로 업데이트될 수 있다.
인증 서버(235)는 소셜 네트워킹 시스템(130)의 사용자들의 하나 이상의 개인정보 설정(privacy settings)을 시행한다. 사용자의 개인정보 설정은 사용자와 관련된 특정 정보가 어떻게 공유될 수 있는지를 결정한다. 개인정보 설정은 사용자와 관련된 특정 정보의 내역 및 그 정보가 공유될 수 있는 엔티티 또는 엔티티들의 내역을 포함한다. 정보가 공유될 수 있는 엔티티의 예는 다른 사용자들, 애플리케이션, 외부 웹사이트 또는 잠재적으로 정보에 접근가능한 임의의 엔티티를 포함할 수 있다. 사용자에 의해 공유될 수 있는 정보는 프로파일 사진과 같은 프로파일 정보, 사용자와 관련된 전화번호, 사용자의 연결들, 가령 연결을 추가하고 사용자 프로파일 정보를 변경하는 등과 같이 사용자에 의해 취해진 행위들을 포함한다.
소셜 네트워킹 시스템에 의해 추적되고 관리되는 유용한 소셜 정보는 복수의 에지(edges)에 의해 상호연결되는 복수의 노드를 포함하는 "소셜 그래프"의 관점에서 고려될 수 있다. 소셜 그래프에서 각각의 노드는 실행가능한 및/또는 또 다른 노드에 의해 실행될 수 있는 임의의 것을 나타낼 수 있다. 일반적인 노드의 예는 사용자, 비-인격 엔티티, 컨텐츠 객체, 그룹, 이벤트, 메시지, 개념 및 소셜 네트워킹 시스템에서 객체로 표현될 수 있는 임의의 다른 것들을 포함한다. 소셜 그래프에서 2개의 노드 사이의 에지는 2개의 노드 사이의 특정 종류의 연결을 나타내며, 다른 노드에서 노드들 중 하나에 의해 수행되었던 행위의 결과일 수 있다.
소셜 네트워킹 시스템(130)은 소셜 네트워킹 시스템(130)에서 웹 컨텐츠와 노드를 관련시키기 위한 요청을 수신할 수 있다. (예컨대, 제 3 자 컨텐츠 객체 제공자(130)의) 외부 웹사이트는 태그를 웹 컨텐츠의 웹페이지(들)에 대한 마크업 언어 문서로 통합하여, 소셜 네트워킹 시스템(130)의 상황에서 페이지/도메인의 소유권을 주장한다. 일부의 경우, 전체 도메인 또는 웹페이지들의 집합은 웹페이지와 노드를 연관시키는 고유 식별자와 관련이 있다. 일단 확립된다면, 소셜 네트워킹 시스템(130)은 행위 로그(230)에서 노드와 관련된 데이터를 추적한다.
연결 스토어(245), 사용자 프로파일 스토어(240) 및 행위 로그(230)에 저장된 데이터는 소셜 네트워킹 시스템(130)이 노드를 사용하여 다양한 객체 및 서로 다른 객체들 사이의 관계를 식별하도록 노드를 연결하는 에지를 식별하는 소셜 그래프를 생성하도록 해준다. 소셜 그래프에서 2개의 노드 사이의 에지는 2개의 노드 사이의 특정 종류의 연결을 나타내며, 다른 노드에서 노드들 중 하나에 의해 수행되었던 행위의 결과일 수 있다.
제 3 자 컨텐츠 객체 스토어(250)는 제 3 자들로부터 수신된 컨텐츠 객체를 저장한다. 제 3 자 컨텐츠 객체는 가령 영화 쇼 타임, 레스토랑 메뉴 등과 같은 정보형 컨텐츠 객체뿐만 아니라, 가령 쿠폰, 할인 티켓, 상품권 등과 같은 인센티브형 컨텐츠 객체를 포함할 수 있다. 또한, 몇몇 제 3 자 컨텐츠 객체는 정보와 인센티브의 조합을 포함할 수 있다.
위치 스토어(255)는 사용자들과 관련된 사용자 장치로부터 수신된 위치 정보를 저장한다. 소셜 네트워킹 시스템(130)에 의해 사용되는 위치 정보는 예컨대 알림이 송신되는 시점이나 다양한 기결정된 시간 구간에 사용자 장치(110)로부터 직접 얻어질 수 있거나, 위치 정보는 사용자 장치(110)로부터 수신되는 최근에 저장된 위치일 수 있다. 또한, 위치 스토어(255)는 예컨대 사용자 장치(110)의 위치 변화에 응답하여, 업데이트된 위치 정보를 수신할 수 있다. 일실시예로, 업데이트된 위치가 수신된다면, 업데이트된 위치는 업데이트된 위치 정보의 관점에서 제 3 자 컨텐츠 객체의 순위를 재결정 및/또는 제 3 자 컨텐츠 객체를 재선택하기 위해 관련성 및 순위결정 엔진(225)으로 제공된다.
대체로, 제 3 자 컨텐츠 객체의 선택 및 순위결정은 가령, 항상 알림이 제공되고 있는 기간의 시작에서 또는 알림이 제공되고 있는 기간 중 매 X분마다 또는 (예컨대, 검색이 발생할 때를 준비하기 위해) 항상 매 X분마다, 단지 위치 변화나 컨텐츠 객체에 대한 전달시간의 만료에 응답하여 등과 같이, 여러 변수를 기초로 가변하는 구간에서 발생할 수 있다. 대안으로, 제 3 자 컨텐츠 객체의 순위결정은 사용자 요구의 결과로서 발생할 수 있다. 사용자는 사용자의 주변 내에서 발생하는 관련 정보에 대한 요청을 제시함으로써 순위결정을 명시적으로 요청할 수 있다. 본 명세서와 관련된 사용자 애플리케이션에 포함된 "재생(refresh)"의 사용자 선택에 응답하여, 요청이 수신될 수 있다. 또한, 요청은 암시될 수 있다. 예컨대, 사용자 애플리케이션이 개시되자마자, 순위결정을 위한 요청이 자동으로 수신될 수 있다.
소셜 네트워킹 시스템(130)은 컨텍스트 검색 모듈(280)를 사용하여 컨텍스트 검색을 실행한다. 컨텍스트 검색 결과는 사용자의 현재 위치뿐만 아니라 소셜 정보를 기초로 한 사용자와 관련된 검색 결과이다. 이런 방식으로, 컨텍스트 검색 결과는 사용자의 관심사, 연결 및 검색시의 위치로 맞춰진다. 컨텍스트 검색 모듈(280)은 검색 결과의 순위 리스트를 제공하기 위해 및/또는 알림을 제공하기 위한 기초로써 제 3 자 컨텐츠 객체의 선택을 위해, 위치 정보, 검색 결과, 관련성 및 순위결정 엔진(225)으로부터 얻어진 관련성 점수 정보를 통합한다.
광고 가격결정(pricing) 모듈(285)은 소셜 정보, 현재시간 및 위치 정보를 결합하여 사용자에게 알림의 형태로 관련 광고를 제공한다. 사용자와의 관련성이 증가된 광고는 구매로 이어질 가능성이 더 높다. 소셜 정보를 기초로 구매자의 관심사에 따라 구매자들을 분리함으로써 상인은 잠재 고객의 가치를 계산할 수 있다. 소셜 네트워킹 시스템(130)을 통해 제공된 광고는 소셜 정보에 의해 표시되는 바와 같이 상인에 대한 고객의 가치에 따라 가격결정될 수 있다.
UI(또는 사용자 인터페이스) 모듈(290)은 컨텍스트 검색 모듈(280)에 의해 순위결정된 클라이언트 장치(110)상의 검색 결과의 순위 리스트를 디스플레이하도록 구성된다. UI 모듈(290)은 소셜 네트워킹 시스템(130)을 통해 상인 광고용 광고 대시보드를 생성하도록 추가로 구성된다. 광고 대시보드를 통해 상인은 분배 및 광고를 위해 지불하는 가격을 제어할 수 있다. 두 기능 모두에 대해, UI 모듈은 클라이언트 장치(110) 또는 제 3 자 컨텐츠 객체 제공자(또는 상인)(120)가 상호작용할 수 있는 사용자 인터페이스를 생성하도록 구성된다.
인터페이스 모듈(275)은 소셜 네트워킹 시스템(130)에서 사용자들 사이의 중복 관심사(overlapping interests)를 결정한다. 사용자와 그 또는 그녀의 친구 사이의 중복 관심사를 결정함으로써, 인터페이스 모듈(275)은 어느 관심사가 사용자의 친구의 관심사를 기초로 사용자에게 귀속될 수 있는지를 식별할 수 있다. 따라서, 사용자의 친구를 통해, 인터페이스 모듈(275)은 사용자에 의해 명시적으로 표시되지 않은 사용자에 대한 관심사를 소셜 네트워킹 시스템(130)이 식별할 수 있도록 해준다.
제 3 자 컨텐츠 객체 스토어(250)는 제 3 자로부터 수신된 컨텐츠 객체를 저장한다. 제 3 자 컨텐츠 객체는, 가령 영화 쇼 타임, 영화 리뷰, 레스토랑 리뷰, 레스토랑 메뉴, 제품 정보와 리뷰 등과 같은 정보형 컨텐츠 객체뿐만 아니라, 가령 쿠폰, 할인 티켓, 상품권 등과 같은 인센티브형 컨텐츠 객체를 포함한다. 또한, 몇몇 제 3 자 컨텐츠 객체는 정보와 인센티브의 조합을 포함할 수 있다.
위치 스토어(255)는 사용자들과 관련이 있는 사용자 장치로부터 수신된 위치 정보를 저장한다. 소셜 네트워킹 시스템(130)에 의해 사용되는 위치 정보는 예컨대 알림이 송신되는 시점이나 다양한 기결정된 시간 구간에 사용자 장치(110)로부터 직접 얻어질 수 있거나, 위치 정보는 사용자 장치(110)로부터 수신되는 최근에 저장된 위치일 수 있다. 또한, 위치 스토어(255)는 예컨대 사용자 장치(110)의 위치 변화에 응답하여, 업데이트된 위치 정보를 수신할 수 있다. 일실시예로, 업데이트된 위치가 수신된다면, 업데이트된 위치는 업데이트된 위치 정보의 관점에서 제 3 자 컨텐츠 객체의 순위를 재결정 및/또는 제 3 자 컨텐츠 객체를 재선택하기 위해 관련성 및 순위결정 엔진(225)으로 제공된다.
소셜 네트워킹 시스템 사용자용 관련 컨텐츠 객체의 선택
도 3은 사용자 위치, 관심사, 시간 및 소셜 정보를 기초로 소셜 네트워킹 시스템의 사용자에게 사용자와 관련된 알림을 제공하기 위한 프로세스의 일실시예의 상호작용 다이어그램이다.
초기에, 사용자 장치(110)를 거쳐 사용자들은 소셜 네트워킹 시스템(130)을 통해 서로 상호작용(305)하고 소셜 네트워킹 시스템(130)과 직접 상호작용하여, 가령 사용자 관심사 및 연결 정보와 같은 사용자에 대한 정보를 소셜 네트워킹 시스템에 제공한다. 소셜 네트워킹 시스템(130)은 각 사용자에 대한 사용자 소셜 정보(예컨대, 관심사 및 연결 정보)를 관리(310)한다. 예컨대, 소셜 네트워킹 시스템(130)은 관심사 정보를 카테고리로 분류한다.
소셜 네트워킹 시스템(130)은 사용자 장치(110)의 위치에 대한 정보를 수신(315)한다. 이런 정보는 예컨대 알림이 송신되는 시점이나 다양한 시간 구간에 사용자 장치(110)로부터 직접 얻어질 수 있거나, 소셜 네트워킹 시스템(130)은 사용자 장치(110)에 대한 최근에 저장된 위치를 검색할 수 있다. 또한, 사용자 장치(110)가 위치를 변경하는 경우, 업데이트된 위치 정보가 소셜 네트워킹 시스템(130)으로 제공될 수 있다.
또한, 소셜 네트워킹 시스템(130)은 하나 이상의 제 3 자(120)로부터 제 3 자 컨텐츠 객체를 수신(320)한다. 제 3 자 컨텐츠 객체는 가령 영화 쇼 타임, 영화 리뷰, 판매 정보, 레스토랑 메뉴 등과 같은 정보형 컨텐츠 객체뿐만 아니라, 가령 쿠폰, 할인 티켓, 상품권 등과 같은 인센티브형 컨텐츠 객체를 포함한다. 또한, 몇몇 제 3 자 컨텐츠 객체는 정보와 인센티브의 조합을 포함할 수 있다.
제 3 자 컨텐츠 객체가 수신(320)된 후, 제 3 자 컨텐츠 객체는 카테고리, 위치 및 전달시간 범위로 할당(325)된다. 예컨대, 카테고리는 소셜 네트워킹 시스템(130)의 사용자들의 다양한 관심사 카테고리를 반영하는 소셜 네트워킹 시스템(130)에 의해 확립될 수 있다. 카테고리는 관심사 그 자체와 관련이 있을 수 있다. 예컨대, 사용자가 신발의 브랜드에 대한 기사를 "좋아요"라고 한다면, 카테고리는 그 브랜드일 수 있다. 대안으로, 소셜 네트워킹 시스템(130)은 "신발" 또는 "옷"의 일반 카테고리로 신발 브랜드에 대한 기사를 할당할 수 있다. 소셜 네트워킹 시스템(130)은 이들 카테고리 모두를 단일의 컨텐츠 객체로 할당할 수 있다; 따라서, 다수의 카테고리가 단일의 컨텐츠 객체에 적용될 수 있다. 예컨대, 특정 커피점에서 특별 커피 음료에 20% 할인을 제공하는 인센티브에 대하여, 홍보가 카테고리 "음식", 유형 "음료" 및 서브타입 "커피"로 할당될 수 있다. 이들 태그는 사용자 관심사와 관련된 카테고리로 매칭될 수 있다. 또한, 위치도 컨텐츠 객체로 할당될 수 있다. 예컨대, 특정한 영화 상영관 체인에서 영화표의 $2.00 할인에 대한 쿠폰이 그 체인 내의 모든 상영관 또는 단지 하나의 상영관에 적용될 수 있다. 위치는 가령 도시와 같이 일반적이거나, 가령 특정 거리 이름이나 교차로 또는 GPS 좌표와 같이 특정된 것일 수 있다. 하나 이상의 이런 위치는 각각의 컨텐츠 객체로 할당된다. 마지막으로, 전달시간 범위가 컨텐츠 객체로 할당된다. 이 범위는 아이템에 대한 적절한 시간을 반영할 수 있다. 예컨대, 컨텐츠 객체가 단지 아침에 오픈하는 도넛 스토어에 대한 쿠폰이라면, 알림에 대한 전달시간 범위는 도넛 스토어가 오픈 중인 시간 또는, 예컨대 오픈 전 15분 내지 마감 전 30분과 같이 오픈 시간에 관한 일부 다른 유용한 범위에 해당될 것이다.
다음으로, 소셜 네트워킹 시스템(130)은 소셜 네트워킹 시스템(130)의 특정 사용자에 대해 각각의 제 3 자 컨텐츠 객체에 대한 관련성 점수를 계산(330)한다. 소셜 네트워킹 시스템(130)은 위치, 관심사, 시간 및 사용자와 컨텐츠 객체에 대한 연결 정보를 사용하여 점수를 계산한다. 예컨대, 소셜 네트워킹 시스템(130)은 먼저 관련성 점수를 얻기 위해 결합되는 상기 카테고리 각각에 대한 점수를 계산한다.
일실시예로, 각각의 제 3 자 컨텐츠 객체에 대해 소셜 네트워킹 시스템(130)은 컨텐츠 객체 위치와 사용자 장치와 관련된 현재 위치 사이의 근접성을 기초로 위치값을 결정한다. 또한, 소셜 네트워킹 시스템(130)은 제 3 자 컨텐츠 객체에 할당된 카테고리 또는 카테고리들이 사용자의 관심사와 관련된 카테고리 또는 카테고리들에 포함되는지 여부를 기초로 관심값을 결정한다. 또한, 소셜 네트워킹 시스템(130)은 현재시간이 제 3 자 컨텐츠 객체에 대한 전달시간 범위 내에 있는지 여부를 기초로 시간값을 결정한다. 예컨대, 레스토랑에서 점심용 할인 쿠폰은 점심 시간과 관련될 수 있고, 따라서 주로 점심과 관련된 시간 동안 더 적극적으로 홍보된다. 그리고, 소셜 네트워킹 시스템(130)은, 만약 있다면, 얼마나 많은 사용자의 연결들이 제 3 자 컨텐츠 객체와 관련되는지를 기초로 연결값을 결정한다. 예컨대, 컨텐츠 객체와 관련된 연결은, 예컨대 사용자의 연결이 인센티브가 적용되는 얼린 요거트 스토어에 있다는 것과 같이, 사용자의 연결들 중 하나가 현재에 위치하는 비즈니스에 대한 정보 또는 인센티브를 포함할 수 있다. 이후, 소셜 네트워킹 시스템(130)은 위치값, 관심값, 연결값 및 시간값을 결합하여 사용자에 대해 제 3 자 컨텐츠 객체에 대한 관련성 점수를 결정한다. 일실시예로, 상기 값들은 더 적합할수록(큰 근접성, 큰 유사성 등) 더 높으며, 1에 도달하고, 함께 곱해져서 관련성 점수를 산출한다.
제 3 자 컨텐츠 객체의 관련성 점수로부터, 소셜 네트워킹 시스템(130)은 예컨대 가장 높은 관련성 점수 내지 가장 낮은 관련성 점수의 순위결정으로부터 또는 가장 높은 관련성 점수의 아이템의 선택에 의해, 사용자에 대한 제 3 자 컨텐츠 객체를 선택(335)한다. 이후, 소셜 네트워킹 시스템(130)은 사용자에게 제공하기 위해 알림 제어장치에 선택된 객체를 제공(340)할 수 있거나, 하나가 만료된 경우 다음의 알림으로서 선택된 제 3 자 컨텐츠 객체를 사용자에게 직접 제공할 수 있다. 알림을 제공하는 타이밍이 도 4와 함께 더 기술된다.
일단 사용자가 제 3 자 컨텐츠 객체에 노출된다면, 소셜 네트워킹 시스템(130)은 이런 노출을 저장한다. 또한, 소셜 네트워킹 시스템(130)은 사용자가 인센티브를 사용하는지, 정보의 위치로 가는지, 또는 다른 방식으로 컨텐츠 객체와 관련이 되는지 여부를 모니터하며, 만일 그렇다면, 소셜 네트워킹 시스템(130)은 이런 정보를 저장한다.
사용자에게 관련 컨텐츠 객체 알림을 제공하는 타이밍
소셜 네트워킹 시스템(130)은 사용자 장치(110)에게 컨텐츠 객체의 알림을 제공한다. 알림은 하루 중 시간 구간 동안 사용자 장치(110)에 제공된다. 일실시예로, 소셜 네트워킹 시스템(130)은 하루를 일련의 시간 구간으로 나눈다. 시간 구간은 컨텐츠 객체 알림을 제공할 하루 중 서로 다른 시간대들을 나타내는 다양한 시간 범위(예컨대, 시(hour) 범위)를 포함할 수 있다. 예컨대, 소셜 네트워킹 시스템(130)은 근무시간을 나타내는 제 1 시간 구간, 점심시간을 나타내는 제 2 시간 구간, 가정시간을 나타내는 제 3 시간 구간, 저녁시간을 나타내는 제 4 시간 구간 및 휴식시간을 나타내는 제 5 시간 구간을 포함하는 복수의 시간 구간들로 하루를 분할할 수 있다. 소셜 네트워킹 시스템(130)에 의해 결정된 시간 구간은 마찬가지로 그 주의 모든 요일에 적용된다. 대안으로, 그 주의 소정의 요일에 대하여 다른 시간 구간이 소셜 네트워킹 시스템(130)에 의해 결정된다. 예컨대, 평일에 할당된 시간 구간이 주말에 할당된 시간 구간과 다를 수 있다.
일실시예로, 하루 중 각각의 시간 구간은 소셜 네트워킹 시스템(130)이 시간 구간 동안 사용자 장치(110)로 제공하는 컨텐츠 객체 알림의 최대 수(최대 푸시 레이트(push rate))와 관련된다. 소셜 네트워킹 시스템(130)은 소셜 네트워킹 시스템(130)의 디폴트 푸시 레이트를 기초로 사용자 장치(110)에 컨텐츠 객체의 알림을 제공할 수 있다. 예컨대, 디폴트 푸시 레이트는 소셜 네트워킹 시스템(130)이 하루 중 제 1 시간 구간 동안 최대 "X"개의 컨텐츠 객체 알림을 제공할 수 있고, 하루 중 제 2 시간 구간 동안 최대 "Y"개의 컨텐츠 객체 알림을 제공할 수 있다는 점 등을 표시할 수 있다. 대안으로, 디폴트 푸시 레이트는 소셜 네트워킹 시스템(130)이 하루 중 제 1 시간 구간 동안 시간당 최대 "X"개의 컨텐츠 객체 알림을 제공할 수 있고, 하루 중 제 2 시간 구간 동안 시간당 최대 "Y"개의 컨텐츠 객체 알림을 제공할 수 있다는 점을 표시할 수 있다.
일단 컨텐츠 객체 알림의 최대 수가 소정의 시간 구간 동안 사용자 장치(110)에게 제공된다면, 소셜 네트워킹 시스템(130)은 다음의 알림이 사용자 장치(110)로 제공될 수 있을 때까지 시간의 길이를 결정한다. 소셜 네트워킹 시스템(130)은 사용자에 대한 컨텐츠 객체의 전달시간 범위 및 컨텐츠 객체 알림이 사용자에게 제공되었던 최종 시간을 결정할 수 있다. 전달시간 범위 및 컨텐츠 객체 알림이 제공되었던 최종 시간을 기초로, 소셜 네트워킹 시스템(130)은 사용자의 사용자 장치(110)로 다음의 알림이 언제 제공될 것인지를 결정한다.
일실시예로, 각각의 시간 구간 동안 소셜 네트워킹 시스템(130)에 의해 제공된 컨텐츠 객체 알림의 최대 수는 모든 시간 구간에 걸쳐 동일할 수 있거나 각각의 시간 구간마다 변할 수 있다. 예컨대, 9AM 내지 6PM의 시간대를 포함하는 제 1 시간 구간은 6PM 내지 10PM의 시간대를 포함하는 제 2 시간 구간에 비해 낮은 디폴트 푸시 레이트와 관련될 수 있다. 제 1 시간 구간은 사용자들이 통상 임의의 컨텐츠 객체 알림을 수신하지 않기를 선호하는 비즈니스 근무시간에 해당하기 때문에, 낮은 디폴트 푸시 레이트와 관련된다. 반면에, 제 2 시간 구간은 사용자들이 통상 집에 있으므로 이 시간 구간 동안 컨텐츠 객체 알림을 수신하기를 선호하는 시간에 해당한다.
또한, 디폴트 푸시 레이트는 알림 유형에 의존적일 수 있다. 즉, 소셜 네트워킹 시스템(130)이 사용자 장치(110)에 컨텐츠 객체를 제공하는 빈도는 객체와 관련된 알림의 유형을 기초로 한다. 예컨대, 인센티브형 컨텐츠 객체 알림은 정보형 컨텐츠 객체 알림에 비해 더 빈번한 디폴트 푸시 레이트와 관련될 수 있거나, 그 반대일 수 있다. 게다가, 디폴트 푸시 레이트는 또한 컨텐츠 유형에 의존적일 수 있다. 다시 말하면, 디폴트 푸시 레이트는 알림에 포함된 컨텐츠 객체에 기반할 수 있다. 예컨대, 쇼핑에 대한 알림은 날씨 컨텐츠에 관한 디폴트 푸시 레이트에 비해 더 빈번한 디폴트 푸시 레이트와 관련될 수 있다.
일실시예로, 소셜 네트워킹 시스템(130)은 장치(110)와 관련된 사용자에 의해 특정된 사용자 선호도 설정을 기초로 사용자 장치(110)에 컨텐츠 객체의 알림을 제공한다. 소셜 네트워킹 시스템(130)은 디폴트 푸시 레이트보다는 사용자 선호도 설정을 기초로 컨텐츠 객체 알림을 제공한다. 일실시예에 따르면, 사용자 선호도 설정은 소셜 네트워킹 시스템(130)의 디폴트 푸시 레이트를 대체한다.
사용자 선호도 설정은 컨텐츠 객체에 대한 사용자 특정 푸시 레이트(user specified push rate)를 포함할 수 있다. 단일의 사용자 특정 푸시 레이트는 소정의 하루 내의 모든 시간 구간에 적용될 수 있다. 대안으로, 사용자 선호도 설정은 하루 중 각각의 시간 구간에 대한 사용자 특정 푸시 레이트를 포함할 수 있다. 또한, 사용자 선호도 설정은 상술한 바와 같이 알림 유형 및 컨텐츠 유형을 기초로 사용자 특정 푸시 레이트를 포함할 수 있다.
소셜 네트워킹 시스템(130)은 컨텐츠 객체의 알림과 사용자의 상호작용을 기초로 디폴트 푸시 레이트 또는 사용자 선호도 설정을 업데이트한다. 소셜 네트워킹 시스템(130)은 사용자 장치(110)에 제공되는 컨텐츠 객체의 알림과의 사용자 상호작용을 식별한다. 장치(110)의 사용자가 알림과 상호작용할 때, 사용자가 소셜 네트워킹 시스템(130)에 연결되어 있다고 가정하면, 상호작용은 행위 로거(215)에 의해 추적된다. 사용자 장치(110)가 현재 소셜 네트워킹 시스템(130)에 연결되어 있지 않다면, 장치(110)는 소셜 네트워킹 시스템(130)으로 상호작용을 제공할 수 있다. 소셜 네트워킹 시스템(130)은 실시간으로 또는 하루종일 기결정된 시간에 일괄적으로 상호작용을 수신할 수 있다. 소셜 네트워킹 시스템(130)에서 수신된 상호작용은 제 3 자 컨텐츠 객체 로그(270)에 행위 로거(215)에 의해 저장된다.
일실시예로, 소셜 네트워킹 시스템(130)은 제 3 자 컨텐츠 객체 로그(270)를 분석하여 사용자가 사용자 장치(110)에서 제공되는 알림과 어떻게 교류되는지 식별한다. 소셜 네트워킹 시스템(130)은 컨텐츠 객체의 알림과의 사용자 교류의 패턴을 식별한다. 패턴은 사용자가 알림과 상호작용했던 특성을 기술한다. 식별된 패턴을 기초로, 소셜 네트워킹 시스템(130)은 디폴트 푸시 레이트를 업데이트하든지 또는 사용자 특정 선호도를 업데이트하든지 간에, 컨텐츠 객체 알림이 사용자에 제공되는 레이트를 업데이트한다. 알림과의 사용자 상호작용을 식별하는 하기의 방법은 단지 소셜 네트워킹 시스템(130)의 기계 학습(machine learning) 특성의 일부 실시예들임을 유의하라. 소셜 네트워킹 시스템(130)의 다른 실시예에서는 다른 기술이 사용될 수 있다.
소셜 네트워킹 시스템(130)은 알림과의 사용자 교류로부터 시간 패턴 특성을 식별한다. 시간 패턴 특성은 장치(110)의 사용자가 컨텐츠 객체의 알림과 상호작용하는 시간 구간 및 사용자가 알림을 무시하는 시간 구간을 나타낸다. 예컨대, 소셜 네트워킹 시스템(130)은 사용자가 종종 12PM와 1PM 사이의 시간에 제공되고 7PM과 10PM의 시간으로부터 제공되는 알림과 상호작용한다고 표시하는 시간 패턴을 식별한다. 소셜 네트워킹 시스템(130)은 상기 시간 구간 이외에 제공되는 모든 알림이 사용자에 의해 무시된다는 점을 인식할 수 있다. 따라서, 소셜 네트워킹 시스템(130)은 식별된 패턴을 반영하는 디폴트 푸시 레이트 또는 사용자 선호도 설정을 업데이트하거나 조정할 수 있다. 다시 말하면, 소셜 네트워킹 시스템(130)은 사용자가 빈번히 알림과 상호작용하는 식별된 시간 구간 동안 컨텐츠 객체 알림이 제공되는 레이트를 증가시킬 수 있다. 또한, 소셜 네트워킹 시스템(130)은 사용자가 통상 알림을 무시하는 하루의 모든 다른 시간 구간 동안 컨텐츠 객체 알림이 제공되는 레이트를 감소시킬 수 있다.
추가로, 소셜 네트워킹 시스템(130)은 알림과의 사용자 교류로부터 지리적 위치 패턴 특성을 식별할 수 있다. 지리적 위치 패턴 특성은 사용자가 장치(110)상에서 컨텐츠 객체 알림과 빈번히 상호작용하는 지리적 위치(들)를 나타낸다. 소셜 네트워킹 시스템(130)은 제 3 자 컨텐츠 객체 로그(270)를 분석하여 그 또는 그녀가 컨텐츠 객체와 상호작용할 때 사용자의 위치를 결정한다. 소셜 네트워킹 시스템(130)은 사용자가 컨텐츠 객체 알림과 더 빈번히 상호작용하는 위치를 식별한다. 예컨대, 소셜 네트워킹 시스템(130)은 사용자가 캘리포니아주 새너제이(San Jose, CA)에 있을 때는 알림과 항상 상호작용하나, 캘리포니아주 팔로 알토(Palo Alto, CA)에 있을 때는 알림과 거의 상호작용하지 않음을 식별할 수 있다. 따라서, 소셜 네트워킹 시스템(130)은 사용자가 식별된 위치에 있는 동안 사용자가 알림을 수신하는 레이트를 증가시키기 위해 디폴트 푸시 레이트 또는 사용자 선호도 설정을 조정한다. 또한, 소셜 네트워킹 시스템(130)은 사용자가 다른 위치에 있는 동안 사용자가 알림을 수신하는 레이트를 감소시킬 수 있다.
또한, 소셜 네트워킹 시스템(130)은 알림과의 사용자 교류로부터 알림 유형 패턴 특성을 식별할 수 있다. 알림 유형 패턴 특성은 장치(110)의 사용자에 의해 빈번히 상호작용한 알림의 유형을 나타낸다. 예컨대, 소셜 네트워킹 시스템(130)은 사용자가 정보형 컨텐츠 객체 알림보다는 인센티브형 컨텐츠 객체 알림과 빈번히 상호작용함을 식별할 수 있다. 따라서, 소셜 네트워킹 시스템(130)은 식별된 유형의 알림이 최대 푸시 레이트로 사용자 장치(110)에 제공되도록 또는 덜 빈번히 상호작용되는 다른 알림 유형보다 더 빈번히 제공되도록, 디폴트 푸시 레이트 또는 사용자 선호도 설정을 업데이트한다.
게다가, 소셜 네트워킹 시스템(130)은 알림과의 사용자 교류로부터 컨텐츠 유형 패턴 특성을 식별할 수 있다. 컨텐츠 유형 패턴 특성은 사용자에 의해 빈번히 상호작용되는 컨텐츠 객체의 유형(예컨대, 장르 또는 카테고리)을 나타낸다. 소셜 네트워킹 시스템(130)은 사용자에 의해 상호작용된 컨텐츠 객체 알림을 기술하는 제 3 자 컨텐츠 객체 로그(270)에서 특정된 컨텐츠 객체 알림과 관련된 메타데이터를 분석할 수 있다. 소셜 네트워킹 시스템(130)은 메타데이터를 분석하여 빈번히 상호작용되는 컨텐츠 객체의 장르 또는 카테고리뿐만 아니라 사용자에 의해 빈번히 무시되는 객체의 카테고리들을 결정한다. 예컨대, 소셜 네트워킹 시스템(130)은 "음식"과 관련된 알림에 비해, "신발"과 관련된 알림이 사용자에 의해 더 빈번히 상호작용된다는 점을 메타데이터로부터 식별할 수 있다. 따라서, 소셜 네트워킹 시스템(130)은 식별된 컨텐츠 유형의 알림이 최대 푸시 레이트로 사용자 장치(110)에 제공되도록 또는 덜 빈번히 상호작용되는 다른 컨텐츠 유형보다 더 빈번히 제공되도록, 디폴트 푸시 레이트 또는 사용자 선호도 설정을 업데이트한다.
상술한 식별된 패턴 및 디폴트 푸시 레이트와 사용자 선호도 설정의 조정은 소셜 네트워킹 시스템(130)의 기계 학습 능력임을 유의하라. 초기 설정을 조정함으로써, 시스템(130)은 더 의미 있는 정보를 장치(110)의 사용자에게 제공한다. 그러나, 소셜 네트워킹 시스템(130)은 또한 사용자 장치(110)의 사용자로부터 사용자 선호도 설정에 대한 업데이트를 수신할 수 있다. 업데이트된 선호도 설정은 일실시예에 따라 소셜 네트워킹 시스템(130)에 의해 행해진 설정에 대한 임의의 조정에 우선할 수 있다.
기계 학습을 통해서든 또는 사용자 특정을 통해서든, 일단 푸시 레이트가 설정되면, 소셜 네트워킹 시스템(130)은 최대 푸시 레이트로 사용자 장치(110)에 컨텐츠 객체의 알림을 제공한다. 소셜 네트워킹 시스템(130)은 사용자의 관심사 및/또는 현재위치를 기초로 하여 최대 푸시 레이트로 알림을 제공할 수 있다. 알림에 포함된 제 3 자 컨텐츠 객체는 상술한 바와 같이 사용자가 알림에 관심이 있을 가능성을 더 높이도록 하기 위해, 사용자와의 관련성을 기초로 순위결정 및/또는 선택된다.
도 4는 일실시예에 따라 소셜 네트워킹 시스템의 사용자에게 관련 알림을 제공하는 시기를 결정하기 위한 상호작용 다이어그램이다. 다른 실시예에서 도 4에 도시된 바와 달리 다른 단계들이 수행될 수 있음을 유의하라.
초기에, 소셜 네트워킹 시스템(130)은 하루 동안 시간 구간들을 설정(401)한다. 즉, 소셜 네트워킹 시스템(130)은 사용자 장치(110)의 사용자가 컨텐츠 객체의 알림을 수신할 하나 이상의 시간 구간들로 하루를 분할한다. 예컨대, 소셜 네트워킹 시스템(130)은 하루를 "아침" 시간 구간, "오후" 시간 구간 및 "밤" 시간 구간으로 분할할 수 있으며, 여기서 각각의 시간 구간은 하루 내의 시간 범위와 관련된다. 각 구간에 대해, 소셜 네트워킹 시스템(130)은 사용자 장치(110)에 컨텐츠 객체의 알림을 제공하는 최대 푸시 레이트를 설정(403)한다. 상술한 바와 같이, 최대 푸시 레이트는 소셜 네트워킹 시스템(130)이 시간 구간 동안 사용자 장치(110)에 제공할 수 있는 컨텐츠 객체의 최대 수를 말한다. 최대 푸시 레이트는 사용자의 선호도 설정에서 특정될 수 있거나, 소셜 네트워킹 시스템(130)의 디폴트 최대 푸시 레이트일 수 있다.
소셜 네트워킹 시스템(130)은 도 3과 함께 상술한 바와 같이 사용자에 대한 제 3 자 컨텐츠 객체를 식별(405)한다. 일실시예에 따르면, 식별된 제 3 자 컨텐츠 객체는 순위 리스트의 형태일 수 있다. 소셜 네트워킹 시스템(130)은 제 3 자 컨텐츠 객체의 순위 리스트로부터의 컨텐츠 객체 알림을 각 시간 구간 동안 설정된 최대 푸시 레이트로 사용자 장치(110)에 제공(407)한다. 예컨대, 소셜 네트워킹 시스템(130)은 하루 내의 각 시간 구간 동안 컨텐츠 객체의 최대 10개 알림을 제공할 수 있다. 소셜 네트워킹 시스템(130)은 시간 구간들 동안 제공된 알림과의 임의의 사용자 상호작용을 사용자 장치(110)로부터 수신(409)한다. 소셜 네트워킹 시스템(130)은 실시간으로 또는 하루 중 특정 시간에 일괄적으로 상호작용을 수신할 수 있다.
소셜 네트워킹 시스템(130)은 시간 구간 동안 알림과의 사용자 상호작용의 패턴을 식별(411)한다. 식별된 패턴은 사용자가 알림과 빈번히 교류하는 시간 구간(들) 또는 지리적 위치(들), 사용자에 의해 빈번히 상호작용되는 알림의 유형 및/또는 사용자에 의해 빈번히 상호작용되는 컨텐츠 객체의 유형을 나타낼 수 있다. 식별된 패턴을 기초로, 소셜 네트워킹 시스템(130)은 이전에 설정된 최대 푸시 레이트를 조정(413)한다. 예컨대, 소셜 네트워킹 시스템(130)은 사용자가 그 또는 그녀가 알림과 빈번히 교류하는 위치에 있는 경우, 알림이 사용자 장치(110)에 제공되는 레이트를 증가시킨다. 이후, 소셜 네트워킹 시스템(130)은 적절한 시기에 조정된 최대 레이트로 컨텐츠 객체의 알림을 제공(414)한다.
친구를 통한 관련 컨텐츠 객체의 식별
소셜 네트워킹 시스템(130)은 소셜 네트워킹 시스템(130)에서 사용자들 사이의 중복 관심사를 결정한다. 소셜 네트워킹 시스템(130)의 제 1 시용자에 대해, 소셜 네트워킹 시스템(130)은 시스템 내의 제 1 사용자와 연결을 맺은 제 2 사용자를 식별한다. 소셜 네트워킹 시스템(130)은 제 1 사용자와 제 2 사용자 사이의 공통 관심사를 결정한다. 소셜 네트워킹 시스템(130)은 소셜 네트워킹 시스템(130)에서 제 1 사용자와 연결된 다른 사용자들의 관심사를 기초로 제 1 사용자에게 관심사를 귀속시킬 수 있다. 그 또는 그녀의 친구로부터 제 1 사용자의 관심사를 추론하여, 소셜 네트워킹 시스템(130)은 제 1 사용자의 관심을 또한 끌 수 있는 사용자 친구의 컨텐츠 객체 알림을 결정할 수 있다.
일실시예로, 또 다른 사용자에 관련하여 제 1 사용자에 대한 추론된 관심사를 결정하기 위해, 소셜 네트워킹 시스템(130)은 연결 스토어(245)에 접근하여 제 1 사용자와 연결을 맺은 소셜 네트워킹 시스템(130)의 다른 사용자들을 식별한다. 소셜 네트워킹 시스템(130)은 사용자 프로파일 스토어(240)로부터 제 1 사용자와 연결을 맺은 제 2 사용자의 프로파일에 접근한다. 소셜 네트워킹 시스템(130)은 제 1 사용자의 프로파일과 제 2 사용자의 프로파일을 비교하여 제 1 사용자와 제 2 사용자 사이의 공통 관심사를 결정한다. 또한, 소셜 네트워킹 시스템(130)은 제 2 사용자의 프로파일에 표시된 관심사 계층(interest hierarchy)을 검토할 수 있다. 관심사 계층은 사용자에 따른 관심사의 순서를 나타낸다. 일실시예로, 관심사 계층은 사용자에 의해 명시적으로 제공될 수 있다. 사용자는 그 또는 그녀의 프로파일을 설정하거나 업데이트할 때 관심사 계층을 제공할 수 있다.
대안으로, 이런 계층은 소셜 네트워킹 시스템(130)에서 사용자의 행위 또는 행동을 기초로 결정될 수 있다. 예컨대, 사용자는 "커피" 또는 그 변형물에 대한 빈번한 포스트를 작성하거나 "커피"와 관련된 컨텐츠를 업로드할 수 있다. 따라서, 소셜 네트워킹 시스템(130)은 상기 예에서 사용자가 커피에 대한 관심을 가지고 있다고 결정하고 커피에 대한 관심의 표시와 함께 사용자의 프로파일을 업데이트한다.
소셜 네트워킹 시스템(130)은 제 1 사용자와 제 2 사용자가 공통 관심사를 공유하기 때문에, 제 2 사용자의 관심사와 관련된 컨텐츠 객체에 대한 관련성 점수를 계산한다. 공통 관심사는 제 2 사용자의 관심사가 또한 제 1 사용자에게 중요할 수 있다는 소셜 네트워킹 시스템(130)으로의 표시이다. 따라서, 소셜 네트워킹 시스템(130)은 제 2 사용자의 관심사를 제 1 사용자에게 귀속시킬지 여부를 결정한다.
일실시예로, 관련성 점수는 제 2 사용자에 대해 계산되며 제 2 사용자의 관심사와 관련된 컨텐츠 객체에 대한 제 1 사용자의 관심사를 직접 나타내지 않기 때문에, 가중 인자(weighting factor)가 관련성 점수에 적용된다. 일실시예로, 분리도(degree of separation)가 소셜 네트워킹 시스템(130) 내 제 1 사용자와 제 2 사용자 사이에서 증가할 때 또는 사용자 사이의 관심사가 증가할 때, 가중 인자는 감소할 수 있으며, 그에 따라 추론된 관련성 점수의 값을 감소시킨다. 낮은 가중 인자는 소셜 네트워킹 시스템(130)에서 제 1 사용자와 간접적으로 연결된 사용자의 컨텐츠 객체에 대한 관심사를 제 1 사용자가 공유할 가능성이 감소함을 나타낸다.
예컨대, 사용자들과 공통 관심사 사이의 직접적인 연결을 나타내는 제 1 분리도에 대해, 90%의 가중 인자가 관련성 점수에 적용될 수 있다. 사용자들 사이의 제 1 간접 연결(예컨대, 제 2 차 분리도)에 대해, 소셜 네트워킹 시스템(130)은 가령 80%와 같은 기결정된 가중 인자를 적용할 수 있다. 그러나, 제 2 차 분리도를 넘어 분리도가 증가할 때, 가중 인자는 20% 만큼 감소할 수 있다. 예컨대, 제 3 차 분리도로 인해 소셜 네트워킹 시스템(130)은 60%의 가중 인자를 컨텐츠 객체의 관련성 점수에 적용할 수 있다.
소셜 네트워킹 시스템(130)은 제 2 사용자에 대한 컨텐츠 객체의 관련성 점수에 가중 인자를 곱하여 객체에 대한 관련성 점수의 값을 감소시킴으로써, 제 1 사용자에 대한 관련성 점수를 계산한다. 일단 제 2 사용자의 관심사와 관련된 컨텐츠 객체에 대하여 제 1 사용자에 대한 관련성 점수가 계산되면, 소셜 네트워킹 시스템(130)은 제 2 사용자의 관심사와 관련된 점수화된 컨텐츠 객체의 경로를 순회할 수 있다. 소셜 네트워킹 시스템(130)은 임계치 미만인 경로에서 컨텐츠 객체에 대한 관련성 점수에 응답하여 그 경로의 순회를 중단할 수 있다. 소셜 네트워킹 시스템(130)은 제 2 사용자의 관심사를 임계치 이상의 관련성 점수를 갖는 관심사에 대하여 제 1 사용자에게 귀속시킬 수 있다.
대안으로, 소셜 네트워킹 시스템(130)은 단지 제 1 사용자와 제 2 사용자 사이의 공통 관심사에 관한 것이며 임계치 이상의 추론된 관련성 점수를 갖는, 제 2 사용자의 관심사만을 귀속시킬 수 있다. 따라서, 제 1 사용자에게 임계치 이상의 추론된 관련성 점수를 갖는 임의의 제 2 사용자의 관심사를 전송한다기보다는, 소셜 네트워킹 시스템(130)은 단지 제 1 사용자와 제 2 사용자 사이의 공통 관심사에 관한 제 2 사용자의 관심사만을 전송한다. 예컨대, 제 1 사용자와 제 2 사용자는 "커피(coffee)"에 공통으로 관심을 가질 수 있다. 제 2 사용자는 가령 "스타벅스(Starbucks)" 및 "피츠(Peets)"와 같은 커피의 특정 브랜드에 대한 관심을 가질 수 있다. 임계치 이상인 "스타벅스" 및 "피츠" 커피 관심사와 관련된 컨텐츠 객체에 대한 관련성 점수에 응답하여, 소셜 네트워킹 시스템(130)은 이들 관심사를 제 1 사용자에게 전송할 수 있다.
또 다른 실시예로, 소셜 네트워킹 시스템(130)은 컨텐츠에 기초한 공통 관심사와 유사한 제 2 사용자의 관심사를 귀속시킬 수 있다. 예컨대, 제 1 사용자와 제 2 사용자 간에 커피에의 공통 관심사는 소셜 네트워킹 시스템(130)에서 "음료"로 카테고리화될 수 있다. 소셜 네트워킹 시스템(130)은 "차(tea)"에의 기호와 같이 또한 "음료"로 카테고리화될 수 있는 제 2 사용자의 다른 관심사 또는 가령 "음식 카테고리"와 같이 "음료" 카테고리에 관한 분류를 갖는 제 2 사용자의 다른 관심사를 결정할 수 있다. 임계치 이상인 차(tea)에의 관심사에 대한 관련성 점수에 응답하여, 소셜 네트워킹 시스템(130)은 제 1 사용자에게 그 관심사를 전송할 수 있다.
일실시예로, 소셜 네트워킹 시스템(130)은 또한 분리도 이외에 제 1 사용자와 제 2 사용자 사이의 연결 유형을 기초로 다른 가중 인자를 적용할 수 있다. 예컨대, "친구관계(friendship)"형 연결은 "직장동료(work colleague)"형 연결보다 더 높은 가중 인자와 관련될 수 있다. 소셜 네트워킹 시스템(130)은 사용자들 사이의 연결 유형을 기초로 디폴트 가중 인자를 적용할 수 있다. 대안으로, 사용자는 가중치를 나타내는 사용자 선호도 설정을 지정하여 특정 연결 유형에 적용할 수 있다. 예컨대, 사용자는 "친구관계"형 연결에 비해 "직장동료"형 연결에 더 높은 가중 인자를 연관지을 수 있다.
일단 소셜 네트워킹 시스템(130)이 제 2 사용자의 관심사에 대한 관련성 점수를 계산하면, 소셜 네트워킹 시스템(130)은 이전에 설정된 컨텐츠 객체의 리스트를 재-순위결정할 수 있거나, 추론된 관련성 점수를 기초로 제 1 사용자에 관한 한 세트의 객체를 재선택할 수 있다. 따라서, 재-순위결정된 리스트는 제 1 사용자로 전송되었던 제 2 사용자의 관심사와 관련된 컨텐츠 객체를 포함한다. 대안으로, 소셜 네트워킹 시스템(130)은 제 1 사용자에 대한 관심사의 컨텐츠 객체에 대한 관련성 점수의 초기 계산 중에 관련성 점수를 포함할 수 있다. 따라서, 제 1 사용자에게 초기에 어느 컨텐츠 객체를 제공할지 결정할 때, 제 2 사용자의 관심사가 고려된다.
도 5는 일실시예에 따라 소셜 네트워킹 시스템의 친구들 사이의 공통 관심사와 관련된 컨텐츠 객체를 결정하는 흐름도이다. 다른 실시예에서 도 5에 도시된 바와 달리 다른 단계들이 수행될 수 있음을 유의하라.
소셜 네트워킹 시스템(130)은 제 1 사용자에 대하여 소셜 네트워킹 시스템에서 제 1 사용자와 연결을 맺은 제 2 사용자를 식별한다. 연결을 결정하기 위해, 소셜 네트워킹 시스템(130)은 도 6a에 도시된 제 1 사용자의 프로파일(601)에 접근한다. 도 6a에 도시된 예에서, 제 1 사용자의 프로파일(601)은 제 1 사용자 "에릭(Erick)"이 "존(John)"과 친구임을 나타낸다. 따라서, 소셜 네트워킹 시스템(130)은 존의 사용자 프로파일(603)에 위치한다. 마찬가지로, 제 2 사용자의 프로파일(603)은 존도 사용자들 사이의 양방향 관계를 표시하는 에릭과 친구임을 나타낸다.
이후, 소셜 네트워킹 시스템(130)은 제 1 사용자와 제 2 사용자에 대한 공통 관심사를 식별(503)한다. 도 6a에 도시된 예에서, 소셜 네트워킹 시스템(130)은 프로파일들(601 및 603)을 비교하여 프로파일들 사이의 공통 관심사를 식별한다. 이 비교는 에릭과 존 모두가 커피에 관심이 있음을 나타낸다. 그러나, 존의 프로파일(603)은 존이 스타벅스 커피에 뒤이어 피츠 커피 및 CPK 커피에 대해 관심이 있음을 더 나타낸다. 소셜 네트워킹 시스템(130)은 스타벅스가 "커피"인 서브타입이고 "음료"로 카테고리화됨을 표시하는 스타벅스 객체(605)로 인해, 스타벅스가 "커피"와 관련됨을 결정한다. 유사한 결정이 피츠 커피 및 CPK 커피에 대해 이루어진다.
이후, 소셜 네트워킹 시스템(130)은 공통 관심사와 관련된 컨텐츠 객체에 대한 관련성 점수를 계산(505)한다. 먼저, 소셜 네트워킹 시스템(130)은 상술한 바와 같이 위치, 시간, 관심사 및 연결 정보를 기초로 제 2 사용자에 대한 공통 관심사와 관련된 컨텐츠 객체에 대한 관련성 점수를 계산한다. 제 1 사용자도 또한 제 2 사용자의 관심사와 관련된 컨텐츠 객체에 관심이 있을 가능성에 대한 척도를 나타내는 제 1 사용자에 대한 관련성 점수를 결정하기 위해, 소셜 네트워킹 시스템(130)은 가중 인자를 제 2 사용자에 대한 관련성 점수에 적용한다. 상술한 바와 같이, 제 1 사용자에 대한 관련성 점수는 소셜 네트워킹 시스템(130)에 의해 사용되어, 제 2 사용자의 관심사를 포함하도록 컨텐츠 객체 알림의 제 1 사용자의 순위 리스트를 재-순위결정하거나 재-선택할 수 있다. 대안으로, 소셜 네트워킹 시스템(130)은 컨텐츠 객체의 제 1 사용자의 순위 리스트의 초기 결정으로 제 2 사용자의 관심사와 관련된 컨텐츠 객체를 포함하는데 사용될 수 있다.
이제 도 6b를 참조하면, 복수의 선호도 그래프(즉, 관심사 트리(interest trees))가 제 1 사용자에 대한 관련성 점수의 계산을 도시하기 위해 소셜 네트워킹 시스템(130)의 사용자들에 대해 도시된다. 각각의 선호도 그래프는 그래프상의 노드로서 선호도를 나타낸다. 도 6b에 도시된 바와 같이, 에릭에 대한 선호도 그래프는 "스테이크(steak)"와 "커피"라는 에릭의 관심사에 대한 노드를 포함한다. 반면에, 존의 선호도 그래프는 음료 "커피" 및 "차"뿐만 아니라 영화 "브래이브하트(Braveheart)"라는 존의 관심사에 대한 노드를 포함한다.
소셜 네트워킹 시스템(130)은 에릭과 존 사이의 커피라는 공통 관심사와 관련된 존의 관심사들을 결정할 수 있다. 커피 노드는 존에 의해 선호되는 커피 브랜드를 표시하는 서브-노드들을 가진다. 각각의 서브-노드는 서브-노드로 표현된 커피 브랜드에 해당하는 컨텐츠 객체와 관련된다. 소셜 네트워킹 시스템(130)은 커피 노드의 각각의 서브-노드와 관련된 컨텐츠 객체에 대한 관련성 점수를 계산한다. 따라서, 소셜 네트워킹 시스템(130)은 스타벅스, 피츠 및 CPK 커피와 관련된 컨텐츠 객체에 대한 관련성 점수를 계산한다. 에릭도 또한 존의 관심사와 관련된 컨텐츠 객체에 관심을 가질 가능성의 척도를 나타내는 컨텐츠 객체에 대한 추론된 관련성 점수를 결정하기 위해, 소셜 네트워킹 시스템(130)은 가중 인자를 존과 관련된 컨텐츠 객체에 대해 계산된 관련성 점수에 적용한다.
에릭과 존은 연결(607)로 표시되듯이 소셜 네트워킹 시스템(130)에서 직접 연결되어 있기 때문에, 소셜 네트워킹 시스템(130)에서 에릭과 직접 연결되지 않은 사용자들에 대해 사용되는 가중치에 비해 더 높은 가중 인자가 존의 관심사에 적용된다. 도 6b에 도시된 예에서, 소셜 네트워킹 시스템(130)은 존의 관심사와 관련된 컨텐츠 객체에 대한 관련성 점수에 90% 가중 인자를 적용할 수 있다.
가중 인자를 존의 관련성 점수에 적용함으로써 에릭이 스타벅스에의 존의 관심과 관련된 컨텐츠 객체 알림에 관심을 가질 가능성(즉, 추론된 관련성 점수)은 90%가 된다. 이에 반해, 에릭이 피츠 커피에의 존의 관심과 관련된 컨텐츠 객체 알림에 관심을 가질 50%의 가능성 및 에릭이 CPK 커피에의 존의 관심과 관련된 컨텐츠 객체 알림에 관심을 가질 20%의 가능성이 있다.
일실시예로, 소셜 네트워킹 시스템(130)은 존의 관심사와 관련된 컨텐츠 객체에 대한 검색을 최적화하도록 임계치 미만인 관련성 점수에 도달할 때까지 존의 선호도 트리(preference tree)를 순회할 수 있다. 소셜 네트워킹 시스템(130)은 추론된 관련성 점수가 감소하는 순서로 선호도 트리를 순회할 수 있다. 일단 임계치 미만인 추론된 관련성 점수를 갖는 관심사에 위치하면, 선호도 트리의 순회는 중단된다.
도 6b의 예에서, 60%의 추론된 관련성 점수를 임계치로 가정하자. 소셜 네트워킹 시스템(130)은 "커피" 노드를 "스타벅스"로 연결하는 경로를 먼저 순회할 수 있으며, 에릭이 스타벅스에 대한 존의 관심과 관련된 컨텐츠 객체 알림에 관심을 갖게 될 가능성을 90%로 결정할 수 있다. 그러나, "커피" 노드와 "피츠"를 연결하는 경로는 에릭이 피츠 커피에 대한 존의 관심과 관련된 컨텐츠 객체 알림에 관심을 갖게 될 가능성을 50%로 나타내기 때문에, "커피" 노드와 연결된 다른 경로의 순회가 중단된다. 이후, 소셜 네트워킹 시스템(130)은 "차"에 대한 존의 관심을 나타내는 선호도 그래프의 다음 경로를 순회할 수 있다. 이 경로는 에릭이 "차"에 대한 존의 관심에 관련된 컨텐츠 객체 알림에 관심을 갖게 될 가능성을 70%로 나타내기 때문에, "차"에 대한 컨텐츠 객체가 에릭에게 제공된다. 이에 반해, 영화 "브래이브하트"에 대한 존의 관심을 나타내는 경로는 에릭이 영화에 대한 존의 관심과 관련된 컨텐츠 객체에 관심을 갖게 될 가능성을 50%로 나타낸다. 따라서, 소셜 네트워킹 시스템은 "브래이브하트" 노드와 연결된 임의의 노드를 계속해서 순회하지 않을 것이다. 도 6b는 간결함을 위해 "브래이브하트" 노드 또는 "차" 노드로부터 다른 경로를 도시하지 않음을 유의하라.
상술한 바와 같이, 소셜 네트워킹 시스템(130)은 또한 컨텐츠를 기초로 공통 관심사 "커피"와 관련이 있는 관심사를 결정할 수 있다. 도 6b에 도시된 예에서, 소셜 네트워킹 시스템은 "커피"가 음료의 한 유형임을 식별할 수 있다. 따라서, 소셜 네트워킹 시스템(130)은 음료의 다른 유형에 대한 존의 관심사를 식별할 수 있다. 예에서, 소셜 네트워킹 시스템(130)은 음료의 한 유형인 차에 대한 존의 관심사를 결정할 수 있다. 가중 인자는 에릭이 차에 대한 존의 관심사에 관심을 갖을 수 있는 가능성을 70%로 나타내는 차에 대한 존의 관심사에 적용된다. 관심사 "차"에 대한 추론된 관련성 점수가 임계치보다 크기 때문에, "차"에 대한 존의 관심사와 관련된 컨텐츠 객체는 에릭에게 제공될 수 있다.
일실시예로, 소셜 네트워킹 시스템(130)은 또한 제 1 사용자와 간접적으로 연결된 사용자들에 대한 추론된 관련성 점수를 계산할 수 있다. 도 6b에 도시된 예에서, 사라(Sarah)는 존을 통해 에릭과 간접적으로 연결된다. 상세하게, 사라는 화살표(609)로 도시된 바와 같이 존과 직접적인 연결을 갖는다. 따라서, 사라는 에릭으로부터 제 2 차 분리도(2nd order degree of separation)를 갖는다. 상술한 바와 같이, 분리도가 증가하면, 관련성 점수에 적용되는 가중 인자도 또한 감소한다.
도 6b에 도시된 예에서는, 존의 관심사에 대한 추론된 관련성 점수를 계산하는데 사용되는 90%의 가중 인자 대신에, 80%의 가중 인자가 사라의 관심사와 관련된 컨텐츠 객체에 적용된다. 사라가 소셜 네트워킹 시스템에서 에릭과 간접적으로 연결되기 때문에 더 낮은 가중 인자가 적용된다. 상술한 바와 같이, 사용자들 사이의 분리도가 증가하면, 적용되는 가중 인자는 감소한다.
존에 대하여 상술한 하나 이상의 방법으로 가중 인자를 사라의 관련성 점수에 적용함으로써 에릭이 "Seattle's Best"에 대한 사라의 관심사에 관련된 컨텐츠 객체 알림에 관심을 갖게 될 가능성은 70%가 되며, 에릭이 "McDonalds" 커피에 대한 사라의 관심사에 관련된 컨텐츠 객체 알림에 관심을 갖게 될 가능성은 20%가 된다.
이후, 소셜 네트워킹 시스템(130)은 제 1 사용자에게 컨텐츠 객체 알림을 제공(507)한다. 소셜 네트워킹 시스템(130)은 임계치 이상의 추론된 관련성 점수를 갖는 컨텐츠 객체 알림을 제공한다. 컨텐츠 객체는 제 1 사용자로부터의 명시적인 검색 쿼리(search query)에 응답하여 제공될 수 있거나, 이미 상술한 바와 같이 제 1 사용자에게 푸시될 수 있다.
위치 및 소셜 관련 정보를 포함하는 컨텍스트 검색
도 7은 소셜 네트워킹 시스템(130)의 사용자에게 컨텍스트 검색 결과를 제공하기 위한 프로세스의 일실시예를 도시한 흐름도이다. 일실시예로, 컨텍스트 검색은 사용자와 관련된 클라이언트 장치(110)로부터 검색 쿼리를 수신(705)함으로써 시작한다. 이는 보통 텍스트 기반 쿼리이다. 예컨대, 사용자가 식사할 이탈리아 레스토랑을 찾고 있다면, 검색은 "이탈리아 레스토랑"에 대한 것일 수 있다. 검색 쿼리가 사용자에 의해 입력되는 시간쯤에, 클라이언트 장치(110) 또는 클라이언트 장치와 통신하는 소셜 네트워킹 시스템(130)은 사용자와 관련된 클라이언트 장치(110)의 현재 위치를 결정한다. 이런 사용자 위치와 검색 쿼리는 소셜 네트워킹 시스템(130)으로 통신(705)된다.
일단 컨텍스트 검색 쿼리와 사용자 위치가 사용자로부터 수신(705)되었다면, 소셜 네트워킹 시스템은 검색을 수행하여 검색 쿼리에 관한 검색 결과를 획득(710)한다. 일실시예로, 검색을 수행하는 것은 검색 결과를 획득(710)하도록 검색 엔진을 사용하여 외부 데이터베이스를 검색하는 것을 포함한다. 예컨대, 소셜 네트워킹 시스템은 온라인 검색 엔진을 사용하여 검색할 수 있다. 또 다른 실시예로, 검색을 수행하는 것은 소셜 네트워킹 정보를 검색하여 검색 결과로서 제 3 자 컨텐츠 객체를 획득(710)하는 것을 포함한다. 검색으로 반환된 각각의 검색 결과는 검색값과 관련될 수 있다. 검색값은 검색 쿼리와 검색 결과 사이의 매치(match)의 질에 대한 척도이다. 더 높은 검색값은 검색을 수행하는데 사용된 검색 엔진이 검색 결과가 사용자가 검색하였던 것에 매우 근접한다고 신뢰함을 나타낸다. 일실시예로, 검색값은 변하거나 0 내지 1의 범위 내에서 변하도록 정규화되는데, 이때 1의 검색값은 완벽한 매치를 나타낸다. 일실시예로, 수신된 검색 쿼리는 검색이 수행되기 전에 사용자 위치를 포함하도록 변경되며, 따라서 검색 결과는 사용자의 현재 위치와 더 관련된다.
이후, 관련성 점수는 검색 결과의 일부 또는 전부에 대해 결정(715)된다. 관련성 점수는 상술한 바와 같이 결정되나, 검색 결과에 대한 관련성 점수를 결정하는 경우 추가적인 요인들이 고려된다. 상술한 바와 같이, 관련성 점수는 (예컨대, 상인에 의해 생산된 제품에 대한 사용자 관심을 기초로) 제 3 자 컨텐츠 객체에 대해 결정될 수 있다. 검색 결과가 외부 검색 엔진으로부터 획득되는 실시예에서는, 시스템(130)이 검색 결과에 관련성 점수를 할당하기 위해, 가능하다면, 시스템은 먼저 검색 결과를 소셜 네트워킹 시스템(130)에 이미 공지된 하나 이상의 기존의 제 3 자 컨텐츠 객체와 연관시킨다. 일실시예로, 검색 결과를 제 3 자 컨텐츠 객체의 카테고리와 매칭함으로써, 검색 결과가 제 3 자 컨텐츠 객체와 관련된다.
이후, 시스템(130)은 제 3 자 컨텐츠 객체에 대한 관련성 점수 및 이와 관련된 검색 결과를 결정한다. 검색 결과에 대해 계산된 관련성 점수는 가령 위치값, 시간값, 연결값, 관심값과 같은 다른 값들 이외에, 이와 관련된 검색값을 일부 기초로 한다. 일부 실시예로, 가령 레스토랑의 이름과 같은 검색 결과의 일부는 관련성 점수의 일부로서 컨텐츠 객체가 사용될 필터로서 사용될 수 있다.
관련성 점수는 모든 검색 결과에 대해서 또는 검색 결과의 부분집합에 대해서만 결정될 수 있다. 일실시예로, 어느 검색 결과에 대한 관련성 점수를 계산할 것인지에 대한 결정은 차단 임계치(cutoff threshold)를 기초로 할 수 있다. 예컨대, 관련성 점수는 단지 0.5보다 큰 검색값을 갖는 검색 결과에 대해서만 계산될 수 있다. 또 다른 실시예로, 관련성 점수는 고정된 수의 검색 결과, 예컨대 가장 높은 검색값을 갖는 1에서 10까지의 검색 결과에 대해서만 계산될 수 있다.
또한, 소셜 네트워킹 시스템(130)은 각각의 검색 결과에 추가적인 소셜 정보를 부가할 수 있다. 부가되는 정보는 검색 결과에 관심을 표시한 사용자의 친구들의 수 및/또는 신상, 검색 결과에 관한 코멘트를 입력한 친구들의 수 및/또는 신상 또는 검색 결과의 위치로 현재 체크인 되거나 과거에 검색 결과의 위치로 체크인 되었던 친구들의 신상을 포함할 수 있다.
해당 관련성 점수를 갖는 검색 결과는 더 높은 관련성 점수를 갖는 검색 결과가 검색 결과의 순위 리스트에서 더 높게 나타나도록 관련성 점수를 기초로 순위화(720)될 수 있다. 이후, 검색 결과의 순위 리스트가 클라이언트 장치(110)를 통해 사용자에게 제공될 수 있다.
일부 실시예로, 관련성 점수는 검색을 수행하거나 검색 결과를 획득하기 전에 계산된다. 이후, 검색 결과가 획득된다면, 관련성 점수는 검색 결과의 검색값에 의해 별도로 조정될 수 있다. 일실시예로, 이런 조정은 검색값과 관련성 점수를 곱하여 업데이트된 관련성 점수를 획득하는 것을 포함한다. 관련성 점수가 검색 결과를 획득하기 전에 계산되는 실시예에서, 관련성 점수는 검색 쿼리를 개선함에 따라 사용자에 대한 검색 결과의 관련성을 개선하는데 사용될 수 있다. 예컨대, 사용자가 "21st Amendment"를 검색하여 이런 이름을 갖는 바 또는 레스토랑을 찾아보려고 한다면, 많은 검색 결과는 바 또는 레스토랑과 관계가 없는 것처럼 보일 수 있다. 그러나, 이런 예시적인 실시예에서, 제 3 자 컨텐츠 스토어(250)는 "레스토랑"에의 사용자 관심사에 대한 높은 관련성 점수를 갖는 "21st Amendment"라는 레스토랑과 관련된 제 3 자 컨텐츠 객체를 포함할 수 있다. 이런 검색 용어가 레스토랑에 대해 높은 관련성 점수를 가짐으로 인해, 검색 쿼리는 "21st Amendment"와 함께 "레스토랑"이란 용어를 포함하도록 변경될 수 있다.
일부 실시예로, 검색 쿼리는 컨텍스트 검색을 수행하는데 필수적인 전제조건은 아니다. 검색은 모든 관련 제 3 자 컨텐츠 객체가 해당 관련성 점수에 따라 포함되도록 순위결정되거나 선택되고 사용자에게 즉시 전달되어야 하는 사용자 요청으로부터 입력을 수신함으로써 소셜 네트워킹 시스템(130)에 의해 수행될 수 있다. 이를 통해 사용자는 알림이 전달되도록 기다릴 필요 없이 소셜 네트워킹 시스템으로부터 알림을 효과적으로 "풀(pull)"할 수 있다. 이런 방식으로 클라이언트 장치(110)로 전달된 알림은 사용자가 검색을 수행하는 시간 구간 동안 최대 푸시 레이트에 가산되는 것으로부터 면제될 수 있다. 따라서, 컨텍스트 검색은 일시적으로 클라이언트 장치(110)로 알림을 푸시하는 소셜 네트워킹 시스템(130)의 제어에 우선한다. 일실시예로, 검색은 클라이언트 장치(110)로 푸시되려고 했던 다음 알림을 대체한다. 또 다른 실시예로, 검색은 다음 알림에 영향을 미치지 않으며, 다음 알림은 검색과는 별도로 클라이언트 장치(110)에 푸시된다. 또 다른 실시예로, 검색으로 인해 클라이언트 장치(110)로 다음 알림을 푸시하는 것이 지연된다. 또한, 컨텍스트 검색은 소셜 네트워킹 시스템에 의해 검색이 발생된 시간 구간 동안 사용자 상호작용의 패턴을 식별하는데 사용될 수 있다. 따라서, 컨텍스트 검색은 하나 이상의 시간 구간 동안 알림의 최대 푸시 레이트에 영향을 미칠 수 있다.
예컨대, 이런 검색은 검색해야 하는 것에 대한 특별한 생각 없이 사용자가 통상 주변에 진행되는 소셜 관련 이벤트에 관심이 있는 경우에 유용하다. 사용자가 현재 위치에서 아주 근접한 이벤트에 관심이 있는 실시예에서, 검색은 검색시 사용자의 현재 위치에 근접한 위치 데이터를 갖는 선호되는 제 3 자 컨텐츠 객체에 큰 가중치를 둘 것이다. 순위 결과 또는 선택된 아이템의 리스트가 생성되는데, 상술한 바와 같이 개별 관련성 점수에 따라 결과가 순위결정/선택된다. 일예로, 상술한 바에 따라 빈칸(blank) 컨텍스트 검색을 수행하는 사용자는 친구들 중 3명이 근처 커피점에 있다는 것을 나타내는 컨텍스트 검색 결과를 제공받을 수 있다. 이 예에서, 사용자는 특별히 커피에 관심이 없을 수 있으나, 친구들과 커피점 모두에 대한 사용자의 근접도는 다음에 해야할 일에 대한 사용자의 결정에 영향을 미칠 수 있다.
도 8은 클라이언트 장치(110)가 소셜 네트워킹 시스템(130)의 사용자에게 검색 결과의 순위 리스트를 디스플레이하는 방법을 도시하는 일련의 샘플 스크린샷이며, 여기서 검색 결과는 사용자의 위치 및 소셜 정보를 기초로 제시된다. 도 8의 상부에 도시된 바와 같이, 텍스트 필드(805)가 검색 쿼리 입력을 수신하도록 구성된다. 쿼리 버튼(810)은 입력된 검색 쿼리의 검색을 실행한다. 검색 결과의 순위 리스트는 하나 이상의 포맷으로 디스플레이될 수 있다.
일실시예로, 검색 결과의 순위 리스트는 그래픽 포맷으로 디스플레이된다. 그래픽 포맷에서, 검색 결과는 핀(820)(또는 마커(markers))으로서 디스플레이되는데, 각각의 핀(820)의 중심에 검색 결과의 상대적인 순위의 문자 또는 숫자 표시(예컨대, "A", "B", "C" 또는 "1", "2", "3")가 제공된다. 핀(pins)은 관련성 점수를 구성하는데 사용되는 적어도 하나의 값과 관련된 그래픽 맵(815) 상에 오버레이된다. 일실시예로, 그래픽 맵(815)은 장소의 맵, 예컨대 도시의 일부일 수 있다. 이 실시예에서, 맵은 물리적 위치에 기반하기 때문에, 맵과 관련된 값은 위치값이다. 이후, 각각의 검색 결과 핀은 핀이 나타내는 검색 결과와 관련된 제 3 자 컨텐츠 객체에서 이용가능한 위치 정보에 따라 맵 상에 위치된다. 각각의 핀(815) 내부에 검색 결과의 순위 리스트에서의 검색 결과의 순서를 표시한다. 예컨대, 2번째로 높은 관련성 점수를 갖는 검색 결과는 실시예에 따라 "B" 또는 "2"로 표시될 수 있다. 일실시예로, 그래픽 맵(815)은 검색시에 결정되거나 늦게 결정되는 사용자의 위치의 중심에 위치된다.
검색 결과의 순위 리스트는 그래픽 맵(815)과 함께 또는 그래픽 맵 대신에 텍스트 포맷(825)으로 디스플레이된다. 텍스트 포맷에서, 검색 결과의 순위 리스트는 관련성 점수에 따라 순위화된 텍스트 형태로 나타난다. 일실시예로, 디스플레이된 검색 결과의 순위 리스트는 사용자의 소셜 그래프 정보, 예컨대 소정의 검색 결과에 관한 좋아요(likes)(830) 또는 그 검색 결과에 관한 친구로부터의 코멘트(835)를 포함하도록 부가될 수 있다. 추가로, 검색 결과가 장소의 위치 또는 해야할 일에 관한 것인 경우, 디스플레이된 검색 결과의 순위 리스트는 그 검색 결과의 위치에 현재 체크인 되어있는 친구들 또는 다른 소셜 네트워크 연결들(840)을 포함하도록 부가될 수 있다. 예컨대, "레스토랑"에 대한 검색 쿼리는 사용자가 현재 In-N-Out Burger 근처에서 식사 중인 2명의 친구를 가진다는 것을 나타낼 수 있다.
일부 실시예로, 순위화된 검색 결과의 디스플레이되는 텍스트 리스트는 사용자에게 디스플레이되는 순위화된 검색 결과의 리스트를 필터링하는 옵션을 제공한다(미도시). 이 실시예에 따라, 검색 결과는 위치값, 시간값, 연결값, 관심값, '좋아요'의 개수, 코멘트의 개수 또는 검색 결과와 관련된 위치에 또는 그 근처에 있는 친구들의 수를 기초로 필터링될 수 있다.
도 8a는 본 발명의 일실시예에 따라 커피에 대한 컨텍스트 검색 쿼리(805a)가 어떻게 디스플레이될 수 있는지에 관한 샘플 스크린샷이다. 커피 위치는 핀(820a)으로 디스플레이되며, 해당 관련 점수에 따라 순서대로 열거(825a)된다.
도 8b는 본 발명의 일실시예에 따라 특정 위치 인근으로의 친구들의 위치에 대한 컨텍스트 검색 쿼리(805b)가 어떻게 디스플레이될 수 있는지에 관한 샘플 스크린샷이다. 이런 예시적인 실시예에서, 핀(820b)과 텍스트(825b)가 친구들이 존재하는 위치와 관련된 관련성 점수에 따라 디스플레이되고 배열된다.
도 8c는 본 발명의 일실시예에 따라 영화 및 영화관 근처의 위치에 대한 컨텍스트 검색 쿼리(805c)가 어떻게 디스플레이될 수 있는지에 관한 샘플 스크린샷이다. 이런 예시적인 실시예에서, 핀(820c)과 텍스트(825c)가 사용자의 위치 근처로의 영화관 및 영화관에서 현재 상영중인 영화와 관련된 관련성 점수에 따라 디스플레이되고 배열된다. 비판적 리뷰나 영화의 별점 또한 디스플레이될 수 있다.
도 8d는 본 발명의 일실시예에 따라 레스토랑에 대한 컨텍스트 검색 쿼리(805d)가 어떻게 디스플레이될 수 있는지에 관한 샘플 스크린샷이다. 예컨대, 사용자가 특정 레스토랑에 대한 예약 가능성에 관심이 있다면, 이런 스크린샷은 소셜 네트워킹 시스템(130)이 사용자가 레스토랑을 예약할 수 있도록 하는 메커니즘을 제공하는 방법을 도시한다. 도 8d의 캘린더는 예약될 수 있는 시간 또는 슬롯을 포함하는 다수의 엔트리(860)를 포함한다. 일실시예로, 관련 레스토랑에 대한 제 3 자 컨텐츠 객체는 하루 단위로 이용가능한 예약 슬롯을 포함한다. 사용자는 장래의 날짜의 특정 시점에 테이블을 예약하도록 특정한 예약 시간(855)을 선택할 수 있다. 또한, 스크린샷은 이미 지나간 날들 동안 사용자의 친구들 중 누가 그리고 언제 그 레스토랑에 방문했는지에 관한 이력 정보(850)를 도시한다. 사용자는 레스토랑의 이용가능성 및 이력 정보에 대한 일(day), 주(week) 및 월(month) 보기(views)를 포함하는 여러 다른 타임라인(timelines) 선택들(845)을 전환할 수 있다.
도 8c 및 8d에 도시된 실시예들은 구체적으로 영화관 및 레스토랑에만 한정되는 것은 아니다. 도 8d에 디스플레이된 레이아웃, 예약 시스템 및 이력 정보는 또한 사용자가 미리 영화표를 구매하는 것을 도와주도록 실행될 수 있다. 역으로, 도 8c(및 유사하게는 8b과 8a)의 레이아웃은 검색 쿼리 필드(805)에서 사용자에 의해 표시되는 레스토랑의 위치 및 테이블 이용가능성을 디스플레이하는데 사용될 수 있다.
위치 및 소셜 관련 정보에 기반한 광고의 가격결정
소셜 네트워킹 시스템(130)에 의해 제공되는 임의의 알림은 광고로 간주될 수 있다. 이는 사용자의 소셜 정보 및 검색 쿼리에 기반하여 동적으로 생성되는 알림뿐만 아니라 소셜 네트워킹 시스템을 통한 사용자에 대한 알림으로 분배되도록 상인에 의해 구체적으로 생성되는 종래의 광고를 포함한다. 예컨대, 사용자의 친구들 중 2명이 커피점 근처에 있음을 나타내는 알림은, 그 알림의 목적이 주로 사용자에게 사용자의 친구의 위치를 알리려는 것이었다고 하더라도, 내재적으로(inherently) 그 커피점에 대한 광고이다. 따라서, 본 섹션에서는 논의의 목적상, "광고"란 용어 및 "알림"이란 용어가 교환될 수 있다. 광고는 카테고리, 위치 및 광고가 사용자에게 제공될 시간을 결정하기 위한 전달 타이밍 정보를 포함하는 제 3 자 컨텐츠 객체를 포함한다. 또한, 소셜 네트워킹 시스템(130)은 제 3 자 웹사이트로부터 미리 기록된(pre-written) 광고를 수신할 수 있다. 일부의 경우, 광고는 제휴한 상인의 상품 또는 서비스에 대한 거래(deals) 또는 쿠폰을 추가로 포함할 수 있다.
광고의 가격은 사용자에 대한 광고의 관련성을 기초로 결정된다. 일실시예로, 사용자에 대한 광고의 관련성 점수가 더 높을수록, 광고자는 소셜 네트워킹 시스템(130)에 더 많이 돈을 지불하여 사용자에게 광고를 디스플레이한다. 이런 경우, 광고의 비용은 광고자에 대한 사용자의 예상 가치에 관한 대략의 근사치로 오른다. 위와 같이, 관련성 점수는 위치값, 관심값, 연결값 및 시간값을 기초로 결정될 수 있다. 예컨대, 광고와 관련된 위치가 광고가 송신되는 시점의 사용자의 위치와 매우 가깝다면, 그로 인해 광고는 그 위치가 사용자의 현재 위치에서 더 멀리 떨어져 있는 경우보다 상대적으로 더 비싸게 된다. 일실시예로, 소셜 네트워킹 시스템이 광고에 대해 최대 푸시 레이트를 갖기 때문에, 일반적으로 낮은 관련성 및 비용의 광고가 더 높은 관련성 및 비용의 광고보다 덜 빈번히 제공될 것이다.
도 9는 소셜 네트워킹 시스템(130)의 사용자에게 제공되는 광고의 가격을 결정하기 위한 프로세스의 일실시예를 도시하는 상호작용 다이어그램이며, 여기서 광고는 사용자의 위치 및 소셜 광고를 기초로 사용자와 관련된다. 일부의 경우, 소셜 네트워킹 시스템(130)은 먼저 제 3 자 웹사이트로부터 미리 기록된 광고를 수신(905)한다. 광고는 카테고리, 위치 및 광고가 사용자에게 제공될 시간을 결정하기 위한 전달 타이밍 정보를 포함하는 제 3 자 컨텐츠 객체를 포함한다.
임의의 시점에, 소셜 네트워킹 시스템(130)은 클라이언트 장치(110)로부터 사용자 위치를 수신(910)할 수 있다. 현재시간, 사용자의 소셜 정보 및 수신된 사용자 위치를 기초로, 소셜 네트워킹 시스템(130)은 사용자에게 제공할 알림(또는 광고)을 결정(915)한다. 어느 알림을 제공할 것인지 결정하기 위해, 시스템(130)은 현재시간, 사용자의 위치 및 사용자의 소셜 정보를 사용하여 시스템(130)에 저장된 제 3 자 컨텐츠 객체의 관련성을 계산한다.
소셜 네트워킹 시스템(130)은 사용자에게 어느 알림이 제공되는지 통지받는다. 일실시예로, 시스템(130)은 이후 사용자에게 알림을 제공하기 위해 알림에 대해 제휴한 상인에게 부과될 가격을 결정(920)한다. 이에 반해, 다른 실시예로, 시스템(130)은 알림에 대해 제휴한 상인에게 부과될 비용을 결정하기 위해, 알림이 수신되었고, 상호작용되었으며, 사용자의 행동을 변경시켰다는 점을 소셜 네트워킹 시스템(130)에게 알리는 표시가 수신된 이후까지 대기할 수 있다. 이런 실시예에서는, 가격이 또한 사용자의 행동을 기초로 결정될 수 있다, 예컨대 알림을 수신한 후 사용자가 단지 상점으로 들어가게끔 했다는 표시를 수신함으로써 알림은 제 1 가격으로 비용이 정해질 수 있는 반면, 알림을 수신한 후 사용자가 구매를 했다는 표시를 수신함으로써 알림은 더 높은 제 2 가격으로 비용이 정해질 수 있다.
소셜 네트워킹 시스템(130)은 상기 제공된 메커니즘에 따라 사용자에게 알림을 제공(925)한다. 일부의 경우, 알림은 제휴한 상인의 상품 또는 서비스에 대한 거래 또는 쿠폰을 추가로 포함할 수 있다. 이후, 소셜 네트워킹 시스템(130)은 알림에 응답하여 사용자의 행동에 관한 알림 피드백(notification feedback)을 수신(930)한다. 알림 피드백은 하나 이상의 업데이트된 사용자 위치, 사용자가 제공된 쿠폰을 이용했는지 여부를 포함하는 제휴한 상인으로부터 사용자가 구매를 했다는 표시, 구매량 또는 소셜 네트워킹 시스템(130)과 제휴한 신용카드 또는 다른 지불 시스템으로 사용자가 구매를 위한 비용을 지불했다는 표시를 포함할 수 있다.
알림 피드백은 실시예에 따라 다수의 다른 목적에 사용될 수 있다. 상인이 알림에 의해 생성된 결과를 기초로 알림에 대한 비용을 지불하고 있다면, 소셜 네트워킹 시스템(130)은 알림 피드백을 사용하여 알림의 가격을 결정한다. 또한, 알림 피드백은 장래의 알림에 대한 가격을 조정(935)하는데 사용될 수 있다, 예컨대 광고가 효과적이지 않다면, 광고의 가격은 장차 감소할 것이다. 일실시예로, 알림 피드백은 관련성 점수를 조정하는데 사용될 수 있으며, 따라서 알림과 관련된 제 3 자 컨텐츠 객체에 대한 가격을 조정하는데 사용될 수 있다. 예컨대, 알림을 기초로 구매가 이루어졌다는 표시는 알림과 관련된 제 3 자 컨텐츠 객체의 관심값을 증가시키는데 사용될 수 있으며, 이로써 소셜 네트워킹 시스템(130)에 의해 실행되는 가격결정 구조에 따라 광고에 대한 가격을 증가 또는 감소시킬 수 있다. 마찬가지로, 높은 연결값을 기초로 관련되도록 알림이 결정된다면, 연결값은 구매의 결과로서 증가할 수 있다.
일부 실시예로, 소셜 네트워킹 시스템(130)은 또한 광고가 클라이언트 장치(110)로 푸시 중인지 여부 또는 사용자가 인근의 검색 결과에 대한 정보를 클라이언트 장치로 풀링(pulling)하는 컨텍스트 검색을 수행했는지 여부를 고려한다. 일실시예로, 컨텍스트 검색으로 검색 결과 중 하나에 관한 광고가 사용자에게 제공된다면, 광고의 가격은 증가한다. 예컨대, 사용자가 검색을 수행하지 않고 알림 제어장치(265)가 동일한 광고를 제공하고 있는 경우보다, 사용자가 바로 인근의 커피점에 대해 검색하는 경우 STARBUCKS에 대한 광고의 가격은 더 비쌀 수 있다. 또 다른 실시예에서는, 사용자에 대한 광고의 관련성 점수가 더 높을수록, 사용자에 대해 덜 손실이 큰 광고이다. 이런 경우, 광고자가 광고에 관심이 없는 사용자에게 광고를 송신하는 것이 방지된다.
일실시예로, 소셜 네트워킹 시스템(130)은 사용자에게 알림을 제공하기 위해 알림에 대해 제휴한 상인에게 부과될 가격을 결정한다. 또 다른 실시예로, 소셜 네트워킹 시스템은 알림에 대해 제휴한 상인에게 부과될 비용을 결정하기 위해, 알림이 수신되었고, 상호작용되었으며, 사용자의 행동을 변경시켰다는 점을 소셜 네트워킹 시스템(130)에게 알리는 표시가 수신된 이후까지 대기할 수 있다. 이런 실시예에서는, 가격이 또한 사용자의 행동을 기초로 결정될 수 있다, 예컨대 알림을 수신한 후 사용자가 단지 상점으로 들어가게끔 했다는 표시를 수신함으로써 알림은 제 1 가격으로 비용이 정해질 수 있는 반면, 알림을 수신한 후 사용자가 구매를 했다는 표시를 수신함으로써 알림은 더 높은 제 2 가격으로 비용이 정해질 수 있다.
소셜 네트워킹 시스템(130)은 알림에 응답하여 사용자의 행동에 관한 알림 피드백을 수신한다. 알림 피드백은 하나 이상의 업데이트된 사용자 위치, 사용자가 제공된 쿠폰을 이용했는지 여부를 포함하는 제휴한 상인으로부터 사용자가 구매를 했다는 표시, 구매량 또는 소셜 네트워킹 시스템(130)과 제휴한 신용카드 또는 다른 지불 시스템으로 사용자가 구매를 위한 비용을 지불했다는 표시를 포함할 수 있다.
알림 피드백은 실시예에 따라 다수의 다른 목적에 사용될 수 있다. 상인이 알림에 의해 생성된 결과를 기초로 알림에 대한 비용을 지불하고 있다면, 소셜 네트워킹 시스템은 알림 피드백을 사용하여 알림의 가격을 결정한다. 또한, 알림 피드백은 장래의 알림에 대한 가격을 조정하는데 사용될 수 있다. 예컨대, 광고가 효과적이지 않다면, 광고의 가격은 장차 감소할 것이다. 일실시예로, 알림 피드백은 관련성 점수를 조정하는데 사용될 수 있으며, 따라서 알림과 관련된 제 3 자 컨텐츠 객체에 대한 가격을 조정하는데 사용될 수 있다. 예컨대, 알림을 기초로 구매가 이루어졌다는 표시는 알림과 관련된 제 3 자 컨텐츠 객체의 관심값을 증가시키는데 사용될 수 있으며, 이로써 소셜 네트워킹 시스템(130)에 의해 실행되는 가격결정 구조에 따라 광고에 대한 가격을 증가 또는 감소시킬 수 있다. 마찬가지로, 높은 연결값을 기초로 관련되도록 알림이 결정된다면, 연결값은 구매의 결과로서 증가할 수 있다.
상기 생성의 동적 특성으로 인해, 상인이 알림에 지불하는 분배 및 양을 제어하는 방법을 상인에게 제공하는 것이 바람직하다. 도 10은 상인이 소셜 네트워킹 시스템의 사용자에게 제공되는 광고의 분배를 제어할 수 있도록 해주는 광고 대시보드의 일실시예를 도시하는 샘플 스크린샷이다. 광고 대시보드는 상인이 특정 제 3 자 컨텐츠 객체에 대하여 광고가 분배되도록 지불할 의향이 있는 가격을 입찰하여 그 광고가 분배되는 방식을 제어할 수 있도록 해준다.
광고 대시보드는 개별 제 3 자 컨텐츠 객체를 검색할 수 있도록 해주는 검색 툴(1040) 및 개별 제 3 자 컨텐츠 객체에 대한 입찰 구조를 도시하는 그래프(1005)를 포함한다. 일실시예로, 각각의 제 3 자 컨텐츠 객체는 하나 이상의 검색 쿼리 키워드와 관련될 수 있으므로, 각각의 제 3 자 컨텐츠 객체는 관련 상품 또는 서비스의 범위와 관련될 수 있다. 각각의 제 3 자 컨텐츠 객체의 그래프는 X축의 가상(hypothetical) 관련성 점수(1015)에 대하여, Y축에 광고 입찰 가격(1010)을 도시한다.
상인은 광고의 가격결정 및 분배에 대한 제어를 통해 상이한 양을 가할 수 있다. 광고 대시보드는 소셜 네트워킹 시스템(130)이 광고의 가격결정 및 분배를 처리하도록 허가해주는 자동 제어 라디오 버튼(1035)을 포함한다. 이런 라디오 버튼이 체크되면, 소셜 네트워킹 시스템(130)은 관련성 점수 또는 관련성 점수를 구성하는 임의의 성분값들을 사용하여, 소정의 제 3 자 컨텐츠 객체에 대한 상인의 입찰 가격을 자동으로 결정한다. 또한, 입찰 가격은 각각의 특정 제 3 자 컨텐츠 객체에 대해 광고하도록 시도하는 상인의 수, 소정의 시간(time frame) 내에서 또는 소정의 지리적 영역 내에서 사용자에게 푸시되도록 시도되는 알림의 수에 따라 변할 수 있다.
또한, 광고 대시보드는 상인이 수동으로 광고의 분배를 제어하도록 해주는 수동 제어 라디오 버튼(1030)을 포함한다. 상인이 광고의 입찰 가격을 수동으로 제어고 싶다는 표시를 소셜 네트워킹 시스템(130)이 수신한다면, 그래프(1005)는 상인이 특정 비용(1020) 및 최대 관련성 점수 입찰(1045)에서 입찰 가격(1025)을 선택할 수 있도록 디스플레이된다.
상술한 바와 같이, 소셜 네트워킹 시스템(130)은 사용자에 대한 광고의 관련성을 기초로 사용자에게 제공되는 광고의 가격을 결정한다. 가격 및 관련성 점수의 범위에 걸쳐 사용자에게 제공된 모든 관련 광고를 종합함으로써, 시스템(130)은 관련성 점수의 함수로서 광고의 가격을 그릴 수 있다. 관련성 점수의 함수로서 광고의 가격은 곡선(1005)으로 광고 대시보드에 그려진다. 이 곡선은 가상 관련성 점수 및 가상의 사용자에 대한 광고의 가격을 나타낸다. 따라서, 광고를 입찰하고자 하는 상인은 관련성 점수가 변함에 따라 광고의 비용이 얼마일지에 대한 감을 얻을 수 있다.
광고 입찰 가격(1025)은 최대 관련성 점수 입찰(1045)까지 제 3 자 컨텐츠 객체에 대해 검색된 것과 관련된 광고를 제공하기 위해 상인에 의해 지불되는 가격을 나타낸다. 최대 관련성 점수 입찰(1045)은 광고 입찰 가격이 곡선(1005)과 교차하는 지점이다. 도 10의 예를 사용하면, 알림이 0.7 이하의 관련성 점수를 갖는 사용자에게 송신되고, 한 상인이 동일한 제 3 자 컨텐츠 객체에 입찰하는 다른 상인들에 비해 가장 높은 광고 입찰 가격(1020)을 제출한다면, 그 상인의 광고가 광고의 관련성을 기초로 사용자에게 푸시될 것이다. 소셜 네트워킹 시스템은 사용자에게 푸시될 수 있는 알림의 최대 수를 제한하며, 알림이 높은 관련성 점수를 가진다면 푸시될 가능성이 더 높기 때문에, 더 관련이 있는 광고가 더 비싸다. 게다가, 상인이 소정의 제 3 자 컨텐츠 객체에 관한 광고에 더 많이 입찰하려고 할수록, 그 광고의 알림이 푸시될 가능성이 더 높다. 다른 실시예로, 다수의 상인이 소정의 관련성 점수를 갖는 사용자에게 푸시되도록 광고에 입찰한다면, 어느 상인의 광고를 푸시할 것인지를 결정하기 위해 다른 요인들이 고려될 수 있다. 예컨대, 사용자에 대한 과거 알림의 빈도 또는 가령 위치값과 같은 더 큰 가중 값들을 기초로 그 상인이 선택될 수 있다.
도 10의 예에서, 상인은 1천 광고당 비용(CPM)이 10센트인 입찰 가격을 선택했으며, 이 가격은 0.7의 관련성 점수에 해당한다. 그 결과, 상기 상인은 사용자들에게 송신되는 알림에 지불하도록 충분히 높은 가격에 입찰했으며, 여기서 사용자들에 대한 알림의 관련성은 0.7 이하의 관련성 점수를 가질 것이다. 상기 상인이 (예컨대 0.7보다 큰 관련성 점수에 해당하는) 알림과 더 관련이 있을 사용자에게 알림을 제공하기 위해서는 더 높은 가격에 입찰해야 할 것이다.
일실시예로, 광고 대시보드는 관련성 카테고리를 그 성분값 점수들로 나눌 수 있으므로, 상인들은 관련성 점수가 기초로 하는 개별 값들에 기반하여 광고의 가격에 입찰할 수 있다. 상기 다른 값들을 기초로 입찰 가격을 지정하기 위해, 많은 상인들은 하나 이상의 시장 분할(market segmentations)을 정의한다. 시장 분할은 하나 이상의 분할 기준을 기초로 한 사용자들의 사용자 그룹들 사이의 구분(division)이다. 분할 기준은, 예컨대 나이, 성별, 위치, 하루 중 시간, 선호도, 예상 예산, 충성도(loyalty), 제휴(affiliations) 및 이들의 임의의 조합에 의한 관련성을 포함할 수 있다. 이런 실시예에서, 상인들은 제공된 시장 분할 기준에 따라 광고에 입찰할 수 있다. 그 결과, 상인들은 그들이 어느 광고에 입찰할 것인지 신중히 정의할 수 있다.
요약
본 발명의 실시예들의 상술한 설명은 예시의 목적으로 제시되었다; 이는 하나도 빠뜨리는 것 없이 철저하려고 하거나 정확히 개시된 형태로 발명을 제한하려는 의도는 아니다. 당업자는 상술한 명세서의 관점에서 많은 변형과 변경이 가능함을 이해할 수 있다.
본 명세서의 일부분은 정보에 관한 동작들의 알고리즘과 기호 표시의 관점에서 본 발명의 실시예를 기술한다. 이들 알고리즘의 설명 및 표시는 발명의 요지를 다른 당업자에게 효율적으로 전달하기 위해 데이터 프로세스 기술분야에서 당업자에 의해 널리 사용된다. 기능적, 계산적 또는 논리적으로 기술되는 이들 동작은 컴퓨터 프로그램 또는 균등한 전기 회로, 마이크로코드 등에 의해 구현됨을 이해해야 한다. 게다가, 일반성을 잃지 않고, 동작들의 배치를 모듈들로 나타내는 것이 또한 간편하다는 점은 때때로 입증되었다. 기술된 동작들 및 그와 관련된 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들의 임의의 조합으로 이용될 수 있다.
본 명세서에 기술된 임의의 단계들, 동작들 또는 프로세스들은 하나 이상의 하드웨어 모듈들 또는 소프트웨어 모듈들 단독으로, 또는 다른 장치들과의 조합으로 수행되거나 구현될 수 있다. 일실시예로, 소프트웨어 모듈은 컴퓨터 프로그램 코드를 포함하는 비일시적인 컴퓨터-판독가능한 매체를 구비하는 컴퓨터 프로그램 제품으로 구현되며, 이런 컴퓨터 프로그램 코드는 기술된 임의의 또는 모든 단계들, 동작들 또는 프로세스들을 수행하기 위한 컴퓨터 프로세서에 의해 실행될 수 있다.
또한, 본 발명의 실시예들은 본 명세서의 동작들을 수행하기 위한 장치에 관한 것일 수 있다. 이런 장치는 필요한 목적을 위해 특히 구성될 수 있고/있거나, 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성되는 범용 컴퓨팅 디바이스를 포함할 수 있다. 이런 컴퓨터 프로그램은 컴퓨터 시스템 버스로 연결될 수 있는, 비일시적 및 유형의(tangible) 컴퓨터 판독가능한 저장 매체 또는 전자식 명령어를 저장하는데 적합한 임의의 종류의 매체에 저장될 수 있다. 게다가, 명세서에 언급되는 임의의 컴퓨팅 시스템은 단일 프로세서를 포함할 수 있거나, 컴퓨팅 능력을 증가시키기 위해 다중 프로세서 설계를 이용하는 아키텍처일 수 있다.
또한, 본 발명의 실시예들은 본 명세서에 기술된 컴퓨팅 프로세스로 제조된 제품에 관한 것일 수 있다. 이런 제품은 컴퓨팅 프로세스의 결과로 생성된 정보를 포함할 수 있는데, 여기서 정보는 비일시적 및 유형의 컴퓨터 판독가능한 저장 매체에 저장되며, 본 명세서에 기술된 컴퓨터 프로그램 제품 또는 다른 데이터 조합의 임의의 실시예를 포함할 수 있다.
마지막으로, 본 명세서에서 사용된 언어는 원칙적으로 읽기 쉬운 지침상의 목적으로 선택되었으며, 발명의 요지를 상세히 기술하거나 제한하려고 선택된 것은 아닐 수 있다. 따라서, 본 발명의 기술범위는 본 명세서에 의해서가 아니라 본 명세서를 기초로 출원된 임의의 청구범위들에 의해 한정되는 것으로 의도된다. 그래서, 본 발명의 실시예들에 관한 설명은 하기의 청구범위에 제시된 본 발명의 기술범위의 예시가 되나, 이에 제한되지 않아야 한다.

Claims (11)

  1. 소셜 네트워킹 시스템의 사용자에 대한 소셜 정보를 관리하는 단계;
    사용자와 관련된 사용자 장치의 위치를 수신하는 단계;
    위치, 카테고리 및 전달시간 범위를 포함하는 제3자 컨텐츠 객체와 알림(notification)을 연관시키는 단계;
    제3자 컨텐츠 객체와 관련된 사용자의 복수의 연결의 수를 기초로, 제3자 컨텐츠 객체에 대한 연결값을 결정하는 단계;
    컴퓨터 프로세서를 사용하여, 사용자에 관한 정보와 제3자 컨텐츠 객체에 관한 정보의 매칭 및 연결값을 부분적으로 기초로, 제3자 컨텐츠 객체에 대한 관련성 점수(relevance score)를 결정하는 단계;
    관련성 점수를 기초로, 알림에 대한 가격을 결정하는 단계; 및
    알림 제어장치에 알림을 제공하는 단계를 포함하며,
    소셜 정보는 소셜 네트워킹 시스템의 사용자와 다른 사용자들 사이의 복수의 연결을 포함하고, 상기 복수의 연결은 제3자 컨텐츠 객체와 연결되며,
    전달시간 범위는 제1 시간값 및 제2 시간값에 의해 경계 지어진 시간의 값들의 범위를 포함하고,
    관련성 점수는 알림의 수신에 응답하여 사용자가 제3자 컨텐츠 객체에 관한 행위를 수행할 가능성과 관련되며,
    사용자에 관한 정보는 사용자 위치 및 소셜 정보를 포함하고,
    제3자 컨텐츠 객체에 관한 정보는 제3자 컨텐츠 객체에 대한 위치, 카테고리 및 전달시간 범위를 포함하며,
    소셜 정보는 소셜 네트워킹 시스템의 사용자와 다른 사용자들 사이의 복수의 연결에 관한 정보를 포함하고,
    상기 소셜 정보를 관리하는 단계는:
    하나 이상의 카테고리에 따라 사용자에 대한 친밀성 정보(affinity information)를 관리하는 단계를 더 포함하며,
    상기 관련성 점수를 결정하는 단계는:
    제3자 컨텐츠 객체에 할당된 위치와 사용자의 위치 사이의 근접도를 기초로, 제3자 컨텐츠 객체에 대한 위치값을 결정하는 단계;
    제3자 컨텐츠 객체에 할당된 카테고리가 사용자에 대한 친밀성 정보와 관련된 하나 이상의 카테고리에 포함되는지 여부를 기초로, 제3자 컨텐츠 객체에 대한 관심값을 결정하는 단계;
    현재시간이 제3자 컨텐츠 객체에 할당된 전달시간 범위 내에 있는지 여부를 기초로, 제3자 컨텐츠 객체에 대한 시간값을 결정하는 단계; 및
    위치값, 관심값, 연결값 및 시간값을 결합하여, 관련성 점수를 결정하는 단계를 더 포함하는 방법.
  2. 제 1 항에 있어서,
    알림과 관련된 사용자에 의한 행위의 표시를 수신하는 단계; 및
    상기 행위를 기초로, 알림의 가격을 조정하는 단계를 더 포함하는 방법.
  3. 소셜 네트워킹 시스템의 사용자에 대한 소셜 정보를 관리하는 단계;
    사용자와 관련된 사용자 장치의 위치를 수신하는 단계;
    컴퓨터 프로세서를 사용하여, 위치, 카테고리 및 전달시간 범위를 포함하는 제3자 컨텐츠 객체와 알림을 연관시키는 단계;
    제3자 컨텐츠 객체와 관련된 사용자의 복수의 연결의 수를 기초로, 제3자 컨텐츠 객체에 대한 연결값을 결정하는 단계;
    컴퓨터 프로세서를 사용하여, 사용자에 관한 정보와 제3자 컨텐츠 객체에 관한 정보의 매칭 및 연결값을 부분적으로 기초로, 제3자 컨텐츠 객체에 대한 관련성 점수를 결정하는 단계;
    사용자에 의한 상호작용의 가능성이 더 높음에 따라 선택되는 하나 이상의 제3자 컨텐츠 객체로 구성되는 알림을 알림 제어장치에 제공하는 단계;
    알림과 관련된 사용자에 의한 행위의 표시를 수신하는 단계; 및
    상기 행위 및 관련성 점수를 기초로, 알림의 가격을 결정하는 단계를 포함하며,
    소셜 정보는 소셜 네트워킹 시스템의 사용자와 다른 사용자들 사이의 복수의 연결을 포함하고, 상기 복수의 연결은 제3자 컨텐츠 객체와 연결되며,
    전달시간 범위는 제1 시간값 및 제2 시간값에 의해 경계 지어진 시간의 값들의 범위를 포함하고,
    관련성 점수는 알림의 수신에 응답하여 사용자가 제3자 컨텐츠 객체에 관한 행위를 수행할 가능성과 관련되며,
    사용자에 관한 정보는 사용자 위치 및 소셜 정보를 포함하고,
    제3자 컨텐츠 객체에 관한 정보는 제3자 컨텐츠 객체에 대한 위치, 카테고리 및 전달시간 범위를 포함하며,
    소셜 정보는 소셜 네트워킹 시스템의 사용자와 다른 사용자들 사이의 복수의 연결에 관한 정보를 포함하고,
    상기 소셜 정보를 관리하는 단계는:
    하나 이상의 카테고리에 따라 사용자에 대한 친밀성 정보를 관리하는 단계를 더 포함하며,
    상기 관련성 점수를 결정하는 단계는:
    제3자 컨텐츠 객체에 할당된 위치와 사용자의 위치 사이의 근접도를 기초로, 제3자 컨텐츠 객체에 대한 위치값을 결정하는 단계;
    제3자 컨텐츠 객체에 할당된 카테고리가 사용자에 대한 친밀성 정보와 관련된 하나 이상의 카테고리에 포함되는지 여부를 기초로, 제3자 컨텐츠 객체에 대한 관심값을 결정하는 단계;
    현재시간이 제3자 컨텐츠 객체에 할당된 전달시간 범위 내에 있는지 여부를 기초로, 제3자 컨텐츠 객체에 대한 시간값을 결정하는 단계; 및
    위치값, 관심값, 연결값 및 시간값을 결합하여, 관련성 점수를 결정하는 단계를 더 포함하는 방법.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
KR1020137018748A 2010-12-22 2011-11-18 위치 및 소셜 정보를 기초로 사용자에게 제공되는 관련 알림의 가격결정 방법 KR101831777B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/976,755 US20120166284A1 (en) 2010-12-22 2010-12-22 Pricing Relevant Notifications Provided to a User Based on Location and Social Information
US12/976,755 2010-12-22
PCT/US2011/061419 WO2012087470A1 (en) 2010-12-22 2011-11-18 Pricing relevant notifications provided to a user based on location and social information

Publications (2)

Publication Number Publication Date
KR20140016252A KR20140016252A (ko) 2014-02-07
KR101831777B1 true KR101831777B1 (ko) 2018-02-23

Family

ID=46314332

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137018748A KR101831777B1 (ko) 2010-12-22 2011-11-18 위치 및 소셜 정보를 기초로 사용자에게 제공되는 관련 알림의 가격결정 방법

Country Status (6)

Country Link
US (1) US20120166284A1 (ko)
JP (1) JP5912132B2 (ko)
KR (1) KR101831777B1 (ko)
AU (1) AU2011345267B2 (ko)
CA (1) CA2821236A1 (ko)
WO (1) WO2012087470A1 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9338215B2 (en) 2011-03-14 2016-05-10 Slangwho, Inc. Search engine
US8838688B2 (en) * 2011-05-31 2014-09-16 International Business Machines Corporation Inferring user interests using social network correlation and attribute correlation
US9449323B2 (en) 2011-07-22 2016-09-20 At&T Intellectual Property I, Lp Method and apparatus for monitoring usage of items
US20130041759A1 (en) * 2011-08-11 2013-02-14 At&T Intellectual Property I, Lp Method and apparatus for promoting products or services
US10402862B2 (en) 2011-08-11 2019-09-03 At&T Intellectual Property I, L.P. Method and apparatus for selecting an advertiser
US9462004B1 (en) 2011-11-04 2016-10-04 Google Inc. Automatic group assignment of users in a social network
US20130151345A1 (en) * 2011-12-08 2013-06-13 Yahoo! Inc. Social reputation ads
US8751500B2 (en) 2012-06-26 2014-06-10 Google Inc. Notification classification and display
US20140025733A1 (en) * 2012-07-17 2014-01-23 Sap Ag Social Network Architecture
US20140052534A1 (en) * 2012-08-16 2014-02-20 Shaheen A. Gandhi Electronic Advertising Targeting Multiple Individuals
US9626692B2 (en) 2012-10-08 2017-04-18 Facebook, Inc. On-line advertising with social pay
US8719280B1 (en) 2012-10-16 2014-05-06 Google Inc. Person-based information aggregation
WO2014070222A1 (en) * 2012-11-02 2014-05-08 Ge Intelligent Platforms, Inc. Apparatus and method for intelligent querying and filtering
US9282587B2 (en) 2012-11-16 2016-03-08 Google Technology Holdings, LLC Method for managing notifications in a communication device
US20140164137A1 (en) * 2012-12-07 2014-06-12 Facebook, Inc. Pricing system for on-line advertisements
US20140195303A1 (en) * 2013-01-07 2014-07-10 Y13 Ltd Method of automated group identification based on social and behavioral information
US9223826B2 (en) * 2013-02-25 2015-12-29 Facebook, Inc. Pushing suggested search queries to mobile devices
US9721218B2 (en) 2013-10-21 2017-08-01 Sap Se Determining the user-specific relevance of applications
US9858585B2 (en) * 2014-11-11 2018-01-02 International Business Machines Corporation Enhancing data cubes
SG10201500683TA (en) * 2015-01-28 2016-08-30 Crayon Data Pte Ltd Method and system for automatically recommending business prospects
US10861056B2 (en) 2015-06-17 2020-12-08 Facebook, Inc. Placing locations in a virtual world
US10339592B2 (en) 2015-06-17 2019-07-02 Facebook, Inc. Configuring a virtual store based on information associated with a user by an online system
US9786125B2 (en) 2015-06-17 2017-10-10 Facebook, Inc. Determining appearances of objects in a virtual world based on sponsorship of object appearances
WO2016203501A1 (en) * 2015-06-17 2016-12-22 TISCALI S.p.A. A method to rank documents by a computer, using additive ensembles of regression trees and cache optimisation, and search engine using such a method
US10142445B2 (en) * 2015-11-12 2018-11-27 International Business Machines Corporation Creation, publication and display of content on a social media network
EP3414724A4 (en) * 2016-02-09 2019-10-16 HRL Laboratories, LLC INCREASE THE SELECTION PLANTS WITH PERSONALIZED INCENTIVES USING SOCIAL MEDIA DATA
JP2020154647A (ja) * 2019-03-19 2020-09-24 富士ゼロックス株式会社 情報処理装置、情報処理プログラム
US10880698B1 (en) * 2019-09-13 2020-12-29 Citrix Systems, Inc Platform for handling notifications in a smart device
TWI800732B (zh) * 2020-04-08 2023-05-01 開曼群島商粉迷科技股份有限公司 適地性個人化內容提供方法與系統
US11379875B2 (en) 2020-04-30 2022-07-05 At&T Intellectual Property I, L.P. Systems and methods for time-based advertising

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003016344A (ja) * 2001-06-29 2003-01-17 Nec Corp 移動局に対する広告の広告料の決定方法並びに管理方法、装置、システム及びプログラム
JP2010537323A (ja) * 2007-08-20 2010-12-02 フェイスブック,インク. ソーシャルネットワークにおける広告のターゲット設定

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6816857B1 (en) * 1999-11-01 2004-11-09 Applied Semantics, Inc. Meaning-based advertising and document relevance determination
US20090112715A1 (en) * 2007-10-31 2009-04-30 Ryan Steelberg Engine, system and method for generation of brand affinity content
US8321278B2 (en) * 2003-09-30 2012-11-27 Google Inc. Targeted advertisements based on user profiles and page profile
US8768766B2 (en) * 2005-03-07 2014-07-01 Turn Inc. Enhanced online advertising system
US8560385B2 (en) * 2005-09-02 2013-10-15 Bees & Pollen Ltd. Advertising and incentives over a social network
US7660581B2 (en) * 2005-09-14 2010-02-09 Jumptap, Inc. Managing sponsored content based on usage history
WO2007056451A2 (en) * 2005-11-07 2007-05-18 Scanscout, Inc. Techniques for rendering advertisments with rich media
US8036937B2 (en) * 2005-12-21 2011-10-11 Ebay Inc. Computer-implemented method and system for enabling the automated selection of keywords for rapid keyword portfolio expansion
US10803468B2 (en) * 2006-04-18 2020-10-13 At&T Intellectual Property I, L.P. Method and apparatus for selecting advertising
US20080189169A1 (en) * 2007-02-01 2008-08-07 Enliven Marketing Technologies Corporation System and method for implementing advertising in an online social network
US20080294524A1 (en) * 2007-03-12 2008-11-27 Google Inc. Site-Targeted Advertising
US20090222333A1 (en) * 2008-02-28 2009-09-03 Microsoft Corporation Community based targeted advertising
US20100076850A1 (en) * 2008-09-22 2010-03-25 Rajesh Parekh Targeting Ads by Effectively Combining Behavioral Targeting and Social Networking
TW201020951A (en) * 2008-11-27 2010-06-01 Inst Information Industry AD advertising apparatus and methods, and storage media
US20100185507A1 (en) * 2009-01-20 2010-07-22 Lance Tokuda Method and system for generating an advertisement with customized content
US20100217525A1 (en) * 2009-02-25 2010-08-26 King Simon P System and Method for Delivering Sponsored Landmark and Location Labels
US20100241944A1 (en) * 2009-03-19 2010-09-23 Yahoo! Inc. Method and apparatus for associating advertising content with computer enabled maps
US20100257023A1 (en) * 2009-04-07 2010-10-07 Facebook, Inc. Leveraging Information in a Social Network for Inferential Targeting of Advertisements
WO2010126412A1 (en) * 2009-04-28 2010-11-04 Telefonaktiebolaget Lm Ericsson (Publ) Predicting presence of a mobile user equipment
US20110066506A1 (en) * 2009-09-11 2011-03-17 Social App Holdings, LLC Social networking monetization system and method
US8554627B2 (en) * 2010-11-11 2013-10-08 Teaneck Enterprises, Llc User generated photo ads used as status updates
US20130035853A1 (en) * 2011-08-03 2013-02-07 Google Inc. Prominence-Based Generation and Rendering of Map Features

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003016344A (ja) * 2001-06-29 2003-01-17 Nec Corp 移動局に対する広告の広告料の決定方法並びに管理方法、装置、システム及びプログラム
JP2010537323A (ja) * 2007-08-20 2010-12-02 フェイスブック,インク. ソーシャルネットワークにおける広告のターゲット設定

Also Published As

Publication number Publication date
KR20140016252A (ko) 2014-02-07
AU2011345267A1 (en) 2013-07-04
WO2012087470A1 (en) 2012-06-28
JP2014505292A (ja) 2014-02-27
JP5912132B2 (ja) 2016-04-27
CA2821236A1 (en) 2012-06-28
AU2011345267B2 (en) 2016-09-22
US20120166284A1 (en) 2012-06-28

Similar Documents

Publication Publication Date Title
KR101854797B1 (ko) 위치 및 소셜 정보를 기초로 사용자에 대한 관련 알림을 제공하는 방법
KR101831777B1 (ko) 위치 및 소셜 정보를 기초로 사용자에게 제공되는 관련 알림의 가격결정 방법
US10095988B2 (en) Providing context relevant search for a user based on location and social information
US11100527B2 (en) Verification of redemption of an electronic offer
US10489409B2 (en) Providing relevant notification based on common interests between friends in a social networking system
US9385986B2 (en) Timing for providing relevant notifications for a user based on user interaction with notifications
US10776826B2 (en) System for providing a service to venues where people perform transactions
CN109379416B (zh) 用于交换信息的方法、计算机可读非暂时性存储介质和系统
JP2019164814A (ja) オンライン・ソーシャル・ネットワーク上でのビーコンを使用したユーザ通知の生成
WO2013019376A1 (en) Displaying social opportunities by location on a map

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