KR20160104067A - Generating a news timeline and recommended news editions - Google Patents

Generating a news timeline and recommended news editions Download PDF

Info

Publication number
KR20160104067A
KR20160104067A KR1020167021015A KR20167021015A KR20160104067A KR 20160104067 A KR20160104067 A KR 20160104067A KR 1020167021015 A KR1020167021015 A KR 1020167021015A KR 20167021015 A KR20167021015 A KR 20167021015A KR 20160104067 A KR20160104067 A KR 20160104067A
Authority
KR
South Korea
Prior art keywords
user
news
content items
location
rti
Prior art date
Application number
KR1020167021015A
Other languages
Korean (ko)
Other versions
KR102117143B1 (en
Inventor
메율 아가왈
사미 모하메드 샤라비
모리스 쇼
조쿠바스 주커만
Original Assignee
구글 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US14/144,551 external-priority patent/US9569547B2/en
Priority claimed from US14/144,549 external-priority patent/US9489112B2/en
Application filed by 구글 인코포레이티드 filed Critical 구글 인코포레이티드
Publication of KR20160104067A publication Critical patent/KR20160104067A/en
Application granted granted Critical
Publication of KR102117143B1 publication Critical patent/KR102117143B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0224Discounts or incentives, e.g. coupons or rebates based on user history

Abstract

설명된 실시예들은, 사용자의 관심 대상일 가능성이 있으며 사용자의 위치 또는 관심 대상 영역에 시간적으로 및/또는 지리적으로 관련있는 뉴스 기사들 또는 다른 콘텐츠를 사용자에게 제시하는 것을 가능하게 한다. 뉴스 전달 시스템은, 토픽들, 위치들 및 날짜들을 이용가능한 콘텐츠에 할당하는 인제스트 모듈, 특정한 사용자가 관련있다고 찾는 프로파일 토픽들 및 지리적 위치들을 결정하는 프로파일 엔진, 및 인제스트 모듈 및 프로파일 엔진의 동작 및 원하는 타임프레임에 기초하여 사용자를 위한 콘텐츠를 선택하는 뉴스 전달 모듈을 포함한다. 한 실시예에서, 프로파일 엔진은 사용자의 프로파일로부터 오래된 토픽들 및 위치들을 제거하기 위해 감쇠 처리를 수행한다. 관련된 양태들에서, 프로파일 엔진은 사용자에 대한 다수의 프로파일들을 유지한다.The described embodiments enable presenting to the user news articles or other content that are likely to be of interest to the user and that are temporally and / or geographically related to the user's location or area of interest. The news delivery system includes an ingest module that assigns topics, locations and dates to available content, a profile engine that determines profile topics and geographic locations that a particular user is interested in, and an operation of the ingest module and profile engine And a news delivery module for selecting content for the user based on the desired time frame. In one embodiment, the profile engine performs attenuation processing to remove old topics and locations from the user's profile. In related aspects, the profile engine maintains multiple profiles for the user.

Description

뉴스 타임라인 및 추천된 뉴스 에디션들의 발생{GENERATING A NEWS TIMELINE AND RECOMMENDED NEWS EDITIONS}{NEW GENERATING NEWS TIMELINE AND RECOMMENDED NEWS EDITIONS}

설명된 실시예들은 컴퓨팅 디바이스들의 사용자들에 대한 뉴스 기사들의 디스플레이에 관한 것이며, 구체적으로는 사용자의 지리적 관심 대상인 또는 시간에 따른 특정한 토픽들에 관련된 뉴스 기사들의 선택 및 디스플레이에 관한 것이다.The described embodiments relate to the display of news articles for users of computing devices, and more particularly to the selection and display of news articles related to a user's geographic interest or specific topics over time.

컴퓨터들, 태블릿들, 스마트폰들 및 다른 네트워크-가능 디바이스들의 사용자들은 네트워크를 통해 뉴스 콘텐츠에 액세스할 수 있다. 예를 들어, 많은 신문들 및 정기 간행물들은 무료로 또는 다양한 가입 정책들을 통해 독자들에게 이용가능한 온라인 에디션들을 갖는다.Users of computers, tablets, smart phones and other network-enabled devices can access news content via the network. For example, many newspapers and periodicals have online editions available to readers at no charge or through various subscription policies.

많은 뉴스 소비자들은 예를 들어 뉴스 소스 자체와 관련된 웹 사이트에 대한 URL에 액세스함으로써 직접적으로 이러한 콘텐츠에 액세스하지만, 다른 소비자들은 본질적으로 다른 소스들로부터의 뉴스 콘텐츠를 단일의 사용자 인터페이스에서 사용자에게 제시하는 뉴스 애그리게이터들을 이용한다. 뉴스 소비자는 다음에 관심 있는 특정한 콘텐츠를 선택하고, 뉴스 애그리게이터를 통해 그 콘텐츠에 지향될 수 있다.Many news consumers access this content directly, for example by accessing the URL to the website associated with the news source itself, but other consumers are essentially presenting the news content from other sources to the user in a single user interface Uses news aggregators. The news consumer may then select specific content of interest and be directed to that content via the news aggregator.

많은 토픽들은 헤드라인들로부터 사라지고, 몇 주, 몇 달 또는 몇 년 후에 다시 나타난다. 일부 뉴스 소비자들은 특정한 토픽의 이력적 컨텍스트에 친숙하지 않을 수 있고, 이는 잠재적으로 부정적인 사용자 경험, 예를 들어 현재의 스토리의 중대성을 인식하는 능력의 감소를 초래한다.Many topics disappear from the headlines and reappear after a few weeks, months, or years. Some news consumers may not be familiar with the historical context of a particular topic, and this results in a reduction in the ability to recognize potentially negative user experiences, such as the significance of the current story.

설명된 실시예들은 사용자의 관심 대상인 타임프레임 내에 생성되었거나 게재된 또는 사용자의 위치나 관심 있는 영역과 지리적으로 관련되는 특정한 토픽 또는 위치에 관한 뉴스 기사들 또는 다른 콘텐츠를 사용자에게 제시하는 것을 가능하게 한다.The described embodiments make it possible to present to the user news articles or other content relating to a particular topic or location that has been created or published in the time frame of interest of the user or geographically related to the user's location or area of interest .

뉴스 전달 시스템은 토픽들 및 위치들을 이용가능한 콘텐츠에 할당하는 인제스트 모듈, 특정한 사용자가 관련있다고 찾는 프로파일 토픽들, 뉴스 소스들 및 지리적 위치들을 결정하는 프로파일 엔진, 및 인제스트 모듈 및 프로파일 엔진의 동작에 기초하여 사용자를 위한 콘텐츠를 선택하는 뉴스 전달 모듈을 포함한다.The news delivery system includes an ingest module that assigns topics and locations to available content, a profile engine that determines news sources and geographic locations, a profile engine that determines which users are related, and an operation of the ingest module and profile engine And a news delivering module for selecting content for the user based on the received content.

한 실시예에서, 프로파일 엔진은 사용자의 프로파일로부터 오래된 토픽들 및 위치들을 제거하기 위해 감쇠 처리(decay processing)를 수행한다. 관련된 양태들에서, 프로파일 엔진은 사용자를 위한 다수의 프로파일들을 유지한다,In one embodiment, the profile engine performs decay processing to remove old topics and locations from the user's profile. In related aspects, the profile engine maintains multiple profiles for the user,

도 1은 한 실시예에 따른 사용자들에게 뉴스 콘텐츠를 제공하기 위한 시스템의 예시이다.
도 2는 사용자에게 토픽적으로 및 지리적으로 관련있는 뉴스 콘텐츠를 제공하기 위한 하이 레벨 단계들을 도시하는 플로우차트이다.
도 3은 한 실시예에 따른 사용자의 읽기 관심들(reading interests)을 결정하기 위한 방법을 도시한다.
도 4는 한 실시예에 따른 프로파일 엔진을 도시한다.
도 5는 한 실시예에 따른 사용자에게 지리적으로 및 토픽적으로 관련있는 뉴스 콘텐츠를 디스플레이하기 위한 방법을 도시하는 플로우차트이다.
도 6은 한 실시예에 따른 관심 있는 지리적 영역을 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 7은 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 8은 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 9는 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 10은 한 실시예에 따른 관심 있는 토픽 및 타임프레임을 특정하기 위한 사용자 인터페이스의 예를 도시한다.
도 11은 한 실시예에 따른 사용자에게 지리적으로, 시간적으로 및 토픽적으로 관련있는 뉴스 콘텐츠를 디스플레이하기 위한 방법을 도시하는 플로우차트이다.
도 12는 한 실시예에 따른 예시적인 컴퓨터 아키텍처를 도시한다.
도면들은 단지 예시의 목적으로만 실시예들을 도시한다. 본 기술분야의 통상의 기술자라면, 다음의 논의로부터, 본 명세서에 도시된 구조들 및 방법들의 대안적인 실시예들은 본 명세서에 설명된 원리들로부터 벗어나지 않고서 이용될 수 있다는 것을 손쉽게 인식할 것이다.
1 is an illustration of a system for providing news content to users according to one embodiment.
2 is a flow chart illustrating high level steps for providing news content that is topicually and geographically relevant to a user.
FIG. 3 illustrates a method for determining a user's reading interests according to one embodiment.
4 shows a profile engine according to one embodiment.
5 is a flow chart illustrating a method for displaying news content geographically and topic related to a user according to one embodiment.
Figure 6 illustrates a user interface for displaying a geographic area of interest according to one embodiment.
Figure 7 illustrates a user interface for displaying news content in association with a map according to one embodiment.
Figure 8 illustrates a user interface for displaying news content in association with a map according to one embodiment.
9 illustrates a user interface for displaying news content in association with a map according to one embodiment.
10 illustrates an example of a user interface for specifying a topic of interest and a time frame according to one embodiment.
11 is a flow chart illustrating a method for displaying news content geographically, temporally, and topic related to a user according to one embodiment.
12 illustrates an exemplary computer architecture in accordance with one embodiment.
The drawings illustrate embodiments for illustrative purposes only. It will be readily apparent to those of ordinary skill in the art, from the following discussion, that alternative embodiments of the structures and methods illustrated herein may be utilized without departing from the principles set forth herein.

시스템 개략System outline

도 1은 한 실시예에 따른 사용자에게 지리적으로 및 시간적으로 관련있는 뉴스를 제공하기 위한 시스템(100)을 도시한다. 시스템(100)은 인제스트 모듈(102), 프로파일 엔진(112) 및 뉴스 전달 모듈(114)을 포함한다. 인제스트 모듈(102)은 토픽 분석기(104), 지오로케이터(106), 인덱서(118) 및 기사 데이터베이스(108)를 더 포함한다. 프로파일 엔진(112)은 사용자 추천 발생기(116) 및 사용자 프로파일 데이터베이스(110)를 포함한다. 뉴스 전달 모듈(114)은 지도 엔진(122) 및 타임라인 엔진(124)을 포함한다. 복수의 뉴스 소스(120a, 120b, 120c)(일반적으로 120) 및 사용자 디바이스(130)가 또한 도 1에 도시되어 있다. 이들 각각은 아래에 더 상세히 설명된다. 도 1에 이들 요소들 각각의 몇 개 또는 하나의 예가 도시되지만, 구현될 때 시스템(100)은 본 명세서에 설명된 특징들을 수행하는 수개의 대응하는 논리적 또는 물리적 모듈들을 포함할 수 있다는 점에 유의한다. 그리고 단 하나의 사용자 디바이스(130) 및 3개의 뉴스 소스(120)가 예시의 용이성을 위해 도시되지만, 수백개, 수천개 또는 그보다 많은 그러한 디바이스들이 시스템(100)과 함께 이용될 수 있다.FIG. 1 illustrates a system 100 for providing geographically and temporally relevant news to a user according to one embodiment. The system 100 includes an ingest module 102, a profile engine 112, and a news delivery module 114. The ingest module 102 further includes a topic analyzer 104, a geococator 106, an indexer 118, and an article database 108. The profile engine 112 includes a user recommendation generator 116 and a user profile database 110. The news delivery module 114 includes a map engine 122 and a timeline engine 124. A plurality of news sources 120a, 120b, 120c (generally 120) and a user device 130 are also shown in FIG. Each of these is described in further detail below. It is noted that although some or each of each of these elements is shown in FIG. 1, it should be understood that when implemented, the system 100 may include several corresponding logical or physical modules that perform the features described herein do. Although only one user device 130 and three news sources 120 are shown for ease of illustration, hundreds, thousands or even such devices can be used with the system 100. [

시스템(100)은 네트워크(도시되지 않음)를 통해 뉴스 소스들(120) 및 사용자 디바이스(130)와 통신한다. 네트워크는 전형적으로 인터넷이지만, LAN, MAN, WAN, 모바일, 유선 또는 무선 네트워크, 사설 네트워크, 또는 가상 사설 네트워크의 임의의 조합을 포함하지만 이에 제한되지는 않는 임의의 네트워크일 수 있다. 시스템(100)은 네트워크 인터페이스를 통해 네트워크에 접속된다.The system 100 communicates with news sources 120 and user devices 130 via a network (not shown). The network is typically the Internet, but may be any network, including but not limited to any combination of LAN, MAN, WAN, mobile, wired or wireless networks, private networks, or virtual private networks. The system 100 is connected to the network via a network interface.

뉴스 소스(120)는 인터넷과 같은 네트워크를 통해 시스템(100)에 그리고 사용자 디바이스(130)에 직접적으로 또는 간접적으로 액세스가능한 텍스트, 오디오, 또는 비디오 콘텐츠, 또는 이들의 조합을 포함한다. 각각의 뉴스 소스(120)는 애드 혹으로 또는 주기적 방식으로 하나 이상의 뉴스 콘텐츠 항목을 제공한다. 예를 들어, 뉴스 소스는 잡지, 신문, 라디오 방송국 또는 텔레비전 방송국과 관련된 웹 사이트일 수 있다. 뉴스 소스(120)는 그것의 콘텐츠를 무료로 또는 소정의 비용으로 시스템(100) 및 사용자 디바이스(130)와 같은 뷰어들에게 이용가능하게 한다. 본 설명에서, 우리는 이러한 유형의 콘텐츠를 뉴스 콘텐츠, 뉴스 기사들 및 기사들이라고 교환가능하게 지칭한다. 그러나, 본 기술분야의 통상의 기술자라면, 본 개시내용으로부터, 설명된 실시예들은 그 자체로 뉴스 콘텐츠뿐만 아니라, 일반적으로 관련된 토픽들 및 위치들을 갖는 문서들의 임의의 코퍼스에 대한 애플리케이션을 갖는다는 것을 이해할 것이다.The news source 120 includes text, audio, or video content, or a combination thereof, that is accessible to the system 100 and directly or indirectly to the user device 130 over a network, such as the Internet. Each news source 120 provides one or more news content items in an ad hoc or periodic manner. For example, the news source may be a website related to a magazine, newspaper, radio station or television station. The news source 120 makes its content available to viewers, such as the system 100 and the user device 130, for free or at a cost. In this description, we refer to this type of content as interchangeably referred to as news content, news articles, and articles. However, one of ordinary skill in the art will appreciate from the present disclosure that the described embodiments, by themselves, have applications for any corpus of documents with topics and locations generally associated with news content as well I will understand.

인제스트 모듈(102)은 뉴스 소스들(120)에 의해 제공된 뉴스 콘텐츠를 발견, 분석 및 인덱싱한다. 인덱서(118)는 한 실시예에서 뉴스 소스들(120) 및 그들 소스를 통해 이용가능한 임의의 기사들을 크롤링하고 발견한다. 토픽 분석기(104) 및 지오로케이터(106)는 아래에 상세히 설명되는 바와 같이 가중된 토픽들 및 위치들을 인덱싱된 뉴스 콘텐츠로 하고, 기사 데이터베이스(108)에 콘텐츠 및 속성들의 표시를 저장한다.The ingest module 102 discovers, analyzes, and indexes the news content provided by the news sources 120. The indexer 118 crawls and discovers news articles 120 and any articles available through their sources in one embodiment. Topic analyzer 104 and geococator 106 make weighted topics and locations as indexed news content and store an indication of content and attributes in article database 108 as described in detail below.

프로파일 엔진(112)은 어떤 콘텐츠가 사용자에 적절할 수 있는지에 관련되는 사용자 특성들을 획득 및 저장하기 위해, 도 3과 관련하여 아래에 상세히 설명되는 바와 같이, 그 사용자에 특정한 정보를 처리한다. 추천 발생기(116)는, 아래에 상세히 설명되는 바와 같이, 뉴스 소스(120)에 의해 이용가능하게 된 어떤 자료가 사용자 디바이스(130)에 제시되는 것이 가장 적절한지를 결정하기 위한 처리를 제공한다. 사용자 추천 발생기(116)는, 인덱서(118)에 대한 질의들의 결과들 및 사용자에 대해 이용가능한 프로파일 정보에 기초하여, 사용자 디바이스(130)를 위한 특정한 콘텐츠를 발생시킨다.The profile engine 112 processes the user-specific information, as described in detail below with respect to FIG. 3, to obtain and store user characteristics related to which content may be appropriate for the user. Recommendation generator 116 provides a process for determining which data that is made available by news source 120 is most appropriate to be presented to user device 130, as described in detail below. The user recommendation generator 116 generates specific content for the user device 130 based on the results of queries to the indexer 118 and profile information available to the user.

뉴스 전달 모듈(114)은 토픽 또는 관련된 토픽들의 세트에 관한 뉴스 기사들의 큐레이팅된 리스트를 사용자 디바이스(130)에 제공한다. 한 실시예에서, 뉴스 전달 모듈(114)은 사용자 인터페이스, 예를 들어, 그들의 관련된 토픽들 또는 위치에 따라 분류될 수 있는 뉴스 콘텐츠 항목들의 리스트를 포함하는 웹 사이트 또는 모바일 애플리케이션을 제시한다. 사용자 디바이스(130)의 사용자는 관심 있는 항목들을 선택한 다음, 선택된 항목들에 지향될 수 있다. 예를 들어, 사용자는 기사의 섬네일 이미지 또는 스니펫을 선택하고, 콘텐츠를 호스팅하는 웹 사이트, 즉 뉴스 소스(120)에 지향될 수 있다. 다양한 실시예들에서, 뉴스 전달 모듈(114)은 아래에 설명되는 바와 같이 관심 있는 특정한 위치들, 관심 있는 토픽들, 관심 있는 타임프레임들, 또는 그것의 조합들과 관련된 콘텐츠 항목들을 추천한다.The news transfer module 114 provides the user device 130 with a curated list of news articles relating to the topic or set of related topics. In one embodiment, the news transfer module 114 presents a web site or mobile application that contains a list of news content items that can be classified according to a user interface, e.g., their related topics or location. The user of the user device 130 may select the items of interest and then be directed to the selected items. For example, a user may select a thumbnail image or snippet of an article and be directed to the website hosting the content, i.e., the news source 120. In various embodiments, the news transfer module 114 recommends content items related to specific locations of interest, topics of interest, time frames of interest, or combinations thereof, as described below.

사용자 디바이스(130)는 랩톱 또는 데스크톱 컴퓨터, 스마트폰, 태블릿, 또는 셀룰러 또는 광역 네트워크를 통해 시스템(100) 및 뉴스 소스(120)에 액세스할 수 있는 임의의 다른 디바이스일 수 있다. 사용자 디바이스(130)를 동작시키는 사용자는 개인, 개인들의 그룹, 법인체, 또는 자동화된 컴퓨터 시스템일 수 있다. 설명의 용이성을 위해, 우리는 일반적으로 "사용자"라고 지칭하고, 통상의 기술자라면, 이것이 컨텍스트에서 적절할 수 있는 바와 같이, 사용자 자신, 사용자의 디바이스, 또는 이 2개의 조합을 포함한다는 점을 인식할 것이다.User device 130 may be a laptop or desktop computer, a smartphone, a tablet, or any other device capable of accessing system 100 and news source 120 via a cellular or wide area network. The user operating the user device 130 may be an individual, a group of individuals, a corporation, or an automated computer system. For ease of description, we will generally refer to as "user ", and the ordinary skilled artisan will recognize that it includes the user himself, the user's device, or a combination of the two, as may be appropriate in the context will be.

프로세스 개략Process outline

도 2는 사용자에게 토픽적으로, 시간적으로 및 지리적으로 관련있는 뉴스 콘텐츠를 제공하기 위한 하이 레벨 단계들을 도시하는 플로우차트이다. 시스템(100)은 뉴스 소스들(120)로부터 뉴스 콘텐츠를 획득하고, 콘텐츠에 관련있는 토픽들 및 위치들에 따라 그것에 주석을 단다(202). 프로파일 엔진(112)은 사용자의 읽기 관심들의 부분인 토픽들 및 위치들을 결정하고(204), 사용자 프로파일에 그 정보를 유지한다. 추천 발생기(116)는 사용자의 관심에 매칭되는 원하는 타임프레임 내로부터 콘텐츠를 선택하고(206), 그 콘텐츠를 사용자에게 추천한다(208). 우리는 이들 단계들 각각을 보다 상세히 아래에 설명한다.2 is a flow chart illustrating high level steps for providing news content that is topicically, temporally, and geographically relevant to a user. System 100 obtains news content from news sources 120 and annotates 202 according to topics and locations related to the content. The profile engine 112 determines (204) the topics and locations that are part of the user's read interests and maintains the information in the user profile. The recommendation generator 116 selects (206) the content from within the desired time frame matching the user's interest and recommends the content to the user (208). We describe each of these steps in more detail below.

인덱싱 및 토픽/위치 속성Indexing and topic / location properties

인덱서(118)가 뉴스 콘텐츠 항목을 발견함에 따라, 토픽 분석기(104)는 콘텐츠 항목과 관련하게 될 하나 이상의 토픽을 식별한다. 한 실시예에서, 토픽들은 토픽들의 구글 지식 그래프(Google Knowledge Graph) 데이터베이스(도시되지 않음)를 이용하여 식별된다. 이 데이터베이스는 서로에 대한 그들의 관련성에 기초한 토픽들 간의 연결들뿐만 아니라, 알려진 토픽들의 매우 큰 집합을 포함한다. 다른 실시예들에서, 토픽들의 다른 집합들이 동작 환경을 위해 가장 적절한 것으로서 이용될 수 있다.As the indexer 118 discovers a news content item, the topic analyzer 104 identifies one or more topics to be associated with the content item. In one embodiment, the topics are identified using a Google Knowledge Graph database of topics (not shown). This database contains a very large collection of known topics, as well as connections between topics based on their relevance to each other. In other embodiments, different sets of topics may be used as appropriate for the operating environment.

한 실시예에서, 인제스트 모듈(102)은 뉴스 소스(120)에 의해 제공된 콘텐츠의 임의의 새로운 항목(예를 들어, 뉴스 기사)을 받고, 토픽들로 그 항목에 주석을 달도록 구성된다. 예를 들어, 단어 "United"가 새로운 항목에서 비행기 여행에 관한 용어들과 관련하여 다수회 나타나면, "United Airlines" 또는 "UAL"의 토픽이 그 항목에 주석으로 달린다. 대신에 단어 "United"가 수송 또는 이사짐 운송 회사들과 관련한 용어들과 관련하여 다수회 나타나면, "United Van Lines"의 토픽이 그 항목에 주석으로 달린다. 일부 실시예들에서, 가중이 각각의 그러한 주석과 관련된다. 예를 들어, 한 항목에 대해 United Airlines이 United Van Lines보다 의도된 것이 매우 분명할 수 있지만, 다른 예들에서 항목에 대응하는 회사 토픽이 어떤 것인지 다소 불분명할 수 있다. 일부 실시예들에서, 인제스트 모듈(102)은 매일 수백만 개의 새로운 항목을 처리하고, 또한 위에 언급된 구글 지식 그래프 기능의 부분들을 이용하여 구현된다.In one embodiment, the ingest module 102 is configured to receive any new item of content (e.g., a news article) provided by the news source 120 and annotate the item with topics. For example, if the word "United" appears multiple times in relation to terms on air travel in a new entry, the topic "United Airlines" or "UAL" will be commented on that entry. Instead, if the word "United" appears multiple times in connection with terms associated with transport or moving companies, the topic of "United Van Lines" will be annotated on that item. In some embodiments, a weight is associated with each such annotation. For example, it may be very clear that United Airlines is intended more than United Van Lines for an item, but in others it may be somewhat unclear which company topic corresponds to the item. In some embodiments, the ingest module 102 processes millions of new items each day and is implemented using portions of the Google Knowledge Graph functionality mentioned above.

이러한 실시예들에서, 토픽 분석기(104)는 2개의 단계를 이용하여 항목에 대해 가장 관련있는 토픽들을 찾는다. 제1 단계는 항목에서 실제로 언급된 모든 토픽들을 찾는 것을 포함한다. 예를 들어, 단어 "United"는 위의 논의에 기초하여 적어도 2개의 알려진 토픽과 정확히 동일하여, 그들 토픽은 후보들로서 고려되고, 항목 내의 다른 용어들(예를 들어, "passengers" 및 O'Hare)에 기초하여 지식 그래프 기능은 하나를 선택하고, 예를 들어 그 토픽이 항목에서 얼마나 자주 나타나는지에 기초하여 그것에 가중을 준다. 제2 단계는 항목에서 분명히 언급되지 않은 관련된 토픽들을 찾고 또한 다른 토픽들과의 관계에 기초하여 토픽들을 리스코어링한다. 예를 들어, 뉴스 기사가 주 에어라인들에 직면하는 문제들을 논의하지만 그들 에어라인들 중 하나를 언급하지 못한다면, 그 누락된 에어라인에 대응하는 토픽은 그럼에도 불구하고 부가될 수 있다. 유사한 처리가 리스코어링을 위해 이용될 수 있는데 - 뉴스 기사에 관련하여 식별된 토픽들 만이 매우 밀접하게 관련된 토픽들이라면, 그들 토픽의 각각의 가중은 증가될 수 있다. 다른 실시예들에서, 상이한 가중 방식들이 특정한 응용을 위해 적절한 것으로서 이용된다.In these embodiments, the topic analyzer 104 uses the two steps to find the most relevant topics for the item. The first step involves looking for all the topics actually mentioned in the entry. For example, the word "United" is exactly the same as at least two known topics based on the discussion above, so that they are considered candidates, and other terms in the entry (e.g., "passengers" and O'Hare ), The knowledge graph function selects one and weights it based on, for example, how often the topic appears in the item. The second step finds related topics that are not explicitly mentioned in the item and also recovers the topics based on their relationship to other topics. For example, if a news article discusses problems facing major airlines, but does not mention one of those airlines, the topic corresponding to that missing airline may nevertheless be added. Similar processing can be used for rescaling - if only the topics identified in relation to the news article are very closely related topics, then the weight of each of these topics can be increased. In other embodiments, different weighting schemes are used as appropriate for a particular application.

토픽 분석기(104)는 다음에 가중된 토픽들로 뉴스 항목들에 주석을 달고, 뉴스 콘텐츠의 표시, 그것의 게재 또는 배포 날짜, 및 그것의 관련된 가중된 토픽들이 기사 데이터(108) 내에 저장된다.The topic analyzer 104 annotates the news items with the next weighted topics, and stores an indication of the news content, its serving or distribution date, and its associated weighted topics in the article data 108.

지오로케이터(106)는 또한 콘텐츠 항목 자체 내에, 또는 임의의 관련된 메타데이터 내에 포함된 임의의 지리적 참조들을 식별하기 위해 뉴스 항목을 처리한다. 예를 들어, 콘텐츠 항목은 상기 예로부터, United Airlines와 같은 뉴스 기사일 수 있고, 기사는 Chicago 내의 United의 큰 존재를 논의할 수 있다. 또는 기사는 Boston, Massachusetts의 최근의 날씨 사건을 설명할 수 있거나; 미국 내에 살기 위해 이름; 또는 뉴스 스토리가 어디에 제출된 것인지를 식별하는 날짜 기입선을 포함하는 항목에 의해 수회 언급하는 최상의 도시들에 관한 뉴스 특징들일 수 있다. 지오로케이터(106)는 토픽 분석기(104)가 뉴스 콘텐츠 항목들과 관련된 토픽들을 발견하는 방식과 유사한 방식으로 위에 설명된 것들과 같이 지리적 위치들을 식별한다. 지오로케이터(106)는 지리적 위치로 콘텐츠 항목에 주석을 달고, 기사 데이터(108) 내에 콘텐츠 및 토픽 표시와 함께 지오태깅(geotagging) 정보를 저장한다. 주석이 달린 콘텐츠에 기초하여, 인덱서(118)는 그러므로 특정한 뉴스 콘텐츠 항목과 관련된 토픽들; 특정한 뉴스 콘텐츠 항목과 관련된 지리적 지점들; 특정한 토픽들과 관련된 뉴스 기사들; 및 특정한 지리적 위치들과 관련된 뉴스 기사들을 리턴할 수 있다. 또한, 각각의 콘텐츠 항목은 관련된 게재 또는 배포 날짜를 갖기 때문에, 인덱서(118)는 각각이 요청에서 특정된 타임프레임 내에(또는 타임프레임이 요청에서 달리 특정되지 않는다면, 디폴트 타임프레임 내에, 예를 들어, 과거의 날, 주, 달, 연도 등 내에) 들도록 리턴된 항목들을 제한 또는 확장할 수 있다.The geococator 106 also processes news items to identify any geographic references contained within the content item itself, or any associated metadata. For example, the content item could be a news article such as United Airlines from the above example, and the article could discuss the big presence of United in Chicago. Or articles can explain recent weather events in Boston, Massachusetts; Name to live in the United States; Or news features relating to the best cities mentioned several times by an item including a date line that identifies where the news story was submitted. The geococator 106 identifies geographic locations such as those described above in a manner similar to how the topic analyzer 104 discovers topics related to news content items. The geococator 106 annotates the content item to a geographic location and stores geotagging information along with the content and topic display in the article data 108. Based on the annotated content, the indexer 118 therefore includes topics related to the particular news content item; Geographical points associated with a particular news content item; News articles related to specific topics; And news articles related to specific geographic locations. Also, since each content item has an associated serving or distribution date, the indexer 118 may determine that the content item is within the time frame specified in the request (or within the default time frame, if the time frame is not otherwise specified in the request, , Past day, week, month, year, etc.).

사용자들의 읽기 관심들의 결정Determining users' read interests

이제 도 3을 참조하면, 특정한 사용자의 뉴스 콘텐츠 관심들을 결정하는 방법(300)의 한 실시예가 도시된다. 유사한 기술들이 사용자들의 소정의 그룹들의 뉴스 콘텐츠 관심들을 결정하기 위해 적용될 수 있고 역시, 다음에 그 그룹 내의 개인들에 및 그 그룹 내의 것들과 유사한 특성들을 갖는 개인들에 적용될 수 있다는 점에 유의해야 한다. 도 3에 도시된 예에서, 처리는 사용자 프로파일 데이터베이스(110)로부터 사용자에 대응하는 프로파일을 획득함으로써 단계(310)에서 시작된다. 이 프로파일은 자체-식별된 관심들, 및 사용자가 그런 권한이 있다면, 사용자가 읽은 기사들에 관한 이력적 정보, 사용자에 의해 선호된 뉴스 소스들, 및 사용자가 관심 있는 지리적 영역들과 같은, 사용자의 관심들에 관련한 자동적으로 저장된 정보와 같은, 사용자에 관한 정보를 포함한다. 한 실시예에서, 사용자가 모바일 애플리케이션 또는 웹 서비스(Google Play Newsstand 등)을 열 때, 방법(300)은 관련있는 프로파일 정보(예를 들어, 사용자 ID, 열려진 기사의 ID, 및 초기 처리를 위한 현재 시간 및 후속 처리를 위한 사용자 관심들의 스코어링된 리스트)를 획득한다(310). 오프라인 액세스를 위해, 어떤 기사가 열려졌는지와 액세스의 시간에 관한 정보가 저장되고 사용자가 온라인으로 들어오는 다음 시간에 사용자 프로파일 엔진(112)에 보내진다.Referring now to FIG. 3, an embodiment of a method 300 for determining news content interests of a particular user is illustrated. It should be noted that similar techniques may be applied to determine news content interests of certain groups of users and may also be applied to individuals in the group and then to individuals having similar characteristics to those in the group . In the example shown in FIG. 3, the process begins at step 310 by obtaining a profile corresponding to the user from the user profile database 110. The profile may include user-identified interests, and, if the user has such rights, historical information about articles read by the user, news sources preferred by the user, and geographic areas of interest to the user. Such as automatically stored information related to the interests of the user. In one embodiment, when the user opens a mobile application or a web service (such as Google Play Newsstand), the method 300 includes retrieving related profile information (e.g., a user ID, an ID of an open article, Time and a scored list of user interests for subsequent processing). For offline access, information about which articles have been opened and the time of access is stored and sent to the user profile engine 112 at the next time the user comes online.

단계(320)에서, 사용자 프로파일 엔진(112)은 위에 상세히 설명된 바와 같이 기사 데이터베이스(108)로부터 기사 정보를 페치하고 그 기사를 위해 발생된 스코어링된 토픽들 및 위치들을 획득한다. 다음에, 단계(330)에서, 사용자의 관심 정보가 페치된다. 이것은 단계(310)에서 이전에 획득된 프로파일 정보로부터 이루어질 수 있거나, 프로파일 정보의 단지 이 양태에 대한 새로운 요청이 이용 환경 및 어떤 기술이 가장 효과적인지에 따라 이루어질 수 있다. 프로파일로부터의 관심 정보는 (예를 들어, 새로운 사용자를 위해) 공백으로 될 수 있거나 사용자 통계들(최종 업데이트 시간/카운터 정보)과 스코어링된 토픽들 및 위치들의 집합 둘 다를 포함할 수 있다. 각각의 스코어링된 토픽은 토픽 ID, 이 특정한 사용자에 대한 토픽에 대한 스코어, 및 이 사용자에 대한 이 토픽에 대한 시간/카운터 정보를 포함한다. 유사하게, 각각의 스코어링된 위치는 다양한 실시예들에서 위치 표시, 이 사용자에 대한 특정한 위치에 대한 스코어, 및 이 사용자에 대한 이 위치에 대한 시간/카운터 정보를 포함한다.At step 320, the user profile engine 112 fetches the article information from the article database 108 as described in detail above and obtains the scored topics and locations generated for that article. Next, in step 330, the user's interest information is fetched. This can be done from the profile information previously obtained in step 310, or just a new request for this aspect of the profile information can be made according to the usage environment and which technique is most effective. The interest information from the profile may be blank (e.g., for a new user) or may include both user statistics (last update time / counter information) and a set of scored topics and locations. Each scored topic includes a topic ID, a score for the topic for this particular user, and time / counter information for this topic for this user. Similarly, each scored location includes a location indication, a score for a particular location for this user, and time / counter information for this location for this user in various embodiments.

다음에, 기사로부터의 토픽들 및 위치들이 다음과 같이 단계(340)에서 (각각의 토픽 및 각각의 위치에 대한 스코어로) 사용자의 프로파일에 부가된다. 사용자의 프로파일이 이미 토픽을 포함하고 있으면, 그 토픽에 대한 스코어는 미리 정의된 수학적 함수를 이용하여 증가된다. 한 실시예에서, 특정한 토픽에 대한 사용자의 스코어는 사용자가 토픽에 대응하는 기사를 읽을 때마다 적절한 양만큼 증가된다. 사용자의 프로파일 내의 위치에 대한 스코어가 유사하게 증가된다. 앞서 언급된 O'Hare의 예를 계속하면, 사용자의 O'Hare 스코어는 현재 10일 수 있고 Chicago 스코어는 3일 수 있고; 사용자가 0.5의 O'Hare 토픽 스코어 및 1의 Chicago 위치 스코어를 갖는 기사를 읽으면, O'Hare에 대한 사용자의 새로운 스코어는 10.5로 증가되고, Chicago에 대한 사용자의 새로운 스코어는 4로 증가된다. 프로파일이 토픽 또는 위치를 이미 포함하고 있지 않으면, 새로운 스코어링된 토픽 또는 스코어링된 위치가 유사한 방식으로 프로파일에 부가된다. 이 단계에서, 각각의 토픽 및 위치에 대한 최종 업데이트 시간은 현재 시간으로 설정되고, 토픽 및 위치에 대한 카운터들은 증가되고; 프로파일에 대한 최종 업데이트 시간이 또한 업데이트되고, 프로파일에 대한 카운터가 또한 증가된다. 일부 실시예들에서, 최종 업데이트가 가장 최근이었다면 카운터들 중 하나 이상이 증가되지 않아서, 소정의 시간 기간(예를 들어, 일) 내에서 일어나는 모든 업데이트들은 하나로서 다루어진다.The topics and locations from the article are then added to the profile of the user (at step 340) (as a score for each topic and each location) as follows. If the user's profile already contains a topic, the score for that topic is increased using a predefined mathematical function. In one embodiment, the user's score for a particular topic is incremented by an appropriate amount each time the user reads the article corresponding to the topic. The score for the location in the user's profile is similarly increased. Continuing the example of O'Hare mentioned above, the user's O'Hare score can now be 10 and the Chicago score can be 3; When a user reads an article with an O'Hare topic score of 0.5 and a Chicago location score of 1, the user's new score for O'Hare is increased to 10.5, and the user's new score for Chicago is increased to 4. If the profile does not already contain a topic or location, a new scored topic or scored location is added to the profile in a similar manner. In this step, the last update time for each topic and location is set to the current time, the counters for the topic and location are incremented; The last update time for the profile is also updated, and the counter for the profile is also incremented. In some embodiments, if the last update was the most recent one or more of the counters were not incremented, so that all updates occurring within a predetermined time period (e.g., days) are treated as one.

주기적으로, 프로파일 내의 토픽들 및 위치들의 스코어들은 미리 정의된 감쇠 함수를 이용하여 감쇠되고(350); 한 실시예에서 기하급수적 감쇠가 적절히 사용자의 예전의 관심들을 단계적으로 중단하고 더 새로운 관심들을 보다 높은 것으로 랭크되게 하는 데 이용된다. 토픽 또는 위치의 최종 업데이트 카운터를 프로파일의 최종 업데이트 카운터와 비교함으로써, 사용자가 현재의 토픽 또는 위치와 관련되지 않은 콘텐츠를 얼마나 많은 횟수 읽은지가 알려진다. 그러므로, "오래된" 토픽들 및 위치들은 시간에 따라 강등된다. 단계(350)가 프로파일 업데이트와 관련하여 수행되는 것으로 이 실시예에서 도시되지만, 다른 실시예들에서 감쇠 처리는 예를 들어, 처리 리소스들이 보다 이용가능하게 될 때(예를 들어, 낮은 처리 사용량으로 하루의 시간 동안 주기적으로) 한 번에 임의의 특정한 업데이트와 독립하여 수행된다. 단계(360)에서, 낮은 스코어링 토픽들 및 위치들은 사용자의 프로파일로부터 절단, 즉 제거된다. 이것은 처리 오버헤드를 줄이는 데 도움이 된다. 그러나 토픽에 대한 감쇠 레이트 및 위치에 대한 감쇠 레이트는 토픽들 또는 위치들이 보다 중요한 것으로 고려되는 구현들을 반영하기 위해, 또는 구현 중에 생기는 사용자 거동에 관한 관찰들을 반영하기 위해 상당히 상이할 수 있다는 점에 유의한다. 일부 실시예들에서, 감쇠 처리는 수행되지 않는다. 다음에 이 방법을 위한 처리가 완료된다(370).Periodically, the scores of the topics and positions in the profile are attenuated (350) using a predefined damping function; In one embodiment, the exponential decay is used to appropriately abort the user's previous interests step by step and rank the newer interests higher. By comparing the last update counter of the topic or location with the last update counter of the profile, it is known how many times the user has read content that is not related to the current topic or location. Therefore, "old" topics and locations are demoted over time. Although step 350 is illustrated in this embodiment as being performed in conjunction with profile updating, in other embodiments, attenuation processing may be performed, for example, when processing resources become more available (e.g., Lt; RTI ID = 0.0 > periodically < / RTI > during a day's time) independent of any particular update at a time. At step 360, the low scoring topics and locations are truncated, i.e. removed, from the user's profile. This helps to reduce processing overhead. However, it should be noted that the attenuation rate for the topic and the attenuation rate for the position may be significantly different to reflect the topics or locations that are considered to be more important, or to reflect observations about user behavior that occur during implementation do. In some embodiments, damping processing is not performed. Processing for this method is then completed (370).

일부 실시예들에서, 다수의 프로파일들이 시스템(100)의 성능을 개선시키기 위해 사용자를 위해 발생된다. 예를 들어, 월별 프로파일들이 연도의 특정한 시간에서 사용자가 가장 관심 있는 토픽들 및 위치들의 뷰를 제공하기 위해 한 실시예에서 생성된다. 수상 스키와 좀 더 추운 도착지들이 가을에 사용자의 프로파일에서 떨어질 수 있지만, 그들은 다음 5월에는 다시 중요하게 될 수 있고, 특정한 사용자에 대한 이러한 다수의 프로파일들을 이용하면 순환하는 관심들이 캡처될 수 있다. 마찬가지로, 다양한 카테고리들에 대한 별개의 프로파일들은 사용자의 관심 대상인 토픽들을 보다 잘 파악하기 위해, 각각의 사용자를 위해 유지될 수 있다. 예를 들어, 그렇지 않으면 감쇠 처리(350)가 될 대통령 선거들에 관한 사용자에 대한 별개의 프로파일이 수 년 기간에 걸쳐 유지될 것이다. 각각의 프로파일에 대해 이렇게 발생된 스코어링된 토픽들은 다음에 본 명세서의 어딘가에 설명된 것과 같이 추천들을 발생시키고 검색 결과들을 스코어링하는 데 이용된다.In some embodiments, multiple profiles are generated for the user to improve the performance of system 100. For example, monthly profiles are created in one embodiment to provide a view of the topics and locations that the user is most interested in at a particular time of the year. Although water skiing and colder destinations may fall off the user's profile in the fall, they can become important again next month, and using these multiple profiles for a particular user, cycling interests can be captured. Likewise, separate profiles for the various categories can be maintained for each user to better understand the topics of interest to the user. For example, a separate profile for the user regarding presidential elections that would otherwise be damping processing 350 would be maintained over a period of years. The scored topics thus generated for each profile are then used to generate recommendations and score the search results, as described elsewhere herein.

사용자 프로파일 데이터 스토리지(110)는 시스템(100)의 동작을 용이하게 하기 위해 개개의 사용자에 관한 정보를 포함한다. 스코어링된 정보는 사용자에 관한 식별 정보를 포함한다. 일부 실시예들에서 이것은 사용자에 의해 수동으로 제공된 정보이지만, 다른 실시예들에서 사용자는 이러한 정보가 예를 들어, 사용자가 가입한 다른 기관들 또는 사용자가 갖는 다른 가입들로부터 자동으로 획득되는 것을 요청할 수 있다. 프로파일 데이터(110)는 아래에 상세히 설명되는 바와 같이 발생된, 사용자가 가장 관심 있는 토픽들의 스코어링된 또는 가중된 리스트들 유지한다.The user profile data storage 110 includes information about individual users to facilitate operation of the system 100. The scored information includes identification information about the user. In some embodiments this is information manually provided by the user, but in other embodiments the user may request that this information be obtained automatically, for example, from other entities that the user has subscribed to or other subscriptions the user has . The profile data 110 maintains scored or weighted lists of topics that the user is most interested in, such as those detailed below.

관심 및 위치에 기초한 사용자들에 대한 콘텐츠의 추천Recommendation of content for users based on their interests and location

도 4는 프로파일 엔진(112)의 부분으로서 이용된 추천 발생기(118)의 기능적 뷰를 도시한다. 추천 발생기(118)는 특정한 사용자에 관한 정보를 취하고, 그 정보로부터 뉴스 전달 모듈(114)을 통해 사용자에게 어떤 콘텐츠를 제시할지를 결정하기 위해 프로파일 엔진(112)에 의해 이용된다.4 shows a functional view of the recommendation generator 118 used as part of the profile engine 112. As shown in FIG. The recommendation generator 118 is used by the profile engine 112 to take information about a particular user and to determine from that information which content to present to the user via the news delivering module 114.

추천 발생기(118)는 그것의 동작을 용이하게 하기 위해 다양한 서브시스템들을 포함한다. 도 4에 도시된 실시예에서, 추천 발생기(118)는 프로파일 페처(402), 선택기 모듈(404), 믹서(406), 및 디듀플리케이터(de-duplicator)(408)를 포함한다. 이들 서브시스템 중 많은 것은 아래에 설명되는 바와 같이, 서로 상호작용한다.Recommendation generator 118 includes various subsystems to facilitate its operation. 4, Recommendation generator 118 includes a profile filter 402, a selector module 404, a mixer 406, and a de-duplicator 408. Many of these subsystems interact with each other, as described below.

프로파일 페처(402)는 개개의 사용자가 관심 있는 것으로 나타나는 토픽들, 위치들, 및 뉴스 소스들을 식별하는 메커니즘을 제공한다. 한 실시예에서, 이들 토픽들 및 위치들은 사용자 프로파일 데이터베이스(110) 내에 저장되어 있다. 일부 예들에서, 이러한 토픽들은 사용자에 의해 수동으로 식별될 수 있지만 다른 예들에서 그들은 사용자 거동의 관찰에 기초하여 자동으로 발생된다. 일부 실시예들에서, 사용자의 현재의 위치는 추천 발생기(118)에 대한 입력으로서 이용된다. 사용자의 위치는 사용자 또는 사용자의 디바이스에 의해 명시적으로 보고될 수 있거나, 사용자의 IP 어드레스 또는 본 기술분야에 공지된 다른 지오로케이팅 방법들로부터 유도될 수 있다. 프로파일 페처(402)의 동작은 사용자가 가장 관심 있는 것들을 나타내는 스코어들을 갖는 토픽들 및 위치들의 리스트의 제공을 가져다 준다.The profile fetcher 402 provides a mechanism for identifying topics, locations, and news sources for which an individual user appears to be interested. In one embodiment, these topics and locations are stored in the user profile database 110. In some instances, such topics may be manually identified by the user, but in other instances they are automatically generated based on observation of user behavior. In some embodiments, the user ' s current position is used as an input to the recommendation generator 118. [ The location of the user may be explicitly reported by the user or the user's device, or may be derived from the user's IP address or other geocaching methods known in the art. The operation of the profile fetcher 402 provides the provision of a list of topics and locations with scores that represent the things that the user is most interested in.

토픽들 및 위치들이 획득되었을 때, 추천 발생기(118)는 기사 데이터베이스(108) 내에 저장된 대응하는 콘텐츠(예를 들어, 기사들 또는 다른 항목들의 표시)를 획득한다. 한 실시예에서, 예를 들어, 이것은 인제스트 모듈(102)의 인덱서(118)로의 요청을 통해 달성된다. 다양한 실시예들에서, 사용자의 관심 대상이 아닌 리턴된 기사들의 수를 줄이기 위해서, 인제스트 모듈(102)은 요청에서 특정된 임의의 위치의 최대 거리 내에 위치한 것과 같이 지오로케이터(106)에 의해 인덱싱된 그 콘텐츠만을 리턴한다. 예를 들어, 인덱서(118)로의 요청은 토픽들로서 "travel", "airlines", 및 "United Airlines"를, 그리고 위치들로서 "Boston", "San Francisco", 및 "Auckland"를 포함할 수 있다. 인덱서(118)는 다음에 그들 토픽에 매칭되고 리스팅된 위치들 중 임의의 위치의 최대 거리 내에 위치한 콘텐츠 항목들을 리턴할 것이다. 다양한 실시예들에서, 최대 거리는 요청에서 특정될 수 있거나 사용자 또는 시행자에 의해 구성될 수 있다.Recommendations generator 118 obtains corresponding content (e.g., an indication of articles or other items) stored in article database 108 when topics and locations are acquired. In one embodiment, for example, this is accomplished through a request to the indexer 118 of the ingest module 102. In various embodiments, in order to reduce the number of returned articles that are not of interest to the user, the ingest module 102 is indexed by the geo-locator 106 as located within the maximum distance of any location specified in the request It returns only that content. For example, a request to indexer 118 may include "travel", "airlines", and "United Airlines" as topics and "Boston", "San Francisco", and "Auckland" as locations. The indexer 118 will then return the content items matched to those topics and located within the maximum distance of any of the listed locations. In various embodiments, the maximum distance may be specified in the request, or it may be configured by the user or the enforcer.

특정된 토픽들 및 위치들에 따라, 인덱서(118)로부터 획득된 콘텐츠의 바디는 사용자에게 제시하는 것이 바람직한 것보다 상당히 더 방대할 수 있다. 다양한 실시예들에서, 선택기 모듈(404)은 이용의 속성에 적절한 함수에 따라 콘텐츠를 스코어링한다. 한 실시예에서, 위치, 토픽 관련성, 콘텐츠 품질, 에디션 품질, 인기도, 및 최신성과 같은 팩터들을 포함하는 미리 정의된 스코어링 함수가 이용된다. 위치에 대해, (위에 언급된 바와 같이 IP 어드레스 또는 시스템(100)에 의한 다른 지오로케이팅 기술에 기초하여 결정된, 디바이스(130)에 의해 시스템(100)에 자동으로 제공될 수 있거나, 사용자에 의해 명시적으로 제공될 수 있는) 사용자 디바이스(130)의 위치에 지리적으로 더 가까운 위치들로 지오로케이터(106)에 의해 지리적으로 태깅된 항목들이 보다 높은 스코어를 받는다. 관련성에 대해, 사용자의 프로파일과 겹치는 보다 많은 토픽들을 갖는 항목들은 보다 높은 스코어를 받는다. 콘텐츠 품질에 대해, 보다 높은 해상도들(또는 사용자의 대역폭에 보다 적절한 해상도들)을 갖는 이미지들은 보다 높게 스코어링되고; 사용자에 보다 적절한 특성들을 갖는 오디오(예를 들어, 한 사용자에 대해서는 보다 높은 샘플링 레이트, 다른 사용자에 대해서는 보다 낮은 파일 크기)는 보다 높게 스코어링되고; (예를 들어, 자체-식별되거나 자동으로 결정된 이력적 선호들에 기초하여) 독자에 가장 적절한 워드 카운트들 및 읽기 레벨들을 갖는 텍스트가 보다 높게 스코어링된다. 에디션 품질에 대해, "양호한" 것으로 이전에 결정된 에디션들로부터의 콘텐츠는 다른 것들보다 위로 스코어링된다. 인기도에 대해, 보다 많은 사용자들(일부 실시예들에서, 특별히 현재의 사용자의 것들과 유사한 특성들을 갖는 보다 많은 사용자들)에 의해 읽혀지는 콘텐츠는 다른 콘텐츠보다 높게 스코어링된다. 최신성에 대해, 보다 최근에 게재된 콘텐츠가 보다 높은 스코어를 받는다. 항목들의 모두가 스코어링될 때, 그들은 그들의 스코어에 따라 분류된다.Depending on the specified topics and locations, the body of content obtained from the indexer 118 may be considerably larger than desirable to present to the user. In various embodiments, the selector module 404 scales the content according to a function appropriate to the attribute of use. In one embodiment, a predefined scoring function is used that includes such factors as location, topic relevance, content quality, edition quality, popularity, and freshness. Location may be automatically provided to the system 100 by the device 130 (determined based on the IP address or other geo-casting technique by the system 100 as described above) Items geographically tagged by the geo-locator 106 to locations that are geographically closer to the location of the user device 130 (which may be explicitly provided by the geo-locator 106) receive a higher score. For relevance, items with more topics overlapping the user's profile receive a higher score. For content quality, images with higher resolutions (or resolutions that are more appropriate for the user's bandwidth) are scored higher; Audio with more appropriate characteristics for the user (e.g., a higher sampling rate for one user and a lower file size for another user) is scored higher; The text having the most appropriate word counts and read levels for the reader is scored higher (e.g., based on self-identified or automatically determined historical preferences). For the edition quality, the content from the editions previously determined to be "good" is scored up above others. For popularity, the content read by more users (in some embodiments, more users with characteristics similar to those of the current user, in particular) is scored higher than other content. For freshness, more recently posted content gets a higher score. When all of the items are scored, they are sorted according to their score.

일부 실시예들에서, 다른 알고리즘들이 또한 콘텐츠를 다른 소스들로부터 안에 끌어 넣는 데 이용된다. 예를 들어, 별개의 알고리즘이 사용자가 자주 읽고/보고/듣는 소스들로부터 추가의 항목들을 얻거나, 사용자가 가장 최근에 관심 있는 것으로 나타난 토픽들 또는 위치들에 관한 기사를 얻기 위해 일부 실시예들에서 이용된다. 본 기술분야의 통상의 기술자는 많은 양의 콘텐츠에 대해, 서버 클래스 컴퓨터들이 콘텐츠에 대한 다수의 요청들을 동시에 하는 데 이용되고, 다른 공지된 기술들이 본 명세서에 설명된 처리가 빠르고 효율적으로 완료되도록 이용된다는 것을 인식할 것이다.In some embodiments, other algorithms are also used to pull content in from other sources. For example, a separate algorithm may be employed to obtain additional items from sources that the user frequently reads / views / listens to, or to obtain articles on topics or locations where the user has most recently shown interest Lt; / RTI > One of ordinary skill in the art will appreciate that for large amounts of content, server class computers may be used to simultaneously make multiple requests for content, and other known techniques may be used to ensure that the processing described herein is completed quickly and efficiently Lt; / RTI >

