KR20140032439A - 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법 - Google Patents

전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20140032439A
KR20140032439A KR1020137033231A KR20137033231A KR20140032439A KR 20140032439 A KR20140032439 A KR 20140032439A KR 1020137033231 A KR1020137033231 A KR 1020137033231A KR 20137033231 A KR20137033231 A KR 20137033231A KR 20140032439 A KR20140032439 A KR 20140032439A
Authority
KR
South Korea
Prior art keywords
television program
search
instructions
search query
programs
Prior art date
Application number
KR1020137033231A
Other languages
English (en)
Other versions
KR101924064B1 (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 KR20140032439A publication Critical patent/KR20140032439A/ko
Application granted granted Critical
Publication of KR101924064B1 publication Critical patent/KR101924064B1/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/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4782Web browsing, e.g. WebTV
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • 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/9032Query formulation
    • 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/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • G06F16/90328Query formulation using system suggestions using search space presentation or visualization, e.g. category or range presentation and selection
    • 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
    • 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/9538Presentation of query results
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4524Management of client data or end-user data involving the geographical location of the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4722End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting additional data associated with the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4828End-user interface for program selection for searching program descriptors

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

텔레비전 프로그램에 관련된 검색 질의들을 이용하기 위한 컴퓨터 구현 방법. 서버는 전자 디바이스로부터 사용자의 검색 질의를 수신한다. 그 다음 서버는, 특정한 시간 창 동안 전자 디바이스와 관계된 위치에서 활용가능한 텔레비전 프로그램들을 위해 검색 질의 및 텔레비전 프로그램 관련 정보에 따라서, 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정하며, 여기서 텔레비전 프로그램 관련 정보는 관계된 위치에 대해 방송중인 복수의 텔레비전 프로그램을 위해 프로그램 설명들을 포함한다.

Description

전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법{SYSTEM AND METHOD FOR ENHANCING USER SEARCH RESULTS BY DETERMINING A TELEVISION PROGRAM CURRENTLY BEING DISPLAYED IN PROXIMITY TO AN ELECTRONIC DEVICE}
개시된 구현들은 일반적으로 검색 향상(search enhancement)의 분야에 관한 것으로, 특히 전자 디바이스에 근접하여 디스플레이되는 텔레비전 프로그램을 결정하고 개선된 검색 결과들을 리턴하기 위해 그러한 결정을 이용하는 것에 관한 것이다.
검색 엔진들은, 인터넷 또는 월드 와이드 웹(World Wide Web : WWW)상의 문서들, 및/또는 인트라넷의 컴퓨터들 상에 저장된 문서들과 같이, 대량의 문서들의 데이터베이스내 문서들의 내용물을 찾기 위한 강력한 도구를 제공한다. 문서들은 사용자에 의해 제출되는, 이후 용어들로 불리는, 하나 또는 하나를 초과하는 단어들, 용어들, 키워드들 및/또는 문구들로 이루어진, 검색 질의(search query)에 응답하여 문서들의 색인을 이용하여 찾아진다. 문서들의 색인에서 문서들은 스코어들을 결정하기 위해 검색 질의내 하나 또는 하나를 초과하는 용어들과 매치 될 수 있다. 스코어들에 기초하여, 관련 문서들 또는 문서 위치들의 순위 목록(ranked listing)이 사용자에게 제공된다.
관련 문서들을 찾기 위해 검색 엔진들을 이용할 때, 사용자들은 가장 관련있는 결과들이 우선적으로 제공되기를 바란다. 검색 엔진들은 문서들의 그룹내 어느 문서들이 특별한 질의에 가장 관련이 있는지를 보다 정확히 결정하기 위해 다양한 방법들을 이용한다. 몇몇 방법들은 사용자 프로파일들에 기초하여 결과들을 개인화하는 단계, 특정한 위치 또는 위치들의 세트에 기초하여 결과들을 순위매기는 단계 및 결과들을 개선하기 위해 검색 질의 트렌드 데이터(serarch query trend data)를 이용하는 단계를 포함한다. 따라서, 검색 결과들의 정확도를 향상시키는 방법들은 검색 엔진들과 검색 엔진들의 사용자들에게 유용하다.
몇몇 구현들은 텔레비전 프로그램들과 관련된 검색 질의들을 이용하기 위한 컴퓨터 구현 방법에 관련된다. 방법은 서버(server)에서 수행되고, 서버는 복수의 프로세서들과 스토리지를 포함하고 텔레비전 프로그램 관련 정보의 데이터베이스를 액세스한다. 서버는 전자 디바이스로부터 사용자의 검색 질의를 수신한다. 그 다음, 특정한 시간 창(specific time window) 동안 전자 디바이스와 관계된 위치에서 활용가능한 텔레비전 프로그램들을 위한 검색 질의와 텔레비전 프로그램 관련 정보에 따라서, 서버는 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정하며, 여기서 텔레비전 프로그램 관련 정보는 관계된 위치에 대해 방송중인 복수의 텔레비전 프로그램들을 위한 프로그램 설명들을 포함한다.
몇몇 구현들에 따라서, 컴퓨터 구현 방법은 텔레비전 프로그램에 기초하여 검색 질의를 수정한다. 방법은 서버에서 수행되며, 서버는 복수의 프로세서들과 스토리지를 포함하고 텔레비전 프로그램 관련 정보의 데이터베이스를 액세스한다. 서버는 전자 디바이스로부터 사용자의 검색 질의를 수신한다. 그 다음 서버는 전자 디바이스에 근접하여 디스플레이되고 있는 텔레비전 프로그램에 기초하여 검색 질의를 수정한다.
몇몇 구현들에 따라서, 컴퓨터 구현 방법은 검색 질의들에 기초하여 TV 프로그램들을 추천한다. 방법은 서버에서 수행되며, 서버는 복수의 프로세서들과 스토리지를 포함하며 텔레비전 프로그램 관련 정보의 데이터베이스를 액세스한다. 서버는 시간 창 동안 전자 디바이스로부터 검색 용어들을 수신한다. 서버는 수신된 검색 질의와 관계된 하나 또는 하나를 초과하는 관심 카테고리들을 결정한다. 그 다음, 전자 디바이스와 관계된 위치와 수신된 검색 질의에 따라서 관심있을 것으로 결정된 카테고리들에 따라서, 서버는 시간 창 동안 활용가능한 복수의 텔레비전 프로그램들로부터 적어도 하나의 텔레비전 프로그램을 결정한다. 그 다음, 적어도 하나의 텔레비전 프로그램이 활용가능하고 결정된 관심들의 카테고리들에 충분히 관련된다는 결정에 따라서, 서버는 결정된 텔레비전 프로그램을 시청하기 위해 전자 디바이스에 추천을 전송한다.
몇몇 구현들에 따라서, 텔레비전 프로그램들과 관련된 검색 질의들을 이용하기 위한 서버 시스템이 개시되고, 서버 시스템은 프로그램들을 실행하기 위한 하나 또는 하나를 초과하는 중앙 처리 유닛들(central processing units)과 하나 또는 하나를 초과하는 중앙 처리 유닛들에 의해 실행될 하나 또는 하나를 초과하는 프로그램들을 저장하는 메모리를 갖는다. 하나 또는 하나를 초과하는 프로그램들은 : 전자 디바이스로부터 사용자의 검색 질의를 수신하며, 그리고, 특정한 시간 창 동안 전자 디바이스와 관계된 위치에서 활용가능한 텔레비전 프로그램들을 위해 검색 질의와 텔레비전 프로그램 관련 정보에 따라서, 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정하기 위한 명령들을 포함하며, 여기서 텔레비전 프로그램 관련 정보는 관계된 위치에 대해 방송중인 복수의 텔레비전 프로그램들을 위한 프로그램 설명들을 포함한다.
몇몇 구현들에 따라서, 컴퓨터에 의한 실행을 위해 구성된 하나 또는 하나를 초과하는 프로그램들을 저장하는 비-일시적인 컴퓨터 판독가능한 저장 매체(non-transitory computer readable storage medium)가 개시된다. 하나 또는 하나를 초과하는 프로그램들은 사용자의 검색 질의를 수신하고, 특정한 시간 창 동안 전자 디바이스와 관계된 위치에서 활용가능한 텔레비전 프로그램들을 위한 검색 질의와 텔레비전 프로그램 관련 정보에 따라서, 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정하기 위한 명령들을 포함하며, 여기서 텔레비전 프로그램 관련 정보는 관계된 위치에 대해 방송중인 복수의 텔레비전 프로그램들을 위한 프로그램 설명들을 포함한다.
몇몇 구현들에 따라서, 결정된 텔레비전 프로그램에 기초하여 검색 질의를 수정하기 위한 서버 시스템이 개시된다. 서버 시스템은 프로그램들을 실행하기 위한 하나 또는 하나를 초과하는 중앙 처리 유닛들과 하나 또는 하나를 초과하는 중앙 처리 유닛들에 의해 실행되는 하나 또는 하나를 초과하는 프로그램들을 저장하는 메모리를 포함한다. 하나 또는 하나를 초과하는 프로그램들은 : 전자 디바이스로부터 사용자의 검색 질의를 수신하며 전자 디바이스에 근접하여 디스플레이되고 있는 텔레비전 프로그램에 기초하여 검색 질의를 수정하기 위한 명령들을 포함한다.
몇몇 구현들에 따라서, 컴퓨터에 의한 실행을 위해 구성된 하나 또는 하나를 초과하는 프로그램들을 저장하는 비-일시적인 컴퓨터 판독가능한 저장 매체가 개시된다. 하나 또는 하나를 초과하는 프로그램들은 : 전자 디바이스로부터 사용자의 검색 질의를 수신하며 전자 디바이스에 근접하여 디스플레이되고 있는 텔레비전 프로그램에 기초하여 검색 질의를 수정하기 위한 명령들을 포함한다.
몇몇 구현들에 따라서, 검색 질의들에 기초하여 TV 프로그램들을 추천하기 위한 서버 시스템이 개시된다. 서버 시스템은 프로그램들을 실행하기 위한 하나 또는 하나를 초과하는 중앙 처리 유닛들과 하나 또는 하나를 초과하는 중앙 처리 유닛들에 의해 실행되는 하나 또는 하나를 초과하는 프로그램들을 저장하는 메모리를 포함한다. 하나 또는 하나를 초과하는 프로그램들은 : 시간 창 동안 전자 디바이스로부터 검색 용어들을 수신하고, 수신된 검색 질의에 따라서 하나 또는 하나를 초과하는 관심 카테고리들을 결정하며, 전자 디바이스와 관계된 위치와 수신된 검색 질의에 따라서 관심이 있을 것으로 결정된 카테고리들에 따라서, 시간 창 동안 활용가능한 복수의 텔레비전 프로그램들로부터 적어도 하나의 텔레비전 프로그램을 결정하고, 그리고, 적어도 하나의 텔레비전 프로그램이 활용가능하며 결정된 관심 카테고리들에 충분히 관련된다는 결정에 따라서, 결정된 텔레비전 프로그램을 시청하기 위해 전자 디바이스에 추천을 전송하기 위한 명령들을 포함한다.
몇몇 구현들에 따라서, 컴퓨터에 의한 실행을 위해 구성된 하나 또는 하나를 초과하는 프로그램들을 저장하는 비-일시적인 컴퓨터 판독가능한 저장 매체가 개시된다. 하나 또는 하나를 초과하는 프로그램들은 : 시간 창 동안 전자 디바이스로부터 검색 용어들을 수신하고; 수신된 검색 질의에 따라서 하나 또는 하나를 초과하는 관심 카테고리들을 결정하며; 전자 디바이스와 관계된 위치와 수신된 검색 질의에 따라서 관심이 있을 것으로 결정된 카테고리들에 따라서, 시간 창 동안 활용가능한 복수의 텔레비전 프로그램들로부터 적어도 하나의 텔레비전 프로그램을 결정하고; 그리고 적어도 하나의 텔레비전 프로그램이 활용가능하고 결정된 관심 카테고리들에 충분히 관련된다는 결정에 따라서, 결정된 텔레비전 프로그램을 시청하기 위해 전자 디바이스로 추천을 전송하기 위한 명령들을 포함한다.
도 1은 질의 서버 시스템을 포함하는 컴퓨터 네트워크를 예시하는 블록도이다.
도 2는, 몇몇 구현들에 따라서, 클라이언트 시스템을 예시하는 블록도이다.
도 3a는, 몇몇 구현들에 따라서, 질의 서버 시스템을 예시하는 블록도이다.
도 3b는, 몇몇 구현들에 따라서, 질의 서버 시스템 메모리의 메모리를 더 예시하는 블록도이다.
도 4는 몇몇 구현들에 따라서 질의 프로파일들의 세트를 위한 정보를 저장하기 위해 질의 프로파일 데이터베이스에 의해 사용된 데이터 구조의 블록도이다.
도 5는 몇몇 구현들에 따라서 텔레비전 프로그램들의 세트를 위한 정보를 저장하기 위해 텔레비전 프로그램 정보 데이터베이스에 의해 사용된 데이터 구조의 블록도이다.
도 6은, 몇몇 구현들에 따라서, 클라이언트 시스템의 사용자에 의해 시청중인 텔레비전 프로그램을 결정하기 위한 프로세스를 예시하는 흐름도이다.
도 7은, 몇몇 구현들에 따라서, 결정된 텔레비전 프로그램에 기초하여 검색을 향상시키기 위한 프로세스를 예시하는 흐름도이다.
도 8은, 몇몇 구현들에 따라서, 클라이언트 시스템의 사용자에게 현재 활용가능한 텔레비전 프로그램을 제안하기 위한 프로세스를 예시하는 흐름도이다.
도 9는 몇몇 구현들에 따라서 클라이언트와 서버 시스템간의 통신을 예시하는 흐름도이다.
도 10은 몇몇 구현들에 따라서 예시적인 사용자 인터페이스를 묘사한다.
유사한 참조 번호들은 도면들 전반에 걸쳐서 대응하는 부분들을 지칭한다.
몇몇 구현들에서, (때때로 본 명세서에서 사용자로서 지칭되는)TV 시청자는 그들이 TV 컨텐트를 시청중인 동안, 컴퓨터, 셋탑 박스, 스마트 폰 , 또는 기타 인터넷-연결 전자 디바이스를 액세스한다. 때때로, 이와 같은 TV 시청자는 인터넷-연결 디바이스를 통해 그 또는 그녀가 시청중인 TV 컨텐트에 관련된 검색 질의들을 실행한다. 예를 들어, 그 또는 그녀가 야생생물(wildlife))에 관한 TV 프로그램을 시청중일 때, 사용자는 인터넷-연결된 디바이스를 통해 그러한 프로그램에서 기술되고 있는 특별한 동물 종들에 관련된 검색들을 실행할 수도 있다. 다른 예로서, 영화를 시청중인 시청자는 영화에 나타나는 위치들 또는 배우들에 관한 검색을 실행할 수도 있다. 검색 질의를 입력할 때 이와같은 시청자는 그 또는 그녀가 시청중인 프로그램에 기술되고 있는 특별한 컨텐트에 관련되지만 동일하지 않은 검색 용어들을 사용할 수도 있다. 예를 들어, 포르쉐(Porsche)의 특별한 모델에 관한 세그먼트를 갖는 TV 프로그램을 시청중인 누군가는 세그먼트의 주제이었던 특별한 모델의 지정 대신에 "포르쉐" 또는 "스포츠 카들"에 대한 검색 질의를 실행할 수도 있다.
몇몇 구현들은 몇몇 TV 시청자들이 이와같은 사용자들로 리턴된 검색 결과들의 품질을 개선하기 위해 TV 시청자들이 시청중인 동안, 그리고 TV 프로그램들과 관련된 검색 질의들을 입력한다는 사실에 영향을 받는다. 몇몇 구현들에서, 이러한 개선은 검색 엔진에 의해, 생방송 TV 방송(예를 들어, 케이블, 오버 디 에어(over the air), 위성 및 인터넷-스트리밍)의 많은 상이한 모드들을 위한 TV 프로그래밍의 컨텐트 및 지리적 유용성에 관한 이해 포괄적인 정보(comprehensive information)에 대한 액세스가 제공된다. 몇몇 구현들에서, 검색 엔진은 검색 엔진이 수신한 검색 질의와 (검색 질의가 제출된 시간 및 사용자/사용자의 디바이스와 관계된 위치에 기초하여) 검색 질의를 실행한 사용자에게 아마도 활용가능한 TV 프로그램들의 컨텐트를 비교한다. 몇몇 구현들에서, 검색 엔진은 사용자에 의해 입력된 사용자 프로파일 또는 기타 정보로부터 사용자의 위치를 결정할 수 있다. 몇몇 구현들에서, 검색 엔진은 사용자에 의해 활용된 인터넷-연결된 디바이스의 IP 어드레스로부터, 또는 사용자에 의해 활용된 인터넷-연결된 디바이스의 사용자 설정들 및 능력들, 인터넷-연결된 디바이스내 GPS 수신기와 관계된 위치 정보, 근처의 WiFi 송신기의 알려진 위치, 또는 근처의 이동/셀룰러 통신 타워의 알려진 위치에 의존하여 사용자의/디바이스의 위치를 결정할 수 있다. 프로그램 정보와 사용자의 검색 질의 사이에 수용가능한 상관도(degree of correlation)가 존재할 때(예를 들어, 사용자가 동일한 시간 창 동안 "포르쉐"를 위한 질의를 실행할 때 TV 프로그램은 특별한 포르쉐 모델에 관한 세그먼트를 포함하는 방송중이다), 검색 엔진은 문제의 사용자가 특별한 TV 프로그램을 시청중이었거나 - 또는 문제의 사용자가 특별한 TV 프로그램을 시청하는 것에 관심이 있었을 것이라는 가정에 기초하여 향상된 검색 결과들을 리턴한다. 예를 들어, 문제의 포르쉐 모델이 "911 터보"이며, 그리고 사용자가 "포르쉐"에 대한 검색 질의를 실행하였다고 가정하면, 서버는 : 1) "911 터보" 모델(예를 들어, Porsche.com 웹사이트를 통해 "911 터보"에 관한 정보에 링크), 2) 그러한 세그먼트와 함께 현재 방송중인 TV 프로그램에 관한 정보, 그리고 3) 현재 방송중이거나 장래에 방송 중이며 사용자에게 활용가능한 유사한 프로그래밍의 제안들 중 하나 또는 하나를 초과하는 것에 관한 정보를 리턴할 수 있다. 이러한 방법으로, 구현들은 시청자들이 시청중이거나 시청에 관심이 있을만한 TV 프로그램들의 컨텐트에 관련된 생방송 TV의 시청자들에게 향상된 검색 결과들을 제공한다.
도 1은, 몇몇 구현들에 따라서, 질의 서버 시스템(120)을 포함하는 클라이언트-서버 환경(client-server environment)(100)을 예시하는 블록도이다. 클라이언트-서버 환경(100)은 (또한 전자 디바이스들로서 본 명세서에 지칭된) 하나 또는 하나를 초과하는 클라이언트 시스템들(102), 하나 또는 하나를 초과하는 클라이언트 환경들(108) 및 질의-서버 시스템(query-server system)(120)을 포함한다. 하나 또는 하나를 초과하는 통신 네트워크들(110)은 이들 컴포넌트들을 상호연결한다. 통신 네트워크들(110)은, 근거리 통신망들(local area network : LAN), 광역 통신망들(wide area network : WAN), 무선 네트워크들, 유선 네트워크들, 인터넷, 또는 이들 네트워크들의 조합을 포함하는, 다양한 네트워크들 중 어느 것일 수 있다.
클라이언트 환경(108)은 몇몇 구현들에 따라서 클라이언트 시스템(102)과 텔레비전(106)을 포함한다. 클라이언트 시스템(102)은 질의를 질의 서버 시스템(120)으로 보내기 위해, 클라이언트 시스템에 의해 실행되는, 클라이언트 애플리케이션(104)을 포함한다. 몇몇 구현들에서, 클라이언트 어플리케이션(104)은 검색 어플리케이션, 브라우저 어플리케이션을 위한 검색 엔진 플러그-인, 그리고 브라우저 어플리케이션을 위한 검색 엔진 확장으로 이루어진 세트로부터 선택된다. 몇몇 구현들에서, 텔레비전(106)은, 퍼스널 컴퓨터, 랩탑, 또는 임의의 기타 퍼스널 전자 디바이스를 포함하는, 텔레비전 프로그램을 디스플레이하기 위해 인에이블된 임의의 디바이스로 대체된다.
클라이언트 시스템(102)은 질의 서버 시스템(120)으로 질의들을 전송하고 질의 서버 시스템(120)으로부터 데이터를 수신한다. 클라이언트 시스템(102)은 질의 서버 시스템(120)과 통신할 수 있는 임의의 컴퓨터 또는 기타 전자 디바이스일 수 있다. 예들은, 제한없이, 데스크탑 및 노트북 컴퓨터들, 메인프레임 컴퓨터들, 서버 컴퓨터들, 이동 전화들과 같은 이동 디바이스들, 스마트 폰들, 그리고 개인용 휴대 단말기, 네트워크 터미널들, 그리고 셋-탑 박스들을 포함한다.
몇몇 구현들에 따라서, 질의 서버 시스템(120)은 질의 프로세싱 서버(122), 질의 프로파일 데이터베이스(140), 텔레비전 프로그램 정보 데이터베이스, 그리고 여러 검색 향상 시스템들(124)을 포함한다. 검색 향상 시스템들(124)은 텔레비전 프로그램 결정 시스템(124-1), 검색 확장(search expansion)(124-2), 그리고 텔레비전 프로그램 제안 시스템(124-3)을 포함한다. 검색 서버 시스템(120)은 통신 네트워크(110)를 통해 하나 또는 하나를 초과하는 클라이언트 시스템들(102)로부터 검색 질의들(112)을 수신하고 통신 네트워크(110)를 통해 하나 또는 하나를 초과하는 클라이언트 시스템들(102)로 검색 결과들(114)을 리턴한다. 질의 프로세싱 서버(122)는 클라이언트 시스템(102)으로부터 수신된 검색 질의(112)를 처리한다. 몇몇 구현들에서, 질의 프로세싱 서버(query processing server)(122)는 클라이언트 시스템(102)으로 검색 결과들(114)을 리턴한다. 몇몇 구현들에서, 질의 프로세싱 서버(120)는 질의 프로파일 데이터베이스(query profile database)(140)로부터 수신된 검색 용어들을 위한 질의 프로파일을 검색한다. 몇몇 구현들에서, 질의 프로세싱 서버(122)는, 질의 처리의 일부로서, 복수의 검색 향상 시스템들(124)중 하나로 질의를 전송한다.
몇몇 구현들에 따라서, 검색 향상 시스템들(124)은 각각 별개의 검색 향상 프로세스를 구현하며 그들의 별개의 검색 향상 프로세스를 수행하기 위해 필요에 따라서 텔레비전 프로그램 정보 데이터베이스(130)를 액세스한다.
예를 들어, 결정 시스템(124-1)은, 텔레비전 프로그램에 관련된 텔레비전 방영 시간들과 관심 카테고리들에 대한 정보를 포함하는, 텔레비전 프로그램 프로파일을 획득하기 위해 텔레비전 프로그램 정보 데이터베이스(130)를 액세스한다. 다른 예에서, 검색 확장 시스템(124-2)은 질의 프로세싱 서버로부터 검색 질의와 결정된 텔레비전 프로그램을 수신한다. 그 다음 검색 확장 시스템(124-2)은 검색 질의를 정확히 확장하기 위해 텔레비전 프로그램 정보 데이터베이스(130)를 액세스한다. 이것은 도 7에서 보다 상세히 설명된다. 제안 시스템(124-3)은 질의 프로세싱 서버(122)로부터 검색 질의를 수신하고 수신된 검색 질의에 관련된 텔레비전 프로그램들을 결정하기 위해 텔레비전 프로그램 정보 데이터베이스(130)를 액세스한다. 그 다음 제안 시스템(124-3)은 질의 프로세싱 서버(122)로 제안된 텔레비전 프로그램을 리턴하며, 그 다음 질의 프로세싱 서버(122)는 클라이언트 시스템(102)으로 제안을 중계한다.
클라이언트 시스템(102)은 사용자에게 하나 또는 하나를 초과하는 검색 결과들 또는 제안들을 제공한다. 결과들은, 오디오 스피커에 의해, 디스플레이상에 제공되거나, 또는 사용자에게 정보를 통신하기 위해 사용된 임의의 기타 수단에 제공될 수 있다. 사용자는 다양한 방법들로 검색 결과들 또는 제안과 상호작용할 수 있다. 사용자는, 마우스, 키보드, 터치-감지 디스플레이, 보이스 인에이블된 제어 시스템들(voice-enabled control systems) 등을 포함하는 임의의 수의 입력 디바이스들을 통해 검색 결과들과 상호작용한다.
도 2는 일 구현에 따라서 클라이언트 시스템(102)을 예시하는 블록도이다. 클라이언트 시스템(102)은 전형적으로 하나 또는 하나를 초과하는 프로세싱 유닛들(CPU)(202), 하나 또는 하나를 초과하는 네트워크 인터페이스들(210), 메모리(212), 그리고 이들 컴포넌트들을 상호연결하기 위한 하나 또는 하나를 초과하는 통신 버스들(214)을 포함한다. 클라이언트 시스템(102)은 사용자 인터페이스(204)를 포함한다. 사용자 인터페이스(204)는 디스플레이 디바이스(206)를 포함하며 선택적으로 키보드, 마우스, 터치 감지 디스플레이, 또는 기타 입력 버튼들(208)과 같은 입력 수단을 포함한다. 더욱이, 몇몇 클라이언트 시스템들은 키보드를 보완하거나 대체하기 위해 마이크로폰과 음성 인식을 사용한다. 선택적으로, 클라이언트(102)는 클라이언트 시스템(102)의 위치를 결정하기 위해 글로벌 포지셔닝 위성(global positioning satellite : GPS) 수신기, 또는 기타 위치 검출 장치(207)를 포함한다. 몇몇 구현들에서, 클라이언트 시스템(102)의 위치를 표시하는 위치 정보를 수신하도록 시각적인 질의 서버 시스템을 제공하기 위해 클라이언트 시스템(102)을 요구하는 시각적인 질의 검색 서비스들이 제공된다.
메모리(212)는, DRAM, SRAM, DDR RAM 또는 기타 랜덤 액세스 고체 메모리 디바이스들과 같은 고속 랜덤 액세스 메모리를 포함하며; 그리고 하나 또는 하나를 초과하는 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 또는 기타 비-휘발성 고체 저장 디바이스들과 같은, 비-휘발성 메모리를 포함할 수 있다. 메모리(212)는 CPU(들)(202)로부터 떨어져서 위치된 하나 또는 하나를 초과하는 저장 디바이스들을 선택적으로 포함할 수 있다. 메모리(212), 또는 대안으로 메모리(212)내 비-휘발성 메모리 디바이스(들)는 비-일시적 컴퓨터 판독가능한 저장 매체를 포함한다. 몇몇 구현들에서, 메모리(212) 또는 메모리(212)의 컴퓨터 판독가능한 저장 매체는 이어지는 프로그램들, 모듈들과 데이터 구조들, 또는 이들의 서브세트를 저장한다:
● 다양한 기본적인 시스템 서비스들을 다루고 하드웨어 종속 작업들을 수행하기 위한 절차들을 포함하는 운영 시스템(216);
● 하나 또는 하나를 초과하는 통신 네트워크 인터페이스들(210)(유선 또는 무선)과 하나 또는 하나를 초과하는 통신 네트워크들 이를 테면 인터넷, 기타 광역 통신망들, 근거리 통신망들, 도시권 통신망(metropolitan area networks) 등을 통해 기타 컴퓨터들에 클라이언트 시스템(102)을 연결하기 위해 사용되는 네트워크 통신 모듈(218);
● 디스플레이(206)상에 시각적으로 제공될 운영 시스템(216)과 클라이언트 어플리케이션들(230)에 의해 생성된 정보를 인에이블하기 위한 디스플레이 모듈(220);
● 질의 프로세싱 서버(120)로 질의들을 전송하고 질의 프로세싱 서버(120)로부터 결과들을 수신하기 위한 브라우저 어플리케이션(224)을 포함하지만 이에 제한되지 않는, 질의 프로세싱(120)과 다양한 양상들의 상호작용을 다루기 위한 하나 또는 하나를 초과하는 클라이언트 어플리케이션 모듈들(104);
● 클라이언트들에 관련된 데이터를 저장하기 위해, 클라이언트 위치 데이터(232), 클라이언트 IP 어드레스 데이터(234) 및 클라이언트 프로파일 데이터(236)를 포함하지만 이에 제한되지 않는 클라이언트 데이터 모듈(230);
도 3a 및 도 3b는 질의 서버 시스템을 예시하는 블록도들이다. 질의 서버 시스템(120)은 전형적으로 하나 또는 하나를 초과하는 프로세싱 유닛들(CPU's)(302), 하나 또는 하나를 초과하는 네트워크 또는 기타 통신 인터페이스들(304), 메모리(306), 그리고 이들 컴포넌트들을 상호연결하기 위한 하나 또는 하나를 초과하는 통신 버스들(308)을 포함한다. 메모리(306)는, DRAM, SRAM, DDR RAM 또는 기타 랜덤 액세스 고체 메모리 디바이스들과 같은, 고속 랜덤 액세스 메모리를 포함하며; 그리고, 하나 또는 하나를 초과하는 자기 디스크 저장 디바이스들, 광 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 또는 기타 비-휘발성 고체 저장 디바이스들과 같은, 비-휘발성 메모리를 포함할 수 있다. 메모리(306)는 선택적으로 CPU(들)(302)로부터 떨어져서 위치된 하나 또는 하나를 초과하는 저장 디바이스들을 포함할 수 있다. 메모리(306), 또는 대안으로 메모리(306)내 비-휘발성 메모리 디바이스(들)는 비-일시적인 컴퓨터 판독가능한 저장 매체를 포함한다. 몇몇 구현들에서, 메모리(306) 또는 메모리(306)의 컴퓨터 판독가능한 저장 매체는 이어지는 프로그램들, 모듈들 및 데이터 구조들, 또는 이들의 서브세트를 저장한다:
● 다양한 기본적인 시스템 서비스들을 다루고 하드웨어 종속 작업들을 수행하기 위한 절차들을 포함하는 운영 시스템(310);
● 하나 또는 하나를 초과하는 통신 네트워크 인터페이스들(304)(유선 또는 무선)과 하나 또는 하나를 초과하는 통신 네트워크들 이를 테면 인터넷, 기타 광역 통신망들, 근거리 통신망들, 대도시 통신망(metropolitan area networks) 등을 통해 기타 컴퓨터들에 질의 서버 시스템(120)을 연결하기 위해 사용되는 네트워크 통신 모듈(312);
● 질의 서버 시스템에 의해 제공된 서비스들을 수행하기 위한 하나 또는 하나를 초과하는 서버 어플리케이션 모듈들(314)로서,
○ 클라이언트 시스템(102)으로부터 검색 질의를 수신하고, (도 1), 검색 질의에 관련된 결과들을 결정하며, 검색 질의에 따라서 결과들을 순서화하고 그리고 클라이언트 시스템(102)(도 1)으로 결정된 결과들을 리턴하기 위한 검색 모듈(316),
○ 검색 모듈(316)로부터 검색 질의(112)를 수신하고, 검색 질의 프로파일 데이터베이스(140), 사용자 위치 데이터(340), 그리고 텔레비전 프로그램 정보 데이터베이스(130)내 정보에 기초하여, 클라이언트 시스템(102)(도 1)의 사용자가 현재 텔레비전 프로그램을 시청중인지를 결정하며, 그리고 클라이언트 시스템의 사용자가 텔레비전 프로그램을 현재 시청중이라는 결정에 따라서, 검색 질의 프로파일 데이터베이스(140)내 데이터, 사용자 위치 데이터(340), 그리고 텔레비전 프로그램 정보 데이터베이스(130)내 정보에 기초하여, 클라이언트 시스템(102)(도 1)의 사용자가 현재 어느 텔레비전 프로그램을 시청중인지를 결정하기 위한 텔레비전 프로그램 결정 시스템(124-1)으로서, 결정하기 위한 방법은 도 6에 보다 상세히 도시되고,
■ 가능한 텔레비전 프로그램들의 정렬된 세트로부터 결정된 텔레비전 프로그램을 선택하기 위한 결정 선택 모듈(346)을 포함하지만 반드시 이에 제한되지 않는, 상기 텔레비전 결정 시스템(124-1),
○ 결정된 텔레비전 프로그램(340), 검색 질의 프로파일 데이터베이스(140)내 데이터, 그리고 수정된 검색 질의를 검색 모듈(316)로 리턴하는 텔레비전 프로그램 정보 데이터베이스(130)내 정보에 기초하여 검색 질의(112)를 수정하기 위한 검색 질의 수정 시스템(124-2)으로서,
■ 텔레비전 프로그램 정보 데이터베이스와 질의 데이터베이스를 액세스하기 위한 데이터베이스 액세스 모듈(348);
■ 수신된 검색 질의에 관련된 추가적인 용어들을 결정하기 위한 추가적인 용어 결정 모듈(350), 추가적인 용어들을 결정하기 위한 방법은 여기서 도 7에 보다 분명히 설명되고,
■ 수신된 검색 질의에 추가적인 용어들을 더하기 위한 추가적인 용어 추가 모듈(352)
을 포함하지만 이에 제한되지 않는, 상기 검색 질의 수정 시스템(124-2);
○ 검색 모듈(316)로부터 검색 질의를 수신하고, 검색 질의 프로파일 데이터베이스(140)내 데이터, 사용자 위치 데이터(340), 그리고 텔레비전 프로그램 정보 데이터베이스(130)내 정보에 기초하여, 클라이언트 시스템(102)의 사용자에게 활용가능한 적어도 하나의 프로그램을 결정하며, 그리고 클라이언트 시스템(102)의 사용자에게 결정된 텔레비전 프로그램을 전송하기 위한 텔레비전 프로그램 제안 시스템(124-3)으로서,
■ 사용자의 관심들에 관련된 카테고리들을 결정하기 위한 관심 결정 모듈(354)을 포함하지만 이에 제한되지 않는, 상기 텔레비전 프로그램 제안 시스템(124-3),
○ 클라이언트 시스템(102)의 사용자로부터 피드백을 수신하기 위한 피드백 수신 모듈(324), 그리고
○ 피드백 수신 모듈(324)에 의해 수신된 피드백에 따라 장래 제안들을 억제하기 위한 제안 억제 모듈(326),
○ 몇몇 구현들에 따라서, 검색 결과들과 텔레비전 프로그램 추천들을 포함하는 통신들을 클라이언트로 전송하기 위한 발신 통신 모듈(328),
○ 하나 또는 하나를 초과하는 카테고리들의 목록들에 매칭 함수들을 적용하기 위한 매칭 모듈(342),
○ 텔레비전 프로그램들의 세트들을 정렬하기 위한 정렬 모듈(360),
○ 클라이언트 시스템(102)의 사용자가 현재 텔레비전 프로그램을 시청중인지를 결정하기 위한 텔레비전 시청 결정 모듈,
○ 텔레비전 프로그램들의 세트내에 하나 또는 하나를 초과하는 텔레비전 프로그램을 위한 스코어를 발생하기 위한 스코어 발생 모듈(364), 그리고
○ 검색 질의들과 텔레비전 프로그램들과 관계된 카테고리들을 식별하기 위한 카테고리 식별 모듈(366),
을 포함하지만 이에 제한되지 않는 상기 하나 또는 하나를 초과하는 서버 어플리케이션 모듈들(314);
● 질의 서버 시스템(120)에 관련된 데이터를 유지하는 서버 데이터(330)로서,
○ (도 5에 보다 상세히 기술된 바와 같이) 텔레비전 프로그램 프로파일들을 포함하는 텔레비전 프로그램 정보 데이터베이스(130), 여기서 텔레비전 프로그램 프로파일들은 텔레비전 프로그램들에 관한 메타데이터(metadata)를 저장하고, 메타데이터는 시간, 채널, 방영 제목, 방영 설명, 시리즈 id, 배역(cast), 카테고리 목록 정보, 그리고 장르를 포함하는, 상기 텔레비전 프로그램 정보 데이터 베이스(130),
○ 네트워크를 통해 활용가능한 문서들에 관한 웹 크롤러(web crawler)에 의해 저장된 정보를 포함하는 웹 크롤러 데이터(336),
○ 검색 질의들에 관련된 카테고리들을 결정하기 위한 (도 4에 보다 상세히 기술된 바와 같이) 질의 프로파일들을 포함하는 질의 프로파일 데이터베이스(140),
○ 사용자의 물리적인 위치와 클라이언트 시스템(102, 도 1)의 IP 어드레스 둘 다를 포함하는 사용자 위치 데이터(340),
○ 검색 용어들(372), 클라이언트 시스템(102)의 사용자의 IP 어드레스(374), 클라이언트 시스템(102, 도 1)의 사용자와 관계된 위치 데이터(376), 그리고 검색 질의와 관계된 질의 ID(378)를 포함하는 하나 또는 하나를 초과하는 검색 질의들(370),
○ 검색 질의에 추가를 위해, 추가적인 용어 결정 모듈(350)에 의해 결정된, 하나 또는 하나를 초과하는 추가적인 검색 용어들(380),
○ 검색 모듈(316)에 의해 결정된 수신된 검색 질의와 관계된 검색 결과들(382),
○ 텔레비전 프로그램 결정 시스템(124-1)에 의해 결정된 하나 또는 하나를 초과하는 결정된 텔레비전 프로그램들(384),
○ 스코어 생성 모듈(364)에 의해 생성된, 텔레비전 프로그램들과 검색 질의들을 비교하기 위한 텔레비전 프로그램 스코어 데이터(386),
○ 정렬 모듈(360)에 의해 정렬된, 텔레비전 프로그램들을 순위화하기 위한 텔레비전 프로그램들의 정렬된 세트(388),
○ 클라이언트 시스템(102)의 사용자로부터 수신된, 추천된 텔레비전 프로그램에 사용자의 응답을 표시하기 위한 사용자 응답 데이터(390), 그리고
○ 클라이언트 시스템(102, 도 1)의 사용자에게 전송하기 위한 추천된 텔레비전 프로그램(392)을 포함하지만 이에 제한되지 않는, 상기 서버 데이터(330).
도 4는 몇몇 구현들에 따라서 질의 프로파일들을 저장하기 위한 질의 프로파일 데이터베이스(140)를 위한 예시적인 데이터 구조의 블록도를 도시한다. 몇몇 구현들에 따라서, 질의 프로파일 데이터베이스 데이터 구조(140)는 복수의 질의 프로파일 레코드들(414-1 내지 414-P)을 포함하며, 복수의 질의 프로파일 레코드들(414-1 내지 414-P)의 각각은 사용자-제출 질의에 대응한다. 동일한 질의가 많은 사용자들에 의해 제출될 때, 단일 질의 프로파일(414)은 질의를 위해 프로파일 정보를 저장한다. 몇몇 구현들에서, 각각의 질의 프로파일 레코드(414)는 특별한 질의를 식별하는 질의 ID(416), 질의내 대응하는 질의 용어들의 세트(416), 그리고 질의를 분류하기 위한 카테고리 목록(420)을 포함한다. 몇몇 구현들에서, 질의 프로파일은 검색 질의와 관계된 하나 또는 하나를 초과하는 관련된 용어들(426)을 또한 포함한다.
몇몇 구현들에서, 카테고리 목록(417)의 멤버들은 하나 또는 하나를 초과하는 카테고리/웨이트 쌍들(카테고리 ID(422), 웨이트(424))을 포함한다. 카테고리 ID(422)는 뉴스, 스포츠, 여행, 금융 등과 같은 특별한 형태의 정보에 대응할 수 있으며, 그리고 웨이트(424)는 질의와 대응하는 형태의 정보 사이의 관련성을 측정하는 수이다. 예를 들어, 질의 용어 "골프"는 스포츠와 스포츠 용품들의 카테고리들에 대해 상대적으로 높은 웨이트들을 가질 수 있지만, 정보 기술(IT)의 카테고리에 대해 낮은 웨이트를 가질 수 있다. 몇몇 구현들에서, 카테고리 ID(420)는, 예를 들어, 카테고리 이름으로 쉽게 라벨을 붙이거나 붙일 수 없는 클러스터링 프로세스(clustering process)에 의해 발생될 수 있는 "개념 클러스터(concept cluster)"에 대응한다.
이하 기술된 몇몇 구현들에서, 개별적인 질의 프로파일들(414)이 생성되고, 사용된 다음에 데이터베이스 또는 기타 수집 데이터 구조내에 질의 프로파일들을 저장함이 없이 처분된다. 몇몇 구현들에서, 개별적인 질의 프로파일들과 이들의 관계된 카테고리들 목록들은 자연어 프로세싱(natural language processing)을 통해 생성된다. 생성된 질의 프로파일에 대해 텍스트의 언어 자료(corpus)에 대한 자연어 프로세싱을 행하는 동안, 질의 검색 서버(120, 도 1)는 "a" 또는 "the"와 같이, 모든 기록들에 걸쳐서 빈번하게 나타나는 관심없는 단어들을 무시한다. 대신에, 질의 서버 시스템(120, 도 1)은 사람, 장소들, 그리고 제품들을 식별하는 단어들 처럼, 또한 관심있는 엔티티들로서 알려진 보다 중요한 단어들에 집중한다. 관심있는 엔티티들로 검색 공간을 제한함으로써, 질의 검색 시스템은 프로파일들이 데이터베이스에 저장되면, 개별적인 질의 프로파일들을 생성하기 위해 필요한 시간과 데이터 룩업(data look up)을 위해 필요한 시간 둘 다를 감소시킨다.
몇몇 구현들에서, 질의 서버 시스템(120, 도 1)은 주어진 질의와 관계된 카테고리들을 결정하기 위해 질의 프로파일 데이터베이스(140)를 액세스한다. 예를 들어, 수신된 검색 질의가 "재규어" 이었다면, 질의 프로파일 카테고리 목록은 "자동차들", "포유동물들" 그리고 "스포츠"를 포함할 수 있다. 그 다음 다양한 검색 향상 시스템들(도 1, (124)를 참조)은 제출된 검색 질의가 (도 5에 더 논의된 바와 같이) 다양한 텔레비전 프로그램 프로파일들에 상관하는 정도를 계산하기 위해 이러한 카테고리 정보를 이용한다. 이러한 프로세스는 도 6, 도 7, 그리고 도 8에 대하여 보다 충분히 기술된다. 이러한 상관 정보는 사용자에 의해 현재 시청중인 텔레비전 프로그램을 결정하거나, 검색 질의의 용어들을 수정하거나 이러한 정보에 기초하여 사용자에게 관심 텔레비전 프로그램을 제안하기 위해 사용된다.
도 5는 몇몇 구현들에 따라서 텔레비전 프로그램 프로파일들(510)을 저장하기 위한 텔레비전 프로그램 정보 데이터베이스(130)에 대한 예시적인 데이터 구조의 블록도를 도시한다. 데이터베이스 데이터 구조(130)는 복수의 텔레비전 프로그램 프로파일 레코드들(510-1 내지 510-P)을 포함하며, 복수의 텔레비전 프로그램 프로파일 레코드들(510-1 내지 510-P)의 각각은 특정한 텔레비전 프로그램에 대응한다. 몇몇 구현들에서, 각각의 텔레비전 프로그램 프로파일 레코드(510)는, 특별한 텔레비전 프로그램을 식별하는 텔레비전 프로그램 ID(512), 대응하는 방영 시간들의 세트(시간들의 세트, 각각의 시간은 어떠한 텔레비전 프로그램이 방송되는 한 주기에 대응함)(514), 텔레비전 프로그램을 분류하기 위한 카테고리 목록(516), 채널 정보(520), 텔레비전 프로그램의 컨텐트의 개요를 설명하는 프로그램 설명(522), 배역 정보(524), 텔레비전 시리즈 정보(526), 그리고 장르 정보(528)를 포함하는 텔레비전 프로그램 메타데이터를 포함한다. 몇몇 구현들에서, 텔레비전 프로그램 프로파일은 텔레비전 프로그램과 관계된, 하나 또는 하나를 초과하는 관련된 용어들(530)을 또한 포함한다.
몇몇 구현들에서, 카테고리 목록(516)의 멤버들은 하나 또는 하나를 초과하는 (카테고리 ID(517), 웨이트(518))의 쌍들을 포함한다. 카테고리 ID(517)는 뉴스, 스포츠, 여행, 자동차 등과 같은 특별한 정보의 형태에 대응할 수 있으며, 그리고 웨이트(518)는 텔레비전 프로그램과 대응하는 정보의 형태 사이의 관련성을 측정하는 수이다. 예를 들어, 텔레비전 프로그램 "Top Gear"는 스포츠 카들과 자동차 레이싱의 카테고리에 대해 상대적으로 높은 웨이트들을 가질 수 있지만, 항공기의 카테고리에 대해 낮은 웨이트를 가질 수 있다. 몇몇 구현들에서, 카테고리 ID(517)는, 예를 들어, 카테고리 이름으로 쉽게 라벨을 붙이거나 붙일 수 없는 클러스터링 프로세스(clustering process)에 의해 발생될 수 있는 "개념 클러스터"에 대응한다. 몇몇 구현들에 따라서, 텔레비전 프로그램 프로파일들을 포함하는, 도 6, 도 7, 도 8 및 도 9에 기술된 바와 같이, 텔레비전 프로그램 카테고리 목록(516) 데이터는 현재 시청중인 텔레비전 방영들을 결정하고, 검색 질의들을 수정하며, 그리고 사용자가 시청하도록 텔레비전 프로그램들을 제안하기 위해 검색 프로파일 카테고리 목록들(417)과 함께 사용된다.
이하 기술된 몇몇 구현들에서, 개별적인 텔레비전 프로그램 프로파일들(510)이 생성되고, 사용된 다음에 데이터베이스 또는 기타 수집 데이터 구조(500)내에 텔레비전 프로그램 프로파일들을 저장함이 없이 처분된다. 몇몇 구현들에서, 개별적인 텔레비전 프로그램 프로파일들과 이들의 관계된 카테고리들 목록들은 자연어 프로세싱을 통해 생성된다. 생성된 텔레비전 프로그램 파일에 대해 텍스트의 언어 자료(corpus)에 대한 자연어 프로세싱을 하는 동안, 질의 서버 시스템(120, 도 1)은 "a" 또는 "the"와 같이, 모든 기록들에 걸쳐서 빈번하게 나타나는 관심없는 단어들을 무시한다. 대신에, 질의 서버 시스템(120, 도 1)은 사람, 장소들, 그리고 제품들을 식별하는 단어들 처럼, 또한 "관심있는 엔티티들"로서 알려진 보다 중요한 단어들에 집중한다. "관심있는 엔티티들"로 검색 공간을 제한함으로써, 질의 검색 시스템은 프로파일들이 데이터베이스에 저장되면 개별적인 텔레비전 프로그램 프로파일들을 생성하기 위해 필요한 시간과 데이터 룩업을 위해 필요한 시간 둘 다를 감소시킨다.
텔레비전 프로그램 결정
도 6은, 몇몇 구현들에 따라서, 클라이언트 시스템의 사용자에 의해 시청중이거나 TV 시청자에 의해 사용된 전자 디바이스에 근접하여 디스플레이되는 텔레비전 프로그램을 결정하기 위한 프로세스를 예시하는 흐름도이다. 주목해야 할 것은 텔레비전 프로그램을 "결정하는 단계"는, 전자 디바이스로부터 서버에 발행된 검색 질의들과 검색 질의가 수신될 때 시간 창 동안 또는 근처에 방송중인 TV 프로그램들에 대한 정보를 포함하는, 서버에서 활용가능한 주변 정보에 기초하여 전자 디바이스에 근접하여 디스플레이되고 있는 텔레비전 프로그램을 예측하는 단계를 포함한다. 도 6에 도시된 각각의 동작들은 컴퓨터 메모리 또는 컴퓨터 판독가능한 저장 매체에 저장된 명령들에 대응할 수 있다. 선택적인 동작들은 점선들(예를 들어, 점선 경계들을 갖는 박스들)로 표시된다. 몇몇 구현들에서, 도 6에 기술된 방법은 텔레비전 프로그램 결정 시스템(124-1)(도 1 및 도 3)에 의해 수행된다.
몇몇 구현들에 따라서, 질의 서버 시스템(120)(도 1)은 전자 디바이스로부터 사용자의 검색 질의를 수신하며, 여기서 사용자/전자 디바이스는 관계된 위치(602)를 갖는다. 사용자/전자 디바이스와 관계된 위치는 다양한 방법들에 의해 결정될 수 있다. 예를 들어, 위치는 사용자 입력에 의해 공급될 수 있거나, 사용자 프로파일내에 국부적으로 또는 원격으로 저장될 수 있거나, 또는 전자 디바이스(207)(도 2)내에 위치된 GPS/위치 어플리케이션에 의해 사용자의 전자 디바이스상에 저장될 수 있다. 몇몇 구현들에 따라서, 질의 서버 시스템(120)(도 1)은 사용자의 전자 디바이스에 관계된 IP 어드레스에 따라서 사용자의 전자 디바이스의 위치를 또한 결정한다. 몇몇 구현들에서, 전자 디바이스의 사용자와 관계된 위치 정보는 클라이언트 디바이스나 질의 서버 시스템에 저장될 수 있다.
몇몇 구현들에 따라서, 질의 서버 시스템은 검색 질의를 텔레비전 프로그램 결정 시스템(124-1)(도 1)으로 건네준다. 수신된 검색 질의와 관계된 질의 프로파일 데이터베이스(140)(도 1)에 저장된 검색 질의 프로파일과 특정한 시간 창 동안 사용자/전자 디바이스에 활용가능한 텔레비전 프로그램들을 위한 텔레비전 프로그램 정보 데이터베이스(130)(도 1)에 저장된 텔레비전 프로그램 프로파일들에 따라서, 텔레비전 프로그램 결정 시스템(124-1)(도 1)은 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정하며, 여기서 텔레비전 프로그램 관련 정보는 관계된 위치에서 활용가능한 복수의 가능한 텔레비전 프로그램들을 위한 프로그램 설명들을 포함한다(606). 문구 "전자 디바이스에 근접하여 디스플레이된" 또는 유사한 문구는 전자 디바이스와 동일한 룸(room) 또는 아니면 전자 디바이스의 시청 및/또는 청취 범위내에서 디스플레이된다는 것을 의미하는 것으로 이해되어, TV 프로그램이 (비록 청취만을 통해서라도) 전자 디바이스의 사용자에 의해 시청되거나, 또는 달리 구별될 수 있도록 하기 위해 디스플레이된다. 결정을 위한 방법은 이하 보다 상세히 기술된다.
몇몇 구현들에 따라서, 결정은 복수의 텔레비전 프로그램들에서 각각의 텔레비전 프로그램을 위한 스코어를 생성함으로써 이루어지고, 스코어는 전자 디바이스의 사용자로부터 수신된 질의 용어들에 따라서 생성된다(608). 몇몇 구현들에서, 최고 스코어를 갖는 텔레비전 프로그램은 질의 서버 시스템의 결정 모듈에 의해 이루어진 결정이다(616).
몇몇 구현들에서, 질의 서버 시스템은 검색 질의 용어들(610)과 관계된 제1 카테고리들의 세트를 식별함으로써 스코어를 생성한다. 몇몇 구현들에서, 질의 서버 시스템은 검색 질의 용어들과 관계된 제1 카테고리들의 세트를 동적으로 결정한다. 몇몇 구현들에서, 질의 서버 시스템은 앞서 검색 질의 용어들과 관계된 제1 카테고리들의 세트를 결정하며 질의 프로파일 데이터베이스(140, 도 1)내 질의와 관계된 질의 프로파일에 제1 카테고리들의 세트를 저장한다. 제1 카테고리들의 세트가 앞서 결정되면, 질의 서버 시스템은 질의 프로파일 데이터베이스로부터 질의 프로파일을 검색한다. 그 다음 질의 서버 시스템은 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 식별한다(612). 몇몇 구현들에서, 각각의 텔레비전 프로그램과 관계된 카테고리들은 텔레비전 프로그램 이름, 프로그램 설명들, 배역 정보, 텔레비전 시리즈 정보, 장르 정보 및 관련된 용어들과 같은 텔레비전 프로그램 정보 데이터베이스(130)(도 3)에 저장된 모든 정보의 원문 분석(textual analysis)을 통해 결정된다. 게다가, 몇몇 구현들에서 정보는 사용자 관심들과 텔레비전 프로그램 선택 습관들에 기초하여 유지되며 이러한 정보는 각각의 텔레비전 프로그램에 대한 카테고리 정보를 더 확립하기 위해 사용된다. 몇몇 구현들에서, 질의 서버 시스템은 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 동적으로 결정한다. 기타 구현들에서, 질의 서버 시스템은 앞서 검색 질의를 수신하기전에 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 결정하고 나중의 검색을 위해 텔레비전 프로그램 정보 데이터베이스(130)(도 1)에 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 저장할 수 있다.
몇몇 구현들에 따라서, 질의 서버 시스템은 스코어를 획득하기 위해 제1 카테고리들의 세트와 제2 카테고리들의 세트에 매칭 함수를 적용한다(614). 질의 서버 시스템에 의해 적용된 매칭 함수는 두 세트들 간의 유사성을 계산하는 임의의 함수 또는 알고리즘일 수 있다. 몇몇 구현들에서, 복수의 텔레비전 프로그램들내 각각의 텔레비전 프로그램을 위해 생성된 스코어는 상관 계수이다. 예를 들어, 사용자가 검색 질의 "독수리들"을 입력하였다면, 질의 서버 시스템은 '음악' 및 '아웃도어들'과 같이 '독수리들'에 대한 카테고리들을 발견할 개연성이 있을 것이다. 그 다음 더 이글스(The Eagles)에 대한 타큐멘터리가 검색 질의에 상당한 상관을 갖도록 찾아질 것이며 상대적으로 높은 스코어를 수신할 것이다. 그 다음 사용자가 승인하면 사용자는 정보가 장래의 분류를 위해 텔레비전 프로그램 정보 데이터베이스내로 피드백될 수 있는 이러한 텔레비전 프로그램을 시청중이다.
선택적으로, 클라이언트 시스템의 사용자에 의해 현재 시청중인 텔레비전 프로그램을 결정하기 전에, 질의 서버 시스템은 사용자가, 실제로, 텔레비전 프로그램을 현재 시청중인지를 결정할 수 있다(604). 질의 서버 시스템은 전자 디바이스의 사용자의 위치 및 검색 질의가 이러한 결정을 하기 위해 수신된 시간뿐만 아니라 수신된 질의의 컨텐트를 분석한다. 몇몇 구현들에서 질의 서버 시스템은 서버에 저장된 위치 정보에 기초하여 전자 디바이스의 사용자에게 활용가능한 하나 또는 하나를 초과하는 텔레비전 프로그램들을 위해 상관 스코어를 계산(상기 스코어 상관 검색 질의들과 텔레비전 프로그램들을 계산하는 방법들을 참조)함으로써 이러한 결정을 한다. 적어도 하나의 텔레비전 프로그램이 사전결정된 임계치를 초과한다면, 하나의 결정된 텔레비전 프로그램이 상기 설명한 바와 같이 결정될 것이다. 그러나, 상관 스코어들 중 어느 스코어도 사전결정된 임계치를 초과하지 않으면, 질의 서버 시스템은 전자 디바이스의 사용자가 현재 텔레비전 프로그램을 시청하고 있지 않다고 결정한다. 몇몇 구현들에 따라서, 질의 서버 시스템이, 전자 디바이스의 사용자가 텔레비전 프로그램을 현재 시청하고 있지 않다고 결정하면, 질의 서버 시스템(120)(도 1)은 수정(620)없이 수신된 검색 질의를 이용한 웹 크롤러 데이터(도 3, 336을 참조)를 통해 검색을 실행한다.
몇몇 구현들에 따라서, 질의 서버 시스템은 생성된 스코어들(618)에 따라서 가능한 텔레비전 프로그램들의 세트를 정렬시킨다(618).
텔레비전 프로그램 기반 검색 확장
도 7은, 몇몇 구현들에 따라서, 결정된 텔레비전 프로그램에 따라서 검색 결과들을 향상시키기 위한 프로세스를 예시하는 흐름도이다. 도 7에 도시된 각각의 동작들은 컴퓨터 메모리 또는 컴퓨터 판독가능한 저장 매체에 저장된 명령들에 대응할 수 있다. 선택적인 동작들은 점선들(예를 들어, 점선들 경계들을 갖는 박스들)로 표시된다. 몇몇 구현들에서, 도 7에 도시된 동작들은 검색 질의 수정 시스템(124-2)(도 1 및 도 3)에 의해 수행된다.
몇몇 구현들에 따라서, 질의 서버 시스템(120)(도 1)은 전자 디바이스의 사용자로부터 검색 질의를 수신한다(702). 그 다음 질의 서버 시스템은, 검색 질의에 기초하여, 사용자가 현재 시청중인 텔레비전 프로그램을 결정한다(704). 검색 질의에 기초하여 텔레비전 프로그램을 결정하기 위한 방법이 도 6에 예시된다. 몇몇 구현들에서, 텔레비전 프로그램은 전자 디바이스에 근접하여 디스플레이되고 있는 텔레비전 프로그램에 관한 정보를 직접적으로 액세스하는 서버에 의해 결정된다. 예를 들어, 서버 시스템은 사용자에게 현재 디스플레이되고 있는 텔레비전 채널 또는 텔레비전 프로그램에 관한 정보를 저장하는 디바이스(예를 들어, 셋탑 박스, 인터넷-인에이블 텔레비전 시스템, 또는 홈 매체 컴퓨팅 디바이스)를 액세스함으로써 전자 디바이스에 근접하여 디스플레이되는 프로그램을 결정할 수 있다.
몇몇 구현들에 따라서, 질의 서버 시스템(120)(도 1)은 결정된 텔레비전 프로그램에 기초하여 수신된 검색 질의를 수정한다(706). 몇몇 구현들에서, 수신된 검색 질의를 수정하는 하나의 방법으로서, 질의 서버 시스템(120)(도 1)은 텔레비전 프로그램 관련 정보의 데이터베이스를 액세스한다(708). 몇몇 구현들에서, 텔레비전 프로그램 관련 정보는 프로그램 방영 시간들, 채널 정보, 프로그램 제목, 프로그램 설명, 프로그램 시리즈 정보, 배역 정보 및 장르 정보에 관련된 정보를 포함한다. 그 다음 질의 서버 시스템(120)(도 1)은 결정된 텔레비전 프로그램과 수신된 검색 질의 둘 다와 관계되는 추가적인 검색 용어들을 결정한다(710). 질의 서버 시스템(120)(도 1)은 수신된 검색 질의에 추가적인 검색 용어들을 더한다(712).
몇몇 구현들에서, 수신된 검색 질의를 수정하기 위해 추가적인 용어들을 결정하는 것은, 검색 질의 프로파일(417)(도 4)로부터, 수신된 검색 질의에 관련된 카테고리들을 우선 결정하고, 결정된 텔레비전 프로그램과 관계된 텔레비전 프로그램 프로파일(516)(도 5)로부터, 결정된 텔레비전 프로그램에 관련된 카테고리들을 결정하며, 그리고 수신된 검색 질의와 관계된 카테고리들의 세트와 결정된 텔레비전 프로그램과 관계된 카테고리들의 세트를 비교함으로써 달성된다. 상관되는 카테고리들에 기초하여, 검색 질의 수정 시스템(124-2)(도 1)은 관련되는 추가적인 검색 질의를 찾는다. 예를 들어, 수신된 검색 질의가 "F550"이고 결정된 텔레비전 프로그램이 "Top Gear", 자동차들에 관한 텔레비전 프로그램이었다면, 검색 질의 수정 시스템(124-2)(도 1)은 수신된 검색 질의와 결정된 텔레비전 프로그램 둘 다가 카테고리 "스포츠 자동차들" 그리고, 특히, 페라리 F550에 관련된다고 결정한다. 이러한 결정에 기초하여, 검색 질의 수정 시스템(124-2)(도 1)은 "페라리"가 관련되는 검색 질의 용어라고 결정하고 "페라리"를 포함하도록 수신된 검색 질의를 수정한다.
몇몇 구현들에 따라서, 검색 서버 시스템(120)(도 1)은 수정된 검색 질의로 검색을 수행한다(714). 검색 프로세싱 서버는 질의 서버 시스템에 의해 앞서 수집되고, 색인되며, 그리고 저장된 웹 크롤러 데이터(도 3, 336을 참조)를 통해 검색하기 위해 수정된 검색 질의를 이용한다. 그 다음 검색 서버 시스템(120)(도 1)은 전자 디바이스(716)로 수정된 검색 질의의 검색 결과들을 리턴한다.
검색 질의에 기초한 텔레비전 프로그램 제안들
도 8은, 몇몇 구현들에 따라서, 수신된 검색 질의에 따라서 텔레비전 프로그램을 제안하기 위한 프로세스를 예시하는 흐름도이다. 도 8에 도시된 각각의 동작들은 컴퓨터 메모리 또는 컴퓨터 판독가능한 저장 매체에 저장된 명령들에 대응할 수 있다. 선택적인 동작들은 점선들(예를 들어, 점선 경계들을 갖는 박스들)로 표시된다. 몇몇 구현들에서, 도 8에 도시된 동작들은 텔레비전 프로그램 제안 시스템(124-3)(도 1 및 도 3)에 의해 수행된다.
몇몇 구현들에 따라서, 질의 서버 시스템(120)(도 1)은 전자 디바이스로부터 사용자의 검색 질의를 수신한다(802). 그 다음 검색 서버 시스템(120)(도 1)은 수신된 검색 질의에 따라서 전자 디바이스의 사용자에게 관심있는 하나 또는 하나를 초과하는 주제들을 결정한다(804). 몇몇 구현들에서, 질의 서버 시스템(120)(도 1)은 수신된 검색 질의 용어들과 관계된 제1 카테고리들의 세트를 식별함으로써 전자 디바이스의 사용자에게 관심있는 주제들을 결정한다. 몇몇 구현들에서, 질의 서버 시스템(120)(도 1)은 검색 질의 용어들과 관계된 제1 카테고리들의 세트를 동적으로 결정한다. 몇몇 구현들에서, 질의 서버 시스템(120)(도 1)은 앞서 검색 질의 용어들과 관계된 제1 카테고리들의 세트를 결정하고 나중의 검색을 위해 질의 프로파일 데이터베이스(140)(도 1)내 검색 질의와 관계된 제1 카테고리들의 세트를 저장한다.
몇몇 구현들에 따라서, 검색 서버 시스템(120)(도 1)은, 전자 디바이스의 사용자와 관계된 위치와 수신된 검색 질의에 따라서 사용자에게 관심있을 것으로 결정된 주제들에 따라서, 시간 창 동안 활용가능한 적어도 하나의 텔레비전 프로그램을 결정한다(806). 몇몇 구현들에서, 질의 서버 시스템(120)(도 1)은 텔레비전 프로그램들의 세트로부터 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 식별함으로써 이러한 결정을 한다. 그 다음 질의 서버 시스템(120)(도 1)은 검색 질의 용어들과 관계된 제1 카테고리들의 세트와 텔레비전 프로그램들의 세트내 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 비교하기 위해 매칭 함수를 적용한다. 몇몇 구현들에서 질의 서버 시스템(120)(도 1)은 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 동적으로 결정한다. 다른 구현들에서, 질의 서버 시스템(120)(도 1)은 앞서 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 결정하며 텔레비전 프로그램 정보 데이터베이스(130)(도 1)에 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 저장한다.
몇몇 구현들에 따라서, 텔레비전 프로그램 제안 시스템(124-3)(도 1)은 현재 활용가능한 텔레비전 프로그램들의 세트로부터 각각의 텔레비전 프로그램에 대한 스코어를 생성한다. 몇몇 구현들에서, 스코어는 수신된 검색 질의에 관계된 제1 카테고리들의 세트와 현재 활용가능한 텔레비전 프로그램들의 세트로부터 각각의 텔레비전 프로그램과 관계된 제2 카테고리들의 세트에 매칭 함수를 적용함으로써 생성된다. 예를 들어, "재규어"의 검색 질의는 재규어와 관계된 이어지는 카테고리들의 세트(포유 동물들, 스포츠 카들, 스포츠 팀들)를 가질 수 있다. "미국의 차세대 탑 모델(America's Next Top Model)"과 같은 텔레비전 프로그램은 관계된 이어지는 카테고리들의 세트(패션, 모델들, 의상 디자인)를 가질 수 있다. 예컨대 내적(dot product)과 같은, 매칭 함수는 두 텔레비전 프로그램들간의 상관이 없다는 것을 찾기 어려울 것이며 따라서 결과적인 스코어는 매우 낮을 것이다. 그러나, "탑 기어"와 같은 텔레비전 프로그램은 이어지는 관계된 카테고리들의 세트(자동차들, 스포츠 카들, 레이싱 카들)를 가질 수 있다. "재규어"와 "탑 기어"에 대한 카테고리들의 세트의 내적은 "미국의 차세대 탑 모델"에 대한 것 보다 많은 상관을 발생할 것이며 따라서 보다 높은 결과적인 스코어를 발생할 것이다. 몇몇 구현들에 따라서, 활용가능한 텔레비전 프로그램들의 세트는 생성된 스코어에 따라서 정렬된다. 몇몇 구현들에서, 전자 디바이스의 사용자에게 추천된 텔레비전 프로그램은 최고의 생성 스코어를 갖는 텔레비전 프로그램이다.
몇몇 구현들에 따라서, 질의 서버 시스템(120)(도 1)은, 적어도 하나의 텔레비전 프로그램이 사용자/전자 디바이스에 활용가능하며 결정된 관심 카테고리들에 충분히 관련된다는 결정에 따라서, 결정된 텔레비전 프로그램을 시청하기 위해 사용자/전자 디바이스로 추천을 전송한다(808). 몇몇 구현들에서, 질의 서버 시스템(120)(도 1)이 특정한 시간 창 동안 활용가능한 텔레비전 프로그램들 중 어느 프로그램도 사용자의 결정된 관심 카테고리들에 충분히 관련되지 않는다고 결정하면, 추천이 전송되지 않는다.
몇몇 구현들에 따라, 질의 서버 시스템(120)(도 1)은 제안된 텔레비전 프로그램에 관한 전자 디바이스의 사용자로부터 응답을 수신한다(810). 이러한 응답은 사용자가 이미 제안된 텔레비전 프로그램을 시청중이거나, 사용자가 제안된 텔레비전 프로그램을 시청하기로 결정했거나 사용자가 제안된 텔레비전 프로그램의 시청에 있어서 관심이 없다는 것을 표시할 수 있다.
몇몇 구현들에서, 질의 서버 시스템(120)(도 1)은 전자 디바이스의 사용자로부터 수신된 응답을 평가한다(811). 평가에 기초하여, 질의 서버 시스템(120)(도 1)은 응답이 추천들에 대해 우호적이거나 비우호적인지를 결정할 수 있다. 우호적인 응답은 사용자가 추천된 텔레비전 프로그램을 시청하기 위해 선택하면 수신될 것이다. 비우호적인 응답은 사용자가 이미 제안된 텔레비전 프로그램을 시청중이거나, 제안된 텔레비전 프로그램을 시청하는데 관심이 없다는 것을 사용자가 표시하면 수신될 것이다. 사용자가 이미 제안된 텔레비전 프로그램을 시청중이거나, 또는 제안된 텔레비전 프로그램을 시청하는데 관심이 없다는 것을 표시하는 응답에 따라서, 질의 서버 시스템(120)(도 1)은 추천된 텔레비전 프로그램의 장래의 추천들을 억제한다(812).
도 9는 몇몇 구현들에 따라서 클라이언트(102)(도 1)와 질의 서버 시스템(120)(도 1) 간의 통신을 예시하는 흐름도이다. 도 9에 도시된 각각의 동작들은 컴퓨터 메모리 또는 컴퓨터 판독가능한 저장 매체에 저장된 명령들에 대응할 수 있다. 선택적인 동작들은 점선들(예를 들어, 점선 경계들을 갖는 박스들)로 표시된다.
몇몇 구현들에 따라서, 클라이언트 디바이스는 서버 시스템으로 검색 질의를 전송한다(902). 질의 서버 시스템(120)(도 1)은 클라이언트 디바이스(904)로부터 검색 질의를 수신한다. 질의 서버 시스템(120, 도 1)은 수신된 검색 질의와 관계된 하나 또는 하나를 초과하는 관심 주제들을 결정한다(906). 그 다음 질의 서버 시스템(120, 도1)은, 검색 질의에 관계된 결정된 카테고리들에 따라서, 사용자에게 활용가능한 텔레비전 프로그램을 결정한다(908). 그 다음 질의 서버 시스템(120)(도 1)은 클라이언트 디바이스로 결정된 텔레비전 프로그램을 위한 추천을 전송한다(910). 클라이언트 디바이스는 서버 시스템으로부터 추천을 수신한다(912).
몇몇 구현들에 따라서, 클라이언트 디바이스(102)(도 1)의 사용자는 추천에 응답하며 클라이언트 디바이스는 서버 시스템으로 응답을 전송한다(914). 선택적으로, 질의 서버 시스템(120)(도 1)은 클라이언트 디바이스로부터 추천에 대한 응답을 수신한다(916). 그 다음 질의 서버 시스템(120)(도 1)은 클라이언트 디바이스로부터 응답을 평가한다(918). 서버 시스템이, 수신된 응답이 비우호적이라고 결정한다면, 서버 시스템은 결정된 텔레비전 프로그램에 대해 추가적인 추천을 억제한다(920). 비우호적인 응답은 클라이언트 디바이스(102)(도 1)의 사용자가 이미 추천된 텔레비전 프로그램을 시청중이라는 표시 또는 클라이언트 디바이스의 사용자가 추천된 텔레비전 프로그램에 관심이 없다는 표시를 포함할 수 있다.
도 10은 검색 질의를 입력하고 전자 디바이스(102)(도 1)에 대한 텔레비전 프로그램 추천들과 기타 검색 결과들을 수신하기 위해 검색 리퀘스터(search requestor)를 인에이블시키는 예시적인 사용자 인터페이스(1000)를 예시한다. 본 예에서, 사용자 인터페이스(1000)는 텍스트 입력 박스(1004)를 포함하는 툴바(1002)를 포함하는 브라우저 창(browser window)을 포함한다. 도 10에서 예는 텍스트 입력 박스(604)내 검색 질의 <F550>를 묘사한다. 검색 질의의 사용자 입력 직후, 사용자 인터페이스는 사용자의 위치(텔레비전 프로그램들이 결정되는 방법의 설명을 위해 도 8-9를 참조) 및 기타 검색 결과들(1010)을 위해 추천된 텔레비전 프로그램(1008)의 세트를 디스플레이한다. 몇몇 구현들에서 페이지는 입력된 검색 질의와 관계된 비디오 결과들, 영상 결과들, 뉴스 결과들 또는 쇼핑 관련 검색 결과들과 같이 도 10에 도시되지 않는 기타 형태들의 검색 결과들을 또한 포함할 수 있다.
설명을 위해, 상기 상세한 설명은 특정한 구현들을 참조하여 기술되었다. 그러나, 상기 예시적인 논의들은 포괄적이거나 개시된 정확한 형태들로 본 발명을 제한하기 위함이 아니다. 많은 변경들과 변화들이 상기 교시들을 고려하여 가능하다. 구현들은 본 발명의 원리들과 본 발명의 실용적인 어플리케이션들을 가장 잘 설명하고, 이에 의해 당업자가 고려된 특별한 사용에 적합하게 되는 바와 같이 다양한 변경들과 함께 본 발명과 다양한 구현들을 가장 잘 활용하도록 하기 위해 선택되고 기술되었다.
비록 용어들 제1, 제2 등이 다양한 엘리먼트들을 기술하기 위해 본 명세서에서 사용될 수 있다고 하더라도, 이들 엘리먼트들은 이들 용어들에 의해 제한되지 않아야 한다는 것이 또한 이해될 것이다. 이들 용어들은 단지 다른 엘리먼트로부터 하나의 엘리먼트를 구별하기 위해서만 사용된다. 예를 들어, 본 구현들의 범주를 벗어남이 없이, 제1 접촉은 제2 접촉으로 칭해질 수 있으며, 그리고, 유사하게, 제2 접촉은 제1 접촉으로 칭해질 수 있다. 제1 접촉과 제2 접촉은 둘 다 접촉들이지만, 이들은 동일한 접촉이 아니다.
본 명세서에서 구현들의 상세한 설명에 사용된 전문 용어는 단지 특별한 구현들을 기술하기 위한 것이며 제한하기 위한 의도가 아니다. 구현들의 상세한 설명과 첨부된 청구항들에 사용된 바와 같이, 문맥이 달리 분명하게 표시하지 않는 한, 단수 형태들 "a," "an," 그리고 "the"는 복수 형태들을 또한 포함하기 위함이다. 본 명세서에 사용된 바와 같이 용어 "그리고/또는(and/or)"은 하나 또는 하나를 초과하는 관계된 목록 아이템들의 임의의 그리고 모든 가능한 조합들을 지칭하고 망라한다는 것이 또한 이해될 것이다. 본 명세서에서 사용될 때, 용어들 "포함하다" 및/또는 "포함하는"은 언급된 특징들, 정수들, 단계들, 동작들, 엘리먼트들, 및/또는 컴포넌트들을 특정하지만, 하나 또는 하나를 초과하는 기타 특징들, 정수들, 단계들, 엘리먼트들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않는다는 것이 더 이해될 것이다.
본 명세서에 사용된 바와 같이, 용어 "if(만약에, 경우에)"는 문맥에 따라서 "when(때)" 또는 "upon(시)" 또는 "결정에 응답하여(in response to determining)" 또는 "검출에 응답하여(in response to detecting)"를 의미하는 것으로 해석될 수 있다.
유사하게, 문구 "결정된다면(if it is determined)" 또는 "검출된다면(if(언급된 조건 또는 이벤트)is detected)"는 문맥에 따라서 "결정시(upon determining)" 또는 "결정에 응답하여(in response to determining)" 또는 "검출 시(upon detecting(언급된 조건 또는 이벤트))" 또는 "검출에 응답하여(in response to detecting(언급된 조건 또는 이벤트))"를 의미하는 것으로 해석될 수 있다.

Claims (69)

  1. 텔레비전 프로그램들에 관련된 검색 질의들을 이용하기 위한 방법으로서,
    복수의 프로세서들과 스토리지를 포함하고 텔레비전 프로그램 관련 정보의 데이터베이스를 액세스하는 서버에서,
    전자 디바이스로부터 사용자의 검색 질의를 수신하는 단계;
    특정한 시간 창 동안 상기 전자 디바이스와 관계된 위치에서 활용가능한 텔레비전 프로그램들을 위한 상기 검색 질의와 텔레비전 프로그램 관련 정보에 따라서, 상기 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정하는 단계
    를 포함하며,
    여기서 상기 텔레비전 프로그램 관련 정보는 상기 관계된 위치에 대해 방송중인 복수의 텔레비전 프로그램들을 위해 프로그램 설명들을 포함하는,
    검색 질의들을 이용하기 위한 방법.
  2. 제1항 내지 제2항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램을 결정하기 전에, 어떠한 텔레비전 프로그램이 현재 디스플레이되고 있는지를 결정하는 단계를 더 포함하는,
    검색 질의들을 이용하기 위한 방법.
  3. 제1항 내지 제3항 중 어느 한 항에 있어서,
    가능한 텔레비전 프로그램들의 세트내 각각의 텔레비전 프로그램을 위해, 상기 텔레비전 프로그램을 결정하는 단계는 스코어를 생성하는 단계를 포함하며, 상기 스코어는 상기 수신된 질의 용어들과 관계되는,
    검색 질의들을 이용하기 위한 방법.
  4. 제3항에 있어서,
    상기 텔레비전 프로그램을 결정하는 단계는 상기 생성된 스코어에 따라서 상기 가능한 텔레비전 프로그램들의 세트를 정렬시키는 단계를 더 포함하는,
    검색 질의들을 이용하기 위한 방법.
  5. 제4항에 있어서,
    상기 텔레비전 프로그램을 결정하는 단계는 상기 결정된 텔레비전 프로그램으로서 최고 생성 스코어를 갖는 상기 텔레비전 프로그램을 선택하는 단계를 더 포함하는,
    검색 질의들을 이용하기 위한 방법.
  6. 제3항에 있어서,
    상기 스코어를 생성하는 단계는 :
    상기 검색 질의 용어들과 관계된 제1 카테고리들의 세트를 식별하는 단계;
    상기 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 식별하는 단계; 그리고
    상기 제1 카테고리들의 세트와 상기 제2 카테고리들의 세트에 매칭 함수를 적용하는 단계
    를 더 포함하는,
    검색 질의들을 이용하기 위한 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램 관련 정보는 프로그램 방영 시간들, 채널 정보, 프로그램 제목, 프로그램 설명, 프로그램 시리즈 정보, 배역 정보 및 장르 정보에 관련된 정보를 포함하는,
    검색 질의들을 이용하기 위한 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 수신된 검색 질의와 상기 결정된 텔레비전 프로그램에 대응하는 검색 결과들을 획득하는 단계; 그리고
    상기 전자 디바이스로 상기 검색 결과들을 전송하는 단계
    를 더 포함하는,
    검색 질의들을 이용하기 위한 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램이 사용자에게 디스플레이되고 있는,
    검색 질의들을 이용하기 위한 방법.
  10. 텔레비전 프로그램들에 관련된 검색 질의들을 이용하기 위한 서버 시스템으로서,
    프로그램들을 실행하기 위한 하나 또는 하나를 초과하는 중앙 처리 유닛들;
    상기 하나 또는 하나를 초과하는 중앙 처리 유닛들에 의해 실행될 하나 또는 하나를 초과하는 프로그램을 저장하는 메모리
    를 포함하며,
    상기 하나 또는 하나를 초과하는 프로그램들은 :
    전자 디바이스로부터 사용자의 검색 질의를 수신하기 위한 명령들;
    특정한 시간 창 동안 상기 전자 디바이스와 관계된 위치에서 활용가능한 텔레비전 프로그램들을 위한 상기 검색 질의와 텔레비전 프로그램 관련 정보에 따라서, 상기 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정하기 위한 명령들
    을 포함하며,
    여기서 상기 텔레비전 프로그램 관련 정보는 상기 관계된 위치에 대해 방송중인 복수의 텔레비전 프로그램들을 위해 프로그램 설명들을 포함하는,
    검색 질의들을 이용하기 위한 서버 시스템.
  11. 제10항에 있어서,
    상기 텔레비전 프로그램을 결정하기 전에, 어떠한 텔레비전 프로그램이 현재 디스플레이되고 있는지를 결정하기 위한 명령들을 더 포함하는,
    검색 질의들을 이용하기 위한 서버 시스템.
  12. 제10항 내지 제11항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램을 결정하기 위한 명령들은, 가능한 텔레비전 프로그램들의 세트내 각각의 텔레비전 프로그램을 위해, 상기 전자 디바이스로부터 수신된 상기 질의 용어들과 관계된 스코어를 생성하는 것을 더 포함하는,
    검색 질의들을 이용하기 위한 서버 시스템.
  13. 제12항에 있어서,
    상기 텔레비전 프로그램을 결정하기 위한 상기 명령들은 상기 생성된 스코어에 따라서 상기 가능한 텔레비전 프로그램들의 세트를 정렬시키는 것을 더 포함하는,
    검색 질의들을 이용하기 위한 서버 시스템.
  14. 제12항 내지 제13항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램을 결정하기 위한 상기 명령들은 상기 결정된 텔레비전 프로그램으로서 최고 생성 스코어를 갖는 상기 텔레비전 프로그램을 선택하는 것을 더 포함하는,
    검색 질의들을 이용하기 위한 서버 시스템.
  15. 제12항 내지 제14항 중 어느 한 항에 있어서,
    스코어를 생성하기 위한 상기 명령들은 상기 검색 질의 용어들과 관계된 제1 카테고리들의 세트를 식별하는 것;
    상기 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 식별하는 것; 그리고
    상기 제1 카테고리들의 세트와 상기 제2 카테고리들의 세트에 매칭 함수를 적용하는 것
    을 더 포함하는,
    검색 질의들을 이용하기 위한 서버 시스템.
  16. 제10항 내지 제15항 중 어느 한 항에 있어서,
    메모리에 저장된 상기 텔레비전 프로그램 관련 정보는 프로그램 방영 시간들, 채널 정보, 프로그램 제목, 프로그램 설명, 프로그램 시리즈 정보, 배역 정보 및 장르 정보와 관련된 정보를 포함하는,
    검색 질의들을 이용하기 위한 서버 시스템.
  17. 제10항 내지 제16항 중 어느 한 항에 있어서,
    상기 수신된 검색 질의와 상기 결정된 텔레비전 프로그램에 대응하는 검색 결과들을 획득하기 위한 명령들; 그리고
    상기 전자 디바이스로 상기 검색 결과들을 전송하기 위한 명령들
    을 더 포함하는,
    검색 질의들을 이용하기 위한 서버 시스템.
  18. 제10항 내지 제15항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램이 상기 사용자에 디스플레이되고 있는,
    검색 질의들을 이용하기 위한 서버 시스템.
  19. 컴퓨터에 의한 실행을 위해 구성된 하나 또는 하나를 초과하는 프로그램들을 저장하는 비-일시적인 컴퓨터 판독가능한 저장 매체로서,
    상기 하나 또는 하나를 초과하는 프로그램들은 :
    사용자의 검색 질의를 수신하기 위한 명령들;
    특정한 시간 창 동안 전자 디바이스와 관계된 위치에서 활용가능한 텔레비전 프로그램들을 위한 상기 검색 질의와 텔레비전 프로그램 관련 정보에 따라서, 사용자에게 현재 디스플레이되고 있는 텔레비전 프로그램을 결정하기 위한 명령들
    을 포함하며,
    여기서 상기 텔레비전 프로그램 관련 정보는 상기 관계된 위치에 대해 방송중인 복수의 텔레비전 프로그램들을 위한 프로그램 설명들을 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  20. 제19항에 있어서,
    상기 텔레비전 프로그램을 결정하기 전에, 어떠한 텔레비전 프로그램이 상기 전자 디바이스상에 현재 디스플레이되고 있는지를 결정하기 위한 명령들을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  21. 제19항 내지 제20항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램을 결정하기 위한 명령들은, 가능한 텔레비전 프로그램들의 세트내 각각의 텔레비전 프로그램을 위해, 상기 전자 디바이스로부터 수신된 상기 질의 용어들과 관계된 스코어를 생성하는 것을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  22. 제21항에 있어서,
    상기 텔레비전 프로그램을 결정하기 위한 상기 명령들은 상기 생성된 스코어에 따라서 상기 가능한 텔레비전 프로그램들의 세트를 정렬시키는 것을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  23. 제21항 내지 제22항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램을 결정하기 위한 상기 명령들은 상기 결정된 텔레비전 프로그램으로서 최고 생성 스코어로 상기 텔레비전 프로그램을 선택하는 것을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  24. 제21항 내지 제23항 중 어느 한 항에 있어서,
    스코어를 생성하기 위한 상기 명령들은 상기 검색 질의 용어들과 관계된 제1 카테고리들의 세트를 식별하는 것;
    상기 텔레비전 프로그램과 관계된 제2 카테고리들의 세트를 식별하는 것; 그리고
    상기 제1 카테고리들의 세트와 상기 제2 카테고리들의 세트에 매칭 함수를 적용하는 것
    을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  25. 제19항 내지 제24항 중 어느 한 항에 있어서,
    상기 수신된 검색 질의와 상기 결정된 텔레비전 프로그램에 대응하는 검색 결과들을 획득하기 위한 명령들;
    상기 전자 디바이스로 상기 검색 결과들을 전송하기 위한 명령들
    을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  26. 제19항 내지 제25항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램이 상기 사용자에게 디스플레이되고 있는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  27. 텔레비전 프로그램에 기초하여 검색 질의를 수정하기 위한 방법으로서,
    서버에서;
    전자 디바이스로부터 사용자의 검색 질의를 수신하는 단계; 그리고
    상기 전자 디바이스에 근접하여 디스플레이되고 있는 텔레비전 프로그램에 기초하여 상기 검색 질의를 수정하는 단계
    를 포함하는,
    검색 질의를 수정하기 위한 방법.
  28. 제27항에 있어서,
    상기 방법은 상기 수정된 검색 질의로 검색을 수행하는 단계를 더 포함하는,
    검색 질의를 수정하기 위한 방법.
  29. 제28항에 있어서,
    상기 방법은 상기 전자 디바이스로 상기 수정된 질의에 대한 검색 결과들을 전송하는 단계를 더 포함하는,
    검색 질의를 수정하기 위한 방법.
  30. 제27항 내지 제29항 중 어느 한 항에 있어서,
    상기 수정 단계는 상기 텔레비전 프로그램에 관련되고 상기 수신된 검색 질의에 관련되는 추가적인 검색 용어들을 결정하는 단계를 포함하는,
    검색 질의를 수정하기 위한 방법.
  31. 제30항에 있어서,
    상기 방법은 상기 결정된 텔레비전 프로그램에 따라서 상기 수신된 검색 질의에 상기 추가적인 검색 용어들을 더하는 단계를 더 포함하는,
    검색 질의를 수정하기 위한 방법.
  32. 제30항 내지 제31항 중 어느 한 항에 있어서,
    상기 결정하는 단계는
    텔레비전 프로그램 관련 정보의 데이터베이스를 액세스하는 단계; 그리고
    상기 텔레비전 프로그램 관련 정보의 데이터베이스에 저장된 상기 정보에 기초하여 상기 추가적인 검색 용어들을 결정하는 단계
    를 더 포함하는,
    검색 질의를 수정하기 위한 방법.
  33. 제27항 내지 제32항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램 관련 정보는 프로그램 방영 시간들, 채널 정보, 프로그램 제목, 프로그램 설명, 프로그램 시리즈 정보, 배역 정보 및 장르 정보에 관련된 정보를 포함하는,
    검색 질의를 수정하기 위한 방법.
  34. 텔레비전 프로그램에 기초하여 검색 질의를 수정하기 위한 서버 시스템으로서,
    프로그램들을 실행하기 위한 하나 또는 하나를 초과하는 중앙 처리 유닛들;
    상기 하나 또는 하나를 초과하는 중앙 처리 유닛들에 의해 실행될 하나 또는 하나를 초과하는 프로그램들을 저장하는 메모리
    를 포함하며;
    상기 하나 또는 하나를 초과하는 프로그램들은 :
    전자 디바이스로부터 사용자의 검색 질의를 수신하기 위한 명령들; 그리고
    상기 전자 디바이스에 근접하여 디스플레이되고 있는 텔레비전 프로그램에 기초하여 상기 검색 질의를 수정하기 위한 명령들
    을 포함하는,
    서버 시스템.
  35. 제34항에 있어서,
    상기 수정된 검색 질의로 검색을 수행하기 위한 명령들을 더 포함하는,
    서버 시스템.
  36. 제35항에 있어서,
    상기 전자 디바이스로 상기 수정된 질의에 대한 검색 결과들을 전송하기 위한 명령들을 더 포함하는,
    서버 시스템.
  37. 제34항 내지 제36항 중 어느 한 항에 있어서,
    수정을 위한 상기 명령들은 상기 텔레비전 프로그램에 관련되고 상기 수신된 검색 질의에 관련되는 추가적인 검색 용어들을 결정하는 것을 포함하는,
    서버 시스템.
  38. 제37항에 있어서,
    상기 수신된 검색 질의에 상기 결정된 추가적인 검색 용어들을 더하기 위한 명령들을 더 포함하는,
    서버 시스템.
  39. 제37항 내지 제38항 중 어느 한 항에 있어서,
    결정을 위한 상기 명령들은 텔레비전 프로그램 관련 정보의 데이터베이스를 액세스하는 것; 그리고
    상기 텔레비전 프로그램 관련 정보의 데이터베이스에 저장된 상기 정보에 기초하여 상기 추가적인 검색 용어들을 결정하는 것
    을 더 포함하는,
    서버 시스템.
  40. 제34항 내지 제39항 중 어느 한 항에 있어서,
    메모리에 저장된 상기 텔레비전 프로그램 관련 정보는 프로그램 방영 시간들, 채널 정보, 프로그램 제목, 프로그램 설명, 프로그램 시리즈 정보, 배역 정보 및 장르 정보에 관련된 정보를 포함하는,
    서버 시스템.
  41. 컴퓨터에 의한 실행을 위해 구성된 하나 또는 하나를 초과하는 프로그램들을 저장하는 비-일시적인 컴퓨터 판독가능한 저장 매체로서,
    상기 하나 또는 하나를 초과하는 프로그램들은 :
    전자 디바이스로부터 사용자의 검색 질의를 수신하기 위한 명령들; 그리고
    상기 전자 디바이스에 근접하여 디스플레이되고 있는 텔레비전 프로그램에 기초하여 상기 검색 질의를 수정하기 위한 명령들
    을 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  42. 제41항에 있어서,
    상기 수정된 검색 질의로 검색을 수행하기 위한 명령들을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  43. 제42항에 있어서,
    상기 전자 디바이스로 상기 수정된 질의에 대한 검색 결과들을 전송하기 위한 명령들을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  44. 제41항 내지 제43항 중 어느 한 항에 있어서,
    수정을 위한 상기 명령들은 상기 텔레비전 프로그램에 관련되고 상기 수신된 검색 질의에 관련되는 추가적인 검색 용어들을 결정하는 것을 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  45. 제44항에 있어서,
    상기 수신된 검색 질의에 상기 추가적인 검색 용어들을 더하기 위한 명령들을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  46. 제44항 내지 제45항 중 어느 한 항에 있어서,
    결정을 위한 상기 명령들은
    텔레비전 프로그램 관련 정보의 데이터베이스를 액세스하는 것; 그리고
    상기 텔레비전 프로그램 관련 정보의 데이터베이스에 저장된 상기 정보에 기초하여 상기 추가적인 검색 용어들을 결정하는 것
    을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  47. 제27항 내지 제33항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램은, 상기 검색 질의에 기초하여, 사용자에게 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 선택되는,
    검색 질의를 수정하기 위한 방법.
  48. 제34항 내지 제40항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램은, 상기 검색 질의에 기초하여, 사용자에게 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 선택되는,
    검색 질의를 수정하기 위한 서버 시스템.
  49. 제41항 내지 제46항 중 어느 한 항에 있어서,
    상기 텔레비전 프로그램은, 상기 검색 질의에 기초하여, 사용자에게 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 선택되는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  50. 검색 질의들에 기초하여 TV 프로그램들을 추천하기 위한 방법으로서,
    서버에서;
    시간 창 동안 전자 디바이스로부터 검색 용어들을 수신하는 단계;
    상기 수신된 검색 질의에 따라서 하나 또는 하나를 초과하는 관심 카테고리들을 결정하는 단계;
    상기 전자 디바이스와 관계된 위치와 상기 수신된 검색 질의에 따라서 관심이 있을 것으로 결정된 상기 카테고리들에 따라서, 상기 시간 창 동안 활용가능한 복수의 텔레비전 프로그램들로부터 적어도 하나의 텔레비전 프로그램을 결정하는 단계;
    적어도 하나의 텔레비전 프로그램이 활용가능하고 상기 결정된 관심 카테고리들에 충분히 관련된다는 결정에 따라서, 상기 결정된 텔레비전 프로그램을 시청하기 위해 상기 전자 디바이스로 추천을 전송하는 단계
    를 포함하는,
    TV 프로그램들을 추천하기 위한 방법.
  51. 제50항에 있어서,
    상기 전자 디바이스로부터 제안된 텔레비전 프로그램에 관한 응답을 수신하는 단계를 더 포함하는,
    TV 프로그램들을 추천하기 위한 방법.
  52. 제51항에 있어서,
    수신된 상기 응답을 평가하는 단계를 더 포함하며, 여기서 상기 수신된 응답은 우호적이거나 비우호적일 수 있는,
    TV 프로그램들을 추천하기 위한 방법.
  53. 제52항에 있어서,
    비우호적인 응답은 상기 제안된 텔레비전 프로그램을 시청중인 상기 전자 디바이스의 사용자의 무관심을 표시하거나 상기 제안된 텔레비전 프로그램이 이미 사용자에게 디스플레이되고 있다는 것을 표시하는,
    TV 프로그램들을 추천하기 위한 방법.
  54. 제52항 내지 제53항 중 어느 한 항에 있어서,
    비우호적인 표시의 수신에 응답하여, 상기 결정된 텔레비전 프로그램의 추가 추천들을 억제하는 단계를 더 포함하는,
    TV 프로그램들을 추천하기 위한 방법.
  55. 제50항 내지 제54항 중 어느 한 항에 있어서,
    상기 제안된 텔레비전 프로그램은 네트워크 연결을 통해 임의의 시간에 시청이 가능한,
    TV 프로그램들을 추천하기 위한 방법.
  56. 제50항에 있어서,
    추천을 위해 텔레비전 프로그램을 결정하는 단계는 카테고리 정보를 위한 텔레비전 프로그램 정보 데이터베이스와 상기 복수의 텔레비전 프로그램들과 관계된 활용가능 정보를 액세스하는 단계를 더 포함하는,
    TV 프로그램들을 추천하기 위한 방법.
  57. 제50항에 있어서,
    상기 시간 창은 상기 검색 질의가 수신되는 시간에 시작되고 장래로 사전결정된 시간의 양을 연장하는,
    TV 프로그램들을 추천하기 위한 방법.
  58. 검색 질의들에 기초하여 TV 프로그램들을 추천하기 위한, 서버 시스템으로서,
    프로그램들을 실행하기 위한 하나 또는 하나를 초과하는 중앙 처리 유닛들;
    상기 하나 또는 하나를 초과하는 중앙 처리 유닛들에 의해 실행될 하나 또는 하나를 초과하는 프로그램들을 저장하는 메모리
    를 포함하며;
    상기 하나 또는 하나를 초과하는 프로그램들은 :
    시간 창 동안 전자 디바이스로부터 검색 용어들을 수신하기 위한 명령들;
    상기 수신된 검색 질의에 따라서 하나 또는 하나를 초과하는 관심 카테고리들을 결정하기 위한 명령들;
    전자 디바이스에 관계된 위치와 상기 수신된 검색 질의에 따라서 관심있을 것으로 결정된 상기 카테고리들에 따라서, 상기 시간 창 동안 활용가능한 복수의 텔레비전 프로그램들로부터 적어도 하나의 텔레비전 프로그램을 결정하기 위한 명령들; 그리고
    적어도 하나의 텔레비전 프로그램이 활용가능하며 상기 결정된 관심 카테고리들에 충분히 관련되는 결정에 따라서, 상기 결정된 텔레비전 프로그램을 시청하기 위해 상기 전자 디바이스로 추천을 전송하기 위한 명령들
    을 포함하는,
    서버 시스템.
  59. 제58항에 있어서,
    제안된 텔레비전 프로그램에 관한 응답을 수신하기 위한 명령들을 더 포함하는,
    서버 시스템.
  60. 제59항에 있어서,
    상기 서버 시스템은 수신된 상기 응답을 평가하기 위한 명령들을 더 포함하며; 여기서 상기 수신된 응답은 우호적이거나 비우호적일 수 있는,
    서버 시스템.
  61. 제60항에 있어서,
    비우호적인 응답은 상기 제안된 텔레비전 프로그램이 상기 전자 디바이스의 사용자에게 이미 디스플레이되고 있거나 상기 제안된 텔레비전 프로그램을 시청중인 상기 사용자의 무관심을 표시하는,
    서버 시스템.
  62. 제60항 내지 제61항 중 어느 한 항에 있어서,
    비우호적인 표시의 수신에 응답하여, 상기 결정된 텔레비전 프로그램의 추가 추천들을 억제하기 위한 명령들을 더 포함하는,
    서버 시스템.
  63. 제58항 내지 제62항 중 어느 한 항에 있어서,
    상기 제안된 텔레비전 프로그램은 네트워크 연결을 통해 임의의 시간에 시청이 가능한,
    서버 시스템.
  64. 컴퓨터에 의한 실행을 위해 구성된 하나 또는 하나를 초과하는 프로그램들을 저장하는 비-일시적인 컴퓨터 판독가능한 저장 매체로서,
    상기 하나 또는 하나를 초과하는 프로그램들은 :
    시간 창 동안 전자 디바이스로부터 검색 용어들을 수신하기 위한 명령들;
    상기 수신된 검색 질의에 따라서 하나 또는 하나를 초과하는 관심 카테고리들을 결정하기 위한 명령들;
    상기 전자 디바이스와 관계된 위치와 상기 수신된 검색 질의에 따라서 관심이 있을 것으로 결정된 상기 카테고리들에 따라서, 상기 시간 창 동안 활용가능한 복수의 텔레비전 프로그램들로부터 적어도 하나의 텔레비전 프로그램을 결정하기 위한 명령들; 그리고
    적어도 하나의 텔레비전 프로그램이 활용가능하며 상기 결정된 관심 카테고리들에 충분히 관련되는 결정에 따라서, 상기 결정된 텔레비전 프로그램을 시청하기 위해 상기 전자 디바이스에 추천을 전송하기 위한 명령들
    을 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  65. 제64항에 있어서,
    제안된 텔레비전 프로그램에 관한 응답을 수신하기 위한 명령들을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  66. 제65항에 있어서,
    시스템은 수신된 상기 응답을 평가하기 위한 명령들을 더 포함하며; 여기서 상기 수신된 응답은 우호적이거나 비우호적일 수 있는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  67. 제66항에 있어서,
    비우호적인 응답은 상기 제안된 텔레비전 프로그램을 시청중인 상기 전자 디바이스의 사용자의 무관심을 표시하거나 또는 상기 제안된 텔레비전 프로그램이 이미 사용자에게 디스플레이되고 있다는 것을 표시하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  68. 제66항 내지 제67항 중 어느 한 항에 있어서,
    비우호적인 표시의 수신에 따라서, 추가 추천들을 억제하기 위한 명령들을 더 포함하는,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
  69. 제64항 내지 제68항 중 어느 한 항에 있어서,
    상기 제안된 텔레비전 프로그램은 네트워크 연결을 통해 임의의 시간에 시청이 가능한,
    비-일시적인 컴퓨터 판독가능한 저장 매체.
KR1020137033231A 2011-05-13 2012-05-11 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법 KR101924064B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161486178P 2011-05-13 2011-05-13
US61/486,178 2011-05-13
US13/174,526 US8839303B2 (en) 2011-05-13 2011-06-30 System and method for enhancing user search results by determining a television program currently being displayed in proximity to an electronic device
US13/174,526 2011-06-30
PCT/US2012/037586 WO2012158542A2 (en) 2011-05-13 2012-05-11 System and method for enhancing user search results by determining a television program currently being displayed in proximity to an electronic device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020187034078A Division KR101964908B1 (ko) 2011-05-13 2012-05-11 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20140032439A true KR20140032439A (ko) 2014-03-14
KR101924064B1 KR101924064B1 (ko) 2018-11-30

Family

ID=47142790

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020187034078A KR101964908B1 (ko) 2011-05-13 2012-05-11 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법
KR1020137033231A KR101924064B1 (ko) 2011-05-13 2012-05-11 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020187034078A KR101964908B1 (ko) 2011-05-13 2012-05-11 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법

Country Status (6)

Country Link
US (3) US8839303B2 (ko)
EP (1) EP2708031B1 (ko)
JP (1) JP5980910B2 (ko)
KR (2) KR101964908B1 (ko)
CA (1) CA2836072C (ko)
WO (1) WO2012158542A2 (ko)

Families Citing this family (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US9569788B1 (en) * 2011-05-03 2017-02-14 Google Inc. Systems and methods for associating individual household members with web sites visited
US9569544B2 (en) * 2011-08-02 2017-02-14 Oracle International Corporation Framework to persist and retrieve previous searches based on the context
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
WO2013175608A1 (ja) * 2012-05-24 2013-11-28 株式会社日立製作所 画像解析装置、画像解析システム、画像解析方法
US20130347035A1 (en) * 2012-06-21 2013-12-26 United Video Properties, Inc. Systems and methods for navigating to a favorite content source without an advertisement
US9066135B2 (en) * 2012-12-18 2015-06-23 Sony Corporation System and method for generating a second screen experience using video subtitle data
KR102516577B1 (ko) 2013-02-07 2023-04-03 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US9258597B1 (en) 2013-03-13 2016-02-09 Google Inc. System and method for obtaining information relating to video images
US20150149482A1 (en) * 2013-03-14 2015-05-28 Google Inc. Using Live Information Sources To Rank Query Suggestions
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US9247309B2 (en) 2013-03-14 2016-01-26 Google Inc. Methods, systems, and media for presenting mobile content corresponding to media content
US9705728B2 (en) 2013-03-15 2017-07-11 Google Inc. Methods, systems, and media for media transmission and management
US20150032768A1 (en) * 2013-03-15 2015-01-29 Expedia, Inc. Managing item queries
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
CN103188270B (zh) * 2013-04-11 2015-05-20 腾讯科技(深圳)有限公司 一种推荐服务器的接入ip地址的方法、装置和系统
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9699019B2 (en) * 2013-06-14 2017-07-04 Microsoft Technology Licensing, Llc Related content display associated with browsing
WO2015020942A1 (en) 2013-08-06 2015-02-12 Apple Inc. Auto-activating smart responses based on activities from remote devices
US9485543B2 (en) 2013-11-12 2016-11-01 Google Inc. Methods, systems, and media for presenting suggestions of media content
US9552395B2 (en) * 2013-11-13 2017-01-24 Google Inc. Methods, systems, and media for presenting recommended media content items
KR20150069355A (ko) * 2013-12-13 2015-06-23 엘지전자 주식회사 디스플레이 디바이스 및 그 제어 방법
US10002191B2 (en) * 2013-12-31 2018-06-19 Google Llc Methods, systems, and media for generating search results based on contextual information
US9456237B2 (en) 2013-12-31 2016-09-27 Google Inc. Methods, systems, and media for presenting supplemental information corresponding to on-demand media content
US9510057B2 (en) 2014-01-03 2016-11-29 Gracenote, Inc. Interactive programming guide
US9560449B2 (en) 2014-01-17 2017-01-31 Sony Corporation Distributed wireless speaker system
US9288597B2 (en) 2014-01-20 2016-03-15 Sony Corporation Distributed wireless speaker system with automatic configuration determination when new speakers are added
US9426551B2 (en) 2014-01-24 2016-08-23 Sony Corporation Distributed wireless speaker system with light show
US9369801B2 (en) 2014-01-24 2016-06-14 Sony Corporation Wireless speaker system with noise cancelation
US9866986B2 (en) 2014-01-24 2018-01-09 Sony Corporation Audio speaker system with virtual music performance
JP5854570B2 (ja) * 2014-01-31 2016-02-09 シャープ株式会社 情報処理装置、端末装置、情報処理システム、情報処理方法、およびプログラム
US20150243279A1 (en) * 2014-02-26 2015-08-27 Toytalk, Inc. Systems and methods for recommending responses
US9232335B2 (en) 2014-03-06 2016-01-05 Sony Corporation Networked speaker system with follow me
US9483997B2 (en) 2014-03-10 2016-11-01 Sony Corporation Proximity detection of candidate companion display device in same room as primary display using infrared signaling
US9578358B1 (en) 2014-04-22 2017-02-21 Google Inc. Systems and methods that match search queries to television subtitles
US9696414B2 (en) 2014-05-15 2017-07-04 Sony Corporation Proximity detection of candidate companion display device in same room as primary display using sonic signaling
US10070291B2 (en) 2014-05-19 2018-09-04 Sony Corporation Proximity detection of candidate companion display device in same room as primary display using low energy bluetooth
US9535990B2 (en) 2014-05-20 2017-01-03 Google Inc. Systems and methods for generating video program extracts based on search queries
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
WO2015184186A1 (en) 2014-05-30 2015-12-03 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9094730B1 (en) * 2014-06-19 2015-07-28 Google Inc. Providing timely media recommendations
US9852188B2 (en) 2014-06-23 2017-12-26 Google Llc Contextual search on multimedia content
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US11250081B1 (en) * 2014-09-24 2022-02-15 Amazon Technologies, Inc. Predictive search
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
KR102088443B1 (ko) * 2015-04-01 2020-03-12 삼성전자주식회사 검색을 수행하는 디스플레이 장치 및 이의 제어 방법
US10204104B2 (en) * 2015-04-14 2019-02-12 Google Llc Methods, systems, and media for processing queries relating to presented media content
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
GB2538776A (en) * 2015-05-28 2016-11-30 Cisco Tech Inc Contextual content programming
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
JP6199355B2 (ja) * 2015-10-13 2017-09-20 本田技研工業株式会社 コンテンツ配信サーバ及びコンテンツ配信方法並びにコンテンツ再生システム
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10353754B2 (en) 2015-12-31 2019-07-16 Entefy Inc. Application program interface analyzer for a universal interaction platform
US9693168B1 (en) 2016-02-08 2017-06-27 Sony Corporation Ultrasonic speaker assembly for audio spatial effect
US9826332B2 (en) 2016-02-09 2017-11-21 Sony Corporation Centralized wireless speaker system
US9826330B2 (en) 2016-03-14 2017-11-21 Sony Corporation Gimbal-mounted linear ultrasonic speaker assembly
US9693169B1 (en) 2016-03-16 2017-06-27 Sony Corporation Ultrasonic speaker assembly with ultrasonic room mapping
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US9794724B1 (en) 2016-07-20 2017-10-17 Sony Corporation Ultrasonic speaker assembly using variable carrier frequency to establish third dimension sound locating
US9712863B1 (en) 2016-08-09 2017-07-18 Le Technology, Inc. Remote control device with programming guide information
US9854362B1 (en) 2016-10-20 2017-12-26 Sony Corporation Networked speaker system with LED-based wireless communication and object detection
US10075791B2 (en) 2016-10-20 2018-09-11 Sony Corporation Networked speaker system with LED-based wireless communication and room mapping
US9924286B1 (en) 2016-10-20 2018-03-20 Sony Corporation Networked speaker system with LED-based wireless communication and personal identifier
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US11200241B2 (en) * 2017-11-22 2021-12-14 International Business Machines Corporation Search query enhancement with context analysis
US10734811B2 (en) 2017-11-27 2020-08-04 Ihi Inc. System and method for optimal control of energy storage system
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11928122B2 (en) * 2018-09-06 2024-03-12 Rovi Guides, Inc. Systems and methods for creating query results displays
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US10623859B1 (en) 2018-10-23 2020-04-14 Sony Corporation Networked speaker system with combined power over Ethernet and audio delivery
CN109815368A (zh) * 2018-12-10 2019-05-28 百度在线网络技术(北京)有限公司 资源推荐方法、装置、设备及计算机可读存储介质
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
JP7249351B2 (ja) 2020-03-13 2023-03-30 グーグル エルエルシー ネットワーク接続されたテレビ装置のフォーカスエリア上に表示するためのメディアコンテンツ項目の混合
KR20220155443A (ko) * 2020-03-13 2022-11-23 구글 엘엘씨 지식-기반 미디어 컨텐츠 추천들 및 통합형 사용자 인터페이스들을 갖는 네트워크-연결된 텔레비전 디바이스들
EP3903501A2 (en) 2020-03-13 2021-11-03 Google LLC Media content casting in network-connected television devices
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11934406B2 (en) * 2020-11-19 2024-03-19 Nbcuniversal Media, Llc Digital content data generation systems and methods

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008505407A (ja) * 2004-07-01 2008-02-21 エーオーエル エルエルシー カテゴリ固有電子コンテンツの管理に使用するためのクエリログの解析
KR20090004990A (ko) * 2006-04-17 2009-01-12 마이크로소프트 코포레이션 인터넷 검색 기반 텔레비전을 위한 방법, 매체 및 시스템
JP2009301498A (ja) * 2008-06-17 2009-12-24 Yahoo Japan Corp クエリ置換検索サーバ、検索方法及びプログラム
JP2009303163A (ja) * 2008-06-17 2009-12-24 Yahoo Japan Corp 放送された番組に関連する情報を表示し、番組全体ページに遷移するためのリンクが張られている検索サーバ、検索方法及びプログラム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980063435A (ko) 1996-12-11 1998-10-07 포만제프리엘 텔레비젼상에 프로그램 정보를 대화형으로 디스플레이하고 액세스하는 방법 및 시스템
WO2000078044A1 (en) 1999-06-11 2000-12-21 Scientific-Atlanta, Inc. Future program options menu system for interactive program guide
US6748375B1 (en) * 2000-09-07 2004-06-08 Microsoft Corporation System and method for content retrieval
KR100444995B1 (ko) 2002-01-09 2004-08-21 삼성전자주식회사 방송 프로그램 정보 검색 방법 및 장치
US7987491B2 (en) 2002-05-10 2011-07-26 Richard Reisman Method and apparatus for browsing using alternative linkbases
US7403939B1 (en) 2003-05-30 2008-07-22 Aol Llc Resolving queries based on automatic determination of requestor geographic location
US20070162502A1 (en) * 2005-12-29 2007-07-12 United Video Properties, Inc. Media library in an interactive media guidance application
US20080235209A1 (en) 2007-03-20 2008-09-25 Samsung Electronics Co., Ltd. Method and apparatus for search result snippet analysis for query expansion and result filtering
US20070239675A1 (en) 2006-03-29 2007-10-11 Microsoft Corporation Web search media service
JP2007300497A (ja) 2006-05-01 2007-11-15 Canon Inc 番組検索装置、及び番組検索装置の制御方法
WO2008032329A2 (en) * 2006-09-13 2008-03-20 Alon Atsmon Providing content responsive to multimedia signals
US8296808B2 (en) 2006-10-23 2012-10-23 Sony Corporation Metadata from image recognition
US8935269B2 (en) 2006-12-04 2015-01-13 Samsung Electronics Co., Ltd. Method and apparatus for contextual search and query refinement on consumer electronics devices
US20080163048A1 (en) 2006-12-29 2008-07-03 Gossweiler Iii Richard Carl System and method for displaying multimedia events scheduling information and Corresponding search results
US20080195582A1 (en) * 2007-02-08 2008-08-14 Bellsouth Intellectual Property Corporation Context Based Keyword Search
US8275764B2 (en) * 2007-08-24 2012-09-25 Google Inc. Recommending media programs based on media program popularity
US8176068B2 (en) 2007-10-31 2012-05-08 Samsung Electronics Co., Ltd. Method and system for suggesting search queries on electronic devices
US9396258B2 (en) * 2009-01-22 2016-07-19 Google Inc. Recommending video programs
CN101702766B (zh) 2009-11-11 2012-05-23 中兴通讯股份有限公司 一种管理视频节目的透明文本框业务的方法及系统
US9015139B2 (en) * 2010-05-14 2015-04-21 Rovi Guides, Inc. Systems and methods for performing a search based on a media content snapshot image
US8693844B2 (en) * 2010-10-15 2014-04-08 Hulu, LLC Bookmarking media programs for subsequent viewing
US20130035086A1 (en) * 2010-12-22 2013-02-07 Logitech Europe S.A. Remote control system for providing content suggestions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008505407A (ja) * 2004-07-01 2008-02-21 エーオーエル エルエルシー カテゴリ固有電子コンテンツの管理に使用するためのクエリログの解析
KR20090004990A (ko) * 2006-04-17 2009-01-12 마이크로소프트 코포레이션 인터넷 검색 기반 텔레비전을 위한 방법, 매체 및 시스템
JP2009301498A (ja) * 2008-06-17 2009-12-24 Yahoo Japan Corp クエリ置換検索サーバ、検索方法及びプログラム
JP2009303163A (ja) * 2008-06-17 2009-12-24 Yahoo Japan Corp 放送された番組に関連する情報を表示し、番組全体ページに遷移するためのリンクが張られている検索サーバ、検索方法及びプログラム

Also Published As

Publication number Publication date
US8839303B2 (en) 2014-09-16
EP2708031A2 (en) 2014-03-19
US20120291072A1 (en) 2012-11-15
JP2014519648A (ja) 2014-08-14
CA2836072A1 (en) 2012-11-22
WO2012158542A3 (en) 2013-01-24
JP5980910B2 (ja) 2016-08-31
KR101924064B1 (ko) 2018-11-30
KR20180129971A (ko) 2018-12-05
EP2708031B1 (en) 2019-02-20
CA2836072C (en) 2016-11-15
US9075875B1 (en) 2015-07-07
WO2012158542A2 (en) 2012-11-22
KR101964908B1 (ko) 2019-04-02
US20140351234A1 (en) 2014-11-27
US10114895B2 (en) 2018-10-30
US20150193538A1 (en) 2015-07-09
EP2708031A4 (en) 2014-10-22

Similar Documents

Publication Publication Date Title
KR101964908B1 (ko) 전자 디바이스에 근접하여 현재 디스플레이되고 있는 텔레비전 프로그램을 결정함으로써 사용자 검색 결과들을 향상시키기 위한 시스템 및 방법
US8341147B2 (en) Blending mobile search results
KR101994987B1 (ko) 관련 엔티티들
US20090006368A1 (en) Automatic Video Recommendation
US20160014482A1 (en) Systems and Methods for Generating Video Summary Sequences From One or More Video Segments
US20150293928A1 (en) Systems and Methods for Generating Personalized Video Playlists
US8819006B1 (en) Rich content for query answers
US10503803B2 (en) Animated snippets for search results
US20170220689A1 (en) Selecting content objects for recommendation based on content object collections
EP4092545A1 (en) Content recommendation method and device
US20160357868A1 (en) Related entities
JP2014085862A (ja) 予測対象コンテンツにおける将来的なコメント数を予測する予測サーバ、プログラム及び方法
US9213745B1 (en) Methods, systems, and media for ranking content items using topics
JP2019164438A (ja) レコメンド動画決定装置、レコメンド動画決定方法、およびプログラム
Persia et al. How to exploit recommender systems in social media
US20160253424A1 (en) A system and method for determining a search response to a research query

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant