KR101473076B1 - 웹 탐색들에 대한 소셜 디멘젼의 선택적 추가 - Google Patents

웹 탐색들에 대한 소셜 디멘젼의 선택적 추가 Download PDF

Info

Publication number
KR101473076B1
KR101473076B1 KR1020127030481A KR20127030481A KR101473076B1 KR 101473076 B1 KR101473076 B1 KR 101473076B1 KR 1020127030481 A KR1020127030481 A KR 1020127030481A KR 20127030481 A KR20127030481 A KR 20127030481A KR 101473076 B1 KR101473076 B1 KR 101473076B1
Authority
KR
South Korea
Prior art keywords
trust
search
query
search results
results
Prior art date
Application number
KR1020127030481A
Other languages
English (en)
Other versions
KR20130028108A (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
Priority claimed from US12/764,818 external-priority patent/US8880520B2/en
Application filed by 야후! 인크. filed Critical 야후! 인크.
Publication of KR20130028108A publication Critical patent/KR20130028108A/ko
Application granted granted Critical
Publication of KR101473076B1 publication Critical patent/KR101473076B1/ko

Links

Images

Abstract

실시예들은, 비-트러스트 탐색 결과들과는 구별하여 디스플레이되는 트러스트 탐색 결과들을 선택적으로 디스플레이하기 위해 탐색 질의에 대한 질의-분류를 사용함으로써 탐색 결과들의 디스플레이를 관리하는 것에 관한 것이다. 탐색 질의는 질의-클래스로 분류된다. 탐색은 이후 비-트러스트 소스들 상에서 수행되고 트러스트 데이터 소스들 상에서 선택적으로 수행되어, 비-트러스트 및 트러스트 탐색 결과들을 각각 획득한다. 트러스트 탐색 결과들은 예를 들어, 명시적 및 묵시적 관계들을 포함하는 탐색 기준의 다양한 카테고리들에 기초하여 랭크 순위화된다. 질의-클래스에 기초하여, 상이한 수의 트러스트 탐색 결과들이 디스플레이될 수 있다. 추가로, 트러스트 탐색 결과들이 디스플레이될 수 있는 위치가 질의-클래스에 기초할 수 있다. 또한, 비-트러스트 탐색 결과들은 탐색 결과들의 소스 타입을 용이하게 구별하기 위해 트러스트 탐색 결과들과는 구별하여 또는 별개로 디스플레이된다.

Description

웹 탐색들에 대한 소셜 디멘젼의 선택적 추가{SELECTIVELY ADDING SOCIAL DIMENSION TO WEB SEARCHES}
이 출원은 그 전체 내용이 참조로 여기에 포함되는, 2010년 4월 21일에 출원된 미국 특허 출원 일련 제12/764,818호의 이익을 청구한다.
본 발명은 일반적으로 네트워크 상에서의 탐색 질의들에 관한 것이며, 더 구체적으로는, 배타적이지 않게, 사용자의 소셜 네트워크에 기초한 탐색 결과를 선택적으로 정제하는 것에 관한 것이며, 여기서 소셜 네트워크 또는 트러스트 탐색 결과들은 디스플레이 내의 위치 및 디스플레이할 트러스트 탐색 결과들의 질의-클래스 및 질의-클래스의 수에 기초하여, 다른 비-트러스트 탐색 결과들과는 구별하여 선택적으로 디스플레이될 수 있다.
우리의 일상 생활에 영향을 주는 인터넷에서 엄청난 변화가 발생하였다. 예를 들어, 오늘날 사회에서, 모바일 컴퓨팅 디바이스들은 점점 더 일반화되고 있다. 개인용 디지털 정보 단말(PDA)들, 셀룰러 폰들 등과 같은 많은 모바일 컴퓨팅 디바이스들은 음성 메시지들, 이메일들, 텍스트 메시지들 등을 전달하기 위해서 뿐만 아니라 인터넷 상에서 정보를 탐색하기 위해 사용될 수 있다. 버스, 기차, 또는 심지어 배 안에서, 상품, 레스토랑, 음악, 비즈니스 등을 탐색하기 위해 자신의 모바일 디바이스를 사용중인 사람들을 보는 것은 특이하지 않다.
그러나, 사용자 관련 정보에 대한 탐색 질의를 수행하는 것은 여전히 번거롭다. 종종, 사용자는 관련 탐색 결과들을 획득하기 위해 몇몇 탐색 질의들을 수행해야 할 수도 있다. 관련되지 않은 탐색 결과들은, 사용자가 이들이 탐색할 때 찾을 가능성이 더 적으며, 결과적으로는 사용자로부터 이익을 얻으려는(prosper) 상인들, 또는 다른 비즈니스들에 대한 유실된 기회들로 번역될 수 있음을 의미한다.
일부 탐색 엔진들은 다양한 소셜 네트워크들로부터 획득된 정보에 기초하여 질의들을 수정함으로써 탐색 질의를 개선하려고 시도한다. 예를 들어, 탐색 질의를 수정하기 위해 사용되는 일부 정보는 탐색자의 주소록, 친구 목록 등에 기초하여 획득될 수 있다. 그러나, 탐색 질의를 수정하는 것은 실제로 사용자가 의도한 것이 아닌 어떤 것으로 사용자의 의도된 탐색을 수정할 수 있다. 따라서, 결과들은, 탐색자가 주어진 탐색에 대해 관심이 있을 수 있는 대상에 대한 '온-포인트(on-point)'가 아니므로 여전히 무관할 수 있다. 따라서, 많은 비즈니스들이 여전히 사용자에게 더욱 관련된 탐색 결과들을 만들기 위한 새로운 방식들을 식별하려고 시도한다. 따라서, 이러한 고려사항 및 그 외의 것에 대하여 본 발명이 이루어졌다.
본 발명의 비-제한적이고 불완전한 실시예들이 후속하는 도면들을 참조하여 기술된다. 도면들에서, 유사한 참조 번호들은 달리 특정되지 않는 한 다양한 도면들 전반에 걸쳐 동일한 부분들을 참조한다.
본 발명의 더 양호한 이해를 위해, 첨부 도면들과 관련하여 읽을 후속하는 상세한 설명을 참조할 것이다.
도 1은 본 발명이 구현될 수 있는 환경의 일 실시예의 시스템 도면이다.
도 2는 본 발명을 구현하는 시스템에 포함될 수 있는 클라이언트 디바이스의 일 실시예를 도시하는 도면이다.
도 3은 본 발명을 구현하는 시스템에 포함될 수 있는 네트워크 디바이스의 일 실시예를 도시하는 도면이다.
도 4는 질의-클래스에 기초하여 비-트러스트 탐색 결과들과는 구별하여 디스플레이되는 트러스트 탐색 결과들을 선택적으로 포함하는 탐색 결과들을 수행 및 디스플레이하는 개괄적인 프로세스의 일 실시예를 일반적으로 도시하는 논리 흐름도를 예시하는 도면이다.
도 5는 사용자에 대한 소셜 네트워크 사이트들로부터 트러스트 컨텐츠를 관리하는 개괄적인 프로세스의 일 실시예를 일반적으로 도시하는 논리 흐름도를 예시하는 도면이다.
도 6은 비-트러스트 탐색 질의 결과들과는 다른 탐색 질의로부터 트러스트 탐색 결과들을 선택적으로 디스플레이하기 위한 연관된 수들 및 위치들 및 질의-클래스들을 결정하기 위한 개괄적인 프로세스의 일 실시예를 일반적으로 도시하는 논리 흐름도를 예시하는 도면이다.
도 7은 비-트러스트 탐색 질의 결과들과는 다른 트러스트 탐색 결과들을 도시하는 탐색 질의 결과들의 스크린 디스플레이의 하나의 비-제한적, 불완전한 예를 예시한다.
본 발명은 이제 여기서 그 일부를 형성하는 첨부 도면들과 관련하여 하기에 더 완전히 기술될 것이며, 도면들은 예시로서, 본 발명이 구현될 수 있는 특정 실시예들을 도시한다. 그러나, 본 발명은 많은 상이한 형태들로 구현될 수 있고, 여기서 설명되는 실시예들로 제한되는 것으로서 해석되지 않아야 하며, 오히려, 이들 실시예들은 이러한 개시내용이 완전하고 완벽하도록, 그리고 당업자에게 본 발명의 범위를 완전히 전달하도록 제공된다. 특히, 본 발명은 방법들 또는 디바이스들로서 구현될 수 있다. 따라서, 본 발명은 완전한 하드웨어 실시예, 완전한 소프트웨어 실시예 또는 소프트웨어 및 하드웨어 양상들을 결합하는 실시예의 형태를 취할 수 있다. 따라서, 후속하는 상세한 설명은 제한적 의미로 취해지지 않아야 한다.
명세서 및 청구항들 전반에 걸쳐, 후속하는 용어들은, 상황이 달리 명료하게 지시하지 않는 한, 여기서 명시적으로 연관되는 의미들을 취한다. 여기서 사용되는 바와 같은 구문 "일 실시예에서"는 비록 그렇다 할지라도 반드시 동일한 실시예를 참조하지는 않는다. 또한, 여기서 사용되는 바와 같은 구문 "또다른 실시예에서"는 비록 그렇다 할지라도 반드시 상이한 실시예를 참조하지는 않는다. 따라서, 하기에 설명되는 바와 같이, 본 발명의 다양한 실시예들은, 본 발명의 범위 또는 사상으로부터 벗어나지 않고 용이하게 결합될 수 있다.
추가로, 여기서 사용되는 바와 같이, 용어 "또는"은 포괄적 "또는" 연산자이며, 상황이 달리 명백하게 지시하지 않는 한 용어 "및/또는"과 등가이다. 용어 "~에 기초하는"은 배타적이지 않으며, 상황이 달리 명백하게 지시하지 않는 한, 기술되지 않은 추가적인 인자들에 기초하는 것을 허용한다. 추가로, 명세서 전반에 걸쳐, 단수("a," "an," 및 "the")의 의미는 복수 참조들을 포함한다. "~에서"의 의미는 "~에서" 및 "~상에서"를 포함한다.
여기서 사용되는 바와 같이, 용어 "소셜 네트워크"는 데이트, 업무 네트워킹, 서비스 소개, 컨텐츠 공유, 생각이 비슷한 개인들, 활동 파트너들 등 등을 포함하지만, 이에 제한되지 않는 다양한 활동들에 대해 더욱 관련된 접속들을 찾기 위해 개인의 친구들, 가족 구성원들, 동료들의 개인적 네트워크, 및 해당 네트워크들 내에서의 후속적인 접속들이 이용될 수 있다는 개념을 나타낸다.
온라인 소셜 네트워크는 사용자들이 이들 사람들과 연관시킬 수 있는 실제 및 가상 특권들 및 허가들을 포함하는, 직접 및/또는 간접 개인 관계들의 개인 세트를 포함한다. 직접적 개인 관계들은 일반적으로, 가족 멤버들, 친구들, 동료들, 직장동료들을 포함하는, 사용자가 직접 통신했던 사람들, 및 개인이 예를 들어 전화에 의해, 이메일에 의해, 인스턴트 메시지에 의해, 편지에 의해, 개인 연락과 같은 일부 형태의 직접 접촉을 했던 다른 사람들과의 관계들을 포함한다. 이들 직접적 개인 관계들은 때때로 제1급 관계들로서 참조된다. 제1급 관계들은 다양한 정도들의 근접도, 트러스트, 및 다른 특성들을 가질 수 있다.
간접 개인 관계들은 통상적으로 개인이 이메일 메시지 상에서의 cc에 있는 것 등과 같이 일부 형태의 직접 또는 제한된 직접 연락을 하지 않은 사람들에 대한 제1급 관계들을 통한 관계들을 포함한다. 예를 들어, 친구의 친구는 간접 개인 관계를 나타낸다. 더욱 확장된 간접 관계는 친구의 친구의 친구일 수 있다. 이들 간접 관계들은 때때로, 사람들 사이의 분리도(degree of separation)를 특징으로 한다. 예를 들어, 친구의 친구는 2의 분리도 또는 제2급 관계로서 특징지어질 수 있다. 유사하게, 친구의 친구의 친구는 3의 분리도 또는 제3급 관계로서 특징지어질 수 있다.
소셜 네트워킹 정보는, 멤버에 의해 수신 또는 송신된 이메일들, 단문 메시지 서비스(SMS) 메시지들, 인스턴트 메시징(IM) 메시지들, 멀티미디어 메시지(MMS) 메시지들, 경보들, 오디오 메시지들, 전화 통화들 등을 포함하지만 이에 제한되지 않는, 소셜 네트워크 내의 멤버 및 다른 멤버들 사이의 통신들에 관한 다양한 정보를 포함한다. 이러한 소셜 네트워킹 정보는 또한 멤버의 주소록, 친구 목록, 또는 유사한 소스로부터 획득될 수 있다.
후속내용은 본 발명의 일부 양상들에 대한 기본적인 이해를 제공하기 위해 본 발명의 실시예들을 간략하게 기술한다. 이러한 간략한 설명은 확장적 개요로서 의도되지 않는다. 이는 핵심 또는 중요 엘리먼트들을 식별하거나, 또는 범위를 기술하거나 그렇지 않은 경우 축소하도록 의도되지 않는다. 그 목적은 단지 추후 제시되는 더 상세한 설명에 대한 개요로서 간략화된 형태로 일부 개념들을 제시하는 것이다.
간략하게 언급하자면, 본 발명은 다른 '비-트러스트' 탐색 결과들과는 구별하여 디스플레이되는, 트러스트 탐색 결과들로서 명명되는 탐색 사용자에 대한 소셜 네트워킹 사이트들로부터의 탐색 결과들을 선택적으로 디스플레이하기 위해 탐색 질의-분류를 사용함으로써 탐색 결과들의 디스플레이를 관리하는 것에 관한 것이다. 일 실시예에서, 탐색 질의는 탐색 질의를 분류하기 위해 분석된다. 결정된 질의-클래스에 기초하여, 트러스트 탐색 결과들이 선택적으로 디스플레이되는 수 및 위치에 대한 결정이 이루어진다. 탐색은 이후, 예를 들어, 탐색 사용자가 소셜 네트워킹 관계를 가지지 않을 수 있는 다양한 인터넷 웹 사이트들 등을 포함하는 비-트러스트 데이터 소스들로서 명명되는 것을 통해 수행될 수 있다. 질의-클래스가 탐색 트러스트 데이터 소스들을 표시하는 경우, 소셜 네트워킹 사이트들, 사용자들 간의 메시지들 등과 같은 트러스트 데이터 소스들이 트러스트 탐색 결과들을 획득하기 위해 탐색된다. 트러스트 탐색 결과들은 이후 탐색 기준의 다양한 카테고리들에 따라 그리고/또는 탐색 기준의 다양한 카테고리들 내에 랭크 순위화될 수 있다. 예를 들어, 친구들, 가족들, 친구 목록들에서 식별된 사람들, 다양한 소셜 네트워킹 장소들에서 탐색 사용자가 명시적으로 팔로우하는 사람들, 또는 다양한 정의된 다른 트러스트 웹들과 같은 명시적으로 정의된 데이터 소스들(명시적 접속들)로부터 획득된 결과들은 트러스트 탐색 결과들의 또다른 카테고리와는 상이하게 랭크 순위화되고 제시될 수 있다. 트러스트 탐색 결과들의 또다른 카테고리는 탐색 사용자가 멤버인 소셜 네트워킹 사이트들, 클럽들 등과 같은 묵시적 트러스트 소스들(묵시적 접속들)을 포함하지만, 결과들은 탐색 사용자가 탐색 사용자의 친구 목록, 주소록 등 내에 정의된 바와 같은 제1급의 분리 관계와 같은 직접 정의된 관계를 가지는 멤버들이 아닌 멤버들로부터 획득된다. 따라서, 묵시적 접속들은 동일한 취미를 공유하고, 동일한 회사에서 일하고, 동일한 그룹의 일부분 등일 수 있는 다른 사람들에 대한 접속들을 포함할 수 있다.
트러스트 탐색 결과들의 또다른 카테고리는 탐색 사용자가 멤버가 아닌 다양한 소셜 네트워킹 사이트들로부터의 결과들을 포함할 수 있지만, 또다른 소스, 친구 등에 대한 소스의 관계에 기초하여 결과들이 탐색 질의에 관련될 수 있다고 결정된다. 예를 들어, 이러한 소셜 네트워킹 사이트들은 멤버로서, 친구, 가족 멤버, 동료 등을 가질 수 있다. 이러한 트러스트 탐색 결과들의 또다른 예는, 탐색 사용자가 멤버인 그룹, 비즈니스 등에 공통적인 대상, 목적 등을 가지는 그룹들, 비즈니스들 등일 수 있다. 예를 들어, 탐색 사용자는 특정 스쿠버 클럽의 멤버일 수 있다. 이러한 트러스트 탐색 결과들의 카테고리는 이후 탐색 사용자의 친구, 가족 멤버, 동료 등이 멤버일 수 있거나, 멤버인 누군가를 알고 있는 사람들을 포함하는, 다른 스쿠버 클럽들을 포함할 수 있다. 이러한 카테고리는 확장된 묵시적 접속들로서 명명될 수 있다. 탐색 사용자에 대한 명시적 또는 묵시적 접속이 더이상 존재하지 않으며 탐색 사용자가 트러스트된 것으로서 소스를 명시적으로 식별하지 않은 다른 네트워킹 사이트들, 웹 사이트들 등으로부터의 해당 탐색 결과들은 이후 비-트러스트 탐색 결과들이 획득될 수 있는 비-트러스트된 사이트들로서 여기서 명명될 것이다.
일 실시예에서, 질의-클래스에 기초하여, 상이한 수의 트러스트 탐색 결과들은 비-트러스트 탐색 결과들과 함께 디스플레이될 수 있다. 또한, 트러스트 탐색 결과들이 비-트러스트 탐색 결과들과 관련하여 디스플레이될 수 있는 위치는 질의-클래스들에 기초할 수 있다. 일 실시예에서, 트러스트 탐색 결과들을 디스플레이하기 위한 수 및 위치는 각각의 질의-클래스에 대한 트러스트 탐색 결과들에 대한 수 및 위치를 최적화하기 위해 사용가능한 탐색 사용자의 피드백을 획득하기 위해 탐색 결과들(트러스트 탐색 결과들 및 비-트러스트 탐색 결과들)에 대한 복수의 클릭율들을 분석함으로써 결정될 수 있다.
일 실시예에서, 비-트러스트 탐색 결과들은 트러스트 탐색 결과들과는 구별하여 또는 별개로 디스플레이된다. 이러한 방식으로, 소스의 트러스트 레벨에 기초하여 그리고 트러스트 탐색 결과들을 트러스트 탐색 결과들로서 고유하게 식별함으로써 정보를 별개로 그리고 구별하여 디스플레이하면, 탐색 사용자는 주어진 탐색 질의에 응답하여 디스플레이되는 탐색 결과들에서 증가한 신뢰도 및 관련성을 획득할 수 있다.
또한, 일 실시예에서, 탐색 사용자는 어느 소셜 네트워크 사이트들로부터 트러스트 탐색 결과들이 선택적 디스플레이로부터 획득될 것인지를 선택할 수 있다. 일 실시예에서, 하나 이상의 소셜 네트워킹 사이트들의 디폴트 세트가 제공될 수 있다. 그러나, 추가적인 실시예에서, 탐색 사용자는 또한 하나 이상의 추가적인 소셜 네트워킹 사이트들, 및/또는 선택적 디스플레이에 대한 트러스트 탐색 결과들을 획득할 다른 소스들을 제공할 수 있다.
예시적인 동작 환경
도 1은 본 발명이 구현될 수 있는 환경의 일 실시예의 컴포넌트들을 도시한다. 본 발명을 구현하기 위해 모든 컴포넌트들이 요구되지는 않을 수 있으며, 컴포넌트들의 배열 및 타입에서의 변형들이 본 발명의 사상 또는 범위로부터의 이탈 없이 이루어질 수 있다. 도시된 바와 같이, 도 1의 시스템(100)은 로컬 영역 네트워크("LAN")들/광역 네트워크("WAN")들 -(네트워크)(105), 무선 네트워크(110), 트러스트 탐색 서버(TSS)(106), 모바일 디바이스들(클라이언트 디바이스들(102-104), 클라이언트 디바이스(101), 및 컨텐츠 서버(107)를 포함한다.
클라이언트 디바이스들(101-104) 중 하나로서 사용가능한 클라이언트 디바이스의 일 실시예는 도 2와 관련하여 하기에 더 상세히 기술된다. 그러나, 일반적으로, 클라이언트 디바이스들(102-104)은 무선 네트워크(110) 등과 같은 네트워크 상에서 메시지를 수신 및 송신할 수 있는 가상으로 임의의 모바일 컴퓨팅 디바이스를 포함할 수 있다. 이러한 디바이스들은 셀룰러 전화들, 스마트 폰들, 디스플레이 페이저들, 무선 주파수(RF) 디바이스들, 적외선(IR) 디바이스들, 개인 디지털 정보 단말(PDA)들, 핸드헬드 컴퓨터들, 랩톱 컴퓨터들, 착용 컴퓨터들, 태블릿 컴퓨터들, 이전 디바이스들 중 하나 이상을 조합한 집적 디바이스들 등과 같은 휴대형 디바이스를 포함한다. 클라이언트 디바이스(101)는 개인용 컴퓨터들, 멀티프로세서 시스템들, 마이크로프로세서-기반 또는 프로그램가능 가전제품들, 네트워크 PC들 등과 같은 유선 통신 매체를 사용하여 통상적으로 접속하는 가상의 임의의 컴퓨팅 디바이스를 포함할 수 있다. 일 실시예에서, 클라이언트 디바이스들(101-104) 중 하나 이상은 또한 유선 및/또는 무선 네트워크 상에서 동작하도록 구성될 수 있다.
클라이언트 디바이스들(101-104)은 통상적으로 성능들 및 특징들의 견지에서 그 범위가 넓다. 예를 들어, 셀 폰은 오직 텍스트가 디스플레이될 수 있는 흑백 LCD 디스플레이의 몇몇 라인들 및 숫자 키패드를 가질 수 있다. 또다른 예에서, 웹-인에이블 클라이언트 디바이스는 터치 감지 스크린, 스타일러스, 및 텍스트 및 그래픽들이 모두 디스플레이될 수 있는 컬러 LCD 디스플레이의 몇몇 라인들을 가질 수 있다.
웹-인에이블 클라이언트 디바이스는 웹 페이지들, 웹-기반 메시지들 등을 수신하고 송신하도록 구성되는 브라우저 애플리케이션을 포함할 수 있다. 브라우저 애플리케이션은 무선 애플리케이션 프로토콜 메시지들(WAP) 등을 포함하는, 가상으로 임의의 웹-기반 언어를 사용하는 그래픽들, 텍스트, 멀티미디어 등을 수신 및 디스플레이하도록 구성될 수 있다. 일 실시예에서, 브라우저 애플리케이션은 정보를 디스플레이하고 송신하기 위해 핸드헬드 디바이스 마크업 언어(HDML), 무선 마크업 언어(WML), WML스크립트, 자바스크립트, 표준 범용 마크업 언어(SMGL), 하이퍼텍스트 마크업 언어(HTML), 확장가능 마크업 언어(XML) 등을 사용하도록 인에이블된다.
클라이언트 디바이스들(101-104)은 또한 또다른 컴퓨팅 디바이스로부터 컨텐츠를 수신하도록 구성되는 적어도 하나의 다른 클라이언트 애플리케이션을 포함할 수 있다. 클라이언트 애플리케이션은 텍스트 컨텐츠, 멀티미디어 정보 등을 제공 및 수신하기 위한 능력을 포함할 수 있다. 클라이언트 애플리케이션은 타입, 능력, 이름 등을 포함하여, 그 자체를 식별하는 정보를 추가로 제공할 수 있다. 일 실시예에서, 클라이언트 디바이스들(101-104)은 전화 번호, 모바일 식별 번호(MIN), 전자 일련 번호(ESN), 모바일 디바이스 식별자, 네트워크 어드레스, 또는 다른 식별자를 포함하는 다양한 메커니즘들 중 임의의 것을 통해 스스로를 고유하게 식별할 수 있다. 식별자는 또다른 컴퓨팅 디바이스에 송신된 메시지 등에 제공될 수 있다.
클라이언트 디바이스들(101-104)은 또한, 또다른 컴퓨팅 디바이스 사이에서 예를 들어, 이메일, SMS, MMS, IM, IRC, mIRC, Jabber 등을 통해 메시지를 전달하도록 구성될 수 있다. 그러나, 본 발명은 이들 메시지 프로토콜들에 제한되는 것이 아니며, 가상으로 임의의 다른 메시지 프로토콜이 사용될 수 있다.
클라이언트 디바이스들(101-104)은 사용자로 하여금 컨텐츠 서버들(107-109), TSS(106) 등과 같은 또다른 컴퓨팅 디바이스에 의해 관리될 수 있는 사용자 계정으로 로그인하게 할 수 있는 클라이언트 애플리케이션을 포함하도록 추가로 구성될 수 있다. 일 실시예에서, 크리덴셜, 로그인 사용자명/패스워드, 또는 다른 정보가 컨텐츠 서버들(107-109) 등 중 하나 이상에서의 컨텐츠에 대한 사용자 액세스를 인에이블시키도록 사용된다. 이러한 사용자 계정은, 예를 들어, 사용자로 하여금, 이메일들을 수신하고, IM 메시지들, SMS 메시지들, 액세스 선택된 웹 페이지들을 송신/수신하고, 그리고/또는 다양한 다른 소셜 네트워킹 활동들 중 임의의 것에 참여하게 하도록 구성될 수 있다. 그러나, 메시지들의 관리 또는 그렇지 않은 경우 다른 소셜 활동들에 참여하는 것은 또한 사용자 계정에 로그인하지 않고 수행될 수 있다.
일 실시예에서, 클라이언트 디바이스들(101-104)의 사용자들은 웹 페이지에 액세스하고, 다양한 컨텐츠에 대한 질의 탐색을 수행하고, 그리고/또는 다른 것들이 다양한 다른 활동들 중 임의의 것을 수행하게 하기 위해 인에이블될 수 있다. 예를 들어, 클라이언트 디바이스들(101-104)은 사용자로 하여금, Twitter, LinkedIn, Facebook 등과 같은 다양한 소셜 네트워킹 사이트들에 참여하게 할 수 있다. 그러나, 사용자들은 여기서 리스팅된 것들에 추가하여 그리고/또는 대신하여, 다양한 다른 소셜 네트워킹 사이트들에 참여할 수 있다. 따라서, 본 발명은 단순히 여기서 명시적으로 식별된 해당 소셜 네트워킹 사이트들에 기초하여 제한되지 않는다. 어느 경우에서든, 사용자가 식별하였거나 또는 사용자가 명시적 또는 묵시적 접속을 가지는 해당 소셜 네트워킹 사이트들은 트러스트 데이터 소스들로서 명명될 수 있다. 사용자가 식별하지도 않고 명시적 또는 묵시적 접속도 가지지 않는 해당 다른 소셜 네트워킹 사이트들은 비-트러스트 데이터 소스들이다. 그러나, 비-트러스트 데이터 소스들은 소셜 네트워킹 사이트들이 아닌 것을 포함할 수 있다. 예를 들어, 비-트러스트 데이터 소스들은, 웹 사이트 호스팅 사전들, 다운로드가능 컨텐츠들, 비즈니스들 등을 포함하지만 이에 제한되지 않는다.
어느 경우에서든, 클라이언트 디바이스들(101-104)의 사용자는, 예를 들어, 또다른 클라이언트 디바이스 및/또는 컨텐츠 서버들(107-109)로부터 획득될 수 있는 컨텐츠에 대해, TSS(106)를 통해 네트워크들(105 및/또는 110)과 같은 네트워크 상에서 다양한 탐색 질의들을 수행하도록 선택할 수 있다. 일 실시예에서, 사용자는 탐색을 수행할 다양한 트러스트 데이터 소스들을 식별할 수 있다. 일 실시예에서, TSS(106)는 사용자에 관한 정보, 사용자의 소셜 네트워킹 온라인 활동 등을 포함하는 사용자에 대한 프로파일에 부분적으로 기초하여 탐색을 수행할 트러스트 데이터 소스들을 결정할 수 있다. 탐색 질의로부터의 결과들은 이후 사용자의 클라이언트 디바이스에 디스플레이되는데, 여기서 탐색 결과들은 비-트러스트 데이터 소스들로부터의 탐색 결과들로부터 트러스트 데이터 소스들로부터의 탐색 결과들을 명백하게 그리고 고유하게 식별한다. 일 실시예에서, 비-트러스트 탐색 결과들에 대한 디스플레이 스크린 상에서의 위치 및 디스플레이되는 트러스트 탐색 결과들의 수는 탐색 질의가 속하는 것으로 결정되는 질의-클래스에 기초할 수 있다.
무선 네트워크(110)는 클라이언트 디바이스들(102-104)을 네트워크(105)와 커플링하도록 구성된다. 무선 네트워크(110)는 클라이언트 디바이스들(102-104)에 대한 인프라구조-발신 접속을 제공하기 위해 독립형 애드-혹 네트워크들 등을 추가로 오버레이할 수 있는 다양한 무선 서브-네트워크들 중 임의의 것을 포함할 수 있다. 이러한 서브-네트워크들은 메시 네트워크들, 무선 LAN(WLAN) 네트워크들, 셀룰러 네트워크들 등을 포함할 수 있다.
무선 네트워크(110)는 무선 라디오 링크들 등에 의해 접속되는 단말들, 게이트 웨이들, 라우터 등의 자율 시스템을 포함할 수 있다. 이들 커넥터들은, 무선 네트워크(110)의 토폴로지가 신속하게 변경할 수 있도록, 자유롭게 그리고 랜덤으로 이동하고, 그 자신들을 임의로 조직하도록 구성될 수 있다.
무선 네트워크(110)는 셀룰러 시스템들, WLAN, 무선 라우터(WR) 메시 등에 대한 제2(2G), 제3(3G), 제4(4G) 세대 무선 액세스를 포함하는 복수의 액세스 기술들을 추가로 사용할 수 있다. 2G, 2.5G, 3G, 4G, 및 향후 액세스 네트워크들과 같은 액세스 기술들은 다양한 정도들의 이동성을 가지는 클라이언트 디바이스들(102-104)과 같은 클라이언트 디바이스들에 대한 광역 커버리지를 인에이블시킬 수 있다. 예를 들어, 무선 네트워크(110)는 모바일 통신용 글로벌 시스템(GSM), 범용 패킷 무선 서비스들(GPRS), 개선된 데이터 GSM 환경(EDGE), 광대역 코드 분할 다중 액세스(WCDMA), 블루투스 등과 같은 무선 네트워크 액세스를 통한 무선 접속을 가능하게 할 수 있다. 본질적으로, 무선 네트워크(110)는 정보가 클라이언트 디바이스들(102-104) 및 또다른 컴퓨팅 디바이스, 네트워크 등의 사이에서 이동할 수 있는 가상의 임의의 무선 통신 메커니즘을 포함할 수 있다.
네트워크(105)는 클라이언트 디바이스들(102-104)에 무선 네트워크(110)를 통과하는 것을 포함하여, TSS(106), 컨텐츠 서버들(107-109) 및 클라이언트 디바이스(101)를 다른 컴퓨팅 디바이스들과 커플링하도록 구성된다. 네트워크(105)는 하나의 전자 디바이스로부터 또다른 전자 디바이스로 정보를 전달하기 위한 임의의 형태의 컴퓨터 판독가능한 매체를 사용하도록 인에이블될 수 있다. 또한, 네트워크(105)는 예를 들어, 유니버설 직렬 버스(USB) 포트, 다른 형태들의 컴퓨터-판독가능한 매체, 또는 이들의 임의의 조합을 통해, 로컬 영역 네트워크(LAN)들, 광역 네트워크(WAN)들, 직접 접속들에 추가하여 인터넷을 포함할 수 있다. 상이한 아키텍쳐들 및 프로토콜들에 기초하는 것을 포함하여, LAN들의 상호접속된 세트 상에서, 라우터는 메시지들이 서로 송신되도록 하는, LAN들 사이의 링크로서 작용한다. 추가로, LAN들 내의 통신 링크들은 통상적으로 트위스티드 와이어 페어 또는 동축 케이블을 포함하는 반면, 네트워크들 사이의 통신 링크들은, 아날로그 전화 선들, T1, T2, T3 및 T4, 통합 서비스 디지털 네트워크(ISDN)들, 디지털 가입자 회선(DSL)들을 포함하는 전체 또는 부분 전용 디지털 회선들, 위성 링크들을 포함하는 무선 링크들, 또는 당해 기술분야에 공지된 다른 통신 링크들을 이용할 수 있다. 또한, 원격 컴퓨터들 및 다른 관련 전자 디바이스들은 모뎀 및 임시 전화 링크를 통해 LAN들 또는 WAN들에 원격으로 접속될 수 있다. 본질적으로, 네트워크(105)는 정보가 컴퓨팅 디바이스들 사이에서 이동할 수 있는 임의의 통신 방법을 포함한다.
TSS(106)의 일 실시예는 도 3과 관련하여 하기에 더 상세히 기술된다. 그러나, 간략하게는, TSS(106)는 사용자의 소셜 네트워크에 기초하여 탐색 결과를 선택적으로 정제하기 위해 네트워크(105)에 접속할 수 있는 임의의 컴퓨팅 디바이스를 포함할 수 있고, 여기서, 소셜 네트워크 또는 트러스트 탐색 결과들은 질의-클래스 및 디스플레이할 다수의 트러스트 탐색 결과들에 대한 질의-클래스의 수 및 위치에 기초하여 다른 비-트러스트 탐색 결과들로부터 구별하여 선택적으로 디스플레이될 수 있다.
TSS(106)는 소셜 네트워킹 탐색 데이터의 '사용자 당 트러스트 데이터 소스'를 생성하기 위해 다수의 트러스트된 소셜 네트워크들을 통해 다양한 소셜 활동 스트림들과 함께 탐색 사용자의 프로파일, 친구들, 가족의 프로파일들 등을 포함하는 소셜 네트워킹 정보를 취합할 수 있다. 주어진 사용자에 대한 복수의 트러스트 데이터 소스들이 존재할 수 있다는 점이 이해되어야 한다.
웹 탐색 질의 시간에, 탐색 질의는 하나 이상의 질의-클래스들로 분류될 수 있다. 탐색 질의를 위한 질의-클래스가 트러스트 데이터 소스 상에서 탐색들을 수행하는 것을 포함하는 경우, 트러스트 데이터 소스(들)가 트러스트 탐색 결과들을 위해 탐색된다. 비-트러스트 데이터 소스들에 대한 탐색이 또한 수행된다. 이후, 다수의 트러스트 탐색 결과, 및 트러스트 탐색 결과들을 하나 이상의 질의-클래스들에 대해 디스플레이하기 위한 위치에 기초하여, 트러스트 탐색 결과들은 비-트러스트 탐색 결과들로부터 고유하게 구별하여 디스플레이된다. 일 실시예에서, 트러스트 탐색 결과들은 이들의 트러스트 데이터 소스에 기초하여 고유하게 식별된다. 일 실시예에서, 탐색 사용자는 트러스트 데이터 소스의 트러스트 탐색 결과들의 서브세트들을 선택적으로 디스플레이할 수 있다. TSS(106)는 그것의 동작들 중 적어도 일부를 수행하기 위해 도 4-6과 관련하여 하기에 설명된 것과 같은 프로세스를 이용할 수 있다. 또한, 도 7은 하기에, 트러스트 탐색 결과들이 비-트러스트 탐색 결과들과 구별하여 디스플레이되는 탐색 결과들의 하나의 비-제한 디스플레이를 예시한다.
TSS(106)로서 동작할 수 있는 디바이스들은, 개인용 컴퓨터들, 데스크톱 컴퓨터들, 마이크로프로세서 시스템들, 마이크로프로세서-기반 또는 프로그램가능 가전제품, 네트워크 PC들, 서버들, 네트워크 어플라이언스들 등을 포함하지만 이에 제한되지 않는 다양한 네트워크 디바이스들을 포함한다.
도 1이 단일 컴퓨팅 디바이스로서 TSS(106)를 예시하지만, 본 발명이 그렇게 제한되지 않는다. 예를 들어, TSS(106)의 하나 이상의 기능들은 하나 이상의 구별되는 컴퓨팅 디바이스들에 걸쳐 분배될 수 있다. 예를 들어, 사용자들에 대한 소셜 네트워킹 데이터를 취합하는 것은 하나의 네트워크 디바이스 상에서 수행될 수 있는 반면, 탐색 질의들을 수행하고 탐색 결과들을 제공하는 것은 또다른 네트워크 디바이스 상에서 수행될 수 있다. 그러나, 다른 배열들이 또한 사용될 수 있다.
컨텐츠 서버들(107-109)은 네트워크를 통해 또다른 컴퓨팅 디바이스에 컨텐츠를 제공하도록 구성되는 가상으로 임의의 네트워크 디바이스를 포함한다. 그러한 것으로서, 컨텐츠 서버들(107-109)은 소셜 네트워킹 컨텐츠 및 비-소셜 네트워킹 컨텐츠를 포함하는 컨텐츠를 제공할 수 있다. 컨텐츠 서버들(107-109)은 Flicker, Twitter, Facebook, LinkedIn, 블로그들, 비디오로그(vlog)들, 온라인 데이트 사이트들 등과 같은 개인용 사용자 사이트들을 포함하지만 이에 제한되지 않는, 다양한 소셜 네트워킹 사이트들을 추가로 호스팅할 수 있다. 컨텐츠 서버들(107-109)은 또한 다양한 비즈니스 사이트들, 교육 사이트들, 사전 사이트들, 백과사전 타입 사이트들, 경제 사이트들, 정부 사이트들 등을 포함하지만 이에 제한되지 않는 다양한 비-소셜 네트워킹 사이트들을 호스팅할 수 있다.
컨텐츠 서버들(107-109)은 웹 서비스들, 제3자 서비스들, 오디오 서비스들, 비디오 서비스들, 이메일 서비스들, IM 서비스들, SMS 서비스들, VOIP 서비스들, 캘린더링 서비스들, 포토 서비스들 등을 포함하지만 이에 제한되지 않는 다양한 서비스들을 추가로 제공할 수 있다. 컨텐츠는 웹 컨텐츠, 오디오 컨텐츠, 비디오 컨텐츠, FTP 데이터 등을 포함할 수 있다.
컨텐츠 서버(107)로서 동작할 수 있는 디바이스들은 개인용 컴퓨터들, 데스스톱 컴퓨터들, 멀티프로세서 시스템들, 마이크로프로세서-기반 또는 프로그램가능 가전제품들, 네트워크 PC들, 서버들 등을 포함한다.
예시적인 모바일 클라이언트 환경
도 2는 본 발명을 구현하는 시스템에서 포함될 수 있는 클라이언트 디바이스(200)의 일 실시예를 도시한다. 클라이언트 디바이스(200)는 도 2에 도시된 것들보다 더 많거나 더 적은 다수의 컴포넌트들을 포함할 수 있다. 그러나, 도시된 컴포넌트들은 본 발명을 구현하기 위한 예시적인 실시예를 개시하기에 충분하다. 클라이언트 디바이스(200)는 예를 들어, 도 1의 클라이언트 디바이스들(101-104) 중 적어도 하나의 일 실시예를 나타낼 수 있다.
도면에 도시된 바와 같이, 클라이언트 디바이스(200)는 버스(224)를 통해 대용량 메모리(230)와 통신하는 프로세싱 유닛(CPU)(222)을 포함한다. 클라이언트 디바이스(200)는 또한 전원(226), 하나 이상의 네트워크 인터페이스들(250), 오디오 인터페이스(252), 디스플레이(254), 키보드(256), 조명기(258), 입력/출력 인터페이스(260), 햅틱 인터페이스(262), 및 광학 글로벌 위치탐색 시스템(GPS) 수신기(264)를 포함한다. 전원(226)은 클라이언트 디바이스(200)에 전력을 제공한다. 충전가능한 또는 충전 가능하지 않은 배터리가 전력을 제공하기 위해 사용될 수 있다. 전력은 또한, 배터리를 보충하고 그리고/또는 충전하는 전력공급 도킹 크래들 또는 AC 어댑터와 같은, 외부 전원에 의해 제공될 수 있다.
클라이언트 디바이스(200)는 선택적으로 기지국(미도시)과 또는 또다른 컴퓨팅 디바이스와 직접적으로 통신할 수 있다. 네트워크 인터페이스(250)는 하나 이상의 네트워크들에 클라이언트 디바이스(200)를 커플링하기 위한 회로를 포함하고, 모바일 통신용 글로벌 시스템(GSM), 코드 분할 다중 액세스(CDMA), 시분할 다중 액세스(TDMA), 사용자 데이터그램 프로토콜(UDP), 전송 제어 프로토콜/인터넷 프로토콜(TCP/IP), SMS, 범용 패킷 무선 서비스(GPRS), WAP, 울트라 광대역(UWB), IEEE 802.16 WiMax(Worldwide Interoperability for Microwave Access), SIP/RTP, 또는 다양한 다른 무선 통신 프로토콜들 중 임의의 것을 포함하지만 이에 제한되지 않는 하나 이상의 통신 프로토콜들 및 기술들과 함께 사용하도록 구성된다. 네트워크 인터페이스(250)는 때때로 트랜시버, 트랜시빙 디바이스, 또는 네트워크 인터페이스 카드(NIC)로서 공지된다.
오디오 인터페이스(252)는 사람 음성의 사운드와 같은 오디오 신호들을 생성 및 수신하도록 배열된다. 예를 들어, 오디오 인터페이스(252)는 다른 이들과의 통신을 가능하게 하고 그리고/또는 다른 동작을 위한 오디오 확인응답을 생성하기 위해 스피커 및 마이크로폰(미도시)에 커플링될 수 있다. 디스플레이(254)는 액정 디스플레이(LCD), 기체 플라즈마, 발광 다이오드(LED), 또는 컴퓨팅 디바이스와 함께 사용되는 임의의 다른 타입의 디스플레이일 수 있다. 디스플레이(254)는 또한, 사람 손으로부터의 디지트 또는 스타일러스와 같은 오브젝트로부터의 입력을 수신하도록 배열되는 터치 감지 스크린을 포함할 수 있다.
키패드(256)는 사용자로부터 입력을 수신하도록 배열되는 임의의 입력 디바이스를 포함할 수 있다. 예를 들어, 키패드(256)는 푸시 버튼 숫자 다이얼, 또는 키보드를 포함할 수 있다. 키패드(256)는 또한 이미지들의 선택 및 송신과 연관된 커맨드 버튼들을 포함할 수 있다. 조명기(258)는 상태 표시를 제공하고 그리고/또는 광을 제공할 수 있다. 조명기(258)는 이벤트들에 응답하여 특정 시간 기간들 동안 활성 상태를 유지할 수 있다. 예를 들어, 조명기(258)가 활성인 경우, 이는 키패드(256) 상의 버튼들을 백라이팅(backlight)하고, 클라이언트 디바이스가 파워링되는 동안 유지할 수 있다. 추가로, 조명기(258)는 또다른 클라이언트 디바이스에 다이얼링하는 것과 같은 특정 동작들이 수행되는 경우, 다양한 패턴들로 이들 버튼들을 백라이팅할 수 있다. 조명기(258)는 또한 동작들에 응답하여 조명하기 위해 광원들이 클라이언트 디바이스의 투명한 또는 반투명한 케이스 내에 위치되도록 할 수 있다.
클라이언트 디바이스(200)는 또한 도 2에 미도시된 헤드셋, 또는 다른 입력 또는 출력 디바이스들과 같은 외부 디바이스들과 통신하기 위한 입력/출력 인터페이스(260)를 포함한다. 입력/출력 인터페이스(260)는 USB, 적외선, Bluetooth™ 등과 같은 하나 이상의 통신 기술들을 이용할 수 있다. 햅틱 인터페이스(262)는 클라이언트 디바이스의 사용자에게 촉각 피드백을 제공하도록 배열된다. 예를 들어, 햅틱 인터페이스는 컴퓨팅 디바이스의 또다른 사용자가 통화중인 경우 특정 방식으로, 클라이언트 디바이스(200)를 진동시키기 위해 사용될 수 있다.
선택적 GPS 트랜시버(264)는 통상적으로 위도 및 경도 값들로서 위치를 출력하는, 지구 표면 상에서의 클라이언트 디바이스(200)의 물리적 좌표를 결정할 수 있다. GPS 트랜시버(264)는 또한, 삼각측량, 보조 GPS(AGPS), E-OTD, CI, SAI, ETA, BSS 등을 포함하지만 이에 제한되지 않는 다른 위치결정(geo-positioning) 메커니즘들을 사용하여 지구 표면 상에서의 클라이언트 디바이스(200)의 물리적 위치를 더 결정할 수 있다. 다른 조건들 하에서, GPS 트랜시버(264)는 클라이언트 디바이스(200)에 대해 밀리미터 내의 물리적 위치를 결정할 수 있고, 다른 경우들에서, 결정된 물리적 위치는, 예를 들어, 미터 또는 현저하게 더 큰 거리들 내에서 덜 정확할 수 있다는 점이 이해된다. 그러나, 일 실시예에서, 모바일 디바이스는 다른 컴포넌트들을 통해, 예를 들어, MAC 어드레스, IP 어드레스 등을 포함하는 디바이스의 물리적 위치를 결정하기 위해 사용될 수 있는 다른 정보를 제공할 수 있다.
대용량 메모리(230)는 RAM(232), ROM(234), 및 다른 물리적 저장 디바이스들을 포함한다. 대용량 메모리(230)는 컴퓨터 판독가능한 명령들, 데이터 구조들, 프로그램 모듈들 또는 다른 데이터와 같은 정보의 저장을 위한 컴퓨터 저장 매체의 예를 예시한다. 대용량 메모리(230)는 클라이언트 디바이스(200)의 저-레벨 동작을 제어하기 위한 기본 입력/출력 시스템("BIOS")(240)을 저장한다. 대용량 메모리는 또한 클라이언트 디바이스(200)의 동작을 제어하기 위한 동작 시스템(241)을 저장한다. 이러한 컴포넌트가 UNIX 버전 또는 LINUX™과 같은 범용 운영 체제, 또는 Windows Mobile™과 같은 특수화된 클라이언트 통신 운영 체제, 또는 Symbian ® 운영 체제를 포함할 수 있다는 점이 이해될 것이다. 운영 체제는, 자바 애플리케이션 프로그램들을 통해 운영 체제 동작들 및/또는 하드웨어 컴포넌트들의 제어를 가능하게 하는 자바 가상 머신 모듈을 포함하거나 이와 인터페이싱할 수 있다.
메모리(230)는 또한, 특히 애플리케이션들(242) 및/또는 다른 데이터를 저장하기 위해 클라이언트 디바이스(200)에 의해 이용될 수 있는 하나 이상의 데이터 저장소(244)를 더 포함한다. 예를 들어, 데이터 저장소(244)는 또한 클라이언트 디바이스(200)의 다양한 성능들을 기술하는 정보를 저장하기 위해 사용될 수 있다. 정보는 이후, 통신 동안, 요청시 송신된 헤더의 일부분으로서 송신되는 것 등을 포함하는, 다양한 이벤트들 중 임의의 것에 기초하여 또다른 디바이스에 제공될 수 있다. 추가로, 데이터 저장소(244)는 또한 주소록들, 친구 목록들, 별명들, 로그인 사용자명/패스워드들, 크리덴셜들, 사용자 프로파일들 등을 포함하는 소셜 네트워킹 정보를 저장하기 위해 사용될 수 있다. 소셜 네트워킹 정보의 적어도 일부분은 또한 클라이언트 디바이스(200) 내에서 디스크 드라이브 또는 다른 저장 매체(미도시) 상에 저장될 수 있다.
애플리케이션들(242)은 클라이언트 디바이스(200)에 의해 실행되는 경우, 메시지들(예를 들어, SMS, MMS, IM, 이메일 및/또는 다른 메시지들), 오디오, 비디오를 전송, 수신 및/또는 그렇지 않은 경우 프로세싱하고, 또다른 클라이언트 디바이스의 또다른 사용자와의 통신을 가능하게 하는, 컴퓨터 실행가능한 명령들을 포함할 수 있다. 애플리케이션 프로그램들의 다른 예들은, 캘린더들, 탐색 프로그램들, 이메일 클라이언트들, IM 애플리케이션들, SMS 애플리케이션들, VOIP 애플리케이션들, 접촉 매니저들, 작업 매니저들, 트랜스코더들, 데이터베이스 프로그램들, 워드 프로세싱 프로그램들, 보안 애플리케이션들, 스프레드시트 프로그램들, 게임들, 탐색 프로그램들 등을 포함한다. 애플리케이션들(242)은, 예를 들어, 매니저(243) 및 브라우저(245)를 포함할 수 있다.
브라우저(245)는 가상의 임의의 웹 기반 언어를 사용하여 그래픽, 텍스트, 멀티미디어 등을 수신 및 디스플레이하도록 구성되는 가상의 임의의 클라이언트 애플리케이션을 포함할 수 있다. 일 실시예에서, 브라우저 애플리케이션은 메시지를 디스플레이 및 송신하기 위해, 핸드헬드 디바이스 마크업 언어(HDML), 무선 마크업 언어(WML), WML스크립트, 자바스크립트, 표준 범용 마크업 언어(SMGL), 하이퍼텍스트 마크업 언어(HTML), 확장가능 마크업 언어(XML) 등을 사용하도록 인에이블된다. 그러나, 다양한 다른 웹-기반 언어들 중 임의의 것이 또한 사용될 수 있다. 또한, 브라우저(245)는 다양한 컨텐츠를 요청하고 그리고/또는 이러한 컨텐츠를 수신하도록 사용될 수 있다. 일 실시예에서, 브라우저(245)는 또한 인터넷 등과 같은 네트워크 상에서 하나 이상의 탐색 질의 요청들을 수행하고, 탐색 결과들을 요청하기 위해 사용될 수 있으며, 여기서, 적어도 하나의 탐색 질의 요청은 정의된 복수의 트러스트 데이터 소스들 상에서, 뿐만 아니라 하나 이상의 비-트러스트 데이터 소스들 상에서 탐색을 수행하기 위한 요청을 포함할 수 있다. 비-트러스트 탐색 결과들과는 구별하여 트러스트 탐색 결과들을 디스플레이하는 것을 포함하는 탐색 결과들의 디스플레이의 하나의 비-제한적 예는 도 7과 관련하여 하기에 더 상세히 기술된다.
메신저(243)는 이메일, 단문 메시지 서비스(SMS), 인스턴트 메시지(IM), 멀티미디어 메시지 서비스(MMS), 인터넷 릴레이 채팅(IRC), mIRC, 등을 포함하지만 이에 제한되지 않는 다양한 메시징 통신들 중 임의의 것을 사용하여 메시징 세션을 개시 및 관리하도록 구성될 수 있다. 예를 들어, 일 실시예에서, 메신저(243)는 AOL 인스턴트 메신저, Yahoo! 메신저, .NET 메신저 서버, ICQ 등과 같은 IM 애플리케이션으로서 구성될 수 있다. 일 실시예에서, 메신저(243)는 Elm, Pine, MH, Outlook, Eudora, Mac Mail, Mozilla Thunderbird, gmail 등과 같은 메일 사용자 에이전트(MUA)를 포함하도록 구성될 수 있다. 또다른 실시예에서, 메신저(243)는 다양한 메시징 프로토콜들을 통합 및 사용하도록 구성되는 클라이언트 애플리케이션일 수 있다.
예시적인 서버 환경
도 3은 본 발명의 일 실시예에 따른, 네트워크 디바이스의 일 실시예를 도시한다. 네트워크 디바이스(300)는 도시된 컴포넌트들보다 더 많거나 더 적은 다수의 컴포넌트들을 포함할 수 있다. 그러나, 도시된 컴포넌트들은 본 발명을 구현하기 위한 예시적인 실시예들을 개시하기에 충분하다. 네트워크 디바이스(300)는 예를 들어, 도 1의 TSS(106)를 나타낼 수 있다.
네트워크 디바이스(300)는 프로세싱 유닛(312), 비디오 디스플레이 어댑터(314) 및 대용량 메모리를 포함하며, 이들 모두는 버스(322)를 통해 서로 통신한다. 대용량 메모리는 일반적으로 RAM(316), ROM(332), 및 하나 이상의 영구 대용량 저장 디바이스들, 예를 들어, 하드 디스크 드라이브(328), 테이프 드라이브, 광학 드라이브 및/또는 플로피 디스크 드라이브를 포함한다. 대용량 메모리는 네트워크 디바이스(300)의 동작을 제어하기 위한 운영 체제(320)를 저장한다. 임의의 범용 운영 체제가 사용될 수 있다. 기본 입력/출력 시스템("BIOS")(318)은 네트워크 디바이스(300)의 저레벨 동작을 제어하기 위해 제공된다. 도 3에 예시된 바와 같이, 네트워크 디바이스(300)는 또한, TCP/IP 프로토콜을 포함하는 다양한 통신 프로토콜들과 함께 사용하기 위해 구성되는 네트워크 인터페이스 유닛(310)을 통해, 인터넷 또는 일부 다른 통신 네트워크와 통신할 수 있다. 네트워크 인터페이스 유닛(310)은 때때로 트랜시버, 트랜시빙 디바이스, 또는 네트워크 인터페이스 카드(NIC)로서 공지된다.
전술된 바와 같은 대용량 메모리는 또다른 타입의 컴퓨터-판독가능한 매체, 소위 컴퓨터 저장 매체를 예시한다. 여기서 사용되는 바와 같이, 이러한 컴퓨터-판독가능한 저장 매체는 물리적 실재 디바이스들로서 참조된다. 컴퓨터-판독가능한 저장 매체는 컴퓨터 판독가능한 명령들, 데이터 구조들, 프로그램 모듈들과 같은 정보, 또는 다른 데이터의 저장을 위해 임의의 방법 또는 기술로 구현되는 휘발성, 비휘발성, 이동식 및 비-이동식 매체를 포함할 수 있다. 컴퓨터-판독가능한 저장 매체의 예들은 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다목적 디스크들(DVD) 또는 다른 광학 저장소, 자기 카세트들, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 디바이스들, 또는 원하는 정보를 저장하기 위해 사용될 수 있고 컴퓨팅 디바이스에 의해 액세스될 수 있는 임의의 다른 물리적 디바이스들을 포함한다.
도시된 바와 같이, 데이터 저장소들(352)은, 사용자가 멤버이고, 명시적 접속을 가지거나, 또는 확장된 묵시적 접속 등을 포함하는 묵시적 접속을 가지는 트러스트 데이터 소스들 또는 다양한 소셜 네트워킹 사이트들의 식별, 사용자의 이름을 포함하는 프로파일 정보를 포함하지만 이에 제한되지 않는 소셜 네트워킹 정보를 유지하고 저장하도록 구성될 수 있는 데이터베이스, 텍스트, 스프레드시트, 폴더, 파일 등을 포함할 수 있다. 데이터 저장소들(352)은 추가로, TSM(354)으로 하여금 소셜 네트워킹 정보에 액세스하게 하기 위해 사용가능한 다양한 크리덴셜들, 사용자명/패스워드 정보 등, 및 결정시에 사용하기 위한 다른 트러스트 데이터, 특히 탐색 질의들을 수행할 시에 사용하기 위한 트러스트 데이터를 더 포함할 수 있다. 데이터 저장소들은 사용자의 IM 친구 리스트, 친구 목록, 주소록, 이메일 이력 로그, 트위터 메시지 로그, IM 대화 로그, VOIP 저장소 등 내에 있거나 이들로부터 올 수 있는 소셜 네트워킹을 더 포함할 수 있다. 그러나, 접촉 정보는 또한 사용자의 다양한 상호작용들의 모니터링을 통해 간접적으로 획득될 수 있다. 따라서, 예를 들어, 소셜 네트워킹 정보는 소셜 네트워크의 사용자 및 또다른 멤버 사이의 메시지 내의 컨텐츠에 기초하여 추출될 수 있다. 예를 들어, 일 실시예에서, 사용자 및 다른 멤버는 제3자 등에 대한 정보를 포함할 수 있다. 이러한 제3자 정보는 또한, 일 실시예에서 획득되어, 데이터 저장소들(352) 내에 저장될 수 있다. 유사하게, 예를 들어, 방문한 웹사이트들, 사용자에 의해 탐색되는 정보의 타입들, 다운로드되는 정보의 타입들, 컨텐츠가 다운로드되는 장소 등을 포함하는, 사용자 또는 다른 소셜 네트워킹 멤버의 다양한 네트워킹 활동이 또한 획득될 수 있다. 정보는 또한 탐색 질의를 수행할 시에 사용가능할 수 있는 또다른 멤버의 소셜 네트워킹 연락처 정보로부터 획득될 수 있다. 데이터 저장소들(352)은 주어진 탐색 질의가 복수의 질의 클래스들 중 하나 이상과 연관되는지의 여부를 결정하기 위해 사용가능한 정보를 포함하는, 복수의 질의-클래스들에 관한 정보를 더 포함할 수 있다. 데이터 저장소들(352)은 또한, 복수의 질의-클래스들 각각에 대한 트러스트 탐색 결과들을 디스플레이하기 위한 위치 및 수에 관한 정보를 포함할 수 있다. 데이터 저장소들(352)은 또한, 다양한 탐색 결과들을 디스플레이하고, 사용자가 트러스트 탐색 결과들을 디스플레이하기 위해 다양한 트러스트 데이터 소스들을 선택하고, 뿐만 아니라 또한 사용자로 하여금 트러스트 탐색 질의들을 또한 수행할 하나 이상의 트러스트 데이터 소스들을 식별하게 하는 사용자 인터페이스를 제공하기 위해 사용가능한 하나 이상의 웹 페이지 포맷들, 템플릿들 등을 저장할 수 있다. 데이터 저장소들(352)은 단지 위에서 식별된 항목들을 저장하는 것에 제한되는 것이 아니며, 트러스트 및 비-트러스트 탐색 결과들을 수행 및/또는 디스플레이하기 위해 TSM(354)에 의해 사용가능한 정보를 포함하는 가상의 임의의 정보가 데이터 저장소들(352) 내에 저장될 수 있다. 추가로, 데이터 저장소들(352)이 RAM(316)과 함께 예시되었지만, 데이터 저장소들(352)의 컨텐츠의 적어도 일부분이, cd-rom/dvd-rom 드라이브(326), 하드 디스크 드라이브(328), 및/또는 심지어 또다른 네트워크 디바이스를 포함하지만 이에 제한되지 않는 임의의 장소에 저장될 수 있다.
대용량 메모리는 또한 프로그램 코드 및 데이터를 저장한다. 하나 이상의 애플리케이션들(350)은 대용량 메모리에 로딩되고, 중앙 처리 장치(312)에 의해 운영 체제(320) 상에서 실행된다. 애플리케이션 프로그램들의 예들은 트랜스 코더들, 스케쥴러들, 캘린더들, 데이터베이스 프로그램들, 워드 프로세싱 프로그램들, HTTP 프로그램들, 커스터마이즈가능한 사용자 인터페이스 프로그램들, IPSec 애플리케이션들, 암호화 프로그램들, 보안 프로그램들, SMS 메시지 서버들, IM 메시지 서버들, 이메일 서버들, 계정 매니저들 등을 포함할 수 있다. 트러스트 탐색 매니저(TSM)(354)는 또한 애플리케이션(350) 내의 애플리케이션 프로그램으로서 포함될 수 있다.
TSM(354)은 탐색 질의에 대한 비-트러스트 탐색 결과들과는 구별하여 디스플레이되는 트러스트 탐색 결과들을 선택적으로 디스플레이하기 위해 탐색 질의들에 대한 질의-분류를 사용함으로써 탐색 질의 및 탐색 결과들의 디스플레이를 관리하도록 구성된다. TSM(354)은 하나 이상의 질의 클래스들로 탐색 질의를 분류할 수 있다. 탐색은 이후 비-트러스트 소스들 상에서, 그리고 선택적으로 트러스트 데이터 소스들 상에서 수행되어, 비-트러스트 및 트러스트 탐색 결과들을 각각 획득한다. 트러스트 탐색 결과들은, 예를 들어, 명시적 및 묵시적 관계들, 또는 접속들을 포함하는 탐색 기준의 다양한 카테고리들에 기초하여 TSM(354)에 의해 랭크 순위화된다. 탐색 질의에 대한 질의-클래스(들)에 기초하여, 결정된 수의 트러스트 탐색 결과들이 디스플레이될 수 있다. 또한, 트러스트 탐색 결과들이 디스플레이될 수 있는 결정된 위치는 질의-클래스(들)에 기초할 수 있다. 또한, 비-트러스트 탐색 결과들은 탐색 결과들의 데이터 소스 타입을 용이하게 구별하기 위해 트러스트 탐색 결과들과는 구별하여 또는 별개로 디스플레이된다.
일 실시예에서, TSM(354)은 다양한 소셜 네트워킹 사이트들 및/또는 다른 소셜 네트워킹 데이터 소스들에 대해, 사용자에 대한 다양한 로그인 사용자명/패스워드들, 크리덴셜들 등을 수신할 수 있다. 일 실시예에서, TSM(354)은, 사용자에 대한 사용자 프로파일, 사용자의 온라인 소셜 행동들의 분석, 사용자로/로부터 전달되는 메시지들 등에 기초하여, 어느 소셜 네트워킹 사이트들이 사용자와 연관되는지를 결정할 수 있다. 소셜 네트워킹 사이트들 및 다른 소셜 네트워킹 데이터 소스들은 또한 사용자와 연관된 다양한 친구 목록들, 주소록들 등에 기초하여 결정될 수 있다.
어느 경우에서든, TSM(354)은 크리덴셜들, 사용자명/패스워드들 및 사용자에 대한 다양한 소셜 네트워킹 데이터 소스들과의 다른 액세스 정보 등을 데이터 저장소들(352) 내에 저장할 수 있다. 일부 기준들에 기초하여, TSM(354)은 사용자의 친구들에 대한 프로파일들, 활동 스트림들 등을 위해 사용자의 소셜 네트워크들, 데이터 소스들 등에 대한 다양한 탐색들을 수행할 수 있다. TSM(354)은 이러한 프로파일들, 액티비티 스트림들, 및/또는 사용자에 대한 데이터 저장소들(352) 내의 다른 소셜 네트워킹 데이터를 저장할 수 있다. 이러한 저장된 결과들은 소셜 네트워킹 데이터 소스들, 트러스트 데이터 소스들 등으로 명명될 수 있다. 일 실시예에서, 저장된 결과들은 클럽, 소셜 네트워킹 사이트, 멤버, 친구, 가족 멤버 등과 같은 데이터의 소스를 표시하는 다양한 정보를 포함한다. 일 실시예에서, 데이터는 타임 스탬프 등을 더 포함한다. 일 실시예에서, 결과들은 액세스가능하고 그리고/또는 그렇지 않은 경우 탐색가능하도록 추가로 조직될 수 있다.
TSM(354)이, 탐색 쿼리가 탐색 사용자로부터 수신됨을 결정하는 경우, TSM(354)은 복수의 상이한 질의-클래스들로부터 적어도 하나의 질의-클래스로 탐색 질의를 분류할 수 있다. TSM은 복수의 비-트러스트 탐색 결과들을 획득하기 위해 복수의 비-트러스트 데이터 소스들 상에서 탐색 질의를 사용하여 탐색을 수행할 수 있고, 트러스트 탐색 결과들을 획득하기 위해 사용자에 대해 위에서 결정된 복수의 트러스트 데이터 소스들 상에서 탐색 질의를 사용하여 또다른 탐색을 추가로 선택적으로 수행할 수 있다. TSM(354)은, 탐색 질의에 대한 적어도 하나의 질의-클래스에 기초하여, 복수의 트러스트 탐색 결과들을 선택적으로 디스플레이하기 위한 위치 및 수를 결정할 수 있다. TSM(354)은 복수의 비-트러스트 탐색 결과들의 디스플레이와는 구별하여 복수의 트러스트 탐색 결과들을 추가로 선택적으로 디스플레이할 수 있고, 여기서, 선택적으로 디스플레이되는 복수의 트러스트 탐색 결과들은 트러스트되는 소셜 네트워킹 소스 내의 각각의 트러스트 탐색 결과의 소스를 표시하는 정보를 포함한다. TSM(354)은 자신의 동작들 중 적어도 일부를 수행하기 위해 도 4-6에 대해 하기에 추가로 기술되는 바와 같은 프로세스들을 사용할 수 있다.
TSM(354)이 다양한 데이터 소스들 상에서 다양한 탐색들을 수행할 수 있지만, 이러한 동작들은 또한 또다른 컴포넌트, 예를 들어, 탐색 엔진 등(미도시)에 의해 수행될 수 있다는 점이 이해되어야 한다. 따라서, TSM(354)을 포함하는 네트워크 디바이스(300)의 구성은 제한으로서 해석되지 않을 것이며, 다른 배열들, 컴포넌트들 및/또는 네트워크 디바이스들이 TSM(354)의 동작들 중 적어도 일부를 수행하기 위해 사용될 수 있다. 예를 들어, 주지된 바와 같이, TSM(354)은 탐색 질의의 분석을 수행하고, 하나 이상의 탐색 엔진들에 탐색 질의를 송신하고 - 여기서, 각각의 탐색 엔진은 상이한 데이터 소스들을 탐색할 수 있음 -, 탐색 결과들을 수신하고, 탐색 요청자들의 클라이언트 디바이스에 디스플레이하기 위해 탐색 결과들을 제공할 수 있다.
일반화된 동작
본 발명의 특정 양상들의 동작은 이제 도 4-6에 대해 설명될 것이다. 또한, 도 7은 비-트러스트 탐색 질의 결과들과는 구별하여 트러스트 탐색 결과들을 도시하는 탐색 질의 결과들의 스크린 디스플레이의 한가지 비-제한적이고 총망라하는 것은 아닌 예를 제공한다. 이러한 예는 본 개시내용 내에 추가로 설명되는 다양한 양상들을 예시하기 위해 사용될 수 있다.
도 4는 질의-클래스에 기초하여 비-트러스트 탐색 결과와는 구별하여 디스플레이되는 트러스트 탐색 결과들을 선택적으로 포함하는 탐색 결과들을 수행 및 디스플레이하는 개략적 프로세스의 일 실시예를 일반적으로 도시하는 논리 흐름도를 예시한다. 도 4의 프로세스(400)는 예를 들어, 도 3의 네트워크 디바이스(300) 내에서 수행될 수 있다.
프로세스(400)는, 시작 블록 이후에, 탐색 질의가 클라이언트 디바이스로부터 수신되는 블록(402)에서 시작한다. 일 실시예에서, 또한, 탐색 질의와 연관된 사용자를 표시하는 데 유용한 다양한 정보가 수신될 수 있다. 이러한 다양한 정보는 사용자 식별자, 이후 유사한 사용자를 식별하는 데 유용한 클라이언트 디바이스 식별자 등을 포함하지만 이에 제한되지 않을 수 있다.
프로세싱은, 하나 이상의 질의-클래스들로 탐색 질의를 분류하기 위해 탐색 질의가 분석되는 블록(404)으로 계속한다. 다양한 메커니즘들은 탐색 질의를 분류하기 위해 사용될 수 있고, 따라서, 프로세스는 특정 메커니즘에 제한되지 않는다. 예를 들어, 일 실시예에서, 탐색 질의로부터의 키워드들은 하나 이상의 정의된 질의-클래스들과 연관된 키워드들을 매치시키기 위해 추출 및 사용될 수 있다. 그러나, 통상적인 탐색 질의들이 짧으므로, 이러한 메커니즘은 불충분한 분류들을 초래할 수 있다. 그러므로, 다른 메커니즘들이 또한 키워드 추출들 대신 사용 또는 채용될 수 있다. 예를 들어, 다양한 질의-강화(enrichment) 기반 메커니즘들이 사용될 수 있으며, 다양한 탐색 엔진들을 통한 수집 또는 텍스트 문서들을 이용하여 탐색 질의를 강화함으로써 시작할 수 있다. 즉, 탐색 질의는 다양한 탐색들로부터 초래되는 페이지들의 작은 정보(snippet)들을 포함하는 의사-문서에 의해 표현될 수 있다. 의사-문서는 이후, 예를 들어, Naive Bayes 메커니즘, SVM(Support Vector Machine) 등을 포함하는, 유사어 기반 분류자, 통계 분류자들 등을 사용하여 정의된 질의-클래스들 중 하나 이상으로 분류될 수 있다.
예를 들어, 질의-클러스터링 메커니즘들을 포함하는 다른 분류 메커니즘들이 또한 사용될 수 있다. 예를 들어, 사용자의 이전 탐색 행동들의 로그들은 사용자들이 클릭한 주어진 탐색 질의에 대한 탐색 결과들을 식별하기 위해 레코딩 및 분석될 수 있다. 즉, 사용자의 이전 활동들로부터의 클릭률 정보 및 다수의 질의들을 포함하는 이전 탐색 데이터를 클러스터링함으로써 관련 질의들을 연관시키기 위한 시도가 이루어질 수 있다. 일 실시예에서, 질의 클러스터링 메커니즘은 하나 이상의 질의 클래스들로 탐색 질의를 분류하기 위해 키워드 메커니즘과 결합될 수 있다.
어느 경우에서든, 프로세싱은 다음 결정 블록(406)으로 진행하며, 여기서, 하나 이상의 질의 클래스들로의 분류들은 트러스트 데이터 소스들 상에서의 탐색을 수행(예를 들어, 위에서 주지된 바와 같이, 사용자에 의해 트러스트되는 것으로서 식별되는 다양한 소셜 네트워킹 데이터 소스들을 탐색)할지의 여부를 결정하기 위해 사용된다. 일부 탐색 질의들이 이러한 소셜 네트워킹 데이터 탐색 결과들로부터 이익을 가지는 반면, 다른 탐색 질의들은 훨씬 더 적은 이익을 가질 수 있다는 점이 인지된다. 따라서, 순수한 사실 타입의 탐색 질의들로서 분류될 수 있는 탐색 질의들은 예를 들어, 리뷰들을 찾고, 의견들을 찾고, 활동 지향 정보를 찾는 등의 탐색 질의와 같은 소셜 입력을 찾는 탐색 질의들보다는, 소셜 네트워킹 데이터 소스 탐색 결과들로부터 더 적은 이익을 가질 수 있다. 따라서, 하나 이상의 질의-클래스들은 소셜 탐색 질의들과 연관될 수 있는 반면, 다른 질의-클래스들은 비-소셜 탐색 질의들과 연관될 수 있다. 비-제한적이고 총망라하는 것은 아닌 예로서, 그리고 위에서 주지된 바와 같이, 사실 탐색 질의들은 소셜 지향적이지 않을 수 있는 반면, 활동, 의견 및 리뷰 기반 탐색 질의들은 소셜 지향 질의-클래스들로서 간주될 수 있다. 따라서, 결정 블록(406)에서, 탐색 질의가 분류되는 질의-클래스들은 질의-클래스들 중 적어도 하나가 소셜 지향 질의-클래스로서 간주되는지의 여부를 결정하기 위해 검사된다. 만약 그러하다면, 프로세싱은 블록(408)으로 진행하고, 그렇지 않은 경우, 프로세싱은 블록(410)으로 진행한다.
블록(408)에서, 탐색 질의를 사용하는 탐색이 사용자가 트러스트 탐색 결과를 결정하기 위해 식별되는 복수의 트러스트 데이터 소스들 상에서 수행된다. 프로세싱은 이후 블록(410)으로 진행하고, 여기서, 탐색 질의를 사용하는 또다른 탐색이 복수의 비-트러스트 데이터 소스들 상에서 수행된다. 이러한 비-트러스트 데이터 소스들은 사유 데이터베이스들, (사용자에 대한) 다양한 비-트러스트 웹 사이트들 등을 포함할 수 있다. 일 실시예에서, 이러한 비-트러스트 데이터 소스들은 이 사용자에게 있어서 트러스트 데이터 소스가 아니도록 결정되는 인터넷 상에서 액세스가능한 가상의 임의의 웹사이트를 포함할 수 있다.
프로세싱은 다음으로, 이러한 탐색 질의에 대해 획득된 트러스트 탐색 결과들이 존재하는지의 여부에 대한 또다른 결정이 이루어지는 결정 블록(412)으로 계속된다. 만약 그러하다면, 프로세싱은 블록(414)으로 진행하며, 그렇지 않은 경우, 프로세싱은 블록(420)으로 계속된다.
블록(414)에서, 트러스트 탐색 결과들이 랭크 순위화될 수 있다. 일 실시예에서, 트러스트 탐색 결과들은 트러스트 탐색 결과들이 획득된 카테고리에 기초하여 조직될 수 있다. 예를 들어, 트러스트 탐색 결과들은 전술된 바와 같이, 명시적 접속들, 묵시적 접속들 및/또는 확장된 묵시적 접속들로부터 획득될 수 있다. 따라서, 일 실시예에서, 트러스트 탐색 결과들은 이들 또는 다른 카테고리들에 기초하여 조직될 수 있다. 일 실시예에서, 트러스트 탐색 결과들은 이후 이들의 개별 카테고리에 기초하여 가중될 수 있다. 예를 들어, 명시적 카테고리 내의 트러스트 탐색 결과들은 묵시적 카테고리 내의 트러스트 탐색 결과들보다 수치상으로 더 높게 가중될 수 있고, 추가적인 묵시적으로 카테고리화된 트러스트 탐색 결과들은 확장된 묵시적 카테고리 내의 트러스트 탐색 결과들보다 수치상으로 더 높게 가중될 수 있다.
가중된 결과들은 업데이트들의 수, 또는 특정 데이터 소스와 연관된 결과들에 기초하여 추가로 가중될 수 있다. 예를 들어, 일 실시예에서, 미리 정의된 수의 트러스트 탐색 결과들이 특정 소스, 예를 들어, 가족 멤버, 동료 등으로부터 사용될 수 있다. 예를 들어, 일 실시예에서, 특정 가족 멤버로부터의 1000개의 업데이트 결과들이 사용될 수 있는 반면, 동일한 특정 가족 멤버로부터의 임의의 추가적인 결과들은 폐기될 수 있다. 이러한 방식으로, '시간 의존적'이지 않은 탐색 결과들이 사용될 수 있다. 그러나, 또다른 실시예에서, 탐색 결과들은 이전의 정의된 시간 기간 내에 특정 데이터 소스에 의해 포스팅된 해당 탐색 결과들만을 보유하는 것과 같이, 시간 제약에 기초하여 한정되거나 그렇지 않은 경우 제한될 수 있다. 따라서, 본 발명은 트러스트 탐색 결과들을 관리, 분류 및/또는 가중하기 위한 특정 메커니즘으로 제한되지 않는다. 어느 경우에서든, 가중된 그리고/또는 제한된 트러스트 탐색 결과들은 이후 가중에 기초하여 랭크 순위화될 수 있다.
프로세싱은 이후 얼마나 많은 트러스트 탐색 결과들이 디스플레이될지, 그리고 비-트러스트 탐색 결과들에 대하여 트러스트 탐색 결과들을 어디에 디스플레이할지를 결정하는 데 사용하기 위한 수 및 위치가 결정되는 블록으로 진행한다. 도 6과 관련하여 하기에 추가로 설명되는 바와 같이, 각각의 질의-클래스는 트러스트 탐색 결과들을 디스플레이하기 위한 결정된 '최적'의 수 및 위치를 가진다. 그러나, 탐색 질의가 복수의 상이한 질의 클래스들로 분류되는 경우, 트러스트 탐색 결과들은 이후 트러스트 탐색 결과들이 연관될 수 있는 상이한 수들 및 위치들을 가질 수 있다. 몇몇 메커니즘들이 이러한 이슈를 해결하기 위해 사용될 수 있다. 예를 들어, 일 실시예에서, 가능한 수들 및 위치들 중 가장 큰 수 및 가장 높은 위치가, 탐색 질의가 분류되는 질의-클래스들에 대해 선택될 수 있다. 다른 방식들이 또한 사용될 수 있다. 따라서, 본 발명은 특정 메커니즘에 제한되지 않는다. 어느 경우에서든, 트러스트 탐색 결과들에 대한 수 및 위치가 결정된다.
프로세싱은 다음으로, 블록(418)에서 계속되며, 여기서 랭크 순위화된 트러스트 탐색 결과들의 결정된 수가 이후 비-트러스트 탐색 결과들에 대해 결정된 위치에서, 클라이언트 디바이스에서 디스플레이될 수 있다. 따라서, 일 실시예에서, 블록(418)이 하기에 논의되는 블록(422)과 구별하여 예시하지만, 본 발명이 그렇게 제한되지 않는다. 예를 들어, 블록(418 및 422)은 일 실시예에서, 동시에 수행될 수 있다.
어느 경우에서든, 프로세싱은 블록(420)으로 진행하고, 여기서, 비-트러스트 데이터 소스들로부터의 비-트러스트 탐색 결과들이 또한, 예를 들어, 탐색 질의의 키워드들에 대한 다수의 키워드 매치들, 시간 관계, 사용자에 대한 비-트러스트 탐색 결과와 연관된 위치에 기초한 관계 등을 포함하는, 다양한 기준들에 기초하여 랭크 순위화될 수 있다. 이후, 프로세싱은 블록(422)으로 진행하며, 여기서, 랭크 순위화된 비-트러스트 탐색 결과들(및 트러스트 탐색 결과들)이 탐색 사용자에 대한 클라이언트 디바이스에 디스플레이된다. 이러한 디스플레이의 한가지 비-제한적 예는 도 7에 관련하여 하기에 추가로 기술된다. 프로세싱은 이후 다른 동작들을 수행하기 위해 호출 프로세스로 돌아간다.
도 5는 사용자에 대한 소셜 네트워크 사이트들로부터의 트러스트 컨텐츠를 관리하는 개략적 프로세스의 일 실시예를 일반적으로 도시하는 논리 흐름도를 예시한다. 일 실시예에서, 도 5의 프로세스(500)의 결과들은 예를 들어, 도 4의 블록(408) 동안 이후 후속적으로 탐색될 수 있는 매 사용자 기반으로 트러스트 데이터 저장소들을 생성하기 위해 사용될 수 있다. 따라서, 프로세스(500)는 예를 들어, 도 3의 네트워크 디바이스(300) 내에서 구현될 수 있다.
프로세스(500)는 시작 블록 이후에 블록(502)에서 시작하며, 여기서, 소셜 네트워킹 사이트들, 활동 스트림들 등이 사용자에 대해 결정된다. 일 실시예에서, 소셜 네트워킹 사이트들의 디폴트 세트가 사용될 수 있다. 예를 들어, 일 실시예에서, 디폴트 세트는 Twitter, Facebook, LinkedIn 등을 포함할 수 있지만, 이에 제한되지 않는다. 그러나, 또다른 실시예에서, 사용자는 탐색들을 수행하기 위해 사용되는 선호되는 소셜 네트워킹 사이트들, 활동들 등의 리스트를 제공할 수 있다. 또다른 실시예에서, 온라인 활동들, 주소록들, 친구 목록들, 캘린더들, 사용자 프로파일들, 사용자 모바일 디바이스의 위치에 기초하여 검출된 활동들 등은 또한 사용자에 대한 소셜 네트워킹 사이트들의 세트 등을 결정하기 위해 모니터링 및 분석될 수 있다.
어느 경우에서든, 프로세싱 흐름은 다음으로 블록(504)으로 진행하고, 여기서 다양한 크리덴셜들, 사용자명/패스워드들, 및 다른 로그인 액세스 정보가 다양한 소셜 네트워킹 사이트들 등을 크롤링(crawl)할 시에 사용하기 위해 획득될 수 있다. 프로세싱은 이후, 블록(506)으로 진행하며, 여기서, 소셜 네트워킹 사이트들의 세트는 다양한 소셜 네트워킹 활동들, 프로파일들, 친구들의 프로파일들, 활동 스트림들 등에 대한 탐색 시에 로그인 액세스 정보를 사용하여 크롤링될 수 있다. 예를 들어, Twitter에 대해, 메시지 스레드들, 블로그 정보, 포스팅들 등을 포함하는, 친구들의 프로파일들, 활동 스트림들을 획득하기 위해 사용될 수 있는 직접 API가 사용가능해질 수 있다. Facebook, LinkedIn 등에 대해, 브라우저 동작은, 예를 들어, 다양한 사이트들, 활동들 등을 크롤링하도록 서식을 채우기 위한(form-filling) HTTPUnit 라이브러리 등을 사용하여 시뮬레이팅될 수 있다.
블록(508)으로 진행하면, 크롤링 활동들로부터, 다양한 페이지들, 프로파일들, 활동 스트림 정보 등은 예를 들어, 크롤링된 컨텐츠 내에서 특정 HTML 태그들, 키워드들 등을 검사함으로써 추출될 수 있다. 그러나, 다른 메커니즘들이 또한 컨텐츠의 상황, 및 다른 소셜 정보를 결정하기 위해 컨텐츠를 검사하는 데 사용될 수 있다는 점이 이해되어야 한다. 일 실시예에서, 수집되고 그리고/또는 복수의 트러스트 데이터 저장소들에 블록(510) 동안 후속적으로 저장될 수 있는 정보의 양은 주어진 데이터 소스에 대한 데이터의 양, 데이터와 연관된 타임 스탬프 등을 포함하지만 이에 제한되지 않는 다양한 기준들에 기초할 수 있다. 예를 들어, 일 실시예에서, 개인에 의해 생성되는 최근 1000개의 업데이트들은 트러스트 데이터 저장소에 수집되고, 분석되고, 저장될 수 있다. 다른 수량들이 또한 수집되고, 분석되고 저장될 수 있다. 또다른 실시예에서, 시간, 일, 주 등과 같은 정의된 시간 기간보다 더 오래되지 않은 업데이트들이 사용될 수 있다. 어느 경우에서든, 블록(510)에서, 수집된 그리고/또는 분석된 데이터가 데이터 소스, 시간 스탬프, 키워드들, 또는 다른 조직화 메커니즘에 기초하여 복수의 트러스트 데이터 저장소들 내에 저장될 수 있다. 일 실시예에서, 저장된 데이터는 매 사용자 기반이다. 프로세싱은 이후 결정 블록(512)으로 진행하고, 여기서, 사용자에 대한 더 많은 소셜 네트워킹 데이터를 계속 수집할지의 여부에 대한 결정이 이루어진다. 일 실시예에서, 데이터 수집이 예를 들어, 매시간, 매일, 매주, 매달 등과 같은 시간 기간에 기초할 수 있다. 또다른 실시예에서, 데이터 수집은 일부 다른 기준에 기초할 수 있다. 예를 들어, 사용자가 임계를 초과하는 다수의 탐색들을 수행한다고 결정되는 경우, 탐색들이 현재 소셜 네트워킹 데이터로부터 이익을 얻을 수 있는 경우, 프로세스(500)는 더 빈번하게 수행될 수 있다. 일 실시예에서, 일부 다른 임계를 초과하는 메시지들의 송신, 컨텐츠의 포스팅 시 등에 사용자에 대한 다양한 데이터 소스들이 매우 활성인 것으로 결정되는 경우, 프로세스(500)는 또한 더 빈번하게 수행될 수 있다. 따라서, 얼마나 자주 데이터 수집이 수행되는지는 특정 디폴트로 세팅되고 그리고/또는 특정 기준에 기초하여 수정될 수 있다. 어느 경우에서든, 더 많은 소셜 네트워킹 데이터가 획득될 것이라고 결정되는 경우, 프로세싱은 블록(502)으로 루프백한다. 일 실시예에서, 트러스트 데이터 저장소들은 또한 데이터를 에이징(aging)하기 위해 페이즈 아웃 메커니즘을 포함할 수 있다는 점에 유의해야 한다. 즉, 특정 시간 기간 이전에 수집되는 소셜 네트워킹 데이터는 에이징될 수 있거나 그렇지 않은 경우, 오래된(out of date) 것으로 간주됨에 따라 페이즈아웃될 수 있고, 따라서, 사용자와 덜 관련될 수 있다. 다양한 에이징 또는 페이즈 아웃 메커니즘들이 사용될 수 있고, 따라서, 본 발명은 특정 메커니즘으로 제한되지 않는다. 어느 경우에서든, 소셜 네트워킹 데이터가 더 이상 획득되지 않을 것이라고 결정되는 경우, 프로세스(500)는 다른 동작들을 수행하기 위해 호출 프로세스로 되돌아갈 수 있다.
도 6은 비-트러스트 탐색 질의 결과들과는 구별하여 탐색 질의로부터의 트러스트 탐색 결과들을 선택적으로 디스플레이하기 위한 질의-클래스들 및 연관된 수들 및 위치들을 결정하는 개략적 프로세스의 일 실시예를 일반적으로 도시하는 논리 흐름도를 예시한다. 도 6의 프로세스(600)는, 일 실시예에서, 도 3의 네트워크 디바이스(300) 내에서 구현될 수 있다.
위에 주지된 바와 같이, 소셜 네트워킹 탐색 결과들이 다른 비-소셜 네트워킹 탐색 결과들보다 탐색 사용자에 더 적은 관심 및 이익을 제공할 수 있는, 몇몇 타입들의 질의들이 존재한다. 예를 들어, "캘리포니아의 수도는 어디인가?", 또는 "타겟 Sunnyvale 주소?", 또는 "중국의 인구는 얼마인가?" 등과 같은 사실 질의들에 대해, 탐색 사용자는 소셜 네트워킹 탐색 결과들을 보기를 원하지 않을 수 있다. 이는 단순히, 탐색 사용자가 실제로 사용자의 소셜 네트워크에 기초하여 통상적으로 변하지 않는 정보를 찾고 있을 수 있기 때문이다. 따라서, 이들 타입들의 질의들에 대한 소셜 네트워킹 또는 트러스트 탐색 결과들을 제공하는 것은 실제로, 탐색 사용자에게 더 적은 가치를 제공하거나, 심지어 불만족을 초래할 수 있다. 그러나, 다른 타입들의 질의들에 대해, 소셜 네트워킹 탐색 결과들은 탐색 사용자에게 더 많은 관련성을 제공하는 것으로 결정될 수 있다. 예를 들어, "영화 X에 대해 말해 주시오?"와 같은 리뷰 질의들, 또는 제품 리뷰들 등에 대해서는, 소셜 네트워킹 탐색 결과들로부터 이익을 얻을 수 있다. 유사하게, 활동 질의들이 또한 소셜 네트워킹 탐색 결과들로부터 이익을 가질 수 있다. 활동 질의들의 예들은, "주말", "Tahoe에서의 스키타기", "산악 바이킹" 등을 포함할 수 있다. 따라서, 소셜 네트워킹 탐색 결과들을 제공할지의 여부 및/또는 얼마나 많이 제공할지는 질의의 분류 또는 타입에 기초할 수 있다.
따라서, 프로세스(600)는 주어진 질의-클래스에 기초하여 도시될 수 있는 다수의 소셜 네트워킹 결과들을 결정하는 것에 관한 것이다. 더욱이, 일부 소셜 네트워킹 결과들이 다른 비-트러스트 탐색 결과들보다 특정 질의-클래스에 있어서 더 많은 관련이 주어질 수 있으므로, 비-트러스트 탐색 결과들에 대해 웹 페이지 상에서 어디에 트러스트 탐색 결과들이 디스플레이될지가 또한 프로세스(600)에 의해 결정된다.
따라서, 프로세스(600)는, 시작 블록 이후에 블록(602)에서 시작하며, 여기서, 트러스트 결과들을 디스플레이하기 위한 디폴트 위치 및 트러스트 결과들의 디폴트 수가 설정된다. 일 실시예에서, 디폴트들은 질의-클래스에 실질적으로 무관하게 설정될 수 있다. 따라서, 예를 들어, 임의의 질의-클래스에 대해, 즉 트러스트 탐색 결과들이 (예를 들어, 사실 질의 클래스들을 제외하고) 디스플레이될 것이라고 판정되면, 최대 수인 2-4개 트러스트 탐색 결과들이 디폴트로 디스플레이될 수 있다. 그러나, 다른 값들이 또한 선택될 수 있다. 일 실시예에서, 트러스트 탐색 결과들의 위치는 웹 페이지에 대한 탐색 결과들의 제1 페이지 상에 디스플레이될 제1 탐색 결과들로서 디폴트로 설정될 수 있다. 따라서, 디폴트인 2-4개 트러스트 탐색 결과들이 비-트러스트 탐색 결과들에 선행하여 먼저 디스플레이될 수 있다.
또한, 일 실시예에서, 트러스트 탐색 결과들은 사용자에 대한 트러스트 데이터 소스들로부터 온 것으로서 구별가능하게 그리고 고유하게 식별될 수 있다. 결과들 주위에 박스를 두는 것, 트러스트 탐색 결과들을 고유하게 라벨링하는 것, 상이한 컬러, 폰트 사이즈, 폰트 타입을 사용하는 것, 트러스트 데이터 소스 아이콘을 제공하는 것 등을 포함하지만 이에 제한되지 않는 다양한 메커니즘들이 트러스트 탐색 결과들을 구별가능하게 그리고 고유하게 식별하기 위해 사용될 수 있다. 도 7에 도시된 바와 같은 하나의 비-제한적 예에서, 트러스트 데이터 소스 아이콘들(720-722, 및 730-731)은 예시된 탐색 결과들이 트러스트 탐색 결과들임을 고유하게 구별하고 고유하게 식별하고, 또한 이들의 트러스트 데이터 소스들을 식별하도록 예시된다. 알 수 있는 바와 같이, 도 7의 비-트러스트 탐색 결과들(708)은 이러한 트러스트 데이터 소스 아이콘들을 포함하지 않는다.
어느 경우에서든, 프로세서(600)로 돌아가면, 블록(604)에서, 복수의 질의 클래스들이 결정된다. 복수의 질의-클래스들의 결정은 복수의 온라인 행위들의 통계적 분석, 다양한 사전적 분석 메커니즘들 등을 포함하는 다양한 메커니즘들 중 임의의 것을 사용하여 달성될 수 있다. 일 실시예에서, 질의-클래스들 각각은 사실, 리뷰 기반, 및 활동 기반 예들에 대해 전술된 바와 같이, 적어도 비-트러스트 기반 질의-클래스 또는 트러스트 기반 질의-클래스인 것으로서 추가로 식별된다.
블록(602)이 트러스트 기반 질의-클래스 탐색들에 대한 디폴트 수들 및 위치들을 식별하였지만, 본 발명이 복수의 질의-클래스들을 결정하기 전에 이러한 동작들을 수행하는 것에 제한되지 않는다는 점에 유의해야 한다. 예를 들어, 디폴트 수 및 위치들이 블록(604) 동안 추가로 정제될 수 있다. 예를 들어, 블록(604)에서, 비-트러스트 기반 질의-클래스들, 수 및 위치가 둘 다 제로로 설정될 수 있다. 리뷰 질의-클래스에 대해, 디폴트 수가 3-7로 설정될 수 있지만, 활동 기반 질의-클래스들은 3-5 등으로 설정된 디폴트 수를 가질 수 있다. 유사하게, 리뷰 질의-클래스에 대해 디폴트 위치는, 트러스트 탐색 결과들이 비-트러스트 탐색 결과들 위에 또는 그 위에 예시됨을 반영하는, 제로(또는 1)일 수 있다. 다른 질의-클래스들에 대해, 디폴트를, 웹 페이지의 중간에 트러스트 탐색 결과들을 디스플레이하기 위한 4로, 비-트러스트 탐색 결과들 사이로, 또는 심지어 탐색 결과들의 제1 페이지의 최하부에 트러스트 탐색 결과들을 위치시키는 11 등과 같은 위치로 설정하는 것을 포함하여, 상이한 위치들이 사용될 수 있다. 다른 값들이 또한 선택될 수 있다. 또한, 오직 활동 및 리뷰-기반 질의 클래스들만이 여기서 논의되지만, 본 발명이 단지 이들 질의-클래스들에 제한되지 않으며, 다른 것들이 또한 사용될 수 있다는 점에 유의해야 한다.
어느 경우에서든, 프로세싱은 이후 블록(606)으로 진행하며, 여기서, 결정된 질의-클래스들 각각에 대한 복수의 사용자 피드백에 기초하여, 트러스트 탐색 결과들을 디스플레이하기 위한 최적의 수 및 위치가 무엇인지를 결정하기 위해 분석이 수행된다. 여기서 사용되는 바와 같이, 용어 "최적"은 하기에 설명되는 바와 같이, 주어진 테스트 또는 테스트들을 만족시키는 출력을 참조한다.
따라서, 각각의 질의-클래스에 대해, 다양한 트러스트 및 비-트러스트 탐색 결과들이 복수의 상이한 탐색 사용자들에게 디스플레이된다. 이후, 디스플레이되는 트러스트 및 비-트러스트 탐색 결과들에 대한 다양한 클릭율들을 결정하기 위해 모니터링이 수행된다. 블록(608)에서, 추적되는 클릭율들이 취합되고, 블록(610)에서, 각각의 질의-클래스에 대한 취합된 레이트들은 수 및 위치를 계산하기 위해 사용된다. 결정 블록(612)에 계속하여, 최적 수 및 위치가 결정되는지의 여부에 기초하여 분석을 계속할지에 대한 결정이 이루어진다. 최적 수 및 위치가 결정되지 않는 경우, 프로세싱은 블록(614)으로 루프실행(loop)하며, 여기서, 수 및/또는 위치 값이 조정될 수 있다. 프로세싱은 이후, 분석을 위한 클릭율들을 계속 수집하기 위해 블록(606)으로 루프백한다. 결정 블록(612)에서, 최적 수 및 위치가 결정되는 경우, 프로세싱은 결정 블록(616)으로 진행한다.
결정 블록(616)에서, 질의-클래스에 대한 수 및 위치를 업데이트할지의 여부에 대한 결정이 이루어진다. 만약 그렇다면, 프로세싱은 블록(606)으로 루프백하고, 그렇지 않은 경우, 프로세싱은 결정 블록(618)으로 진행한다.
결정 블록(618)에서, 결정된 복수의 질의 클래스들을 수정할지의 여부에 대한 결정이 이루어진다. 이러한 결정은, 기존의 질의-클래스들의 추가적인 분석, 사용자 피드백 등을 포함한 다양한 기준들에 기초할 수 있다. 임의의 경우에서, 결정된 복수의 질의-클래스들이 업데이트될 경우, 프로세싱은 604로 루프백하고, 그렇지 않은 경우, 다른 동작들을 수행하기 위해 프로세싱은 호출 프로세스로 되돌아간다.
전술된 바와 같이, 프로세스(600)는 질의-클래스에 대한 수 및 위치 모두를 결정하기 위해 동시에 수행될 수 있다. 그러나, 또다른 실시예에서, 프로세스(600)는 예를 들어, 질의-클래스에 대한 트러스트 탐색 결과들의 수를 결정하기 위해 먼저 루프실행하고, 이후 질의-클래스에 대한 위치를 결정하기 위해 다시 루프실행할 수 있다. 따라서, 예를 들어, 후속내용은 프로세스(600)에 대한 정제, 및 특정 블록들(606, 608, 610, 612, 및 614)에서의 정제를 나타낸다.
또다른 실시예에서, 위치가 먼저 결정될 수 있다. 우선, 디스플레이는 위치 N과 같은 고정 위치에서 주어진 질의 클래스에 대해 오직 하나의 트러스트 탐색 결과만을 보여줄 수 있다. 일 실시예에서, N은, 예를 들어, 탐색 결과들의 웹 페이지의 중간에 트러스트 탐색 결과들을 디스플레이하기 위한 4일 수 있다.
이후, 추적된 클릭율들에 기초하여 위치 N+1에서의 탐색 결과가 위치 N에서의 트러스트 탐색 결과보다 더 많은 클릭들을 수신한다고 결정되는 경우, 사용자들이 트러스트 탐색 결과의 위치보다 위치 N+1에 더 많은 가치를 부여한다는 것이 결정될 수 있다. 따라서, 트러스트 탐색 결과의 위치는, 페이지 디스플레이에서 트러스트 탐색 결과를 한 위치만큼 아래로 이동시키도록 수정된다(블록614). 이제, 트러스트 탐색 결과는 위치 N+1에 디스플레이된다. 블록들(606, 608, 및 610)을 통해 루프백하면, N+1 위치에서의 트러스트 탐색 결과의, 위치들 N+2에서 비-트러스트 탐색 결과의 등의 식으로 추가적인 클릭율들이 획득될 수 있다. 일 실시예에서, 분석은, 위치 N+2에서의 클릭율들이 위치 N+1에서 디스플레이된 트러스트 탐색 결과에 대한 클릭율보다 더 큰 경우, 트러스트 탐색 결과들이 추가로 밀려 내려갈 수 있음을 표시할 수 있다.
반면, 위치 N-1에서의 비-트러스트 탐색 결과가 위치 N에서의 트러스트 탐색 결과보다 더 낮은 클릭율을 갖는 것으로 결정되는 경우, 트러스트 탐색 결과가 사용자에 있어서 더 가치있으며, 웹 페이지 상에 디스플레이되는 위치에서 위로 예컨대, 위치 N-1로 이동되어야 함이 결정될 수 있다. 클릭율들에 대한 위의 수정들 및 추적은, 위치 K-1에서의 비-트러스트 탐색 결과들에 대한 클릭율들은 위치 K에서의 트러스트 탐색 결과의 클릭율보다 더 크고, 이어서, 위치 K에서의 트러스트 탐색 결과의 클릭율은 위치 K+1에서의 비-트러스트 탐색 결과에 대한 클릭율보다 더 크도록 위치 K가 트러스트 탐색 결과에 대해 결정되는 결정 블록(612)에서 결정될 때까지 복수의 루프들 상에서 수행될 수 있다. 그러한 경우, 프로세싱은 이후 결정된 최적 위치 K에서 시작하여 디스플레이될 트러스트 탐색 결과들의 수를 결정하도록 진행할 수 있다.
따라서, 위치 K를 결정한 이후, 프로세스는 N개 트러스트 탐색 결과를 디스플레이함으로써 시작할 수 있다. 일 실시예에서, N은 위에서 결정된 바와 같이, 위치 K에서 시작하여, 다시 3으로 초기에 설정될 수 있다. N에 대한 다른 값들이 또한 선택될 수 있다.
클릭율들이 수집되는 블록(606)으로, 이들이 취합되는 블록(608)으로, 그리고 후속하는 분석이 수행될 수 있는 블록(610)으로 프로세싱이 진행한다. 제N 트러스트 탐색 결과에 대한 클릭율이 다음 위치에서의 탐색 결과의 클릭율보다 더 큰 것으로 결정되는 경우, 다음 위치에서의 다음 탐색 결과보다 제N 트러스트 탐색 결과가 탐색자들에게 더 가치있다고 결정될 수 있다. 따라서, 블록(614)에서, 디스플레이되는 트러스트 탐색 결과들의 수는 N+1로 증가할 수 있다. 제N 트러스트 탐색 결과에 대한 클릭율이 다음 위치에서의 탐색 결과의 클릭율보다 더 작은 경우, 이는 위치 N에서의 트러스트 탐색 결과는 다음 탐색 결과만큼 탐색자들에게 가치있지 않음을 표시할 수 있다. 따라서, 트러스트 탐색 결과들의 수는 N-1로 감소할 수 있다. 다시, 이들 동작들은 위치 N에서의 트러스트 탐색 결과들의 클릭율들이 디스플레이되는 다음 탐색 결과의 클릭율보다 더 크고, 여기서, 트러스트 탐색 결과들의 수가 N+1로 증가하는 경우, 제N+1 트러스트 탐색 결과의 클릭율은 다음 탐색 결과의 클릭율보다 더 작도록 트러스트 탐색 결과들의 수 N이 결정될 때까지 수행될 수 있다. 만약 그렇다면, 트러스트 탐색 결과들의 최적 수는, 주어진 질의-클래스에 대해 N으로서 결정될 수 있다.
다른 메커니즘들이 또한 주어진 질의-클래스에 대한 수 및 위치를 결정하기 위해 사용될 수 있으며, 본 발명이 특정 방식에 제한되지 않는다는 점이 이해되어야 한다.
어느 경우에서든, 결정 블록(616)에서 주지된 바와 같이, 주어진 질의-클래스에 대한 수 및/또는 위치에 대한 업데이트들은, 탐색자 관점에서의 변경들, 소셜 및/또는 다른 이벤트들에서의 변경들 등에 기초하여 값들을 조정하기 위해 주기적으로, 예를 들어, 2달, 2주 등마다 수행될 수 있다.
흐름도 예시의 각각의 블록 및 흐름도 예시 내의 블록들의 조합들이 컴퓨터 프로그램 명령어들에 의해 구현될 수 있다는 점이 이해되어야 한다. 이들 프로그램 명령들은 프로세서에 의해 실행되는 명령어들이 흐름도 블록 또는 블록들에서 특정되는 동작들을 구현하기 위한 수단을 생성하도록 하는 머신을 생산하기 위해 프로세서에 제공될 수 있다. 컴퓨터 프로그램 명령어들은 프로세서 상에서 실행되는 명령어들이 흐름도 블록 또는 블록들에서 특정되는 동작들을 구현하기 위한 단계들을 제공하도록 프로세서에 의해 수행될 일련의 동작 단계들로 하여금 컴퓨터-구현 프로세스를 생성하게 하기 위해 프로세서에 의해 실행될 수 있다. 컴퓨터 프로그램 명령어들은 또한 흐름도의 블록들에 도시된 동작 단계들 중 적어도 일부로 하여금 병렬로 수행되도록 할 수 있다. 또한, 단계들 중 일부는 하나 초과의 프로세서 상에서 수행될 수 있는데, 이는 예를 들어, 멀티-프로세서 컴퓨터 시스템에서 발생할 수 있다. 추가로, 흐름도 예시에서의 하나 이상의 블록들 또는 블록들의 조합들이 또한, 본 발명의 사상 또는 범위에서 벗어나지 않고 예시된 것과는 다른 블록들 또는 블록들의 조합들과 동시에, 또는 심지어 다른 순서로 수행될 수 있다.
따라서, 흐름도 예시의 블록들은 특정된 동작들을 수행하기 위한 수단들의 조합들, 특정된 동작들을 수행하기 위한 단계들의 조합들 및 특정된 동작들을 수행하기 위한 프로그램 명령 수단들을 지원한다. 또한, 흐름도 예시의 각각의 블록, 및 흐름도 예시의 블록들의 조합이 특정된 동작들 또는 단계들, 또는 특수 목적 하드웨어 및 컴퓨터 명령들의 조합들을 수행하는 특수 목적 하드웨어-기반 시스템들에 의해 구현될 수 있다는 점이 이해될 것이다.
트러스트 탐색 결과들을 가지는 탐색 결과들의 비-제한적 예
도 7은 비-트러스트 탐색 질의 결과들과는 구별하여 트러스트 탐색 결과들을 도시하는 탐색 질의 결과들의 스크린 디스플레이의 하나의 비-제한적이고 총망라하는 것은 아닌 예를 예시한다. 디스플레이(700)는 도 7에 도시된 것보다 더 많거나 더 적은 다수의 컴포넌트들을 포함할 수 있다. 그러나, 도시된 컴포넌트들은 본 발명을 실시하기 위한 예시적인 실시예를 개시하기에 충분하다.
디스플레이(700)에 예시된 바와 같이, 주어진 탐색 질의에 대한 탐색 결과들이 디스플레이된다. 특히, 트러스트 탐색 결과들(702, 704, 및 706)이 위에 디스플레이되고 그리고 비-트러스트 탐색 결과들(708)과는 구별하여 디스플레이된다. 즉, 도 7에 도시된 바와 같이, 트러스트 데이터 소스 아이콘들(720-722 및 730-731)은 예시된 탐색 결과들이 트러스트 탐색 결과들임을 고유하게 구별하고 고유하게 식별하기 위해, 그리고 이들의 트러스트 데이터 소스들을 추가로 식별하기 위해 예시된다. 알 수 있는 바와 같이, 도 7의 비-트러스트 탐색 결과들(708)은 이러한 트러스트 데이터 소스 아이콘들을 포함하지 않는다.
추가로 도시되는 바와 같이, 트러스트 탐색 결과들은 탐색 사용자들에 대한 다양한 명시적인 접속들로부터 획득되는 결과들로서 트러스트 탐색 결과들(702)을 예시한다. 트러스트 탐색 결과들(704)은 탐색 사용자들에 대한 다양한 묵시적 접속들로부터 획득된 결과들을 나타내고, 트러스트 탐색 결과들(706)은 다양한 확장된 묵시적 접속들로부터 획득된 결과들을 나타낸다. 즉, 트러스트 탐색 결과들(706)은 탐색 질의에 관련된 것으로 결정된, 그러나 탐색 사용자가 그 멤버가 아닌 그룹으로부터의 결과들을 나타낸다. 그러나, 사용자에 대한 제1 분리도의 개인이 그룹의 멤버일 수 있다. 따라서, 디스플레이된 바와 같이, 트러스트 탐색 결과들(702, 704, 및 706)은 트러스트 데이터 소스에 기초하여 랭크 순위화될 수 있다 - 예를 들어, 명시적인 것이 묵시적인 것보다 더 높고, 묵시적인 것이 확장된 묵시적인 것보다 더 높음 -. 더욱이, 일 실시예에서, 트러스트 탐색 결과들(702, 704, 및 706)은 시간/날짜 스탬프에 기초하여 각각의 그룹 내에서 정렬 및 랭크 순위화될 수 있다. 중요하게도, 5개의 트러스트 탐색 결과들은 탐색 결과들을 디스플레이하기 위한 웹 페이지의 최상부 위치에서 시작하여 디스플레이된다. 그러나, 상이한 질의-클래스에 대해, 수 및 위치가 상이할 수 있다. 따라서, 본 발명은 도 7에 디스플레이되는 수 및 위치에 의해 제한되지 않는다.
일 실시예에서, 트러스트 탐색 결과들을 배치하기 위해 수 및 위치가 사용될 수 있지만, 다른 기법들이 또한 추가적인 수의 트러스트 탐색 결과들이 디스플레이되도록 하기 위해 사용될 수 있다. 예를 들어, 일 실시예에서, 선택적 슬라이더(714)는 비-트러스트 탐색 결과들(708)과는 독립적으로 트러스트 탐색 결과들을 리뷰하기 위해 사용될 수 있다. 이러한 방식으로, 더 많은 수의 트러스트 탐색 결과들이 웹 페이지 상의 주어진 위치에 사용가능해질 수 있다.
또한, 트러스트 데이터 소스들(710)이 디스플레이(700)에 예시된다. 다른 트러스트 데이터 소스들이 디스플레이될 수 있다. 주지된 바와 같이, 사용자 정의가능한 트러스트 데이터 소스를 나타내는 것은 트러스트 데이터 소스(712)이다. 오직 단일의 사용자 정의가능 트러스트 데이터 소스가 예시되지만, 본 발명이 그렇게 제한되지 않으며, 더 많은 트러스트 데이터 소스들이 사용자에 의해 추가될 수 있다는 점에 유의해야 한다.
일 실시예에서, 탐색 사용자는, 디스플레이된 트러스트 데이터 소스들(710) 중 임의의 것 또는 전부를 선택하여, 선택되지 않은 것들이 디스플레이(700)로부터 이들의 각각의 개별 트러스트 탐색 결과들을 제거하는 것을 초래하도록 할 수 있다. 예를 들어, 탐색자가 Facebook 트러스트 데이터 소스를 선택해제하는 경우, 트러스트 탐색 결과들(702, 704, 및 706)에서 획득되고 디스플레이된 개별 트러스트 탐색 결과들은 디스플레이로부터 제거될 것이다. 일 실시예에서, 선택된 트러스트 데이터 소스들로부터의 트러스트 탐색 결과들은 주어진 질의-클래스에 대한 결정된 최적 수에 기초하여 디스플레이된 리스트에 추가될 것이다.
위의 명세, 예들 및 데이터는 제조의 완전한 설명, 및 본 발명의 구성의 사용을 제공한다. 본 발명의 많은 실시예들이 본 발명의 사상 및 범위로부터 벗어나지 않고 이루어질 수 있으므로, 본 발명은 이하에 첨부되는 청구항들에 존재한다.

Claims (15)

  1. 네트워크 디바이스로서,
    네트워크를 통해 데이터를 송신 및 수신하기 위한 트랜시버; 및
    프로세서
    를 포함하고, 상기 프로세서는:
    탐색 사용자로부터 탐색 질의를 수신하는 동작;
    상기 탐색 질의를 복수의 질의-클래스 중 적어도 하나의 질의-클래스로 분류하는 동작;
    복수의 비-트러스트 탐색 결과를 획득하기 위해 복수의 비-트러스트 데이터 소스 상에서 상기 탐색 질의를 사용하여 탐색을 수행하는 동작;
    복수의 트러스트 탐색 결과를 획득하기 위해 복수의 트러스트 데이터 소스 상에서 상기 탐색 질의를 사용하여 또 다른 탐색을 선택적으로 수행하는 동작 - 상기 트러스트 데이터 소스는 상기 탐색 사용자에 의해 명확히(specifically) 트러스트되는, 명시적 트러스트된 데이터 소스들을 포함하고, 상기 비-트러스트 데이터 소스는 상기 탐색 사용자에 의해 명확히 비-트러스트됨 -;
    상기 탐색 질의에 대한 적어도 하나의 질의-클래스에 기초하여, 상기 복수의 트러스트 탐색 결과의 각각을 선택적으로 디스플레이하기 위한 수 및 위치를 결정하는 동작 - 상기 수와 상기 위치는 상기 탐색 사용자와 상기 복수의 트러스트 탐색 결과의 각각에 대응하는 소셜 네트워킹 소스 사이의 관계에 기초함 -; 및
    상기 복수의 비-트러스트 탐색 결과의 디스플레이와는 구별하여 상기 복수의 트러스트 탐색 결과를 선택적으로 디스플레이하는 동작
    을 포함하는 동작들을 수행하도록 동작하고, 상기 선택적으로 디스플레이되는 복수의 트러스트 탐색 결과는 상기 소셜 네트워킹 소스 내에서의 상기 각각의 트러스트 탐색 결과의 소스를 표시하는 정보를 포함하는 네트워크 디바이스.
  2. 제1항에 있어서,
    상기 복수의 질의-클래스는 사실 질의-클래스, 리뷰 질의-클래스, 및 활동 질의-클래스 중 적어도 하나를 포함하고, 상기 탐색 질의가 사실 질의-클래스라고 결정되는 경우, 상기 트러스트 탐색 결과들의 디스플레이를 금지하는 네트워크 디바이스.
  3. 제1항에 있어서,
    상기 복수의 트러스트 탐색 결과는 상기 각각의 트러스트 탐색 결과의 상기 소셜 네트워킹 소스에 기초하여 추가로 카테고리화되고, 상기 카테고리들은 명시적 소스, 묵시적 소스, 또는 상기 탐색을 요청하는 탐색 사용자가 멤버가 아닌 트러스트된 소스 중 적어도 하나를 포함하는 네트워크 디바이스.
  4. 제1항에 있어서,
    상기 탐색 사용자에게는 트러스트 탐색 결과가 연관되는 트러스트 데이터 소스에 기초하여 상기 복수의 트러스트 탐색 결과의 서브세트들을 선택적으로 디스플레이하기 위한 사용자 인터페이스가 제공되는 네트워크 디바이스.
  5. 제1항에 있어서,
    각각의 질의-클래스는 상기 복수의 트러스트 탐색 결과를 선택적으로 디스플레이하기 위한 수 및 위치를 가지고, 각각의 질의-클래스에 대한 수 및 위치는:
    복수의 트러스트 결과에 대해 복수의 탐색 질의 사용자로부터의 복수의 클릭율들을 추적하고;
    상기 복수의 질의-클래스 각각에 대해 추적된 클릭율들을 취합하고; 그리고
    상기 취합된 추적된 클릭율들에 의해 부분적으로 표시되는 바와 같이, 가장 빈번한 수의 선택들이 이루어지는 수 및 위치를 표시하는 탐색 질의 사용자들의 피드백을 사용하여 복수의 질의-클래스 각각에 대한 최적의 수 및 위치를 결정
    함으로써 결정되는 네트워크 디바이스.
  6. 제1항에 있어서,
    상기 복수의 트러스트 데이터 소스는 복수의 소셜 네트워킹 웹사이트, 또는 상기 탐색 사용자에 대한 친구 또는 가족 멤버 중 적어도 하나로부터의 복수의 메시지 중 적어도 하나를 포함하는 네트워크 디바이스.
  7. 시스템으로서,
    프로세서;
    트러스트 데이터 소스로서 탐색 사용자에 대해 정의된 상이한 복수의 소셜 네트워킹 소스로부터 복수의 데이터가 저장된 컴퓨터 저장 디바이스
    를 포함하고,
    상기 프로세서는:
    탐색 사용자로부터 탐색 질의를 수신하고;
    상기 탐색 질의를 복수의 질의 클래스 중 적어도 하나의 질의 클래스로 분류하고;
    복수의 비-트러스트 탐색 결과를 획득하기 위해 복수의 비-트러스트 데이터 소스 상에서 상기 탐색 질의를 사용하여 탐색을 수행하고;
    복수의 트러스트 탐색 결과를 획득하기 위해 상기 복수의 트러스트 데이터 소스 상에서 상기 탐색 질의를 사용하여 또다른 탐색을 선택적으로 수행하고 - 상기 트러스트 데이터 소스는 상기 탐색 사용자에 의해 명확히(specifically) 트러스트되는, 명시적 트러스트된 데이터 소스들을 포함하고, 상기 비-트러스트 데이터 소스는 상기 탐색 사용자에 의해 명확히 비-트러스트됨 -;
    상기 탐색 질의에 대한 상기 적어도 하나의 질의-클래스에 기초하여, 상기 복수의 트러스트 탐색 결과의 각각을 선택적으로 디스플레이하기 위한 수 및 위치를 결정하고 - 상기 수와 상기 위치는 상기 탐색 사용자와 상기 복수의 트러스트 탐색 결과의 각각에 대응하는 소셜 네트워킹 소스 사이의 관계에 기초함 -; 및
    상기 복수의 비-트러스트 탐색 결과의 디스플레이와는 구별하여 상기 복수의 트러스트 탐색 결과를 선택적으로 디스플레이하는 것
    을 위한 프로그램 로직을 실행하고, 상기 선택적으로 디스플레이되는 복수의 트러스트 탐색 결과는 상기 소셜 네트워킹 소스 내에서의 상기 각각의 트러스트 탐색 결과의 소스를 표시하는 정보를 포함하는 시스템.
  8. 제7항에 있어서,
    상기 복수의 질의-클래스는 사실 질의-클래스, 리뷰 질의-클래스, 및 활동 질의-클래스 중 적어도 하나를 포함하고, 상기 탐색 질의가 사실 질의-클래스라고 결정되는 경우, 상기 트러스트 탐색 결과들의 디스플레이를 금지하는 시스템.
  9. 제7항에 있어서,
    상기 복수의 트러스트 탐색 결과는 상기 각각의 트러스트 탐색 결과의 상기 소셜 네트워킹 소스에 기초하여 추가로 카테고리화되고, 상기 카테고리들은 명시적 소스, 묵시적 소스, 또는 상기 탐색을 요청하는 탐색 사용자가 멤버가 아닌 트러스트된 소스 중 적어도 하나를 포함하는 시스템.
  10. 제7항에 있어서,
    상기 탐색 사용자는 트러스트 탐색 결과가 연관되는 트러스트 데이터 소스에 기초하여 상기 복수의 트러스트 탐색 결과의 서브세트들을 선택적으로 디스플레이하기 위한 사용자 인터페이스가 제공되는 시스템.
  11. 제7항에 있어서,
    각각의 질의-클래스는 상기 복수의 트러스트 탐색 결과를 선택적으로 디스플레이하기 위한 결정된 위치를 가지고, 상기 질의-클래스에 대한 위치는:
    a) 동일한 질의-클래스에 대한 복수의 상이한 탐색 질의 각각에 대해 복수의 비-트러스트 탐색 결과와 함께 트러스트 탐색 결과를 디폴트 위치 내에 디스플레이하고;
    b) 상기 디스플레이된 트러스트 탐색 결과 및 상기 복수의 비-트러스트 탐색 결과들에 대해 복수의 탐색 사용자로부터의 클릭율들을 수집하고;
    c) 상기 수집된 클릭율들의 평가에 기초하여, 상기 트러스트 검색 결과의 디스플레이의 위치를 상기 디스플레이된 복수의 비-트러스트 탐색 결과 중 적어도 하나에 대해 더 높거나 더 낮게 선택적으로 변경하고; 그리고
    d) 위치 K-1에서의 비-트러스트 탐색 결과에 대한 클릭율이 위치 K에서의 상기 디스플레이된 트러스트 탐색 결과에 대한 클릭율보다 더 크고 위치 K에서의 상기 디스플레이된 트러스트 탐색 결과에 대한 클릭율이 위치 K+1에서의 또다른 비-트러스트 탐색 결과에 대한 클릭율보다 더 크도록, 위치 K가 상기 트러스트 탐색 결과의 디스플레이를 위해 결정될 때까지 단계 a) 내지 단계 c)를 반복
    함으로써 결정되는 시스템.
  12. 제11항에 있어서,
    상기 질의-클래스는 상기 비-트러스트 탐색 결과와 함께 디스플레이될 복수의 트러스트 탐색 결과 내에서의 트러스트 탐색 결과들의 결정된 수를 더 가지고, 상기 트러스트 탐색 결과의 수는:
    a) 상기 동일한 질의-클래스에 대한 복수의 상이한 탐색 질의 각각에 대해 복수의 비-트러스트 탐색 결과의 디스플레이와 함께 상기 결정된 위치 K에서 복수의 트러스트 탐색 결과 중 디폴트 수의 트러스트 탐색 결과들을 디스플레이하고;
    b) 상기 디스플레이된 트러스트 탐색 결과들 및 상기 디스플레이된 복수의 비-트러스트 탐색 결과에 대해 복수의 탐색 사용자로부터의 다른 클릭율들을 수집하고;
    c) 상기 수집된 다른 클릭율들의 평가에 기초하여, 상기 트러스트 탐색 결과들의 수를 선택적으로 변경하고;
    d) 상기 트러스트 탐색 결과들에 대해 수 N이 결정될 때까지 단계 a) 내지 단계 c)를 반복
    함으로써 결정되고, 상기 수 N은 위치 N에서 디스플레이되는 탐색 결과에 대한 클릭율이 다음 디스플레이되는 탐색 결과의 클릭율보다 더 크도록 결정되고, 상기 수 N이 상기 디스플레이되는 트러스트 탐색 결과들에 대해 N+1로 증가하는 경우, N+1 트러스트 탐색 결과에 대한 클릭율은 또다른 다음 디스플레이되는 탐색 결과보다 더 적은 시스템.
  13. 방법으로서,
    프로세서에 의해, 탐색 사용자로부터 탐색 질의를 수신하는 단계;
    상기 프로세서에 의해, 상기 탐색 질의를 복수의 질의-클래스들 중 적어도 하나의 질의-클래스로 분류하는 단계;
    상기 프로세서에 의해, 복수의 비-트러스트 탐색 결과를 획득하기 위해 복수의 비-트러스트 데이터 소스 상에서 상기 탐색 질의를 사용하여 탐색을 수행하는 단계;
    상기 프로세서에 의해, 복수의 트러스트 탐색 결과를 획득하기 위해 복수의 트러스트 데이터 소스 상에서 상기 탐색 질의를 사용하여 또다른 탐색을 선택적으로 수행하는 단계 - 상기 트러스트 데이터 소스는 상기 탐색 사용자에 의해 명확히(specifically) 트러스트되는, 명시적 트러스트된 데이터 소스들을 포함하고, 상기 비-트러스트 데이터 소스는 상기 탐색 사용자에 의해 명확히 비-트러스트됨 -;
    상기 프로세서에 의해 및 상기 탐색 질의에 대한 상기 적어도 하나의 질의-클래스에 기초하여, 상기 복수의 트러스트 탐색 결과의 각각을 선택적으로 디스플레이하기 위한 수 및 위치를 결정하는 단계 - 상기 수와 상기 위치는 상기 탐색 사용자와 상기 복수의 트러스트 탐색 결과의 각각에 대응하는 소셜 네트워킹 소스 사이의 관계에 기초함 -; 및
    상기 프로세서에 의해, 상기 복수의 비-트러스트 탐색 결과의 디스플레이와는 구별하여 상기 복수의 트러스트 탐색 결과를 선택적으로 디스플레이하는 단계
    를 포함하고, 상기 선택적으로 디스플레이되는 복수의 트러스트 탐색 결과는 상기 소셜 네트워킹 소스 내에서의 상기 각각의 트러스트 탐색 결과의 소스를 표시하는 정보를 포함하는 방법.
  14. 제13항에 있어서,
    상기 복수의 트러스트 데이터 소스는 복수의 소셜 네트워킹 웹사이트, 또는 상기 탐색 사용자에 대한 친구 또는 가족 멤버 중 적어도 하나로부터의 복수의 메시지 중 적어도 하나를 포함하는 방법.
  15. 제13항에 있어서,
    상기 복수의 트러스트 탐색 결과는 주어진 트러스트 데이터 소스에 제공되는 정의된 수의 정보의 업데이트들에 기초하여 정렬되는 방법.