믹서(406)는 다음에 뉴스 전달 모듈(114)을 통해 사용자에게 제시될 다양한 항목들의 개인화된 에디션을 생성하기 위해 선택기 모듈(404)의 동작으로부터의 결과들을 조합한다. 한 실시예에서, 믹서(406)는 그 각각이 선택기 모듈(404)에 의해 획득된 항목들로부터 끌어내진 항목들의 고정된 수의 세트들을 포함하도록 명확히 한정된다. 예를 들어, 하나의 개인화된 에디션이 사용자의 위치로부터 2개의 기사, 사용자가 자주 읽는 소스들로부터 2개의 기사, 및 사용자가 가장 자주 읽는 토픽들로부터 2개의 기사를 포함하도록 구성될 수 있다. 다른 실시예들에서, 관심 있는 사용자 위치(들) 내의 믹서(406) 기사들만이 포함된다.The mixer 406 then combines the results from the operation of the selector module 404 to produce a personalized edition of various items to be presented to the user via the news delivery module 114. In one embodiment, the mixer 406 is explicitly limited to include a fixed number of sets of items, each of which is derived from the items obtained by the selector module 404. For example, one personalized edition may be configured to include two articles from the user's location, two articles from sources that the user frequently reads, and two articles from topics that the user most often reads. In other embodiments, only the mixer 406 articles in the user location (s) of interest are included.

