KR102117143B1 - 뉴스 타임라인 및 추천된 뉴스 에디션들의 발생 - Google Patents
뉴스 타임라인 및 추천된 뉴스 에디션들의 발생 Download PDFInfo
- Publication number
- KR102117143B1 KR102117143B1 KR1020167021015A KR20167021015A KR102117143B1 KR 102117143 B1 KR102117143 B1 KR 102117143B1 KR 1020167021015 A KR1020167021015 A KR 1020167021015A KR 20167021015 A KR20167021015 A KR 20167021015A KR 102117143 B1 KR102117143 B1 KR 102117143B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- news content
- content items
- news
- location
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 47
- 239000003550 marker Substances 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 abstract description 20
- 230000006870 function Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 210000003141 lower extremity Anatomy 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- VEMKTZHHVJILDY-UHFFFAOYSA-N resmethrin Chemical compound CC1(C)C(C=C(C)C)C1C(=O)OCC1=COC(CC=2C=CC=CC=2)=C1 VEMKTZHHVJILDY-UHFFFAOYSA-N 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
- G06Q30/0224—Discounts or incentives, e.g. coupons or rebates based on user history
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Tourism & Hospitality (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Game Theory and Decision Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
설명된 실시예들은, 사용자의 관심 대상일 가능성이 있으며 사용자의 위치 또는 관심 대상 영역에 시간적으로 및/또는 지리적으로 관련있는 뉴스 기사들 또는 다른 콘텐츠를 사용자에게 제시하는 것을 가능하게 한다. 뉴스 전달 시스템은, 토픽들, 위치들 및 날짜들을 이용가능한 콘텐츠에 할당하는 인제스트 모듈, 특정한 사용자가 관련있다고 찾는 프로파일 토픽들 및 지리적 위치들을 결정하는 프로파일 엔진, 및 인제스트 모듈 및 프로파일 엔진의 동작 및 원하는 타임프레임에 기초하여 사용자를 위한 콘텐츠를 선택하는 뉴스 전달 모듈을 포함한다. 한 실시예에서, 프로파일 엔진은 사용자의 프로파일로부터 오래된 토픽들 및 위치들을 제거하기 위해 감쇠 처리를 수행한다. 관련된 양태들에서, 프로파일 엔진은 사용자에 대한 다수의 프로파일들을 유지한다.
Description
설명된 실시예들은 컴퓨팅 디바이스들의 사용자들에 대한 뉴스 기사들의 디스플레이에 관한 것이며, 구체적으로는 사용자의 지리적 관심 대상인 또는 시간에 따른 특정한 토픽들에 관련된 뉴스 기사들의 선택 및 디스플레이에 관한 것이다.
컴퓨터들, 태블릿들, 스마트폰들 및 다른 네트워크-가능 디바이스들의 사용자들은 네트워크를 통해 뉴스 콘텐츠에 액세스할 수 있다. 예를 들어, 많은 신문들 및 정기 간행물들은 무료로 또는 다양한 가입 정책들을 통해 독자들에게 이용가능한 온라인 에디션들을 갖는다.
많은 뉴스 소비자들은 예를 들어 뉴스 소스 자체와 관련된 웹 사이트에 대한 URL에 액세스함으로써 직접적으로 이러한 콘텐츠에 액세스하지만, 다른 소비자들은 본질적으로 다른 소스들로부터의 뉴스 콘텐츠를 단일의 사용자 인터페이스에서 사용자에게 제시하는 뉴스 애그리게이터들을 이용한다. 뉴스 소비자는 다음에 관심 있는 특정한 콘텐츠를 선택하고, 뉴스 애그리게이터를 통해 그 콘텐츠에 지향될 수 있다.
많은 토픽들은 헤드라인들로부터 사라지고, 몇 주, 몇 달 또는 몇 년 후에 다시 나타난다. 일부 뉴스 소비자들은 특정한 토픽의 이력적 컨텍스트에 친숙하지 않을 수 있고, 이는 잠재적으로 부정적인 사용자 경험, 예를 들어 현재의 스토리의 중대성을 인식하는 능력의 감소를 초래한다.
설명된 실시예들은 사용자의 관심 대상인 타임프레임 내에 생성되었거나 게재된 또는 사용자의 위치나 관심 있는 영역과 지리적으로 관련되는 특정한 토픽 또는 위치에 관한 뉴스 기사들 또는 다른 콘텐츠를 사용자에게 제시하는 것을 가능하게 한다.
뉴스 전달 시스템은 토픽들 및 위치들을 이용가능한 콘텐츠에 할당하는 인제스트 모듈, 특정한 사용자가 관련있다고 찾는 프로파일 토픽들, 뉴스 소스들 및 지리적 위치들을 결정하는 프로파일 엔진, 및 인제스트 모듈 및 프로파일 엔진의 동작에 기초하여 사용자를 위한 콘텐츠를 선택하는 뉴스 전달 모듈을 포함한다.
한 실시예에서, 프로파일 엔진은 사용자의 프로파일로부터 오래된 토픽들 및 위치들을 제거하기 위해 감쇠 처리(decay processing)를 수행한다. 관련된 양태들에서, 프로파일 엔진은 사용자를 위한 다수의 프로파일들을 유지한다,
도 1은 한 실시예에 따른 사용자들에게 뉴스 콘텐츠를 제공하기 위한 시스템의 예시이다.
도 2는 사용자에게 토픽적으로 및 지리적으로 관련있는 뉴스 콘텐츠를 제공하기 위한 하이 레벨 단계들을 도시하는 플로우차트이다.
도 3은 한 실시예에 따른 사용자의 읽기 관심들(reading interests)을 결정하기 위한 방법을 도시한다.
도 4는 한 실시예에 따른 프로파일 엔진을 도시한다.
도 5는 한 실시예에 따른 사용자에게 지리적으로 및 토픽적으로 관련있는 뉴스 콘텐츠를 디스플레이하기 위한 방법을 도시하는 플로우차트이다.
도 6은 한 실시예에 따른 관심 있는 지리적 영역을 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 7은 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 8은 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 9는 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 10은 한 실시예에 따른 관심 있는 토픽 및 타임프레임을 특정하기 위한 사용자 인터페이스의 예를 도시한다.
도 11은 한 실시예에 따른 사용자에게 지리적으로, 시간적으로 및 토픽적으로 관련있는 뉴스 콘텐츠를 디스플레이하기 위한 방법을 도시하는 플로우차트이다.
도 12는 한 실시예에 따른 예시적인 컴퓨터 아키텍처를 도시한다.
도면들은 단지 예시의 목적으로만 실시예들을 도시한다. 본 기술분야의 통상의 기술자라면, 다음의 논의로부터, 본 명세서에 도시된 구조들 및 방법들의 대안적인 실시예들은 본 명세서에 설명된 원리들로부터 벗어나지 않고서 이용될 수 있다는 것을 손쉽게 인식할 것이다.
도 2는 사용자에게 토픽적으로 및 지리적으로 관련있는 뉴스 콘텐츠를 제공하기 위한 하이 레벨 단계들을 도시하는 플로우차트이다.
도 3은 한 실시예에 따른 사용자의 읽기 관심들(reading interests)을 결정하기 위한 방법을 도시한다.
도 4는 한 실시예에 따른 프로파일 엔진을 도시한다.
도 5는 한 실시예에 따른 사용자에게 지리적으로 및 토픽적으로 관련있는 뉴스 콘텐츠를 디스플레이하기 위한 방법을 도시하는 플로우차트이다.
도 6은 한 실시예에 따른 관심 있는 지리적 영역을 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 7은 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 8은 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 9는 한 실시예에 따른 지도와 관련하여 뉴스 콘텐츠를 디스플레이하기 위한 사용자 인터페이스를 도시한다.
도 10은 한 실시예에 따른 관심 있는 토픽 및 타임프레임을 특정하기 위한 사용자 인터페이스의 예를 도시한다.
도 11은 한 실시예에 따른 사용자에게 지리적으로, 시간적으로 및 토픽적으로 관련있는 뉴스 콘텐츠를 디스플레이하기 위한 방법을 도시하는 플로우차트이다.
도 12는 한 실시예에 따른 예시적인 컴퓨터 아키텍처를 도시한다.
도면들은 단지 예시의 목적으로만 실시예들을 도시한다. 본 기술분야의 통상의 기술자라면, 다음의 논의로부터, 본 명세서에 도시된 구조들 및 방법들의 대안적인 실시예들은 본 명세서에 설명된 원리들로부터 벗어나지 않고서 이용될 수 있다는 것을 손쉽게 인식할 것이다.
시스템 개략
도 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)과 함께 이용될 수 있다.
시스템(100)은 네트워크(도시되지 않음)를 통해 뉴스 소스들(120) 및 사용자 디바이스(130)와 통신한다. 네트워크는 전형적으로 인터넷이지만, LAN, MAN, WAN, 모바일, 유선 또는 무선 네트워크, 사설 네트워크, 또는 가상 사설 네트워크의 임의의 조합을 포함하지만 이에 제한되지는 않는 임의의 네트워크일 수 있다. 시스템(100)은 네트워크 인터페이스를 통해 네트워크에 접속된다.
뉴스 소스(120)는 인터넷과 같은 네트워크를 통해 시스템(100)에 그리고 사용자 디바이스(130)에 직접적으로 또는 간접적으로 액세스가능한 텍스트, 오디오, 또는 비디오 콘텐츠, 또는 이들의 조합을 포함한다. 각각의 뉴스 소스(120)는 애드 혹으로 또는 주기적 방식으로 하나 이상의 뉴스 콘텐츠 항목을 제공한다. 예를 들어, 뉴스 소스는 잡지, 신문, 라디오 방송국 또는 텔레비전 방송국과 관련된 웹 사이트일 수 있다. 뉴스 소스(120)는 그것의 콘텐츠를 무료로 또는 소정의 비용으로 시스템(100) 및 사용자 디바이스(130)와 같은 뷰어들에게 이용가능하게 한다. 본 설명에서, 우리는 이러한 유형의 콘텐츠를 뉴스 콘텐츠, 뉴스 기사들 및 기사들이라고 교환가능하게 지칭한다. 그러나, 본 기술분야의 통상의 기술자라면, 본 개시내용으로부터, 설명된 실시예들은 그 자체로 뉴스 콘텐츠뿐만 아니라, 일반적으로 관련된 토픽들 및 위치들을 갖는 문서들의 임의의 코퍼스에 대한 애플리케이션을 갖는다는 것을 이해할 것이다.
인제스트 모듈(102)은 뉴스 소스들(120)에 의해 제공된 뉴스 콘텐츠를 발견, 분석 및 인덱싱한다. 인덱서(118)는 한 실시예에서 뉴스 소스들(120) 및 그들 소스를 통해 이용가능한 임의의 기사들을 크롤링하고 발견한다. 토픽 분석기(104) 및 지오로케이터(106)는 아래에 상세히 설명되는 바와 같이 가중된 토픽들 및 위치들을 인덱싱된 뉴스 콘텐츠로 하고, 기사 데이터베이스(108)에 콘텐츠 및 속성들의 표시를 저장한다.
프로파일 엔진(112)은 어떤 콘텐츠가 사용자에 적절할 수 있는지에 관련되는 사용자 특성들을 획득 및 저장하기 위해, 도 3과 관련하여 아래에 상세히 설명되는 바와 같이, 그 사용자에 특정한 정보를 처리한다. 추천 발생기(116)는, 아래에 상세히 설명되는 바와 같이, 뉴스 소스(120)에 의해 이용가능하게 된 어떤 자료가 사용자 디바이스(130)에 제시되는 것이 가장 적절한지를 결정하기 위한 처리를 제공한다. 사용자 추천 발생기(116)는, 인덱서(118)에 대한 질의들의 결과들 및 사용자에 대해 이용가능한 프로파일 정보에 기초하여, 사용자 디바이스(130)를 위한 특정한 콘텐츠를 발생시킨다.
뉴스 전달 모듈(114)은 토픽 또는 관련된 토픽들의 세트에 관한 뉴스 기사들의 큐레이팅된 리스트를 사용자 디바이스(130)에 제공한다. 한 실시예에서, 뉴스 전달 모듈(114)은 사용자 인터페이스, 예를 들어, 그들의 관련된 토픽들 또는 위치에 따라 분류될 수 있는 뉴스 콘텐츠 항목들의 리스트를 포함하는 웹 사이트 또는 모바일 애플리케이션을 제시한다. 사용자 디바이스(130)의 사용자는 관심 있는 항목들을 선택한 다음, 선택된 항목들에 지향될 수 있다. 예를 들어, 사용자는 기사의 섬네일 이미지 또는 스니펫을 선택하고, 콘텐츠를 호스팅하는 웹 사이트, 즉 뉴스 소스(120)에 지향될 수 있다. 다양한 실시예들에서, 뉴스 전달 모듈(114)은 아래에 설명되는 바와 같이 관심 있는 특정한 위치들, 관심 있는 토픽들, 관심 있는 타임프레임들, 또는 그것의 조합들과 관련된 콘텐츠 항목들을 추천한다.
사용자 디바이스(130)는 랩톱 또는 데스크톱 컴퓨터, 스마트폰, 태블릿, 또는 셀룰러 또는 광역 네트워크를 통해 시스템(100) 및 뉴스 소스(120)에 액세스할 수 있는 임의의 다른 디바이스일 수 있다. 사용자 디바이스(130)를 동작시키는 사용자는 개인, 개인들의 그룹, 법인체, 또는 자동화된 컴퓨터 시스템일 수 있다. 설명의 용이성을 위해, 우리는 일반적으로 "사용자"라고 지칭하고, 통상의 기술자라면, 이것이 컨텍스트에서 적절할 수 있는 바와 같이, 사용자 자신, 사용자의 디바이스, 또는 이 2개의 조합을 포함한다는 점을 인식할 것이다.
프로세스 개략
도 2는 사용자에게 토픽적으로, 시간적으로 및 지리적으로 관련있는 뉴스 콘텐츠를 제공하기 위한 하이 레벨 단계들을 도시하는 플로우차트이다. 시스템(100)은 뉴스 소스들(120)로부터 뉴스 콘텐츠를 획득하고, 콘텐츠에 관련있는 토픽들 및 위치들에 따라 그것에 주석을 단다(202). 프로파일 엔진(112)은 사용자의 읽기 관심들의 부분인 토픽들 및 위치들을 결정하고(204), 사용자 프로파일에 그 정보를 유지한다. 추천 발생기(116)는 사용자의 관심에 매칭되는 원하는 타임프레임 내로부터 콘텐츠를 선택하고(206), 그 콘텐츠를 사용자에게 추천한다(208). 우리는 이들 단계들 각각을 보다 상세히 아래에 설명한다.
인덱싱 및 토픽/위치 속성
인덱서(118)가 뉴스 콘텐츠 항목을 발견함에 따라, 토픽 분석기(104)는 콘텐츠 항목과 관련하게 될 하나 이상의 토픽을 식별한다. 한 실시예에서, 토픽들은 토픽들의 구글 지식 그래프(Google Knowledge Graph) 데이터베이스(도시되지 않음)를 이용하여 식별된다. 이 데이터베이스는 서로에 대한 그들의 관련성에 기초한 토픽들 간의 연결들뿐만 아니라, 알려진 토픽들의 매우 큰 집합을 포함한다. 다른 실시예들에서, 토픽들의 다른 집합들이 동작 환경을 위해 가장 적절한 것으로서 이용될 수 있다.
한 실시예에서, 인제스트 모듈(102)은 뉴스 소스(120)에 의해 제공된 콘텐츠의 임의의 새로운 항목(예를 들어, 뉴스 기사)을 받고, 토픽들로 그 항목에 주석을 달도록 구성된다. 예를 들어, 단어 "United"가 새로운 항목에서 비행기 여행에 관한 용어들과 관련하여 다수회 나타나면, "United Airlines" 또는 "UAL"의 토픽이 그 항목에 주석으로 달린다. 대신에 단어 "United"가 수송 또는 이사짐 운송 회사들과 관련한 용어들과 관련하여 다수회 나타나면, "United Van Lines"의 토픽이 그 항목에 주석으로 달린다. 일부 실시예들에서, 가중이 각각의 그러한 주석과 관련된다. 예를 들어, 한 항목에 대해 United Airlines이 United Van Lines보다 의도된 것이 매우 분명할 수 있지만, 다른 예들에서 항목에 대응하는 회사 토픽이 어떤 것인지 다소 불분명할 수 있다. 일부 실시예들에서, 인제스트 모듈(102)은 매일 수백만 개의 새로운 항목을 처리하고, 또한 위에 언급된 구글 지식 그래프 기능의 부분들을 이용하여 구현된다.
이러한 실시예들에서, 토픽 분석기(104)는 2개의 단계를 이용하여 항목에 대해 가장 관련있는 토픽들을 찾는다. 제1 단계는 항목에서 실제로 언급된 모든 토픽들을 찾는 것을 포함한다. 예를 들어, 단어 "United"는 위의 논의에 기초하여 적어도 2개의 알려진 토픽과 정확히 동일하여, 그들 토픽은 후보들로서 고려되고, 항목 내의 다른 용어들(예를 들어, "passengers" 및 O'Hare)에 기초하여 지식 그래프 기능은 하나를 선택하고, 예를 들어 그 토픽이 항목에서 얼마나 자주 나타나는지에 기초하여 그것에 가중을 준다. 제2 단계는 항목에서 분명히 언급되지 않은 관련된 토픽들을 찾고 또한 다른 토픽들과의 관계에 기초하여 토픽들을 리스코어링한다. 예를 들어, 뉴스 기사가 주 에어라인들에 직면하는 문제들을 논의하지만 그들 에어라인들 중 하나를 언급하지 못한다면, 그 누락된 에어라인에 대응하는 토픽은 그럼에도 불구하고 부가될 수 있다. 유사한 처리가 리스코어링을 위해 이용될 수 있는데 - 뉴스 기사에 관련하여 식별된 토픽들 만이 매우 밀접하게 관련된 토픽들이라면, 그들 토픽의 각각의 가중은 증가될 수 있다. 다른 실시예들에서, 상이한 가중 방식들이 특정한 응용을 위해 적절한 것으로서 이용된다.
토픽 분석기(104)는 다음에 가중된 토픽들로 뉴스 항목들에 주석을 달고, 뉴스 콘텐츠의 표시, 그것의 게재 또는 배포 날짜, 및 그것의 관련된 가중된 토픽들이 기사 데이터(108) 내에 저장된다.
지오로케이터(106)는 또한 콘텐츠 항목 자체 내에, 또는 임의의 관련된 메타데이터 내에 포함된 임의의 지리적 참조들을 식별하기 위해 뉴스 항목을 처리한다. 예를 들어, 콘텐츠 항목은 상기 예로부터, United Airlines와 같은 뉴스 기사일 수 있고, 기사는 Chicago 내의 United의 큰 존재를 논의할 수 있다. 또는 기사는 Boston, Massachusetts의 최근의 날씨 사건을 설명할 수 있거나; 미국 내에 살기 위해 이름; 또는 뉴스 스토리가 어디에 제출된 것인지를 식별하는 날짜 기입선을 포함하는 항목에 의해 수회 언급하는 최상의 도시들에 관한 뉴스 특징들일 수 있다. 지오로케이터(106)는 토픽 분석기(104)가 뉴스 콘텐츠 항목들과 관련된 토픽들을 발견하는 방식과 유사한 방식으로 위에 설명된 것들과 같이 지리적 위치들을 식별한다. 지오로케이터(106)는 지리적 위치로 콘텐츠 항목에 주석을 달고, 기사 데이터(108) 내에 콘텐츠 및 토픽 표시와 함께 지오태깅(geotagging) 정보를 저장한다. 주석이 달린 콘텐츠에 기초하여, 인덱서(118)는 그러므로 특정한 뉴스 콘텐츠 항목과 관련된 토픽들; 특정한 뉴스 콘텐츠 항목과 관련된 지리적 지점들; 특정한 토픽들과 관련된 뉴스 기사들; 및 특정한 지리적 위치들과 관련된 뉴스 기사들을 리턴할 수 있다. 또한, 각각의 콘텐츠 항목은 관련된 게재 또는 배포 날짜를 갖기 때문에, 인덱서(118)는 각각이 요청에서 특정된 타임프레임 내에(또는 타임프레임이 요청에서 달리 특정되지 않는다면, 디폴트 타임프레임 내에, 예를 들어, 과거의 날, 주, 달, 연도 등 내에) 들도록 리턴된 항목들을 제한 또는 확장할 수 있다.
사용자들의 읽기 관심들의 결정
이제 도 3을 참조하면, 특정한 사용자의 뉴스 콘텐츠 관심들을 결정하는 방법(300)의 한 실시예가 도시된다. 유사한 기술들이 사용자들의 소정의 그룹들의 뉴스 콘텐츠 관심들을 결정하기 위해 적용될 수 있고 역시, 다음에 그 그룹 내의 개인들에 및 그 그룹 내의 것들과 유사한 특성들을 갖는 개인들에 적용될 수 있다는 점에 유의해야 한다. 도 3에 도시된 예에서, 처리는 사용자 프로파일 데이터베이스(110)로부터 사용자에 대응하는 프로파일을 획득함으로써 단계(310)에서 시작된다. 이 프로파일은 자체-식별된 관심들, 및 사용자가 그런 권한이 있다면, 사용자가 읽은 기사들에 관한 이력적 정보, 사용자에 의해 선호된 뉴스 소스들, 및 사용자가 관심 있는 지리적 영역들과 같은, 사용자의 관심들에 관련한 자동적으로 저장된 정보와 같은, 사용자에 관한 정보를 포함한다. 한 실시예에서, 사용자가 모바일 애플리케이션 또는 웹 서비스(Google Play Newsstand 등)을 열 때, 방법(300)은 관련있는 프로파일 정보(예를 들어, 사용자 ID, 열려진 기사의 ID, 및 초기 처리를 위한 현재 시간 및 후속 처리를 위한 사용자 관심들의 스코어링된 리스트)를 획득한다(310). 오프라인 액세스를 위해, 어떤 기사가 열려졌는지와 액세스의 시간에 관한 정보가 저장되고 사용자가 온라인으로 들어오는 다음 시간에 사용자 프로파일 엔진(112)에 보내진다.
단계(320)에서, 사용자 프로파일 엔진(112)은 위에 상세히 설명된 바와 같이 기사 데이터베이스(108)로부터 기사 정보를 페치하고 그 기사를 위해 발생된 스코어링된 토픽들 및 위치들을 획득한다. 다음에, 단계(330)에서, 사용자의 관심 정보가 페치된다. 이것은 단계(310)에서 이전에 획득된 프로파일 정보로부터 이루어질 수 있거나, 프로파일 정보의 단지 이 양태에 대한 새로운 요청이 이용 환경 및 어떤 기술이 가장 효과적인지에 따라 이루어질 수 있다. 프로파일로부터의 관심 정보는 (예를 들어, 새로운 사용자를 위해) 공백으로 될 수 있거나 사용자 통계들(최종 업데이트 시간/카운터 정보)과 스코어링된 토픽들 및 위치들의 집합 둘 다를 포함할 수 있다. 각각의 스코어링된 토픽은 토픽 ID, 이 특정한 사용자에 대한 토픽에 대한 스코어, 및 이 사용자에 대한 이 토픽에 대한 시간/카운터 정보를 포함한다. 유사하게, 각각의 스코어링된 위치는 다양한 실시예들에서 위치 표시, 이 사용자에 대한 특정한 위치에 대한 스코어, 및 이 사용자에 대한 이 위치에 대한 시간/카운터 정보를 포함한다.
다음에, 기사로부터의 토픽들 및 위치들이 다음과 같이 단계(340)에서 (각각의 토픽 및 각각의 위치에 대한 스코어로) 사용자의 프로파일에 부가된다. 사용자의 프로파일이 이미 토픽을 포함하고 있으면, 그 토픽에 대한 스코어는 미리 정의된 수학적 함수를 이용하여 증가된다. 한 실시예에서, 특정한 토픽에 대한 사용자의 스코어는 사용자가 토픽에 대응하는 기사를 읽을 때마다 적절한 양만큼 증가된다. 사용자의 프로파일 내의 위치에 대한 스코어가 유사하게 증가된다. 앞서 언급된 O'Hare의 예를 계속하면, 사용자의 O'Hare 스코어는 현재 10일 수 있고 Chicago 스코어는 3일 수 있고; 사용자가 0.5의 O'Hare 토픽 스코어 및 1의 Chicago 위치 스코어를 갖는 기사를 읽으면, O'Hare에 대한 사용자의 새로운 스코어는 10.5로 증가되고, Chicago에 대한 사용자의 새로운 스코어는 4로 증가된다. 프로파일이 토픽 또는 위치를 이미 포함하고 있지 않으면, 새로운 스코어링된 토픽 또는 스코어링된 위치가 유사한 방식으로 프로파일에 부가된다. 이 단계에서, 각각의 토픽 및 위치에 대한 최종 업데이트 시간은 현재 시간으로 설정되고, 토픽 및 위치에 대한 카운터들은 증가되고; 프로파일에 대한 최종 업데이트 시간이 또한 업데이트되고, 프로파일에 대한 카운터가 또한 증가된다. 일부 실시예들에서, 최종 업데이트가 가장 최근이었다면 카운터들 중 하나 이상이 증가되지 않아서, 소정의 시간 기간(예를 들어, 일) 내에서 일어나는 모든 업데이트들은 하나로서 다루어진다.
주기적으로, 프로파일 내의 토픽들 및 위치들의 스코어들은 미리 정의된 감쇠 함수를 이용하여 감쇠되고(350); 한 실시예에서 기하급수적 감쇠가 적절히 사용자의 예전의 관심들을 단계적으로 중단하고 더 새로운 관심들을 보다 높은 것으로 랭크되게 하는 데 이용된다. 토픽 또는 위치의 최종 업데이트 카운터를 프로파일의 최종 업데이트 카운터와 비교함으로써, 사용자가 현재의 토픽 또는 위치와 관련되지 않은 콘텐츠를 얼마나 많은 횟수 읽은지가 알려진다. 그러므로, "오래된" 토픽들 및 위치들은 시간에 따라 강등된다. 단계(350)가 프로파일 업데이트와 관련하여 수행되는 것으로 이 실시예에서 도시되지만, 다른 실시예들에서 감쇠 처리는 예를 들어, 처리 리소스들이 보다 이용가능하게 될 때(예를 들어, 낮은 처리 사용량으로 하루의 시간 동안 주기적으로) 한 번에 임의의 특정한 업데이트와 독립하여 수행된다. 단계(360)에서, 낮은 스코어링 토픽들 및 위치들은 사용자의 프로파일로부터 절단, 즉 제거된다. 이것은 처리 오버헤드를 줄이는 데 도움이 된다. 그러나 토픽에 대한 감쇠 레이트 및 위치에 대한 감쇠 레이트는 토픽들 또는 위치들이 보다 중요한 것으로 고려되는 구현들을 반영하기 위해, 또는 구현 중에 생기는 사용자 거동에 관한 관찰들을 반영하기 위해 상당히 상이할 수 있다는 점에 유의한다. 일부 실시예들에서, 감쇠 처리는 수행되지 않는다. 다음에 이 방법을 위한 처리가 완료된다(370).
일부 실시예들에서, 다수의 프로파일들이 시스템(100)의 성능을 개선시키기 위해 사용자를 위해 발생된다. 예를 들어, 월별 프로파일들이 연도의 특정한 시간에서 사용자가 가장 관심 있는 토픽들 및 위치들의 뷰를 제공하기 위해 한 실시예에서 생성된다. 수상 스키와 좀 더 추운 도착지들이 가을에 사용자의 프로파일에서 떨어질 수 있지만, 그들은 다음 5월에는 다시 중요하게 될 수 있고, 특정한 사용자에 대한 이러한 다수의 프로파일들을 이용하면 순환하는 관심들이 캡처될 수 있다. 마찬가지로, 다양한 카테고리들에 대한 별개의 프로파일들은 사용자의 관심 대상인 토픽들을 보다 잘 파악하기 위해, 각각의 사용자를 위해 유지될 수 있다. 예를 들어, 그렇지 않으면 감쇠 처리(350)가 될 대통령 선거들에 관한 사용자에 대한 별개의 프로파일이 수 년 기간에 걸쳐 유지될 것이다. 각각의 프로파일에 대해 이렇게 발생된 스코어링된 토픽들은 다음에 본 명세서의 어딘가에 설명된 것과 같이 추천들을 발생시키고 검색 결과들을 스코어링하는 데 이용된다.
사용자 프로파일 데이터 스토리지(110)는 시스템(100)의 동작을 용이하게 하기 위해 개개의 사용자에 관한 정보를 포함한다. 스코어링된 정보는 사용자에 관한 식별 정보를 포함한다. 일부 실시예들에서 이것은 사용자에 의해 수동으로 제공된 정보이지만, 다른 실시예들에서 사용자는 이러한 정보가 예를 들어, 사용자가 가입한 다른 기관들 또는 사용자가 갖는 다른 가입들로부터 자동으로 획득되는 것을 요청할 수 있다. 프로파일 데이터(110)는 아래에 상세히 설명되는 바와 같이 발생된, 사용자가 가장 관심 있는 토픽들의 스코어링된 또는 가중된 리스트들 유지한다.
관심 및 위치에 기초한 사용자들에 대한 콘텐츠의 추천
도 4는 프로파일 엔진(112)의 부분으로서 이용된 추천 발생기(118)의 기능적 뷰를 도시한다. 추천 발생기(118)는 특정한 사용자에 관한 정보를 취하고, 그 정보로부터 뉴스 전달 모듈(114)을 통해 사용자에게 어떤 콘텐츠를 제시할지를 결정하기 위해 프로파일 엔진(112)에 의해 이용된다.
추천 발생기(118)는 그것의 동작을 용이하게 하기 위해 다양한 서브시스템들을 포함한다. 도 4에 도시된 실시예에서, 추천 발생기(118)는 프로파일 페처(402), 선택기 모듈(404), 믹서(406), 및 디듀플리케이터(de-duplicator)(408)를 포함한다. 이들 서브시스템 중 많은 것은 아래에 설명되는 바와 같이, 서로 상호작용한다.
프로파일 페처(402)는 개개의 사용자가 관심 있는 것으로 나타나는 토픽들, 위치들, 및 뉴스 소스들을 식별하는 메커니즘을 제공한다. 한 실시예에서, 이들 토픽들 및 위치들은 사용자 프로파일 데이터베이스(110) 내에 저장되어 있다. 일부 예들에서, 이러한 토픽들은 사용자에 의해 수동으로 식별될 수 있지만 다른 예들에서 그들은 사용자 거동의 관찰에 기초하여 자동으로 발생된다. 일부 실시예들에서, 사용자의 현재의 위치는 추천 발생기(118)에 대한 입력으로서 이용된다. 사용자의 위치는 사용자 또는 사용자의 디바이스에 의해 명시적으로 보고될 수 있거나, 사용자의 IP 어드레스 또는 본 기술분야에 공지된 다른 지오로케이팅 방법들로부터 유도될 수 있다. 프로파일 페처(402)의 동작은 사용자가 가장 관심 있는 것들을 나타내는 스코어들을 갖는 토픽들 및 위치들의 리스트의 제공을 가져다 준다.
토픽들 및 위치들이 획득되었을 때, 추천 발생기(118)는 기사 데이터베이스(108) 내에 저장된 대응하는 콘텐츠(예를 들어, 기사들 또는 다른 항목들의 표시)를 획득한다. 한 실시예에서, 예를 들어, 이것은 인제스트 모듈(102)의 인덱서(118)로의 요청을 통해 달성된다. 다양한 실시예들에서, 사용자의 관심 대상이 아닌 리턴된 기사들의 수를 줄이기 위해서, 인제스트 모듈(102)은 요청에서 특정된 임의의 위치의 최대 거리 내에 위치한 것과 같이 지오로케이터(106)에 의해 인덱싱된 그 콘텐츠만을 리턴한다. 예를 들어, 인덱서(118)로의 요청은 토픽들로서 "travel", "airlines", 및 "United Airlines"를, 그리고 위치들로서 "Boston", "San Francisco", 및 "Auckland"를 포함할 수 있다. 인덱서(118)는 다음에 그들 토픽에 매칭되고 리스팅된 위치들 중 임의의 위치의 최대 거리 내에 위치한 콘텐츠 항목들을 리턴할 것이다. 다양한 실시예들에서, 최대 거리는 요청에서 특정될 수 있거나 사용자 또는 시행자에 의해 구성될 수 있다.
특정된 토픽들 및 위치들에 따라, 인덱서(118)로부터 획득된 콘텐츠의 바디는 사용자에게 제시하는 것이 바람직한 것보다 상당히 더 방대할 수 있다. 다양한 실시예들에서, 선택기 모듈(404)은 이용의 속성에 적절한 함수에 따라 콘텐츠를 스코어링한다. 한 실시예에서, 위치, 토픽 관련성, 콘텐츠 품질, 에디션 품질, 인기도, 및 최신성과 같은 팩터들을 포함하는 미리 정의된 스코어링 함수가 이용된다. 위치에 대해, (위에 언급된 바와 같이 IP 어드레스 또는 시스템(100)에 의한 다른 지오로케이팅 기술에 기초하여 결정된, 디바이스(130)에 의해 시스템(100)에 자동으로 제공될 수 있거나, 사용자에 의해 명시적으로 제공될 수 있는) 사용자 디바이스(130)의 위치에 지리적으로 더 가까운 위치들로 지오로케이터(106)에 의해 지리적으로 태깅된 항목들이 보다 높은 스코어를 받는다. 관련성에 대해, 사용자의 프로파일과 겹치는 보다 많은 토픽들을 갖는 항목들은 보다 높은 스코어를 받는다. 콘텐츠 품질에 대해, 보다 높은 해상도들(또는 사용자의 대역폭에 보다 적절한 해상도들)을 갖는 이미지들은 보다 높게 스코어링되고; 사용자에 보다 적절한 특성들을 갖는 오디오(예를 들어, 한 사용자에 대해서는 보다 높은 샘플링 레이트, 다른 사용자에 대해서는 보다 낮은 파일 크기)는 보다 높게 스코어링되고; (예를 들어, 자체-식별되거나 자동으로 결정된 이력적 선호들에 기초하여) 독자에 가장 적절한 워드 카운트들 및 읽기 레벨들을 갖는 텍스트가 보다 높게 스코어링된다. 에디션 품질에 대해, "양호한" 것으로 이전에 결정된 에디션들로부터의 콘텐츠는 다른 것들보다 위로 스코어링된다. 인기도에 대해, 보다 많은 사용자들(일부 실시예들에서, 특별히 현재의 사용자의 것들과 유사한 특성들을 갖는 보다 많은 사용자들)에 의해 읽혀지는 콘텐츠는 다른 콘텐츠보다 높게 스코어링된다. 최신성에 대해, 보다 최근에 게재된 콘텐츠가 보다 높은 스코어를 받는다. 항목들의 모두가 스코어링될 때, 그들은 그들의 스코어에 따라 분류된다.
일부 실시예들에서, 다른 알고리즘들이 또한 콘텐츠를 다른 소스들로부터 안에 끌어 넣는 데 이용된다. 예를 들어, 별개의 알고리즘이 사용자가 자주 읽고/보고/듣는 소스들로부터 추가의 항목들을 얻거나, 사용자가 가장 최근에 관심 있는 것으로 나타난 토픽들 또는 위치들에 관한 기사를 얻기 위해 일부 실시예들에서 이용된다. 본 기술분야의 통상의 기술자는 많은 양의 콘텐츠에 대해, 서버 클래스 컴퓨터들이 콘텐츠에 대한 다수의 요청들을 동시에 하는 데 이용되고, 다른 공지된 기술들이 본 명세서에 설명된 처리가 빠르고 효율적으로 완료되도록 이용된다는 것을 인식할 것이다.
믹서(406)는 다음에 뉴스 전달 모듈(114)을 통해 사용자에게 제시될 다양한 항목들의 개인화된 에디션을 생성하기 위해 선택기 모듈(404)의 동작으로부터의 결과들을 조합한다. 한 실시예에서, 믹서(406)는 그 각각이 선택기 모듈(404)에 의해 획득된 항목들로부터 끌어내진 항목들의 고정된 수의 세트들을 포함하도록 명확히 한정된다. 예를 들어, 하나의 개인화된 에디션이 사용자의 위치로부터 2개의 기사, 사용자가 자주 읽는 소스들로부터 2개의 기사, 및 사용자가 가장 자주 읽는 토픽들로부터 2개의 기사를 포함하도록 구성될 수 있다. 다른 실시예들에서, 관심 있는 사용자 위치(들) 내의 믹서(406) 기사들만이 포함된다.
일부 예들에서, 위에 설명된 것과 같은 믹서의 동작은 다른 세트의 기사들과 상당히 유사한 하나의 세트에 대해 기사들을 발생시킬 수 있다. 그러므로, 디듀플리케이터 모듈(408)은 그들이 상당히 유사한지를 결정하기 위해 선택된 항목들을 분석한다. 한 실시예에서, 디듀플리케이터 모듈(408)은 세트에 대한 후보로서 식별된 각각의 기사 내의 토픽들을 유사도 스코어를 발생시킴으로써 이미 선택된 모든 다른 기사들과 비교한다. 본 기술분야의 통상의 기술자는 코사인 유사도와 같은 머신 학습 알고리즘들이 이러한 유사도 스코어를 발생시키기 위해 손쉽게 적용될 수 있다는 것을 인식할 것이다. 원하는 정보의 다양성에 따라, 유사도 스코어의 임계치가 이러한 유사도에 기초하여 제안된 새로운 기사를 거절하기 위해 적용된다.
다른 실시예에서, 디듀플리케이터 모듈(408)은 모든 세트들이 팝퓰레이트될 때까지 적용되지 않는다. 이 예에서, 오버-임계치 유사도 스코어에 기여하는 항목들 중 하나가 거절되는 것보다, 너무 많은 유사도가 검출되면, 믹서(406)는 대체 항목을 선택하고, 디듀플리케이터 모듈(408)은 유사도 임계치가 초과되지 않는 그러한 시간까지 반복적으로 동작된다.
언급된 바와 같이, 일부 환경들은 콘텐츠의 수백만개의 항목을 포함할 것이고, 시스템(100)은 수백만의 사용자들을 위해 동작될 것이므로, 처리의 스케일가능성은 이러한 환경들에서 중요하게 될 수 있다. 이것이 문제인 경우에, 사전 계산 및 결과들의 저장과 같은 공지된 스케일링 기술들이 처리를 빠르게 하고 프로세서 및 메모리 요건들을 최소화하기 위해 적용된다.
토픽들 및 타임프레임에 기초한 사용자들에 대한 콘텐츠의 추천
일부 실시예들에서, 예를 들어 사용자가 시간의 범위(즉, 타임프레임)에 걸쳐 특정한 토픽 또는 관련된 토픽들의 세트를 탐사하는 것에 관심이 있을 때, 추천 발생기(116)는 그 목적에 잘 맞는 뉴스 기사들을 추천하도록 구성된다.
위에 설명된 바와 같이, 프로파일 엔진(112)은 뉴스 전달 모듈(114)을 통해 사용자에게 어떤 콘텐츠를 제시할지를 결정하기 위해 추천 발생기(118)를 이용한다. 다양한 실시예들에서, 인제스트 모듈(102)의 인덱서(118)로의 요청은 관심 있는 타임프레임뿐만 아니라 사용자의 관심 대상인 토픽들을 포함하고, 또한 관심 있는 임의의 위치들을 포함할 수 있다. 앞서 설명된 예로 다시 돌아가면, 사용자는 과거 50년 동안 United Airlines의 이력에 관해 학습하는 데 관심이 있을 수 있고, 인덱서(118)로의 요청은 토픽들로서 "travel", "airlines", 및 "United Airlines", 및 이전의 50년을 특정하는 날짜 범위를 포함할 수 있다. 이 요청은 또한, 예를 들어 사용자가 그것이 그들 도시에 관한 한 이전의 50년에 걸쳐 United Airline의 이력에 특히 관심이 있다면, 그 결과들을 더욱 제한하기 위해 "Boston", "San Francisco", 및 "Auckland"를 위치들로서 특정할 수 있다.
다양한 실시예들에서, 선택기 모듈(404)은 위에 설명된 바와 같고 그것의 게재 또는 배포 날짜에 관련한 각각의 뉴스 항목의 인기도를 또한 고려한 스코어링 함수를 이용한다. 예를 들어, 선택기 모듈(404)은 인덱서(118)로부터 그 해에 일어난 이벤트(예를 들어, 세계에서 가장 빠른 비행)를 설명하는 1988년도부터 수개의 기사들을 수신할 수 있다. 선택기 모듈(404)은 그 이벤트를 나타내는 것으로서 선택하기 위해 각각의 기사의 인기도에 따라 어느 하나(또는 시행자의 선호에 따라 몇개)를 결정한다. 선택기 모듈(404)은 예를 들어 가장 인기 있는 기사 - 즉, 최고의 읽힘 카운트를 갖는 기사 - 가 가장 높은 것으로 스코어링되므로 타임라인 내의 이벤트를 나타내도록 선택된다는 것을 결정할 수 있다. 선택기 모듈(404)은 또한 각각의 기사에 대한 스코어를 결정하는 데 있어서 위에 설명된 기준들을 다양한 실시예들에서 적용한다.
한 실시예에서, 선택기 모듈(404)은 또한 사용자가 정상적으로 관심 있는 것으로서 프로파일 엔진(112)에 의해 식별된 뉴스 소스(120)에 의해 게재된 기사들에 대한 스코어를 증가시킨다. 이것은 사용자에게 제시된 스토리들의 타임라인이 사용자가 즐기는 소스들의 세트로부터 타임라인에 걸치는 기사들을 포함할 가능성을 증가시킨다. 사용자에게 시간의 기간에 걸쳐 동일한 소스들에 의해 게재된 기사들을 제공하면 또한 사용자 경험이 향상될 수 있고, 사용자가 (특정한 신문 또는 정기 간행물의 관점으로부터와 같은) 특정한 관점으로부터 스토리의 진화를 뷰잉하는 것을 허용한다.
믹서(406)는 사용자에게 제시될 항목들의 세트를 생성하기 위해 위에 설명된 것과 같이 선택기 모듈(404)의 동작으로부터의 결과들을 조합하고, 디듀플리케이터 모듈(408)은 설명된 디듀플리케이션 기능성을 제공한다.
사용자들에 대한 지리적으로 및 토픽적으로 관련있는 뉴스의 전달
한 실시예에서, 뉴스 전달 모듈(114)은 사용자가 콘텐츠의 위치 속성들에 기초하여 뉴스 콘텐츠를 식별하고 소비하기 위해 지도 인터페이스를 이용할 수 있게 하는 지도 엔진(122)을 포함한다. 우리는 도 6 내지 도 9의 조합에서 도 5와 관련하여 아래에 이 특징의 기능성을 설명한다.
한 실시예에서, 사용자 액세싱 뉴스 지도 엔진(122)은 지도 기반 선택을 통해 뉴스 항목들을 뷰잉하고 싶어하는 것을 표시할 수 있다. 이것은, 예를 들어, 뉴스 읽는 애플리케이션 등 내의 옵션으로서 제시된, 뉴스 읽는 페이지 상의 버튼 또는 링크와 같은 사용자 인터페이스 요소를 통해 선택가능할 수 있다. 한 실시예에서, 이 특징의 사용자 작동에 응답하여, 그리고 도 6을 참조하면, 지도(600)는 사용자 디바이스(130)에 제시된다. 사용자 인터페이스(도시되지 않음)는 디스플레이를 위한 관심 있는 영역을 특정하기(502)(도 5) 위해 사용자에 의해 이용될 수 있다. 한 실시예에서 지도는 알려진다면, 사용자 디바이스의 현재 위치에 센터링된다. 대안적으로, 지도는 위에 설명된 바와 같이 사용자의 프로파일에 기초하여 사용자의 관심 대상인 것으로 알려진 위치에 센터링되거나 그 위치를 포함할 수 있다. 지도 엔진(122)는 다음에 사용자 인터페이스에 관련있는 지도를 디스플레이한다(504). 도 6의 예에서, 지도(600)는 Boston의 도시를 포함한다.
지도 엔진(122)은 다음에 사용자에게 디스플레이될 관련있는 스토리들을 식별한다. 한 실시예에서, 지도 엔진(122)은 관심 있는 위치를 추천 엔진(116)에 전달하고, 이 추천 엔진은 디스플레이된 영역에 위치한 기사들을 페치하고(506), 위에 설명된 바와 같이 지도 엔진(122)에 의해 디스플레이된 위치에 대해 관련있는 것으로서 지오로케이터(106)에 의해 이전에 식별된 기사들에 대한 검색 요청을 인덱서(118)에 보낸다. 한 실시예에서, 지도 엔진(122)은 추천 엔진(116)에 위도 및 경도 좌표들을 공급하지만, 위치를 특정하기 위한 임의의 다른 적합한 방법이 이용될 수 있다.
추천 엔진(116)은 위에 설명된 바와 같이 관심 있는 토픽들 및 위치에 관련한 기사들을 수신하고 스코어링하고(508), 매칭되는 기사들의 표시 및 그들의 위치들을 지도 엔진(122)에 제공한다. 스코어링된 기사들은 그 지리적 영역 내에 그 특정한 사용자에 추천할 최상의 기사들을 나타낸다.
지도 엔진(122)은 다음에 사용자에게 최고의 스코어링 기사들 중 적어도 일부에 관한 정보를 디스플레이한다(510). 도 7은 기사들의 표시가 지도(700)와 관련하여 디스플레이된 사용자 인터페이스의 예를 도시한다. 도 7의 예에서, 기사들(도시된 경우에서, 사진, 헤드라인, 및 뉴스 소스)(702)의 표시가 사용자 인터페이스의 한 측을 따라 디스플레이된다. 일련의 마커들(704, 706, 708, 710, 712)은 디스플레이된 기사들(702) 각각과 관련된 특정한 위치를 표시하기 위해 지도(700) 상에 배치된다. 한 실시예에서, 지도 엔진(122)은 각각의 기사와 관련된 지오로케이션 정보를 이용하고 지도(700) 상의 정확한 또는 근사한 위치에 마커를 렌더링한다. 다양한 실시예들에서 그리고 지오로케이션 정보의 특이성, 지도 축척 등에 따라, 지도(700) 상의 마커의 정확한 배치는 각각의 기사에 대한 정확한 또는 단지 근사한 위치를 표시할 수 있다. 일부 지도 해상도들에서, 예를 들어, 지도가 전체 주, 지방 또는 나라를 나타내도록 스케일 아웃될 때, 상이한 마커가 뉴스 기사들의 클러스터가 마크된 위치를 공유한다는 것을 표시하기 위해 렌더링될 수 있다.
도 8을 참조하면, 한 실시예에서 사용자가 지도(800) 상에 특정한 마커(802)를 식별하는 입력을 제공할 때, 지도 엔진(122)은 마크된 위치와 관련된 특정한 기사(804)를 표시하기 위해 디스플레이를 업데이트한다. 예를 들어, 사용자 디바이스(130)의 하드웨어 특성들에 따라, 사용자는 마커(802)를 마우스오버하고, 마커(802)를 탭핑하거나, 또는 마커를 식별하는 입력을 제공할 수 있다. 응답하여, 한 실시예에서 지도 엔진(122)은 표시된 위치와 관련되지 않은 뉴스 항목들(702)을 제거하여, 단지 관련있는 기사(들)(804)만 남겨 놓는다. 지도 엔진(122)은 표시되지 않은 기사들을 제거하기 위해 디스플레이를 스크롤링하거나, 디스플레이된 사용자 인터페이스로부터 그들을 간단히 제거할 수 있다. 도 8의 예에서, 표시되지 않은 기사들은 화면의 상부 및 하부로부터 수직으로 스크롤링되었고, 다른 기사들이 존재한다는 것을 사용자에게 시각적 큐로서 도시한 비선택된 기사들 중 일부의 부분들(806, 808)을 남겨 놓는다.
대안적인 실시예에서, 마커(802)를 선택하고 관련있는 기사(804)가 표시되게 하기 보다는, 사용자는 디스플레이된 기사들(702) 중 하나를 선택할 수 있고, 지도 엔진(122)은 선택된 스토리의 위치와 관련된 마커(802)를 강조하기 위해 표시된 지도(800)를 업데이트한다. 마커들은 마커들을 하이라이트하고, (도 8에 도시된 바와 같이) 다른 마커들에 비해 그들의 크기를 확대하고, 또는 마커를 플래싱하고, 그것의 컬러를 변화시키거나, 다른 시각적 큐를 제공하거나, 상기의 임의의 조합에 의한 것과 같은 다수의 방식으로 강조될 수 있다.
도 9에 도시된 바와 같이, 사용자가 다른 마커(902) 또는 다른 스토리(904)를 선택하면, 지도 엔진(122)은 선택된 스토리(904)를 디스플레이하고 관련된 위치를 갖는 마커(902)를 하이라이트하기 위해 디스플레이된 지도(900)를 업데이트한다.
표시된 기사들(904) 중 하나를 사용자가 선택하는 것에 응답하여, 디바이스(130)는 실제 기사를 디스플레이한다. 예를 들어, 한 실시예에서, 기사 표시(904) 내의 텍스트 상에 더블 탭핑 또는 더블 클릭함으로써, 사용자 디바이스(130)는 웹 브라우저 윈도우를 론치하고 뉴스 전달 모듈(114)에 의해 특정된 위치에 기사를 디스플레이하는 것이 지시된다. 그 위치는 예를 들어, 사용자 디바이스(130)에 기사 표시가 제공된 링크에 의해 특정될 수 있거나, 사용자 디바이스(130)가 사용자가 기사 표시를 선택하는 것에 응답하여 그 위치에 대한 요청을 시스템(100)으로 전달할 수 있다. 임의의 이벤트에서, 사용자는 다음에 기사에 지향되고, 요청된 정보를 읽고, 듣거나, 볼 수 있다.
도 5를 여전히 참조하면, 사용자가 지도를 스크롤링하거나 검색 필드에 새로운 위치를 기입함으로써와 같이, 새로운 좌표들을 암시적으로 또는 명시적으로 제공하면, 지도 엔진(122)은 새로운 좌표들을 취하고(512), 새로운 좌표들에 디스플레이된 지도를 리센터링하고(514), 업데이트된 지도를 디스플레이한다(504). 지도 엔진(122)은 다음에 새로운 위치에 관련한 기사들을 획득하고, 사용자의 관심들에 따라 그들을 스코어링하고, 위에 설명된 것과 같은 프로세스에서 새로운 지도 상의 최고 스코어링 기사들의 표시를 디스플레이한다.
사용자들에 대한 토픽적으로 및 시간적으로 관련있는 뉴스의 전달
다양한 실시예들에서, 뉴스 전달 모듈(114)은 사용자가 뉴스 콘텐츠를 뷰잉하기를 원하는 타임프레임을 사용자 인터페이스를 통해 사용자가 특정할 수 있게 하는 타임라인 엔진(124)을 포함한다. 아래에 설명되는 바와 같이, 타임라인 엔진(124)은 한 실시예에서 별개의 특징으로서, 또는 다른 실시예와 함께 지도 엔진(122)으로서 기능한다.
한 실시예에서, 그리고 이제 도 10을 참조하면, 사용자 인터페이스(1000)는 한 실시예에 따라 사용자가 관심 있는 토픽 및 참조의 타임프레임을 특정할 수 있는 방식을 도시한다. 인터페이스(1000)는 사용자가 검색될 토픽을 특정할 수 있는 텍스트 박스(1002)를 포함한다. 제어 요소들(1004)은 사용자가 관심 있는 타임프레임을 특정할 수 있게 한다. 도시된 예에서, 사용자는 금년, 지난 5년, 지난 10년으로부터 선택하거나, 지정 날짜들을 제공할 수 있다. 한 실시예에서, 인터페이스(1000)는 텍스트 박스(1002) 내에 제공된 입력에 기초하여 결과들을 프리뷰하고, 사용자가 인터페이스 제어 요소들을 이용하여 디스플레이된 타임라인을 편집함으로써 요청된 타임라인을 정하게 하는 시각적 타임라인(1006)을 제공한다. 본 기술분야의 통상의 기술자에 의해 인식되는 바와 같이, 많은 다른 사용자 인터페이스 제어들이 사용자에 의해 타임프레임의 선택을 가능하게 하도록 제공될 수 있다.
다양한 실시예들에서, 토픽에 대해 관련있는 타임프레임을 제공하는 것 외에, 사용자는 또한 위에 설명된 바와 같이, 관련있는 지리적 영역을 특정할 수 있다.
도 11은 위치에 기초하여 그리고 특정된 타임프레임 내에 사용자가 관심 있는 기사들을 제공하기 위한 방법을 도시한다. 예를 들어, 도 10 및 도 6과 관련하여, 위에 설명된 것과 같은 사용자 인터페이스는 사용자가 관심 있는 영역 및 관심 있는 타임프레임을 특정하는(1102) 데 이용될 수 있다. 한 실시예에서 지도 엔진(122)은 특정된 위치에 관련한 지도를 디스플레이한다(1104). 지도 엔진(122) 및 타임라인 엔진(124)은 사용자에게 디스플레이될 관련있는 스토리들을 식별한다. 추천 엔진(116)은 관련있는 지리적 영역에 위치하고 특정된 타임프레임 내에서 게재된 기사를 페치하고(1106), 관련있는 기사들에 대한 검색 요청을 인덱서(118)로 보내기 위해 지도 엔진(122)에 의해 제공된 위치 및 타임라인 엔진(124)에 의해 제공된 타임프레임을 이용한다.
추천 엔진(116)은 위에 설명된 바와 같이 관심 있는 토픽들, 위치 및 타임프레임에 대해 관련한 기사들을 수신하고 스코어링하고(1108), 지도 엔진(122) 및 타임라인 엔진(124)에 매칭되는 기사들의 표시, 위치들 및 시간들을 제공한다. 스코어링된 기사들은 특정된 타임프레임으로부터 선택되고 특정된 지리적 영역에 관련한 특정된 토픽에 관한 그 특정한 사용자에 대해 추천할 최상의 기사들을 나타낸다.
지도 엔진(122) 및 타임라인 엔진(124)은 다음에 사용자에게 가장 높은 스코어링 기사들 중 적어도 일부에 관한 정보를 디스플레이한다(1110). 한 실시예에서, 지리적 매치들이 도 6 내지 도 9와 관련하여 위에 설명된 것과 같은 마커들을 이용하여 지도들 상에 표시된다. 또한, 다양한 실시예들에서 타임라인 엔진(124)은 추천된 스토리들 각각에 대응하는 타임라인을 따르는 점들에 마커들을 배치하는, 시각적 타임라인을 디스플레이한다. 한 실시예에서, 사용자가 예를 들어, 타임라인 상의 마커 위에 마우싱함으로써 사용자가 표시함에 따라, 관련된 스토리의 표시가 예를 들어, 스토리와 관련된 섬네일을 보다 크게 만들고, 디스플레이로부터 다른 스토리들에 관한 정보를 제거하는 것 등에 의해 강조된다. 유사하게, 사용자가 특정한 스토리의 표시를 표시하는 것에 응답하여, 타임라인 상의 대응하는 마커는 그것의 관련성을 표시하기 위해 강조될 수 있다. 스토리들과의 이들 시간적 관련성들은 지리적 제한이 사용자에 의한 시간적 제한과 함께 포함된 실시예들에서, (도 7 내지 도 9와 관련하여 위에 설명된 것과 같은) 지리적 관련성과 별개로 또는 그와 동일한 사용자 인터페이스에 디스플레이될 수 있다.
다양한 실시예들에서, 사용자는, 예를 들어 타임라인(1006)(도 10)과 같은 모습을 갖는 사용자 인터페이스 내에 포함된 타임라인을 조정할 수 있거나, 또는 관심 있는 변경된 타임프레임을 표시할 수 있다(1112). 응답하여 타임라인 엔진(124)은 디스플레이된 타임라인을 조정하고(1114), 사용자에게 적절한 마커들로 변경된 스토리들 및 새로운 타임라인을 나타내는, 위에 설명된 것과 같은 추천 발생기(116)를 통해 요청을 업데이트한다.
본 명세서에 논의된 시스템들 또는 컴포넌트들이 사용자들에 관한 개인 정보를 수집하거나, 개인 정보를 이용할 수 있는 상황들에서, 사용자들은 프로그램들 또는 특징들이 사용자 정보(예를 들어, 사용자의 소셜 네트워크, 소셜 액션들 또는 액티비티들, 직업, 사용자의 선호들, 또는 사용자의 현재 위치에 관한 정보)를 수집하는지를 제어하기 위해, 또는 사용자와 보다 관련있을 수 있는 콘텐츠 서버로부터 콘텐츠를 수신하는지 여부 및/또는 어떻게 수신하지를 제어하는 기회를 가질 수 있다. 또한, 그것이 저장 또는 이용되기 전에 소정의 데이터가 하나 이상의 방식으로 처리될 수 있으므로, 개인적으로 식별가능한 정보는 제거된다. 예를 들어, 사용자의 아이덴티티는 개인적으로 식별가능한 정보가 사용자에 대해 결정될 수 있거나, 사용자의 지리적 위치가 위치 정보가 획득되는 경우에 일반화될 수 있도록 처리될 수 있으므로(도시, ZIP 코드, 또는 국가 레벨에 관한 것 등), 사용자의 특정한 위치는 결정될 수 없다. 그러므로, 사용자는 정보가 어떻게 사용자에 관해 수집되고 콘텐츠 서버에 의해 이용되는 것을 제어할 수 있다.
시스템(100)은 일부 실시예들에서 하나 이상의 고성능 CPU 및 1기가바이트 이상의 메인 메모리뿐만 아니라, 수백 기가바이트 내지 페타바이트의 범위의 스토리지를 포함하는 서버 클래스 컴퓨터들의 네트워크에 의해 구현된다. LINUX와 같은 운영 체제가 전형적으로 이용된다. 시스템(100) 및 그것의 구성 컴포넌트들의 동작들은 하드웨어(예를 들어, 범용 컴퓨터들 내의 전용 컴퓨팅 디바이스들 또는 도터보드들)를 통해, 또는 시스템(100)의 서버들 상의 컴퓨터 스토리지 내에 설치되고 본 명세서에 설명된 기능들을 수행하기 위해 이러한 서버들의 프로세서들에 의해 실행되는 컴퓨터 프로그램들을 통해 제어될 수 있다. 이러한 머신들의 구현에 관한 보다 상세한 것은 도 12와 관련하여 제공된다. 시스템 엔지니어링 및, 예를 들어, 미디어 콘텐츠 호스팅 또는 콘텐츠 전달의 기술분야의 통상의 기술자라면 본 명세서에서의 기능적 및 알고리즘적 설명들로부터 이러한 컴퓨터 프로그램들 및 하드웨어 시스템들의 구성 및 동작을 손쉽게 결정할 것이다.
기사 데이터베이스(108) 및 프로파일 데이터베이스(110)는 하드 디스크 드라이브, RAM, 기입가능한 컴팩트 디스크(CD) 또는 DVD, 고체 상태 메모리 디바이스, 또는 다른 광학/자기 저장 매체들과 같은 컴퓨터 판독가능 저장 매체 내에 데이터를 저장할 수 있는 임의의 디바이스 또는 디바이스들의 조합으로서 구현될 수 있다. 다른 유형들의 컴퓨터 판독가능 저장 매체들이 이용될 수 있고, 새로운 저장 매체들이 미래에 개발됨에 따라, 그들은 위에 기술된 설명들에 따라 구성될 수 있는 것으로 기대된다.
본 설명에서, 용어 "모듈"은 특정된 기능을 제공하기 위한 계산 로직을 지칭한다. 모듈은 하드웨어, 펌웨어, 및/또는 소프트웨어에서 구현될 수 있다. 본 명세서에 설명된 모듈들이 소프트웨어로서 구현되는 경우에, 모듈은 스탠드얼론 프로그램으로서 구현될 수 있지만, 또한 예를 들어 보다 큰 프로그램의 일부로서, 복수의 별개의 프로그램으로서, 또는 하나 이상의 정적으로 또는 동적으로 링크된 라이브러리들로서 다른 수단을 통해 구현될 수 있다. 본 명세서에 설명된 모듈이라고 하는 것은 본 발명의 한 실시예를 나타내고, 다른 실시예들은 다른 모듈들을 포함할 수 있다는 것을 이해할 것이다. 또한, 다른 실시예들은 본 명세서에 설명된 모듈들이 없을 수 있고/있거나 상이한 방식으로 모듈들 간에 설명된 기능을 분산시킬 수 있다. 부가적으로, 하나보다 많은 모듈에 기여되는 기능성들은 단일 모듈 내로 통합될 수 있다. 모듈들이 소프트웨어에 의해 구현되는 실시예에서, 그들은 컴퓨터 판독가능 지속 저장 디바이스(예를 들어, 하드 디스크) 상에 저장되고, 메모리 내에 로드되고, 시스템(100)의 부분으로서 포함된 하나 이상의 프로세서에 의해 실행된다. 대안적으로, 하드웨어 또는 소프트웨어 모듈들은 시스템(100) 내에 어딘가에 저장될 수 있다. 시스템(100)은 하나 이상의 프로세서, 고속 메모리, 하드 디스크 저장 및 백업, 네트워크 인터페이스들 및 프로토콜들, 데이터 입력을 위한 입력 디바이스들, 및 데이터의 디스플레이, 프린팅 또는 다른 제시들을 위한 출력 디바이스들을 포함하는, 본 명세서에 설명된 동작들을 위해 필요한 하드웨어 요소들을 포함한다. 도 12는 이러한 컴포넌트들에 관한 더 이상의 상세들을 제공한다.
도 12는 머신 판독가능 매체로부터의 명령어들을 판독하고 프로세서 내의 그들 명령어들을 실행할 수 있는 예시적인 머신의 컴포넌트들을 도시한 블록도이다. 구체적으로, 도 12는 머신이 본 명세서에 논의된 방법들 중 임의의 하나 이상의 방법을 수행하게 하는 명령어들(1224)(예를 들어, 소프트웨어)이 실행될 수 있는 컴퓨터 시스템(1200)의 예시적인 형태의 머신의 도해적 표현을 도시한다. 대안적인 실시예들에서, 머신은 스탠드얼론 디바이스로서 동작하거나 다른 머신들과 접속(예를 들어, 네트워킹될) 수 있다. 네트워킹된 배치에서, 머신은 서버 클라이언트 네트워크 환경에서 서버 머신 또는 클라이언트 머신의 능력에서, 또는 피어-투-피어(또는 분산형) 네트워크 환경 내의 피어 머신으로서 동작할 수 있다.
머신은 서버 컴퓨터, 클라이언트 컴퓨터, 퍼스널 컴퓨터(PC), 태블릿 PC, 셋톱 박스(STB), PDA(personal digital assistant), 셀룰러 전화, 스마트폰, 웹 기기, 네트워크 라우터, 스위치 또는 브리지, 또는 그 머신에 의해 취해질 동작들을 특정하는 명령어들(1224)(순차적 또는 다른 방식)을 실행할 수 있는 임의의 머신일 수 있다. 또한, 단지 하나의 머신이 도시되지만, 용어 "머신"은 또한 본 명세서에 설명된 방법들 중 임의의 하나 이상을 수행하기 위해 명령어들(1224)을 개별적으로 또는 공동으로 실행하는 머신들의 임의의 집합을 포함하는 것으로 취해질 수 있다.
예시적인 컴퓨터 시스템(1200)은 버스(1208)를 통해 서로 통신하도록 구성된 프로세서(1202)(예를 들어, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 디지털 신호 프로세서(DSP), 하나 이상의 주문형 집적 회로들(ASIC들), 또는 하나 이상의 라디오 주파수 집적 회로들(RFIC들), 또는 이들의 임의의 조합), 메인 메모리(1204), 및 정적 메모리(1206)를 포함한다. 컴퓨터 시스템(1200)은 그래픽 디스플레이 유닛(1210)(예를 들어, 플라즈마 디스플레이 패널(PDP), 액정 디스플레이(LCD), 프로젝터, 또는 음극선관(CRT))을 더 포함할 수 있다. 컴퓨터 시스템(1200)은 버스(1208)를 통해 통신하도록 또한 구성된, 영숫자 입력 디바이스(1212)(예를 들어, 키보드), 커서 제어 디바이스(1214)(예를 들어, 마우스, 트랙볼, 조이스틱, 모션 센서, 또는 다른 포인팅 기구), 데이터 저장소(1216), 신호 발생 디바이스(1218)(예를 들어, 스피커), 오디오 입력 디바이스(1226)(예를 들어, 마이크로폰) 및 네트워크 인터페이스 디바이스(1220)를 또한 포함할 수 있다.
데이터 저장소(1216)는 본 명세서에 설명된 방법들 및 기능들 중 임의의 하나 이상을 실시하는 명령어들(1224)(예를 들어, 소프트웨어)이 저장된 머신 판독가능 매체(1222)를 포함한다. 명령어들(1224)(예를 들어, 소프트웨어)은 머신 판독가능 매체를 또한 구성하는 컴퓨터 시스템(1200), 메인 메모리(1204) 및 프로세서(1202)에 의한 그것의 실행 중에 메인 메모리(1204) 내에 또는 프로세서(1202) 내에(예를 들어, 프로세서의 캐시 메모리 내에) 완전히 또는 적어도 부분적으로 또한 상주할 수 있다. 명령어들(1224)(예를 들어, 소프트웨어)는 네트워크 인터페이스(1220)를 통해 네트워크(도시되지 않음)를 거쳐 송신 또는 수신될 수 있다.
머신 판독가능 매체(1222)가 단일 매체로 예시적인 실시예에서 도시되지만, 용어 "머신 판독가능 매체"는 명령어들(예를 들어, 명령어들(1224))을 저장할 수 있는 단일 매체 또는 다수 매체(예를 들어, 중앙집중형 또는 분산형 데이터베이스, 또는 관련된 캐시들 및 서버들)를 포함하는 것으로 취해져야 한다. 용어 "머신 판독가능 매체"는 머신에 의해 실행하기 위한 명령어들(예를 들어, 명령어들(1224))을 저장할 수 있고 머신이 본 명세서에 개시된 방법들 중 임의의 하나 이상을 수행하게 하는 임의의 매체를 포함하는 것으로 또한 취해질 것이다. 용어 "머신 판독가능 매체"는 고체 상태 메모리, 광학 매체, 및 자기 매체의 형태로 된 데이터 저장소들을 포함하지만, 이에 제한되지는 않는다.
상기 설명의 일부 부분들은 정보에 관한 알고리즘들 및 동작들의 상징적 표현들의 용어로 실시예들을 설명한다. 이들 알고리즘적 설명들 및 표현들은 본 기술분야의 통상의 기술자에게 효과적으로 그들의 연구의 핵심을 전달하기 위해 데이터 처리 분야의 통상의 기술자에 의해 공통적으로 이용된다. 기능적, 계산적, 또는 논리적으로 설명되지만, 이들 동작은 프로세서, 등가적인 전기 회로들, 마이크로코드 등에 의해 실행된 컴퓨터 프로그램에 의해 구현되는 것으로 이해된다. 게다가, 때로는 동작들의 이들 배열을 일반성의 손실 없이, 모듈들로서 참조하는 것이 편리하다고 또한 판명되었다. 설명된 동작들 및 그들의 관련된 모듈들은 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 임의의 조합들로 실시될 수 있다.
본 명세서에 이용된 바와 같이 "한 실시예" 또는 "실시예"에 대한 임의의 언급은 실시예와 관련하여 설명된 특정한 요소, 특징, 구조, 또는 특성들이 적어도 하나의 실시예 내에 포함되는 것을 의미한다. 본 명세서의 다양한 장소들에서의 문구 "한 실시예에서"의 출현은 반드시 동일한 실시예를 모두 참조하는 것은 아니다.
본 명세서에 이용된 바와 같이, 용어들 "포함한다(comprises)", "포함하는(comprising)", "포함한다(includes)", "포함하는(including)", "갖는다(has)", "갖는(having)" 또는 이것의 임의의 다른 변형은 비배타적 포함을 커버하는 것으로 의도된다. 예를 들어, 요소들의 리스트를 포함하는 프로세스, 방법, 물품, 또는 장치는 그들 요소에만 반드시 한정되는 것이 아니고 명확히 리스팅되지 않고 이러한 프로세스, 방법, 물품, 또는 장치에 고유한 것이 아닌 다른 요소들을 포함할 수 있다. 또한 달리 분명히 표명되지 않는다면, "또는"은 배타적 논리합(exclusive or)이 아니라 포함적 논리합(inclusive or)을 지칭한다. 예를 들어, 조건 A 또는 B는 다음 중 임의의 하나에 의해 만족된다: A는 참이고(또는 존재하고) B는 거짓이고(존재하지 않고), A는 거짓이고(또는 존재하지 않고) B는 참이고(또는 존재하고), A와 B 둘 다가 참이다(또는 존재한다).
또한, 단수 표현("a" 또는 "an")의 이용은 본 명세서의 실시예의 요소들 및 컴포넌트들을 설명하기 위해 이용된다. 이것은 단지 편의성을 위한 것이고 발명의 일반적 의미를 부여하는 것이다. 본 설명은 하나 또는 적어도 하나를 포함하는 것으로 읽혀져야 하고 단수형은 또한 달리 의미하는 것이 분명하지 않다면 복수를 또한 포함한다.
본 개시내용을 읽는다면, 본 기술분야의 통상의 기술자는 여전히 본 명세서에서의 개시된 원리들을 통해 시스템을 위한 추가의 대안적인 구조 및 기능적 설계들 및 일반화된 전자 잡지의 제공을 위한 프로세스를 여전히 인식할 것이다. 그러므로, 특정한 실시예들 및 응용들이 도시되었고 설명되었지만, 개시된 실시예들은 본 명세서에 개시된 정밀한 구성 및 컴포넌트들로 한정되지 않는다는 것이 이해될 것이다. 본 기술분야의 통상의 기술자에게 분명하게 될 다양한 수정들, 변화들, 및 변형들이 첨부된 청구항들의 사상 및 범위로부터 벗어나지 않고서 본 명세서에 개시된 방법 및 장치의 배열, 동작 및 상세들에서 이루어질 수 있다.
Claims (39)
- 사용자에게 뉴스 콘텐츠를 디스플레이하기 위한 방법으로서,
복수의 뉴스 콘텐츠 항목들 각각에 대하여, 컴퓨터에 의해:
상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 날짜로 상기 뉴스 콘텐츠 항목에 주석을 다는 단계;
각각의 주석이 달린 항목의 표시 및 관련된 주석들을 저장하는 단계;
상기 뉴스 콘텐츠 항목들 각각에 대해, 상기 콘텐츠 항목이 뷰잉되는 횟수를 표시하는 카운트를 유지하는 단계;
복수의 사용자들 각각에 대하여, 컴퓨터에 의해:
상기 사용자에 대한 프로파일 정보를 식별하는 단계 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 뉴스 소스들을 포함함 -;
상기 컴퓨터에 의해, 관심 대상인 토픽 및 관심 대상인 타임프레임을 수신하는 단계;
상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자들 중 하나의 사용자에게 추천할 복수의 뉴스 콘텐츠 항목들을 식별하는 단계 - 각각의 뉴스 콘텐츠 항목은 상기 관심 대상인 토픽에 대응하는 주석이 달린 토픽, 및 상기 수신된 관심 대상인 타임프레임 내의 날짜를 갖고, 상기 뉴스 콘텐츠 항목들은 적어도 부분적으로 그들의 관련된 뷰 카운트에 따라 식별됨 -;
상기 뉴스 콘텐츠 항목들을 상기 사용자에게 추천하는 단계;
사용자 디바이스 상의 사용자 인터페이스의 제1 영역에, 복수의 추천된 뉴스 콘텐츠 항목들의 표시를 디스플레이하는 단계;
상기 사용자 인터페이스의 제2 영역에, 상기 추천된 뉴스 콘텐츠 항목들 각각과 관련된 각각의 위치를 나타내는 각각의 마커를 포함하는 지도를 디스플레이하는 단계;
상기 디스플레이된 마커들 중의 하나를 식별하는 사용자 입력을 수신하는 단계; 및
상기 디스플레이된 마커들 중의 하나를 식별하는 사용자 입력을 수신하는 것에 응답하여, 상기 식별된 마커와 관련되지 않은 상기 추천된 뉴스 콘텐츠 항목들을 디스플레이로부터 제거하는 단계
를 포함하는 방법. - 제1항에 있어서,
적어도 하나의 위치로, 상기 복수의 뉴스 콘텐츠 항목들 중의 각각의 뉴스 콘텐츠 항목에 주석을 다는 단계; 및
상기 컴퓨터에 의해, 관심 대상인 위치를 수신하는 단계
를 더 포함하고,
상기 복수의 뉴스 콘텐츠 항목들 중의 상기 뉴스 콘텐츠 항목들은 상기 관심 대상인 위치에 대응하는 하나 이상의 주석이 달린 위치들을 갖는 방법. - 제2항에 있어서,
상기 뉴스 콘텐츠 항목들에 상기 주석을 다는 상기 단계는,
인덱서에 의해, 상기 뉴스 콘텐츠 항목을 수신하는 단계;
토픽 분석기에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 토픽을 결정하는 단계;
지오로케이터 모듈(geolocator module)에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 위치를 결정하는 단계; 및
상기 결정된 적어도 하나의 토픽 및 상기 결정된 적어도 하나의 위치로 상기 뉴스 콘텐츠 항목에 주석을 다는 단계
를 더 포함하는 방법. - 제2항에 있어서,
사용자에 대한 상기 프로파일 정보를 식별하는 상기 단계는,
상기 사용자의 위치를 결정하는 단계; 및
상기 결정된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 단계
를 더 포함하는 방법. - 삭제
- 제1항에 있어서,
상기 디스플레이되는 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 사용자 입력을 수신하는 단계; 및
상기 디스플레이되는 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 상기 수신된 사용자 입력에 응답하여, 상기 식별된 뉴스 콘텐츠 항목의 각각의 위치를 나타내는 각각의 마커의 디스플레이를 강조하는 단계
를 더 포함하는 방법. - 제6항에 있어서,
상기 디스플레이된 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 상기 사용자 입력에 의해 식별되지 않는 상기 추천된 뉴스 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계를 더 포함하는 방법. - 삭제
- 제1항에 있어서,
상기 추천된 뉴스 콘텐츠 항목들 중의 하나의 표시의 상기 사용자에 의한 선택을 수신하는 단계; 및
상기 표시되는 추천된 뉴스 콘텐츠 항목을 디스플레이하도록 상기 사용자 디바이스에 지시하는 단계
를 더 포함하는 방법. - 제1항에 있어서,
상기 뉴스 콘텐츠 항목을 상기 사용자에게 추천하는 상기 단계는,
상기 사용자 인터페이스의 상기 제1 영역에 타임라인을 디스플레이하는 단계 - 상기 타임라인은 타임라인을 따르는 날짜를 나타내는 마커를 포함하고, 상기 날짜는 상기 추천된 뉴스 콘텐츠 항목들 각각과 관련됨 -
를 더 포함하는 방법. - 제10항에 있어서,
상기 디스플레이된 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 사용자 입력을 수신하는 단계; 및
상기 디스플레이된 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 상기 수신된 사용자 입력에 응답하여, 상기 식별된 뉴스 콘텐츠 항목의 날짜를 나타내는 마커의 디스플레이를 강조하는 단계
를 더 포함하는 방법. - 제11항에 있어서,
상기 디스플레이된 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 상기 사용자 입력에 의해 식별되지 않는 상기 추천된 뉴스 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계를 더 포함하는 방법. - 삭제
- 사용자에게 뉴스 콘텐츠를 디스플레이하기 위한 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 명령어들을 포함하고, 상기 명령어들은 프로세서에 결합될 때 상기 프로세서로 하여금 단계들을 실행하게 하도록 구성되며,
상기 단계들은,
복수의 뉴스 콘텐츠 항목들 각각에 대하여,
상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 날짜로 상기 뉴스 콘텐츠 항목에 주석을 다는 것;
각각의 주석이 달린 항목의 표시 및 관련된 주석들을 저장하는 것;
상기 뉴스 콘텐츠 항목들 각각에 대해, 상기 뉴스 콘텐츠 항목이 뷰잉되는 횟수를 표시하는 카운트를 유지하는 것;
복수의 사용자들 각각에 대하여,
상기 사용자에 대한 프로파일 정보를 식별하는 것 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 뉴스 소스들을 포함함 -;
관심 대상인 토픽 및 관심 대상인 타임프레임을 수신하는 것;
상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자들 중 하나의 사용자에게 추천할 복수의 뉴스 콘텐츠 항목들을 식별하는 것 - 각각의 뉴스 콘텐츠 항목은 상기 관심 대상인 토픽에 대응하는 주석이 달린 토픽, 및 상기 수신된 관심 대상인 타임프레임 내의 날짜를 갖고, 상기 뉴스 콘텐츠 항목들은 적어도 부분적으로 그들의 관련된 뷰 카운트에 따라 식별됨 -;
상기 뉴스 콘텐츠 항목들을 상기 사용자에게 추천하는 것;
사용자 디바이스 상의 사용자 인터페이스의 제1 영역에, 복수의 추천된 뉴스 콘텐츠 항목들의 표시를 디스플레이하는 것;
상기 사용자 인터페이스의 제2 영역에 타임라인을 디스플레이하는 것 - 상기 타임라인은 타임라인을 따르는 날짜를 나타내는 마커를 포함하고, 상기 날짜는 상기 추천된 뉴스 콘텐츠 항목들 각각과 관련됨 -;
상기 디스플레이된 마커들 중의 하나를 식별하는 사용자 입력을 수신하는 것; 및
상기 디스플레이된 마커들 중의 하나를 식별하는 사용자 입력을 수신하는 것에 응답하여, 상기 식별된 마커와 관련되지 않은 상기 추천된 뉴스 콘텐츠 항목들을 디스플레이로부터 제거하는 것
을 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 제14항에 있어서, 상기 프로세서로 하여금 단계들을 실행하게 하도록 구성된 명령어들을 더 포함하고, 상기 단계들은:
상기 추천된 뉴스 콘텐츠 항목들 중의 하나의 표시의 상기 사용자에 의한 선택을 수신하는 것; 및
상기 표시되는 추천된 뉴스 콘텐츠 항목을 디스플레이하도록 상기 사용자 디바이스에 지시하는 것
을 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 삭제
- 제14항에 있어서, 상기 프로세서로 하여금 단계들을 실행하게 하도록 구성된 명령어들을 더 포함하고, 상기 단계들은:
상기 디스플레이된 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 사용자 입력을 수신하는 것; 및
상기 디스플레이된 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 상기 수신된 사용자 입력에 응답하여, 상기 식별된 뉴스 콘텐츠 항목의 날짜를 나타내는 마커의 디스플레이를 강조하는 것
을 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 제17항에 있어서, 상기 프로세서로 하여금, 상기 디스플레이된 추천된 뉴스 콘텐츠 항목들 중의 하나를 식별하는 상기 사용자 입력에 의해 식별되지 않는 상기 추천된 뉴스 콘텐츠 항목들을 상기 디스플레이로부터 제거하는 단계를 실행하게 하도록 구성된 명령어들을 더 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램.
- 삭제
- 방법으로서,
제1 컴퓨터에 의해, 복수의 뉴스 콘텐츠 항목의 각각에 상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 위치로 주석을 다는 단계;
상기 제1 컴퓨터에 의해, 제2 컴퓨터의 사용자에 대한 프로파일 정보를 식별하는 단계 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 토픽들, 및 상기 사용자의 관심 대상인 적어도 하나의 위치를 포함함 -;
상기 제1 컴퓨터에 의해, 상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자에게 추천할 복수의 뉴스 콘텐츠 항목을 식별하는 단계;
상기 제1 컴퓨터에 의해, 상기 제2 컴퓨터 상의 사용자 인터페이스의 제1 영역에의 디스플레이를 위해, 상기 제2 컴퓨터에 복수의 추천된 콘텐츠 항목들의 표시를 제공하는 단계;
상기 제1 컴퓨터에 의해, 상기 사용자 인터페이스의 제2 영역에의 디스플레이를 위해, 상기 제2 컴퓨터에 지도를 제공하는 단계 - 상기 지도는 상기 복수의 추천된 콘텐츠 항목들 각각에 대해, 상기 추천된 콘텐츠 항목들 각각과 관련된 위치를 나타내는 마커를 포함함 -;
상기 제1 컴퓨터에 의해, 상기 제2 컴퓨터로부터, 상기 디스플레이된 마커들 중의 하나를 식별하는 상기 사용자로부터의 입력을 수신하는 단계; 및
상기 입력을 수신하는 것에 응답하여, 상기 제1 컴퓨터에 의해, 상기 식별된 마커와 관련되지 않는 상기 추천된 콘텐츠 항목들을 디스플레이로부터 제거하도록 하는 명령을 상기 제2 컴퓨터에 제공하는 단계
를 포함하는 방법. - 제20항에 있어서,
상기 뉴스 콘텐츠 항목들에 주석을 다는 단계는,
인덱서에 의해, 상기 뉴스 콘텐츠 항목을 수신하는 단계;
토픽 분석기에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 토픽을 결정하는 단계;
지오로케이터 모듈에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 위치를 결정하는 단계; 및
상기 결정된 토픽들 및 상기 결정된 위치들로 상기 뉴스 콘텐츠 항목에 주석을 다는 단계
를 더 포함하는 방법. - 제20항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 단계는,
상기 사용자의 위치를 결정하는 단계; 및
상기 결정된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 단계
를 더 포함하는 방법. - 제20항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 단계는,
상기 사용자에 의해 특정된 위치를 수신하는 단계; 및
상기 수신된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 단계
를 더 포함하는 방법. - 삭제
- 제20항에 있어서,
상기 디스플레이되는 추천된 콘텐츠 항목들 중의 하나를 식별하는 사용자 입력을 수신하는 단계; 및
상기 수신된 사용자 입력에 응답하여, 상기 식별된 콘텐츠 항목의 위치를 나타내는 마커의 디스플레이를 강조하는 단계
를 더 포함하는 방법. - 삭제
- 삭제
- 제20항에 있어서,
상기 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목의 표시의 상기 사용자에 의한 선택을 수신하는 단계; 및
상기 표시되는 추천된 콘텐츠 항목을 디스플레이하도록 사용자 디바이스에 지시하는 단계
를 더 포함하는 방법. - 사용자에게 뉴스 콘텐츠를 디스플레이하기 위한 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 명령어들을 포함하고, 상기 명령어들은 프로세서에 결합될 때 상기 프로세서로 하여금 동작들을 실행하게 하도록 구성되며,
상기 동작들은,
제1 컴퓨터에 의해, 복수의 뉴스 콘텐츠 항목의 각각에 상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 위치로 주석을 다는 것;
상기 제1 컴퓨터에 의해, 제2 컴퓨터의 사용자에 대한 프로파일 정보를 식별하는 것 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 토픽들, 및 상기 사용자의 관심 대상인 적어도 하나의 위치를 포함함 -;
상기 제1 컴퓨터에 의해, 상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자에게 추천할 복수의 뉴스 콘텐츠 항목을 식별하는 것;
상기 제1 컴퓨터에 의해, 상기 제2 컴퓨터 상의 사용자 인터페이스의 제1 영역에의 디스플레이를 위해, 상기 제2 컴퓨터에 복수의 추천된 콘텐츠 항목들의 표시를 제공하는 것;
상기 제1 컴퓨터에 의해, 상기 사용자 인터페이스의 제2 영역에의 디스플레이를 위해, 상기 제2 컴퓨터에 지도를 제공하는 것 - 상기 지도는 상기 복수의 추천된 콘텐츠 항목들 각각에 대해, 상기 추천된 콘텐츠 항목들 각각과 관련된 위치를 나타내는 마커를 포함함 -;
상기 제1 컴퓨터에 의해, 상기 제2 컴퓨터로부터, 상기 디스플레이된 마커들 중의 하나를 식별하는 상기 사용자로부터의 입력을 수신하는 것; 및
상기 입력을 수신하는 것에 응답하여, 상기 제1 컴퓨터에 의해, 상기 식별된 마커와 관련되지 않는 상기 추천된 콘텐츠 항목들을 디스플레이로부터 제거하도록 하는 명령을 상기 제2 컴퓨터에 제공하는 것
을 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 제29항에 있어서,
상기 뉴스 콘텐츠 항목들에 주석을 다는 것은,
인덱서에 의해, 상기 뉴스 콘텐츠 항목을 수신하는 것;
토픽 분석기에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 토픽을 결정하는 것;
지오로케이터 모듈에 의해, 상기 뉴스 콘텐츠 항목과 관련된 적어도 하나의 위치를 결정하는 것; 및
상기 결정된 토픽들 및 상기 결정된 위치들로 상기 뉴스 콘텐츠 항목에 주석을 다는 것
을 더 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 제29항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 것은,
상기 사용자의 위치를 결정하는 것; 및
상기 결정된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 것
을 더 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 제29항에 있어서,
사용자에 대한 프로파일 정보를 식별하는 것은,
상기 사용자에 의해 특정된 위치를 수신하는 것; 및
상기 수신된 위치를 상기 사용자의 관심 대상인 위치로서 식별하는 것
을 더 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 삭제
- 제29항에 있어서,
상기 디스플레이되는 추천된 콘텐츠 항목들 중의 하나를 식별하는 사용자 입력을 수신하는 것; 및
상기 수신된 사용자 입력에 응답하여, 상기 식별된 콘텐츠 항목의 위치를 나타내는 마커의 디스플레이를 강조하는 것
을 더 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 삭제
- 삭제
- 제29항에 있어서,
상기 추천된 콘텐츠 항목들 중 하나의 추천된 콘텐츠 항목의 표시의 상기 사용자에 의한 선택을 수신하는 것; 및
상기 표시되는 추천된 콘텐츠 항목을 디스플레이하도록 사용자 디바이스에 지시하는 것
을 더 포함하는, 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램. - 시스템으로서,
프로세서;
상기 프로세서에 의해 실행되는 인제스트 모듈(ingest module) - 상기 인제스트 모듈은, 복수의 뉴스 콘텐츠 항목들 각각에 대하여, 상기 항목의 콘텐츠와 관련된 적어도 하나의 토픽 및 적어도 하나의 위치로 상기 뉴스 콘텐츠 항목에 주석을 달도록 구성됨 -;
상기 프로세서에 의해 실행되고, 상기 인제스트 모듈에 결합되며, 복수의 사용자들 각각에 대하여, 상기 사용자에 대한 프로파일 정보를 식별하도록 구성된 프로파일 엔진 - 상기 프로파일 정보는 상기 사용자의 관심 대상인 복수의 토픽들, 및 상기 사용자의 관심 대상인 적어도 하나의 위치를 포함함 -;
상기 프로세서에 의해 실행되고, 상기 프로파일 엔진에 결합되며, 상기 주석이 달린 뉴스 콘텐츠 항목들 및 상기 프로파일 정보로부터, 상기 사용자에게 추천할 제1 복수의 뉴스 콘텐츠 항목들을 식별하도록 구성된 추천 발생기;
상기 프로세서에 의해 실행되고, 상기 추천 발생기에 결합된 뉴스 전달 모듈 - 상기 뉴스 전달 모듈은, 상기 사용자와 관련된 컴퓨터의 사용자 인터페이스의 제1 영역에의 디스플레이를 위해, 상기 제1 복수의 추천된 뉴스 콘텐츠 항목들의 표시를 상기 컴퓨터에 제공하도록 구성됨 -; 및
상기 프로세서에 의해 실행되고, 상기 뉴스 전달 모듈에 결합되는 지도 엔진 - 상기 지도 엔진은:
상기 사용자 인터페이스의 제2 영역에의 디스플레이를 위해 상기 컴퓨터에 지도를 제공하고, 상기 지도는 상기 제1 복수의 추천된 뉴스 콘텐츠 항목들 각각에 대해, 상기 추천된 뉴스 콘텐츠 항목들 각각과 관련된 위치를 나타내는 마커를 포함하고;
상기 컴퓨터로부터, 상기 디스플레이된 마커들 중의 하나를 식별하는상기 사용자로부터의 입력을 수신하고;
상기 입력을 수신하는 것에 응답하여, 상기 식별된 마커와 관련되지 않는 상기 추천된 콘텐츠 항목들을 디스플레이로부터 제거하도록 하는 명령을 상기 컴퓨터에 제공하도록 구성됨 -
을 포함하는 시스템. - 제38항에 있어서,
상기 지도 엔진은,
상기 사용자로부터 새로운 지리적 위치의 명세(specification)를 수신하고;
상기 사용자로부터 상기 명세를 수신하는 것에 응답하여, 상기 사용자에게 추천할 제2 복수의 뉴스 콘텐츠 항목들을 상기 추천 발생기로부터 획득하고 - 상기 제2 복수의 뉴스 콘텐츠 항목들은 상기 새로운 지리적 위치와 관련된 뉴스 콘텐츠 항목들을 포함함 -;
상기 새로운 지리적 위치 및 상기 추천된 제2 복수의 뉴스 콘텐츠 항목들 중 적어도 하나와 관련된 마커를 포함하는 업데이트된 지도를 상기 컴퓨터에 제공하도록 더 구성되는, 시스템.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/144,549 US9489112B2 (en) | 2013-12-31 | 2013-12-31 | Recommended news edition on a map using geo entities |
US14/144,551 | 2013-12-31 | ||
US14/144,549 | 2013-12-31 | ||
US14/144,551 US9569547B2 (en) | 2013-12-31 | 2013-12-31 | Generating a news timeline |
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 KR20160104067A (ko) | 2016-09-02 |
KR102117143B1 true KR102117143B1 (ko) | 2020-05-29 |
Family
ID=53493352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020167021015A KR102117143B1 (ko) | 2013-12-31 | 2014-12-31 | 뉴스 타임라인 및 추천된 뉴스 에디션들의 발생 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP3090403A4 (ko) |
JP (1) | JP6594317B2 (ko) |
KR (1) | KR102117143B1 (ko) |
CN (1) | CN105849765A (ko) |
WO (1) | WO2015101945A1 (ko) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10129309B2 (en) | 2015-10-08 | 2018-11-13 | Google Llc | Mixing content into a content stream |
CN106354837A (zh) * | 2016-08-31 | 2017-01-25 | 上海交通大学 | 一种新闻可视化的方法 |
KR101907865B1 (ko) | 2016-11-03 | 2018-10-16 | 세종대학교산학협력단 | 뉴스 추천 서버 및 이를 이용한 뉴스 추천 방법 |
CN110019837B (zh) * | 2017-12-22 | 2021-07-16 | 百度在线网络技术(北京)有限公司 | 用户画像的生成方法及装置、计算机设备及可读介质 |
CN112100408B (zh) * | 2020-08-24 | 2022-05-31 | 北京完美知识科技有限公司 | 历史实体数据的展示方法、装置及设备 |
WO2023095088A1 (en) * | 2021-11-29 | 2023-06-01 | Jio Platforms Limited | System and methods for retrieving and generating recommendations of multi-modal documents |
Family Cites Families (14)
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 (ja) * | 2003-12-12 | 2005-06-30 | Canon Inc | 映像受信再生装置を動作させるプログラムおよび当該プログラムを記録したコンピュータ可読である記憶媒体および、映像受信再生装置および方法 |
US8676837B2 (en) * | 2003-12-31 | 2014-03-18 | Google Inc. | Systems and methods for personalizing aggregated news content |
KR100650119B1 (ko) * | 2005-07-06 | 2006-11-27 | 어윤형 | 지구시계연계-뉴스 제공 시스템 |
US20080082578A1 (en) * | 2006-09-29 | 2008-04-03 | Andrew Hogue | Displaying search results on a one or two dimensional graph |
US10698886B2 (en) * | 2007-08-14 | 2020-06-30 | John Nicholas And Kristin Gross Trust U/A/D | Temporal based online search and advertising |
JP4538038B2 (ja) * | 2007-10-11 | 2010-09-08 | 日本電信電話株式会社 | 情報配信装置、情報配信方法、および情報配信プログラム |
JP5361272B2 (ja) * | 2008-07-28 | 2013-12-04 | 株式会社Jq | 情報管理サーバ、情報管理方法、情報管理システムおよびプログラム |
CN101651634A (zh) * | 2008-08-13 | 2010-02-17 | 阿里巴巴集团控股有限公司 | 提供地域化信息的方法和系统 |
US8423088B2 (en) * | 2009-07-22 | 2013-04-16 | Microsoft Corporation | Aggregated, interactive communication timeline |
US9690804B2 (en) * | 2010-05-28 | 2017-06-27 | Rakuten, Inc. | Information processing device, information processing method, information processing program, and recording medium |
KR20120104648A (ko) * | 2010-10-26 | 2012-09-24 | 주식회사 케이티 | 개인 맞춤형 컨텐츠 추천 장치 및 그 방법과 그를 이용한 시스템 및 그 방법 |
US8849829B2 (en) | 2011-12-06 | 2014-09-30 | Google Inc. | Trending search magazines |
US8370348B1 (en) * | 2011-12-06 | 2013-02-05 | Google Inc. | Magazine edition recommendations |
-
2014
- 2014-12-31 KR KR1020167021015A patent/KR102117143B1/ko active IP Right Grant
- 2014-12-31 WO PCT/IB2014/067452 patent/WO2015101945A1/en active Application Filing
- 2014-12-31 CN CN201480070430.9A patent/CN105849765A/zh active Pending
- 2014-12-31 JP JP2016543079A patent/JP6594317B2/ja active Active
- 2014-12-31 EP EP14876672.8A patent/EP3090403A4/en not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
JP6594317B2 (ja) | 2019-10-23 |
EP3090403A4 (en) | 2017-07-05 |
WO2015101945A1 (en) | 2015-07-09 |
EP3090403A1 (en) | 2016-11-09 |
JP2017501501A (ja) | 2017-01-12 |
KR20160104067A (ko) | 2016-09-02 |
CN105849765A (zh) | 2016-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9569547B2 (en) | Generating a news timeline | |
US9489112B2 (en) | Recommended news edition on a map using geo entities | |
US11016638B2 (en) | Interactive answer boxes for user search queries | |
KR102117143B1 (ko) | 뉴스 타임라인 및 추천된 뉴스 에디션들의 발생 | |
US9811245B2 (en) | Systems and methods for displaying an image capturing mode and a content viewing mode | |
US9613132B2 (en) | Method of and system for displaying a plurality of user-selectable refinements to a search query | |
US11706318B2 (en) | Structured entity information page | |
US10628463B2 (en) | Applying geo-tags to digital media captured without location information | |
US20170017364A1 (en) | Publishing electronic documents utilizing navigation information | |
US9563695B2 (en) | Personalized electronic magazine | |
EP3529714B1 (en) | Animated snippets for search results | |
US10592565B2 (en) | Method and apparatus for providing recommended information | |
US9268858B1 (en) | Previewing content based on detected customer activities | |
US9710563B2 (en) | Search engine analytics and optimization for media content in social networks | |
KR20220145424A (ko) | 검색/생성된 디지털 미디어 파일을 기반으로 잠재적 관련성에 대한 주제 예측 | |
TW201541266A (zh) | 呈現搜索結果的方法和裝置 | |
US20240086479A1 (en) | Identification and Issuance of Repeatable Queries | |
US20170109451A1 (en) | In-view and out-of-view request-related result regions for respective result categories | |
US11003830B2 (en) | Providing location-based font recommendations | |
US11250081B1 (en) | Predictive search |
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 |