KR1020127030481A 2010-04-21 2011-04-20 웹 탐색들에 대한 소셜 디멘젼의 선택적 추가 KR101473076B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/764,818 US8880520B2 (en) 2010-04-21 2010-04-21 Selectively adding social dimension to web searches
US12/764,818 2010-04-21
PCT/US2011/033318 WO2011133716A2 (en) 2010-04-21 2011-04-20 Selectively adding social dimension to web searches

Publications (2)

Publication Number Publication Date
KR20130028108A KR20130028108A (ko) 2013-03-18
KR101473076B1 true KR101473076B1 (ko) 2014-12-15

Family

ID=

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070078822A1 (en) * 2005-09-30 2007-04-05 Microsoft Corporation Arbitration of specialized content using search results

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070078822A1 (en) * 2005-09-30 2007-04-05 Microsoft Corporation Arbitration of specialized content using search results

Similar Documents

Publication Publication Date Title
US8880520B2 (en) Selectively adding social dimension to web searches
US9367618B2 (en) Context based search arrangement for mobile devices
US8195656B2 (en) Social network search
US8468158B2 (en) Adaptive weighted crawling of user activity feeds
US7895177B2 (en) Enabling searching of user ratings and reviews using user profile location, and social networks
KR101208799B1 (ko) 클러스터 검색 처리
EP2153354B1 (en) Enabling clustered search processing via text messaging
US7636779B2 (en) Contextual mobile local search based on social network vitality information
US8515908B2 (en) Determining related keywords based on lifestream feeds
US20110173198A1 (en) Recommendations based on relevant friend behaviors
US8788342B2 (en) Intelligent feature expansion of online text ads
US20100169376A1 (en) Visual search engine for personal dating
US20080168033A1 (en) Employing mobile location to refine searches
US20100114938A1 (en) Search results for a topic that include a list of messaging users that have previously searched on that topic
US8489590B2 (en) Cross-market model adaptation with pairwise preference data
KR101473076B1 (ko) 웹 탐색들에 대한 소셜 디멘젼의 선택적 추가