일부 예들에서, 위에 설명된 것과 같은 믹서의 동작은 다른 세트의 기사들과 상당히 유사한 하나의 세트에 대해 기사들을 발생시킬 수 있다. 그러므로, 디듀플리케이터 모듈(408)은 그들이 상당히 유사한지를 결정하기 위해 선택된 항목들을 분석한다. 한 실시예에서, 디듀플리케이터 모듈(408)은 세트에 대한 후보로서 식별된 각각의 기사 내의 토픽들을 유사도 스코어를 발생시킴으로써 이미 선택된 모든 다른 기사들과 비교한다. 본 기술분야의 통상의 기술자는 코사인 유사도와 같은 머신 학습 알고리즘들이 이러한 유사도 스코어를 발생시키기 위해 손쉽게 적용될 수 있다는 것을 인식할 것이다. 원하는 정보의 다양성에 따라, 유사도 스코어의 임계치가 이러한 유사도에 기초하여 제안된 새로운 기사를 거절하기 위해 적용된다.In some instances, the operation of the mixer as described above may generate articles for one set that is substantially similar to the other set of articles. Therefore, the dispatcher module 408 analyzes the selected items to determine if they are quite similar. In one embodiment, the deduplicator module 408 compares the topics in each article identified as candidates for the set with all other articles already selected by generating a similarity score. One of ordinary skill in the art will recognize that machine learning algorithms such as cosine similarity may be readily applied to generate such similarity scores. Depending on the variety of information desired, a threshold of similarity score is applied to reject a proposed new article based on this similarity.

다른 실시예에서, 디듀플리케이터 모듈(408)은 모든 세트들이 팝퓰레이트될 때까지 적용되지 않는다. 이 예에서, 오버-임계치 유사도 스코어에 기여하는 항목들 중 하나가 거절되는 것보다, 너무 많은 유사도가 검출되면, 믹서(406)는 대체 항목을 선택하고, 디듀플리케이터 모듈(408)은 유사도 임계치가 초과되지 않는 그러한 시간까지 반복적으로 동작된다.In another embodiment, the despatcher module 408 is not applied until all the sets are populated. In this example, if too much similarity is detected than one of the items contributing to the over-threshold similarity score is rejected, the mixer 406 selects a replacement item, and the duplicator module 408 selects It is repeatedly operated until such time that the threshold value is not exceeded.

언급된 바와 같이, 일부 환경들은 콘텐츠의 수백만개의 항목을 포함할 것이고, 시스템(100)은 수백만의 사용자들을 위해 동작될 것이므로, 처리의 스케일가능성은 이러한 환경들에서 중요하게 될 수 있다. 이것이 문제인 경우에, 사전 계산 및 결과들의 저장과 같은 공지된 스케일링 기술들이 처리를 빠르게 하고 프로세서 및 메모리 요건들을 최소화하기 위해 적용된다.As noted, some environments may contain millions of items of content, and system 100 may be operated for millions of users, so the scalability of the process may be significant in these circumstances. If this is a problem, well known scaling techniques such as pre-computation and storage of results are applied to speed up processing and minimize processor and memory requirements.

토픽들 및 타임프레임에 기초한 사용자들에 대한 콘텐츠의 추천Recommendation of content for users based on topics and time frame

일부 실시예들에서, 예를 들어 사용자가 시간의 범위(즉, 타임프레임)에 걸쳐 특정한 토픽 또는 관련된 토픽들의 세트를 탐사하는 것에 관심이 있을 때, 추천 발생기(116)는 그 목적에 잘 맞는 뉴스 기사들을 추천하도록 구성된다.In some embodiments, when a user is interested in exploring a particular topic or set of related topics over a range of times (i.e., a time frame), the recommendation generator 116 may generate a news Articles are structured to recommend.

위에 설명된 바와 같이, 프로파일 엔진(112)은 뉴스 전달 모듈(114)을 통해 사용자에게 어떤 콘텐츠를 제시할지를 결정하기 위해 추천 발생기(118)를 이용한다. 다양한 실시예들에서, 인제스트 모듈(102)의 인덱서(118)로의 요청은 관심 있는 타임프레임뿐만 아니라 사용자의 관심 대상인 토픽들을 포함하고, 또한 관심 있는 임의의 위치들을 포함할 수 있다. 앞서 설명된 예로 다시 돌아가면, 사용자는 과거 50년 동안 United Airlines의 이력에 관해 학습하는 데 관심이 있을 수 있고, 인덱서(118)로의 요청은 토픽들로서 "travel", "airlines", 및 "United Airlines", 및 이전의 50년을 특정하는 날짜 범위를 포함할 수 있다. 이 요청은 또한, 예를 들어 사용자가 그것이 그들 도시에 관한 한 이전의 50년에 걸쳐 United Airline의 이력에 특히 관심이 있다면, 그 결과들을 더욱 제한하기 위해 "Boston", "San Francisco", 및 "Auckland"를 위치들로서 특정할 수 있다.As described above, the profile engine 112 utilizes the recommendation generator 118 to determine what content to present to the user via the news delivery module 114. In various embodiments, the request to the indexer 118 of the ingest module 102 includes topics of interest to the user as well as the time frame of interest, and may also include any locations of interest. Returning to the example described above, the user may be interested in learning about the history of United Airlines for the past 50 years, and requests to indexer 118 may include topics such as "travel", "airlines", and "United Airlines &Quot;, and a date range specifying the previous 50 years. This request can also be made to "Boston", "San Francisco", and "San Francisco" to further limit the results, for example if the user is particularly interested in the history of United Airline over the previous 50 years, Auckland "as locations.

다양한 실시예들에서, 선택기 모듈(404)은 위에 설명된 바와 같고 그것의 게재 또는 배포 날짜에 관련한 각각의 뉴스 항목의 인기도를 또한 고려한 스코어링 함수를 이용한다. 예를 들어, 선택기 모듈(404)은 인덱서(118)로부터 그 해에 일어난 이벤트(예를 들어, 세계에서 가장 빠른 비행)를 설명하는 1988년도부터 수개의 기사들을 수신할 수 있다. 선택기 모듈(404)은 그 이벤트를 나타내는 것으로서 선택하기 위해 각각의 기사의 인기도에 따라 어느 하나(또는 시행자의 선호에 따라 몇개)를 결정한다. 선택기 모듈(404)은 예를 들어 가장 인기 있는 기사 - 즉, 최고의 읽힘 카운트를 갖는 기사 - 가 가장 높은 것으로 스코어링되므로 타임라인 내의 이벤트를 나타내도록 선택된다는 것을 결정할 수 있다. 선택기 모듈(404)은 또한 각각의 기사에 대한 스코어를 결정하는 데 있어서 위에 설명된 기준들을 다양한 실시예들에서 적용한다.In various embodiments, the selector module 404 utilizes a scoring function that takes into account the popularity of each news item as described above and in relation to its serving or distribution date. For example, selector module 404 may receive several articles from 1988 that describe an event that occurred that year (e.g., the fastest flight in the world) from indexer 118. The selector module 404 determines which one (or how many, depending on the preference of the enforcer), depending on the popularity of each article to select as representing the event. The selector module 404 may determine, for example, that the most popular article-that is, the article with the highest read count-is scored as the highest, so that it is selected to represent the event in the timeline. The selector module 404 also applies the above described criteria in various embodiments in determining the score for each article.

한 실시예에서, 선택기 모듈(404)은 또한 사용자가 정상적으로 관심 있는 것으로서 프로파일 엔진(112)에 의해 식별된 뉴스 소스(120)에 의해 게재된 기사들에 대한 스코어를 증가시킨다. 이것은 사용자에게 제시된 스토리들의 타임라인이 사용자가 즐기는 소스들의 세트로부터 타임라인에 걸치는 기사들을 포함할 가능성을 증가시킨다. 사용자에게 시간의 기간에 걸쳐 동일한 소스들에 의해 게재된 기사들을 제공하면 또한 사용자 경험이 향상될 수 있고, 사용자가 (특정한 신문 또는 정기 간행물의 관점으로부터와 같은) 특정한 관점으로부터 스토리의 진화를 뷰잉하는 것을 허용한다.In one embodiment, the selector module 404 also increases the score for articles posted by the news source 120 identified by the profile engine 112 as being normally of interest to the user. This increases the likelihood that the timeline of the stories presented to the user will include stories across the timeline from the set of sources the user enjoys. Providing users with articles posted by the same sources over a period of time can also improve the user experience and allow the user to view the evolution of the story from a particular perspective (such as from a particular newspaper or periodical) .

믹서(406)는 사용자에게 제시될 항목들의 세트를 생성하기 위해 위에 설명된 것과 같이 선택기 모듈(404)의 동작으로부터의 결과들을 조합하고, 디듀플리케이터 모듈(408)은 설명된 디듀플리케이션 기능성을 제공한다.The mixer 406 combines the results from the operation of the selector module 404 as described above to produce a set of items to be presented to the user and the duplicator module 408 provides the described deduplication functionality do.

사용자들에 대한 지리적으로 및 토픽적으로 관련있는 뉴스의 전달Delivery of geographically and topic related news to users

한 실시예에서, 뉴스 전달 모듈(114)은 사용자가 콘텐츠의 위치 속성들에 기초하여 뉴스 콘텐츠를 식별하고 소비하기 위해 지도 인터페이스를 이용할 수 있게 하는 지도 엔진(122)을 포함한다. 우리는 도 6 내지 도 9의 조합에서 도 5와 관련하여 아래에 이 특징의 기능성을 설명한다.In one embodiment, the news transfer module 114 includes a map engine 122 that enables a user to utilize the map interface to identify and consume news content based on location attributes of the content. We describe the functionality of this feature below in conjunction with FIG. 5 in the combination of FIGS. 6-9.

