KR102626662B1 - 오버래핑 미디어 카탈로그들을 위한 글로벌 추천 시스템 - Google Patents
오버래핑 미디어 카탈로그들을 위한 글로벌 추천 시스템 Download PDFInfo
- Publication number
- KR102626662B1 KR102626662B1 KR1020177032151A KR20177032151A KR102626662B1 KR 102626662 B1 KR102626662 B1 KR 102626662B1 KR 1020177032151 A KR1020177032151 A KR 1020177032151A KR 20177032151 A KR20177032151 A KR 20177032151A KR 102626662 B1 KR102626662 B1 KR 102626662B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- media item
- users
- media
- catalog
- Prior art date
Links
- 230000000694 effects Effects 0.000 claims abstract description 120
- 238000000034 method Methods 0.000 claims abstract description 50
- 238000012545 processing Methods 0.000 claims description 42
- 238000013500 data storage Methods 0.000 claims description 17
- 230000003993 interaction Effects 0.000 claims description 5
- 239000011159 matrix material Substances 0.000 description 38
- 230000015654 memory Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 13
- 238000013459 approach Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 241001494479 Pecora Species 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 241000699666 Mus <mouse, genus> Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 241000183290 Scleropages leichardti Species 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/435—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
컴퓨터-구현 방법 및 그 방법을 구현하기 위한 시스템이 제공된다. 방법은 스트리밍 미디어 시스템의 제1 세트의 사용자들에 대한 사용자 활동 데이터를 수신하는 단계를 포함하며, 제1 세트의 사용자들은 제1 카탈로그에 대한 액세스를 가진다. 제2 세트의 사용자들에 대한 부가적인 사용자 활동 데이터가 수신된다. 제2 세트의 사용자들은 제1 카탈로그에 또한 제시된 미디어 아이템들을 포함하는 제2 카탈로그에 대한 액세스를 가진다. 제2 카탈로그는 제1 카탈로그에 포함되지 않은 배타적인 미디어 아이템을 더 포함한다. 배타적인 미디어 아이템과 함께 스트리밍 미디어 시스템에 의해 제시되는 경우에, 제1 세트의 사용자들 중의 사용자가 배타적인 미디어 아이템을 플레이할 확률이 결정된다. 확률에 기반하여 배타적인 미디어 아이템을 플레이하기 위한 추천으로서 제2 세트의 사용자들 중의 사용자에게 정보가 제공된다.
Description
[0001] 본 개시내용은 일반적으로 오디오 및 비디오를 포함하는 미디어 아이템들을, 네트워크를 통해, 상이한 미디어 아이템 카탈로그들에 액세스하도록 허용될 수 있는 수 많은 사용자들에게 배포하는 것에 관한 것이다.
[0002] 소비자들은 케이블 또는 위성 텔레비전 제공자에 가입하여 오버 디 에어 신호(over the air signal)들을 수신함으로써 미디어 아이템들, 이를 테면, 영화들 및 텔레비전 쇼들에 액세스할 수 있는 반면에, 점점 더 많은 소비자들이 인터넷 기반 시스템을 통해 점점 더 많은 콘텐츠에 액세스하고 있다. 일부 인터넷-기반 시스템들은, 사용자들이 콘텐츠를 인터넷을 통해 다양한 클라이언트 디바이스들로 스트리밍할 수 있게 한다. 예를 들어, 스트리밍 미디어 시스템은 개인 컴퓨터, 셋톱 박스, 또는 개인 모바일 디바이스, 이를 테면, 스마트 폰 또는 태블릿 컴퓨터를 통해 사용자들에게 콘텐츠를 제공할 수 있다. 스트리밍 미디어 시스템들은, 사용자들이 스트림 내의 미디어 콘텐츠에 액세스할 수 있게 하여, 콘텐츠 전체가 사용자의 클라이언트 디바이스에 전달되기 전에 사용자들이 콘텐츠를 소비(예를 들어, 시청 및/또는 청취)하기 시작할 수 있다. 이러한 시스템은, 사용자들이 잠재적으로 긴 다운로드 프로세스를 피하면서 콘텐츠에 액세스할 수 있게 한다.
[0003] 사용자들에게 만족스러운 콘텐츠를 제공하기 위해서, 스트리밍 미디어 시스템의 운영자들은, 그의 사용자들이 소비할 콘텐츠에 라이센스를 부여하고 그리고/또는 고품질의 원본 콘텐츠를 개발할 수 있다. 이는, 상당한 콘텐츠 라이브러리 또는 카탈로그의 생성을 수반할 수 있다. 사용자는 검색 프로세스를 통해 그리고/또는 시스템 운영자에 의해 제어되는 추천 프로세스에 의해 카탈로그 내의 개별 미디어 아이템들에 액세스할 수 있다. 검색들 및/또는 추천들을 통해, 사용자들이 사용자의 개인 선호도와 잘 상관되는 콘텐츠를 찾을 수 있도록 도와줌으로써, 스트리밍 미디어 시스템의 운영자는 그의 사용자에게 가치를 제공한다.
[0004] 그러나, 스트리밍 미디어 시스템의 운영자가 점점 더 많은 콘텐츠를 포함하고 관할 구역 제한들을 갖는 미디어 라이센스들에 대응하는 다수의 라이브러리들 또는 카탈로그들을 포함하기 때문에 문제들이 발생할 수 있다. 소규모 관할 구역들 내의 사용자들의 명시적이고 추론된 선호도는 대규모 관할 구역들 내의 사용자들의 선호도들에 의해 묻혀질 수 있다. 이는, 추천들이 히스토리를 검토하는 것과 같은 사용자 활동 데이터를 기반으로 하는 경우 부분적으로 발생할 수 있다. 따라서, 사용자들에게 추천들을 제공하는 프로세스는 모든 측면들에 있어서 만족스럽지 않다.
[0005] 도 1은 본 개시내용의 일부 실시예들에 따른, 사용자들이 스트리밍 미디어 아이템들에 액세스할 수 있게 하는 스트리밍 미디어 시스템의 블록도이다.
[0006] 도 2는 본 개시내용의 일부 실시예들에 따른, 도 1의 스트리밍 미디어 시스템의 일부로서 사용될 수 있는 클라이언트 디바이스의 블록도이다.
[0007] 도 3은 본 개시내용의 일부 실시예들에 따른, 도 1의 스트리밍 미디어 시스템에서 사용될 수 있는 서버 디바이스의 블록도이다.
[0008] 도 4는 본 개시내용의 일부 실시예들에 따른, 개인 모바일 클라이언트 디바이스에 제공되는 예시적인 사용자 인터페이스이다.
[0009] 도 5a는 본 개시내용의 일부 실시예들에 따른, 제1 미디어 아이템 카탈로그를 예시하는 다이어그램이다.
[0010] 도 5b는 본 개시내용의 일부 실시예들에 따른, 제2 미디어 아이템 카탈로그를 예시하는 다이어그램이다.
[0011] 도 6은 본 개시내용의 일부 실시예들에 따른, 스트리밍 미디어 시스템의 사용자들을 미디어 아이템 카탈로그에 링크시키는 데이터베이스의 다이어그램이다.
[0012] 도 7은 본 개시내용의 일부 실시예들에 따른, 스트리밍 미디어 시스템의 사용자들을 스트리밍 매체 시스템에서 식별된 하나 또는 그 초과의 클러스터들에 연관시키는 데이터베이스의 다이어그램이다.
[0013] 도 8a는 본 개시내용의 일부 실시예들에 따른, 사용자 활동 데이터의 매트릭스를 예시하는 다이어그램이다.
[0014] 도 8b는 본 개시내용의 일부 실시예들에 따른, 생성된 플레이 레코드들을 포함하는 사용자 활동의 매트릭스를 예시하는 다이어그램이다.
[0015] 도 9a, 9b, 9c 및 9d는 본 개시내용의 일부 실시예들에 따른, 스트리밍 미디어 시스템의 사용자들에게 추천들을 제공하기 위해 사용될 수 있는 그래픽 모델들 또는 플레이트 표기(plate notation) 모델들이다.
[0016] 도 10은 일부 실시예들에 따른, 추천들을 스트리밍 미디어 시스템의 사용자들에게 제공하는 방법을 예시하는 흐름도이다.
[0017] 도 11은 일부 실시예들에 따른, 추천들을 스트리밍 미디어 시스템의 사용자들에게 제공하는 다른 방법을 예시하는 흐름도이다.
[0018] 이들 도면들은 다음의 상세한 설명을 참조함으로써 당업자에 의해 더 잘 이해될 것이다.
[0006] 도 2는 본 개시내용의 일부 실시예들에 따른, 도 1의 스트리밍 미디어 시스템의 일부로서 사용될 수 있는 클라이언트 디바이스의 블록도이다.
[0007] 도 3은 본 개시내용의 일부 실시예들에 따른, 도 1의 스트리밍 미디어 시스템에서 사용될 수 있는 서버 디바이스의 블록도이다.
[0008] 도 4는 본 개시내용의 일부 실시예들에 따른, 개인 모바일 클라이언트 디바이스에 제공되는 예시적인 사용자 인터페이스이다.
[0009] 도 5a는 본 개시내용의 일부 실시예들에 따른, 제1 미디어 아이템 카탈로그를 예시하는 다이어그램이다.
[0010] 도 5b는 본 개시내용의 일부 실시예들에 따른, 제2 미디어 아이템 카탈로그를 예시하는 다이어그램이다.
[0011] 도 6은 본 개시내용의 일부 실시예들에 따른, 스트리밍 미디어 시스템의 사용자들을 미디어 아이템 카탈로그에 링크시키는 데이터베이스의 다이어그램이다.
[0012] 도 7은 본 개시내용의 일부 실시예들에 따른, 스트리밍 미디어 시스템의 사용자들을 스트리밍 매체 시스템에서 식별된 하나 또는 그 초과의 클러스터들에 연관시키는 데이터베이스의 다이어그램이다.
[0013] 도 8a는 본 개시내용의 일부 실시예들에 따른, 사용자 활동 데이터의 매트릭스를 예시하는 다이어그램이다.
[0014] 도 8b는 본 개시내용의 일부 실시예들에 따른, 생성된 플레이 레코드들을 포함하는 사용자 활동의 매트릭스를 예시하는 다이어그램이다.
[0015] 도 9a, 9b, 9c 및 9d는 본 개시내용의 일부 실시예들에 따른, 스트리밍 미디어 시스템의 사용자들에게 추천들을 제공하기 위해 사용될 수 있는 그래픽 모델들 또는 플레이트 표기(plate notation) 모델들이다.
[0016] 도 10은 일부 실시예들에 따른, 추천들을 스트리밍 미디어 시스템의 사용자들에게 제공하는 방법을 예시하는 흐름도이다.
[0017] 도 11은 일부 실시예들에 따른, 추천들을 스트리밍 미디어 시스템의 사용자들에게 제공하는 다른 방법을 예시하는 흐름도이다.
[0018] 이들 도면들은 다음의 상세한 설명을 참조함으로써 당업자에 의해 더 잘 이해될 것이다.
[0019] 위에서 간략하게 설명한 도면들을 참조하면, 본 개시내용에 따른 시스템들 및 방법들의 예시적인 애플리케이션들이 이 섹션에서 설명된다. 이들 예들은 본 발명의 이해를 돕고 맥락을 추가하기 위해 제공된다. 따라서, 본 발명은 이러한 특정 세부사항들의 일부 또는 전부 없이 실시될 수 있다는 것이 당업자에게 자명할 것이다. 다른 경우들에서, 본 개시내용을 불필요하게 모호하게 하는 것을 피하기 위해 잘 알려진 프로세스 단계들은 상세히 설명되지 않는다. 또한, 본원에서 설명된 개념들 및 원리들의 다른 애플리케이션이 가능하여서, 아래의 실시예들은 제한적인 것으로 해석되지 않아야 한다. 예컨대, 본원에서 개시된 예들의 대부분이 스트리밍 미디어에 관한 것이지만, 설명된 원리들 및 개념들은 구매, 임대, 다운로드 등과 같은 다른 방식들로 소비를 위한 미디어 아이템들을 부가적으로 또는 대안적으로 제공하는 시스템에서 추천들을 제공하도록 적용될 수 있다.
[0020] 하기의 상세한 설명에서, 설명의 부분을 형성하고 예시로서, 본 개시내용의 특정 실시예들을 도시하는 첨부 도면들에 대한 참조가 이루어진다. 이들 실시예들은 당업자가 본 발명을 실시할 수 있게 하기에 충분히 상세히 설명되지만, 이들 예들은 제한적이지 않아서, 본 발명의 사상 및 범위를 벗어남 없이, 다른 실시예들이 사용될 수 있으며, 변경들이 이루어질 수 있다는 것이 이해된다.
[0021] 스트리밍 미디어 시스템들의 사용자들에게로의 추천들의 프로비전과 관련된 활동들을 수행하기 위한 디바이스들, 시스템들 및 방법들이 제공된다. 다양한 특정 실시예들에서, 디바이스들, 시스템들 또는 방법들은 (예컨대, 시청 및/또는 청취하기 위해) 소비를 위한 스트리밍 미디어 아이템들을 사용자에게 제공하기 위해 네트워크를 통해 통신하는 하나 또는 그 초과의 디바이스들을 수반한다.
[0022] 일부 추천 시스템들은, 이전에 소비된 미디어 아이템들이 다시 소비되도록 하기 위하여 또는 사용자 소비를 위한 새로운 미디어 아이템들의 추천들을 행하는데 있어서 오직 이전에 소비된 미디어 아이템들의 이력과 같은 사용자 활동 데이터에만 의존할 수 있다. 고객들을 만족시키기 위해, 각각의 사용자에 최적의 추천을 제공하는 것이 이상적이다. 그러나, 그러한 추천들을 제공하는 것은 다양한 팩터들에 의해 복잡해진다. 예컨대, 제1 미디어 아이템이 (예컨대, 사용자 인터페이스의 추천된 미디어 아이템으로서) 매우 많은 수의 사용자들에게 제시되는 경우, 이들 사용자들의 상당한 수는 추천에 기반하여 미디어 아이템을 선택할 수 있다. 이는 부가적인 플레이 레코드(play record)들이 사용자 활동 데이터에 포함되게 한다. 이러한 부가적인 플레이 레코드들이 추천 엔진에 의해 동작되는 데이터 세트에 추가되는 한, 피드백 루프가 생성될 수 있다. 이러한 피드백 루프 때문에, 제1 미디어 아이템은 그의 본질적인 가치(intrinsic merit) 보다 또는 사용자들이 표시할 실제 승인 보다 훨씬 더 많이 추천될 수 있다. 피드백 루프는 특히 추천 엔진의 사용으로 인해 발생하는 문제를 제시한다. 제1 미디어 아이템의 추천들이, (예컨대, 제2 미디어 아이템을 한 명 초과의 사용자들에게 제시된 추천들의 리스트 아래로 더 이동시키거나 또는 추천들로부터 제2 미디어 아이템을 완전히 제거함으로써) 사용자가 더 좋아했을 제2 미디어 아이템의 추천들을 대체하는 한, 사용자들은 스트리밍 미디어 시스템에 덜 만족할 수 있다. 다시 말해서, 피드백 루프는 본질적으로 더 인기있는 미디어 아이템보다 본질적으로 덜 인기있는 미디어 아이템을 인위적으로 더 홍보할 수 있다.
[0023] 부가적으로, 상이한 사용자들 또는 사용자의 그룹들이 액세스하는 오버래핑 미디어 아이템 카탈로그들의 맥락에서 유사하지만 별개의 문제가 발생할 수 있다. 또한, 아래에 설명되는 이 별개의 문제는, 하나의 관할 구역에 저장된 임의의 미디어 아이템을 임의의 다른 관할 구역의 사용자들에게 기술적으로 제공할 수 있는 인터넷-기반 미디어 시스템의 특이성으로 인해 자연스럽게 발생한다. 일부 실시예들에서, 스트리밍 미디어 시스템 운영자는 저작권 보유자로부터의 콘텐츠의 라이센싱-인(licensing-in)을 통해 콘텐츠를 사용자에게 제공할 수 있다. 영화들, 텔레비전 쇼들, 라이브 이벤트 등과 같은 콘텐츠가 스트리밍 미디어 시스템 운영자에 의해 라이센싱 인될 때, 라이센스는 특정된, 제한된 지리적, 정치적 또는 관할 구역 범위, 이를테면, 나라, 나라 내의 구획, 또는 조직된 지역, 이를테면, 다수의 나라들을 포함하는 경제 협력 구역을 가질 수 있다. 예컨대, 영화에 대한 저작권 소유자는, 제2 나라의 사용자들에게 그 영화를 스트리밍할 권리를 제1 나라의 제1 스트리밍 미디어 시스템 운영자에게 부여하지 않고 그 제1 스트리밍 미디어 시스템 운영자에게 그 영화를 라이센싱하는 것을 선정할 수 있다. 스트리밍 미디어 시스템 운영자가 제1 및 제2 나라들 둘 모두 내에서 스트리밍 미디어 서비스들을 제공하는 경우, 스트리밍 미디어 시스템은 제1 나라 내의 사용자들에게 영화를 포함하는 제1 미디어 아이템 카탈로그 및 제2 나라의 사용자들에게 영화를 포함하지 않는 제2 미디어 아이템 카탈로그를 제공할 수 있다. 일부 실시예들에서, 제1 레이트(제로일 수 있음)를 지불하는 가입자들에게 콘텐츠의 일부 또는 분량을 제공하면서 더 높은 레이트를 지불하는 가입자들에게 독점적인 콘텐츠를 제공하기 위하여 지불-장벽(pay-wall) 또는 계층적 가입료(tiered subscription fee)들이 사용될 때, 오버래핑 미디어 아이템 카탈로그들이 존재할 수 있다. 본원에서 제시되는 솔루션들은, 지불-장벽이 별개의, 그러나 오버래핑하는 미디어 아이템 카탈로그들을 사용자들에 제공하는데 사용되는 개선된 추천들을 제공할 수 있지만, 본원에서 설명되는 상이한 법률적 관할 구역들 또는 지리적 관할 구역들은 지불-장벽에 기반하지 않을 수 있다.
[0024] 전세계의 나라들 및 지역들의 인구들 및 인터넷 인프라구조가 상당히 다를 수 있기 때문에, 스트리밍 미디어 시스템의 사용자들의 수가 또한 상당히 다를 수 있다. 예컨대, 스트리밍 미디어 시스템 운영자는 미국 내의 사용자들에게 이용가능한 제1 미디어 아이템 카탈로그 및 뉴질랜드 내의 사용자들에게 이용가능한 제2 미디어 아이템 카탈로그를 가질 수 있다. 이러한 나라들 둘 모두가 충분한 인프라구조를 가질 수 있지만, 미국의 인구는 거의 3억 2천만 명인 반면에, 뉴질랜드의 인구는 약 4백 50만 명이다. 이러한 인구들이 스트리밍 미디어 시스템의 사용자들의 수를 반드시 반영하지는 않지만, 이러한 인구들은 이러한 2 개의 관할 구역들 내의 사용자들이 모여지는 풀(pool)을 제공한다.
[0025] 추천들이 각각의 미디어 아이템의 플레이 레이트 또는 플레이 카운트에 기반할 때, 미국이 아닌 뉴질랜드에서 이용가능한 미디어 아이템은 간단히 추천에서 나타날 가능성이 없을 것인데, 왜냐하면 뉴질랜드 내의 제한된 사용자들의 인구가 미국 내의 사용자들에게 이용가능한 비교할 만한 인기있는 미디어 아이템들의 플레이 카운트들과 비교하여 대등하게 인기있는 미디어 아이템들의 플레이 카운트들을 제한하기 때문이다. 만일 뉴질랜드의 사용자들에 대한 추천들이 미국의 사용자들의 선택과 연관된 플레이 카운트들을 포함하면, 뉴질랜드 미디어 아이템 카탈로그에 배타적인 미디어 아이템들은 임의의 상당한 수의 사용자들에게 추천될 가능성이 없다.
[0026] 별개의 미디어 아이템 카탈로그들에 액세스하는, 상이한 관할 구역들의 사용자들에게 추천들을 제공하기 위한 하나의 접근법은 하나의 카탈로그와 연관된 사용자들에 대한 추천들을, 그 카탈로그에 대한 액세스를 갖는 사용자들로부터 유도된 사용자 활동 데이터에만 기반하는 것이다. 이러한 방식으로, 하나의 관할 구역의 상대적으로 매우 많은 수의 플레이 카운트들이 다른 관할 구역 내의 플레이 카운트들로부터 유도된 추천들에 영향을 주지 않을 것이다.
[0027] 관할 구역들의 사용자들에게 추천들을 제공하기 위한 다른 접근법은 사용자들에 대한 추천들을 "테이크-레이트"에 기반하는 것이고, 여기서는 미디어 아이템들의 프리젠테이션들 또는 추천들에 관한 정보가 고려된다. 예컨대, 추천들은, 특정 미디어 아이템이 사용자에게 제시될 때, 그 특정 미디어 아이템이 사용자에 의해 선택되는지 또는 플레이되는지에 기반하여 모델-구동 추천 또는 프리젠테이션 엔진에 의해 생성될 수 있다. 따라서, 추천들은, 특정 미디어 아이템이 사용자에게 추천되었는지 여부 및 그 사용자가 플레이될 특정 미디어 아이템을 선택하였는지 여부의 표시를 포함하는, 각각의 미디어 아이템에 대한 정보의 적어도 2 개의 피스(piece)들에 기반하여 생성될 수 있다. 이러한 정보의 2 개의 피스들은 정보의 3원 피스(ternary piece)를 제공하도록 결합될 수 있다. "테이크-레이트" 또는 "프리젠테이션"에 기반하여, 주어진 미디어 아이템 카탈로그 내의 각각의 미디어 아이템에 대해, 각각의 사용자에게는: (1) 미디어 아이템이 추천되었고 미디어 아이템이 플레이되었거나, (2) 미디어 아이템이 추천되었고 미디어 아이템이 플레이되지 않았거나, (3) 미디어 아이템이 추천되지 않았고, 미디어 아이템이 플레이되지 않았다. 일부 실시예들에서, 미디어 아이템이 추천되지 않았고, 플레이되었다는 것을 표시하는 정보는 물론 추천들을 모델링하는데 사용될 수 있다.
[0028] 사용자 활동 데이터에서 액세스가능한 이러한 테이크-레이트 정보를 사용함으로써, 추천들은 추천들 자체에 의해 도입된 프리젠테이션 바이어스, 및 별개이지만 오버래핑 미디어 아이템 카탈로그들의 존재에 의해 도입된 프리젠테이션 바이어스 둘 모두를 고려할 수 있다. 예컨대, 특정 미디어 아이템에 대한 추천들의 수가 증가하고, 특정 미디어 아이템의 플레이들의 수가 비례하여 증가하지 않는다면, 추천은 테이크-레이트 정보를 사용하고, 그 특정 미디어 아이템을 덜 빈번하게 추천하거나 진행되는 추천들의 랭킹에서 낮아지도록 결정할 수 있다. 다른 예로서, 테이크-레이트 정보가 추천들을 뉴질랜드인들(또는 더 작은 관할 구역의 다른 세트의 사용자들)에 제공하는데 사용될 때, 뉴질랜드-배타적인 미디어 아이템들이 뉴질랜드 및 미국 미디어 아이템 카탈로그들 둘 모두에 공통인 미디어 아이템들 만큼 많은 사용자들에게 제시되지 않는다는 사실은 뉴질랜드 내의 사용자들 사이에서 배타적인 미디어 아이템들의 인기에 따라 배타적인 미디어 아이템들이 뉴질랜드-기반 사용자들에게 추천되는 것을 가능하게 할 수 있다.
[0029] 명세서 전반에 걸쳐 "다양한 실시예들", "일부 실시예들", "일 실시예", "실시예", "다양한 예들", "일 예", "예", 또는 "일부 예들"에 대한 참조는, 실시예 또는 예와 관련하여 설명된 특정 특징, 구조 또는 특성이 적어도 하나의 실시예에 포함됨을 의미한다. 따라서, 이들 단어들의 등장들이 반드시 동일한 실시예 모두를 지칭하는 것은 아니다. 더욱이, 특정 특징들, 구조들 또는 특성들은 하나 또는 그 초과의 실시예들에서 임의의 적절한 방식으로 결합될 수 있다.
[0030] 이제 도 1을 참조하면, 도 1에는 사용자들이 스트리밍 미디어 아이템들에 액세스하도록 허용하는 스트리밍 미디어 시스템(100)의 블록 다이어그램이 도시되어 있다. 스트리밍 미디어 시스템(100)은 네트워크(120)를 통해 다수의 클라이언트 디바이스들과 통신하는 것으로 예시된 스트리밍 미디어 서버(110)를 포함한다. 스트리밍 미디어 서버(110)는, 설명된 실시예들에 따라 다양한 동작들을 수행하도록 동작하는 복수의 서버들 및/또는 소프트웨어 컴포넌트들을 포함하거나 또는 이들을 구현할 수 있다. 예시적인 서버들은, 예컨대, 서버 OS(operating system), 이를테면 MICROSOFT® OS, UNIX® OS, LINUX® OS 또는 다른 적절한 서버-기반 운영 시스템을 동작시키는 독립형 및 엔터프라이즈급 서버들을 포함할 수 있다. 도 1에 예시된 서버(110)는 다른 방식들로 전개될 수 있고, 이러한 서버들에 의해 제공되는 서비스들 및/또는 수행되는 동작들은 주어진 구현을 위해 결합되거나 분리될 수 있으며 더 많은 수의 또는 더 적은 수의 개별적인 서버 디바이스들에 의해 수행될 수 있다는 것이 인지될 수 있다. 하나 또는 그 초과의 서버들은 동일한 또는 상이한 엔티티들에 의해 동작되고 그리고/또는 유지될 수 있다. 예시된 바와 같이, 서버(110)는 스트리밍 미디어 서비스 제공자(또한 본원에서는 스트리밍 미디어 시스템 운영자로 지칭됨)에 의해 동작된다.
[0031] 클라이언트 디바이스들과 스트리밍 미디어 서버 간의 데이터 및/또는 음성 통신들은 네트워크(120)를 통해 전송될 수 있으며, 네트워크(120)는 하나 또는 그 초과의 네트워크들, 이를테면 인터넷, WAN, WWAN, WLAN, 모바일 텔레폰 네트워크, 랜드라인 텔레폰 네트워크, VoIP 네트워크뿐만 아니라 다른 적절한 네트워크들을 포함할 수 있다.
[0032] 미디어 스트리밍 시스템은 컴퓨터(130) 상에서 동작하는 스트리밍 미디어 인터페이스(134)를 더 포함할 수 있다. 컴퓨터(130)는 하나 또는 그 초과의 클라이언트 디바이스들, 이를테면 개인 컴퓨터, 랩톱, 모바일-컴퓨팅 디바이스, 이를테면 태블릿 컴퓨터 또는 스마트폰, 웨어러블 컴퓨팅 디바이스, 및/또는 설명된 실시예들에 따라 컴퓨팅 및/또는 통신 성능들을 갖는 임의의 다른 컴퓨팅 디바이스를 포함하거나 이를 사용할 수 있다. 컴퓨터(130)는, 프로세싱 디바이스 및 데이터 저장 디바이스 또는 메모리를 포함하며, 다양한 컴퓨팅 및/또는 통신 동작들을 수행하기 위해 시스템 프로그램들 및 애플리케이션 프로그램들에 대응하는 명령들을 실행할 수 있다. 예시적인 시스템 프로그램들은, 제한없이, 운영 시스템(예컨대, iOS®, Android® OS, LINUX® OS, Firefox OS™, Windows®, OS X®, BREW(Binary Run-time Environment for Wireless) OS, JavaOS, WAP(Wireless Application Protocol) OS 등), 디바이스 구동기들, 프로그래밍 툴들, 유틸리티 프로그램들, 소프트웨어 라이브러리들, API(application programming interface)들 등을 포함할 수 있다. 도 1에 도시된 것처럼, 컴퓨터(130)는 브라우저(132)를 제공하기 위해 소프트웨어를 실행한다. 브라우저(132)는 웹 브라우징 프로그램, 이를테면 Internet Explorer®, Chrome® 등일 수 있으며, 결국 브라우저(132)는 스트리밍 미디어 시스템 운영자에 의해 제공되는 스트리밍 미디어 인터페이스(134)를 지원할 수 있다. 일부 실시예들에서, 스트리밍 미디어 인터페이스(134)는 브라우저(132)와 독립적으로 실행되는 별개의 애플리케이션일 수 있다. 브라우저(132) 및/또는 스트리밍 미디어 인터페이스(134)를 실행할 때, 컴퓨터(130)는 디스플레이(136)에서의 프리젠테이션을 위해 정보를 렌더링한다. 다양한 실시예들에서, 디스플레이(136)는 컴퓨터(130)의 하우징과 통합될 수 있거나 또는 물리적으로는 컴퓨터(130)로부터 분리되지만 유선 및/또는 무선 통신 링크에 의해 컴퓨터(130)와 커플링될 수 있다.
[0033] 스트리밍 미디어 시스템(100)은 디스플레이(142)에 커플링된 스트리밍 미디어 클라이언트 디바이스(140)를 더 포함한다. 예컨대, 스트리밍 미디어 클라이언트 디바이스(140)는 디스플레이(142)와 직접 통신하도록 설계 및 구성된 셋톱 박스 설계일 수 있다. 예컨대, 스트리밍 미디어 클라이언트 디바이스(140)는 캘리포니아 사라토가의 Roku, Inc.에 의해 만들어진 스트리밍 미디어 플레이어 또는 Apple TV® 디바이스일 수 있다. 일부 실시예들에서, 스트리밍 미디어 클라이언트 디바이스(140)는 "스마트" 텔레비전에서 디스플레이(142)와 통합될 수 있다. 동작시, 스트리밍 미디어 시스템(100)은, 스트리밍 미디어 서버(110)가, 네트워크(120)를 통해, 컴퓨터(130) 및/또는 스트리밍 미디어 클라이언트 디바이스(140)를 동작시키는 사용자들로부터의 콘텐츠에 대한 요청들을 수신하고, 응답으로 네트워크(120)를 통해 스트리밍 미디어 아이템들을 제공하도록 허용한다. 스트리밍 미디어 서버로부터 수신된 정보는 하나 또는 그 초과의 그래픽 사용자 인터페이스들에서 디스플레이들(136 및/또는 142)에 렌더링된다.
[0034] 이제 도 2를 참조하면, 도 2에는 클라이언트 디바이스(200)로서 나타낸, 스트리밍 미디어 디바이스(140) 및/또는 컴퓨터(130)의 예시적인 실시예가 도시되어 있다. 클라이언트 디바이스(200)는 버스(206)를 통해 데이터 저장 디바이스 또는 메모리(204)와 통신하는 프로세서(202)를 포함한다. 버스는 네트워크 인터페이스 디바이스(208) 및 I/O 디바이스 인터페이스(210)를 추가로 커플링한다. 네트워크 인터페이스 디바이스(208)는, 클라이언트 디바이스(200)가 네트워크(120)와 통신하도록 허용하는 네트워크 인터페이스 카드 또는 NIC(network interface controller)일 수 있다. I/O 디바이스 인터페이스(210)는 스트리밍 미디어 아이템들 및/또는 그와 연관된 그래픽 사용자 인터페이스들을 디스플레이하기 위해 디스플레이(212)에 렌더링될 정보를 클라이언트가 통신하는 것을 가능하게 한다. 게다가, I/O 디바이스 인터페이스(210)는, I/O 디바이스들, 이를테면, 적외선 또는 무선-주파수 원격 제어들, 키보드들, 마우스들, 터치스크린들 등과 통신할 수 있다. 프로세서(202)는 메모리(204) 내에 저장된 소프트웨어 및/또는 다른 명령들을 실행할 수 있다. 메모리(204)는 클라이언트 디바이스(200)의 하우징에 포함되거나 또는 클라이언트 디바이스(200)에 커플링되고 그리고 그와 통신하는 상이한 타입들의 메모리들의 집합(collection)일 수 있다. 예컨대, 메모리(204)는 캐시 메모리, RAM, ROM, 고체-상태 하드 드라이브, 디스크-기반 하드 드라이브, 및/또는 다른 메모리 디바이스들을 포함할 수 있다. 메모리(204)에 저장된 것으로서 도시된 특징들은 이러한 상이한 타입들의 메모리들의 임의의 조합에 저장되고 그리고/또는 그로부터 액세스될 수 있다.
[0035] 도 2에 예시된 바와 같이, 메모리(204)는, 도 1의 스트리밍 미디어 서버(110)와 통신하도록 구성된 스트리밍 미디어 클라이언트를 제공하기 위해서 프로세서(202)에 의해 실행되는 프로그램일 수 있는 스트리밍 미디어 클라이언트(220)를 포함한다. 스트리밍 미디어 클라이언트(220)는 메모리(204)에 저장된 연관된 정보를 가질 수 있다. 이러한 연관된 정보는 제공되는 미디어 콘텐츠(222), 콘텐츠 브라우징 인터페이스(224), 및 미디어 디코더(226)를 포함할 수 있다. 이러한 연관된 모듈들 또는 컴포넌트들은, 사용자가 추천들을 수신하여 플레이할 미디어 아이템들의 선택들을 행할 수 있게 하는 그래픽 사용자 인터페이스를 스트리밍 미디어 클라이언트(220)가 제공하는 것을 가능하게 한다. 미디어 아이템이 클라이언트 디바이스(200)에 의해 수신될 때, 미디어 아이템의 부분을 나타내는 데이터는 버퍼에 일시적으로 저장될 수 있다. 버퍼가 연속 스트리밍을 제공하기에 충분한 데이터를 포함한 후에, 콘텐츠는 미디어 디코더(226)에 의해 렌더링될 수 있다. 게다가, 메모리(204)는 도 1의 스트리밍 미디어 서버(110)와 클라이언트 디바이스(200)의 사용자 사이의 상호작용들에 관한 정보를 포함할 수 있는 사용자/세션 데이터(228)를 포함한다. 예컨대, 사용자/세션 데이터(228)는 사용자에 의해 행해진 선택들 및/또는 스트리밍 미디어 서버(110)에 의해 행해진 사용자에 대한 프리젠테이션들에 관한 사용자 활동 데이터를 포함할 수 있다. 부가적으로, 사용자/세션 데이터(228)는, 클라이언트 디바이스(200)와 스트리밍 미디어 서버(110) 사이에서의, 평균 쓰루풋 및/또는 피크 쓰루풋을 포함하는 송신들에 관한 정보를 포함할 수 있다. 게다가, 사용자 세션 데이터(228)는 미디어 아이템들을 전달하는 스트림들과 연관된 평균 비트 레이트를 특정하는 정보를 포함할 수 있다. 이러한 방식으로, 적절한 비트 레이트 스트림이 미디어 아이템의 후속 부분들에 대해 선택될 수 있거나 또는 사용자가 재생할 새로운 미디어 아이템을 선택할 때 선택될 수 있다.
[0036] 이제 도 3을 참조하면, 도 3에는 본원에 설명된 바와 같이 도 1의 서버(110)를 제공할 수 있는 서버(300)가 도시되어 있다. 스트리밍 미디어 서버(300)는 본 개시내용의 일부 실시예들에 따라 예시된다. 예시된 바와 같이, 서버(300)는 프로세싱 디바이스 또는 프로세서(302), 이를테면, CPU(central processing unit), 마이크로제어기 등을 포함한다. 프로세서(302)는 버스(306)를 통해 메모리(304)와 통신한다. 또한, 버스는 프로세서(302)를 네트워크 인터페이스(308) 및/또는 I/O 디바이스 인터페이스(310)에 연결한다. 도 2의 클라이언트 디바이스(200)와 관련하여 위에 설명된 바와 같이, 네트워크 인터페이스(308)는, 다수의 디바이스들, 이를테면, 클라이언트 디바이스들 및 다른 서버들 및/또는 미디어 저장 디바이스들과 네트워크(120)를 통해 서버(300)가 통신하는 것을 가능하게 하는 네트워크 인터페이스 카드 또는 NIC(network interface controller)일 수 있다. I/O 디바이스 인터페이스(310)는 하나 또는 그 초과의 I/O 디바이스들, 이를테면 I/O 디바이스(312)에 서버(300)를 커플링한다. I/O 디바이스(312)는 디스플레이, 키보드, 마우스, 터치스크린 등일 수 있다.
[0037] 프로세서(302)는 데이터 저장 디바이스 또는 메모리(304)에 저장된 프로그래밍 명령들을 리트리브하여 실행하며, 추가로, 본원에서 설명된 동작들을 제공하기 위해 프로그래밍 명령들을 실행할 때, 데이터 저장 디바이스 또는 메모리(304)에 저장된 데이터에 액세스할 수 있다. 메모리(304)가 단일 메모리(304)로서 예시되지만, 메모리(304)는 메모리 타입들 및 디바이스들의 집합일 수 있다. 예컨대, 메모리(304)는 캐시 메모리, RAM, ROM, 고체-상태 디바이스들, 자기 디스크-기반 저장 디바이스들 등을 포함할 수 있다. 일부 실시예들에서, 메모리(304)는 SAN(storage area network)을 비롯하여 네트워크-기반 저장소를 더 포함할 수 있다. 예컨대, 스트리밍되는 미디어 아이템으로서 사용자들에게 제공되는 정보는, 서버(300)의 하우징 내에 하우징되지 않은 메모리에 저장될 수 있다.
[0038] 미디어 아이템이 사용자에 의해 선택될 때, 네트워크(120)를 통해 네트워크 인터페이스(308)를 거쳐 사용자에게 미디어 아이템을 제공하기 위하여, 서버(300)는 미디어 아이템이 메모리의 어디에 저장되든 그 미디어 아이템에 액세스할 수 있다. 이는 미디어 서버(320)에 의해 수행될 수 있으며, 예시된 바와 같이, 미디어 서버(320)는 메모리(304)에 저장되고 프로세서(302)에 의해 실행된다. 미디어 서버(320)는, 미디어 아이템들이 저장소로부터 수신되어 네트워크(120)를 통해 사용자에게 제공될 때 미디어 아이템들을 디코딩 및/또는 인코딩하기 위해 사용될 수 있는 미디어 디코더(324) 및 콘텐츠 브라우징 인터페이스(322)를 제공하기 위한 명령들을 포함한다.
[0039] 메모리(304)는, 사용자의 현재 세션과 연관된 정보의 세트일 수 있는 사용자/세션 데이터(326)를 더 포함한다. 예컨대, 사용자/세션 데이터(326)는, 적합한 선택의 오디오/비디오 데이터가 사용자에게 전송되는 것을 가능하게 하기 위해 사용자의 클라이언트 디바이스와의 연결을 특성화하는 비트 레이트를 포함할 수 있다. 사용자/세션 데이터(326)와 연관된 정보의 상이한 부분들이 세션 동안 또는 세션 이후에 다른 데이터베이스들로 이동될 수 있다. 스트리밍 미디어 아이템 카탈로그(328)는 메모리(304)에 저장될 수 있으며, 스트리밍 미디어 시스템의 하나 또는 그 초과의 사용자들이 액세스가능한 미디어 아이템 카탈로그 또는 복수의 미디어 아이템 카탈로그들을 구성할 수 있다. 미디어 아이템 카탈로그(328)에서 나타나는 미디어 아이템들 각각은 복수의 비트 레이트들로 액세스가능할 수 있다. 미디어 아이템의 적합한 비트 레이트 스트림은, 미디어 아이템이 사용자에 의해 선택될 때 서버(300) 또는 클라이언트 디바이스(200)에 의해 선택될 수 있다. 스트리밍 미디어 아이템들(328)과 관련되어, 연관된 미디어 아이템 메타데이터(330)가 메모리(304) 상에 저장될 수 있다. 메타데이터(330)는 미디어 아이템들에 관한 정보, 이를테면 명칭들, 지속기간들, 장르들, (사용자에 의한, 관할 구역에 의한, 또는 그 둘 모두에 의한) 플레이 카운트들, 미디어 아이템들이 특정 사용자에게 제시되었는지 또는 아닌지의 여부의 표시들 등을 포함할 수 있다. 대안적으로, 스트리밍 미디어 아이템 카탈로그(328)는, 콘텐츠 배포 네트워크로부터 이용가능해질 수 있는 실제 미디어 파일들을 설명하는 메타데이터(330)를 포함할 수 있다. 그러한 경우, 미디어 서버(320)는, 콘텐츠 배포 네트워크로부터의 주어진 스트리밍 미디어 아이템을 획득하기 위해 클라이언트에 의해 사용되는 허가를 생성하도록, 그리고 스트리밍 미디어 아이템이 액세스되어야 하는 곳 어디서나 스트리밍 미디어 아이템으로 클라이언트를 향하게 하도록 구성될 수 있다. 일부 실시예들에서, 콘텐츠 배포 네트워크는 스트리밍 미디어 시스템의 운영자가 아닌 측에 의해 동작된다. 따라서, 일부 실시예들에서, 콘텐츠 배포 네트워크는 제3자 시스템이다.
[0040] 사용자 활동 데이터(332)는, 사용자들에 의해 착수된 활동들에 관련된 데이터를 비롯하여 사용자/세션 데이터가 저장되는 하나 또는 그 초과의 데이터베이스들 및/또는 로그 파일들을 나타낸다. 그러한 활동들은 예컨대, 미디어 아이템을 선택하는 것, 미디어 아이템을 플레이하는 것, 검색을 수행하는 것, 추천된 미디어 아이템을 선택하는 것, 미디어 아이템을 검색하는 것 등을 포함할 수 있다. 따라서, 사용자 활동 데이터(332)는 예컨대, ID(user identifier), 추천들로서 사용자에게 제시되는 미디어 아이템들의 미디어 아이템 ID들, 사용자에 의해 선택되거나 또는 플레이되는 미디어 아이템들의 미디어 아이템 ID들, 아이템이 추천 및/또는 선택되었을 때의 타임스탬프, 플레이 동안 발생한 일시중지들(의도적 또는 비의도적)의 타임스탬프, 선택된 아이템들이 플레이를 종료할 때의 타임스탬프를 포함할 수 있다. 사용자 활동 데이터(332)는 또한, 복수의 카탈로그들 중 각각의 사용자가 액세스할 수 있는 카탈로그 및/또는 사용자와 어느 정도로 연관되는 미디어 아이템 클러스터 또는 클러스터들을 설명하거나 또는 특성화하는 정보를 포함할 수 있다. 사용자들의 클러스터들 및/또는 비디오들의 클러스터들은 사용자 활동 데이터(332)로부터 미디어 서버(300)에 의해 식별될 수 있다. 사용자들의 클러스터들이 유사한 선호도들을 갖는 사용자들의 세트들을 표시할 수 있는 반면에, 비디오들의 클러스터들은 일부 방식으로 서로 관련되는 비디오들의 세트들을 표시할 수 있다. 예컨대, 비디오들의 클러스터들은 액션 영화들 또는 트루 크라임 텔레비전 쇼들 등과 같이 테마적으로 관련될 수 있으며, 일부 실시예들에서, 비디오들의 클러스터들은, 배우에 의해, 프로듀서에 의해, 연도에 의해, 지리 또는 관할 구역 등에 의해 관련되는 비디오들과 같이, 테마적이 아닌 방식들로 관련될 수 있다.
[0041] 메모리(304)는 사용자 데이터(334)를 추가로 저장하며, 사용자 데이터(334)는 또한, 스트리밍 미디어 시스템에 가입하거나 또는 그렇지 않으면 그것에 액세스하는 각각의 사용자의 사용자 ID들을 포함할 수 있으며, 사용자이름들, 패스워드 데이터 및 다른 사용자 정보, 이를테면, 프로파일 정보를 더 포함할 수 있다. 일부 실시예에서, 다수의 프로파일들은 단일 사용자 ID와 연관될 수 있다. 예컨대, 사용자 ID가 한 가정 내의 모든 멤버들에 의해 사용될 수 있지만, 가정의 멤버들의 일부 서브세트들은 상이한 프로파일들을 가질 수 있다. 예컨대, 사용자 ID는 아이들의 프로파일 및 어른들의 프로파일과 연관될 수 있다.
[0042] 아래에서 더 상세하게 논의되는 바와 같이, 사용자 활동 데이터(332), 미디어 아이템 메타데이터(330) 및 사용자 데이터(334)는, 다양한 사용자들의 활동들과 특정 미디어 아이템들 또는 그 특정 미디어 아이템들의 클러스터들 간의 인과 및 비-인과 관계들, 및 다양한 사용자들과 스트리밍 미디어 시스템 그 자체 간의 관계들을 식별하기 위해 사용될 수 있다. 예컨대, 사용자 활동 데이터(332), 미디어 아이템 메타데이터(330), 및 사용자 데이터(334)는, 특정 미디어 아이템이 사용자 또는 사용자들의 클러스터에 제시될 때 사용자 또는 사용자들의 클러스터가 그 특정 미디어 아이템을 선택할 가능성 또는 확률을 결정하기 위해 사용될 수 있다. 이런 확률 및 다른 정보는, 스트리밍 미디어 시스템에 의한 추천들의 결과로서 발생할 수 있는 프리젠테이션 바이어스, 및 상이하지만 오버래핑하는 미디어 아이템 카탈로그들, 이를테면, 상이한 관할 구역들에서의 미디어 아이템 카탈로그들(그러나 이들로 제한되는 것은 아님)의 결과로서 발생할 수 있는 프리젠테이션 바이어스를 보상하는 미디어 아이템들을 스트리밍 미디어 시스템의 사용자들에게 추천하기 위해 사용될 수 있다. 다른 실시예들에서, 오버래핑하지만 별개의 미디어 아이템 카탈로그들은 지불-장벽(미디어 아이템들의 구매들 또는 임대들을 위한) 또는 계층적 가입료 등으로부터 발생할 수 있다.
[0043] 서버(300)는 추천 또는 프리젠테이션 엔진(340)을 더 포함하며, 추천 또는 프리젠테이션 엔진은, 미디어 아이템 카탈로그(328)로부터의 어떤 미디어 아이템들이 사용자 인터페이스에서 특정 사용자에게 추천 또는 제시되어야 할지를 결정한다. 예컨대, 프리젠테이션 엔진(340)은, 소정의 사용자가 도 4에서 태블릿 컴퓨터로서 예시된 클라이언트 디바이스(400)를 사용하여 미디어 스트리밍 시스템에 액세스할 때 사용자에게 디바이스(400)의 터치스크린(402)으로 렌더링된 사용자 인터페이스(406)가 제시되어야 한다고 결정할 수 있다. 디바이스(400)는 하나 또는 그 초과의 하드웨어 또는 소프트웨어 버튼들(404)을 더 포함할 수 있다. 사용자 인터페이스(406)는 스트리밍 미디어 시스템 운영자에 의해 제공되는 애플리케이션 또는 인터페이스에 의해 제공된다. 예시된 바와 같이, 미디어 아이템들의 클러스터(410)의 부분은 사용자 인터페이스(406)에 포함된다. 클러스터(410)는, "액션" 영화들 또는 텔레비전 쇼들로서 카테고리화되었거나 또는 사용자들의 사용자 활동 데이터로 표시된 바와 같은 공통 시청 관심사들을 공유하는 사용자들 간에 인기 있는 것으로 식별되었던 미디어 아이템들을 포함한다.
[0044] 클러스터(410)는 5 개의 "액션" 미디어 아이템들을 디스플레이하거나 또는 제시한다. 사용자는 이 미디어 아이템들 중 임의의 미디어 아이템을 선택할 수 있거나, 또는 사용자 인터페이스(406)와 상호작용함으로써, 예컨대, 터치스크린(402)을 스크롤링 또는 스위핑함으로써 클러스터(410) 내의 부가적인 미디어 아이템들을 볼 수 있다. 클러스터(412)는 5 개의 "코미디" 미디어 아이템들을 디스플레이하거나 또는 제시한다. 미디어 아이템을 나타내는 아이콘 또는 이미지가 터치스크린(402) 상에 디스플레이될 때, 사용자와 연관된 사용자 활동 데이터는 미디어 아이템이 사용자에게 제시되었음을 표시할 수 있다. 따라서, 오른쪽으로 스크롤링함으로써, 사용자에게 다른 미디어 아이템들이 제시될 수 있다. 사용자가 사용자 인터페이스(406)에서 제시된 아이템들 중 하나를 선택할 때, 사용자와 연관된 사용자 활동 데이터는 사용자가 그것을 선택하였음을 추가로 반영할 수 있다. 예컨대, "Action Media Item #2"와 연관된 이미지를 터치한 이후에, 사용자의 활동 데이터는 "Action Media Item #2"로서 사용자에게 제시된 미디어 아이템이 사용자에게 제시되었으며, 사용자에 의해 선택되었음을 반영할 수 있다. 일부 실시예들에서, 미디어 아이템은, 미디어 아이템의 소정의 임계치 지속기간 또는 임계치 비율이 터치스크린(402) 상에서 플레이된 이후에만 사용자에 의해 선택되었던 것으로 고려될 수 있다. 클러스터들(410 및 412) 내에 제시된 미디어 아이템들은, 특정 사용자가 미디어 아이템이 제시될 때 그것을 플레이할 확률에 따라서 순서대로 디스플레이될 수 있다.
[0045] 이제 도 5a 및 도 5b를 참조하면, 도 5a 및 도 5b에는 제1 예시적인 미디어 아이템 카탈로그(500) 및 제2 예시적인 미디어 아이템 카탈로그(550)가 각각 도시되어 있다. 미디어 아이템 카탈로그들(500 및 550)은 도 3에 예시된 서버(300)의 메모리(304)와 같은 메모리에 저장될 수 있다. 카탈로그들(500 및 550)은 각각의 카탈로그에 포함된 복수의 미디어 아이템들을 특성화하는 다양한 필드들을 포함하는 데이터베이스들일 수 있다. 본원에 설명된 바와 같이, 스트리밍 미디어 시스템은 다수의 미디어 아이템 카탈로그들을 포함할 수 있다. 예컨대, 제1 미디어 아이템 카탈로그(500)는 제1 관할 구역, 이를테면 스위스(인구: 810만명) 국가와 연관될 수 있는 한편, 제2 미디어 아이템 카탈로그(550)는 제2 관할 구역, 이를테면 인도네시아(인구: 2억5천만명)와 연관될 수 있다.
[0046] 도 5a 및 도 5b에 도시된 묘사된 실시예들에서, 미디어 아이템 카탈로그들(500 및 550)은 각각의 카탈로그에 포함된 모든 미디어 아이템들을 나열하는 미디어 아이템 ID 필드(502)를 포함하는 복수의 필드들을 포함한다. 도 5a 및 도 5b에 예시된 바와 같이, 미디어 아이템 ID들은 수치 값들인 한편; 다른 실시예들에서는 알파뉴메릭 스트링 또는 다른 적절한 스트링 또는 식별자가 미디어 아이템 ID들로서 사용될 수 있다. 카탈로그들(500 및 550)은 각각의 미디어 아이템과 연관된 명칭을 포함하는 명칭 필드(504)를 더 포함한다. 카탈로그들(500 및550)은 또한 지속기간 필드(506) 및 "다른 정보" 필드(508)를 포함한다. 지속기간 필드(506)는 예컨대, 시, 분 및 초 단위의 각각의 미디어 아이템의 지속기간을 포함한다. 도 5a 및 도 5b에 예시된 바와 같이, 다른 정보 필드(508)는 각각의 미디어 아이템의 타입의 표시를 포함한다. 예컨대, 제1 미디어 아이템 카탈로그(500)에 포함된 미디어 아이템들은 적어도 2개의 영화 시리즈 타입 미디어 아이템들 및 2개의 텔레비전 쇼 타입 미디어 아이템들을 포함한다. 제2 미디어 아이템 카탈로그(550)는 적어도 영화 시리즈 타입 미디어 아이템, 피처 필름(feature film) 타입 미디어 아이템 및 다수의 텔레비전 쇼 타입 미디어 아이템들을 포함한다.
[0047] 도 5a 및 도 5b에서 관찰되는 바와 같이, 카탈로그들(500 및 550) 둘 모두는 미디어 아이템들(1533, 0707 및 5978)을 포함한다. 부가적으로, 카탈로그들(500 및 550) 둘 모두는 다른 카탈로그에는 포함되지 않은 미디어 아이템을 포함한다. 예컨대, 카탈로그(500)는, 카탈로그(550)에는 포함되지 않은 "Fast and Ferocious II"라는 명칭의 미디어 아이템(4823)을 포함한다. 미디어 아이템(4823)은, 카탈로그들(500 및 550)에 대해 카탈로그(500)에 배타적인 점에서 배타적인 미디어 아이템으로 지칭될 수 있다. 제2 미디어 아이템 카탈로그(550)는, 제1 미디어 아이템 카탈로그(500)에는 포함되지 않은 "Silence of the Sheep"이라는 명칭의 배타적인 미디어 아이템(1903)을 포함한다.
[0048] 제1 미디어 아이템 카탈로그(500)에 대한 액세스를 갖는 사용자들(예컨대, 스위스 가입자들)의 세트에 대한 사용자 활동 데이터는, 제2 미디어 아이템 카탈로그(550)에 대한 액세스를 갖는 사용자들(예컨대, 인도네시아 가입자들)의 세트에 대한 사용자 활동 데이터보다 데이터 볼륨 측면에서 상당히 적게 포함할 수 있다. 따라서, 인도네시아 가입자들에 기인하는 플레이 카운트들의 비율은 스위스 가입자들에 기인하는 플레이 카운트들의 비율보다 상당히 클 수 있다. 인도네시아 가입자들 및 스위스 가입자들에게 추천들을 제공할 때 오직 플레이 카운트에만 의존하면, 제1 미디어 아이템 카탈로그(500)에 존재하는 임의의 배타적인 미디어 아이템들이 스위스 가입자들에게 추천들로서 제시될 가능성은 낮을 것이다. 예컨대, "Fast and Ferocious I"을 플레이한 스위스 사용자들 중 90% 초과의 사용자들이 또한 "Fast and Ferocious II"를 시청하는 한편, "Fast and Ferocious II"는 제2 미디어 아이템 카탈로그(550)에는 포함되지 않기 때문에, 스위스 사용자들은 "Fast and Ferocious II"보다는 "Silence of the Sheep"을 추천으로서 제시받을 수 있다. 오직 플레이 카운트 데이터만을 사용하는 추천 또는 프리젠테이션 엔진은, 스위스 사용자들 또는 스위스 사용자들 내의 클러스터가 "Fast and Ferocious II"를 제공받으면 "Silence of the Sheep"보다 "Fast and Ferocious II"를 시청할 가능성이 클지라도, 스위스 사용자들에게 "Silence of the Sheep"을 추천할 가능성이 클 수 있다.
[0049] 도 3의 서버(300)의 프리젠테이션 엔진(340)이 테이크-레이트 데이터를 입력으로서 수신하고 따라서, 사용자가 미디어 아이템을 입력으로서 선택했는지 여부 외에도 사용자가 미디어 아이템을 제시받았는지 여부를 고려할 경우, 프리젠테이션 엔진(340)은, "Fast and Ferocious II"가 제1 미디어 아이템 카탈로그(500)의 다른 미디어 아이템들과 비교하여 높은 테이크-레이트를 갖는 정도로 "Fast and Ferocious II"를 스위스 사용자들에게 추천할 가능성이 더 높을 것이다. 예컨대, 프리젠테이션 엔진(340)은, 미디어 아이템이 나라 내에서 특정 임계치 위의 테이크-레이트를 갖는 경우 그 미디어 아이템을 추천하도록 구성될 수 있다. 일부 실시예들에서, 프리젠테이션 엔진(340)은, 미디어 아이템이 특정 사용자가 연관되는 사용자들의 클러스터에 대해 높은 테이크-레이트를 갖는 경우 그 미디어 아이템을 특정 사용자에게 추천하도록 추가로 구성될 수 있다. 예컨대, "Alien Secret of WWII"가 스위스 사용자들의 특정 클러스터 사이에서 높은 테이크-레이트를 갖는다면, 프리젠테이션 엔진(340)은 스위스 사용자들의 클러스터와 유사한 인도네시아 사용자들의 특정 클러스터에 "Alien Secret of WWII"를 추천할 수 있다. 일부 실시예들에서, 사용자들의 클러스터는 임의의 관할 구역에 인위적으로 제한되지 않을 수 있다. 따라서, 사용자들의 클러스터 사이에서 높은 테이크-레이트를 갖는 일부 미디어 아이템들은, 그 미디어 아이템들을 포함하는 미디어 아이템 카탈로그에 대한 액세스를 갖지 않는 관할 구역에 클러스터의 서브세트가 상주하면, 그 클러스터의 서브세트에 이용가능하지 않을 수 있다.
[0050] 예컨대, 도 6의 사용자-클러스터 표(600)는 하나 또는 그 초과의 식별된 클러스터들과 사용자들을 연관시키는 사용자 활동 데이터(332)로부터 유도된 데이터를 나타낸다. 사용자-클러스터 표(600)에 도시된 바와 같이, 사용자 필드(602)에 리스트된 각각의 사용자는 클러스터 필드(604)의 적어도 하나의 클러스터와 연관된다. 부가적인 클러스터 필드들은, 사용자가 1개 초과의 클러스터와 연관되는 실시예들에 존재할 수 있다. 일부 실시예들에서, 사용자와 사용자-연관된 클러스터들의 세트의 클러스터 간의 연관은 확률로서 나타낼 수 있어서, 사용자를 클러스터들과 연관시키는 결합된 확률들은 1로 합산된다.
[0051] 이제 도 7을 참조하면, 도 7에는 특정 스트리밍 미디어 아이템 카탈로그와 스트리밍 미디어 시스템의 사용자들 각각을 연관시키는 데이터를 나타내는 사용자-카탈로그 표(700)가 도시되어 있다. 도 7에 예시된 바와 같이, 사용자-카탈로그 표(700)는, 카탈로그 필드(704)의 카탈로그 식별자 또는 카탈로그 ID와 연관되는 사용자 식별자들 또는 사용자 ID들을 포함하는 사용자 필드(702)를 포함한다. 사용자-카탈로그 표(700)에 도시된 바와 같이, 사용자들(1A2B 및 3H8S) 둘 모두는, 도 5a의 제1 미디어 아이템 카탈로그(500)로서 예시된 카탈로그인 카탈로그(C07)에 대한 액세스를 갖는다. 사용자(2X8F)는, 도 5b의 제2 미디어 아이템 카탈로그(550)로서 예시된 카탈로그인 카탈로그(C02)에 대한 액세스를 갖는다. 사용자(2Y3M)는 카탈로그(C09)에 대한 액세스를 갖는다. 사용자-카탈로그 표(700)의 일부 실시예들에서, 카탈로그 필드에서 카탈로그를 식별하기보다는, 표(700)는, 인트라-관할 구역 미디어 아이템 카탈로그에서 임의의 미디어 아이템들을 필터링 아웃시키는 카탈로그 마스크를 식별할 수 있다. 일부 실시예들에서, 사용자는 사용자에만 연관된 개인용 카탈로그 마스크를 가질 수 있다. 다른 실시예들에서, 사용자는 복수의 사용자들, 이를테면 특정 관할 구역의 사용자들 모두 사이에서 공유되는 카탈로그 마스크를 가질 수 있다. 사용자-카탈로그 표(700)에 포함된 정보는, 어떤 아이템들이 특정 사용자에 의해 액세스될 수 있는지를 그 정보가 설명한다는 점에서 사용자 액세스 데이터로 본원에서 지칭될 수 있다. 일부 실시예들에서, 이러한 사용자 액세스 데이터는 사용자 활동 데이터의 분리가능한 부분 또는 컴포넌트로서 포함된다.
[0052] 도 8a 및 8b를 이제 참조하면, 도 8a 및 8b에는 사용자 활동 데이터의 매트릭스들(800 및 850)이 각각 도시되어 있다. 매트릭스(800)는 스트리밍 미디어 시스템의 각각의 사용자와 연관된 행들 및 스트리밍 미디어 시스템의 임의의 카탈로그에 포함되는 각각의 미디어 아이템과 연관된 열들을 포함한다. 매트릭스(800)에 포함된 정보는 제1 미디어 아이템 카탈로그에 대한 액세스를 갖는 사용자들과 연관된 사용자 활동 데이터의 세트 및 제2 미디어 아이템 카탈로그에 대한 액세스를 갖는 사용자들과 연관된 사용자 활동 데이터의 세트로부터 통합되는 통합된 정보일 수 있다. 미디어 아이템 카탈로그들은, 사용자들의 세트들 둘 모두에 이용가능한 오버래핑 콘텐츠 뿐만 아니라 사용자들의 하나 또는 다른 세트에 배타적인 배타적 콘텐츠를 포함한다. 도 8a에 도시된 바와 같이, 4명의 사용자들에 대응하는 데이터가 존재하지만, 실제로, 수천 내지 수백만 또는 그 초과의 사용자들이 매트릭스(800)에 포함될 수 있다. 각각의 미디어 아이템에 대해 그리고 각각의 사용자에 대해, 매트릭스(800)는, 미디어 아이템이 사용자에게 제시되었는지 여부 및 미디어 아이템이 플레이를 위하여 사용자에 의해 선택되었는지 여부를 설명하는 데이터를 포함한다.
[0053] 예시된 바와 같이, 매트릭스(800)의 인덱스 m1,1에 저장된 정보는, 사용자(1A2B)에게 미디어 아이템(1533)이 제시되었고, 사용자(1A2B)가 플레이를 위해 미디어 아이템(1533)을 선택하였다는 것을 표시하는 (1,1)이다. 매트릭스(800)의 인덱스 m3,2에 저장된 정보는, 사용자(3H8S)에게 미디어 아이템(4823)이 제시되었고, 미디어 아이템(4823)이 플레이를 위해 사용자(3H8S)에 의해 선택되지 않았다는 것을 표시한다. 부가적으로, 매트릭스(800)의 인덱스 m2,2에 저장된 정보는, 사용자(2X8F)에게 미디어 아이템(4823)이 제시되지 않았고, 사용자(2X8F)가 플레이를 위해 미디어 아이템(4823)을 선택하지 않은 것을 표시한다. 미디어 아이템(4823)이 사용자(2X8F)에게 제시되지 않은 다수의 이유들이 존재할 수 있다. 예컨대, 도 7의 사용자-카탈로그 표(700)에 의해 표시된 바와 같이, 사용자(2X8F)는 도 5b의 제2 미디어 아이템 카탈로그(550)에 대응하는 카탈로그(C02)에 액세스할 수 있다. 도 5b로부터 관찰될 수 있는 바와 같이, 미디어 아이템 카탈로그(550)는 미디어 아이템(4823)을 포함하지 않는다. 다른 상황들에서, 미디어 아이템이 특정 사용자에게 제시되지 않을 수 있는데, 이는, 미디어 아이템(4823)이 사용자(2X8F)에 대해 충분히 높은 추천을 받을 만하지 않다고 프리젠테이션 엔진(340)이 결정하였고, 따라서, 매트릭스(800)에 예시된 사용자 활동 데이터에 반영되는 시간에 사용자(2X8F)에게 미디어 아이템(4823)이 제시되지 않았기 때문이다.
[0054] 매트릭스(800)의 일부 실시예들은 데이터 (0,0)이 매트릭스(800)에 나타나지 않도록 디폴트에 의해 널 표시자를 포함할 수 있다. 그러한 실시예에서, 매트릭스(800)는 3개의 상이한 값들: 사용자에게 미디어 아이템이 제시되었고 사용자가 미디어 아이템을 선택되었다는 것을 의미하는 (1,1); 사용자에게 미디어 아이템이 제시되었고 사용자가 미디어 아이템을 선택하지 않았다는 것을 의미하는 (1,0); 및 사용자에게 미디어 아이템이 제시되지 않았다는 것을 의미하는 널을 포함할 수 있다. 일부 실시예들에서, 미디어 아이템이 제시되었는지 또는 플레이되었는지 여부의 표시들과 연관된 값들은 1보다 클 수 있다. 예컨대, 값들은 미디어 아이템들이 사용자에게 제시된 그리고/또는 사용자에 의해 플레이된 횟수를 표시할 수 있다.
[0055] 도 3의 서버(300)의 프리젠테이션 엔진(340)은 희소 매트릭스(800)에 기반하여 사용자들에 대한 테이크-레이트 확률들을 모델링하는 것이 가능할 수 있다. 다른 실시예들에서, 프리젠테이션 엔진(340)은 오직 완전한 매트릭스에 기반하여 테이크-레이트 확률들 및/또는 사용자 선호도들을 모델링하도록 구성될 수 있다.
[0056] 이제 도 8b를 참조하면, 도 8b에는 (0,0) 또는 널이 매트릭스(800)에 존재할 때마다 인위적인 사용자 활동 데이터를 포함하는 매트릭스(850)가 도시되어 있다. 따라서, 매트릭스(850)는 매트릭스(800)로부터 유도될 수 있지만, 인위적인 사용자 활동 데이터를 더 포함한다. 매트릭스(800) 및 매트릭스(850)에 도시된 바와 같이, 도 5a의 제1 미디어 아이템 카탈로그(500)에 도시된 "Fast and Ferocious I" 및 "Fast and Ferocious II"에 대응하는 미디어 아이템들(1533 및 4823)이 사용자(1A2B)에게 제시되었고, 사용자(1A2B)가 이를 선택하였다. 프리젠테이션 엔진(340)은, 미디어 아이템(1533)("Fast and Ferocious I") 이 제시되었고 미디어 아이템(1533)을 시청한 사용자들이 미디어 아이템(4823)이 제시되는 경우에 미디어 아이템(4823)을 시청할 소정의 확률을 갖는 것을 나타내는 모델들을 포함할 수 있다. 확률이 임계치(예컨대, 1 %, 5 %, 20 % 등)를 초과하는 경우에, 인위적인 플레이 레코드가 프리젠테이션 엔진(340)에 의해 생성될 수 있고, 매트릭스(850)에 포함될 수 있다. 이 인위적인 플레이 레코드는 생성된 플레이 레코드로 지칭될 수 있고, 서버(300)는 매트릭스(800)에 존재하는 모든 또는 일부(0,0)들 또는 널들에 대해 플레이 레코드를 생성할 수 있다. 도 8b에서, 복수의 생성된 플레이 레코드들이 생성된 플레이 레코드 옆에 별표를 갖는 것으로 인덱스들 m1,4, m2,2, m3,4, m4,4, 및 m4,3에 표시된다. 예시된 실시예에서, 어떠한 생성된 플레이 레코드도 m3,5에 대해 매트릭스(850)에 포함되지 않는다. 그러나, 실제로, 매트릭스(850)는 인위적인 사용자 활동 데이터와 실제 사용자 활동 데이터 간을 구별하는 어떠한 방법도 포함하지 않을 수 있다. 인위적인 사용자 활동 데이터가 매트릭스(850)에 포함된 후에, 매트릭스(850)는 하나 또는 그 초과의 모델들에 기반하여 사용자 추천들의 생성을 위해 프리젠테이션 엔진(340)에 제공될 수 있다.
[0057] 이제 도 9a-d를 참조하면, 도 9a-d에는 스트리밍 미디어 시스템의 사용자들에게 추천들을 생성하는데 있어서, 프리젠테이션 엔진(340), 구체적으로, 또는 더 일반적으로 서버(300)에 의해 사용될 수 있는 예시적인 그래픽 모델들 또는 플레이트 표기(plate notation) 모델들이 도시되어 있다. 도 9a의 모델(900)은, 미디어 아이템들에 걸친 테이크-레이트들의 사용자들에 대한 이산 혼합체(discrete mixture)를 통하여 사용자에게 추천들을 제공하기 위하여 사용될 수 있는 미디어 아이템들의 개인화된 랭킹들을 구현한다. 사용자들 플레이 작동은 사용자 클러스터를 식별하고 그 다음 도 8a의 매트릭스(800) 또는 도 8b의 매트릭스(850)에 예시된 바와 같은 사용자 활동 데이터로부터 테이크-레이트 정보를 관찰함으로써 모델링된다. 사용자의 예측된 플레이 작동(예컨대, 특정 미디어 아이템이 제시될 때 사용자가 그 미디어 아이템을 선택할 확률)은 사용자가 속하는 클러스터에 따라 모델링된다. 클러스터 내에서, 각각의 테이크-레이트는, 클러스터 내의 사용자가 특정 미디어 아이템을 플레이하거나 그렇지 않으면 도 4의 사용자 인터페이스(406)에서처럼 미디어 아이템이 제시될 때 미디어 아이템을 선택할 베르누이(Bernoulli) 확률을 표현한다. 모델(900)은, 사용자가 속하는 클러스터, 및 아래 수학식(1)에 따라 미디어 아이템 자체에 기반하여 사용자가 미디어 아이템을 선택할 확률을 결정한다:
[0058] 수학식(1)에서, D는 사용자들의 수인데, d는 특정 사용자이고, z는, 사용자가 속하는 클러스터이고(모델(900)에서, 사용자는 단지 하나의 클러스터에만 속할 수 있음), N은 프리젠테이션 및/또는 플레이 데이터, 이를테면 각각의 미디어 아이템이 사용자에 의해 플레이되었는지 여부(예컨대, 플레이되었다면 1이고 플레이되지 않았다면 0임)를 표시하는 매트릭스(800 또는 850) 내의 사용자 활동 데이터 부분이고, t는 플레이와 연관된 미디어 아이템 또는 "타이틀"이고, x는, 사용자가 각각의 미디어 아이템을 플레이하였는지 여부를 표시하는 관찰된 데이터이다. 는 모델에 의해 정의된 학습 알고리즘으로부터 추정될 수 있다. 는, 특정 사용자가 특정 클러스터에 속하는 확률을 표시할 수 있다. 는 모든 각각의 클러스터에 대한 행 및 각각의 미디어 아이템에 대한 열을 가지는 매트릭스일 수 있다. 내의 각각의 인덱스에는, 특정 클러스터가 주어지면, 그 클러스터와 연관된 사용자들에게 제시된 미디어 아이템이 플레이될 가능성을 표시하는 확률이 존재한다. 학습 알고리즘은 및 둘 모두를 찾을 수 있다.
[0059] 사용자가 단지 하나의 클러스터와 연관되거나 또는 이에 속한다는 것을 모델(900)이 가정하기 때문에, 그 사용자로부터의 활동 데이터 모두는, 그 사용자가 그 특정 클러스터에 속할 확률에 비례하여 그 특정 클러스터와 연관될 것이다. 사용자가 특정 클러스터에 속하는 20% 기회가 있다면, 그 사용자와 연관된 활동 데이터의 20%는 특정 클러스터와 연관될 것이다. 각각의 클러스터는 Bernoulli 확률 변수들일 수 있는 이런 확률들의 집합과 연관될 수 있다.
[0060] 모델(900)에서, 각각의 미디어 아이템은 그 미디어 아이템만을 포함하는 완전한 카탈로그로서 효과적으로 모델링된다. 모델은, 모델링된 카탈로그가 단지 하나의 미디어 아이템만을 포함하기 때문에 싱글톤(singleton) 카탈로그로 지칭되는 그 카탈로그 내의 미디어 아이템이 특정 사용자에게 제시될 때 플레이될 확률을 결정한다. 우도 함수는 z에 걸친 결합분포(joint distribution)(모델(900)에 포함된 모든 잠재(latent) 변수들)를 무시함으로써 수학식(1)으로부터 획득될 수 있다. 그 다음, 모델이 파라미터화된다. 모델(900)에서, 미디어 아이템이 사용자에게 1회 제시되었을 때, 후속적인 프리젠테이션들은, 각각의 미디어 아이템이 1회만 나타날 수 있거나 각각의 사용자에 대한 시퀀스에 전혀 나타나지 않을 수 있도록 무시될 수 있다. 데이터는 몇몇 접근법들 중 임의의 접근법에 의해 피팅될 수 있다. 예컨대, EM(expectation-maximization) 알고리즘, Gibbs 알고리즘, Kalman 필터, 또는 은닉 마르코프 모델(hidden Markov model)은 사용자에게 추천들을 제공하기 위해 데이터를 피팅하는데 사용될 수 있다.
[0061] 이제 도 9b의 모델(910)을 참조하면, 모델(910)은, 스트리밍 미디어 시스템의 사용자들에게 추천들을 제공하는 데 있어 도 3의 서버(300)에 의해 사용될 수 있는 다른 모델이다. 모델(910)은, 자연 언어 프로세싱에서 LDA(latent Dirichlet allocation)와 유사한 모델(900)의 일반화를 제공한다. 도 9b에 도시된 바와 같이, 모델(910)은 변수들을 갖는데, 변수들은, 미디어 스트리밍 시스템의 사용자들의 총 수를 나타내는 D, 특정 사용자에 대한 클러스터들의 혼합체를 나타내는 , 프리젠테이션 또는 플레이 이벤트들의 총 수인 N, 클러스터들의 수인 K, 프리젠테이션에 대한 응답이 속하는 클러스터인 Z, 미디어 아이템인 t, 미디어 아이템이 플레이되었는지 또는 그렇지 않은지 여부를 표시하는 X, 사용자에게 제시된 고유 미디어 아이템들의 수에 대응하는 W, 도 9a의 모델(900)과 관련하여 위에서 설명된 클러스터 매트릭스를 나타내고 그리고 미디어 아이템의 인기 또는 파라미터들을 설명할 수 있는 , 및 튜닝 파라미터들인 및 를 포함한다. 모델(910)은 아래의 수학식 (2)에 의해 설명될 수 있다:
[0062] 수학식 (2)로부터의 결과적인 데이터는 몇몇 접근법들 중 임의의 접근법에 의해 피팅될 수 있다. 예컨대, Gibbs 알고리즘, EM(expectation-maximization) 알고리즘, Kalman 필터, 또는 은닉 Markov 모델, 또는 다른 적절한 접근법이 사용자에게 추천들을 제공하기 위해 데이터를 피팅하는 데 사용될 수 있다. 모델(910)의 수정은, K가 무한할 수 있거나 사용자 활동 데이터로부터 수학적으로 유도되는 수를 모델이 제공할 수 있도록, 클러스터들의 수인 K를 미정의된 채로 남겨두는 것을 포함할 수 있다. 모델(910)에 대한 그러한 수정은 HDP(hierarchical Dirichlet process) 모델을 초래한다.
[0063] 도 9c 및 도 9d의 모델들(920 및 930)은 각각 잘라낸 다항식 모델을 제공한다. 모델들(920 및 930)이 서버(300) 및/또는 프리젠테이션 엔진(340)에 의해 구현될 수 있을 때 그들에 의해 제공되는 접근법은, 각각의 사용자에 대해, 오버래핑 미디어 아이템들 및 배타적인 미디어 아이템들을 포함하는, 오버래핑 미디어 아이템 카탈로그들(500 및 550)을 예시하는 도 5a 및 도 5b와 관련하여 본원에서 설명된 바와 같은, 사용자에 대해 실제로 액세스가능하지 않은 미디어 아이템들에 대한 사용자의 응답을 모델링하는 잠재 변수들의 집합을 추가하는 것이다. 모델들(920 및 930)은, 전체 카탈로그가 모든 각각의 사용자에 대해 이용가능하지 않다는 사실을 고려하여 전체 카탈로그에서의 각각의 비디오의 인기를 추정한다. 본원에서 설명된 바와 같이, 미디어 아이템들의 플레이들만이 카운팅되는 경우, 소정의 미디어 아이템들(더 많은 사용자들에 대해 액세스가능한 것들)의 상응하는 인기는 정확하게 결정되지 않을 수 있다.
[0064] 잘라낸 다항식 모델(920)은 아래의 수학식 (3)에서 보이는 바와 같이 나타낼 수 있다:
플레이트 모델(920)은 사용자들의 총 수로서 N을 포함하고, z는 각각의 사용자가 연관될 수 있는 클러스터들을 나타내고, x는 사용자들에 의한 플레이들의 관찰들이고, u는 특정한 잘라낸 또는 관찰가능하지 않은 미디어 아이템들에 대한 플레이트들의 카운트를 나타내고, 그리고 w는 사용자에 대해 이용가능하지 않은 미디어 아이템들 의 서브세트 J에 대한, 누락된 미디어 아이템들(예컨대, 이 아이템들은, 이들이 사용자에 대해 액세스가능한 카탈로그에 포함되지 않기 때문에 사용자에 대해 액세스가능하지 않음)에 걸친 모든 u의 합 또는 각각의 사용자의 잘라낸 총 수를 나타내는 잠재 변수이다. 모델(920)의 출력은, 매트릭스(800)가 (0,0) 또는 널을 포함하는 경우 인위적인 사용자 활동 데이터를 포함하는 매트릭스(850)와 유사할 수 있다. 그런 다음, 모델(920)의 출력은, 어느 미디어 아이템들이 특정 사용자에게 추천되어야 하는지를 결정하는 데 사용될 수 있다. 추천은, 복수의 배타적인 미디어 아이템들에 실제로 액세스할 수 없는 사용자들 사이에서의 그 배타적인 미디어 아이템들의 인기의 추정에 기반할 수 있다.
[0065] 이제 도 9d의 모델(930)을 참조하면, 모델(930)은 또한, 잘라낸 다항식 모델이지만, LDA(latent Dirichlet allocation) 잘라낸 다항식 모델이다. 모델(930)은 많은 피처들을 모델(920)과 공동으로 공유하고, 또한, 수학식(3)에 의해 표현될 수 있다. 그러나, 모델들(920 및 930)은, 각각의 플레이트 모델(920 및 930)의 예시된 피처들에 따라 상이하게 파라미터화된다. 모델(930)은 네스팅된 Gibbs 샘플러를 더 포함하고, 은닉된 플레이들(예컨대, 생성된 플레이 레코드들)의 카운트인 c, 사용자에게 이용가능한 카탈로그 상의 사용자의 플레이들의 개수의 관찰들을 나타내는 s, 및 기존의 클러스터들에 걸친 각각의 사용자의 연관성인 π를 포함하는 부가적인 변수들을 포함한다. 다시, α 및 β는 튜닝 파라미터들이다. α는 희소성을 나타내고, 사용자 분포가 얼마나 매끄럽게 다수의 클러스터들에 걸쳐있을 것인지를 제어한다. Gibbs 샘플러는 은닉된 미디어 아이템들의 아이덴티티(u) 및 카운트(c)를 축약시킨다.
[0066] 모델들(900, 910, 920, 또는 930) 중 임의의 모델은, 사용자들에게 추천들을 제공하기 위해 서버(300)의 프로세서(302) 상에서 실행되는 프리젠테이션 엔진(340)에 의해 사용될 수 있는데, 이는, 상이한 관할 구역들에 오버래핑되지만 동일하지 않은 미디어 아이템 카탈로그들의 사이즈들의 차이들을 보상하고, 사용자들에게 추천들을 제공하는 효과들을 보상한다. 이러한 방식으로, 글로벌 스트리밍 미디어 시스템으로부터의 데이터는 중앙 프로세서에 의해 프로세싱될 수 있고, 추천들을 제공하기 위해 각각의 관할 구역에서 유용한 상태를 유지할 수 있다. 모델들(900, 910, 920, 및/또는 930)은 인터넷-기반 미디어 배포 시스템들, 예컨대, 도 1에 예시된 스트리밍 미디어 시스템(100)에 대한 특정 문제를 해결하기 위해 적용될 수 있다.
[0067] 이제 도 10을 참조하면, 도 10에는 도 1의 스트리밍 미디어 시스템(100) 처럼, 스트리밍 미디어 아이템들의 사용자에게 추천들을 제공하는 방법(1000)의 흐름도가 도시되어 있다. 도 10에 예시된 바와 같이, 방법(1000)은 여러 개의 열거된 단계들 또는 동작들을 포함한다. 방법(1000)의 실시예들은, 열거된 동작들 이전에, 이후에, 그 사이에, 또는 그의 부분으로서 부가적인 단계들 또는 동작들을 포함할 수 있다. 동작들 중 일부 또는 전체는 컴퓨터-판독가능 명령들의 세트로 구현될 수 있다. 이러한 컴퓨터-판독가능 명령들은, 본원에서 설명된 바와 같이 프리젠테이션 엔진(340)을 제공하기 위해, 서버(300)의 메모리(304)에 저장되고 프로세서(302)에 의해 실행될 수 있다.
[0068] 도 10에 예시된 바와 같이, 방법(1000)은, 프로세싱 디바이스, 예컨대, 서버(300)의 프로세서(302)가, 스트리밍 미디어 시스템의 제1 세트의 사용자들에 대한 제1 사용자 활동 데이터를 수신하는 단계(1002)에서 시작될 수 있다. 제1 세트의 사용자들은 제1 미디어 아이템 카탈로그, 예컨대, 도 5a의 제1 미디어 아이템 카탈로그(500)에 액세스할 수 있다. 단계(1004)에서, 프로세싱 디바이스는 스트리밍 미디어 시스템의 제2 세트의 사용자들에 대한 제2 사용자 활동 데이터를 수신한다. 제2 세트의 사용자들은 제2 미디어 아이템 카탈로그에 액세스할 수 있고, 제1 미디어 아이템 카탈로그에 액세스할 수 없다. 예컨대, 제2 세트의 사용자들은, 도 5b의 제2 미디어 아이템 카탈로그(550)에 액세스하기 위해 스트리밍 미디어 서버(110 또는 300)에 의해 허용된 관할 구역에 상주할 수 있는 한편, 제1 세트의 사용자들은, 제1 미디어 아이템 카탈로그(500)에 액세스할 수 있는 관할 구역에 상주한다. 제2 미디어 아이템 카탈로그는, 제1 미디어 아이템 카탈로그에 또한 포함된 미디어 아이템들을 포함하고, 제1 미디어 아이템 카탈로그에 포함되지 않은 적어도 하나의 배타적인 미디어 아이템을 더 포함한다. 배타적인 미디어 아이템은, 스트리밍 미디어 시스템의 운영자에게 부과된 라이센싱 제약들로 인해, 제2 미디어 아이템 카탈로그에 배타적일 수 있다.
[0069] 제1 및 제2 사용자 활동 데이터는, 각각 도 6, 7, 및 8a의 사용자 클러스터 표(600), 사용자 카탈로그 표(700), 및 매트릭스(800)와 같은 정보를 포함할 수 있다. 따라서, 사용자 활동 데이터는 각각의 카탈로그의 각각의 미디어 아이템에 대한 정보, 그리고, 사용자에게 미디어 아이템이 제시되었는지 여부 및 사용자에게 미디어 아이템이 제시된 후에 플레이를 위해 사용자가 미디어 아이템을 선택했는지 여부를 표시하는, 각각의 사용자에 대한 정보를 포함할 수 있다.
[0070] 단계(1006)에서, 프로세싱 디바이스는, 제1 및 제2 사용자 활동 데이터에 기반하여, 배타적인 미디어 아이템이 스트리밍 미디어 시스템에 의해 제시되는 경우에 제1 세트의 사용자들 중의 사용자가 배타적인 미디어 아이템을 플레이할 확률을 결정한다. 예컨대, 프리젠테이션 엔진(340)은, 매트릭스(800) 또는 매트릭스(850)의 정보에 기반하여, 배타적인 미디어 아이템이 사용자에게 이용가능하고 그리고 예컨대, 사용자 인터페이스(406) 또는 다른 필적하는 인터페이스에서 추천으로서 사용자에게 제시되는 경우에 사용자가 배타적인 미디어 아이템을 플레이할 확률을 결정할 수 있다.
[0071] 단계(1008)에서, 프로세싱 디바이스는 확률에 기반하여, 배타적인 미디어 아이템을 플레이하도록 제2 세트의 사용자들 중의 사용자에게 추천으로서 사용자 디바이스에 의해 사용자 인터페이스에 렌더링될 정보를 제공한다. 예컨대, 배타적인 미디어 아이템은, 모바일 클라이언트 디바이스(400)의 터치스크린(402) 상의 사용자 인터페이스(406)에서 사용자에 대한 미디어 아이템들의 리스트 또는 그룹핑에 미디어 아이템을 포함시킴으로써 사용자에게 추천될 수 있다.
[0072] 일부 실시예들에서, 프로세싱 디바이스는 추가로, 제1 및 제2 미디어 아이템 카탈로그들에 포함된 미디어 아이템들의 랭킹을 포함하는 미디어 아이템들의 카탈로그간 또는 크로스-카탈로그 랭킹을 결정한다. 따라서, 랭킹은 오버래핑 미디어 아이템들 및 배타적인 미디어 아이템들의 랭킹들을 포함할 수 있다. 본원에서 설명된 바와 같이, 배타적인 미디어 아이템은 단지 하나의 미디어 아이템 카탈로그에만 나타나는 미디어 아이템일 수 있거나 또는 배타적인 미디어 아이템은 하나를 제외한 스트리밍 미디어 시스템의 모든 미디어 아이템 카탈로그들에 나타나는 미디어 아이템일 수 있다.
[0073] 프로세싱 디바이스는 추가로, 제2 세트의 사용자들 중의 사용자가 연관된 사용자 클러스터, 또는 멀티미디어 스트리밍 시스템의 각각의 사용자에 대한 사용자 클러스터를 식별하고, 그 제1 및 제2 미디어 아이템 카탈로그들로부터 인기있는 미디어 아이템들을 결정하고, 그리고 배타적인 미디어 아이템에 제2 세트의 사용자들 중의 사용자가 액세스가능하다는 것을 결정할 수 있다. 일부 실시예들에서, 인기있는 미디어 아이템들은, 사용자 클러스터의 사용자들 사이에서, 특정 미디어 아이템 카탈로그에 액세스하는 사용자들 사이에서, 또는 미디어 스트리밍 시스템의 모든 사용자들 사이에서, 임계값을 초과하는 테이크-레이트 랭킹을 갖는 미디어 아이템들로서 정의될 수 있다. 인기있는 미디어 아이템들은 배타적인 미디어 아이템을 포함할 수 있다. 예컨대, 제1 및 제2 미디어 아이템 카탈로그들의 미디어 아이템들은, 미디어 아이템들이 제시될 때, 스트리밍 미디어 시스템의 사용자들이 얼마나 자주 그 미디어 아이템들을 플레이하는지에 따라 랭크될 수 있다.
[0074] 프로세싱 디바이스는 제1 및 제2 사용자 활동을 통합된 사용자 활동 데이터 세트로 통합할 수 있고, 그 통합된 사용자 활동 데이터 세트는 각각의 미디어 아이템 및 각각의 사용자에 대해, 미디어 아이템이 사용자에게 제시되었는지 여부의 표시 및 미디어 아이템이 사용자에 의해 선택되었는지 여부의 표시를 포함한다.
[0075] 방법(1000)의 실시예들은, 프로세싱 디바이스가, 배타적인 미디어 아이템이 제시된 경우에 제1 세트의 사용자들 중의 사용자가 그 배타적인 미디어 아이템을 플레이할 확률에 기반하여, 인위적인 사용자 활동 데이터를 생성하는 단계를 더 포함할 수 있다. 이러한 실시예들에서, 제2 세트의 사용자들 중의 사용자에게 추천으로서 렌더링될 정보는 제1 및 제2 사용자 활동 데이터 및 인위적인 사용자 활동 데이터에 기반할 수 있다.
[0076] 이제 도 11을 참조하면, 도 11에는 다수의 오버래핑하지만 별개인 미디어 아이템 카탈로그들을 포함하는 스트리밍 미디어 시스템의 사용자에게 추천들을 제공하기 위한 방법(1100)의 실시예가 도시되어 있다. 방법(1000)과 마찬가지로, 방법(1100)은 비-일시적 기계-판독가능 매체에서 명령들의 세트 또는 실행가능한 코드로서 구현될 수 있다. 실행가능한 코드는 추천들을 스트리밍 미디어 시스템의 사용자들에게 제공하기 위해 서버(300)의 프로세서(302)에 의해 또는 서버(110)에 의해 실행될 수 있다.
[0077] 도 11에 예시된 바와 같이, 방법(1100)의 예시된 실시예는 단계(1102)에서 시작하며, 단계(1102)에서, 프로세싱 디바이스는 스트리밍 미디어 시스템의 사용자들의 세트에 대한 사용자 활동 데이터를 수신한다. 사용자 활동 데이터는 미디어 아이템 카탈로그의 일 세트의 미디어 아이템들 중 하나 또는 그 초과와의 사용자들의 상호작용들을 설명할 수 있다. 상호작용들은, 예컨대 추천으로서 스트리밍 미디어 시스템에 의한 사용자에게의 제시들을 포함할 수 있고, 미디어 아이템 카탈로그의 하나 또는 그 초과의 미디어 아이템들에 대한 사용자의 선택들을 포함할 수 있다. 사용자에 의한 미디어 아이템의 선택들은, 미디어 아이템을 플레이하는 것에 대한 요청들, 미디어 아이템에 관한 추가의 정보에 대한 요청들, 미디어 아이템의 레이팅들 등을 포함할 수 있다.
[0078] 단계(1104)에서, 프로세싱 디바이스는 사용자들의 세트의 각각의 사용자에 대해, 사용자가 액세스하는 미디어 아이템들의 서브세트를 표시하는 사용자 액세스 데이터를 수신할 수 있다. 액세스 데이터는 도 7의 사용자-카탈로그 표(700)에 제시된 것과 같은 정보를 포함할 수 있는데, 이 정보는 스트리밍 미디어 시스템의 어떤 미디어 아이템 카탈로그가 스트리밍 미디어 시스템의 임의의 주어진 사용자에 의해 액세스될 수 있는지를 표시한다. 사용자들의 세트 중 제1 사용자는 사용자들의 세트 중 제2 사용자가 액세스하지 않는 제1 미디어 아이템에 액세스할 수 있다. 예컨대, 제1 사용자는 미디어 아이템(4823)을 포함하는 도 5b의 제1 미디어 아이템 카탈로그(500)에 액세스할 수 있는 한편, 제2 사용자는 미디어 아이템(4823)을 포함하지 않는 도 5b의 제2 미디어 아이템 카탈로그(550)에 액세스할 수 있다.
[0079] 단계(1106)에서, 프로세싱 디바이스는, 사용자 활동 데이터로부터 스트리밍 미디어 시스템에 의해 제1 미디어 아이템이 제시된다면 제2 사용자가 제1 미디어 아이템을 플레이할 확률을 결정한다. 그리고, 단계(1108)에서, 프로세싱 디바이스는 그 확률에 기반하여 제1 미디어 아이템을 플레이하라는 제1 사용자에 대한 추천으로서 사용자 디바이스에 의해 사용자 인터페이스에 렌더링될 정보를 제공한다.
[0080] 방법(1100)의 일부 실시예들에서, 프로세싱 디바이스는 제1 미디어 아이템이 제시된다면 제2 사용자가 제1 미디어 아이템을 플레이할 확률에 기반하여 하나 또는 그 초과의 생성된 플레이 레코드를 포함하는 인위적인 사용자 활동 데이터를 생성하는 데 사용될 수 있다. 예컨대, 프로세싱 디바이스는 도 8b의 매트릭스(850)를 완성하기 위해 인위적인 플레이 레코드들을 생성할 수 있다. 일부 실시예들에서, 미디어 카탈로그 내의 미디어 아이템들의 서브세트는 제1 사용자의 사용자 활동 데이터 및 제2 사용자의 사용자 활동 데이터에 기반하여 제1 사용자와 제2 사용자 모두를 포함하는 사용자들의 특정 클러스터와 연관된다. 제1 사용자에 대한 추천은 사용자들의 특정 클러스터와 제1 사용자의 연관성에 추가로 기반할 수 있다. 일부 실시예들에서, 프로세싱 디바이스는 인위적인 사용자 활동, 이를테면 제1 사용자가 액세스하지 않은 특정 클러스터와 연관된 특정 아이템이 제시된다면 제1 사용자가 어떻게 응답할 것인지를 추정하는 생성된 플레이 레코드에 부분적으로 기반하여 제1 사용자를 특정 클러스터와 연관시킬 수 있다.
[0081] 본원에서 설명되는 현재 개시된 시스템들 및 방법들의 실시예들은 다운로드-기반 미디어 시스템이든 아니면 스트리밍 미디어 시스템이든, 미디어 시스템이 일부 오버래핑 미디어 아이템들을 포함하는 상이한 미디어 아이템 카탈로그들에 액세스하는 사용자들에 대한 추천들을 제공하도록 허용한다. 본원에서 설명되는 시스템들 및 방법들에 의해 극복되는 문제점들은 인터넷-기반 미디어 배포 시스템들 그리고 특히 상이한 사용자들에 액세스할 수 있는 상이한 미디어 아이템 카탈로그들을 갖는 그러한 미디어 배포 시스템들에 고유하다. 보다 구체적으로, 본원에서 설명되는 시스템들 및 방법들은 상이한 관할 구역들에 거주하는 고객들 또는 사용자들을 갖는 미디어 시스템들에 대한 중앙 집중화된 추천들을 개선할 수 있어, 상이한 미디어 아이템 콘텐츠가 상이한 관할 구역들에 대해 개별적으로 라이센싱될 수 있다. 본원에서 설명되는 시스템들 및 방법들은 지불 장벽들 또는 계층적 가입료를 야기하는 오버래핑 미디어 아이템 카탈로그들을 갖는 미디어 시스템들에 대한 개선된 추천들을 가능하게 한다. 본 개시내용의 특정 양상들은 다음과 같이 넘버링된 조항들로 제시된다.
[0082] 1. 컴퓨터-구현 방법으로서, 스트리밍 미디어 시스템의 제1 세트의 사용자들에 대한 제1 사용자 활동 데이터를 수신하는 단계 ― 제1 세트의 사용자들은 제1 미디어 아이템 카탈로그에 대한 액세스를 가짐 ―; 스트리밍 미디어 시스템의 제2 세트의 사용자들에 대한 제2 사용자 활동 데이터를 수신하는 단계 ― 제2 세트의 사용자들은 제1 미디어 아이템 카탈로그에 대한 액세스를 갖지 않고 제2 미디어 아이템 카탈로그에 대한 액세스를 가지며, 제2 미디어 아이템 카탈로그는 오버래핑 미디어 아이템들을 포함하며, 오버래핑 미디어 아이템들은 제1 및 제2 미디어 아이템 카탈로그들 둘 다에 포함되며, 제2 미디어 아이템 카탈로그는 제1 미디어 아이템 카탈로그에 포함되지 않는 배타적인 미디어 아이템을 더 포함함 ―; 배타적인 미디어 아이템과 함께 스트리밍 미디어 시스템에 의해 제시되는 경우에, 제1 세트의 사용자들 중의 사용자가 배타적인 미디어 아이템을 플레이할 확률을 제1 및 제2 사용자 활동 데이터에 기반하여, 프로세싱 디바이스가, 결정하는 단계; 및 확률에 기반하여, 배타적인 미디어 아이템을 플레이하기 위한 추천으로서 제2 세트의 사용자들 중의 사용자에게, 사용자 디바이스에 의해 사용자 인터페이스에 렌더링될 정보를 제공하는 단계를 포함하는, 컴퓨터-구현 방법.
[0083] 2. 조항 1에 있어서, 컴퓨터-구현 방법은 미디어 아이템들의 카탈로그간 랭킹(ranking)을 결정하는 단계를 더 포함하며, 카탈로그간 랭킹은 제1 및 제2 미디어 아이템 카탈로그들에 포함된 미디어 아이템들의 랭킹을 포함한다.
[0084] 3. 조항 1 또는 2에 있어서, 컴퓨터-구현 방법은 제2 세트의 사용자들 중의 사용자와 연관되는 사용자 클러스터(user cluster)를 식별하는 단계; 제1 및 제2 미디어 아이템 카탈로그들로부터 인기있는 미디어 아이템들을 결정하는 단계 ― 인기있는 미디어 아이템들은 사용자 클러스터의 사용자들 중에서 임계값을 초과하는 랭킹을 가지며, 인기있는 미디어 아이템들은 배타적인 미디어 아이템을 포함함 ―; 및 배타적인 미디어 아이템을 제2 세트의 사용자들 중의 사용자가 액세스가능함을 결정하는 단계를 더 포함한다.
[0085] 4. 조항 1-3 중 어느 한 조항에 있어서, 제1 및 제2 미디어 아이템 카탈로그들의 미디어 아이템들은 미디어 아이템들이 제시될 때 스트리밍 미디어 시스템의 사용자들이 미디어 아이템들을 얼마나 자주 플레이하는지에 따라 랭킹된다.
[0086] 5. 조항 1-4 중 어느 한 조항에 있어서, 제1 및 제2 사용자 활동 데이터는 통합된 사용자 활동 데이터 세트에 통합되며, 통합된 사용자 활동 데이터 세트는 미디어 아이템이 사용자에게 제시되었는지의 여부에 대한 표시 및 미디어 아이템이 사용자에 의해 선택되었는지의 여부에 대한 표시를 각각의 미디어 아이템 및 각각의 사용자에 대해 포함한다.
[0087] 6. 조항 1-5 중 어느 한 조항에 있어서, 사용자에게 제시되고 있는 미디어 아이템은 사용자 인터페이스를 통해 미디어 아이템을 사용자에게 추천하는 것을 포함한다.
[0088] 7. 조항 1-6 중 어느 한 조항에 있어서, 컴퓨터-구현 방법은 배타적인 미디어 아이템이 제시되는 경우에 제1 세트의 사용자들 중의 사용자가 배타적인 미디어 아이템을 플레이할 확률에 기반하여 인위적인 사용자 활동 데이터를 생성하는 단계를 더 포함하며, 제2 세트의 사용자들 중의 사용자에게 추천으로서 렌더링될 정보는 제1 및 제2 사용자 활동 데이터 및 인위적인 사용자 활동 데이터에 기반한다.
[0089] 8. 조항 1-7 중 어느 한 조항에 있어서, 제1 세트의 사용자들은 제1 법률적 관할 구역에 상주하며, 제2 세트의 사용자들은 제2 법률적 관할 구역에 상주하며, 제1 카탈로그는 제1 법률적 관할 구역에서 이용가능하며, 제2 카탈로그는 제2 법률적 관할 구역에서 이용가능하다.
[0090] 8.1 하나 또는 그 초과의 프로세싱 디바이스들에 의해 실행될 때, 프로세싱 디바이스로 하여금 조항 1-8 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 수행하게 하는 명령들을 저장한 비-일시적 컴퓨터-판독가능 저장 매체.
[0091] 8.2 하나 또는 그 초과의 프로세싱 디바이스들 상에서 구현될 때, 조항 1-8 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 수행하는 명령들을 포함하는 컴퓨터 프로그램 물건.
[0092] 8.3 하나 또는 그 초과의 프로세싱 디바이스들에 의해 구현될 때, 조항 1-8 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 제공하는 동작들을 수행하는 컴퓨팅 시스템.
[0093] 9. 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템으로서, 데이터 저장 디바이스; 및 프로세싱 디바이스를 포함하며; 데이터 저장 디바이스는 스트리밍 미디어 시스템의 제1 세트의 사용자들에 대한 제1 사용자 활동 데이터 ― 제1 세트의 사용자들은 제1 미디어 아이템 카탈로그에 대한 액세스를 가짐 ―, 및 스트리밍 미디어 시스템의 제2 세트의 사용자들에 대한 제2 사용자 활동 데이터를 저장하며, 제2 세트의 사용자들은 제1 미디어 아이템 카탈로그에 대한 액세스를 갖지 않고 제2 미디어 아이템 카탈로그에 대한 액세스를 가지며, 제2 미디어 아이템 카탈로그는 제1 및 제2 미디어 아이템 카탈로그들 둘다에 포함되는 오버래핑 미디어 아이템들을 포함하며, 제2 미디어 아이템 카탈로그는 제1 미디어 아이템 카탈로그에 포함되지 않는 배타적인 미디어 아이템을 더 포함하며; 프로세싱 디바이스는 제1 및 제2 사용자 활동 데이터와 제1 및 제2 미디어 아이템 카탈로그들의 콘텐츠들에 대한 정보에 액세스하기 위하여 데이터 저장 디바이스와 통신하며; 배타적인 미디어 아이템과 함께 스트리밍 미디어 시스템에 의해 제시되는 경우에, 제1 세트의 사용자들 중의 사용자가 배타적인 미디어 아이템을 플레이할 확률을 제1 및 제2 사용자 활동 데이터로부터 결정하며; 그리고 확률에 기반하여, 배타적인 미디어 아이템을 플레이하기 위한 추천으로서 제2 세트의 사용자들 중의 사용자에게, 사용자 디바이스에 의해 사용자 인터페이스에 렌더링될 정보를 제공한다.
[0094] 10. 조항 9에 있어서, 데이터 저장소에 저장된 제1 및 제2 사용자 활동 데이터는 통합된 사용자 활동 데이터 세트에 결합되며, 통합된 사용자 활동 데이터 세트는 미디어 아이템이 사용자에게 제시되었는지의 여부에 대한 표시 및 미디어 아이템이 사용자에 의해 플레이되었는지의 여부에 대한 표시를 각각의 미디어 아이템 및 각각의 사용자에 대해 포함한다.
[0095] 11. 조항 9 또는 10에 있어서, 프로세싱 디바이스는 미디어 아이템들의 카탈로그간 랭킹을 결정하며, 카탈로그간 랭킹은 제1 및 제2 미디어 아이템 카탈로그들에 포함된 미디어 아이템들의 랭킹을 포함한다.
[0096] 12. 조항 9-11 중 어느 한 조항에 있어서, 제1 세트의 사용자들 중의 사용자 및 제2 세트의 사용자들 중의 사용자는 둘다 사용자들의 제1 클러스터와 연관되며, 제1 세트의 사용자들은 제1 사용자가 제1 클러스터 및 제2 클러스터와 연관되어 정의될 수 있도록 사용자들의 제2 클러스터와 부가적으로 연관된다.
[0097] 13. 조항 9-12 중 어느 한 조항에 있어서, 각각의 미디어 아이템과 연관된 확률은 Bernoulli 확률 변수이다.
[0098] 14. 조항 9-13 중 어느 한 조항에 있어서, 제1 및 제2 미디어 아이템 카탈로그들은 지불-장벽(pay-wall)에 의해 분리되지 않는다.
[0099] 14.1 하나 또는 그 초과의 프로세싱 디바이스들에 의해 실행될 때, 프로세싱 디바이스들로 하여금 조항 9-14 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 수행하게 하는 명령들을 저장한 비-일시적 컴퓨터-판독가능 저장 매체.
[00100] 14.2 하나 또는 그 초과의 프로세싱 디바이스들 상에서 구현될 때, 조항 9-14 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 수행하는 명령들을 포함하는 컴퓨터 프로그램 물건.
[00101] 14.3 하나 또는 그 초과의 프로세싱 디바이스들에 의해 구현될 때, 조항 9-14 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 제공하는 동작들을 수행하는 방법.
[00102] 15. 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템으로서, 데이터 저장 디바이스; 및 프로세싱 디바이스를 포함하며; 데이터 저장 디바이스는 스트리밍 미디어 시스템의 사용자들의 세트에 대한 사용자 활동 데이터 ― 사용자 활동 데이터는 미디어 아이템 카탈로그의 미디어 아이템들의 세트 중 하나 또는 그 초과의 미디어 아이템들과 사용자들의 상호작용들을 기술함 ―, 사용자가 액세스를 가지는 미디어 아이템들의 서브세트를 사용자들의 세트의 각각의 사용자에 대해 표시하는 사용자 액세스 데이터를 저장하며, 사용자들의 세트 중 제1 사용자는 사용자들의 세트 중 제2 사용자가 액세스를 갖지 않는 제1 미디어 아이템에 대한 액세스를 가지며; 프로세싱 디바이스는 미디어 아이템들의 세트, 사용자 활동 데이터 및 사용자 액세스 데이터에 대한 정보에 액세스하기 위하여 데이터 저장 디바이스와 통신하며, 제1 미디어 아이템과 함께 스트리밍 미디어 시스템에 의해 제시되는 경우에, 제2 사용자가 제1 미디어 아이템을 플레이할 확률을 사용자 활동 데이터로부터 결정하며; 그리고 확률에 기반하여, 제1 미디어 아이템을 플레이하기 위한 추천으로서 제1 사용자에게, 사용자 디바이스에 의해 사용자 인터페이스에 렌더링될 정보를 제공한다.
[00103] 16. 조항 15에 있어서, 사용자 액세스 데이터는 사용자들의 세트의 각각의 사용자가 미디어 아이템 카탈로그에서 어느 미디어 아이템들에 액세스할 수 있는지에 대한 표시를 포함한다.
[00104] 17. 조항 15 또는 16에 있어서, 인위적인 사용자 활동 데이터를 더 포함하며, 인위적인 사용자 활동 데이터는 제1 미디어 아이템이 제시되는 경우에 제2 사용자가 제1 미디어 아이템을 플레이할 확률에 기반하여 생성된 플레이 레코드를 포함한다.
[00105] 18. 조항 15-17 중 어느 한 조항에 있어서, 미디어 카탈로그의 미디어 아이템들의 서브세트는 제1 사용자의 사용자 활동 데이터 및 제2 사용자의 사용자 활동 데이터에 기반하여 제1 사용자 및 제2 사용자 둘다를 포함하는 사용자들의 클러스터와 연관된다.
[00106] 19. 조항 15-18 중 어느 한 조항에 있어서, 제1 사용자에게의 추천은 사용자들의 클러스터와 제1 사용자의 연관성에 추가로 기반한다.
[00107] 20. 조항 15-19 중 어느 한 조항에 있어서, 미디어 아이템들은 제1 사용자 및 제2 사용자의 사용자 활동 데이터에 기반하여, 그리고 제1 미디어 아이템이 제시되는 경우에 제2 사용자가 제1 미디어 아이템을 플레이할 확률에 기반하여 생성된 플레이 레코드를 포함하는 인위적인 사용자 활동 데이터에 기반하여 클러스터와 연관된다.
[00108] 20.1 하나 또는 그 초과의 프로세싱 디바이스들에 의해 실행될 때, 프로세싱 디바이스들로 하여금 조항 15-20 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 수행하게 하는 명령들을 저장한 비-일시적 컴퓨터-판독가능 저장 매체.
[00109] 20.2 하나 또는 그 초과의 프로세싱 디바이스들 상에서 구현될 때, 조항 15-20 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 수행하는 명령들을 포함하는 컴퓨터 프로그램 물건.
[00110] 20.3 하나 또는 그 초과의 프로세싱 디바이스들에 의해 구현될 때, 조항 15-20 중 어느 한 조항에서 인용된 특징들 중 어느 하나를 제공하는 동작들을 수행하는 방법.
[00111] 비록 본 개시내용의 전술한 양상들이 명확성과 이해를 위해 예시 및 예로 상세히 설명되었을지라도, 앞서 설명된 발명이 본 발명의 사상 또는 본질적인 특징들로부터 벗어나지 않고 다수의 다른 특정 변형들 및 실시예들로 구현될 수 있다는 것이 인식될 것이다. 다양한 변형들 및 수정들이 실시될 수 있으며 본 발명이 전술한 세부사항들에 의해 제한되는 것이 아니라 오히려 청구항들의 범위에 의해 제한되어야 한다는 것이 이해된다.
Claims (20)
- 컴퓨터-구현 방법으로서,
스트리밍 미디어 시스템의 제1 세트의 사용자들에 대한 제1 사용자 활동 데이터를 수신하는 단계 ― 상기 제1 세트의 사용자들은 제1 미디어 아이템 카탈로그에 대한 액세스를 가짐 ―;
상기 스트리밍 미디어 시스템의 제2 세트의 사용자들에 대한 제2 사용자 활동 데이터를 수신하는 단계 ― 상기 제2 세트의 사용자들은 제2 미디어 아이템 카탈로그에 대한 액세스를 갖고 상기 제1 미디어 아이템 카탈로그 내의 하나 이상의 미디어 아이템들에 대한 액세스를 갖지 않으며, 상기 제2 미디어 아이템 카탈로그는 오버래핑 미디어 아이템들을 포함하며, 상기 오버래핑 미디어 아이템들은 상기 제1 및 제2 미디어 아이템 카탈로그들 둘 다에 포함되며, 상기 제2 미디어 아이템 카탈로그는 상기 제1 미디어 아이템 카탈로그에 포함되지 않는 배타적인 미디어 아이템을 더 포함함 ―;
프로세싱 디바이스에 의해 그리고 상기 제1 및 제2 사용자 활동 데이터에 기반하여, 상기 스트리밍 미디어 시스템에 의해 추천되는 경우 상기 제1 세트의 사용자들 중의 사용자가 상기 배타적인 미디어 아이템을 플레이할 확률을 결정하는 단계 ― 상기 사용자가 상기 배타적인 미디어 아이템을 플레이할 상기 확률을 결정하는 단계는,
상기 결정에서, 상기 배타적인 미디어 아이템을 추천함으로써 도입된 하나 이상의 바이어싱 효과들을 보상하는 단계 ― 상기 보상하는 단계는 어느 사용자들이 상기 배타적인 미디어 아이템을 선택했는지를 나타내는, 상기 제1 및 제2 사용자 활동 데이터에 포함된 테이크-레이트 정보에 기반함 ―; 및
상기 결정에서, 상기 테이크-레이트 정보를 분석하여 상기 배타적인 미디어 아이템이 선택된 횟수가 상이한 지리적 관할들 간에 비례하는지를 결정함으로써 상기 상이한 지리적 관할들에서 오버래핑되지만 동일하지 않은 미디어 아이템 카탈로그들의 사이즈 차이들에 의해 도입된 하나 이상의 바이어싱 효과들을 보상하는 단계를 포함함 ―; 및
상기 확률에 기반하여 상기 배타적인 미디어 아이템을 플레이하기 위해 사용자 디바이스에 의해 사용자 인터페이스에 상기 제2 세트의 사용자들 중의 사용자에게 렌더링될 정보를 추천으로서 제공하는 단계
를 포함하는, 컴퓨터-구현 방법. - 제1 항에 있어서,
미디어 아이템들의 카탈로그간 랭킹(ranking)을 결정하는 단계를 더 포함하며, 상기 카탈로그간 랭킹은 상기 제1 및 제2 미디어 아이템 카탈로그들에 포함된 미디어 아이템들의 랭킹을 포함하는, 컴퓨터-구현 방법. - 제1 항에 있어서,
상기 제2 세트의 사용자들 중의 사용자와 연관되는 사용자 클러스터(user cluster)를 식별하는 단계;
상기 제1 및 제2 미디어 아이템 카탈로그들로부터 인기있는 미디어 아이템들을 결정하는 단계 ― 상기 인기있는 미디어 아이템들은 상기 사용자 클러스터의 사용자들 중에서 임계값을 초과하는 랭킹을 가지며, 상기 인기있는 미디어 아이템들은 상기 배타적인 미디어 아이템을 포함함 ―; 및
상기 배타적인 미디어 아이템을 상기 제2 세트의 사용자들 중의 사용자가 액세스가능함을 결정하는 단계를 더 포함하는, 컴퓨터-구현 방법. - 제1 항에 있어서,
상기 제1 및 제2 미디어 아이템 카탈로그들의 미디어 아이템들은 상기 미디어 아이템들이 제시될 때 상기 스트리밍 미디어 시스템의 사용자들이 상기 미디어 아이템들을 얼마나 자주 플레이하는지에 따라 랭킹되는, 컴퓨터-구현 방법. - 제1 항에 있어서,
상기 제1 및 제2 사용자 활동 데이터는 통합된 사용자 활동 데이터 세트에 통합되며, 상기 통합된 사용자 활동 데이터 세트는, 각각의 미디어 아이템 및 각각의 사용자에 대해, 상기 미디어 아이템이 상기 사용자에게 제시되었는지 여부의 표시 및 상기 미디어 아이템이 상기 사용자에 의해 선택되었는지 여부의 표시를 포함하는, 컴퓨터-구현 방법. - 제5 항에 있어서,
상기 사용자에게 제시되고 있는 상기 미디어 아이템은 상기 사용자 인터페이스를 통해 사용자에게 상기 미디어 아이템을 추천하는 것을 포함하는, 컴퓨터-구현 방법. - 제1 항에 있어서,
상기 배타적인 미디어 아이템이 제시되는 경우에 상기 제1 세트의 사용자들 중의 사용자가 상기 배타적인 미디어 아이템을 플레이할 확률에 기반하여 인위적인 사용자 활동 데이터를 생성하는 단계를 더 포함하며, 상기 제2 세트의 사용자들 중의 사용자에게 추천으로서 렌더링될 정보는 상기 제1 및 제2 사용자 활동 데이터 및 상기 인위적인 사용자 활동 데이터에 기반하는, 컴퓨터-구현 방법. - 제1 항에 있어서,
상기 제1 세트의 사용자들은 제1 법률적 관할 구역에 상주하며, 상기 제2 세트의 사용자들은 제2 법률적 관할 구역에 상주하며, 상기 제1 미디어 아이템 카탈로그는 상기 제1 법률적 관할 구역에서 이용가능하며, 상기 제2 미디어 아이템 카탈로그는 상기 제2 법률적 관할 구역에서 이용가능한, 컴퓨터-구현 방법. - 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템으로서,
데이터 저장 디바이스; 및
프로세싱 디바이스를 포함하며;
상기 데이터 저장 디바이스는,
스트리밍 미디어 시스템의 제1 세트의 사용자들에 대한 제1 사용자 활동 데이터 ― 상기 제1 세트의 사용자들은 제1 미디어 아이템 카탈로그에 대한 액세스를 가짐 ―, 및
상기 스트리밍 미디어 시스템의 제2 세트의 사용자들에 대한 제2 사용자 활동 데이터를 저장하며, 상기 제2 세트의 사용자들은 제2 미디어 아이템 카탈로그에 대한 액세스를 갖고 상기 제1 미디어 아이템 카탈로그 내의 하나 이상의 미디어 아이템들에 대한 액세스를 갖지 않으며, 상기 제2 미디어 아이템 카탈로그는 상기 제1 및 제2 미디어 아이템 카탈로그들 둘 다에 포함되는 오버래핑 미디어 아이템들을 포함하며, 상기 제2 미디어 아이템 카탈로그는 상기 제1 미디어 아이템 카탈로그에 포함되지 않는 배타적인 미디어 아이템을 더 포함하며;
상기 프로세싱 디바이스는,
상기 제1 및 제2 미디어 아이템 카탈로그들의 콘텐츠 및 상기 제1 및 제2 사용자 활동 데이터에 대한 정보에 액세스하기 위하여 상기 데이터 저장 디바이스와 통신하며;
상기 제1 및 제2 사용자 활동 데이터로부터, 상기 스트리밍 미디어 시스템에 의해 추천되는 경우, 상기 제1 세트의 사용자들 중의 사용자가 상기 배타적인 미디어 아이템을 플레이할 확률을 결정하며 ― 상기 사용자가 상기 배타적인 미디어 아이템을 플레이할 상기 확률을 결정하는 것은,
상기 결정에서, 상기 배타적인 미디어 아이템을 추천함으로써 도입된 하나 이상의 바이어싱 효과들을 보상하는 것― 상기 보상하는 것은 어느 사용자들이 상기 배타적인 미디어 아이템을 선택했는지를 나타내는, 상기 제1 및 제2 사용자 활동 데이터에 포함된 테이크-레이트 정보에 기반함 ―; 및
상기 결정에서, 상기 테이크-레이트 정보를 분석하여 상기 배타적인 미디어 아이템이 선택된 횟수가 상이한 지리적 관할들 간에 비례하는지를 결정함으로써 상기 상이한 지리적 관할들에서 오버래핑되지만 동일하지 않은 미디어 아이템 카탈로그들의 사이즈 차이들에 의해 도입된 하나 이상의 바이어싱 효과들을 보상하는 것을 포함함 ―; 그리고
상기 확률에 기반하여, 상기 배타적인 미디어 아이템을 플레이하기 위해 사용자 디바이스에 의해 사용자 인터페이스에 상기 제2 세트의 사용자들 중의 사용자에게 렌더링될 정보를 추천으로서 제공하는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제9 항에 있어서,
상기 데이터 저장 디바이스에 저장된 상기 제1 및 제2 사용자 활동 데이터는 통합된 사용자 활동 데이터 세트에 결합되며, 상기 통합된 사용자 활동 데이터 세트는 각각의 미디어 아이템 및 각각의 사용자에 대해 상기 미디어 아이템이 상기 사용자에게 제시되었는지 여부의 표시 및 상기 미디어 아이템이 상기 사용자에 의해 플레이되었는지 여부의 표시를 포함하는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제9 항에 있어서,
상기 프로세싱 디바이스는 미디어 아이템들의 카탈로그 간 랭킹을 결정하며, 상기 카탈로그 간 랭킹은 상기 제1 및 제2 미디어 아이템 카탈로그들에 포함된 미디어 아이템들의 랭킹을 포함하는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제11 항에 있어서,
상기 제1 세트의 사용자들 중의 사용자 및 상기 제2 세트의 사용자들 중의 사용자는 둘 다 사용자들의 제1 클러스터와 연관되며, 상기 제1 세트의 사용자들은 상기 제1 사용자가 상기 제1 클러스터 및 제2 클러스터와 연관되어 정의될 수 있도록 사용자들의 제2 클러스터와 부가적으로 연관되는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제12 항에 있어서,
각각의 미디어 아이템과 연관된 상기 확률은 Bernoulli 확률 변수인, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제9 항에 있어서,
상기 제1 및 제2 미디어 아이템 카탈로그들은 지불-장벽(pay-wall)에 의해 분리되지 않는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템으로서,
데이터 저장 디바이스; 및
프로세싱 디바이스를 포함하며,
상기 데이터 저장 디바이스는,
스트리밍 미디어 시스템의 사용자들의 세트에 대한 사용자 활동 데이터 ― 상기 사용자 활동 데이터는 미디어 아이템 카탈로그 내의 미디어 아이템들의 세트 중 하나 이상의 미디어 아이템들과 상기 사용자들의 상호작용들을 기술함 ―,
상기 사용자들의 세트의 각각의 사용자에 대해, 상기 사용자가 액세스를 가지는 미디어 아이템들의 서브세트를 표시하는 사용자 액세스 데이터를 저장하며 ― 상기 사용자들의 세트 중 제1 사용자는 상기 사용자들의 세트 중 제2 사용자가 액세스를 갖지 않는 제1 미디어 아이템에 대한 액세스를 가짐 ―;
상기 프로세싱 디바이스는,
상기 미디어 아이템들의 세트, 상기 사용자 활동 데이터 및 상기 사용자 액세스 데이터에 대한 정보에 액세스하기 위하여 상기 데이터 저장 디바이스와 통신하며,
상기 스트리밍 미디어 시스템에 의해 추천되는 경우, 상기 제2 사용자가 상기 제1 미디어 아이템을 플레이할 확률을 상기 사용자 활동 데이터로부터 결정하며 ― 상기 사용자가 상기 제1 미디어 아이템을 플레이할 상기 확률을 결정하는 것은,
상기 결정에서, 상기 제1 미디어 아이템을 추천함으로써 도입된 하나 이상의 바이어싱 효과들을 보상하는 것― 상기 보상하는 것은 어느 사용자들이 상기 제1 미디어 아이템을 선택했는지를 나타내는, 상기 사용자 활동 데이터에 포함된 테이크-레이트 정보에 기반함 ―; 및
상기 결정에서, 상기 테이크-레이트 정보를 분석하여 상기 제1 미디어 아이템이 선택된 횟수가 상이한 지리적 관할들 간에 비례하는지를 결정함으로써 상기 상이한 지리적 관할들에서 오버래핑되지만 동일하지 않은 미디어 아이템 카탈로그들의 사이즈 차이들에 의해 도입된 하나 이상의 바이어싱 효과들을 보상하는 것을 포함함 ―; 그리고
상기 확률에 기반하여, 상기 제1 미디어 아이템을 플레이하기 위해 사용자 디바이스에 의해 사용자 인터페이스에 상기 제1 사용자에게 렌더링될 정보를 추천으로서 제공하는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제15 항에 있어서,
상기 사용자 액세스 데이터는 상기 사용자들의 세트의 각각의 사용자가 미디어 아이템 카탈로그 내의 어느 미디어 아이템들에 액세스할 수 있는지의 표시를 포함하는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제15 항에 있어서,
인위적인 사용자 활동 데이터를 더 포함하며, 상기 인위적인 사용자 활동 데이터는 상기 제1 미디어 아이템이 제시되는 경우 상기 제2 사용자가 상기 제1 미디어 아이템을 플레이할 확률에 기반하여 생성된 플레이 레코드를 포함하는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제15 항에 있어서,
상기 미디어 아이템 카탈로그의 상기 미디어 아이템들의 서브세트는 상기 제1 사용자의 사용자 활동 데이터 및 상기 제2 사용자의 사용자 활동 데이터에 기반하여 상기 제1 사용자 및 상기 제2 사용자 둘 다를 포함하는 사용자들의 클러스터와 연관되는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제18 항에 있어서,
상기 제1 사용자에게의 추천은 상기 사용자들의 클러스터와 상기 제1 사용자의 연관성에 추가로 기반하는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템. - 제18 항에 있어서,
상기 미디어 아이템들은 상기 제1 사용자 및 상기 제2 사용자의 사용자 활동 데이터에 기반하여, 그리고 상기 제1 미디어 아이템이 제시되는 경우 상기 제2 사용자가 상기 제1 미디어 아이템을 플레이할 확률에 기반하여 생성된 플레이 레코드를 포함하는 인위적인 사용자 활동 데이터에 기반하여 상기 클러스터와 연관되는, 스트리밍 미디어 아이템들을 사용자들에게 제공하기 위한 시스템.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562143629P | 2015-04-06 | 2015-04-06 | |
US62/143,629 | 2015-04-06 | ||
US15/079,767 | 2016-03-24 | ||
US15/079,767 US10552470B2 (en) | 2015-04-06 | 2016-03-24 | Global recommendation systems for overlapping media catalogs |
PCT/US2016/026070 WO2016164377A1 (en) | 2015-04-06 | 2016-04-05 | Global recommendation systems for overlapping media catalogs |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180021677A KR20180021677A (ko) | 2018-03-05 |
KR102626662B1 true KR102626662B1 (ko) | 2024-01-19 |
Family
ID=57017577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177032151A KR102626662B1 (ko) | 2015-04-06 | 2016-04-05 | 오버래핑 미디어 카탈로그들을 위한 글로벌 추천 시스템 |
Country Status (9)
Country | Link |
---|---|
US (2) | US10552470B2 (ko) |
EP (1) | EP3262534A1 (ko) |
JP (1) | JP6802183B2 (ko) |
KR (1) | KR102626662B1 (ko) |
CN (1) | CN107980129B (ko) |
AU (1) | AU2016246507B2 (ko) |
CA (1) | CA2980326C (ko) |
MX (1) | MX2017012683A (ko) |
WO (1) | WO2016164377A1 (ko) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9591339B1 (en) | 2012-11-27 | 2017-03-07 | Apple Inc. | Agnostic media delivery system |
US10200761B1 (en) | 2012-12-13 | 2019-02-05 | Apple Inc. | TV side bar user interface |
US9532111B1 (en) | 2012-12-18 | 2016-12-27 | Apple Inc. | Devices and method for providing remote control hints on a display |
US10521188B1 (en) | 2012-12-31 | 2019-12-31 | Apple Inc. | Multi-user TV user interface |
CN118210424A (zh) | 2014-06-24 | 2024-06-18 | 苹果公司 | 用于在用户界面中导航的列界面 |
CN117331482A (zh) | 2014-06-24 | 2024-01-02 | 苹果公司 | 输入设备和用户界面交互 |
US10552470B2 (en) | 2015-04-06 | 2020-02-04 | Netflix, Inc. | Global recommendation systems for overlapping media catalogs |
DK201670582A1 (en) | 2016-06-12 | 2018-01-02 | Apple Inc | Identifying applications on which content is available |
DK201670581A1 (en) | 2016-06-12 | 2018-01-08 | Apple Inc | Device-level authorization for viewing content |
US10165315B2 (en) * | 2016-10-17 | 2018-12-25 | Viacom International Inc. | Systems and methods for predicting audience measurements of a television program |
US11966560B2 (en) | 2016-10-26 | 2024-04-23 | Apple Inc. | User interfaces for browsing content from multiple content applications on an electronic device |
US20180124444A1 (en) * | 2016-11-01 | 2018-05-03 | Netflix, Inc. | Systems and methods of predicting consumption of original media items accesible via an internet-based media system |
US20190122140A1 (en) * | 2017-10-20 | 2019-04-25 | STATGRAF Research LLP. | Data analysis and rendering |
DK201870354A1 (en) | 2018-06-03 | 2019-12-20 | Apple Inc. | SETUP PROCEDURES FOR AN ELECTRONIC DEVICE |
JP2020053764A (ja) * | 2018-09-25 | 2020-04-02 | シャープ株式会社 | 端末装置、情報処理システム、表示方法、及びプログラム |
EP3928194A1 (en) | 2019-03-24 | 2021-12-29 | Apple Inc. | User interfaces including selectable representations of content items |
US11683565B2 (en) | 2019-03-24 | 2023-06-20 | Apple Inc. | User interfaces for interacting with channels that provide content that plays in a media browsing application |
CN114297620A (zh) * | 2019-03-24 | 2022-04-08 | 苹果公司 | 用于媒体浏览应用程序的用户界面 |
EP3928526A1 (en) | 2019-03-24 | 2021-12-29 | Apple Inc. | User interfaces for viewing and accessing content on an electronic device |
US11863837B2 (en) | 2019-05-31 | 2024-01-02 | Apple Inc. | Notification of augmented reality content on an electronic device |
WO2020243645A1 (en) | 2019-05-31 | 2020-12-03 | Apple Inc. | User interfaces for a podcast browsing and playback application |
US11843838B2 (en) | 2020-03-24 | 2023-12-12 | Apple Inc. | User interfaces for accessing episodes of a content series |
US11899895B2 (en) | 2020-06-21 | 2024-02-13 | Apple Inc. | User interfaces for setting up an electronic device |
US11720229B2 (en) | 2020-12-07 | 2023-08-08 | Apple Inc. | User interfaces for browsing and presenting content |
US11934640B2 (en) | 2021-01-29 | 2024-03-19 | Apple Inc. | User interfaces for record labels |
KR102558742B1 (ko) * | 2021-04-22 | 2023-07-24 | 김태형 | 전자 카탈로그 운용 방법 |
US20220382766A1 (en) * | 2021-06-01 | 2022-12-01 | Apple Inc. | Automatic Media Asset Suggestions for Presentations of Selected User Media Items |
CN113590955A (zh) * | 2021-07-30 | 2021-11-02 | 武汉斗鱼鱼乐网络科技有限公司 | 目标推荐用户确定方法、装置、电子设备以及存储介质 |
US20230214434A1 (en) * | 2021-12-30 | 2023-07-06 | Netflix, Inc. | Dynamically generating a structured page based on user input |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009519681A (ja) * | 2005-12-13 | 2009-05-14 | ユナイテッド ビデオ プロパティーズ, インコーポレイテッド | 双方向テレビアプリケーションで使用するためのクロスプラットホームの予測人気率 |
US20130013458A1 (en) * | 2011-07-08 | 2013-01-10 | Carlos Alberto Gomez Uribe | Identifying similar items based on global interaction history |
US20140280221A1 (en) * | 2013-03-13 | 2014-09-18 | Google Inc. | Tailoring user experience for unrecognized and new users |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100538701C (zh) * | 2000-07-31 | 2009-09-09 | 兰德马克数字服务公司 | 用于从媒体样本辨认媒体实体的方法 |
CN101401422B (zh) * | 2006-03-08 | 2011-09-07 | 黄金富 | 个性化区域化商业电视广告的方法和系统 |
US20090259621A1 (en) * | 2008-04-11 | 2009-10-15 | Concert Technology Corporation | Providing expected desirability information prior to sending a recommendation |
US8229873B1 (en) * | 2009-09-18 | 2012-07-24 | Google Inc. | News topic-interest-based recommendations twiddling |
US8422858B2 (en) * | 2010-01-21 | 2013-04-16 | Robert Paul Morris | Methods, systems, and computer program products for coordinating playing of media streams |
JP5430457B2 (ja) * | 2010-03-16 | 2014-02-26 | 富士フイルム株式会社 | 記録テープカートリッジ |
US8666980B1 (en) | 2010-05-19 | 2014-03-04 | Amazon Technologies, Inc. | Virtual clickstream recommendations |
US10311386B2 (en) | 2011-07-08 | 2019-06-04 | Netflix, Inc. | Identifying similar items based on interaction history |
US9454530B2 (en) | 2012-10-04 | 2016-09-27 | Netflix, Inc. | Relationship-based search and recommendations |
US9552395B2 (en) * | 2013-11-13 | 2017-01-24 | Google Inc. | Methods, systems, and media for presenting recommended media content items |
US9712587B1 (en) * | 2014-12-01 | 2017-07-18 | Google Inc. | Identifying and rendering content relevant to a user's current mental state and context |
US10552470B2 (en) | 2015-04-06 | 2020-02-04 | Netflix, Inc. | Global recommendation systems for overlapping media catalogs |
-
2016
- 2016-03-24 US US15/079,767 patent/US10552470B2/en active Active
- 2016-04-05 KR KR1020177032151A patent/KR102626662B1/ko active IP Right Grant
- 2016-04-05 JP JP2017553182A patent/JP6802183B2/ja active Active
- 2016-04-05 AU AU2016246507A patent/AU2016246507B2/en active Active
- 2016-04-05 CN CN201680025338.XA patent/CN107980129B/zh active Active
- 2016-04-05 CA CA2980326A patent/CA2980326C/en active Active
- 2016-04-05 EP EP16716429.2A patent/EP3262534A1/en not_active Ceased
- 2016-04-05 MX MX2017012683A patent/MX2017012683A/es active IP Right Grant
- 2016-04-05 WO PCT/US2016/026070 patent/WO2016164377A1/en active Application Filing
-
2019
- 2019-12-31 US US16/732,088 patent/US10885093B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009519681A (ja) * | 2005-12-13 | 2009-05-14 | ユナイテッド ビデオ プロパティーズ, インコーポレイテッド | 双方向テレビアプリケーションで使用するためのクロスプラットホームの予測人気率 |
US20130013458A1 (en) * | 2011-07-08 | 2013-01-10 | Carlos Alberto Gomez Uribe | Identifying similar items based on global interaction history |
US20140280221A1 (en) * | 2013-03-13 | 2014-09-18 | Google Inc. | Tailoring user experience for unrecognized and new users |
Also Published As
Publication number | Publication date |
---|---|
JP2018517964A (ja) | 2018-07-05 |
WO2016164377A1 (en) | 2016-10-13 |
MX2017012683A (es) | 2017-11-23 |
CA2980326C (en) | 2021-09-07 |
US10552470B2 (en) | 2020-02-04 |
JP6802183B2 (ja) | 2020-12-16 |
KR20180021677A (ko) | 2018-03-05 |
US20200133971A1 (en) | 2020-04-30 |
US10885093B2 (en) | 2021-01-05 |
EP3262534A1 (en) | 2018-01-03 |
AU2016246507A1 (en) | 2017-10-12 |
CA2980326A1 (en) | 2016-10-13 |
AU2016246507B2 (en) | 2021-05-27 |
CN107980129B (zh) | 2022-02-25 |
CN107980129A (zh) | 2018-05-01 |
US20160292158A1 (en) | 2016-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102626662B1 (ko) | 오버래핑 미디어 카탈로그들을 위한 글로벌 추천 시스템 | |
US10129596B2 (en) | Adaptive row selection | |
US8719261B2 (en) | Dynamic catalog ranking | |
US10546059B2 (en) | Methods and systems for determining how long to modify a user profile based on a real-life event | |
US10387513B2 (en) | Method and apparatus for generating a recommended content list | |
US20240107265A1 (en) | Systems and methods for intelligent audio output | |
WO2012173670A1 (en) | Systems and methods for providing media recommendations | |
US11693984B2 (en) | Methods and systems for implementing parental controls | |
US10893122B2 (en) | Methods and systems for determining user recovery times to real-life event | |
US20180124444A1 (en) | Systems and methods of predicting consumption of original media items accesible via an internet-based media system | |
US20220021747A1 (en) | Methods and systems for determining end dates for user profile modifications based on real-life events | |
US9973502B2 (en) | Methods and systems for automatically adjusting parental controls | |
CN106471819A (zh) | 用于提高媒体资产推荐模型中的精确性的系统和方法 | |
JP2020519067A (ja) | 複数のソースからの検索結果を提示するためのシステムおよび方法 | |
US10313460B2 (en) | Cross-domain information management | |
US10592831B2 (en) | Methods and systems for recommending actors | |
US10503794B2 (en) | Video content optimization system and method for content and advertisement placement improvement on a third party media content platform | |
US10187704B1 (en) | Methods and systems for presenting a media asset segment that is associated with a pre-specified quality of acting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |