KR20180058799A - 컴퓨팅 디바이스 백그라운드의 속성들에 기초한 정보 랭킹 - Google Patents

컴퓨팅 디바이스 백그라운드의 속성들에 기초한 정보 랭킹 Download PDF

Info

Publication number
KR20180058799A
KR20180058799A KR1020187011653A KR20187011653A KR20180058799A KR 20180058799 A KR20180058799 A KR 20180058799A KR 1020187011653 A KR1020187011653 A KR 1020187011653A KR 20187011653 A KR20187011653 A KR 20187011653A KR 20180058799 A KR20180058799 A KR 20180058799A
Authority
KR
South Korea
Prior art keywords
search results
computing device
dynamic
ranking
attributes
Prior art date
Application number
KR1020187011653A
Other languages
English (en)
Other versions
KR102049981B1 (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 KR20180058799A publication Critical patent/KR20180058799A/ko
Application granted granted Critical
Publication of KR102049981B1 publication Critical patent/KR102049981B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles
    • G06F17/3053
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • G06F17/30554
    • G06F17/30867
    • G06F17/3087
    • G06F17/30979

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

디바이스의 사용자와 관련 있을 것으로 결정된 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행한 후에 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되는지 여부를 표시하는, 상기 각각의 결과들에 대한 각각의 타겟 속성을 결정하는 시스템이 기술된다. 또한 시스템은 디바이스의 하나 이상의 동적 속성들을 결정하며, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시한다. 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 시스템은 상기 결과들의 동적 랭킹을 결정하고 상기 결과들과 상기 동적 랭킹을 디바이스에 전송한다.

Description

컴퓨팅 디바이스 백그라운드의 속성들에 기초한 정보 랭킹
컴퓨팅 디바이스들은 정보에 대한 검색을 실행하는데 종종 사용된다. 일부 컴퓨팅 디바이스들은 검색 결과들을 자동적으로 획득하기 위한 컴퓨팅 디바이스가 추론하는 방식이 주어진 현재 컨텍스트(예를 들어, 시간, 지리적 위치, 달력상 약속 등)에서 사용자가 관심있을 수 있으므로 “파라미터 없는 검색”을 수행할 수 있다.
때때로 현재 컨텍스트에 대한 관련되고 유용한 정보를 획득되지만, 파라미터 없는 검색 결과들과 연관된 컨텐츠가 컴퓨팅 디바이스에 의해 제시하기 위해 항상 적절하지 않을 수 있다. 예를 들면, 컴퓨팅 디바이스(예를 들어, 모바일폰, 시계 등)이 특정 비디오 스트림이 현재 컨텍스트에 대해 특히 관련된 검색 결과라고 결정하더라도, 만약 컴퓨팅 디바이스가 스트리밍 비디오들을 재생하는데 어려울 가능성이 있는 경우, 컴퓨팅 디바이스는 관련된 검색 결과로서 비디오 스트림을 제공함으로써 사용자를 짜증나게 할 수 있다(예를 들어, 모바일 컴퓨팅 디바이스가 스트리밍 비디오 요구사항을 만족하지 않는 느리거나 안정적이지 않은 네트워크 연결을 가지는 경우 등).
일 예시에서, 본 개시는 컴퓨팅 시스템에 의해, 컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행하는 단계; 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정하는 단계, 상기 각각의 타겟 속성은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하며; 그리고 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정하는 단계를 포함하며, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시하는 방법에 관한 것이다. 방법은 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하는 단계와 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하는 단계를 더 포함한다.
다른 예시에서, 본 개시는 적어도 하나의 프로세서; 및 적어도 하나의 모듈을 포함하는 컴퓨팅 시스템에 관한 것이며, 상기 적어도 하나의 모듈은: 컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행하고; 상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정하고, 상기 각각의 타겟 속성은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하며; 상기 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정하도록 적어도 하나의 프로세서에 의해 동작가능하며, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시한다. 방법은 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하는 단계와 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하는 단계를 더 포함한다.
다른 예시에서, 본 개시는 명령어들을 포함하는 컴퓨터 판독가능 저장 매체에 관한 것이며, 상기 명령어들은 실행될 때, 컴퓨팅 시스템의 적어도 하나의 프로세서로 하여금 컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행하고; 상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정하고, 상기 각각의 타겟 속성은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하며; 상기 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정하게 하며, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시한다. 방법은 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하는 단계와 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하는 단계를 더 포함한다.
하나 이상의 예시들의 세부 사항은 첨부 도면과 아래의 설명에서 기술된다. 본 개시의 다른 구성, 오브젝트 및 이점은 설명, 도면 및 청구항으로부터 명백해질 것이다.
도 1은 본 발명의 하나 이상의 양태들에 따른, 컴퓨팅 디바이스의 동적 속성들에 적어도 부분적으로 기초하여 파라미터 없는 검색 결과들을 랭킹하기 위한 예시적 시스템을 도시하는 개념도이다.
도 2은 본 발명의 하나 이상의 양태들에 따른, 컴퓨팅 디바이스의 동적 속성들에 적어도 부분적으로 기초하여 파라미터 없는 검색 결과들을 랭킹하도록 구성된 예시적 컴퓨팅 시스템을 도시하는 블록도이다.
도 3a 및 도 3b는 본 발명의 하나 이상의 양태들에 따른, 예시적 컴퓨팅 디바이스들의 동적 속성들에 적어도 부분적으로 기초하여 랭킹되었던 파라미터 없는 검색 결과들을 제시하도록 구성된 예시적 컴퓨팅 디바이스들에 의해 제시되는 예시적 그래픽 사용자 인터페이스를 도시하는 개념도들이다.
도 4는 본 발명의 하나 이상의 양태들에 따른, 컴퓨팅 디바이스의 동적 속성들에 적어도 부분적으로 기초하여 파라미터 없는 검색 결과들을 랭킹하도록 구성된 예시적 컴퓨팅 시스템에 의해 수행되는 예시적 동작들을 도시하는 흐름도이다.
일반적으로, 본 개시의 기법들은 컴퓨팅 시스템이 컴퓨팅 디바이스의 동적 속성들에 기초하여 검색 결과들(예를 들어, 파라미터 없는 검색 결과들)을 랭킹하게 할 수 있다. 본 명세서에서 사용된 바와 같이, 용어 “파라미터 없는 검색 결과”는 어떠한 사용자 입력 파라미터들(예를 들어, 검색 용어들)에도 의존하지 않는 정보에 대한 검색으로서 정의되는 “파라미터 없는 검색”으로부터 도출된 검색 결과를 지칭한다. 또한 때때로 “제로 입력(zero input)” 검색으로도 지칭되는, 파라미터 없는 검색은 실행될 때, 컴퓨팅 시스템으로 하여금 상기 컴퓨팅 시스템이 컴퓨팅 디바이스의 주어진 현재 컨텍스트에서 컴퓨팅 디바이스의 사용자가 관심 있을 가능성이 클 것으로 예측하는 정보에 대한 검색을 수행하게 한다.
기술된 기법들은 컴퓨팅 시스템이 현재 컨텍스트와 관련되고 현재 컨텍스트에서 컴퓨팅 디바이스에 의한 즉시 제시에 적절한 유형들의 컨텐츠를 가리키는 파라미터 없는 검색 결과들에 보다 높은 랭킹을 할당할 수 있게 한다. 반대로, 기술된 기법들은 컴퓨팅 시스템이 현재 컨텍스트와 관련되지만, 다른 컴퓨팅 디바이스에 의해 및/또는 다른 컨텍스트에서 제시되는 것이 더 나은 다른 유형의 컨텐츠와 연관된 다른 파라미터 없는 검색 결과들에 보다 낮은 랭킹을 할당할 수 있게 한다.
본 개시 전체에 걸쳐서, 컴퓨팅 디바이스가 정보를 분석하기 위해 컴퓨팅 디바이스의 사용자로부터 허가를 받은 경우에만 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템이 컴퓨팅 디바이스와 컴퓨팅 디바이스의 사용자와 연관된 정보(예를 들어, 컨텍스트, 위치, 속도, 검색 쿼리 등)를 분석하는 예시들이 기술되었다. 예를 들면, 아래에 논의되는 상황에서, 컴퓨팅 디바이스 또는 컴퓨팅 시스템이 사용자와 연관된 정보를 수집하거나 사용할 수 있기 전에, 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템의 프로그램 또는 구성이 사용자 정보(예를 들어, 사용자의 현재 위치, 현재 속도 등에 관한 정보)를 수집하고 사용할 수 있는지 여부를 제어하거나 또는 디바이스 및/또는 시스템이 사용자와 관련 있을 수 있는 컨텐츠를 수신할지 여부 및/또는 어떻게 수신할지 지시하기 위한 입력을 제공할 기회가 사용자에게 제공된다. 추가로, 특정 데이터는 그것이 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템에 의해 저장되거나 사용되기 전에 하나 이상의 방식들로 취급되어, 개인적으로 식별가능한 정보는 제거된다. 예를 들면, 사용자의 신원은 사용자에 관한 개인적으로 식별가능한 정보가 결정될 수 없도록 취급되거나 또는 사용자의 지리적 위치는 위치 정보가 획득된 곳에서 일반화되어(시, 우편번호 또는 주 수준으로), 사용자의 특정한 위치가 결정될 수 없도록 한다. 따라서, 사용자는 사용자에 관한 정보가 어떻게 수집되는지 그리고 컴퓨팅 디바이스 및 컴퓨팅 시스템에 의해 사용되는지에 대한 제어를 가진다.
도 1은 본 발명의 하나 이상의 양태들에 따른, 컴퓨팅 디바이스의 동적 속성들에 적어도 부분적으로 기초하여 파라미터 없는 검색 결과들을 랭킹하기 위한 예시적 시스템으로서 시스템(100)을 도시하는 개념도이다. 시스템(100)은 네트워크(130)를 통해 컴퓨팅 디바이스(110)와 통신하는 정보 서버 시스템(ISS, information server system)(160)를 포함한다. 컴퓨팅 디바이스(110)는 네트워크(130)를 통해 ISS(160)과 통신하여, ISS(160)에 컴퓨팅 디바이스(110)의 현재 컨텍스트를 표시하는 정보를 제공할 수 있다. ISS(160)는 컴퓨팅 디바이스(110)의 현재 컨텍스트에 기초하여 파라미터 없는 검색을 실행할 수 있고, 검색 결과들을 상기 현재 컨텍스트와 관련될 수 있는 정보로서 출력한다. 또한, ISS(160)는 검색 결과들을 컴퓨팅 디바이스(110)의 사용자에게 제시할 때 컴퓨팅 디바이스(110)가 검색 결과들에 우선순위를 주도록 검색 결과들의 랭킹을 제공할 수 있다.
네트워크(130)는 예를 들어, 셀룰러, Wi-Fi 및/또는 컴퓨팅 시스템, 서버 및 컴퓨팅 디바이스들 간 데이터를 전송하기 위한 기타 유형의 네트워크와 같은 임의의 공용 또는 개인용 통신 네트워크를 나타낸다. 네트워크(130)는 하나 이상의 네트워크 허브들, 네트워크 스위치들, 네트워크 라우터들 또는 임의의 기타 네트워크 장치를 포함할 수 있고, 그들은 상호 결합되어 ISS(160)와 컴퓨팅 디바이스(110) 간의 정보의 교환을 제공한다. 컴퓨팅 디바이스(110)와 ISS(160)는 임의의 적절한 통신 기법들을 사용하여 네트워크(130)를 통해 데이터를 전송하고 수신할 수 있다.
ISS(160)와 컴퓨팅 디바이스(110)는 각각의 네트워크 링크들을 사용하여 네트워크(130)에 각각 동작적으로 연결될 수 있다. 컴퓨팅 디바이스(110)와 ISS(160)를 네트워크(130)에 연결하는 링크는 이더넷 또는 기타 유형의 네트워크 연결일 수 있고, 상기 연결은 무선 및/또는 유선 연결일 수 있다.
컴퓨팅 디바이스(110)는 모바일 또는 비-모바일 컴퓨팅 디바이스를 나타낸다. 컴퓨팅 디바이스(110)의 예시들은 모바일폰, 태블릿 컴퓨터, 랩톱 컴퓨터, 데스크톱 컴퓨터, 서버, 메인프레임, 셋톱박스, 텔레비전, 웨어러블 디바이스(예를 들어, 컴퓨터화된 시계, 컴퓨터화된 안경, 컴퓨터화된 장갑 등), 가정 자동화 디바이스 또는 시스템(예를 들어, 지능형 서모스탯 또는 홈 어시스턴트), PDA(personal digital assistants), 휴대용 게임 시스템, 미디어 플레이어, e-book 리더, 모바일 텔레비전 플랫폼, 차량 네비게이션 및 엔터테인먼트 시스템 또는 네트워크(130)와 같은 네트워크를 통해 정보를 수신하도록 구성되는 임의의 기타 유형의 모바일, 비-모바일, 웨어러블 및 비-웨어러블 컴퓨팅 디바이스(110)를 포함한다.
컴퓨팅 디바이스(110)는 사용자 인터페이스 디바이스(UID)(112), 사용자 인터페이스(UI) 모듈(120) 및 컨텍스트 모듈(122)를 포함한다. 모듈들(120-122)는 각각의 컴퓨팅 디바이스(110)에 상주하는 및/또는 각각의 컴퓨팅 디바이스(110)에서 실행되는 소프트웨어, 하드웨어, 펌웨어 또는 하드웨어, 소프트웨어 및 펌웨어의 조합을 사용하여 기술된 동작들을 수행할 수 있다. 컴퓨팅 디바이스(110)는 모듈들(120-122)을 다수의 프로세서들 또는 다수의 디바이스들로 실행할 수 있다. 컴퓨팅 디바이스(110)는 모듈들(120-122)을 내부 하드웨어에서 실행되는 가상 머신들로서 실행할 수 있다. 모듈들(120-122)은 운영 체제 또는 컴퓨팅 플랫폼의 하나 이상의 서비스들로서 실행될 수 있다. 모듈들(120-122)은 컴퓨팅 플랫폼의 어플리케이션 레이어에서의 하나 이상의 실행가능한 프로그램들로서 실행될 수 있다.
컴퓨팅 디바이스(110)의 UID(112)는 컴퓨팅 디바이스(110)의 입력 및/또는 출력 디바이스로서 기능할 수 있다. UID(112)는 다양한 기술들을 사용하여 구현될 수 있다. 예를 들어, UID(112)는 저항성 터치스크린, 표면 어코스틱 웨이브 터치스크린, 용량성 터치스크린, 투영 정전 터치스크린, 압력 감응형 스크린, 어코스틱 펄스 인식 터치스크린과 같은 존재 감응형 입력 스크린 또는 다른 존재-감응형 디스플레이 기술을 사용하여 입력 디바이스로서 기능할 수 있다. 추가로, UID(112)는 마이크로폰 기술, 적외선 센서 기술 또는 사용자 입력을 수신하는데 사용되는 다른 입력 디바이스 기술을 포함할 수 있다.
UID(112)는 LCD 디스플레이, 도트 매트릭스 디스플레이, LED 디스플레이, OLED 디스플레이, e-ink와 같은 임의의 하나 이상의 디스플레이 디바이스 또는 컴퓨팅 디바이스(110)의 사용자에게 가시적 정보를 출력할 수 있는 유사한 모노크롬 또는 컬러 디스플레이를 사용하여 출력(예를 들어, 디스플레이) 디바이스로서 기능할 수 있다. 추가로, UID(112)는 스피커 기술, 촉각적 피드백 기술 또는 사용자에게 정보를 출력하는데 사용되는 다른 출력 디바이스 기술을 포함할 수 있다.
UID(112)는 컴퓨팅 디바이스(110)의 사용자로부터 촉각적 입력을 수신할 수 있는 각각의 존재 감응형 디스플레이를 각각 포함할 수 있다. UID(112)는 사용자로부터 하나 이상의 제스처들을 검출함으로써 촉각적 입력의 표시들을 수신할 수 있다(예를 들어, 사용자가 UID(112)의 하나 이상의 위치들을 손가락 또는 스타일러스 펜으로 터치하거나 포인팅). UID(112)는 예를 들어, 각각의 존재 감응형 디스플레이에서 사용자에 대한 출력을 제시할 수 있다. UID(112)는 컴퓨팅 디바이스(110)에 의해 제공되는 기능과 연관될 수 있는 그래픽 사용자 인터페이스(예를 들어, 사용자 인터페이스(114))로서 출력을 제시할 수 있다. 예를 들면, UID(112)는 UI 모듈(120) 또는 컴퓨팅 플랫폼, 운영 체제, 어플리케이션 및/또는 컴퓨팅 디바이스(110)에서 실행되거나 컴퓨팅 디바이스(110)로부터 엑세스가능한 서비스들(예를 들어, 전자 메시지 어플리케이션, 인터넷 브라우저 어플리케이션, 모바일 또는 데스크톱 운영 체제 등)의 기타 구성들에 의해 제공되는 파라미터 없는 검색 기능들과 관련된 다양한 사용자 인터페이스(예를 들어, 사용자 인터페이스(114))를 제시할 수 있다.
UI 모듈(120)은 파라미터 없는 검색 결과를 UID(112)에 제공하도록 UID(112) 및 ISS(160)와 인터렉션하는 것을 포함하는 컴퓨팅 디바이스(110)의 기타 컴포넌트들과의 사용자 인터렉션들을 관리할 수 있다. UI 모듈(120)은 컴퓨팅 디바이스(110)의 사용자가 UID(112)에서 출력을 보고 및/또는 입력을 제공하므로, UID(112)로 하여금 사용자 인터페이스(114)(또는 기타 예시적 사용자 인터페이스들)과 같은 사용자 인터페이스를 디스플레이를 위해 출력하게 할 수 있다. UI 모듈(120) 및 UID(112)는 사용자가 상이한 시간에 그리고 사용자와 컴퓨팅 디바이스(110)가 상이한 위치에 있는 경우 사용자 인터페이스와 인터렉션함에 따라 사용자로부터 입력의 하나 이상의 표시들을 수신할 수 있다. UI 모듈(120) 및 UID(112)는 UID(112)에서 검출된 입력들을 해석하고 UID(112)에서 검출된 입력들에 관한 정보를 하나 이상의 연관된 플랫폼들, 운영 체제들, 어플리케이션들 및/또는 컴퓨팅 디바이스(110)에서 실행되는 서비스들에 릴레이하여, 예를 들면, 컴퓨팅 디바이스(110)로 하여금 기능들을 수행하게 할 수 있다.
UI 모듈(120)은 정보 및 명령어들을 하나 이상의 연관된 플랫폼들, 운영 체제들, 어플리케이션들 및/또는 컴퓨팅 디바이스(110)에서 실행되는 서비스들 및/또는 ISS(160)와 같은 하나 이상의 원격 컴퓨팅 시스템들로부터 수신할 수 있다. 추가로, UI 모듈(120)은 하나 이상의 연관된 플랫폼들, 운영 체제들, 어플리케이션들 및/또는 컴퓨팅 디바이스(110)에서 실행되는 서비스들과 컴퓨팅 디바이스(110)의 다양한 출력 디바이스들 사이의 중간자로서 동작하여 컴퓨팅 디바이스(110)에 출력(예를 들어, 그래픽, 빛의 플래시, 소리, 촉각적 반응 등)을 생산하게 할 수 있다.
도 1의 예시에서, 사용자 인터페이스(114)는 ISS(160)에 의해 제공되고 컴퓨팅 디바이스(110)에 의해 엑세스된 파라미터 없는 검색 서비스와 연관된 그래픽 사용자 인터페이스이다. 도 1에 도시된 바와 같이, 사용자 인터페이스(114)는 "검색 결과 A"-"검색 결과 N"의 랭킹 순서로 디스플레이된 다수의 파라미터 없는 검색 결과들을 포함한다. 아래에서 상세히 기술될 바와 같이, 사용자 인터페이스(114)는 ISS(160)가 찾고 컴퓨팅 디바이스(110)의 사용자가 컴퓨팅 디바이스(110)의 현재 컨텍스트에 대해 관심 있을 것으로 추론한 정보를 나타내는 그래픽 정보(예를 들어, 텍스트)를 포함한다. 사용자 인터페이스(114)는 파라미터 없는 검색 결과들의 시각적 도시들(예를 들어, 리스트, 컨텐츠 카드 등), 파라미터 없는 검색 결과들과 연관된 실제 컨텐츠(예를 들어, 비디오, 이미지, 텍스트 등)과 같은 다양한 기타 유형의 그래픽 표시들 및 컴퓨팅 디바이스(110)의 사용자가 현재 컨텍스트에서 관심 있을 수 있는 기타 정보를 포함할 수 있다. UI 모듈(120)은 UID(112)로 하여금 UI 모듈(120)이 네트워크(130)를 통해 ISS(160)로부터 수신하는 데이터에 기초하여 사용자 인터페이스(114)에 출력하게 할 수 있다. UI 모듈(120)은 UID(112)에서 사용자 인터페이스(114) 내에 그래픽 정보를 제시하기 위해 사용자 인터페이스(114)에 제시하기 위한 그래픽 정보(예를 들어, 텍스트 데이터, 이미지 데이터 등)를 ISS(160)로부터의 명령어들과 함께 ISS(160)로부터의 입력으로서 수신할 수 있다.
컨텍스트 모듈(122)은 컴퓨팅 디바이스(110)의 컨텍스트를 정의하기 위해 컴퓨팅 디바이스(110)와 연관된 컨텍스트 정보를 프로세싱하고 분석할 수 있다. 본 개시 전체에 걸쳐 사용된 바와 같이, 용어 “컨텍스트 정보”는 ISS(160) 및 컴퓨팅 디바이스(110)와 같은 컴퓨팅 시스템 및/또는 컴퓨팅 디바이스에 의해 사용될 수 있는 임의의 정보를 기술하고, 컴퓨팅 디바이스 및 컴퓨팅 디바이스의 사용자가 특정한 시간에 경험할 수 있는 가상적 및/또는 물리적 동작 조건들을 정의하는데 사용된다.
컴퓨팅 디바이스(110)의 컨텍스트를 결정함에 있어서, 컨텍스트 모듈(122)은 컴퓨팅 디바이스(110), 컴퓨팅 디바이스(110)의 사용자 및 컴퓨팅 디바이스(110) 및 사용자의 물리적 및/또는 가상적 환경과 연관된 하나 이상의 특징들을 결정할 수 있다. 컨텍스트 정보가 변경됨에 따라(예를 들어, 시간에 따른 이동을 표시하는 센서 정보에 기초하여), 컨텍스트 모듈(122)은 컴퓨팅 디바이스(110)의 결정된 컨텍스트를 업데이트할 수 있다. 컨텍스트 모듈(122)은 네트워크(130)를 통해, 컴퓨팅 디바이스(110)의 현재 컨텍스트를 ISS(160)에 전송할 수 있고, 검색 모듈(164)은 컴퓨팅 디바이스(110)의 컨텍스트와 관련된 정보에 대한 파라미터 없는 검색을 수행할 수 있다.
컨텍스트 모듈(122)이 컴퓨팅 디바이스(110) 및 사용자의 물리적 및/또는 가상적 환경에 관하여 결정할 수 있는 하나 이상의 특징들의 예시들은: 위치 식별 특징들(예를 들어, 시설, 건물, 건물 내 방, 거리 주소, 장소의 유형, 위치 좌표, 고도, 승강 등), 날씨 조건 또는 예보(예를 들어, 온도, 풍속, 습도, 구름 등), 교통체증 조건 또는 예상, 주변 광 조건, 습도, 기압 조건, 및 컴퓨팅 디바이스(110)의 물리적 및/또는 가상적 환경에 관한 임의의 그리고 모든 기타 정보를 포함한다.
컨텍스트 모듈(122)이 컴퓨팅 디바이스(110)의 사용자 관하여 결정할 수 있는 하나 이상의 특징들의 예시들은: 달력 정보, 통신 정보(예를 들어, 이메일, 메시지 기반 텍스트, 인스턴트 메시지 등), 구매 이력, 컨텐츠 시청 이력(예를 들어, 영화, TV쇼 등), 약물 이력, 인터넷 브라우징 이력, 소셜 미디어 또는 소셜 네트워크 정보(예를 들어, 친구, 팔로워, 기사, 포스팅, 및 기타 소셜 미디어 또는 소셜 네트워크 정보), 작업 리스트, 이동 패턴, 자주 방문한 위치, 위치 이력, 인구통계학적 정보, 디바이스 사용 패턴 및 컴퓨팅 디바이스(110)의 사용자에 관한 임의의 그리고 모든 기타 정보를 포함한다.
컨텍스트 모듈(122)이 컴퓨팅 디바이스(110)에 관하여 결정할 수 있는 하나 이상의 특징들의 예시들은 정적 속성들 및 동적 속성들 둘 모두를 포함한다. 컴퓨팅 디바이스(110)의 정적 속성들은 디바이스 유형(예를 들어, 태블릿, 전화기, 웨어러블 등), 스크린 크기(예를 들어, 규모, 크거나 작음 등), 다양한 입력 및 출력 디바이스의 사용가능성(예를 들어, 디스플레이 디바이스의 사용가능성, 오디오 디바이스의 사용가능성, 마이크로폰의 사용가능성, 키보드의 사용가능성, 터치 입력 디바이스의 사용가능성 등), 운영 체제 또는 디바이스에서 실행되는 컴퓨팅 플랫폼의 유형 및 일반적으로 정적이고 변경되지 않는 컴퓨팅 디바이스(110)에 관한 임의의 그리고 모든 기타 속성들을 포함한다.
일반적으로 변경되지 않는 컴퓨팅 디바이스(110)의 정적 속성들과 달리, 컨텍스트 모듈(122)이 컴퓨팅 디바이스(110)에 관하여 결정할 수 있는 하나 이상의 특징들은 동적 속성들 또는 일반적으로 시간에 따라 변경되거나 또는 변화할 수 있는 컴퓨팅 디바이스(110)에 관한 속성들을 포함한다. 컴퓨팅 디바이스(110)의 동적 속성들은 움직임의 정도(예를 들어, 배향, 궤도, 속도, 방향, 가속 등), 움직임의 정도와 연관된 규모의 변화, 움직임의 패턴, 어플리케이션 사용(예를 들어, 어떤 유형의 어플리케이션이 실행중인지 또는 실행중이었는지, 다양한 위치 및 시간에 본 웹페이지 주소, 다양한 위치들 및 시간들에 본 웹페이지의 데이터 필드들에 기입된 텍스트 및 다양한 위치들 및 시간들과 연관된 기타 어플리케이션 사용 데이터), 네트워크 연결 유형(예를 들어, 유선, 무선, 셀룰러, Wi-Fi, 근거리 통신, 블루투스 등), 네트워크 연결 강도(예를 들어, 대역폭, 속도, 지연 등), 배터리 레벨(예를 들어, 완충, 퍼센티지 등) 및 배터리 충전 상태(예를 들어, 배터리가 충전중인지 아닌지 여부)를 포함할 수 있다.
또한, 컴퓨팅 디바이스(110)의 동적 속성들은 오디오 출력 디바이스에 대한 연결 상태(예를 들어, 헤드폰이 연결되었는지 여부, 자동차 오디오 시스템이 연결되었는지, 홈 오디오 시스템이 연결되었는지 등), 멀티미디어 스트리밍 디바이스에 대한 연결 상태(예를 들어, 오디오/비디오 데이터가 출력인지 또는 멀티미디어 스트리밍 디바이스를 통해 외부 디스플레이로 출력될 수 있는지 여부), 및 컴퓨팅 디바이스(110)의 하나 이상의 센서들(예를 들어, 자이로스코프, 가속도계, 근접도 센서)에 의해 획득되거나 그에 관한 임의의 그리고 모든 기타 센서 정보, 컴퓨팅 디바이스(110)의 하나 이상의 통신 유닛 및/또는 라디오들(예를 들어, GPS, 셀룰러, Wi-Fi)에 의해 획득되거나 그에 관한 라디오 전송 정보, 컴퓨팅 디바이스(110)의 하나 이상의 입력 디바이스들(예를 들어, 카메라, 마이크로폰, 키보드, 터치패드, 마우스)에 의해 획득되거나 그에 관한 정보, 및 컴퓨팅 디바이스(110)의 하나 이상의 네트워크 디바이스(예를 들어, 네트워크/디바이스 식별자 정보, 네트워크 이름, 디바이스 인터넷 프로토콜 주소)에 의해 획득되거나 그에 관한 정보를 포함할 수 있다. 또한, 컴퓨팅 디바이스(110)의 동적 속성들은 다양한 위치 및 시간에 컴퓨팅 디바이스에 의해 엑세스될 수 있는 오디오 및/또는 비디오 스트림, 다양한 위치 및 시간에 컴퓨팅 디바이스에 의해 엑세스될 수 있는 텔레비전 또는 케이블/위성 방송에 관한 정보 및 다양한 위치 및 시간에 컴퓨팅 디바이스에 의해 엑세스될 수 있는 기타 서비스에 관한 정보를 포함할 수 있다.
일부 예시에서, 컨텍스트 모듈(122)은 컴퓨팅 디바이스(110)의 사용자와 연관된 과거 및 미래의 컨텍스트 이력을 유지할 수 있다. 컨텍스트 모듈(122)은 이전의 기록된 컨텍스트로부터 과거의 다양한 위치 및 시간에 컴퓨팅 디바이스(110)의 이전의 컨텍스트를 카탈로그화하고 기록할 수 있고, 다양한 장래의 위치 및 장래의 시간에 컴퓨팅 디바이스(110)의 장래의 컨텍스트를 예상하거나 추론할 수 있다. 컨텍스트 모듈(122)은 장래의 날짜와 장래의 시간을 이전의 날짜와 시간의 반복되는 컨텍스트와 연관시켜, 컴퓨팅 디바이스(110)의 사용자와 연관된 장래의 컨텍스트적 이력을 구축한다.
예를 들면, 컴퓨팅 디바이스(110)의 과거의 컨텍스트적 이력에 포함된 정보는 사용자가 일상적 루트에 따라 직장과 집을 오고감에 따라, 사용자의 일상적 업무 주간 동안 사용자의 위치와 네트워크 신호 강도를 표시할 수 있다. 과거의 컨텍스트적 이력에 기초하여, 컨텍스트 모듈(122)은 과거의 컨텍스트적 이력에서 기록된 실제 위치와 네트워크 신호 강도를 반영하는 장래의 업무 주간에 사용자의 예상된 위치와 예상된 네트워크 신호 강도를 표시하는 정보를 포함하는 장래의 컨텍스트적 이력을 생산할 수 있다.
ISS(160)는 네트워크(130)와 같은 네트워크에 그리고 네트워크로부터 정보를 송수신할 수 있는 하나 이상의 데스크톱 컴퓨터, 랩톱 컴퓨터, 메인프레임, 서버 클라우드 컴퓨팅 시스템 등 과 같은 임의의 적절한 원격 컴퓨팅 시스템을 나타낸다. ISS(160)는 컴퓨팅 디바이스(110)의 현재 컨텍스트와 관련 있을 수 있는 정보를 자동적으로 제공하기 위한 파라미터 없는 검색 시스템을 호스팅한다(또는 적어도 그에 대한 엑세스를 제공한다). 컴퓨팅 디바이스(110)는 네트워크(130)를 통해 ISS(160)과 통신하여, ISS(160)에 의해 제공되는 검색 시스템에 엑세스한다. 일부 예시에서, ISS(160)는 클라우드를 통해 엑세스가능한 서비스로서 검색 시스템에 대한 엑세스를 제공하는 클라우드 컴퓨팅 시스템을 나타낸다.
도 1의 예시에서, ISS(160)는 검색 모듈(164) 및 랭킹 모듈(166)을 포함한다. 모듈들(164 및 166)은 함께 컴퓨팅 디바이스(110)의 현재 컨텍스트와 관련 있을 수 있는 정보를 자동적으로 제공하기 위해 컴퓨팅 디바이스(110) 및 네트워크(130)에 연결된 다른 컴퓨팅 디바이스들에 엑세스가능한 파라미터 없는 검색을 제공한다. 모듈들(164 및 166)은 ISS(160)에서 상주하는 및/또는 실행되는 소프트웨어, 하드웨어, 펌웨어 또는 하드웨어, 소프트웨어 및 펌웨어의 조합을 사용하여 기술된 동작들을 수행할 수 있다. ISS(160)는 모듈들(164 및 166)을 다수의 프로세서들, 다수의 디바이스들로 하드웨어 내부에서 실행되는 가상 머신들로서 또는 운영 체제 또는 컴퓨팅 플랫폼의 하나 이상의 서비스들로서 실행할 수 있다. 일부 예시에서, 모듈들(164 및 166)은 ISS(160)의 컴퓨팅 플랫폼의 어플리케이션 레이어에서의 하나 이상의 실행가능한 프로그램들로서 실행될 수 있다.
검색 모듈(164)은 컴퓨팅 디바이스(110)의 컨텍스트에 적어도 부분적으로 기초하여, 컴퓨팅 디바이스(110)의 사용자와 관련 있을 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색을 실행할 수 있다. 다시 말해서, 검색 모듈(164)은 컴퓨팅 디바이스(110)의 현재 컨텍스트에 대해, 컴퓨팅 디바이스(110)의 사용자와 관련 있을 수 있는 정보를 획득할 수 있다.
검색 모듈(164)은 컴퓨팅 디바이스(110)의 컨텍스트를 결정하고, 상기 컨텍스트에 기초하여 검색 쿼리를 생성하고, 그리고 상기 검색 쿼리와 관련된 정보에 대한 검색을 실행할 수 있다. 검색 모듈(164)은 기계 학습 및/또는 다른 인공지능 기법을 사용하여 상이한 컨텍스트에서, 컴퓨팅 디바이스(110) 및 다른 컴퓨팅 디바이스들의 사용자가 일반적으로 어떤 유형의 정보를 검색했는지를 포함하는 사용자 행동을 학습하고 모델링할 수 있다. 상이한 컨텍스트에 대한 사용자들의 검색들을 학습하는 것과 모델링하는 것을 통해, 검색 모듈(164)은 특정한 컨텍스트에 대해 컴퓨팅 디바이스(110)의 사용자가 획득하고자 할 수 있는 정보를 찾을 가능성이 있는 검색 쿼리들을 자동적으로 생성하기 위한 하나 이상의 규칙들을 생성할 수 있다.
검색 모듈(164)은 검색 쿼리와 관련된 정보를 식별하기 위해 상기 자동-생성된 검색 쿼리에 기초하여 인터넷 검색을 수행할 수 있다. 검색을 실행한 후에, 검색 모듈(164)은 상기 검색(예를 들어, 파라미터 없는 검색 결과)로부터 반환된 정보를 상기 검색 결과들을 컴퓨팅 디바이스(110)에 송신하기 전에 랭킹 모듈(166)에 출력할 수 있다.
랭킹 모듈(166)은 검색 모듈(164)로부터 반환된 파라미터 없는 검색 결과들을 랭킹하여, 현재 컨텍스트에 대해, 컴퓨팅 디바이스(110)에 제시하기에 보다 더 적절한 컨텐츠를 가지는 검색 결과들이 현재 컨텍스트에서 컴퓨팅 디바이스(110)에 의해 제시하기에 보다 덜 적절한 컨텐츠를 가르킬 수 있는 다른 검색 결과들보다 더 높게 랭킹되도록 할 수 있다. 예를 들면, 랭킹 모듈(166)은 현재 컨텍스트가 컴퓨팅 디바이스(110)기 헤드폰 세트에 연결되어 있다고 표시하는 경우 오디오 컨텐츠와 연관된 검색 결과에 보다 높은 랭킹을 할당할 수 있다. 반대로, 랭킹 모듈(166)은 현재 컨텍스트가 컴퓨팅 디바이스(110)기 헤드폰 세트에 연결되어 있지 않다고 표시하는 경우 오디오 컨텐츠와 연관된 동일한 검색 결과에 보다 낮은 랭킹을 할당할 수 있다.
랭킹 모듈(166)은 어떤 검색 결과들이 컴퓨팅 디바이스(110)의 동적 속성들 및/또는 정적 속성들에 대해 가장 적절한 컨텐츠를 가지는지 결정하기 위해 기계 학습 또는 인공지능 시스템 기반 규칙들을 사용할 수 있다. 예를 들면, 랭킹 모듈(166)은 컴퓨팅 디바이스(110)의 현재 컨텍스트에 기초하여, 컴퓨팅 디바이스(110)의 하나 이상의 동적 속성들을 결정할 수 있다. 랭킹 모듈(166)은 컴퓨팅 디바이스(110)의 동적 또는 정적 속성들 중 하나 이상을 하나 이상의 규칙들에 입력할 수 있고, 상기 하나 이상의 규칙들로부터 출력으로서 파라미터 없는 검색 결과들과 일반적으로 연관된 잠재적 타겟 속성들의 랭킹을 수신할 수 있다. 일부 예시로서, 검색 결과들의 타겟 속성들은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시할 수 있다. 다양한 타겟 속성들의 랭킹을 사용하는 임의의 경우에, 랭킹 모듈(166)은 복수의 파라미터 없는 검색 결과들 각각과 연관된 컨텐츠를 분석하여, 어떤 검색 결과들이 주어진 컴퓨팅 디바이스(110)의 현재 동적 및/또는 정적 속성들에서, 컴퓨팅 디바이스(110)에 의해 제시하기에 가장 적절한 타겟 속성들을 가지는지 결정할 수 있다.
예를 들어, 랭킹 모듈(166)은 컨텍스트 모듈(122)로부터의 컨텍스트에 기초하여, 컴퓨팅 디바이스(110)의 하나 이상의 동적 속성들이 컴퓨팅 디바이스(110)가 느리거나 안정적이지 않은 네트워크 연결을 가짐을 표시한다는 것을 결정할 수 있다. 랭킹 모듈(166)은 컴퓨팅 디바이스(110)의 동적 속성들을 규칙으로 입력하고, 응답으로, 상기 규칙은 텍스트 또는 스틸 이미지 컨텐츠가 현재 컨텍스트에 대해 가장 적절하고, 이어서 촉각적 컨텐츠, 오디오 컨텐츠, 비디오 컨텐츠 및 마지막으로 오디오 및 비디오 컨텐츠가 적절하다는 표시를 출력할 수 있다.
따라서, 랭킹 모듈(166)은 파라미터 없는 검색 결과들의 동적 랭킹을 결정할 수 있다. 동적 랭킹은 컴퓨팅 디바이스(110)의 컨텍스트 및/또는 동적 속성들이 변경됨에 따라 변경될 수 있다. 랭킹 모듈(166)은 좋지 않거나 낮은 대역폭 네트워크 조건에서 낮은 대역폭 결과들에 우선순위화 할 수 있고, 좋거나 높은 대역폭 네트워크 조건들에서 높은 대역폭 결과들을 우선순위화할 수 있다.
예를 들면, 느리거나 안정적이지 않은 네트워크 연결에서, 랭킹 모듈(166)은 텍스트 또는 스틸 이미지들과 연관된 파라미터 없는 검색 결과들을 다른 유형의 컨텐츠와 연관된 파라미터 없는 검색 결과들 보다 높게 랭킹할 수 있다. 컴퓨팅 디바이스(110)와 연관된 동적 속성들이 네트워크 연결이 개선됨을 표시하면, 랭킹 모듈(166)은 그에 따라 파라미터 없는 검색 결과들의 랭킹을 조절할 수 있고, 텍스트 또는 스틸 이미지들과 연관된 검색 결과들이 다른 유형의 컨텐츠와 연관된 파라미터 없는 검색 결과들 보다 필수적으로 높게 랭킹되지 않도록 한다.
랭킹 모듈(166)은 다른 유형의 정보에 기초하여서도 파라미터 없는 검색 결과들을 랭킹할 수 있다. 예를 들면, 랭킹 모듈(166)은 파라미터 없는 검색 결과들을 랭킹하는 그것의 규칙들을 사용자 검색 이력(예를 들어, 사용자의 검색 이력에 걸쳐 일반적으로 본 컨텐츠를 가지는 파라미터 없는 검색 결과들을 보다 높게 랭킹. 이는 사용자가 그러한 결과들을 선호할 수 있다는 표시이므로), 검색 결과들이 제시된 경우 사용자 인터페이스(114)와 같은 사용자 인터페이스와의 과거 인터렉션(예를 들어, 검색 결과들이 제시된 이전 경우들에 사용자가 인터렉션한 것과 유사한 컨텐츠를 가지는 파라미터 없는 검색 결과들을 보다 높게 랭킹)로부터 도출된 정보 뿐만 아니라 사용자 및 컴퓨팅 디바이스(110)와 연관된 추가적인 컨텍스트 정보로 보충할 수 있다.
일부 예시에서, 랭킹 모듈(166)은 컴퓨팅 디바이스(110)의 동적 속성들 뿐만 아니라 컴퓨팅 디바이스(110)의 하나 이상의 정적 속성들에 적어도 부분적으로 기초하여 복수의 검색 결과들의 동적 속성들을 결정할 수 있다. 예를 들면, 랭킹 모듈(166)은 스크린 크기, 디바이스 유형, 디스플레이 디바이스의 사용가능성, 오디오 디바이스의 사용가능성 또는 컴퓨팅 디바이스(110)의 일부 다른 정적 속성들에 적어도 부분적으로 기초하여 동적 랭킹을 결정할 수 있다.
랭킹 모듈(166)은 UID(112)에서의 포맷팅과 제시를 위해 파라미터 없는 검색 결과들과 연관된 동적 랭킹을 UI 모듈(120)에 출력할 수 있다. 즉, 랭킹 모듈(166)은 파라미터 없는 검색과 동적 랭킹으로부터 반환된 복수의 검색 결과들의 표시(예를 들어, 데이터 표현)를 네트워크(130)를 통해 컴퓨팅 디바이스(110)에 전송할 수 있다.
UI 모듈(120)은 랭킹 모듈(166)로부터 수신된 동적 랭킹에 따라 파라미터 없는 검색 결과들을 제시할 수 있다. 예를 들면, UI 모듈(120)은 사용자 인터페이스(114)의 전단(forefront)에 또는 랭킹된 리스트의 상단에 보다 높은 랭킹의 검색 결과들을(예를 들어, “검색 결과 A”로서) 제시할 수 있고, UI 모듈(120)은 사용자 인터페이스(114)의 백그라운드에 또는 랭킹된 리스트의 하단에 보다 낮은 랭킹의 검색 결과들을(예를 들어, “검색 결과 N”으로서) 제시할 수 있다. 이 방식에서, 컴퓨팅 디바이스(110)는 주어진 현재 컨텍스트에서 컴퓨팅 디바이스(110)에 의한 제시에 가장 적절한 파라미터 없는 검색 결과들을 현재 컨텍스트에서 컴퓨팅 디바이스(110)에 의해 제시에 적절하지 않은 다른 검색 결과들보다 더 두드러지게 제시할 수 있다.
따라서, 파라미터 없는 검색에 엑세스하는 컴퓨팅 디바이스와 본 명세서에서 기술된 예시적 컴퓨팅 시스템에 의해 제공되는 것으로서 랭킹 서비스는 현재 컨텍스트에 대한 관련있고 유용한 정보를 자동적으로 수신할 뿐 아니라, 상기 정보는 재배열되거나 포맷팅되어 보다 높은 파라미터 없는 검색 결과들과 연관된 컨텐츠가 현재 컨텍스트에서 컴퓨팅 디바이스에 의해 제시에 적절하도록 한다.
보다 높은 랭킹 결과들이 컴퓨팅 디바이스에 의한 제시에 더 적절하도록 컴퓨팅 디바이스의 동적 속성들에 따라 파라미터 없는 검색 결과들을 자동적으로 랭킹함으로써, 사용자는 현재 컨텍스트에서 맞지 않거나 쉽게 인식될 수 있는 결과들과 연관된 컨텐츠를 보기 위한 시간을 더 적게 쓸 수 있다. 추가로, 가장 적절한 검색 결과들이 모든 결과들 중 전단에서 제시되므로, 사용자는 주어진 현재 컨텍스트에서 제시하기에 적절하지 않은 컨텐츠를 가지는 과거 결과들을 순환시키는 보다 적은 입력들을 제공할 수 있다. 사용자로부터의 보다 적은 입력들로, 예시적 시스템은 컴퓨팅 디바이스들로 하여금 파라미터 없는 검색 결과들을 제공하는 다른 시스템들에 비해 에너지를 절약하고 배터리 전력을 보다 적게 사용하게 할 수 있다.
도 2는 본 발명의 하나 이상의 양태들에 따른, 컴퓨팅 디바이스의 동적 속성들에 적어도 부분적으로 기초하여 파라미터 없는 검색 결과들을 랭킹하기 위한 예시적 시스템으로서 ISS(260)을 도시하는 블록 다이어그램이다. ISS(260)는 도 1의 ISS(160)의 보다 상세한 예시이고, 도 1의 시스템(100)의 컨텍스트 내에서 아래에 기술된다. 도 2는 ISS(260)의 단지 하나의 특정한 예시를 도시하며, ISS(260)의 많은 다른 예시들이 다른 경우들에 사용될 수 있고, 예시적 ISS(260)에 포함된 컴포넌트들의 서브셋을 포함하거나 또는 도 2에서 도시되지 않은 추가적인 컴포넌트들을 포함할 수 있다.
ISS(260)는 컴퓨팅 디바이스(110)에 전달자(conduit)를 제공하며, 그를 통해 컴퓨팅 디바이스(110)와 같은 컴퓨팅 디바이스는 컴퓨팅 디바이스의 현재 컨텍스트와 관련 있는 정보를 자동적으로 수신하는 파라미터 없는 검색 결과 서비스에 엑세스할 수 있다. 도 2의 예시에서 도시된 바와 같이, ISS(260)는 하나 이상의 프로세서들(270), 하나 이상의 통신 유닛들(272) 및 하나 이상의 저장 디바이스들(274)을 포함한다. ISS(260)의 저장 디바이스들(274)은 컨텍스트 모듈(222), 검색 모듈(264) 및 랭킹 모듈(266)을 포함한다. 랭킹 모듈(266) 내에서, 저장 디바이스들(274)은 컨텐츠 분석 모듈(268)을 포함한다. 모듈들(222, 264 및 266)은 더 가지지 않는다면, 도 1의 모듈들(122, 164 및 166) 각각과 적어도 동일한 능력을 포함한다.
ISS(260)의 저장 디바이스들(274)은 검색 쿼리 규칙들 데이터 저장소(236A) 및 디바이스 속성 규칙들 데이터 저장소(236B)(집합적으로, “데이터 저장소들(268)”)를 더 포함한다. 통신 채널들(276)은 컴포넌트 간 통신을 위해(물리적으로, 통신적으로 및/또는 동작적으로) 각각의 컴포넌트들(270, 272 및 274)와 상호연결될 수 있다. 일부 예시에서, 통신 채널들(276)은 시스템 버스, 네트워크 연결, 프로세스 간 통신 데이터 구조 또는 데이터를 통신하기 위한 임의의 기타 방법을 포함할 수 있다.
ISS(260)의 하나 이상의 통신 유닛들(272)은 도 1의 네트워크(130)와 같은 하나 이상의 네트워크들에서 네트워크 신호를 전송하고 및/또는 수신함으로써, 도 1의 컴퓨팅 디바이스(110)와 같은 외부적 컴퓨팅 디바이스들과 통신할 수 있다. 예를 들면, ISS(260)는 컴퓨팅 디바이스(110)와 정보를 교환하기 위해 네트워크(130)를 통해 라디오 신호를 전송하고 및/또는 수신하기 위해 통신 유닛(272)을 사용할 수 있다. 통신 유닛(272)의 예시들은 (이더넷 카드와 같은) 네트워크 인터페이스 카드, 광학적 트랜스시버, 라디오 주파수 트랜스시버, GPS 수신기 또는 정보를 송신 및/또는 수신할 수 있는 임의의 기타 유형의 디바이스를 포함한다. 통신 유닛들(272)의 다른 예시들은 단파 라디오, 셀룰러 데이터 라디오, 무선 이더넷 네트워크 라디오 뿐만 아니라 USB 제어기를 포함할 수 있다.
저장 디바이스들(274)은 ISS(260)의 동작 중에 프로세싱하기 위한 정보를 저장할 수 있다(예를 들어, ISS(260)는 ISS(260)에서 실행 중에 모듈들(222, 264, 266 및 268)에 의해 엑세스되는 데이터를 저장할 수 있다). 일부 예시에서, 저장 디바이스들(274)은 저장 디바이스들(274)의 주목적이 장기간 저장이 아님을 의미하는 임시적 메모리이다. ISS(260) 상의 저장 디바이스들(274)은 휘발성 메모리로서 정보의 단기 저장을 위해 구성될 수 있고, 따라서 전원이 꺼지면 저장된 컨텐츠를 보유하지 않는다. 휘발성 메모리들의 예시들은 RAM(random access memory), DRAM(dynamic random access memory), SRAM(static random access memory) 및 당업계에서 공지된 기타 형태의 휘발성 메모리를 포함할 수 있다.
일부 예시에서, 저장 디바이스들(274)은 하나 이상의 컴퓨터 판독가능 저장 매체를 포함한다. 저장 디바이스들(274)은 휘발성 메모리보다 많은 양의 정보를 저장하도록 구성될 수 있다. 저장 디바이스들(274)은 비휘발성 메모리 공간으로서 정보의 장기 저장을 위해 구성될 수 있고 전원 켜짐/꺼짐 순환 이후에도 정보를 보유한다. 비휘발성 메모리의 예시들은 자기적 하드 디스크, 광학 디스크, 플로피 디스크, 플래시 메모리 또는 EPROM 또는 EEPROM의 형태를 포함한다. 저장 디바이스들(274)은 모듈들(222, 264, 266 및 268)과 연관된 프로그램 명령어들 및/또는 데이터를 저장할 수 있다.
하나 이상의 프로세서들(270)은 기능을 구현하고 및/또는 ISS(260) 내에서 명령어들을 실행한다. 예를 들면, ISS(260) 상의 프로세서(270)는 모듈들(222, 264, 266 및 268)의 기능을 실행하는 저장 디바이스들(274)에 의해 저장된 명령어들을 수신하고 실행할 수 있다. 이들 명령어들은 프로세서(270)에 의해 실행될 때, ISS(260)로 하여금 프로그램 실행 중에 정보를 저장 디바이스들(274) 내에 저장하게 한다. 프로세서(270)는 파라미터 없는 검색들을 실행하고 파라미터 없는 검색 결과들이 의도된 컴퓨팅 디바이스들의 동적 속성들에 적어도 부분적으로 기초하여 파라미터 없는 검색 결과들을 랭킹하기 위해 모듈들(222, 264, 266 및 268)의 명령어들을 실행할 수 있다. 즉, 모듈들(222, 264, 266 및 268)은 본 명세서에서 기술된 ISS(260)의 다양한 액션들 또는 기능들을 수행하기 위해 프로세서(270)에 의해 동작가능할 수 있다.
데이터 저장소들(268)에 저장된 정보는 검색가능하고 및/또는 카테고리화될 수 있다. 예를 들면, 하나 이상의 모듈들(222, 264, 266 및 268)은 데이터 저장소들(268)의 하나 이상으로부터 정보를 요청하는 입력을 제공할 수 있고, 상기 입력에 대한 응답으로, 데이터 저장소들(268)에 저장된 정보를 수신한다. ISS(260)는 컴퓨팅 디바이스(110)와 같은 네트워크(130)에 연결된 디바이스들에 대한 클라우드 기반, 데이터-엑세스 서비스로서 데이터 저장소들(268)에 저장된 정보에 대한 엑세스를 제공할 수 있다. 데이터 저장소들(268)이 개별적 사용자들과 연관된 정보를 포함하거나 또는 상기 정보가 다수의 사용자들에 걸쳐서 일반화되는 경우, 정보가 개별적 사람에게 다시 링크되는 이름, 주소, 전화번호 및/또는 이메일 주소와 같은 모든 개인적으로 식별가능한 정보는 ISS(260)에 저장되기 전에 제거될 수 있다. ISS(260)는 데이터 저장소들(268)에 저장된 정보를 더 암호화하여, 그 안에 저장된 임의의 정보에 대한 엑세스를 방지할 수 있다. 추가로, ISS(260)는 사용자들이 정보의 수집에 대해 확실하게 동의한 경우에만 컴퓨팅 디바이스들의 사용자들과 연관된 정보를 저장할 수 있다. ISS(260)는 사용자들이 동의를 취하할 기회들을 더 제공할 수 있고, 이 경우 ISS(260)는 그 특정한 사용자와 연관된 정보를 수집하거나 또는 이와 달리 보유하는 것을 중단할 수 있다.
컨텍스트 모듈(222)은 네트워크(130)를 통해 컴퓨팅 디바이스(110)와 연관된 컨텍스트 정보를 수신할 수 있고, 컴퓨팅 디바이스(110)의 컨텍스트 모듈(122)과 유사하게, 컨텍스트 모듈(222)은 컨텍스트와 컴퓨팅 디바이스(110)와 연관된 컨텍스트 이력들을 생성할 수 있다. 즉, 컨텍스트 모듈(222)은 위치 정보, 센서 정보, 통신 정보 및 컴퓨팅 디바이스(110)의 컨텍스트를 결정하기 위해 컴퓨팅 디바이스(110)와 연관된 모든 기타 정보를 모을 수 있다. 예를 들면, 컨텍스트 모듈(222)은 컴퓨팅 디바이스(110)의 사용자와 연관된 통신 정보(예를 들어, 이메일, 문자 메시지, 음성 대화, 보이스메일, 비디오 대화, 일정 정보 등)에 기초하여, 컴퓨팅 디바이스(110)의 컨텍스트를 결정할 수 있다.
검색 모듈(264)은 컨텍스트 모듈(222)에 의해 결정된 컨텍스트에 의존하여 파라미터 없는 검색에 대한 쿼리를 생성할 수 있다. 랭킹 모듈(266)은 컨텍스트 모듈(222)에 의해 결정된 컨텍스트에 의존하여 파라미터 없는 검색으로부터 반환된 파라미터 없는 검색 결과들을 랭킹할 수 있다.
컴퓨팅 디바이스(110)의 컨텍스트를 결정함에 있어서, 컨텍스트 모듈(222)은 네트워크 연결 강도, 속도 또는 대역폭, 컴퓨팅 디바이스(110)에 헤드폰, 무선 스피커 또는 유무선 헤드셋이 연결되었는지의 표시, 사용가능한 배터리 저장의 양의 표시, 컴퓨팅 디바이스(110)가 그것의 배터리를 충전하고 있는지의 표시 및 컴퓨팅 디바이스(110)의 기타 동적 속성들과 같은 컴퓨팅 디바이스(110)의 동적 속성들을 결정할 수 있다. 또한, 컨텍스트 모듈(222)은 스크린 크기, 디바이스 유형, 컴퓨팅 디바이스(110)와 연관된 사용가능한 입력 또는 출력 디바이스들의 유형들의 표시 및 컴퓨팅 디바이스(110)의 기타 정적 속성들과 같은 컴퓨팅 디바이스(110)의 정적 속성들을 결정할 수 있다.
데이터 저장소들(268)은 본 명세서에 기술된 기법들에 따라, 파라미터 없는 검색을 실행하고 파라미터 없는 검색 결과들을 랭킹하기 위해 모듈들(222, 264, 266 및 268)에 의해 사용되는 기계 학습 또는 인공지능 시스템의 규칙들을 저장할 수 있다. 예를 들면, 데이터 저장소(236A)는 컨텍스트 모듈(222)에 의해 결정된 것으로서 컴퓨팅 디바이스와 연관된 컨텍스트에 기초하여 쿼리를 생성하기 위해 검색 모듈(264)에 의해 엑세스되는 하나 이상의 규칙들을 저장할 수 있다. 예를 들면, 데이터 저장소(236B)는 컨텍스트 모듈(222)에 의해 결정된 것으로서 검색 결과들과 연관된 어떤 타겟 속성들이 컴퓨팅 디바이스와 연관된 컨텍스트에 가장 적절한지 결정하기 위해 랭킹 모듈(266)에 의해 엑세스되는 하나 이상의 규칙들을 저장할 수 있다.
데이터 저장소(236A)는 입력으로서 컨텍스트를 수신하고 출력으로서 파라미터 없는 검색 쿼리를 검색 모듈(164)에 제공하여 파라미터 없는 검색을 실행하는데 사용할 수 있다. 예를 들면, 사용자가 특정한 날짜의 시간에 집 위치의 그 또는 그녀의 거실에서 텔레비전을 보고 있음을 표시하는 컴퓨팅 디바이스(110)의 현재 컨텍스트를 입력함으로써, 데이터 저장소(236A)의 규칙으로 하여금 사용자가 관심 있을 수 있는 텔레비전 쇼들을 찾기 위한 용어들을 가지는 검색 쿼리의 표시를 출력하게 할 수 있다. 다른 예시로서, 그 또는 그녀가 보통 점심을 먹는 시간에, 사용자가 특정한 날짜의 시간에 외국을 여행중임을 표시하는 컴퓨팅 디바이스(110)의 현재 컨텍스트를 입력함으로써, 데이터 저장소(236A)의 규칙으로 하여금 사용자의 미각에 잘 맞을 수 있는 레스토랑을 찾기 위한 용어들을 가지는 검색 쿼리의 표시를 출력하게 할 수 있다.
데이터 저장소(236B)는 입력으로서 컴퓨팅 디바이스(110)의 현재 컨텍스트에서 표시된 것으로서 하나 이상의 동적 및/또는 정적 디바이스 속성들을 수신하고 출력으로서 현재 컨텍스트에 대해 컴퓨팅 디바이스(110)에 의한 제시에 적절한 가장 높거나 적은 가능성이 있는 컨텐츠의 표시로서 컨텐츠와 연관된 타겟 속성들의 각각의 스코어들을 제공할 수 있다. 예를 들면, 컴퓨팅 디바이스(110)가 임의의 오디오 출력 디바이스(예를 들어, 무선 스피커, 헤드폰, 자동차 스피커 시스템, 유선 스피커 또는 기타 오디오 출력 디바이스)에 연결됨을 표시하는 것으로서 컴퓨팅 디바이스(110)의 하나 이상의 동적 속성들을 정의하는 컴퓨팅 디바이스(110)의 현재 컨텍스트를 데이터 저장소(236B)에 입력하는 것은 데이터 저장소(236B)의 규칙으로 하여금 오디오 컨텐츠가 모든 다른 타겟 속성들 및 컨텐츠의 유형 중 주어진 현재 컨텍스트에서 제시하기에 가장 높게 랭킹된 타겟 속성 또는 가장 적절한 유형의 컨텐츠라는 표시(예를 들어, 스코어, 퍼센티지, 가능성의 정도 등)를 출력할 수 있다. 예를 들면, 컴퓨팅 디바이스(110)가 임의의 오디오 출력 디바이스(예를 들어, 무선 스피커, 헤드폰, 자동차 스피커 시스템, 유선 스피커 또는 기타 오디오 출력 디바이스)에 연결됨을 표시하는 것으로서 컴퓨팅 디바이스(110)의 하나 이상의 동적 속성들을 정의하는 컴퓨팅 디바이스(110)의 현재 컨텍스트를 데이터 저장소(236B)에 입력함으로써 데이터 저장소(236B)의 규칙으로 하여금 오디오 컨텐츠가 모든 다른 타겟 속성들 및 컨텐츠의 유형 중 주어진 현재 컨텍스트에서 제시하기에 가장 높게 랭킹된 타겟 속성 또는 가장 적절한 유형의 컨텐츠라는 표시(예를 들어, 스코어, 퍼센티지, 가능성의 정도 등)를 출력할 수 있다.
다른 예시로서, 컴퓨팅 디바이스(110)가 낮은 네트워크 연결 강도(예를 들어, 임계 dB미만) 또는 낮은 배터리 레벨(예를 들어, 100% 미만, 10% 미만 등)을 가짐을 표시하는 것으로서 컴퓨팅 디바이스(110)의 하나 이상의 동적 속성들을 정의하는 컴퓨팅 디바이스(110)의 현재 컨텍스트를 데이터 저장소(236B)에 입력함으로써 데이터 저장소(236B)의 규칙으로 하여금 텍스트 컨텐츠가 모든 다른 타겟 속성들 및 컨텐츠의 유형 중 주어진 현재 컨텍스트에서 제시하기에 가장 높게 랭킹된 타겟 속성 또는 가장 적절한 유형의 컨텐츠라는 표시를 출력할 수 있다. 또 다른 예시로서, 컴퓨팅 디바이스(110)가 높은 네트워크 연결 강도(예를 들어, 임계 dB 초과) 또는 높은 배터리 레벨(예를 들어, 100%, 10% 초과 등)을 가짐을 표시하는 것으로서 컴퓨팅 디바이스(110)의 하나 이상의 동적 속성들을 정의하는 컴퓨팅 디바이스(110)의 현재 컨텍스트를 데이터 저장소(236B)에 입력함으로써 데이터 저장소(236B)의 규칙으로 하여금 촉각적 컨텐츠 또는 시각적 컨텐츠가 모든 다른 타겟 속성들 및 컨텐츠의 유형 중 주어진 현재 컨텍스트에서 제시하기에 가장 높게 랭킹된 타겟 속성 또는 가장 적절한 유형의 컨텐츠라는 표시를 출력할 수 있다. 그리고 또 하나의 예시로서, 컴퓨팅 디바이스(110)가 임의의 오디오 출력 디바이스에 연결되어 있고 높은 네트워크 연결 강도(예를 들어, 임계 dB 초과) 또는 높은 배터리 레벨(예를 들어, 100%, 10% 초과 등)을 가짐을 표시하는 것으로서 컴퓨팅 디바이스(110)의 하나 이상의 동적 속성들을 정의하는 컴퓨팅 디바이스(110)의 현재 컨텍스트를 데이터 저장소(236B)에 입력함으로써 데이터 저장소(236B)의 규칙으로 하여금 오디오 및 시각적 컨텐츠가 모든 다른 타겟 속성들 및 컨텐츠의 유형 중 주어진 현재 컨텍스트에서 제시하기에 가장 높게 랭킹된 타겟 속성 또는 가장 적절한 유형의 컨텐츠라는 표시를 출력할 수 있다.
랭킹 모듈(266)의 컨텐츠 분석 모듈(268)은 개별적 파라미터 없는 검색 결과들과 연관된 컨텐츠의 타겟 속성들을 추론할 수 있다. 타겟 속성들의 예시들은 컨텐츠 유형(예를 들어, 오디오, 텍스트, 시각적, 촉각적, 오디오 및 시각적 등), 터치 타겟 크기(예를 들어, 컴퓨팅 디바이스(110)의 UID(112)와 같은 터치 감응 스크린에서 입력 위치들로서 제시되는 그래픽 엘리먼트들의 물리적 크기), 컨텐츠가 모바일 친화적 또는 비-모바일 플랫폼들에 대해 디자인되었는지의 표시, 컨텐츠를 제시하기 위한 시스템 요구사항(예를 들어, 사용가능한 메모리의 양, 프로세서 파워 요구사항, 운영 체제 또는 컴퓨팅 플랫폼 유형 등), 컨텐츠의 크기(예를 들어, 이미지 크기, 페이지 상의 컨텐츠 또는 단어의 양), 네트워크 위치(예를 들어, 내부 네트워크 위치 또는 외부 네트워크 위치) 및 데이터 크기(예를 들어, 파일 크기, 길이, 바이트들의 양 등) 및 컨텐츠를 정의하는 기타 속성들을 포함한다.
컨텐츠 분석 모듈(268)은 각각의 파라미터 없는 검색 결과들의 컨텐츠와 연관된 “관여 시간” 스코어를 결정하거나 예측할 수 있다. 다시 말해서, 컨텐츠 분석 모듈(268)은 사용자가 검색 결과의 컨텐츠와 인터렉션하는데 보낼 것으로 예측된 시간의 양을 예측할 수 있다. 컨텐츠 분석 모듈(268)은 컴퓨팅 디바이스(110)의 컨텍스트 및 컴퓨팅 디바이스(110)의 사용자에 관하여 시간에 걸쳐 학습된 기타 정보(예를 들어, 통신 정보, 사용 습관 등)에 기초하여, 사용자가 각각의 파라미터 없는 검색 결과들의 컨텐츠와 얼마나 길게 인터렉션(예를 들어, 보고, 듣고, 느끼고 등)할 것으로 예상되는지 추론할 수 있다. 컨텐츠 분석 모듈(268)은 컨텐츠 유형, 컨텐츠 소스 등과 같은 기타 정보에도 기초하여 한 조각의 컨텐츠의 관여 시간을 추론할 수 있다. 일 예시로서, 컨텐츠 분석 모듈(268)은 사용자에 관심을 받은 영화의 비디오 스트림에 대해 보다 큰 관여 시간 스코어를 할당할 수 있고, 전체로서 일반 공중에게 인기 있는 비디오 스트림에 보다 작은 관여 시간 스코어를 할당할 수 있다. 즉, 컨텐츠 분석 모듈(268)은 사용자가 모든 사람이 관심 있는 영화보다 그 또는 그녀가 실제로 관심 있는 영화를 보는데 더 많은 시간을 쓸 것으로 예측된다고 추론할 수 있다.
컨텐츠 분석 모듈(268)을 사용하여, 랭킹 모듈(266)은 컴퓨팅 디바이스의 하나 이상의 동적 속성들 및 각각의 복수의 검색 결과들의 각각의 타겟 속성에 기초하여, 각각의 복수의 검색 결과들과 연관된 각각의 관여 시간을 예측하고, 상기 각각의 관여 시간에 따라 각각의 복수의 검색 결과들을 랭킹할 수 있다. 검색 결과들을 랭킹하기 전에, 랭킹 모듈(266)은 복수의 검색 결과들 각각에 대한 컨텐츠 분석 모듈(268)에 의해 결정된 관여 시간 스코어를 조절할 수 있다. 랭킹 모듈(266)은 컨텐츠 분석 모듈(268)이 컨텐츠와 연관된 타겟 속성들의 각각의 누적 스코어에 비례하는 양에 의해 각 검색 결과에 적용하는 예측된 관여 시간 스코어를 조절할 수 있다. 다시 말해서, 랭킹 모듈(266)은 컨텐츠와 연관된 타겟 속성들이 컨텐츠가 현재 컨텍스트에 대해 컴퓨팅 디바이스(110)에 의해 제시하기에 적절함을 표시하는 스코어들을 가지는 경우 관여 시간을 상향으로(예를 들어, 관여 시간 증가) 조절할 수 있다. 다시 말해서, 랭킹 모듈(266)은 컨텐츠와 연관된 타겟 속성들이 컨텐츠가 현재 컨텍스트에 대해 컴퓨팅 디바이스(110)에 의해 제시하기에 부적절함을 표시하는 스코어들을 가지는 경우 관여 시간을 하향으로(예를 들어, 관여 시간 감소) 조절할 수 있다.
도 3a 및 도 3b는 본 발명의 하나 이상의 양태들에 따른, 예시적 컴퓨팅 디바이스들의 동적 속성들에 적어도 부분적으로 기초하여 랭킹되었던 파라미터 없는 검색 결과들을 제시하도록 구성된 예시적 컴퓨팅 디바이스들로서, 컴퓨팅 디바이스들(310A 및 310B)에 의해 각각 제시되는 예시적 그래픽 사용자 인터페이스들(314A 및 314B)를 도시하는 개념도들이다. 컴퓨팅 디바이스들(310A 및 310B)는 도 1의 시스템(100)의 컴퓨팅 디바이스(110)의 예시들이다. 도 3a 및 3b는 도 1의 시스템(100)의 컨텍스트에서 아래에 기술된다.
도 3a의 예시에서, 컴퓨팅 디바이스(310A)는 모바일폰 또는 태블릿 디바이스이다. 컴퓨팅 디바이스(310A)는 사용자 인터페이스(314A)를 디스플레이하도록 구성된 UID(312A)를 포함한다. 또한, 도 3a의 예시에서 도시된 오디오 출력 디바이스(316)(예를 들어, 한 쌍의 헤드폰)는 컴퓨팅 디바이스(310A)에 연결되어 오디오를 출력하는데 사용가능하다.
사용자 인터페이스(314A)는 동적 랭킹에서 제시된 검색 결과들 A-D를 포함하며, 여기서 도 3a의 예시에서 가장 높은 랭킹의 검색 결과는 검색 결과 A이며 다른 검색 결과들(검색 결과들 B-D)의 위에 레이어된다. 도 3a에 도시된 동적 랭킹에서 가장 낮은 랭킹의 검색 결과는 검색 결과 D이며, 텍스트 컨텐츠 또는 비-오디오 컨텐츠와 연관된다. 검색 결과 A는 오디오 컨텐츠와 연관된다.
검색 결과들 A-D의 동적 랭킹을 결정하는 경우, ISS(160)는 하나 이상의 동적 속성들이 컴퓨팅 디바이스(310A)가 임의의 오디오 출력 디바이스(316)에 연결되었음을 표시한다고 결정함에 응답하여, 각각의 복수의 검색 결과들의 각각의 타겟 속성에 기초하여, 동적 랭킹에서 오디오 컨텐츠와 연관된 복수의 검색 결과들 중 하나 이상의 검색 결과들을 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹할 수 있다. 다시 말해서, 도 3a는 헤드폰이 컴퓨팅 디바이스(310A)에 연결된 경우, 헤드폰을 착용중임이 가정가능한 경우 사용자가 오디오 컨텐츠에 대해 듣기 원할 가능성이 높다는 추론에 기초하여, ISS(160)에 의해 결정되는 동적 랭킹이 UI 모듈(120)로 하여금 오디오 컨텐츠와 연관된 검색 결과들을 그래픽 사용자 인터페이스의 전단에서 제시하게 할 수 있음을(예를 들어, 랭킹에서 더 높게) 도시한다. 헤드폰이 오디오 출력 디바이스(316)의 일 예시로서 도시되었지만, 오디오 컨텐츠에 대해 보다 높은 랭킹들을 결과로 할 수 있는 오디오 출력 디바이스들의 다른 예시들은 유무선 스피커, 자동차 오디오 시스템 및 홈 오디오 시스템을 포함한다. 일부 예시에서, ISS(160)는 사용자가 오디오 컨텐츠를 듣기 원할 가능성이 높음을 추론하고, 그러므로 다른 규칙들 또는 조건들에 기초하여(예를 들어, 컴퓨팅 디바이스(310A)의 스피커폰 설정이 활성화됨을 검출함에 응답하여 또는 컴퓨팅 디바이스(310A)와 연관된 음량 설정이 임계 음량 설정 이상으로 설정됨을 검출함에 응답하여 등), 오디오 컨텐츠와 연관된 검색 결과들을 그래픽 사용자 인터페이스의 전단에 제시한다.
도 3b의 예시에서, 컴퓨팅 디바이스(310B)는 시청 디바이스이다. 컴퓨팅 디바이스(310B)는 사용자 인터페이스(314B)를 디스플레이하도록 구성된 UID(312B)를 포함한다. 컴퓨팅 디바이스(310A)와 달리, 컴퓨팅 디바이스(310B)는 컴퓨팅 디바이스(310B)에 연결되고 오디오를 출력하는데 사용가능한 오디오 출력 디바이스(316)(예를 들어, 한 쌍의 헤드폰)를 포함하지 않는다.
사용자 인터페이스(314B)는 동적 랭킹에서 제시된 검색 결과들 A-D를 포함하며, 여기서 도 3b의 예시에서 가장 높은 랭킹의 검색 결과는 검색 결과 D이며 다른 검색 결과들(검색 결과들 B, C 및 A)의 위에 레이어된다. 도 3a에서 도시된 동적 랭킹에서 가장 낮은 랭킹의 검색 결과는 검색 결과 A이다(예를 들어, 오디오 컨텐츠와 연관된 검색 결과). 검색 결과 D는 텍스트 컨텐츠와 연관된다.
검색 결과들 A-D의 동적 랭킹을 결정하는 경우, ISS(160)는 하나 이상의 동적 속성들이 컴퓨팅 디바이스(310A)가 임의의 오디오 출력 디바이스(316)에 연결되었음을 표시한다고 결정함에 응답하여, 각각의 복수의 검색 결과들의 각각의 타겟 속성에 기초하여, 동적 랭킹에서 복수의 검색 결과들 중 다른 검색 결과들을 오디오 컨텐츠와 연관된 복수의 검색 결과들 중 하나 이상의 검색 결과들 보다 높게 랭킹할 수 있다. 다시 말해서, 도 3b는 헤드폰이 컴퓨팅 디바이스(310B)에 연결되지 않은 경우, 오디오 출력 디바이스가 사용가능하지 않은 경우 사용자가 오디오 컨텐츠에 대해 듣기 원할 가능성이 낮다는 추론에 기초하여, ISS(160)에 의해 결정되는 동적 랭킹이 UI 모듈(120)로 하여금 비-오디오 컨텐츠와 연관된 검색 결과들을 그래픽 사용자 인터페이스의 전단에서 제시하게 할 수 있음을(예를 들어, 랭킹에서 더 높게) 도시한다. 사용자가 오디오 컨텐츠를 드기 원하지 않음을 표시하는 다른 표시들 또는 동적 속성들은 디바이스(310A)가 같이 위치된 유선 또는 무선 스피커에 연결되지 않음, 같이 위치된 자동차 오디오 시스템에 연결되지 않음, 임계 음량 설정 미만의 또는 꺼진 스피커폰 설정 또는 음량 설정을 가짐 등을 표시하는 동적 속성을 포함할 수 있다.
도 4는 본 발명의 하나 이상의 양태들에 따른, 컴퓨팅 디바이스의 동적 속성들에 적어도 부분적으로 기초하여 파라미터 없는 검색 결과들을 랭킹하도록 구성된 ISS(260)와 같은 예시적 컴퓨팅 시스템에 의해 수행되는 예시적 동작들(400-440)을 도시하는 흐름도이다. 도 4는 도 1의 시스템(100)의 컨텍스트에서 아래에 기술된다. 예를 들면, ISS(160)는 본 발명의 하나 이상의 양태들에 따른 동작들(400-440)을 수행할 수 있다.
도 4의 예시에서, ISS(160)는 컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스(400)의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행할 수 있다. 예를 들면, 검색 모듈(164)은 컴퓨팅 디바이스(110)의 컨텍스트를 컨텍스트 모듈(122)로부터 수신하고, 현재 컨텍스트에 대해 관련 정보를 생산할 가능성이 있는 파라미터 없는 검색 쿼리를 생성하고 그리고 상기 생성된 쿼리를 사용하여 정보에 대한 검색을 실행함으로써(예를 들어, 인터넷 상에서) 파라미터 없는 검색 결과들을 생성할 수 있다.
ISS(160)는 상기 복수의 검색 결과들 각각에 대한 각각의 타겟 속성을 결정할 수 있다(410). 예를 들어, 검색의 완료에 따라 컴퓨팅 디바이스(110)에 대한 검색 결과들을 단순히 출력하기 보다는, 검색 모듈(164)은 UID(112)에서 검색 결과들의 제시를 개선하기 위해 검색 결과들과 연관된 동적 랭킹을 결정하기 위해 검색 결과들을 랭킹 모듈(166)에 입력으로서 제공할 수 있다. 랭킹 모듈(166)은 각 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하는 적어도 하나의 각각의 타겟 속성을 포함하여, 상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정할 수 있다.
ISS(160)는 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정할 수 있다(420). 예를 들면, 랭킹 모듈(166)은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시하는 동적 속성들을 결정하기 위해 컨텍스트 모듈(122)로부터 수신된 컨텍스트를 분석할 수 있다.
ISS(160)는 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정할 수 있다(430). 예를 들면, 알고리즘 또는 기계 학습 시스템 기반 규칙들을 사용하여, 랭킹 모듈(166)은 각 결과와 연관된 “예측된 관여 시간”을 결정하기 위해 검색 결과들 각각과 연관된 컨텐츠를 우선 분석할 수 있다. 상기 예측된 관여 시간은 컴퓨팅 디바이스(110)의 사용자가 컨텐츠와 인터렉션하는데 보낼 것으로 예상되는 추정된 시간의 양이다. 다른 파라미터 없는 검색 시스템들에서, 검색 결과들은 예측된 관여 시간에 따라서만 랭킹될 수 있다.
다음, 랭킹 모듈(166)은 검색 결과들의 각각의 예측된 관여 시간에 대해 “조절”을 결정할 수 있다. 랭킹 모듈(166)은 컴퓨팅 디바이스(110)의 동적 속성들을 입력하고 타겟 속성 유형마다 스코어 조절을 할 수 있다. 예를 들면, 타겟 속성이 컴퓨팅 디바이스(110)의 동적 속성들과 호환되는 경우, 상기 스코어 조절은 0일 수 있다. 다시 말해서, 랭킹 모듈(166)은 주어진 컴퓨팅 디바이스(110)의 현재 컨텍스트에 대해 예상되는 한 사용자가 컨텐츠를 보고, 듣거나 느낄 가능성이 크다고 추론할 수 있다. 그러나, 타겟 속성이 컴퓨팅 디바이스(110)의 동적 속성들과 호환되지 않으면(예를 들어, 그 유형의 타겟 속성과 연관된 컨텐츠가 현재 컨텍스트에서 제시에 부적절함을 표시), 랭킹 모듈(166)은 검색 결과의 예측된 관여 시간을 0보다 크게 조절할 수 있다. 다시 말해서, 랭킹 모듈(166)은 주어진 컴퓨팅 디바이스(110)의 현재 컨텍스트에 대해 예상되는 한 사용자가 컨텐츠를 보고, 듣거나 느낄 가능성이 낮고 추론할 수 있고, 그에 따라 예측된 관여 시간을 조절할 것이다.
랭킹 모듈(166)은 스코어 조절에 의해 관여 시간들을 감소시킴으로써 검색 결과들 각각의 예측된 관여 시간의 각각을 조절할 수 있다. 예를 들면, 한 조각의 컨텐츠가 1분의 관여 시간을 가진다고 가정한다. 랭킹 모듈(166)은 컨텐츠와 연관된 타겟 속성이 컴퓨팅 디바이스(110)의 동적 속성들과 호환되는 경우 관여 시간을 조절하지 않을 수 있고, 그러므로 상기 조절된 관여 시간은 1분으로 남아 있을 것이다. 그러나, 타겟 속성이 컴퓨팅 디바이스(110)의 동적 속성들과 호환되지 않는 경우, 랭킹 모듈(166)은 현재 컨텍스트와 보다 덜 호환되는 다른 타겟 속성들보다 더 호환되는 타겟 속성들에 대해 보다 작은 감소의 어떤 양으로 관여 시간을 감소시킬 수 있다.
랭킹 모듈(166)은 그들 각각의 조절된 관여 시간들에 따라 복수의 파라미터 없는 검색 결과들을 순서화할 수 있다. 랭킹 모듈(166)은 보다 많게 조절된 관여 시간을 가지는 검색 결과들을 보다 적게 조절된 관여 시간을 가지는 검색 결과들 보다 높은 랭킹을 할당할 수 있다.
ISS(160)는 상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송할 수 있다(440). 예를 들면, 랭킹 모듈(166)은 검색 결과들과 동적 랭킹을 네트워크(130)를 통해 컴퓨팅 디바이스(110)에 출력할 수 있다. UI 모듈(120)은 동적 랭킹에 기초하여 검색 결과들을 포맷팅하고, UID(112)를 사용하여 검색 결과들을 사용자에게 제시할 수 있다.
도 4에서 도시된 바와 같이, ISS(160)는 동적 속성들이 변경됨에 따라 동작들(420-440)을 반복할 수 있다. 예를 들면, ISS(160)는 앞선 시간에 컴퓨팅 디바이스(110)의 초기 동적 속성들에 적어도 부분적으로 기초하여 복수의 파라미터 없는 검색 결과들의 초기 동적 랭킹을 결정할 수 있다. 그 후, 이후 시간에, ISS(160)는 상기 하나 이상의 후속적 동적 속성들 중 적어도 하나는 상기 하나 이상의 초기 동적 속성들 각각과 상이한 컴퓨팅 디바이스(110)의 하나 이상의 후속적 동적 속성들을 결정할 수 있다. ISS(160)는 상기 컴퓨팅 디바이스(110)의 상기 하나 이상의 후속적 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 초기 동적 랭킹과 상이한 상기 복수의 검색 결과들의 후속적 동적 랭킹을 결정할 수 있다. 그 후, ISS(160)는 상기 후속적 동적 랭킹을 컴퓨팅 디바이스(110)에 전송할 수 있다. ISS(160)로부터 후속적 동적 랭킹을 수신함에 따라, 컴퓨팅 디바이스(110)의 UI 모듈(120)은 어떤 검색 결과가 그것의 사용자 인터페이스의 전단에 제시될지 변경할 수 있다.
예를 들면, ISS(160)는 컴퓨팅 디바이스(110)의 동적 속성들이 오디도 출력 디바이스(예를 들어, 헤드폰)이 컴퓨팅 디바이스(110)에 연결되지 않음을 표시하기 때문에 오디오 파일이 텍스트 또는 스틸 이미지 파일보다 낮게 랭킹되는 검색 결과들의 초기 동적 랭킹을 결정할 수 있다. 이후, ISS(160)는 컴퓨팅 디바이스(110)의 동적 속성들이 오디도 출력 디바이스(예를 들어, 헤드폰)이 컴퓨팅 디바이스(110)에 연결됨을 후속적으로 표시하기 때문에 오디오 파일이 텍스트 또는 스틸 이미지 파일보다 높게 랭킹되는 검색 결과들의 후속적 동적 랭킹을 결정할 수 있다.
일부 예시에서, ISS(160)는 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 낮은 네트워크 연결 강도 또는 낮은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 텍스트 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹함으로써, 복수의 검색 결과들의 동적 랭킹을 결정할 수 있다. 예를 들면, 컴퓨팅 디바이스(110)의 동적 속성들이 네트워크 연결 속도, 대역폭, 지연시간 또는 다른 네트워크 특성들이 핸들링될 수 없고 및/또는 남은 배터리 파워가 일정 유형의 복잡한 컨텐츠(예를 들어, 오디오, 시각적, 오디오 및 시각적)를 제시하기에 충분하지 않다고 표시하면, 랭킹 모듈(166)은 동적 랭킹에서 더 복잡한 컨텐츠와 관련된 검색 결과들을 낮게 이동시키고 덜 복잡한 컨텐츠(예를 들어, 텍스트 컨텐츠)의 위치를 높게 한다.
일부 예시에서, ISS(160)는 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 촉각적 컨텐츠 또는 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹함으로써, 복수의 검색 결과들의 동적 랭킹을 결정할 수 있다. 예를 들면, 컴퓨팅 디바이스(110)의 동적 속성들이 네트워크 연결 속도, 대역폭, 지연시간 또는 다른 네트워크 특성들이 핸들링될 수 있고 및/또는 남은 배터리 파워가 오디오 재생 없는 일정 유형의 복잡한 컨텐츠(예를 들어, 시각적, 촉각적 등)를 제시하기에 충분하다고 표시하면, 랭킹 모듈(166)은 동적 랭킹에서 더 복잡한 비-오디오 컨텐츠와 관련된 검색 결과들을 높게 이동시키고 오디오 및 덜 복잡한 컨텐츠(예를 들어, 텍스트 컨텐츠)의 위치를 낮게 한다.
일부 예시에서, ISS(160)는 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되어 있고 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 오디오 및 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹함으로써, 복수의 검색 결과들의 동적 랭킹을 결정할 수 있다. 예를 들면, 컴퓨팅 디바이스(110)의 동적 속성들이 네트워크 연결 속도, 대역폭, 지연시간 또는 다른 네트워크 특성들이 핸들링될 수 있고 및/또는 남은 배터리 파워가 오디오 재생을 가지는 일정 유형의 복잡한 컨텐츠(예를 들어, 오디오, 오디오 및 시각적 등)를 제시하기에 충분하다고 표시하면, 랭킹 모듈(166)은 동적 랭킹에서 더 복잡한 오디오 컨텐츠와 관련된 검색 결과들을 높게 이동시키고 비-오디오 및 덜 복잡한 컨텐츠의 위치를 낮게 한다.
따라서, 일부 예시에서, 디바이스 속성들 및 사용자의 연결 상태에 기초하여 검색 결과들의 랭킹을 조절하도록 학습할 수 있는 시스템이 기술되었다. 일부 예시에서, 시스템은 컨텐츠 유형(예를 들어, 비디오, 텍스트, 오디오) 및 사용자의 디바이스/연결 레벨에 기초하여 해당 사용자가 한 조각의 컨텐츠와 시간을 보낼 것이라는 “관여 시간”에 대한 디스카운트 요소를 예측하는 교차-사용자 모델을 사용한다. 디바이스 속성들의 예시들은 정적 및 동적 속성들을 포함한다. 정적 속성들의 예시들은 디바이스 유형(예를 들어, 태블릿, 전화, 시계), 입력/출력 메커니즘이 사용가능한 스크린 크기를 포함한다. 동적 속성들의 예시들은 연결 레벨, 헤드폰이 사용가능한지 여부, 스트리밍 미디어 디바이스가 사용가능한지 여부, 배터리 레벨 및 디바이스가 사용자의 주요 디바이스이거나 부차적 디바이스인지 여부를 포함한다.
일부 예시에서, 시스템은 각 검색 결과에 대한 스코어를 예측하고 상기 예측된 스코어에 따라 검색 결과들을 랭킹한다. 예를 들어, 스코어는 사용자의 검색 이력, 유사한 유형의 정보와의 인터렉션 및 사용자 컨텍스트에 기초하여 결정될 수 있다. 시스템은 타겟 컨텐츠에 관한 속성들(예를 들어, 모바일 친화적인지 아닌지, 터치 타겟의 크기, 디바이스에서 예상된 로딩 시간, 타겟 목적지의 크기, 프로세서 및 메모리 또는 다른 시스템 요구사항, 페이지 상 컨텐츠의 양, 주요 기사에서 글자수, 오디오, 시각적, 오디오/시각적인 주요 미디어 컨텐츠의 유형, 페이지에서 이미지의 크기, 내부적 목적지 및 정보의 유형)을 추론할 수 있다. 그 후 시스템은 디바이스 속성들 및 타겟 속성들에 기초하여 스코어 간 링크를 기계 학습할 수 있다.
예를 들면, 터치 타겟 크기 및 이미지 크기와 관련하여, 시스템은 터치 타겟의 크기 또는 검색 결과와 연관된 이미지 크기 때문에 사용자가 터치 타겟을 사용하거나 이미지를 보는데 어려움을 겪는다면(예를 들어, 시계와 같이 작은 크기의 스크린에서 제시된 경우), 시스템은 다른 검색 결과들 가운데에서 상기 결과에 낮은 랭킹을 줄 수 있다. 예를 들면, 터치 타겟 크기 및 이미지 크기와 관련하여, 시스템은 터치 타겟의 크기 또는 검색 결과와 연관된 이미지 크기 때문에 사용자가 터치 타겟을 사용하거나 이미지를 보는데 어려움을 겪는다면(예를 들어, 시계와 같이 작은 크기의 스크린에서 제시된 경우), 시스템은 다른 검색 결과들 가운데에서 상기 결과에 높은 랭킹을 주거나 랭킹을 변경하지 않을 수 있다.
일부 예시에서, 검색 결과와 연관된 네트워크 위치와 관련하여, 시스템은 검색 결과가 디바이스와 연관된 주어진 현재 네트워크 연결에서 사용불가능한 컨텐츠의 위치를 가리키고 따라서 컨텐츠의 사용을 적어도 어렵게하면(예를 들어, 컨텐츠가 방화벽 뒤에 위치되어 있거나 이와 달리 현재 네트워크 연결로부터 엑세스가능하지 않은 경우), 시스템은 다른 검색 결과들 가운데에서 상기 결과에 낮은 랭킹을 줄 수 있다. 반대로, 시스템이 검색 결과가 디바이스와 연관된 주어진 현재 네트워크 연결에서 사용가능한 컨텐츠의 위치를 가리키고 따라서 컨텐츠의 사용이 가능하면(예를 들어, 컨텐츠가 방화벽 뒤에 위치되어 있으나 디바이스의 현재 네트워크 연결 또한 방화벽을 넘어 엑세스할 수 있는 경우), 시스템은 다른 검색 결과들 가운데에서 상기 결과에 높은 랭킹을 주거나 랭킹을 변경하지 않을 수 있다.
일부 예시에서, 검색 결과와 연관된 데이터 크기와 관련하여, 시스템은 검색 결과가 주어진 현재 네트워크 연결에서 로딩하는데 긴 시간이 필요할 수 있는 큰 크기의 파일을 가리키면 시스템은 다른 검색 결과들 가운데에서 상기 결과에 낮은 랭킹을 줄 수 있다고 추론할 수 있다. 반대로, 시스템은 검색 결과가 작은 크기의 파일을 가리키거나 디바이스의 빠른 네트워크 연결 때문에, 상기 결과가 주어진 현재 네트워크 연결에서 긴 기간이 필요하지 않을 것이라고 시스템이 추론하면, 시스템은 다른 검색 결과들 가운데에서 상기 결과에 높은 랭킹을 주거나 랭킹을 변경하지 않을 수 있다고 추론할 수 있다.
일부 예시에서, 시스템은 이 스코어를 사용자별로 개인화할 수 있다. 예를 들면, 이는 일부 사용자들이 그들의 태블릿에서 긴 기사를 읽기만 하지만, 그들이 그들의 스트리밍 디바이스와 연결된 집에 있는 경우에는 TV쇼를 시청하는 것을 좋아하는 경우일 수 있다. 시스템은 사용자가 그들의 태블릿을 사용하는 경우 긴 기사들에 높은 스코어를 주고, 스트리밍 디바이스에 연결되고 집에 있는 경우 TV 쇼에 높은 스코어를 줄 것이다.
제1절. 방법으로서, 컴퓨팅 시스템에 의해, 컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행하는 단계; 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정하는 단계, 상기 각각의 타겟 속성은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하며; 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정하는 단계, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시하며; 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하는 단계; 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하는 단계를 포함하는 것을 특징으로 하는 방법.
제2절. 상기 하나 이상의 동적 속성들은 초기 동적 속성들이며; 상기 동적 랭킹은 초기 동적 랭킹이며; 그리고 상기 방법은: 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 하나 이상의 후속적 동적 속성들을 결정하는 단계, 상기 하나 이상의 후속적 동적 속성들 중 적어도 하나는 상기 하나 이상의 초기 동적 속성들 각각과 상이하며; 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하는 단계; 상기 컴퓨팅 시스템에 의해, 상기 후속적 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.
제3절. 제1 내지 제2 중 어느 한 절에 있어서, 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 하나 이상의 정적 속성들을 결정하는 단계, 상기 하나 이상의 정적 속성들은 스크린 크기, 디바이스 유형, 디스플레이 디바이스의 사용가능성 또는 오디오 디바이스의 사용가능성 중 적어도 하나를 표시하며; 상기 복수의 검색 결과들의 상기 동적 랭킹은 상기 컴퓨팅 디바이스의 상기 하나 이상의 정적 속성들에 적어도 부분적으로 기초하여 더 결정되는 것을 특징으로 하는 방법.
제4절. 제1 내지 제3 중 어느 한 절에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는: 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들 각각과 연관된 각각의 관여 시간을 예측하는 단계, 검색 결과의 상기 각각의 관여 시간은 상기 사용자가 그 검색 결과의 컨텐츠와 인터렉션하는데 보낼 것으로 예측된 시간의 추정된 양이며; 상기 컴퓨팅 시스템에 의해, 상기 각각의 관여 시간에 따라 상기 복수의 검색 결과들 각각을 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
제5절. 제1 내지 제4 중 어느 한 절에 있어서, 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성은 그 검색 결과과 연관된 터치 타겟 크기, 그 검색 결과와 연관된 이미지 크기, 그 검색 결과와 연관된 네트워크 위치 및 그 검색 결과와 연관된 데이터 크기 중 적어도 하나를 더 표시하는 것을 특징으로 하는 방법.
제6절. 제1 내지 제5 중 어느 한 절에 있어서, 상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 사용자와 연관된 통신 정보에 기초하여, 상기 컴퓨팅 디바이스의 상기 컨텍스트를 결정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
제7절. 제1 내지 제6 중 어느 한 절에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는: 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되었음을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 오디오 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
제8절. 제7절에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는: 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되어 있지 않음을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 복수의 검색 결과들 중 다른 검색 결과들을 상기 오디오 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
제9절. 제1 내지 제8 중 어느 한 절에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는: 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 낮은 네트워크 연결 강도 또는 낮은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 텍스트 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
제10절. 제1 내지 제9 중 어느 한 절에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는: 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 촉각적 컨텐츠 또는 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
제11절. 제1 내지 제10 중 어느 한 항에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는: 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되어 있고 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 오디오 및 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
제12절. 명령어들을 포함하는 컴퓨터 판독가능 저장 매체로서, 상기 명령어들은 실행될 때, 컴퓨팅 시스템의 적어도 하나의 프로세서로 하여금: 컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행하고; 상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정하고, 상기 각각의 타겟 속성은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하며; 상기 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정하게 하며, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시하며, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하게 하고; 그리고 상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하게 하는 것을 특징으로 하는 컴퓨터 판독가능 저장 매체.
제13절. 제12절에 있어서, 상기 하나 이상의 동적 속성들은 초기 동적 속성들이며; 상기 동적 랭킹은 초기 동적 랭킹이며; 그리고 상기 명령어들은: 상기 컴퓨팅 디바이스의 하나 이상의 후속적 동적 속성들을 결정하게 하며, 상기 하나 이상의 후속적 동적 속성들 중 적어도 하나는 상기 하나 이상의 초기 동적 속성들 각각과 상이하며; 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하게 하며; 상기 후속적 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하게 하는 것을 특징으로 하는 컴퓨터 판독가능 저장 매체.
제14절. 제12 내지 제13 중 어느 한 절에 있어서, 상기 명령어들은: 상기 컴퓨팅 디바이스의 하나 이상의 정적 속성들을 결정하게 하며, 상기 하나 이상의 정적 속성들은 스크린 크기, 디바이스 유형, 디스플레이 디바이스의 사용가능성 또는 오디오 디바이스의 사용가능성 중 적어도 하나를 표시하며; 상기 복수의 검색 결과들의 상기 동적 랭킹은 상기 컴퓨팅 디바이스의 상기 하나 이상의 정적 속성들에 적어도 부분적으로 기초하여 더 결정되는 것을 특징으로 하는 컴퓨터 판독가능 저장 매체.
제15절. 제12 내지 제14 중 어느 한 절에 있어서, 상기 명령어들은: 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들 각각과 연관된 각각의 관여 시간을 예측하게 하고, 검색 결과의 상기 각각의 관여 시간은 상기 사용자가 그 검색 결과의 컨텐츠와 인터렉션하는데 보낼 것으로 예측된 시간의 추정된 양이며; 상기 각각의 관여 시간에 따라 상기 복수의 검색 결과들 각각을 랭킹하게 하는 것을 특징으로 하는 방법.
제16절. 제12 내지 제15 중 어느 한 절에 있어서, 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성은 그 검색 결과과 연관된 터치 타겟 크기, 그 검색 결과와 연관된 이미지 크기, 그 검색 결과와 연관된 네트워크 위치 및 그 검색 결과와 연관된 데이터 크기 중 적어도 하나를 더 표시하는 것을 특징으로 하는 컴퓨터 판독가능 저장 매체.
제17절. 컴퓨팅 시스템으로서, 적어도 하나의 프로세서; 적어도 하나의 모듈을 포함하며, 상기 적어도 하나의 모듈은: 컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행하고; 상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정하고, 상기 각각의 타겟 속성은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하며; 상기 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정하고, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시하며; 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하고; 그리고 상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하도록 상기 적어도 하나의 프로세서에 의해 동작가능한 것을 특징으로 하는 컴퓨팅 시스템.
제18절. 제17절에 있어서, 상기 모듈은: 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 낮은 네트워크 연결 강도 또는 낮은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 텍스트 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하도록 상기 적어도 하나의 프로세서에 의해 더 동작가능한 것을 특징으로 하는 컴퓨팅 시스템.
제19절. 제17 내지 제18 중 어느 한 절에 있어서, 상기 모듈은: 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 촉각적 컨텐츠 또는 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하도록 상기 적어도 하나의 프로세서에 의해 더 동작가능한 것을 특징으로 하는 컴퓨팅 시스템.
제20절. 제17 내지 제19 중 어느 한 절에 있어서, 상기 모듈은: 상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되어 있고 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 오디오 및 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하하도록 상기 적어도 하나의 프로세서에 의해 더 동작가능한 것을 특징으로 하는 컴퓨팅 시스템.
제21절. 컴퓨팅 시스템으로서, 제1 내지 제11의 방법 중 어느 하나를 수행하기 위한 수단을 포함하는 것을 특징으로 하는 컴퓨팅 시스템.
제22절. 명령어들을 포함하는 컴퓨터 판독가능 저장 매체로서, 상기 명령어들은 실행될 때, 컴퓨팅 시스템의 적어도 하나의 프로세서로 하여금 제1 내지 제11의 방법 중 어느 하나를 수행하게 하는 것을 특징으로 하는 컴퓨터 판독가능 저장 매체.
제23절. 제17절에 있어서, 제1 내지 제11의 방법 중 어느 하나를 수행하기 위한 수단을 포함하는 것을 특징으로 하는 컴퓨팅 시스템.
하나 이상의 예시들에서, 기술된 기능들은 하드웨어, 소프트웨어, 펌웨어 또는 그것들의 임의의 조합에서 구현될 수 있다. 소프트웨어에서 구현되는 경우, 기능들은 하나 이상의 명령어들 또는 코드로서 컴퓨터 판독가능 매체에 저장되거나 컴퓨터 판독가능 매체를 통해 전송되고 하드웨어 기반 프로세싱 유닛에 의해 실행된다. 컴퓨터 판독가능 매체는 컴퓨터 판독가능 저장 매체 또는 매체들을 포함할 수 있고, 이는 데이터 저장 매체와 같은 유형적 매체 또는 예를 들어 통신 프로토콜에 따라 한 곳에서 다른 곳으로 컴퓨터 프로그램의 전송을 지원하는 임의의 매체를 포함하는 통신 매체에 대응한다. 이 방식에서, 컴퓨터 판독가능 매체는 일반적으로 (1) 비일시적인 유형적 컴퓨터 판독가능 저장 매체 또는 (2) 신호 또는 반송파와 같은 통신 매체에 대응할 수 있다. 데이터 저장 매체는 본 개시에서 기술된 기법들의 구현을 위해 명령어들, 코드 및/또는 데이터 구조들을 검색하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 엑세스될 수 있는 임의의 사용가능한 매체일 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독가능 매체를 포함할 수 있다.
제한이 아닌 예시로서, 그러한 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 기타 광학 디스크 스토리지, 자기 디스크 스토리지, 또는 기타 자기 저장 디바이스들, 플래시 메모리 또는 명령어들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 저장하는데 사용될 수 있고 컴퓨터에 의해 엑세스될 수 있는 임의의 기타 저장 매체를 포함할 수 있다. 또한, 임의의 연결이 컴퓨터 판독가능 매체에 적절하게 명명될 수 있다. 예를 들면, 웹사이트, 서버 또는 동축 케이블, 광섬유 케이블, 꼬임쌍선, DSL 또는 적외선, 라디오 및 마이크로웨이브와 같은 무선 기술들을 사용하는 기타 원격 소스로부터 전송되는 경우, 동축 케이블, 광섬유 케이블, 꼬임쌍선, DSL 또는 적외선, 라디오 및 마이크로웨이브와 같은 무선 기술들은 매체의 정의에 포함된다. 그러나, 컴퓨터 판독가능 저장 매체 및 매체들 및 데이저 저장 매체는 연결, 반송파, 신호 또는 다른 일시적인 매체를 포함하지 않으나, 대신에 비일시적인 유형적 저장 매체를 지칭한다. 본 명세서에서 사용된 바와 같이, 디스크 및 디스크들은 컴팩트 디스크(CD), 레이저 디스크, 광학 디스크, DVD, 플로피 디스크 및 블루레이 디스크를 포함하며, 디스크들은 보통 데이터를 자기적으로 재생산하면서 디스크들은 데이터를 레이저로 광학적으로 재생산한다. 또한, 상기의 조합들은 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령어들은 하나 이상의 디지털 신호 프로세서들(DSP), 범용 마이크로프로세서들, 주문형 집적회로들(ASIC), 필드 프로그램가능 논리 배열들(FPGA) 또는 기타 균등한 통합 또는 이산 논리 회로와 같은 하나 이상의 프로세서들에 의해 실행될 수 있다. 따라서, 본 명세서에서 사용된 바와 같이, 용어 “프로세서”는 임의의 상기 구조 또는 본 명세서에 기술된 기법들의 구현에 적절한 임의의 기타 구조를 지칭할 수 있다. 추가로, 일부 양태에서, 본 명세서에 기술된 기능은 전용 하드웨어 및/또는 소프트웨어 모듈들 내에서 제공될 수 있다. 또한, 기법들은 하나 이상의 회로들 또는 논리 엘리먼트들에서 완전히 구현될 수 있다.
본 개시의 기법들은 무선 헤드셋, 집적 회로(IC) 또는 IC의 세트(예를 들어, 칩셋)를 포함하는 광범위한 디바이스들 또는 장치들에서 구현될 수 있다. 다양한 컴포넌트들, 모듈들 또는 유닛들이 개시된 기법들을 수행하도록 구성된 디바이스들의 기능적 양태들을 강조하기 위해 본 개시에서 기술되었지만, 상이한 하드웨어 유닛들에 의한 실현을 필수적으로 요구하지 않는다. 오히려, 상기 기술된 바와 같이, 다양한 유닛들이 적절한 소프트웨어 및/또는 펌웨어와 함께 하드웨어 유닛에서 조합되거나 상기 기술된 바와 같은 하나 이상의 프로세서들을 포함하는 상호 동작적 하드웨어 유닛들의 집합에 의해 제공될 수 있다.
다양한 실시예들이 기술되었다. 이들 및 다른 실시예들도 다음의 청구항들의 범위 내에 있다.

Claims (15)

  1. 방법으로서,
    컴퓨팅 시스템에 의해, 컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행하는 단계;
    상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정하는 단계, 상기 각각의 타겟 속성은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하며;
    상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정하는 단계, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시하며;
    상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하는 단계;
    상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 청구항 1에 있어서,
    상기 하나 이상의 동적 속성들은 초기 동적 속성들이며;
    상기 동적 랭킹은 초기 동적 랭킹이며; 그리고
    상기 방법은:
    상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 하나 이상의 후속적 동적 속성들을 결정하는 단계, 상기 하나 이상의 후속적 동적 속성들 중 적어도 하나는 상기 하나 이상의 초기 동적 속성들 각각과 상이하며;
    상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 후속적 동적 속성들 및 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 초기 동적 랭킹과 상이한 상기 복수의 검색 결과들의 후속적 동적 랭킹을 결정하는 단계;
    상기 컴퓨팅 시스템에 의해, 상기 후속적 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  3. 청구항 1 내지 2 중 어느 한 항에 있어서,
    상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 하나 이상의 정적 속성들을 결정하는 단계, 상기 하나 이상의 정적 속성들은 스크린 크기, 디바이스 유형, 디스플레이 디바이스의 사용가능성 또는 오디오 디바이스의 사용가능성 중 적어도 하나를 표시하며;
    상기 복수의 검색 결과들의 상기 동적 랭킹은 상기 컴퓨팅 디바이스의 상기 하나 이상의 정적 속성들에 적어도 부분적으로 기초하여 더 결정되는 것을 특징으로 하는 방법.
  4. 청구항 1 내지 3 중 어느 한 항에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는:
    상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들 각각과 연관된 각각의 관여 시간을 예측하는 단계, 검색 결과의 상기 각각의 관여 시간은 상기 사용자가 그 검색 결과의 컨텐츠와 인터렉션하는데 보낼 것으로 예측된 시간의 추정된 양이며;
    상기 컴퓨팅 시스템에 의해, 상기 각각의 관여 시간에 따라 상기 복수의 검색 결과들 각각을 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
  5. 청구항 1 내지 4 중 어느 한 항에 있어서, 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성은 그 검색 결과와 연관된 터치 타겟 크기, 그 검색 결과와 연관된 이미지 크기, 그 검색 결과와 연관된 네트워크 위치 및 그 검색 결과와 연관된 데이터 크기 중 적어도 하나를 더 표시하는 것을 특징으로 하는 방법.
  6. 청구항 1 내지 5 중 어느 한 항에 있어서,
    상기 컴퓨팅 시스템에 의해, 상기 컴퓨팅 디바이스의 상기 사용자와 연관된 통신 정보에 기초하여, 상기 컴퓨팅 디바이스의 상기 컨텍스트를 결정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  7. 청구항 1 내지 6 중 어느 한 항에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는:
    상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되었음을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 각각의 상기 복수의 검색 결과들의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 오디오 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
  8. 청구항 7에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는:
    상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되어 있지 않음을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 복수의 검색 결과들 중 다른 검색 결과들을 상기 오디오 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
  9. 청구항 1 내지 8 중 어느 한 항에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는:
    상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 낮은 네트워크 연결 강도 또는 낮은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 텍스트 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
  10. 청구항 1 내지 9 중 어느 한 항에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는:
    상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 촉각적 컨텐츠 또는 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
  11. 청구항 1 내지 10 중 어느 한 항에 있어서, 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하는 단계는:
    상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되어 있고 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 컴퓨팅 시스템에 의해, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 오디오 및 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 단계를 포함하는 것을 특징으로 하는 방법.
  12. 컴퓨팅 시스템으로서,
    적어도 하나의 프로세서;
    적어도 하나의 모듈을 포함하며, 상기 적어도 하나의 모듈은:
    컴퓨팅 디바이스의 컨텍스트에 적어도 부분적으로 기초하여, 상기 컴퓨팅 디바이스의 사용자와 관련될 것으로 결정된 복수의 검색 결과들을 식별하기 위해 파라미터 없는 검색 쿼리를 실행하고;
    상기 복수의 검색 결과들 각각에 대한, 각각의 타겟 속성을 결정하고, 상기 각각의 타겟 속성은 검색 결과가 오디오 컨텐츠, 시각적 컨텐츠, 오디오 및 시각적 컨텐츠, 촉각적 컨텐츠 또는 텍스트 컨텐츠와 연관되었는지 여부를 표시하며;
    상기 컴퓨팅 디바이스의 하나 이상의 동적 속성들을 결정하고, 상기 하나 이상의 동적 속성들은 네트워크 연결 강도, 오디오 출력 디바이스에 대한 연결 상태, 배터리 레벨 또는 멀티미디어 스트리밍 디바이스에 대한 연결 상태 중 적어도 하나를 표시하며;
    상기 컴퓨팅 디바이스의 상기 하나 이상의 동적 속성들 및 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 복수의 검색 결과들의 동적 랭킹을 결정하고; 그리고
    상기 복수의 검색 결과들 및 상기 동적 랭킹을 상기 컴퓨팅 디바이스에 전송하도록 상기 적어도 하나의 프로세서에 의해 동작가능한 것을 특징으로 하는 컴퓨팅 시스템.
  13. 청구항 12에 있어서, 상기 적어도 하나의 모듈은:
    상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 낮은 네트워크 연결 강도 또는 낮은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 텍스트 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 것;
    상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 촉각적 컨텐츠 또는 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 것; 또는
    상기 하나 이상의 동적 속성들이 상기 컴퓨팅 디바이스가 임의의 오디오 출력 디바이스에 연결되어 있고 높은 네트워크 연결 강도 또는 높은 배터리 레벨 가짐을 표시한다고 결정함에 응답하여, 상기 복수의 검색 결과들 각각의 상기 각각의 타겟 속성에 기초하여, 상기 동적 랭킹에서 상기 오디오 및 시각적 컨텐츠와 연관된 상기 복수의 검색 결과들 중 하나 이상의 검색 결과들을 상기 복수의 검색 결과들 중 다른 검색 결과들 보다 높게 랭킹하는 것 중 적어도 하나에 의해 상기 복수의 검색 결과들의 상기 동적 랭킹을 결정하도록 상기 적어도 하나의 프로세서에 의해 더 동작가능한 것을 특징으로 하는 컴퓨팅 시스템.
  14. 컴퓨팅 시스템으로서, 청구항 1 내지 11의 방법 중 어느 하나를 수행하기 위한 수단을 포함하는 것을 특징으로 하는 컴퓨팅 시스템.
  15. 명령어들을 포함하는 컴퓨터 판독가능 저장 매체로서, 상기 명령어들은 실행될 때, 컴퓨팅 시스템의 적어도 하나의 프로세서로 하여금 청구항 1 내지 11의 방법 중 어느 하나를 수행하게 하는 것을 특징으로 하는 컴퓨터 판독가능 저장 매체.
KR1020187011653A 2015-11-23 2016-08-25 컴퓨팅 디바이스 백그라운드의 속성들에 기초한 정보 랭킹 KR102049981B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/949,074 2015-11-23
US14/949,074 US10685029B2 (en) 2015-11-23 2015-11-23 Information ranking based on properties of a computing device
PCT/US2016/048664 WO2017091261A1 (en) 2015-11-23 2016-08-25 Information ranking based on properties of a computing device

Publications (2)

Publication Number Publication Date
KR20180058799A true KR20180058799A (ko) 2018-06-01
KR102049981B1 KR102049981B1 (ko) 2019-11-28

Family

ID=56852432

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187011653A KR102049981B1 (ko) 2015-11-23 2016-08-25 컴퓨팅 디바이스 백그라운드의 속성들에 기초한 정보 랭킹

Country Status (9)

Country Link
US (2) US10685029B2 (ko)
EP (1) EP3341859B1 (ko)
JP (1) JP6543774B2 (ko)
KR (1) KR102049981B1 (ko)
CN (1) CN108351891A (ko)
DE (1) DE112016005358T5 (ko)
GB (1) GB2557806A (ko)
RU (1) RU2018114072A (ko)
WO (1) WO2017091261A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018045303A1 (en) * 2016-09-02 2018-03-08 Bose Corporation Application-based messaging system using headphones
US10474673B2 (en) * 2017-03-28 2019-11-12 Salesforce.Com, Inc. Methods and apparatus for performing machine learning to improve capabilities of an artificial intelligence (AI) entity used for online communications
US10628501B2 (en) * 2017-06-07 2020-04-21 Centurylink Intellectual Property Llc Scene aware searching
US10783149B2 (en) * 2017-08-02 2020-09-22 Microsoft Technology Licensing, Llc Dynamic productivity content rendering based upon user interaction patterns
US10552410B2 (en) * 2017-11-14 2020-02-04 Mindbridge Analytics Inc. Method and system for presenting a user selectable interface in response to a natural language request
US11520789B2 (en) * 2019-10-21 2022-12-06 Teradata Us, Inc. Caching objects from a data store

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040044781A1 (en) * 2002-08-29 2004-03-04 Motorola, Inc. Dynamic proxy server filtering
US20120053829A1 (en) * 2010-08-30 2012-03-01 Sumit Agarwal Providing Results to Parameterless Search Queries
US20140344266A1 (en) * 2013-05-17 2014-11-20 Broadcom Corporation Device information used to tailor search results

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006251A (en) 1995-07-11 1999-12-21 Hitachi, Ltd. Service providing system for providing services suitable to an end user request based on characteristics of a request, attributes of a service and operating conditions of a processor
JP3223782B2 (ja) * 1996-02-08 2001-10-29 三菱電機株式会社 車両経路算出装置
WO2001097084A2 (en) * 2000-06-12 2001-12-20 Cachestream Corporation Personalized content management
US7089237B2 (en) * 2001-01-26 2006-08-08 Google, Inc. Interface and system for providing persistent contextual relevance for commerce activities in a networked environment
US7546554B2 (en) * 2004-03-31 2009-06-09 Fuji Xerox Co., Ltd. Systems and methods for browsing multimedia content on small mobile devices
US7664735B2 (en) 2004-04-30 2010-02-16 Microsoft Corporation Method and system for ranking documents of a search result to improve diversity and information richness
JP5822425B2 (ja) 2005-05-13 2015-11-24 トリパス イメージング インコーポレイテッド 顕微鏡像用に試料を染色する方法
US7836056B2 (en) * 2006-09-28 2010-11-16 Microsoft Corporation Location management of off-premise resources
US20080082490A1 (en) * 2006-09-28 2008-04-03 Microsoft Corporation Rich index to cloud-based resources
EP1914643A1 (en) * 2006-10-19 2008-04-23 Motorola, Inc. Method and apparatus for filtering peer-to-peer network searches for limited capability devices
US20080104049A1 (en) * 2006-10-25 2008-05-01 Microsoft Corporation Document ranking utilizing parameter varying data
US20090030792A1 (en) 2007-07-24 2009-01-29 Amit Khivesara Content recommendation service
EP2043306B1 (de) * 2007-09-28 2015-04-15 Unify GmbH & Co. KG Verfahren zur Organisation von Netzknoten in einem paketorientierten Netzwerk
US7877402B1 (en) * 2008-01-15 2011-01-25 Intuit Inc. Method and system for providing network search results based in part on a user's financial data
US8862657B2 (en) * 2008-01-25 2014-10-14 Seven Networks, Inc. Policy based content service
US20100082398A1 (en) * 2008-09-29 2010-04-01 Yahoo! Inc. System for providing contextually relevant data
US9519728B2 (en) * 2009-12-04 2016-12-13 Time Warner Cable Enterprises Llc Apparatus and methods for monitoring and optimizing delivery of content in a network
US8719246B2 (en) 2010-06-28 2014-05-06 Microsoft Corporation Generating and presenting a suggested search query
US10496714B2 (en) * 2010-08-06 2019-12-03 Google Llc State-dependent query response
US9269096B2 (en) * 2011-05-23 2016-02-23 Microsoft Technology Licensing, Llc Advertisement rendering for multiple synced devices
US9392308B2 (en) * 2011-08-04 2016-07-12 Thomson Licensing Content recommendation based on user location and available devices
US8384726B1 (en) * 2011-08-31 2013-02-26 Google Inc. Selective rendering of off-screen content
WO2013038053A1 (en) * 2011-09-14 2013-03-21 Nokia Corporation Method and apparatus for distributed script processing
US20130254812A1 (en) * 2012-03-23 2013-09-26 Sony Network Entertainment International Llc Iptv radio device using low-bandwidth connection
JP2014006669A (ja) * 2012-06-22 2014-01-16 Sharp Corp 推奨コンテンツ通知システム、その制御方法および制御プログラム、ならびに記録媒体
US9483518B2 (en) * 2012-12-18 2016-11-01 Microsoft Technology Licensing, Llc Queryless search based on context
KR20140089751A (ko) * 2013-01-07 2014-07-16 엘지전자 주식회사 상황 인지를 이용한 지능형 검색 서비스 방법 및 그 단말기
US10089394B2 (en) * 2013-06-25 2018-10-02 Google Llc Personal search result identifying a physical location previously interacted with by a user
US10437830B2 (en) 2013-10-14 2019-10-08 Nokia Technologies Oy Method and apparatus for identifying media files based upon contextual relationships
US10409454B2 (en) * 2014-03-05 2019-09-10 Samsung Electronics Co., Ltd. Smart watch device and user interface thereof
CN103970861B (zh) * 2014-05-07 2017-11-17 华为技术有限公司 信息呈现方法和设备
US20160061617A1 (en) * 2014-09-02 2016-03-03 Microsoft Corporation Providing in-navigation search results that reduce route disruption

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040044781A1 (en) * 2002-08-29 2004-03-04 Motorola, Inc. Dynamic proxy server filtering
US20120053829A1 (en) * 2010-08-30 2012-03-01 Sumit Agarwal Providing Results to Parameterless Search Queries
US20140344266A1 (en) * 2013-05-17 2014-11-20 Broadcom Corporation Device information used to tailor search results

Also Published As

Publication number Publication date
EP3341859A1 (en) 2018-07-04
US20200301935A1 (en) 2020-09-24
US10685029B2 (en) 2020-06-16
WO2017091261A1 (en) 2017-06-01
JP2018538648A (ja) 2018-12-27
JP6543774B2 (ja) 2019-07-10
KR102049981B1 (ko) 2019-11-28
CN108351891A (zh) 2018-07-31
GB2557806A (en) 2018-06-27
US20170147579A1 (en) 2017-05-25
RU2018114072A3 (ko) 2019-12-25
EP3341859B1 (en) 2022-08-03
GB201804975D0 (en) 2018-05-09
RU2018114072A (ru) 2019-12-25
DE112016005358T5 (de) 2018-08-16

Similar Documents

Publication Publication Date Title
US11641535B2 (en) Cross-device handoffs
US11562198B2 (en) Virtual assistant generation of group recommendations
EP3097704B1 (en) Determing data associated with proximate computing devices
KR102049981B1 (ko) 컴퓨팅 디바이스 백그라운드의 속성들에 기초한 정보 랭킹
US8990344B2 (en) Custom event and attraction suggestions
JP2020522001A (ja) 計算機アシスタントによる遅延応答
AU2014202038B1 (en) Predictive forwarding of notification data
US11436265B2 (en) System for presenting tailored content based on user sensibilities
US10938767B2 (en) Outputting reengagement alerts by a computing device
WO2016167930A1 (en) Device dependent search experience
US20180068324A1 (en) Outputting content based on interests of other users

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