한 실시예에서, 사용자 액세싱 뉴스 지도 엔진(122)은 지도 기반 선택을 통해 뉴스 항목들을 뷰잉하고 싶어하는 것을 표시할 수 있다. 이것은, 예를 들어, 뉴스 읽는 애플리케이션 등 내의 옵션으로서 제시된, 뉴스 읽는 페이지 상의 버튼 또는 링크와 같은 사용자 인터페이스 요소를 통해 선택가능할 수 있다. 한 실시예에서, 이 특징의 사용자 작동에 응답하여, 그리고 도 6을 참조하면, 지도(600)는 사용자 디바이스(130)에 제시된다. 사용자 인터페이스(도시되지 않음)는 디스플레이를 위한 관심 있는 영역을 특정하기(502)(도 5) 위해 사용자에 의해 이용될 수 있다. 한 실시예에서 지도는 알려진다면, 사용자 디바이스의 현재 위치에 센터링된다. 대안적으로, 지도는 위에 설명된 바와 같이 사용자의 프로파일에 기초하여 사용자의 관심 대상인 것으로 알려진 위치에 센터링되거나 그 위치를 포함할 수 있다. 지도 엔진(122)는 다음에 사용자 인터페이스에 관련있는 지도를 디스플레이한다(504). 도 6의 예에서, 지도(600)는 Boston의 도시를 포함한다.In one embodiment, the user accessing news map engine 122 may indicate that it wants to view news items through a map based selection. This may be selectable via a user interface element, such as a button or link on a news reading page, presented as an option within, for example, a news reading application. In one embodiment, in response to user operation of this feature, and referring to Fig. 6, a map 600 is presented to the user device 130. [ A user interface (not shown) may be used by the user to specify 502 (FIG. 5) the area of interest for display. In one embodiment, the map is centered at the current location of the user device if known. Alternatively, the map may be centered on or included in a location known to be the user's interest, based on the user's profile, as described above. Map engine 122 then displays a map associated with the user interface (504). In the example of FIG. 6, the map 600 includes the city of Boston.

지도 엔진(122)은 다음에 사용자에게 디스플레이될 관련있는 스토리들을 식별한다. 한 실시예에서, 지도 엔진(122)은 관심 있는 위치를 추천 엔진(116)에 전달하고, 이 추천 엔진은 디스플레이된 영역에 위치한 기사들을 페치하고(506), 위에 설명된 바와 같이 지도 엔진(122)에 의해 디스플레이된 위치에 대해 관련있는 것으로서 지오로케이터(106)에 의해 이전에 식별된 기사들에 대한 검색 요청을 인덱서(118)에 보낸다. 한 실시예에서, 지도 엔진(122)은 추천 엔진(116)에 위도 및 경도 좌표들을 공급하지만, 위치를 특정하기 위한 임의의 다른 적합한 방법이 이용될 수 있다.Map engine 122 then identifies relevant stories to be displayed to the user. In one embodiment, the map engine 122 passes the location of interest to the recommendation engine 116, which fetches (506) the articles located in the displayed area and generates a map engine 122 Sends a search request to the indexer 118 for articles previously identified by the geocataloger 106 as being relevant for the location displayed by the geocoder 106. [ In one embodiment, the map engine 122 provides latitude and longitude coordinates to the recommendation engine 116, but any other suitable method for locating the location may be used.

추천 엔진(116)은 위에 설명된 바와 같이 관심 있는 토픽들 및 위치에 관련한 기사들을 수신하고 스코어링하고(508), 매칭되는 기사들의 표시 및 그들의 위치들을 지도 엔진(122)에 제공한다. 스코어링된 기사들은 그 지리적 영역 내에 그 특정한 사용자에 추천할 최상의 기사들을 나타낸다.The recommendation engine 116 receives and scans 508 the articles related to the topics and locations of interest as described above, and provides the maps engine 122 with a representation of the matched articles and their locations. The scored articles represent the best articles to recommend to that particular user within that geographic area.

지도 엔진(122)은 다음에 사용자에게 최고의 스코어링 기사들 중 적어도 일부에 관한 정보를 디스플레이한다(510). 도 7은 기사들의 표시가 지도(700)와 관련하여 디스플레이된 사용자 인터페이스의 예를 도시한다. 도 7의 예에서, 기사들(도시된 경우에서, 사진, 헤드라인, 및 뉴스 소스)(702)의 표시가 사용자 인터페이스의 한 측을 따라 디스플레이된다. 일련의 마커들(704, 706, 708, 710, 712)은 디스플레이된 기사들(702) 각각과 관련된 특정한 위치를 표시하기 위해 지도(700) 상에 배치된다. 한 실시예에서, 지도 엔진(122)은 각각의 기사와 관련된 지오로케이션 정보를 이용하고 지도(700) 상의 정확한 또는 근사한 위치에 마커를 렌더링한다. 다양한 실시예들에서 그리고 지오로케이션 정보의 특이성, 지도 축척 등에 따라, 지도(700) 상의 마커의 정확한 배치는 각각의 기사에 대한 정확한 또는 단지 근사한 위치를 표시할 수 있다. 일부 지도 해상도들에서, 예를 들어, 지도가 전체 주, 지방 또는 나라를 나타내도록 스케일 아웃될 때, 상이한 마커가 뉴스 기사들의 클러스터가 마크된 위치를 공유한다는 것을 표시하기 위해 렌더링될 수 있다.The map engine 122 then displays 510 information about at least some of the top scoring articles to the user. FIG. 7 shows an example of a user interface displayed with an indication of articles associated with the map 700. FIG. In the example of FIG. 7, an indication of the articles (in the illustrated case, photos, headlines, and news sources) 702 is displayed along one side of the user interface. A series of markers 704, 706, 708, 710, 712 are placed on the map 700 to display a particular location associated with each of the displayed articles 702. In one embodiment, the map engine 122 utilizes geolocation information associated with each article and renders the marker at a precise or approximate location on the map 700. In various embodiments and depending on the specificity of the geographic information, map scale, etc., the exact placement of the markers on the map 700 may indicate an exact or approximate location for each article. In some map resolutions, for example, when a map is scaled out to represent an entire week, province or country, different markers may be rendered to indicate that clusters of news articles share a marked location.

도 8을 참조하면, 한 실시예에서 사용자가 지도(800) 상에 특정한 마커(802)를 식별하는 입력을 제공할 때, 지도 엔진(122)은 마크된 위치와 관련된 특정한 기사(804)를 표시하기 위해 디스플레이를 업데이트한다. 예를 들어, 사용자 디바이스(130)의 하드웨어 특성들에 따라, 사용자는 마커(802)를 마우스오버하고, 마커(802)를 탭핑하거나, 또는 마커를 식별하는 입력을 제공할 수 있다. 응답하여, 한 실시예에서 지도 엔진(122)은 표시된 위치와 관련되지 않은 뉴스 항목들(702)을 제거하여, 단지 관련있는 기사(들)(804)만 남겨 놓는다. 지도 엔진(122)은 표시되지 않은 기사들을 제거하기 위해 디스플레이를 스크롤링하거나, 디스플레이된 사용자 인터페이스로부터 그들을 간단히 제거할 수 있다. 도 8의 예에서, 표시되지 않은 기사들은 화면의 상부 및 하부로부터 수직으로 스크롤링되었고, 다른 기사들이 존재한다는 것을 사용자에게 시각적 큐로서 도시한 비선택된 기사들 중 일부의 부분들(806, 808)을 남겨 놓는다.8, in one embodiment, when a user provides an input to identify a particular marker 802 on a map 800, the map engine 122 displays a particular article 804 associated with the marked location The display is updated. For example, depending on the hardware characteristics of the user device 130, a user may mouse over the markers 802, tapping the markers 802, or providing inputs to identify the markers. In response, in one embodiment, the map engine 122 removes news items 702 that are not related to the displayed location, leaving only the associated article (s) 804. The map engine 122 may scroll the display to remove the unmarked articles or simply remove them from the displayed user interface. In the example of FIG. 8, the unmarked articles were scrolled vertically from the top and bottom of the screen, and portions 806 and 808 of some of the unselected articles showing as a visual cue to the user that other articles were present Leave it.

대안적인 실시예에서, 마커(802)를 선택하고 관련있는 기사(804)가 표시되게 하기 보다는, 사용자는 디스플레이된 기사들(702) 중 하나를 선택할 수 있고, 지도 엔진(122)은 선택된 스토리의 위치와 관련된 마커(802)를 강조하기 위해 표시된 지도(800)를 업데이트한다. 마커들은 마커들을 하이라이트하고, (도 8에 도시된 바와 같이) 다른 마커들에 비해 그들의 크기를 확대하고, 또는 마커를 플래싱하고, 그것의 컬러를 변화시키거나, 다른 시각적 큐를 제공하거나, 상기의 임의의 조합에 의한 것과 같은 다수의 방식으로 강조될 수 있다.In an alternative embodiment, rather than selecting the marker 802 and causing the associated article 804 to be displayed, the user may select one of the displayed articles 702, and the map engine 122 may select one of the displayed stories 702, And updates the displayed map 800 to highlight the marker 802 associated with the location. Markers highlight markers, enlarge their size relative to other markers (as shown in FIG. 8), or flash a marker, change its color, provide another visual cue, And can be emphasized in a number of ways such as by any combination.

도 9에 도시된 바와 같이, 사용자가 다른 마커(902) 또는 다른 스토리(904)를 선택하면, 지도 엔진(122)은 선택된 스토리(904)를 디스플레이하고 관련된 위치를 갖는 마커(902)를 하이라이트하기 위해 디스플레이된 지도(900)를 업데이트한다.9, when the user selects another marker 902 or other story 904, the map engine 122 displays the selected story 904 and highlights the marker 902 having the associated location And updates the map 900 displayed for the user.

표시된 기사들(904) 중 하나를 사용자가 선택하는 것에 응답하여, 디바이스(130)는 실제 기사를 디스플레이한다. 예를 들어, 한 실시예에서, 기사 표시(904) 내의 텍스트 상에 더블 탭핑 또는 더블 클릭함으로써, 사용자 디바이스(130)는 웹 브라우저 윈도우를 론치하고 뉴스 전달 모듈(114)에 의해 특정된 위치에 기사를 디스플레이하는 것이 지시된다. 그 위치는 예를 들어, 사용자 디바이스(130)에 기사 표시가 제공된 링크에 의해 특정될 수 있거나, 사용자 디바이스(130)가 사용자가 기사 표시를 선택하는 것에 응답하여 그 위치에 대한 요청을 시스템(100)으로 전달할 수 있다. 임의의 이벤트에서, 사용자는 다음에 기사에 지향되고, 요청된 정보를 읽고, 듣거나, 볼 수 있다.In response to the user selecting one of the displayed articles 904, the device 130 displays the actual article. For example, in one embodiment, by double-tapping or double-clicking on the text in the article display 904, the user device 130 launches a web browser window and, at a location specified by the news delivery module 114, Is displayed. The location may be specified, for example, by a link provided with an article display on the user device 130, or the user device 130 may send a request for that location in response to the user selecting an article display, ). At any event, the user can then be directed to the article and read, hear, or view the requested information.

도 5를 여전히 참조하면, 사용자가 지도를 스크롤링하거나 검색 필드에 새로운 위치를 기입함으로써와 같이, 새로운 좌표들을 암시적으로 또는 명시적으로 제공하면, 지도 엔진(122)은 새로운 좌표들을 취하고(512), 새로운 좌표들에 디스플레이된 지도를 리센터링하고(514), 업데이트된 지도를 디스플레이한다(504). 지도 엔진(122)은 다음에 새로운 위치에 관련한 기사들을 획득하고, 사용자의 관심들에 따라 그들을 스코어링하고, 위에 설명된 것과 같은 프로세스에서 새로운 지도 상의 최고 스코어링 기사들의 표시를 디스플레이한다.Still referring to FIG. 5, if the user implicitly or explicitly provides new coordinates, such as by scrolling the map or writing a new location in the search field, the map engine 122 takes the new coordinates (512) , Re-centers the map displayed at the new coordinates (514), and displays the updated map (504). The map engine 122 then acquires articles relating to the new location, scales them according to the user's interests, and displays an indication of the top scoring articles on the new map in the process as described above.

사용자들에 대한 토픽적으로 및 시간적으로 관련있는 뉴스의 전달Communicate topic-related and temporally related news to users

다양한 실시예들에서, 뉴스 전달 모듈(114)은 사용자가 뉴스 콘텐츠를 뷰잉하기를 원하는 타임프레임을 사용자 인터페이스를 통해 사용자가 특정할 수 있게 하는 타임라인 엔진(124)을 포함한다. 아래에 설명되는 바와 같이, 타임라인 엔진(124)은 한 실시예에서 별개의 특징으로서, 또는 다른 실시예와 함께 지도 엔진(122)으로서 기능한다.In various embodiments, the news transfer module 114 includes a timeline engine 124 that allows a user to specify, via a user interface, a time frame in which the user desires to view the news content. As described below, the timeline engine 124 functions as a separate feature in one embodiment, or as a map engine 122 in conjunction with other embodiments.

한 실시예에서, 그리고 이제 도 10을 참조하면, 사용자 인터페이스(1000)는 한 실시예에 따라 사용자가 관심 있는 토픽 및 참조의 타임프레임을 특정할 수 있는 방식을 도시한다. 인터페이스(1000)는 사용자가 검색될 토픽을 특정할 수 있는 텍스트 박스(1002)를 포함한다. 제어 요소들(1004)은 사용자가 관심 있는 타임프레임을 특정할 수 있게 한다. 도시된 예에서, 사용자는 금년, 지난 5년, 지난 10년으로부터 선택하거나, 지정 날짜들을 제공할 수 있다. 한 실시예에서, 인터페이스(1000)는 텍스트 박스(1002) 내에 제공된 입력에 기초하여 결과들을 프리뷰하고, 사용자가 인터페이스 제어 요소들을 이용하여 디스플레이된 타임라인을 편집함으로써 요청된 타임라인을 정하게 하는 시각적 타임라인(1006)을 제공한다. 본 기술분야의 통상의 기술자에 의해 인식되는 바와 같이, 많은 다른 사용자 인터페이스 제어들이 사용자에 의해 타임프레임의 선택을 가능하게 하도록 제공될 수 있다.In one embodiment, and now referring to FIG. 10, the user interface 1000 illustrates a manner in which a user may specify a time frame of a topic of interest and a reference in accordance with one embodiment. The interface 1000 includes a text box 1002 in which a user can specify a topic to be searched. Control elements 1004 allow the user to specify a time frame of interest. In the illustrated example, the user may choose from this year, the last 5 years, the last 10 years, or provide the designated dates. In one embodiment, the interface 1000 includes a visual timeline (e.g., a timeline) to preview the results based on the input provided in the text box 1002, and a user to edit the timeline displayed using the interface control elements Line 1006. < / RTI > As will be appreciated by those of ordinary skill in the art, many other user interface controls may be provided to enable selection of a time frame by the user.

다양한 실시예들에서, 토픽에 대해 관련있는 타임프레임을 제공하는 것 외에, 사용자는 또한 위에 설명된 바와 같이, 관련있는 지리적 영역을 특정할 수 있다.In various embodiments, in addition to providing a relevant time frame for a topic, a user may also specify an associated geographic area, as described above.

도 11은 위치에 기초하여 그리고 특정된 타임프레임 내에 사용자가 관심 있는 기사들을 제공하기 위한 방법을 도시한다. 예를 들어, 도 10 및 도 6과 관련하여, 위에 설명된 것과 같은 사용자 인터페이스는 사용자가 관심 있는 영역 및 관심 있는 타임프레임을 특정하는(1102) 데 이용될 수 있다. 한 실시예에서 지도 엔진(122)은 특정된 위치에 관련한 지도를 디스플레이한다(1104). 지도 엔진(122) 및 타임라인 엔진(124)은 사용자에게 디스플레이될 관련있는 스토리들을 식별한다. 추천 엔진(116)은 관련있는 지리적 영역에 위치하고 특정된 타임프레임 내에서 게재된 기사를 페치하고(1106), 관련있는 기사들에 대한 검색 요청을 인덱서(118)로 보내기 위해 지도 엔진(122)에 의해 제공된 위치 및 타임라인 엔진(124)에 의해 제공된 타임프레임을 이용한다.Figure 11 illustrates a method for providing articles of interest to a user based on location and within a specified time frame. For example, with reference to FIGS. 10 and 6, the user interface as described above may be used to specify 1102 the region of interest and the time frame of interest to the user. In one embodiment, the map engine 122 displays a map associated with the specified location (1104). The map engine 122 and the timeline engine 124 identify relevant stories to be displayed to the user. The recommendation engine 116 is located in the relevant geographic area and fetches the published articles within a specified time frame 1106 and sends the search request for the relevant articles to the map engine 122 And the time frame provided by the timeline engine 124. The time-

추천 엔진(116)은 위에 설명된 바와 같이 관심 있는 토픽들, 위치 및 타임프레임에 대해 관련한 기사들을 수신하고 스코어링하고(1108), 지도 엔진(122) 및 타임라인 엔진(124)에 매칭되는 기사들의 표시, 위치들 및 시간들을 제공한다. 스코어링된 기사들은 특정된 타임프레임으로부터 선택되고 특정된 지리적 영역에 관련한 특정된 토픽에 관한 그 특정한 사용자에 대해 추천할 최상의 기사들을 나타낸다.The recommendation engine 116 receives and scans 1108 relevant articles for the topics of interest, location and time frame as described above, and stores the articles matched to the map engine 122 and timeline engine 124 Display, locations and times. Scored articles represent the best articles to recommend for that particular user regarding a particular topic selected from a specified time frame and associated with a specified geographic area.

지도 엔진(122) 및 타임라인 엔진(124)은 다음에 사용자에게 가장 높은 스코어링 기사들 중 적어도 일부에 관한 정보를 디스플레이한다(1110). 한 실시예에서, 지리적 매치들이 도 6 내지 도 9와 관련하여 위에 설명된 것과 같은 마커들을 이용하여 지도들 상에 표시된다. 또한, 다양한 실시예들에서 타임라인 엔진(124)은 추천된 스토리들 각각에 대응하는 타임라인을 따르는 점들에 마커들을 배치하는, 시각적 타임라인을 디스플레이한다. 한 실시예에서, 사용자가 예를 들어, 타임라인 상의 마커 위에 마우싱함으로써 사용자가 표시함에 따라, 관련된 스토리의 표시가 예를 들어, 스토리와 관련된 섬네일을 보다 크게 만들고, 디스플레이로부터 다른 스토리들에 관한 정보를 제거하는 것 등에 의해 강조된다. 유사하게, 사용자가 특정한 스토리의 표시를 표시하는 것에 응답하여, 타임라인 상의 대응하는 마커는 그것의 관련성을 표시하기 위해 강조될 수 있다. 스토리들과의 이들 시간적 관련성들은 지리적 제한이 사용자에 의한 시간적 제한과 함께 포함된 실시예들에서, (도 7 내지 도 9와 관련하여 위에 설명된 것과 같은) 지리적 관련성과 별개로 또는 그와 동일한 사용자 인터페이스에 디스플레이될 수 있다.The map engine 122 and the timeline engine 124 then display 1110 information regarding at least some of the highest scoring articles to the user. In one embodiment, geographic matches are displayed on maps using markers such as those described above with respect to Figures 6-9. In addition, in various embodiments, the timeline engine 124 displays a visual timeline that places markers at points along the timeline that correspond to each of the recommended stories. In one embodiment, as the user displays, for example, by marking on a marker on the timeline, the display of the associated story, for example, makes the thumbnail associated with the story larger, Removing information, and the like. Similarly, in response to the user displaying an indication of a particular story, the corresponding marker on the timeline can be highlighted to indicate its relevance. These temporal associations with stories may be such that the geographic constraints, in conjunction with temporal constraints by the user, are not necessarily the same as the geographical relevance (as described above with respect to Figures 7 to 9) Lt; / RTI > interface.

다양한 실시예들에서, 사용자는, 예를 들어 타임라인(1006)(도 10)과 같은 모습을 갖는 사용자 인터페이스 내에 포함된 타임라인을 조정할 수 있거나, 또는 관심 있는 변경된 타임프레임을 표시할 수 있다(1112). 응답하여 타임라인 엔진(124)은 디스플레이된 타임라인을 조정하고(1114), 사용자에게 적절한 마커들로 변경된 스토리들 및 새로운 타임라인을 나타내는, 위에 설명된 것과 같은 추천 발생기(116)를 통해 요청을 업데이트한다.In various embodiments, the user may adjust the timeline contained within the user interface, e.g., having the appearance of a timeline 1006 (FIG. 10), or may display a modified time frame of interest 1112). In response, the timeline engine 124 coordinates (1114) the displayed timeline and sends a request to the user via the recommendation generator 116, such as described above, indicating the changed timelines and the new timeline to the appropriate markers Update.

본 명세서에 논의된 시스템들 또는 컴포넌트들이 사용자들에 관한 개인 정보를 수집하거나, 개인 정보를 이용할 수 있는 상황들에서, 사용자들은 프로그램들 또는 특징들이 사용자 정보(예를 들어, 사용자의 소셜 네트워크, 소셜 액션들 또는 액티비티들, 직업, 사용자의 선호들, 또는 사용자의 현재 위치에 관한 정보)를 수집하는지를 제어하기 위해, 또는 사용자와 보다 관련있을 수 있는 콘텐츠 서버로부터 콘텐츠를 수신하는지 여부 및/또는 어떻게 수신하지를 제어하는 기회를 가질 수 있다. 또한, 그것이 저장 또는 이용되기 전에 소정의 데이터가 하나 이상의 방식으로 처리될 수 있으므로, 개인적으로 식별가능한 정보는 제거된다. 예를 들어, 사용자의 아이덴티티는 개인적으로 식별가능한 정보가 사용자에 대해 결정될 수 있거나, 사용자의 지리적 위치가 위치 정보가 획득되는 경우에 일반화될 수 있도록 처리될 수 있으므로(도시, ZIP 코드, 또는 국가 레벨에 관한 것 등), 사용자의 특정한 위치는 결정될 수 없다. 그러므로, 사용자는 정보가 어떻게 사용자에 관해 수집되고 콘텐츠 서버에 의해 이용되는 것을 제어할 수 있다.In situations in which the systems or components discussed herein collect personal information about users or may use personal information, users may be able to access information about the user (e.g., the user's social network, social Information about actions or activities, occupation, user preferences, or the user's current location), or whether to receive content from a content server that may be more relevant to the user and / or how to receive You may have an opportunity to control your legs. In addition, the personally identifiable information is removed since certain data may be processed in one or more ways before it is stored or used. For example, the identity of the user may be processed such that personally identifiable information may be determined for the user, or the user ' s geographic location may be generalized when location information is obtained (city, ZIP code, , Etc.), the user's specific location can not be determined. Thus, the user can control how information is collected about the user and used by the content server.

시스템(100)은 일부 실시예들에서 하나 이상의 고성능 CPU 및 1기가바이트 이상의 메인 메모리뿐만 아니라, 수백 기가바이트 내지 페타바이트의 범위의 스토리지를 포함하는 서버 클래스 컴퓨터들의 네트워크에 의해 구현된다. LINUX와 같은 운영 체제가 전형적으로 이용된다. 시스템(100) 및 그것의 구성 컴포넌트들의 동작들은 하드웨어(예를 들어, 범용 컴퓨터들 내의 전용 컴퓨팅 디바이스들 또는 도터보드들)를 통해, 또는 시스템(100)의 서버들 상의 컴퓨터 스토리지 내에 설치되고 본 명세서에 설명된 기능들을 수행하기 위해 이러한 서버들의 프로세서들에 의해 실행되는 컴퓨터 프로그램들을 통해 제어될 수 있다. 이러한 머신들의 구현에 관한 보다 상세한 것은 도 12와 관련하여 제공된다. 시스템 엔지니어링 및, 예를 들어, 미디어 콘텐츠 호스팅 또는 콘텐츠 전달의 기술분야의 통상의 기술자라면 본 명세서에서의 기능적 및 알고리즘적 설명들로부터 이러한 컴퓨터 프로그램들 및 하드웨어 시스템들의 구성 및 동작을 손쉽게 결정할 것이다.The system 100 is implemented in some embodiments by a network of server class computers that includes one or more high performance CPUs and one or more gigabytes of main memory, as well as storage in the range of hundreds of gigabytes to petabytes. Operating systems such as LINUX are typically used. The operations of the system 100 and its component components may be performed in hardware (e.g., dedicated computing devices or daughter boards within general purpose computers), or in computer storage on the servers of the system 100, May be controlled via computer programs executed by the processors of these servers to perform the functions described in connection with FIG. More details regarding the implementation of these machines are provided in connection with FIG. Those of ordinary skill in the art of system engineering and, for example, hosting media content or delivering content, will readily determine the configuration and operation of such computer programs and hardware systems from the functional and algorithmic descriptions herein.

기사 데이터베이스(108) 및 프로파일 데이터베이스(110)는 하드 디스크 드라이브, RAM, 기입가능한 컴팩트 디스크(CD) 또는 DVD, 고체 상태 메모리 디바이스, 또는 다른 광학/자기 저장 매체들과 같은 컴퓨터 판독가능 저장 매체 내에 데이터를 저장할 수 있는 임의의 디바이스 또는 디바이스들의 조합으로서 구현될 수 있다. 다른 유형들의 컴퓨터 판독가능 저장 매체들이 이용될 수 있고, 새로운 저장 매체들이 미래에 개발됨에 따라, 그들은 위에 기술된 설명들에 따라 구성될 수 있는 것으로 기대된다.The article database 108 and the profile database 110 may be stored in a computer readable storage medium such as a hard disk drive, a RAM, a writable compact disk (CD) or DVD, a solid state memory device, or other optical / magnetic storage media, Lt; RTI ID = 0.0 > a < / RTI > As other types of computer-readable storage media can be used and new storage media are developed in the future, they are expected to be able to be configured in accordance with the above described descriptions.

본 설명에서, 용어 "모듈"은 특정된 기능을 제공하기 위한 계산 로직을 지칭한다. 모듈은 하드웨어, 펌웨어, 및/또는 소프트웨어에서 구현될 수 있다. 본 명세서에 설명된 모듈들이 소프트웨어로서 구현되는 경우에, 모듈은 스탠드얼론 프로그램으로서 구현될 수 있지만, 또한 예를 들어 보다 큰 프로그램의 일부로서, 복수의 별개의 프로그램으로서, 또는 하나 이상의 정적으로 또는 동적으로 링크된 라이브러리들로서 다른 수단을 통해 구현될 수 있다. 본 명세서에 설명된 모듈이라고 하는 것은 본 발명의 한 실시예를 나타내고, 다른 실시예들은 다른 모듈들을 포함할 수 있다는 것을 이해할 것이다. 또한, 다른 실시예들은 본 명세서에 설명된 모듈들이 없을 수 있고/있거나 상이한 방식으로 모듈들 간에 설명된 기능을 분산시킬 수 있다. 부가적으로, 하나보다 많은 모듈에 기여되는 기능성들은 단일 모듈 내로 통합될 수 있다. 모듈들이 소프트웨어에 의해 구현되는 실시예에서, 그들은 컴퓨터 판독가능 지속 저장 디바이스(예를 들어, 하드 디스크) 상에 저장되고, 메모리 내에 로드되고, 시스템(100)의 부분으로서 포함된 하나 이상의 프로세서에 의해 실행된다. 대안적으로, 하드웨어 또는 소프트웨어 모듈들은 시스템(100) 내에 어딘가에 저장될 수 있다. 시스템(100)은 하나 이상의 프로세서, 고속 메모리, 하드 디스크 저장 및 백업, 네트워크 인터페이스들 및 프로토콜들, 데이터 입력을 위한 입력 디바이스들, 및 데이터의 디스플레이, 프린팅 또는 다른 제시들을 위한 출력 디바이스들을 포함하는, 본 명세서에 설명된 동작들을 위해 필요한 하드웨어 요소들을 포함한다. 도 12는 이러한 컴포넌트들에 관한 더 이상의 상세들을 제공한다.In this description, the term "module" refers to the calculation logic for providing a specified function. The module may be implemented in hardware, firmware, and / or software. Where the modules described herein are implemented as software, the modules may be implemented as standalone programs, but may also be implemented as part of a larger program, as a plurality of separate programs, or as one or more statically or dynamically Lt; / RTI > may be implemented via other means as libraries linked with < RTI ID = 0.0 > It will be appreciated that what is referred to herein as a module represents one embodiment of the invention, and that other embodiments may include other modules. Further, other embodiments may not have the modules described herein and / or may distribute the functions described between the modules in a different manner. Additionally, the functionality contributed to more than one module can be integrated into a single module. In embodiments where modules are implemented by software, they may be stored on a computer-readable persistent storage device (e.g., a hard disk), loaded into memory, and executed by one or more processors included as part of the system 100 . Alternatively, hardware or software modules may be stored somewhere in the system 100. The system 100 may include one or more processors, high-speed memory, hard disk storage and backup, network interfaces and protocols, input devices for data entry, and output devices for display, printing, And hardware elements necessary for the operations described herein. Figure 12 provides further details regarding these components.

도 12는 머신 판독가능 매체로부터의 명령어들을 판독하고 프로세서 내의 그들 명령어들을 실행할 수 있는 예시적인 머신의 컴포넌트들을 도시한 블록도이다. 구체적으로, 도 12는 머신이 본 명세서에 논의된 방법들 중 임의의 하나 이상의 방법을 수행하게 하는 명령어들(1224)(예를 들어, 소프트웨어)이 실행될 수 있는 컴퓨터 시스템(1200)의 예시적인 형태의 머신의 도해적 표현을 도시한다. 대안적인 실시예들에서, 머신은 스탠드얼론 디바이스로서 동작하거나 다른 머신들과 접속(예를 들어, 네트워킹될) 수 있다. 네트워킹된 배치에서, 머신은 서버 클라이언트 네트워크 환경에서 서버 머신 또는 클라이언트 머신의 능력에서, 또는 피어-투-피어(또는 분산형) 네트워크 환경 내의 피어 머신으로서 동작할 수 있다.12 is a block diagram illustrating components of an exemplary machine that can read instructions from a machine-readable medium and execute those instructions in the processor. 12 illustrates an exemplary form of a computer system 1200 in which instructions 1224 (e.g., software) that cause a machine to perform any one or more of the methods discussed herein may be executed. Lt; RTI ID = 0.0 > of < / RTI > In alternate embodiments, the machine may operate as a standalone device or may be connected (e.g., networked) with other machines. In a networked deployment, the machine may operate as a peer machine in a peer-to-peer (or distributed) network environment, or in the capabilities of a server machine or client machine in a server client network environment.

머신은 서버 컴퓨터, 클라이언트 컴퓨터, 퍼스널 컴퓨터(PC), 태블릿 PC, 셋톱 박스(STB), PDA(personal digital assistant), 셀룰러 전화, 스마트폰, 웹 기기, 네트워크 라우터, 스위치 또는 브리지, 또는 그 머신에 의해 취해질 동작들을 특정하는 명령어들(1224)(순차적 또는 다른 방식)을 실행할 수 있는 임의의 머신일 수 있다. 또한, 단지 하나의 머신이 도시되지만, 용어 "머신"은 또한 본 명세서에 설명된 방법들 중 임의의 하나 이상을 수행하기 위해 명령어들(1224)을 개별적으로 또는 공동으로 실행하는 머신들의 임의의 집합을 포함하는 것으로 취해질 수 있다.The machine may be a server computer, a client computer, a personal computer (PC), a tablet PC, a set top box (STB), a personal digital assistant (PDA), a cellular phone, a smart phone, a web device, a network router, a switch or a bridge, And may be any machine capable of executing instructions 1224 (sequential or otherwise) that specify actions to be taken by the processor. Also, although only one machine is shown, the term "machine" also includes any set of machines that execute instructions 1224 individually or collectively to perform any one or more of the methods described herein As shown in FIG.

예시적인 컴퓨터 시스템(1200)은 버스(1208)를 통해 서로 통신하도록 구성된 프로세서(1202)(예를 들어, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 디지털 신호 프로세서(DSP), 하나 이상의 주문형 집적 회로들(ASIC들), 또는 하나 이상의 라디오 주파수 집적 회로들(RFIC들), 또는 이들의 임의의 조합), 메인 메모리(1204), 및 정적 메모리(1206)를 포함한다. 컴퓨터 시스템(1200)은 그래픽 디스플레이 유닛(1210)(예를 들어, 플라즈마 디스플레이 패널(PDP), 액정 디스플레이(LCD), 프로젝터, 또는 음극선관(CRT))을 더 포함할 수 있다. 컴퓨터 시스템(1200)은 버스(1208)를 통해 통신하도록 또한 구성된, 영숫자 입력 디바이스(1212)(예를 들어, 키보드), 커서 제어 디바이스(1214)(예를 들어, 마우스, 트랙볼, 조이스틱, 모션 센서, 또는 다른 포인팅 기구), 데이터 저장소(1216), 신호 발생 디바이스(1218)(예를 들어, 스피커), 오디오 입력 디바이스(1226)(예를 들어, 마이크로폰) 및 네트워크 인터페이스 디바이스(1220)를 또한 포함할 수 있다.Exemplary computer system 1200 includes a processor 1202 configured to communicate with one another via a bus 1208 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (ASICs), or one or more radio frequency integrated circuits (RFICs), or any combination thereof), main memory 1204, and static memory 1206. The computer system 1200 may further include a graphic display unit 1210 (e.g., a plasma display panel (PDP), a liquid crystal display (LCD), a projector, or a cathode ray tube (CRT)). Computer system 1200 also includes an alphanumeric input device 1212 (e.g., a keyboard), a cursor control device 1214 (e.g., a mouse, trackball, joystick, motion sensor Or other pointing device), a data store 1216, a signal generating device 1218 (e.g., a speaker), an audio input device 1226 (e.g., a microphone) and a network interface device 1220 can do.

데이터 저장소(1216)는 본 명세서에 설명된 방법들 및 기능들 중 임의의 하나 이상을 실시하는 명령어들(1224)(예를 들어, 소프트웨어)이 저장된 머신 판독가능 매체(1222)를 포함한다. 명령어들(1224)(예를 들어, 소프트웨어)은 머신 판독가능 매체를 또한 구성하는 컴퓨터 시스템(1200), 메인 메모리(1204) 및 프로세서(1202)에 의한 그것의 실행 중에 메인 메모리(1204) 내에 또는 프로세서(1202) 내에(예를 들어, 프로세서의 캐시 메모리 내에) 완전히 또는 적어도 부분적으로 또한 상주할 수 있다. 명령어들(1224)(예를 들어, 소프트웨어)는 네트워크 인터페이스(1220)를 통해 네트워크(도시되지 않음)를 거쳐 송신 또는 수신될 수 있다.Data store 1216 includes machine readable medium 1222 having stored thereon instructions 1224 (e.g., software) that implement any one or more of the methods and functions described herein. The instructions 1224 (e.g., software) may be stored in the main memory 1204 during its execution by the computer system 1200, main memory 1204 and processor 1202, which also comprise a machine- May also reside completely or at least partially within processor 1202 (e.g., in a cache memory of the processor). The instructions 1224 (e.g., software) may be transmitted or received via a network (not shown) via the network interface 1220.

머신 판독가능 매체(1222)가 단일 매체로 예시적인 실시예에서 도시되지만, 용어 "머신 판독가능 매체"는 명령어들(예를 들어, 명령어들(1224))을 저장할 수 있는 단일 매체 또는 다수 매체(예를 들어, 중앙집중형 또는 분산형 데이터베이스, 또는 관련된 캐시들 및 서버들)를 포함하는 것으로 취해져야 한다. 용어 "머신 판독가능 매체"는 머신에 의해 실행하기 위한 명령어들(예를 들어, 명령어들(1224))을 저장할 수 있고 머신이 본 명세서에 개시된 방법들 중 임의의 하나 이상을 수행하게 하는 임의의 매체를 포함하는 것으로 또한 취해질 것이다. 용어 "머신 판독가능 매체"는 고체 상태 메모리, 광학 매체, 및 자기 매체의 형태로 된 데이터 저장소들을 포함하지만, 이에 제한되지는 않는다.Although the machine readable medium 1222 is depicted in the exemplary embodiment as a single medium, the term "machine readable medium" refers to a medium or medium (e.g., a computer readable medium) that can store instructions For example, a centralized or distributed database, or associated caches and servers). The term "machine-readable medium" refers to any medium that may store instructions (e.g., instructions 1224) for execution by a machine and that may cause the machine to perform any one or more of the methods It will also be taken to include the medium. The term "machine readable medium" includes, but is not limited to, data storage in the form of solid state memory, optical media, and magnetic media.

상기 설명의 일부 부분들은 정보에 관한 알고리즘들 및 동작들의 상징적 표현들의 용어로 실시예들을 설명한다. 이들 알고리즘적 설명들 및 표현들은 본 기술분야의 통상의 기술자에게 효과적으로 그들의 연구의 핵심을 전달하기 위해 데이터 처리 분야의 통상의 기술자에 의해 공통적으로 이용된다. 기능적, 계산적, 또는 논리적으로 설명되지만, 이들 동작은 프로세서, 등가적인 전기 회로들, 마이크로코드 등에 의해 실행된 컴퓨터 프로그램에 의해 구현되는 것으로 이해된다. 게다가, 때로는 동작들의 이들 배열을 일반성의 손실 없이, 모듈들로서 참조하는 것이 편리하다고 또한 판명되었다. 설명된 동작들 및 그들의 관련된 모듈들은 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 임의의 조합들로 실시될 수 있다.Some portions of the above description illustrate embodiments in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those of ordinary skill in the data processing arts to convey the essentials of their study to those of ordinary skill in the art. Functional, computational, or logical description, it is understood that these operations may be implemented by a computer program executed by a processor, equivalent electrical circuitry, microcode, or the like. In addition, it has also proved sometimes convenient to refer to these arrangements of operations as modules without loss of generality. The operations described and their associated modules may be implemented in software, firmware, hardware, or any combination thereof.

본 명세서에 이용된 바와 같이 "한 실시예" 또는 "실시예"에 대한 임의의 언급은 실시예와 관련하여 설명된 특정한 요소, 특징, 구조, 또는 특성들이 적어도 하나의 실시예 내에 포함되는 것을 의미한다. 본 명세서의 다양한 장소들에서의 문구 "한 실시예에서"의 출현은 반드시 동일한 실시예를 모두 참조하는 것은 아니다.Any reference to "an embodiment" or "an embodiment" as used herein means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment do. The appearances of the phrase "in one embodiment" in various places in this specification are not necessarily all referring to the same embodiment.

본 명세서에 이용된 바와 같이, 용어들 "포함한다(comprises)", "포함하는(comprising)", "포함한다(includes)", "포함하는(including)", "갖는다(has)", "갖는(having)" 또는 이것의 임의의 다른 변형은 비배타적 포함을 커버하는 것으로 의도된다. 예를 들어, 요소들의 리스트를 포함하는 프로세스, 방법, 물품, 또는 장치는 그들 요소에만 반드시 한정되는 것이 아니고 명확히 리스팅되지 않고 이러한 프로세스, 방법, 물품, 또는 장치에 고유한 것이 아닌 다른 요소들을 포함할 수 있다. 또한 달리 분명히 표명되지 않는다면, "또는"은 배타적 논리합(exclusive or)이 아니라 포함적 논리합(inclusive or)을 지칭한다. 예를 들어, 조건 A 또는 B는 다음 중 임의의 하나에 의해 만족된다: A는 참이고(또는 존재하고) B는 거짓이고(존재하지 않고), A는 거짓이고(또는 존재하지 않고) B는 참이고(또는 존재하고), A와 B 둘 다가 참이다(또는 존재한다).As used herein, the terms "comprises", "comprising", "includes", "including", "has", " Having "or any other variation thereof is intended to cover a non-exclusive inclusion. For example, a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to those elements and may include other elements not expressly listed or inherent to such process, method, article, or apparatus . Unless otherwise expressly stated, "or" refers to an inclusive or not to an exclusive or. For example, condition A or B is satisfied by any one of the following: A is true (or is present), B is false (not present), A is false (or not present) True (or present), and both A and B are true (or present).

또한, 단수 표현("a" 또는 "an")의 이용은 본 명세서의 실시예의 요소들 및 컴포넌트들을 설명하기 위해 이용된다. 이것은 단지 편의성을 위한 것이고 발명의 일반적 의미를 부여하는 것이다. 본 설명은 하나 또는 적어도 하나를 포함하는 것으로 읽혀져야 하고 단수형은 또한 달리 의미하는 것이 분명하지 않다면 복수를 또한 포함한다.Also, the use of the singular representation ("a" or "an") is used to describe the elements and components of the embodiments of the present disclosure. This is merely for convenience and gives the general meaning of the invention. This description should be read to include one or at least one, and the singular also includes the plural unless it is explicitly meant otherwise.

본 개시내용을 읽는다면, 본 기술분야의 통상의 기술자는 여전히 본 명세서에서의 개시된 원리들을 통해 시스템을 위한 추가의 대안적인 구조 및 기능적 설계들 및 일반화된 전자 잡지의 제공을 위한 프로세스를 여전히 인식할 것이다. 그러므로, 특정한 실시예들 및 응용들이 도시되었고 설명되었지만, 개시된 실시예들은 본 명세서에 개시된 정밀한 구성 및 컴포넌트들로 한정되지 않는다는 것이 이해될 것이다. 본 기술분야의 통상의 기술자에게 분명하게 될 다양한 수정들, 변화들, 및 변형들이 첨부된 청구항들의 사상 및 범위로부터 벗어나지 않고서 본 명세서에 개시된 방법 및 장치의 배열, 동작 및 상세들에서 이루어질 수 있다.Those of ordinary skill in the art will still recognize additional alternative structural and functional designs for the system and processes for providing generalized electronic magazines through the principles disclosed herein will be. Thus, while specific embodiments and applications have been shown and described, it will be appreciated that the disclosed embodiments are not limited to precise configuration and components disclosed herein. Various modifications, changes, and variations that will become apparent to those of ordinary skill in the art can be made in the arrangement, operation and details of the methods and apparatus disclosed herein without departing from the spirit and scope of the appended claims.

Claims (39)

사용자에게 뉴스 콘텐츠를 디스플레이하기 위한 방법으로서,
복수의 뉴스 콘텐츠 항목들 각각에 대하여, 컴퓨터에 의해:
상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 날짜로 상기 뉴스 콘텐츠 항목에 주석을 다는 단계;
각각의 주석이 달린 항목의 표시 및 관련된 주석들을 저장하는 단계;
상기 뉴스 콘텐츠 항목들 각각에 대해, 상기 콘텐츠 항목이 뷰잉되는 횟수를 표시하는 카운트를 유지하는 단계;
복수의 사용자들 각각에 대하여, 컴퓨터에 의해:
상기 사용자에 대한 프로파일 정보를 식별하는 단계 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 뉴스 소스들을 포함함 -;
상기 컴퓨터에 의해, 관심 대상인 토픽 및 관심 대상인 타임프레임을 수신하는 단계;
상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자들 중 하나의 사용자에게 추천할 복수의 뉴스 콘텐츠 항목들을 식별하는 단계 - 각각의 뉴스 콘텐츠 항목은 상기 관심 대상인 토픽에 대응하는 주석이 달린 토픽, 및 상기 수신된 관심 대상인 타임프레임 내의 날짜를 갖고, 상기 콘텐츠 항목들은 적어도 부분적으로 그들의 관련된 뷰 카운트에 따라 선택됨 -; 및
상기 뉴스 콘텐츠 항목들을 상기 사용자에게 추천하는 단계
를 포함하는 방법.
A method for displaying news content to a user,
For each of a plurality of news content items, the computer:
Annotating the news content item with at least one topic and at least one date associated with the content of the item;
Storing an indication of each annotated item and associated annotations;
Maintaining, for each of the news content items, a count indicating the number of times the content item is viewed;
For each of the plurality of users, by a computer:
Identifying profile information for the user, the profile information including a plurality of news sources of interest to the user;
Receiving, by the computer, a time frame of interest and a subject of interest;
Identifying a plurality of news content items to recommend to one of the users from the annotated news content items and the profile information, wherein each news content item is annotated corresponding to the topic of interest A topic, and a date in the received time frame of interest, the content items being selected at least in part according to their associated view count; And
Recommending the news contents items to the user
≪ / RTI >
제1항에 있어서,
적어도 하나의 위치로 상기 복수의 뉴스 콘텐츠 항목들 각각에 주석을 다는 단계; 및
상기 컴퓨터에 의해, 관심 대상인 위치를 수신하는 단계
를 더 포함하고,
상기 식별된 뉴스 콘텐츠 항목들은 상기 관심 대상인 위치에 대응하는 주석이 달린 위치들을 갖는 방법.
The method according to claim 1,
Annotating each of the plurality of news content items to at least one location; And
Receiving, by the computer, a location of interest;
Further comprising:
Wherein the identified news content items have annotated locations corresponding to the location of interest.
제2항에 있어서,
상기 뉴스 콘텐츠 항목들에 주석을 다는 단계는,
인덱서에 의해, 상기 뉴스 콘텐츠 항목을 수신하는 단계;
토픽 분석기에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 토픽을 결정하는 단계;
지오로케이터 모듈(geolocator module)에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 위치를 결정하는 단계; 및
상기 결정된 토픽들 및 상기 결정된 위치들로 상기 뉴스 콘텐츠 항목에 주석을 다는 단계
를 더 포함하는 방법.
3. The method of claim 2,
The step of annotating the news content items comprises:
Receiving, by the indexer, the news content item;
Determining, by the topic analyzer, at least one topic associated with the news content item;
Determining, by a geolocator module, at least one location associated with the news content item; And
Annotating the news content item with the determined topics and the determined locations
≪ / RTI >
제2항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 단계는,
상기 사용자의 위치를 결정하는 단계; 및
상기 결정된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 단계
를 더 포함하는 방법.
3. The method of claim 2,
Wherein identifying the profile information for the user comprises:
Determining a location of the user; And
Identifying the determined location as a location of interest of the user
≪ / RTI >
제2항에 있어서,
상기 뉴스 콘텐츠 항목을 상기 사용자에게 추천하는 단계는,
사용자 디바이스 상의 사용자 인터페이스의 제1 영역에, 복수의 추천된 콘텐츠 항목들의 표시를 디스플레이하는 단계; 및
상기 사용자 인터페이스의 제2 영역에 지도를 디스플레이하는 단계 - 상기 지도는 상기 추천된 콘텐츠 항목들 각각과 관련된 위치를 나타내는 마커를 포함함 -
를 더 포함하는 방법.
3. The method of claim 2,
Wherein the step of recommending the news content item to the user comprises:
Displaying, in a first area of the user interface on the user device, an indication of a plurality of recommended content items; And
Displaying a map in a second area of the user interface, the map including a marker indicating a location associated with each of the recommended content items;
≪ / RTI >
제5항에 있어서,
상기 디스플레이되는 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목을 식별하는 사용자 입력을 수신하는 단계; 및
상기 수신된 사용자 입력에 응답하여, 상기 식별된 콘텐츠 항목의 위치를 나타내는 마커의 디스플레이를 강조하는 단계
를 더 포함하는 방법.
6. The method of claim 5,
Receiving a user input identifying a recommended content item of one of the displayed recommended content items; And
In response to the received user input, highlighting a display of a marker indicative of the location of the identified content item
≪ / RTI >
제6항에 있어서,
상기 사용자 입력에 의해 식별되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계를 더 포함하는 방법.
The method according to claim 6,
And removing the recommended content items not identified by the user input from the display.
제5항에 있어서,
상기 디스플레이된 마커들 중 하나의 마커를 식별하는 사용자 입력을 수신하는 단계; 및
상기 사용자 입력을 수신하는 것에 응답하여, 상기 식별된 마커와 관련되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계
를 더 포함하는 방법.
6. The method of claim 5,
Receiving a user input identifying a marker of one of the displayed markers; And
In response to receiving the user input, removing the recommended content items not associated with the identified marker from the display
≪ / RTI >
제1항에 있어서,
상기 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목의 표시의 상기 사용자에 의한 선택을 수신하는 단계; 및
상기 표시되는 추천된 콘텐츠 항목을 디스플레이하도록 상기 사용자 디바이스에 지시하는 단계
를 더 포함하는 방법.
The method according to claim 1,
Receiving a selection by the user of an indication of one of the recommended content items; And
Instructing the user device to display the displayed recommended content item
≪ / RTI >
제1항에 있어서,
상기 뉴스 콘텐츠 항목을 상기 사용자에게 추천하는 단계는,
사용자 디바이스 상의 사용자 인터페이스의 제1 영역에, 복수의 추천된 콘텐츠 항목들의 표시를 디스플레이하는 단계; 및
상기 사용자 인터페이스의 제2 영역에 타임라인을 디스플레이하는 단계 - 상기 타임라인은 상기 추천된 콘텐츠 항목들 각각과 관련된 타임라인을 따른 날짜를 나타내는 마커를 포함함 -
를 더 포함하는 방법.
The method according to claim 1,
Wherein the step of recommending the news content item to the user comprises:
Displaying, in a first area of the user interface on the user device, an indication of a plurality of recommended content items; And
Displaying a timeline in a second area of the user interface, the timeline including a marker indicating a date along a timeline associated with each of the recommended content items;
≪ / RTI >
제10항에 있어서,
상기 디스플레이되는 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목을 식별하는 사용자 입력을 수신하는 단계; 및
상기 수신된 사용자 입력에 응답하여, 상기 식별된 콘텐츠 항목의 날짜를 나타내는 마커의 디스플레이를 강조하는 단계
를 더 포함하는 방법.
11. The method of claim 10,
Receiving a user input identifying a recommended content item of one of the displayed recommended content items; And
In response to the received user input, highlighting a display of a marker indicating the date of the identified content item
≪ / RTI >
제11항에 있어서,
상기 사용자 입력에 의해 식별되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계를 더 포함하는 방법.
12. The method of claim 11,
And removing the recommended content items not identified by the user input from the display.
제10항에 있어서,
상기 디스플레이된 마커들 중 하나의 마커를 식별하는 사용자 입력을 수신하는 단계; 및
상기 사용자 입력을 수신하는 것에 응답하여, 상기 식별된 마커와 관련되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계
를 더 포함하는 방법.
11. The method of claim 10,
Receiving a user input identifying a marker of one of the displayed markers; And
In response to receiving the user input, removing the recommended content items not associated with the identified marker from the display
≪ / RTI >
사용자에게 뉴스 콘텐츠를 디스플레이하기 위한 컴퓨터 프로그램 제품으로서 - 상기 컴퓨터 프로그램 제품은 비일시적인 컴퓨터 판독가능 매체 상에 저장됨 -,
프로세서로 하여금 단계들을 실행하게 하도록 구성된 명령어들을 포함하고,
상기 단계들은,
복수의 뉴스 콘텐츠 항목들 각각에 대하여, 컴퓨터에 의해:
상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 날짜로 상기 뉴스 콘텐츠 항목에 주석을 다는 것;
각각의 주석이 달린 항목의 표시 및 관련된 주석들을 저장하는 것;
상기 뉴스 콘텐츠 항목들 각각에 대해, 상기 콘텐츠 항목이 뷰잉되는 횟수를 표시하는 카운트를 유지하는 것;
복수의 사용자들 각각에 대하여, 컴퓨터에 의해:
상기 사용자에 대한 프로파일 정보를 식별하는 것 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 뉴스 소스들을 포함함 -;
상기 컴퓨터에 의해, 관심 대상인 토픽 및 관심 대상인 타임프레임을 수신하는 것;
상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자들 중 하나의 사용자에게 추천할 복수의 뉴스 콘텐츠 항목들을 식별하는 것 - 각각의 뉴스 콘텐츠 항목은 상기 관심 대상인 토픽에 대응하는 주석이 달린 토픽, 및 상기 수신된 관심 대상인 타임프레임 내의 날짜를 갖고, 상기 콘텐츠 항목들은 적어도 부분적으로 그들의 관련된 뷰 카운트에 따라 선택됨 -; 및
상기 뉴스 콘텐츠 항목들을 상기 사용자에게 추천하는 것
을 포함하는 컴퓨터 프로그램 제품.
11. A computer program product for displaying news content to a user, the computer program product being stored on a non-volatile computer readable medium,
Instructions configured to cause the processor to perform steps,
The steps,
For each of a plurality of news content items, the computer:
Annotating the news content item with at least one topic and at least one date associated with the content of the item;
Storing an indication of each annotated item and associated annotations;
Maintaining, for each of the news content items, a count indicating the number of times the content item is viewed;
For each of the plurality of users, by a computer:
Identifying profile information for the user, the profile information including a plurality of news sources of interest to the user;
Receiving, by the computer, a time frame of interest and a subject of interest;
Identifying a plurality of news content items to recommend to one of the users from the annotated news content items and the profile information, wherein each news content item is annotated corresponding to the topic of interest A topic, and a date in the received time frame of interest, the content items being selected at least in part according to their associated view count; And
Recommending the news content items to the user
≪ / RTI >
제14항에 있어서,
상기 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목의 표시의 상기 사용자에 의한 선택을 수신하기 위한 명령어들; 및
상기 표시되는 추천된 콘텐츠 항목을 디스플레이하도록 상기 사용자 디바이스에 지시하기 위한 명령어들
을 더 포함하는 컴퓨터 프로그램 제품.
15. The method of claim 14,
Instructions for receiving a selection by the user of an indication of one of the recommended content items; And
Instructions for instructing the user device to display the displayed recommended content item
≪ / RTI >
제14항에 있어서,
상기 뉴스 콘텐츠 항목을 상기 사용자에게 추천하는 것은,
사용자 디바이스 상의 사용자 인터페이스의 제1 영역에, 복수의 추천된 콘텐츠 항목들의 표시를 디스플레이하는 것; 및
상기 사용자 인터페이스의 제2 영역에 타임라인을 디스플레이하는 것 - 상기 타임라인은 상기 추천된 콘텐츠 항목들 각각과 관련된 타임라인을 따른 날짜를 나타내는 마커를 포함함 -
을 더 포함하는 컴퓨터 프로그램 제품.
15. The method of claim 14,
The recommendation of the news contents item to the user,
Displaying in the first area of the user interface on the user device an indication of a plurality of recommended content items; And
Displaying a timeline in a second area of the user interface, the timeline including a marker indicating a date along a timeline associated with each of the recommended content items;
≪ / RTI >
제16항에 있어서,
상기 디스플레이되는 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목을 식별하는 사용자 입력을 수신하기 위한 명령어들; 및
상기 수신된 사용자 입력에 응답하여, 상기 식별된 콘텐츠 항목의 날짜를 나타내는 마커의 디스플레이를 강조하기 위한 명령어들
을 더 포함하는 컴퓨터 프로그램 제품.
17. The method of claim 16,
Instructions for receiving a user input identifying one recommended content item of the displayed recommended content items; And
In response to the received user input, instructions for highlighting the display of the marker indicating the date of the identified content item
≪ / RTI >
제17항에 있어서,
상기 사용자 입력에 의해 식별되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하기 위한 명령어들을 더 포함하는 컴퓨터 프로그램 제품.
18. The method of claim 17,
Further comprising instructions for removing the recommended content items that are not identified by the user input from the display.
제16항에 있어서,
상기 디스플레이된 마커들 중 하나의 마커를 식별하는 사용자 입력을 수신하기 위한 명령어들; 및
상기 사용자 입력을 수신하는 것에 응답하여, 상기 식별된 마커와 관련되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하기 위한 명령어들
을 더 포함하는 컴퓨터 프로그램 제품.
17. The method of claim 16,
Instructions for receiving a user input identifying a marker of one of the displayed markers; And
In response to receiving the user input, instructions for removing the recommended content items not associated with the identified marker from the display
≪ / RTI >
사용자에게 뉴스 콘텐츠를 디스플레이하기 위한 방법으로서,
복수의 뉴스 콘텐츠 항목들 각각에 대하여, 컴퓨터에 의해:
상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 위치로 상기 뉴스 콘텐츠 항목에 주석을 다는 단계;
각각의 주석이 달린 항목의 표시 및 관련된 주석들을 저장하는 단계;
복수의 사용자들 각각에 대하여, 컴퓨터에 의해:
상기 사용자에 대한 프로파일 정보를 식별하는 단계 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 토픽들, 및 상기 사용자의 관심 대상인 적어도 하나의 위치를 포함함 -;
상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자들 중 하나의 사용자에게 추천할 뉴스 콘텐츠 항목을 식별하는 단계; 및
상기 뉴스 콘텐츠 항목을 상기 사용자에게 추천하는 단계
를 포함하는 방법.
A method for displaying news content to a user,
For each of a plurality of news content items, the computer:
Annotating the news content item with at least one topic and at least one location associated with the content of the item;
Storing an indication of each annotated item and associated annotations;
For each of the plurality of users, by a computer:
Identifying profile information for the user, the profile information including a plurality of topics of interest to the user and at least one location of interest of the user;
Identifying a news content item to be recommended to one of the users from the annotated news content items and the profile information; And
Recommending the news content item to the user
≪ / RTI >
제20항에 있어서,
상기 뉴스 콘텐츠 항목들에 주석을 다는 단계는,
인덱서에 의해, 상기 뉴스 콘텐츠 항목을 수신하는 단계;
토픽 분석기에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 토픽을 결정하는 단계;
지오로케이터 모듈에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 위치를 결정하는 단계; 및
상기 결정된 토픽들 및 상기 결정된 위치들로 상기 뉴스 콘텐츠 항목에 주석을 다는 단계
를 더 포함하는 방법.
21. The method of claim 20,
The step of annotating the news content items comprises:
Receiving, by the indexer, the news content item;
Determining, by the topic analyzer, at least one topic associated with the news content item;
Determining, by the geo-locator module, at least one location associated with the news content item; And
Annotating the news content item with the determined topics and the determined locations
≪ / RTI >
제20항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 단계는,
상기 사용자의 위치를 결정하는 단계; 및
상기 결정된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 단계
를 더 포함하는 방법.
21. The method of claim 20,
Wherein identifying the profile information for the user comprises:
Determining a location of the user; And
Identifying the determined location as a location of interest of the user
≪ / RTI >
제20항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 단계는,
상기 사용자에 의해 특정된 위치를 수신하는 단계; 및
상기 수신된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 단계
를 더 포함하는 방법.
21. The method of claim 20,
Wherein identifying the profile information for the user comprises:
Receiving a location specified by the user; And
Identifying the received location as a location of interest of the user
≪ / RTI >
제20항에 있어서,
상기 뉴스 콘텐츠 항목을 상기 사용자에게 추천하는 단계는,
사용자 디바이스 상의 사용자 인터페이스의 제1 영역에, 복수의 추천된 콘텐츠 항목들의 표시를 디스플레이하는 단계; 및
상기 사용자 인터페이스의 제2 영역에 지도를 디스플레이하는 단계 - 상기 지도는 상기 추천된 콘텐츠 항목들 각각과 관련된 위치를 나타내는 마커를 포함함 -
를 더 포함하는 방법.
21. The method of claim 20,
Wherein the step of recommending the news content item to the user comprises:
Displaying, in a first area of the user interface on the user device, an indication of a plurality of recommended content items; And
Displaying a map in a second area of the user interface, the map including a marker indicating a location associated with each of the recommended content items;
≪ / RTI >
제24항에 있어서,
상기 디스플레이되는 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목을 식별하는 사용자 입력을 수신하는 단계; 및
상기 수신된 사용자 입력에 응답하여, 상기 식별된 콘텐츠 항목의 위치를 나타내는 마커의 디스플레이를 강조하는 단계
를 더 포함하는 방법.
25. The method of claim 24,
Receiving a user input identifying a recommended content item of one of the displayed recommended content items; And
In response to the received user input, highlighting a display of a marker indicative of the location of the identified content item
≪ / RTI >
제25항에 있어서,
상기 사용자 입력에 의해 식별되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계를 더 포함하는 방법.
26. The method of claim 25,
And removing the recommended content items not identified by the user input from the display.
제24항에 있어서,
상기 디스플레이된 마커들 중 하나의 마커를 식별하는 사용자 입력을 수신하는 단계; 및
상기 사용자 입력을 수신하는 것에 응답하여, 상기 식별된 마커와 관련되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계
를 더 포함하는 방법.
25. The method of claim 24,
Receiving a user input identifying a marker of one of the displayed markers; And
In response to receiving the user input, removing the recommended content items not associated with the identified marker from the display
≪ / RTI >
제20항에 있어서,
상기 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목의 표시의 상기 사용자에 의한 선택을 수신하는 단계; 및
상기 표시되는 추천된 콘텐츠 항목을 디스플레이하도록 상기 사용자 디바이스에 지시하는 단계
를 더 포함하는 방법.
21. The method of claim 20,
Receiving a selection by the user of an indication of one of the recommended content items; And
Instructing the user device to display the displayed recommended content item
≪ / RTI >
사용자에게 뉴스 콘텐츠를 디스플레이하기 위한 컴퓨터 프로그램 제품으로서 - 상기 컴퓨터 프로그램 제품은 비일시적인 컴퓨터 판독가능 매체 상에 저장됨 -,
프로세서로 하여금 단계들을 실행하게 하도록 구성된 명령어들을 포함하고,
상기 단계들은,
복수의 뉴스 콘텐츠 항목들 각각에 대하여:
상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 위치로 상기 뉴스 콘텐츠 항목에 주석을 다는 것;
각각의 주석이 달린 항목의 표시 및 관련된 주석들을 저장하는 것;
복수의 사용자들 각각에 대하여:
상기 사용자에 대한 프로파일 정보를 식별하는 것 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 토픽들, 및 상기 사용자의 관심 대상인 적어도 하나의 위치를 포함함 -;
상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자들 중 하나의 사용자에게 추천할 뉴스 콘텐츠 항목을 식별하는 것; 및
상기 뉴스 콘텐츠 항목을 상기 사용자에게 추천하는 것
을 포함하는 컴퓨터 프로그램 제품.
11. A computer program product for displaying news content to a user, the computer program product being stored on a non-volatile computer readable medium,
Instructions configured to cause the processor to perform steps,
The steps,
For each of the plurality of news content items:
Annotating the news content item with at least one topic and at least one location associated with the content of the item;
Storing an indication of each annotated item and associated annotations;
For each of the plurality of users:
Identifying profile information for the user, the profile information including a plurality of topics of interest to the user and at least one location of interest of the user;
Identifying a news content item to recommend to one of the users from the annotated news content items and the profile information; And
Recommending the news content item to the user
≪ / RTI >
제29항에 있어서,
상기 뉴스 콘텐츠 항목들에 주석을 다는 것은,
인덱서에 의해, 상기 뉴스 콘텐츠 항목을 수신하는 것;
토픽 분석기에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 토픽을 결정하는 것;
지오로케이터 모듈에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 위치를 결정하는 것; 및
상기 결정된 토픽들 및 상기 결정된 위치들로 상기 뉴스 콘텐츠 항목에 주석을 다는 것
을 더 포함하는 컴퓨터 프로그램 제품.
30. The method of claim 29,
Annotating the news content items may include:
Receiving, by the indexer, the news content item;
Determining, by the topic analyzer, at least one topic associated with the news content item;
Determining, by the geo-locator module, at least one location associated with the news content item; And
Annotating the news content item with the determined topics and the determined locations
≪ / RTI >
제29항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 것은,
상기 사용자의 위치를 결정하는 것; 및
상기 결정된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 것
을 더 포함하는 컴퓨터 프로그램 제품.
30. The method of claim 29,
Identifying the profile information for the user,
Determining a position of the user; And
Identifying the determined location as a location of interest of the user
≪ / RTI >
제29항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 것은,
상기 사용자에 의해 특정된 위치를 수신하는 것; 및
상기 수신된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 것
을 더 포함하는 컴퓨터 프로그램 제품.
30. The method of claim 29,
Identifying the profile information for the user,
Receiving a location specified by the user; And
Identifying the received location as a location of interest of the user
≪ / RTI >
제29항에 있어서,
상기 뉴스 콘텐츠 항목을 상기 사용자에게 추천하는 것은,
사용자 디바이스 상의 사용자 인터페이스의 제1 영역에, 복수의 추천된 콘텐츠 항목들의 표시를 디스플레이하는 것; 및
상기 사용자 인터페이스의 제2 영역에 지도를 디스플레이하는 것 - 상기 지도는 상기 추천된 콘텐츠 항목들 각각과 관련된 위치를 나타내는 마커를 포함함 -
을 더 포함하는 컴퓨터 프로그램 제품.
30. The method of claim 29,
The recommendation of the news contents item to the user,
Displaying in the first area of the user interface on the user device an indication of a plurality of recommended content items; And
Displaying a map in a second area of the user interface, the map including a marker indicating a location associated with each of the recommended content items;
≪ / RTI >
제33항에 있어서,
상기 디스플레이되는 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목을 식별하는 사용자 입력을 수신하는 것; 및
상기 수신된 사용자 입력에 응답하여, 상기 식별된 콘텐츠 항목의 위치를 나타내는 마커의 디스플레이를 강조하는 것
을 더 포함하는 컴퓨터 프로그램 제품.
34. The method of claim 33,
Receiving a user input identifying one recommended content item of the displayed recommended content items; And
In response to the received user input, highlighting the display of the marker indicating the location of the identified content item
≪ / RTI >
제34항에 있어서,
상기 사용자 입력에 의해 식별되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 것을 더 포함하는 컴퓨터 프로그램 제품.
35. The method of claim 34,
And removing the recommended content items not identified by the user input from the display.
제33항에 있어서,
상기 디스플레이된 마커들 중 하나의 마커를 식별하는 사용자 입력을 수신하는 것; 및
상기 사용자 입력을 수신하는 것에 응답하여, 상기 식별된 마커와 관련되지 않는 상기 추천된 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 것
을 더 포함하는 컴퓨터 프로그램 제품.
34. The method of claim 33,
Receiving a user input identifying a marker of the displayed markers; And
In response to receiving the user input, removing the recommended content items not associated with the identified marker from the display
≪ / RTI >
제29항에 있어서,
상기 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목의 표시의 상기 사용자에 의한 선택을 수신하는 것; 및
상기 표시되는 추천된 콘텐츠 항목을 디스플레이하도록 상기 사용자 디바이스에 지시하는 것
을 더 포함하는 컴퓨터 프로그램 제품.
30. The method of claim 29,
Receiving a selection by the user of an indication of one of the recommended content items; And
Instructing the user device to display the displayed recommended content item
≪ / RTI >
뉴스 콘텐츠를 사용자에게 추천하기 위한 시스템으로서,
프로세서;
상기 프로세서에 의해 실행되는 인제스트 모듈(ingest module) - 상기 인제스트 모듈은, 복수의 뉴스 콘텐츠 항목들 각각에 대하여,
상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 위치로 상기 뉴스 콘텐츠 항목에 주석을 달고;
각각의 주석이 달린 항목의 표시 및 관련된 주석들을 저장하도록
구성됨 -;
상기 프로세서에 의해 실행되고, 상기 인제스트 모듈에 결합되며, 복수의 사용자들 각각에 대하여, 상기 사용자에 대한 프로파일 정보를 식별하도록 구성된 프로파일 엔진 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 토픽들, 및 상기 사용자의 관심 대상인 적어도 하나의 위치를 포함함 -;
상기 프로세서에 의해 실행되고, 상기 프로파일 엔진에 결합되며, 상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자들 중 하나의 사용자에게 추천할 복수의 뉴스 콘텐츠 항목들을 식별하도록 구성된 추천 발생기; 및
상기 프로세서에 의해 실행되고, 상기 추천 엔진에 결합되며, 상기 뉴스 콘텐츠 항목들을 상기 사용자에게 추천하도록 되어 있는 뉴스 전달 모듈
을 포함하는 시스템.
A system for recommending news content to a user,
A processor;
An ingest module executed by the processor, the ingest module, for each of the plurality of news content items,
Annotating the news content item with at least one topic and at least one location associated with the content of the item;
To store an indication of each annotated item and associated annotations
Configured -;
A profile engine, executed by the processor, coupled to the ingest module, the profile engine configured to identify profile information for the user for each of a plurality of users, the profile information comprising a plurality of topics, And at least one location that is of interest to the user;
A recommendation generator, executed by the processor, coupled to the profile engine, the recommendation generator configured to identify, from the annotated news content items and the profile information, a plurality of news content items to recommend to one of the users; And
A news delivery module that is executed by the processor and is coupled to the recommendation engine and is adapted to recommend the news content items to the user,
≪ / RTI >
제38항에 있어서,
상기 프로세서에 의해 실행되며, 상기 뉴스 전달 모듈에 결합된 지도 엔진을 더 포함하고,
상기 지도 엔진은,
사용자 디바이스 상에 지도를 디스플레이하고, 상기 지도는 상기 추천된 뉴스 콘텐츠 항목들 중 적어도 하나와 관련된 마커를 포함함 -;
상기 사용자 디바이스로부터 새로운 지리적 위치의 명세(specification)를 수신하고;
상기 요청을 수신하는 것에 응답하여, 상기 사용자에게 추천할 제2 복수의 뉴스 콘텐츠 항목들을 상기 추천 발생기로부터 획득하고 - 상기 제2 복수의 뉴스 콘텐츠 항목들은 상기 새로운 지리적 위치와 관련된 뉴스 콘텐츠 항목들을 포함함 -;
상기 새로운 지리적 위치 및 상기 추천된 제2 복수의 뉴스 콘텐츠 항목들 중 적어도 하나와 관련된 마커를 포함하는 업데이트된 지도를 디스플레이하도록
되어 있는 시스템.
39. The method of claim 38,
Further comprising a map engine executed by the processor and coupled to the news delivery module,
The map engine,
Displaying a map on a user device, the map including markers associated with at least one of the recommended news content items;
Receive a specification of a new geographic location from the user device;
In response to receiving the request, obtaining a second plurality of news content items to recommend to the user from the recommendation generator, the second plurality of news content items including news content items related to the new geographical location -;
To display an updated map including the new geographic location and a marker associated with at least one of the recommended second plurality of news content items
System.
KR1020167021015A 2013-12-31 2014-12-31 Generating a news timeline and recommended news editions KR102117143B1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US14/144,551 US9569547B2 (en) 2013-12-31 2013-12-31 Generating a news timeline
US14/144,549 US9489112B2 (en) 2013-12-31 2013-12-31 Recommended news edition on a map using geo entities
US14/144,549 2013-12-31
US14/144,551 2013-12-31
PCT/IB2014/067452 WO2015101945A1 (en) 2013-12-31 2014-12-31 Generating a news timeline and recommended news editions

Publications (2)

Publication Number Publication Date
KR20160104067A true KR20160104067A (en) 2016-09-02
KR102117143B1 KR102117143B1 (en) 2020-05-29

Family

ID=53493352

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167021015A KR102117143B1 (en) 2013-12-31 2014-12-31 Generating a news timeline and recommended news editions

Country Status (5)

Country Link
EP (1) EP3090403A4 (en)
JP (1) JP6594317B2 (en)
KR (1) KR102117143B1 (en)
CN (1) CN105849765A (en)
WO (1) WO2015101945A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180049852A (en) 2016-11-03 2018-05-14 세종대학교산학협력단 News recommedation server and method for recommendation news of using the same

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101946586B1 (en) 2015-10-08 2019-02-12 구글 엘엘씨 Mixing content into a content stream
CN106354837A (en) * 2016-08-31 2017-01-25 上海交通大学 Method for visualizing news
CN110019837B (en) * 2017-12-22 2021-07-16 百度在线网络技术(北京)有限公司 User portrait generation method and device, computer equipment and readable medium
CN112100408B (en) * 2020-08-24 2022-05-31 北京完美知识科技有限公司 Historical entity data display method, device and equipment
WO2023095088A1 (en) * 2021-11-29 2023-06-01 Jio Platforms Limited System and methods for retrieving and generating recommendations of multi-modal documents

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120104648A (en) * 2010-10-26 2012-09-24 주식회사 케이티 Apparatus and method for recommending person tailored contents and its system and method

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020070967A1 (en) * 2000-12-08 2002-06-13 Tanner Timothy T. Method and apparatus for map display of news stories
JP2005176033A (en) * 2003-12-12 2005-06-30 Canon Inc Program for operating video receiving/reproducing apparatus, computer-readable storage medium recording this program, video receiving/reproducing apparatus and method thereof
US8676837B2 (en) * 2003-12-31 2014-03-18 Google Inc. Systems and methods for personalizing aggregated news content
KR100650119B1 (en) * 2005-07-06 2006-11-27 어윤형 A news supplying system with a global timepiece
US20080082578A1 (en) * 2006-09-29 2008-04-03 Andrew Hogue Displaying search results on a one or two dimensional graph
JP4538038B2 (en) * 2007-10-11 2010-09-08 日本電信電話株式会社 Information distribution apparatus, information distribution method, and information distribution program
JP5361272B2 (en) * 2008-07-28 2013-12-04 株式会社Jq Information management server, information management method, information management system, and program
CN101651634A (en) * 2008-08-13 2010-02-17 阿里巴巴集团控股有限公司 Method and system for providing regional information
US8423088B2 (en) * 2009-07-22 2013-04-16 Microsoft Corporation Aggregated, interactive communication timeline
EP2557511B1 (en) * 2010-05-28 2019-05-01 Rakuten, Inc. Information processing device, information processing method, information processing programme, and recording medium
US8370348B1 (en) 2011-12-06 2013-02-05 Google Inc. Magazine edition recommendations
US8849829B2 (en) * 2011-12-06 2014-09-30 Google Inc. Trending search magazines

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120104648A (en) * 2010-10-26 2012-09-24 주식회사 케이티 Apparatus and method for recommending person tailored contents and its system and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180049852A (en) 2016-11-03 2018-05-14 세종대학교산학협력단 News recommedation server and method for recommendation news of using the same

Also Published As

Publication number Publication date
CN105849765A (en) 2016-08-10
KR102117143B1 (en) 2020-05-29
EP3090403A1 (en) 2016-11-09
WO2015101945A1 (en) 2015-07-09
JP6594317B2 (en) 2019-10-23
EP3090403A4 (en) 2017-07-05
JP2017501501A (en) 2017-01-12

Similar Documents

Publication Publication Date Title
US9569547B2 (en) Generating a news timeline
US9489112B2 (en) Recommended news edition on a map using geo entities
US10261669B2 (en) Publishing electronic documents utilizing navigation information
US20180246978A1 (en) Providing actions for onscreen entities
KR102117143B1 (en) Generating a news timeline and recommended news editions
US11706318B2 (en) Structured entity information page
US20160098164A1 (en) Interactive answer boxes for user search queries
EP3529714B1 (en) Animated snippets for search results
US9563695B2 (en) Personalized electronic magazine
US9268858B1 (en) Previewing content based on detected customer activities
US20090005032A1 (en) Viewing Digital Content on a Mobile Device
US20240086479A1 (en) Identification and Issuance of Repeatable Queries
WO2014059652A1 (en) Location-aware content detection
CN107003829B (en) Request-related result regions within and outside of view for each result category
US20160371708A1 (en) Method and apparatus for determining a user's level of interest in web-based content
US20150074599A1 (en) Mobile video channel-based gestural user interface
US11003830B2 (en) Providing location-based font recommendations
US8903817B1 (en) Determining search relevance from user feedback
JP2014222474A (en) Information processor, method and program
JP2017161963A (en) Video searching device and program
JP5846033B2 (en) Information processing device, terminal device, information processing method, display method, information processing program, and display program
CN110659406A (en) Searching method and device
WO2019140959A1 (en) Searching method and device and server
JP2011065633A (en) System, method and program for providing information

Legal Events

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