(57)【特許請求の範囲】
【請求項１】
機械学習モデルを訓練する方法であって、
前記機械学習モデルのための訓練データを訓練セット生成器によって生成するステップであって、
コンテンツ共有プラットフォーム上で第1の複数のユーザ集団のユーザによって購入された1つまたは複数の以前に提示されたライブストリームメディアアイテムを含む第1の訓練入力を前記訓練セット生成器によって生成するステップ、
前記コンテンツ共有プラットフォーム上で第2の複数のユーザ集団のユーザによって現在購入されている1つまたは複数の現在提示されているライブストリームメディアアイテムを含む第2の訓練入力を前記訓練セット生成器によって生成するステップ、ならびに、
ライブストリームメディアアイテム、および前記ライブストリームメディアアイテムを前記ユーザが購入することになるか否かの指標を識別する、前記第1の訓練入力および前記第2の訓練入力に対する第1のターゲット出力を前記訓練セット生成器によって生成するステップを含む、ステップと、
(i)前記第1の訓練入力および前記第2の訓練入力を含む訓練入力のセット、ならびに(ii)前記第1のターゲット出力を含むターゲット出力のセットに関する、前記機械学習モデルを訓練するための前記訓練データを前記訓練セット生成器によって提供するステップとを含む、
方法。
【請求項２】
前記訓練データを生成するステップが、
前記コンテンツ共有プラットフォーム上で前記1つまたは複数の以前に提示されたライブストリームメディアアイテムを購入した前記第1の複数のユーザ集団の前記ユーザによるユーザアクセスと関連付けられた第1のコンテキスト情報を含む第3の訓練入力を前記訓練セット生成器によって生成するステップと、
前記コンテンツ共有プラットフォーム上で前記1つまたは複数の現在提示されているライブストリームメディアアイテムを購入している前記第2の複数のユーザ集団の前記ユーザによるユーザアクセスと関連付けられた第2のコンテキスト情報を含む第4の訓練入力を前記訓練セット生成器によって生成するステップとをさらに含み、
訓練入力の前記セットが、前記第1の訓練入力、前記第2の訓練入力、前記第3の訓練入力、および前記第4の訓練入力を含む、
請求項1に記載の方法。
【請求項３】
前記訓練データを生成するステップが、
前記コンテンツ共有プラットフォーム上で前記1つまたは複数の以前に提示されたライブストリームメディアアイテムを購入した前記第1の複数のユーザ集団の前記ユーザと関連付けられた第1のユーザ情報を含む第5の訓練入力を前記訓練セット生成器によって生成するステップと、
前記コンテンツ共有プラットフォーム上で前記1つまたは複数の現在提示されているライブストリームメディアアイテムを購入している前記第2の複数のユーザ集団のユーザと関連付けられた第2のユーザ情報を含む第6の訓練入力を前記訓練セット生成器によって生成するステップとをさらに含み、
訓練入力の前記セットが、前記第1の訓練入力、前記第2の訓練入力、前記第5の訓練入力、および前記第6の訓練入力を含む、
請求項1に記載の方法。
【請求項４】
訓練入力の前記セットの各訓練入力が、ターゲット出力の前記セット内の個々のターゲット出力と関連付けられる、
請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記第1の訓練入力が、前記1つまたは複数の以前に提示されたライブストリームメディアアイテムのうちの第1の以前に提示されたライブストリームメディアアイテムを購入した前記第1の複数のユーザ集団のうちの第1のユーザ集団を識別し、前記第1の以前に提示されたライブストリームメディアアイテムが、前記第1のユーザ集団にライブストリーミングされた、
請求項1から4のいずれか一項に記載の方法。
【請求項６】
前記第1の訓練入力が、前記1つまたは複数の以前に提示されたライブストリームメディアアイテムのうちの第2の以前に提示されたライブストリームメディアアイテムを購入した前記第1の複数のユーザ集団のうちの第2のユーザ集団を識別し、
前記第2の以前に提示されたライブストリームメディアアイテムが、ライブストリーミングされた後に前記第2のユーザ集団に提示された、
請求項1から5のいずれか一項に記載の方法。
【請求項７】
前記第1の訓練入力が、前記1つまたは複数の以前に提示されたライブストリームメディアアイテムのうちの複数の別の以前に提示されたライブストリームメディアアイテムを購入した前記第1の複数のユーザ集団のうちの第3のユーザ集団を識別し、
前記別の以前に提示されたライブストリームメディアアイテムが、前記第3のユーザ集団にライブストリーミングされ、ライブストリームメディアアイテムの類似のカテゴリに後で分類された、
請求項1から6のいずれか一項に記載の方法。
【請求項８】
前記コンテンツ共有プラットフォームへの前記ユーザによるユーザアクセスの指示をコンピュータシステムによって受信するステップと、
テストライブストリームメディアアイテム、および前記テストライブストリームメディアアイテムを前記ユーザが購入することになる確実性のレベルを識別するテスト出力を前記機械学習モデルによって生成するステップと、
前記テストライブストリームメディアアイテムの推奨を前記ユーザに前記コンピュータシステムによって提供するステップと、
前記推奨を考慮した、前記ユーザによる前記テストライブストリームメディアアイテムの購入の指示を前記コンピュータシステムによって受信するステップと、
前記ユーザによる前記テストライブストリームメディアアイテムの購入の前記指示に応答して、購入の前記指示に基づいて前記機械学習モデルを前記コンピュータシステムによって調節するステップとをさらに含む、
請求項1から7のいずれか一項に記載の方法。
【請求項９】
前記機械学習モデルが、前記コンテンツ共有プラットフォームへの新しいユーザによる新しいユーザアクセスを処理すること、ならびに(i)現在のライブストリームメディアアイテム、および(ii)前記現在のライブストリームメディアアイテムを前記新しいユーザが購入することになる確実性のレベル、を示す1つまたは複数の出力を生成することを行うように構成される、
請求項1から8のいずれか一項に記載の方法。
【請求項１０】
コンテンツ共有プラットフォームへのユーザによるユーザアクセスの指示をコンテンツ推奨エンジンによって受信するステップと、
前記ユーザアクセスの前記指示の受信に応答して、
前記コンテンツ共有プラットフォームへの前記ユーザアクセスと関連付けられたコンテキスト情報を含む第1の入力、前記ユーザアクセスと関連付けられたユーザ情報を含む第2の入力、ならびに前記ユーザアクセスと同時にライブストリーミングされ、前記コンテンツ共有プラットフォーム上で第1の複数のユーザ集団のユーザによって現在購入されているライブストリームメディアアイテムを含む第3の入力を訓練済機械学習モデルに前記コンテンツ推奨エンジンによって提供するステップと、
(i)複数のライブストリームメディアアイテム、および(ii)前記複数のライブストリームメディアアイテムのうちの個々のライブストリームメディアアイテムを前記ユーザが購入することになる確実性のレベルを識別する1つまたは複数の出力を前記訓練済機械学習モデルから前記コンテンツ推奨エンジンによって入手するステップとを含む、
方法。
【請求項１１】
前記複数のライブストリームメディアアイテムのうちの前記個々のライブストリームメディアアイテムを前記ユーザが購入することになる確実性の前記レベルを考慮して、前記複数のライブストリームメディアアイテムの1つまたは複数に関する推奨を前記コンテンツ共有プラットフォームの前記ユーザに前記コンテンツ推奨エンジンによって提供するステップをさらに含む、
請求項10に記載の方法。
【請求項１２】
前記複数のライブストリームメディアアイテムの前記1つまたは複数に関する前記推奨を前記コンテンツ共有プラットフォームの前記ユーザに提供するステップが、
それぞれの前記複数のライブストリームメディアアイテムと関連付けられた確実性の前記レベルが閾値のレベルを超過するかどうかを前記コンテンツ推奨エンジンによって判断するステップと、
前記複数のライブストリームメディアアイテムの前記1つまたは複数と関連付けられた確実性の前記レベルが前記閾値のレベルを超過するとの判断に応答して、前記複数のライブストリームメディアアイテムの1つまたは複数のそれぞれに関する前記推奨を前記ユーザに前記コンテンツ推奨エンジンによって提供するステップとを含む、
請求項11に記載の方法。
【請求項１３】
前記訓練済機械学習モデルが、前記コンテンツ共有プラットフォーム上で第2の複数のユーザ集団のユーザによって購入された1つまたは複数の以前に提示されたライブストリームメディアアイテムを含む第1の訓練入力を使用して訓練された、
請求項10から12のいずれか一項に記載の方法。
【請求項１４】
前記第1の訓練入力が、第1のユーザ集団のユーザにライブストリーミングされた第1の以前に提示されたライブストリームメディアアイテムを購入した前記第2の複数のユーザ集団のうちの前記第1のユーザ集団を識別する、
請求項13に記載の方法。
【請求項１５】
前記第1の訓練入力が、ライブストリーミングされた後に第2のユーザ集団のユーザに提示された第2の以前に提示されたライブストリームメディアアイテムを購入した前記第2の複数のユーザ集団のうちの前記第2のユーザ集団を識別する、
請求項13または14に記載の方法。
【請求項１６】
前記第1の訓練入力が、第3のユーザ集団のユーザにライブストリーミングされ、ライブストリームメディアアイテムの類似のカテゴリに後で分類された、別の以前に提示されたライブストリームメディアアイテムを購入した前記第2の複数のユーザ集団のうちの前記第3のユーザ集団を識別する、
請求項13に記載の方法。
【請求項１７】
メモリと、
前記メモリに連結された処理デバイスとを備えたシステムであって、前記処理デバイスが、
コンテンツ共有プラットフォームに対するユーザによるユーザアクセスの指示を受信することと、
前記ユーザアクセスの前記指示の受信に応答して、
前記コンテンツ共有プラットフォームへの前記ユーザアクセスと関連付けられたコンテキスト情報を含む第1の入力、前記コンテンツ共有プラットフォームへの前記ユーザアクセスと関連付けられたユーザ情報を含む第2の入力、および前記ユーザアクセスと同時にライブストリーミングされ、前記コンテンツ共有プラットフォーム上で第1の複数のユーザ集団のユーザによって現在購入されているライブストリームメディアアイテムを含む第3の入力を訓練済機械学習モデルに提供することと、
複数のライブストリームメディアアイテム、および前記複数のライブストリームメディアアイテムのうちの個々のライブストリームメディアアイテムを前記ユーザが購入することになる確実性のレベルを識別する1つまたは複数の出力を前記訓練済機械学習モデルから入手することとを行う、
システム。
【請求項１８】
前記処理デバイスが、
前記複数のライブストリームメディアアイテムのうちの前記個々のライブストリームメディアアイテムを前記ユーザが購入することになる確実性の前記レベルを考慮して、前記複数のライブストリームメディアアイテムの1つまたは複数に関する推奨を前記コンテンツ共有プラットフォームの前記ユーザに提供することをさらに行う、
請求項17に記載のシステム。
【請求項１９】
メモリと、
前記メモリに連結された、機械学習モデルのための訓練データを生成する処理デバイスとを備えたシステムであって、前記訓練データを生成するために、前記処理デバイスが、
コンテンツ共有プラットフォーム上で第1の複数のユーザ集団のユーザによって購入された1つまたは複数の以前に提示されたライブストリームメディアアイテムを含む第1の訓練入力を生成し、
前記コンテンツ共有プラットフォーム上で第2の複数のユーザ集団のユーザによって現在購入されている1つまたは複数の現在提示されているライブストリームメディアアイテムを含む第2の訓練入力を生成し、
ライブストリームメディアアイテム、および前記ライブストリームメディアアイテムをユーザが購入することになるか否かの指標を識別する、前記第1の訓練入力および前記第2の訓練入力に対する第1のターゲット出力を生成し、
前記処理デバイスが、
(i)前記第1の訓練入力および前記第2の訓練入力を含む訓練入力のセット、ならびに(ii)前記第1のターゲット出力を含むターゲット出力のセット、に関する、前記機械学習モデルを訓練するための前記訓練データを提供する、
システム。
【請求項２０】
前記訓練データを生成するために、前記処理デバイスがさらに、
前記コンテンツ共有プラットフォーム上で前記1つまたは複数の以前に提示されたライブストリームメディアアイテムを購入した前記第1の複数のユーザ集団の前記ユーザによるユーザアクセスと関連付けられた第1のコンテキスト情報を含む第3の訓練入力を生成し、
前記コンテンツ共有プラットフォーム上で前記1つまたは複数の現在提示されているライブストリームメディアアイテムを購入している前記第2の複数のユーザ集団の前記ユーザによるユーザアクセスと関連付けられた第2のコンテキスト情報を含む第4の訓練入力を生成し、
訓練入力の前記セットが、前記第1の訓練入力、前記第2の訓練入力、前記第3の訓練入力、および前記第4の訓練入力を含む、
請求項19に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示の態様および実施形態は、コンテンツ共有プラットフォームに関し、より詳細には、ライブストリームメディアアイテムに関する推奨を生成することに関する。
【背景技術】
【０００２】
インターネットを介して接続するソーシャルネットワークは、ユーザが互いに接続し、情報を共有することを可能にする。多くのソーシャルネットワークは、動画アイテム、画像アイテム、音声アイテム、等などのコンテンツをユーザがアップロードすること、閲覧すること、および共有することを可能にするコンテンツ共有の態様を含む。ソーシャルネットワークの他のユーザは、共有コンテンツに対してコメントすること、新しいコンテンツを発見すること、更新を探し出すこと、コンテンツを共有すること、およびそうでなければ提供されたコンテンツと対話することができる。共有コンテンツは、例えば、ムービークリップ、TVクリップ、およびミュージックビデオアイテムといったプロのコンテンツ製作者からのコンテンツ、ならびに例えばビデオブロギングおよび短編のオリジナルビデオアイテムといったアマチュアのコンテンツ製作者からのコンテンツを含むことができる。
【発明の概要】
【課題を解決するための手段】
【０００３】
以下は、本開示のいくつかの態様についての基本的な理解を与えるための、本開示の簡略化された概要である。本概要は、本開示の広範囲にわたる全体像というわけではない。本概要は、本開示の主要な要素または重要な要素を識別することも、本開示の特定の実施形態のいずれかの範囲、もしくは特許請求の範囲のいずれかの範囲を詳しく説明することも、意図するものではない。本概要の唯一の目的は、後で提示される、より詳細な説明への前置きとして、本開示のいくつかの概念を簡略化された形式で提示することである。
【０００４】
1つの実施形態において、方法は、機械学習モデルのための訓練データを生成することを含む。機械学習モデルのための訓練データを生成することは、例えば、コンテンツ共有プラットフォーム上で第1の複数のユーザ集団のユーザによって購入された、以前に提示されたライブストリームメディアアイテムといった、1つまたは複数の以前に提示されたメディアアイテムを含む第1の訓練入力を生成することを含む。機械学習モデルのための訓練データを生成することは、例えば、コンテンツ共有プラットフォーム上で第2の複数のユーザ集団のユーザによって現在購入されている、現在提示されているライブストリームメディアアイテムといった、現在提示されているメディアアイテムを含む第2の訓練入力を生成することも含む。方法は、第1の訓練入力および第2の訓練入力に対する第1のターゲット出力を生成することを含む。第1のターゲット出力は、例えばライブストリームメディアアイテムといったメディアアイテム、およびメディアアイテムをユーザが購入することになる確実性のレベルを識別する。方法は、(i)第1の訓練入力および第2の訓練入力を含む訓練入力のセット、ならびに(ii)第1のターゲット出力を含むターゲット出力のセット、に関する、機械学習モデルを訓練するための訓練データを提供することも含む。機械学習モデルが訓練されると、機械学習モデルは次に、ライブストリームメディアアイテムの送信中に(すなわち、ライブストリームメディアアイテムの送信が完了されるのを待つ必要なく)ライブストリームメディアアイテムを分類するために使用されることが可能である。
【０００５】
別の実施形態において、機械学習モデルのための訓練データを生成することは、コンテンツ共有プラットフォーム上で1つまたは複数の以前に提示されたライブストリームメディアアイテムを購入した第1の複数のユーザ集団のユーザによるユーザアクセスと関連付けられた第1のコンテキスト情報を含む第3の訓練入力を生成することも含む。機械学習モデルのための訓練データを生成することは、コンテンツ共有プラットフォーム上で現在提示されているライブストリームメディアアイテムを購入している第2の複数のユーザ集団のユーザによるユーザアクセスと関連付けられた第2のコンテキスト情報を生成することを含む第4の訓練入力を生成することも含む。方法は、(i)第1、第2、第3、および第4の訓練入力を含む訓練入力のセット、ならびに(ii)第1のターゲット出力を含むターゲット出力のセット、に関する、機械学習モデルを訓練するための訓練データを提供することを含む。
【０００６】
1つの実施形態において、機械学習モデルのための訓練データを生成することは、コンテンツ共有プラットフォーム上で1つまたは複数の以前に提示されたライブストリームメディアアイテムを購入した第1の複数のユーザ集団のユーザと関連付けられた第1のユーザ情報を含む第5の訓練入力を生成することを含む。機械学習モデルのための訓練データを生成することは、コンテンツ共有プラットフォーム上で現在提示されているライブストリームメディアアイテムを購入している第2の複数のユーザ集団のユーザと関連付けられた第2のユーザ情報を含む第6の訓練入力を生成することを含む。方法は、(i)第1、第2、第5、および第6の訓練入力を含む訓練入力のセット、ならびに(ii)第1のターゲット出力を含むターゲット出力のセット、に関する、機械学習モデルを訓練するための訓練データを提供することも含む。
【０００７】
1つの実施形態において、訓練入力のセットの各訓練入力は、機械学習モデルを訓練するために使用される訓練データにおけるターゲット出力のセット内の個々のターゲット出力と関連付けられる(例えばマッピングされる)。
【０００８】
1つの実施形態において、第1の訓練入力は、1つまたは複数の以前に提示されたライブストリームメディアアイテムのうちの第1の以前に提示されたライブストリームメディアアイテムを購入した第1の複数のユーザ集団のうちの第1のユーザ集団を含み、ここで、第1の以前に提示されたライブストリームメディアアイテムは、第1のユーザ集団にライブストリーミングされた。
【０００９】
1つの実施形態において、第1の訓練入力は、1つまたは複数の以前に提示されたライブストリームメディアアイテムのうちの第2の以前に提示されたライブストリームメディアアイテムを購入した第1の複数のユーザ集団のうちの第2のユーザ集団を含み、ここで、第2の以前に提示されたライブストリームメディアアイテムは、ライブストリーミングされた後に第2のユーザ集団に提示された。
【００１０】
1つの実施形態において、第1の訓練入力は、1つまたは複数の以前に提示されたライブストリームメディアアイテムのうちの別の以前に提示されたライブストリームメディアアイテムを購入した第1の複数のユーザ集団のうちの第3のユーザ集団を含み、ここで、別の以前に提示されたライブストリームメディアアイテムは、第3のユーザ集団にライブストリーミングされ、ライブストリームメディアアイテムの類似のカテゴリに後で分類された。
【００１１】
1つの実施形態において、方法は、コンテンツ共有プラットフォームへのユーザによるユーザアクセスの指示も受信する。方法は、テストライブストリームメディアアイテム、およびテストライブストリームメディアアイテムをユーザが購入することになる確実性のレベルを識別するテスト出力を機械学習モデルによって生成する。方法は、テストライブストリームメディアアイテムの推奨をユーザにさらに提供する。方法は、推奨を考慮した、ユーザによるテストライブストリームメディアアイテムの購入の指示を受信する。ユーザによるテストライブストリームメディアアイテムの購入の指示に応答して、方法は、購入の指示に基づいて機械学習モデルを調節する。
【００１２】
1つの実施形態において、機械学習モデルは、コンテンツ共有プラットフォームへの新しいユーザによる新しいユーザアクセスを処理すること、ならびに(i)現在のライブストリームメディアアイテム、および(ii)現在のライブストリームメディアアイテムを新しいユーザが購入することになる確実性のレベル、を示す1つまたは複数の出力を生成すること、を行うように構成される。
【００１３】
別の実施形態において、例えばライブストリームメディアアイテムといったメディアアイテムを推奨する方法が開示される。方法は、コンテンツ共有プラットフォームへのユーザによるユーザアクセスの指示を受信することを含む。ユーザアクセスに応答して、方法は、コンテンツ共有プラットフォームへのユーザアクセスと関連付けられたコンテキストを含む第1の入力、コンテンツ共有プラットフォームへのユーザアクセスと関連付けられたユーザ情報を含む第2の入力、ならびにユーザアクセスと同時に提供されるメディアアイテム(例えば、ユーザアクセスと同時にライブストリーミングされるライブストリームメディアアイテム)、およびコンテンツ共有プラットフォーム上で第1の複数のユーザ集団のユーザによって現在購入されているメディアアイテムを含む第3の入力を訓練済機械学習モデルに提供する。方法は、(i)例えばライブストリームメディアアイテムであることが可能な複数のメディアアイテム、および(ii)複数のメディアアイテムのうちの個々のメディアアイテムをユーザが購入することになる確実性のレベルを識別する1つまたは複数の出力も訓練済機械学習モデルから入手する。
【００１４】
別の実施形態において、方法は、複数のライブストリームメディアアイテムのうちの個々のライブストリームメディアアイテムをユーザが購入することになる確実性のレベルを考慮して、複数のライブストリームメディアアイテムの1つまたは複数に関する推奨をコンテンツ共有プラットフォームのユーザに提供する。
【００１５】
1つの実施形態において、複数のライブストリームメディアアイテムの1つまたは複数に関する推奨をコンテンツ共有プラットフォームのユーザに提供する際に、方法は、それぞれの複数のライブストリームメディアアイテムと関連付けられた確実性のレベルが閾値のレベルを超過するかどうかを判断する。複数のライブストリームメディアアイテムの1つまたは複数と関連付けられた確実性のレベルが閾値のレベルを超過するとの判断に応答して、方法は、複数のライブストリームメディアアイテムの1つまたは複数のそれぞれに関する推奨をユーザに提供する。
【００１６】
1つの実施形態において、訓練済機械学習モデルは、コンテンツ共有プラットフォーム上で第2の複数のユーザ集団のユーザによって購入された1つまたは複数の以前に提示されたライブストリームメディアアイテムを含む第1の訓練入力を使用して訓練された。
【００１７】
1つの実施形態において、第1の訓練入力は、第1のユーザ集団のユーザにライブストリーミングされた第1の以前に提示されたライブストリームメディアアイテムを購入した第2の複数のユーザ集団のうちの第1のユーザ集団を含む。
【００１８】
1つの実施形態において、第1の訓練入力は、ライブストリーミングされた後に第2のユーザ集団のユーザに提示された第2の以前に提示されたライブストリームメディアアイテムを購入した第2の複数のユーザ集団のうちの第2のユーザ集団を含む。
【００１９】
1つの実施形態において、第1の訓練入力は、第3のユーザ集団のユーザにライブストリーミングされ、ライブストリームメディアアイテムの類似のカテゴリに後で分類された、別の以前に提示されたライブストリームメディアアイテムを購入した第2の複数のユーザ集団のうちの第3のユーザ集団を含む。
【００２０】
1つの実施形態において、ライブストリームメディアアイテムは、ライブストリーム動画アイテムである。
【００２１】
さらなる実施形態において、上記で説明された実施形態の動作を行うための1つまたは複数の処理デバイスが開示される。さらなる実施形態において、システムが開示され、システムは、メモリと、上記で説明された実施形態のいずれか1つによる方法を含む動作を行うための、メモリに連結された処理デバイスと、を備える。さらなる実施形態において、システムが開示され、システムは、メモリと、メモリに連結された処理デバイスと、実行されると、上記で説明された実施形態のいずれか1つによる方法を含む動作をプロセッサに行わせる命令を格納するコンピュータ可読ストレージ媒体と、を備える。さらに、本開示の実施形態において、コンピュータ可読ストレージ媒体(非一時的コンピュータ可読ストレージ媒体であることが可能であるが、本実施形態はこれに限定されない)は、説明された実施形態の動作を行うための命令を格納する。同様に、他の実施形態において、説明された実施形態の動作を行うためのシステムも開示される。
【００２２】
本開示の態様および実施形態は、下記で示される詳細な説明から、また、本開示の様々な態様および実施形態についての添付の図面から、より完全に理解されることになるが、特定の態様または実施形態に本開示を限定するものと理解されるべきではなく、説明および理解のためのものである。
【図面の簡単な説明】
【００２３】
【図１】本開示の1つの実施形態によるシステムアーキテクチャの例を示す図である。
【図２】本開示の実施形態による、ライブストリームメディアアイテムを推奨する機械学習モデルのための訓練データを作り出すための訓練セット生成器の例を示す図である。
【図３】本開示の実施形態による、ライブストリーム動画アイテムを推奨するように機械学習モデルを訓練する方法の1つの例についての流れ図である。
【図４】本開示の実施形態による、訓練済機械学習モデルを使用してライブストリーム動画アイテムを推奨する方法の1つの例についての流れ図である。
【図５】本開示の実施形態による、例示的なコンピュータシステム500を示すブロック図である。
【発明を実施するための形態】
【００２４】
大量のコンテンツアイテムがオンラインでアクセス可能であり、利用可能なコンテンツアイテムの数は絶えず増加している。コンテンツアイテムの検索および取得を支援するために、これらのコンテンツに応じてコンテンツアイテムを分類または索引付けすることが知られている。例えば、しばしば、事前に録画されたムービーなどのアーカイブ済メディアアイテムは事前に録画されて格納されるが、これは、アーカイブ済メディアアイテムのコンテンツを分析するのに十分な時間を与える。例えば、アーカイブ済メディアアイテムは、アーカイブ済メディアアイテムのコンテンツを記述したメタデータを生成するために、人間の分類者または機械支援による分類器によって分類されることが可能であり、このメタデータは、検索クエリに応答してアイテムを返すべきかどうかを判断するために使用されることが可能である。しかし、これは一般に、「ライブストリーム」メディアアイテムには当てはまらない。(「動画」とも呼ばれる)動画アイテムなどのメディアアイテムは、コンテンツ共有プラットフォームのユーザのユーザデバイスを介して、コンテンツ共有プラットフォームのユーザによる購入のためのイベントのライブストリームとして送信するために、動画の所有者(例えば、動画製作者、または動画製作者の代わりに動画アイテムをアップロードするための権限を付与された動画公開者)によってコンテンツ共有プラットフォームにアップロードされることが可能である。ライブストリームメディアアイテムは、ライブブロードキャスト、またはライブイベントの送信を指すことができ、ここで、メディアアイテムは、イベントが発生するのと少なくとも部分的に同時に送信され、イベントの終了後まで全体的に利用できない。ライブストリームメディアアイテムはライブイベントのブロードキャストであり、しっかりしたコンテンツ分析を行ってアイテムを分類するには、不完全な情報(例えば、ライブストリームの完全なデータが受信されていない)、および/または不十分な時間(もしくはそうでないもの)を提供する。分類されたアーカイブ済メディアアイテムと比較して、ライブストリームメディアアイテムのコンテンツについての情報はほとんどまたは全く知られていない。ライブストリームアイテムを分類する際のこの難しさは、関連するライブストリームアイテムを識別することなど、コンテンツアイテムを検索して取得するときに、ライブストリームアイテムが難題をもたらすことを意味し、例えばライブストリームアイテムが不正確または不完全に分類される(またはそれどころか全く分類されない)場合、これは、ライブストリームアイテムのコンテンツが検索クエリに非常に関連している可能性があるとしても、検索クエリに応答してライブストリームアイテムが探し出されないことを意味する可能性がある。また、ライブストリームアイテムの不正確な、不完全な、または不足した分類は、アイテムを検索して取得する処理がネットワークリソースの非効率的な使用をもたらすことを意味する可能性があり、関連するライブストリームメディアアイテムを識別するのに十分な計算リソースを提供する際の難しさを生じる。
【００２５】
本開示の態様は、以前に提示されたライブストリームメディアアイテム、および現在提示されているライブストリームメディアアイテムを含む訓練データを使用して機械学習モデルを訓練することによって上述および他の難題に取り組む。以前に提示されたライブストリームメディアアイテムは、過去に、コンテンツ共有プラットフォーム上で第1の複数のユーザ集団のユーザによって購入されたライブストリームメディアアイテムである。現在提示されているライブストリームメディアアイテムは、コンテンツ共有プラットフォーム上で第2の複数のユーザ集団のユーザによって現在購入されているライブストリームメディアアイテムである。ユーザ集団は、ユーザが購入した以前に提示されたライブストリームメディアアイテム、またはユーザが購入している現在提示されているライブストリームメディアアイテムなどの1つまたは複数の属性または特徴に基づく、コンテンツ共有プラットフォームのユーザなどのユーザのグループであることが可能である。実施形態において、訓練済機械学習モデルは、コンテンツ共有プラットフォームにアクセスする特定のユーザに1つまたは複数のライブストリームメディアアイテムを推奨するために使用されることが可能である。
【００２６】
機械学習モデルを訓練すること、および訓練済機械学習モデルを使用してライブストリームメディアアイテムを分類することは、ライブストリームメディアアイテムのより効果的な分類をもたらし、例えば、ライブメディアがまだ送信されている間にライブメディアアイテムを正確に分類することを可能にする。これは、ライブストリームアイテムのより正確な検索および取得、ならびに/またはライブストリームメディアアイテムのより正確な推奨を可能にし、このことがメディアアイテムを取得/提供する処理に必要な計算(処理)リソースを低減させ、訓練済機械学習モデルを使用して分類されたライブストリームメディアアイテムを取得/推奨することは、ライブストリームメディアアイテムのコンテンツについての情報がほとんどまたは全く利用できないメディアアイテムを取得/推奨することよりリソース効率がよい。さらに、本開示の態様は、例えば、検索クエリに応答して返されたアイテムが、確かにクエリに関連するものであることを保証することによって、検索および取得システムまたはコンテンツ共有プラットフォームに対する全体的なユーザ満足感を改善する。
【００２７】
ライブストリームメディアアイテムは、限定ではなく例証のために使用されるということに留意されたい。他の実施形態において、本開示の態様は、メディアアイテムのコンテンツについての情報がほとんどまたは全く知られていない任意のメディアアイテムなどの他のメディアアイテムに応用されることが可能である。例えば、本開示の態様は、分類されていない新しいメディアアイテム、または仮想現実メディアアイテム、拡張現実メディアアイテム、もしくは3次元メディアアイテムなど、コンテンツが分類しにくい任意のメディアアイテムに応用されることが可能である。
【００２８】
上述のように、ライブストリームメディアアイテムは、ライブブロードキャスト、またはライブイベントの送信であることが可能である。特に断りのない限り、「ライブストリームメディアアイテム」または「現在提示されているライブストリームメディアアイテム」は、ライブストリーミングされているメディアアイテム(例えばメディアアイテムは、イベントが発生するのと同時に送信されている)を指すということにさらに留意されたい。ライブストリームメディアアイテムのライブストリームの完了後、完全なライブストリームメディアアイテムが入手され、格納されることが可能であり、本明細書において「以前に提示されたライブストリームメディアアイテム」または「アーカイブ済ライブストリームメディアアイテム」と呼ばれることが可能である。
【００２９】
図1は、本開示の1つの実施形態によるシステムアーキテクチャ100の例を示す。(本明細書において「システム」とも呼ばれる)システムアーキテクチャ100は、コンテンツ共有プラットフォーム120、1つまたは複数のサーバマシン130から150、データストア106、およびネットワーク104に接続されたクライアントデバイス110A〜110Zを含む。
【００３０】
実施形態において、ネットワーク104は、パブリックネットワーク(例えばインターネット)、プライベートネットワーク(例えばローカルエリアネットワーク(LAN)もしくは広域ネットワーク(WAN))、有線ネットワーク(例えばイーサネット(登録商標)ネットワーク)、ワイヤレスネットワーク(例えば802.11ネットワークもしくはWi-Fiネットワーク)、セルラーネットワーク(例えばロングタームエボリューション(LTE)ネットワーク)、ルータ、ハブ、スイッチ、サーバコンピュータ、および/またはこれらの組合せを含むことができる。
【００３１】
実施形態において、データストア106は、(メディアアイテムなどの)コンテンツアイテム、ならびにコンテンツアイテムにタグ付けするため、整理するため、および索引付けするためのデータ構造を格納することができる永続ストレージである。データストア106は、メインメモリ、磁気または光ストレージベースのディスク、テープまたはハードドライブ、NAS、SAN、等などの、1つまたは複数のストレージデバイスによって提供されることが可能である。いくつかの実施形態において、データストア106は、ネットワーク接続型ファイルサーバであることが可能である一方で、他の実施形態において、データストア106は、コンテンツ共有プラットフォーム120、またはネットワーク104を介してサーバコンテンツ共有プラットフォーム120に連結された1つまたは複数の異なる機械によってホストされることが可能な、オブジェクト指向データベース、リレーショナルデータベース、等などの、他のいくつかのタイプの永続ストレージであることが可能である。
【００３２】
クライアントデバイス110A〜110Zはそれぞれ、パーソナルコンピュータ(PC)、ラップトップ、携帯電話、スマートフォン、タブレット型コンピュータ、ネットブックコンピュータ、ネットワーク接続型テレビ、等などのコンピューティングデバイスを含むことができる。いくつかの実施形態において、クライアントデバイス110Aから110Zは、「ユーザデバイス」と呼ばれることも可能である。実施形態において、各クライアントデバイスは、メディアビューア111を含む。1つの実施形態において、メディアビューア111は、画像、動画アイテム、ウェブページ、ドキュメント、等などのコンテンツをユーザが閲覧することまたはアップロードすることを可能にするアプリケーションであることが可能である。例えば、メディアビューア111は、ウェブサーバによって提供されるコンテンツ(例えば、ハイパーテキストマークアップランゲージ(HTML)ページ、デジタルメディアアイテム、等などのウェブページ)にアクセスすること、取得すること、提示すること、および/またはナビゲートすることができるウェブブラウザであることが可能である。メディアビューア111は、コンテンツ(例えば、ウェブページ、メディアビューア)をユーザに描写すること、表示すること、および/または提示することができる。メディアビューア111は、ウェブページ(例えば、オンライン商人によって売られる製品についての情報を提供することができるウェブページ)に組み込まれている埋込型メディアプレーヤ(例えば、フラッシュ(登録商標)プレーヤまたはHTML5プレーヤ)を含むこともできる。別の例において、メディアビューア111は、デジタルメディアアイテム(例えば、デジタル動画アイテム、デジタル画像、電子書籍、等)をユーザが閲覧することを可能にするスタンドアロンアプリケーション(例えば、モバイルアプリケーションまたはアプリ)であることが可能である。本開示の態様によれば、メディアビューア111は、コンテンツ共有プラットフォーム上で共有するためにコンテンツをユーザが録画するため、編集するため、および/またはアップロードするためのコンテンツ共有プラットフォームアプリケーションであることが可能である。したがって、メディアビューア111は、サーバマシン150またはコンテンツ共有プラットフォーム120
によってクライアントデバイス110A〜110Zに提供されることが可能である。例えば、メディアビューア111は、コンテンツ共有プラットフォーム120によって提供されるウェブページに組み込まれている埋込型メディアプレーヤであることが可能である。別の例において、メディアビューア111は、サーバマシン150からダウンロードされるアプリケーションであることが可能である。
【００３３】
1つの実施形態において、コンテンツ共有プラットフォーム120またはサーバマシン130〜150は、1つまたは複数のコンピューティングデバイス(ラックマウント型サーバ、ルータコンピュータ、サーバコンピュータ、パーソナルコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、タブレット型コンピュータ、デスクトップコンピュータ、等など)、データストア(例えば、ハードディスク、メモリ、データベース)、ネットワーク、ソフトウェア構成要素、ならびに/またはメディアアイテムへのアクセスをユーザに提供すること、および/もしくはメディアアイテムをユーザに提供することを行うために使用されることが可能なハードウェア構成要素であることが可能である。例えば、コンテンツ共有プラットフォーム120は、メディアアイテムを、ユーザが購入すること、アップロードすること、検索すること、およびメディアアイテムに対する承認(「好き」)、否認(「嫌い」)、またはコメントを可能にすることができる。コンテンツ共有プラットフォーム120は、ウェブサイト(例えばウェブページ)、またはメディアアイテムへのアクセスをユーザに提供するために使用されることが可能なアプリケーションバックエンドソフトウェアを含むこともできる。
【００３４】
本開示の実施形態において、「ユーザ」は、一人の個人として表されることが可能である。しかし、本開示の他の実施形態は、「ユーザ」が、ユーザのセット、および/または自動化されたソースによって制御されるエンティティであることを包含する。例えば、ソーシャルネットワーク内のコミュニティとして統合された個人ユーザのセットは、「ユーザ」であるとみなされることが可能である。別の例において、自動化された購入者は、コンテンツ共有プラットフォーム120の、トピックチャネルなどの自動化されたインジェストパイプライン(ingestion pipeline)であることが可能である。
【００３５】
コンテンツ共有プラットフォーム120は、複数のチャネル(例えばチャネルAからZ)を含むことができる。チャネルは、共通ソースから利用できるデータコンテンツ、または共通のトピック、テーマ、もしくは実体を有するデータコンテンツであることが可能である。データコンテンツは、ユーザによって選ばれたデジタルコンテンツ、ユーザによって利用可能にされたデジタルコンテンツ、ユーザによってアップロードされたデジタルコンテンツ、コンテンツプロバイダによって選ばれたデジタルコンテンツ、ブロードキャスタによって選ばれたデジタルコンテンツ、等であることが可能である。例えば、チャネルXは、動画YおよびZを含むことができる。チャネルは、チャネル上でアクションを行うことができるユーザである所有者と関連付けられることが可能である。種々のアクティビティが、チャネル上で所有者がデジタルコンテンツを利用可能にすること、別のチャネルと関連付けられたデジタルコンテンツを所有者が選択すること(例えば[いいね]を付ける(liking))、別のチャネルと関連付けられたデジタルコンテンツに対して所有者がコメントすること、等などの、所有者のアクションに基づくチャネルと関連付けられることが可能である。チャネルと関連付けられたアクティビティは、チャネルに対するアクティビティフィードに集約されることが可能である。チャネルの所有者以外のユーザは、ユーザが興味のある1つまたは複数のチャネルにサブスクライブすることができる。「サブスクライブする」の概念は、「[いいね]を付ける(liking)」、「フォローする」、「友達になる」、などと呼ばれることも可能である。
【００３６】
ユーザがチャネルにサブスクライブすると、ユーザは、チャネルのアクティビティフィードから情報を提示されることが可能である。ユーザが複数のチャネルにサブスクライブする場合、ユーザがサブスクライブされている各チャネルに対するアクティビティフィードは、配給アクティビティフィード(syndicated activity feed)に組み合わされることが可能である。配給アクティビティフィードからの情報は、ユーザに提示されることが可能である。チャネルは、チャネル自体のフィードを有することができる。例えば、コンテンツ共有プラットフォーム上のチャネルのホームページにナビゲートするとき、このチャネルによって作られたフィードアイテムは、チャネルホームページ上に示されることが可能である。ユーザは配給フィードを有することができ、このフィードは、ユーザがサブスクライブされているチャネルの全てからのコンテンツアイテムの少なくともサブセットを含むフィードである。配給フィードは、ユーザがサブスクライブされていないチャネルからのコンテンツアイテムを含むこともできる。例えば、コンテンツ共有プラットフォーム120または他のソーシャルネットワークは、推奨されたコンテンツアイテムをユーザの配給フィードに挿入することができ、またユーザの関連するつながり(connection)と関連付けられたコンテンツアイテムを配給フィードに挿入することができる。
【００３７】
各チャネルは、1つまたは複数のメディアアイテム121を含むことができる。メディアアイテム121の例は、デジタルビデオ、デジタルムービー、デジタル写真、デジタルミュージック、音声コンテンツ、メロディ、ウェブサイトコンテンツ、ソーシャルメディア更新、電子書籍(ebook)、電子雑誌、デジタル新聞、デジタルオーディオブック、電子ジャーナル、ウェブブログ、リアルシンプルシンジケーション(RSS)フィード、電子コミックブック、ソフトウェアアプリケーション、等を含むことができるが、これらに限定されない。いくつかの実施形態において、メディアアイテム121は、コンテンツまたはコンテンツアイテムとも呼ばれる。
【００３８】
メディアアイテム121はインターネットを介して、またはモバイルデバイスアプリケーションを介して購入されることが可能である。簡潔化および簡略化のために、本文書の全体を通して、メディアアイテム121の例として動画アイテムが使用される。本明細書で使用されるように、「メディア」、「メディアアイテム」、「オンラインメディアアイテム」、「デジタルメディア」、「デジタルメディアアイテム」、「コンテンツ」、および「コンテンツアイテム」は、デジタルメディアアイテムをエンティティに提示するように構成されたソフトウェア、ファームウェア、またはハードウェアを使用して実行されることまたはロードされることが可能な電子ファイルを含むことができる。1つの実施形態において、コンテンツ共有プラットフォーム120は、データストア106を使用してメディアアイテム121を格納することができる。別の実施形態において、コンテンツ共有プラットフォーム120は、データストア106を使用して、1つまたは複数のフォーマットの電子ファイルとして動画アイテムまたは指紋を格納することができる。
【００３９】
1つの実施形態において、メディアアイテム121は動画アイテムである。動画アイテムは、動いている場面を表す連続した動画フレーム(例えば画像フレーム)のセットである。例えば、一連の連続したビデオフレームは、継続的にキャプチャされることも、アニメーションを作るために後で再構築されることも可能である。動画アイテムは、アナログ、デジタル、2次元、および3次元の動画を含むが、これらに限定されない様々なフォーマットで提示されることが可能である。さらに、動画アイテムは、ムービー、ビデオクリップ、または次々に表示されることになる動画にされた画像の任意のセットを含むことができる。さらに、動画アイテムは、動画構成要素および音声構成要素を含む動画ファイルとして格納されることが可能である。動画構成要素は、動画符号化フォーマットまたは画像符号化フォーマット(例えば、H.264(MPEG-4 AVC)、H.264 MPEG-4 Part 2、画像交換フォーマット(GIF)、WebP、等)の動画データを指すことが可能である。音声構成要素は、音声符号化フォーマット(例えば、アドバンストオーディオコーディング(AAC)、MP3、等)の音声データを指すことが可能である。GIFは、画像ファイル(例えばgifファイル)として保存されることも、アニメーションGIF(例えば、GIF89aフォーマット)に一連の画像として保存されることも可能であるということに留意されたい。H.264は、例えば、動画コンテンツの録画、圧縮、または配布のための、ブロック指向の動き補償ベースの動画圧縮標準(block-oriented motion-compensation-based video compression standard)である動画符号化フォーマットであることが可能であるということに留意されたい。
【００４０】
実施形態において、コンテンツ共有プラットフォーム120は、メディアアイテムを収めるプレイリスト(例えばメディアアイテム121を収めるプレイリストA〜Z)をユーザが作り出すこと、共有すること、閲覧すること、または使用することを可能にすることができる。プレイリストは、ユーザ対話が何もなくても、特定の順序で次々に再生するように構成されるメディアアイテムの集合体を指す。実施形態において、コンテンツ共有プラットフォーム120は、ユーザの代わりにプレイリストを維持することができる。実施形態において、コンテンツ共有プラットフォーム120のプレイリスト機能は、再生のために1つの場所にユーザの最も好きなメディアアイテムをユーザがまとめることを可能にする。実施形態において、コンテンツ共有プラットフォーム120は、再生または表示のためにプレイリスト上のメディアアイテムをクライアントデバイス110に送ることができる。例えば、メディアビューア111は、プレイリスト上にメディアアイテムがリスト化された順序でプレイリスト上のメディアアイテムを再生するために使用されることが可能である。別の例において、ユーザは、プレイリスト上のメディアアイテムの間で移行させることができる。さらに別の例において、ユーザは、プレイリスト上の次のメディアアイテムが再生するのを待つことができ、また、再生のためにプレイリスト内の特定のメディアアイテムを選択することもできる。
【００４１】
いくつかの実施形態において、コンテンツ共有プラットフォーム120は、ユーザ、またはユーザのグループに対して、推奨122などのメディアアイテムの推奨を行うことができる。推奨は、ユーザの興味を引くことができるメディアアイテムについての個人に向けた提案をユーザに対して行う指標(例えば、インターフェース構成要素、電子メッセージ、推奨フィード、等)であることが可能である。例えば、推奨は、メディアアイテムのサムネイルとして提示されることが可能である。ユーザによる対話(例えばクリック)に応答して、より大きいバージョンのメディアアイテムが、ことによると再生のために提示される。実施形態において、ユーザの最も好きなメディアアイテム、最近追加されたプレイリストのメディアアイテム、最近視聴したメディアアイテム、メディアアイテムの評価、クッキーからの情報、ユーザ履歴、および他のソースを含む様々なソースからのデータを使用して推奨が行われることが可能である。1つの実施形態において、推奨は、本明細書においてさらに説明されるように、訓練済機械学習モデル160の出力に基づくことが可能である。推奨は、中でも、メディアアイテム121、チャネル、プレイリストに関するものであることが可能であるということに留意されたい。1つの実施形態において、推奨122は、コンテンツ共有プラットフォーム120上で現在ライブストリーミングされているライブストリーム動画アイテムの1つまたは複数に関する推奨であることが可能である。
【００４２】
サーバマシン130は、機械学習モデルを訓練するための訓練データ(例えば訓練入力のセットおよびターゲット出力のセット)を生成することができる訓練セット生成器131を含む。訓練セット生成器131のいくつかの動作は、図2〜図3について下記で詳細に説明される。
【００４３】
サーバマシン140は、訓練セット生成器131からの訓練データを使用して、機械学習モデル160を訓練することができる訓練エンジン141を含む。機械学習モデル160は、訓練入力および対応するターゲット出力(個々の訓練入力に対する正しい回答)を含む訓練データを使用して訓練エンジン141によって作り出されるモデルアーチファクトを指すことが可能である。訓練エンジン141は、ターゲット出力(予測されることになる回答)に訓練入力をマッピングする訓練データの中にパターンを見つけること、およびこれらのパターンをキャプチャする機械学習モデル160を提供することができる。機械学習モデル160は、例えば単一レベルの線形または非線形の動作から成ることが可能である(例えば、サポートベクトルマシン[SVM]など、またはディープネットワーク、すなわち複数レベルの非線形動作から成る機械学習モデルであることが可能である)。ディープネットワークの例は、1つまたは複数の隠れ層を有するニューラルネットワークであり、このような機械学習モデルは、例えば、逆伝搬学習アルゴリズムまたは同様のものに応じて、ニューラルネットワークの重みを調節することによって訓練されることが可能である。実施形態の中には、ニューラルネットワークの代わりまたは他に、SVM、または他のタイプの学習機械を用いることがあるものもあるが、便宜上、本開示の残りは、ニューラルネットワークとしての実施形態を参照することになる。1つの態様において、訓練セットはサーバマシン130から入手される。
【００４４】
サーバマシン150は、訓練済機械学習モデル160への入力としてデータ(例えば、コンテンツ共有プラットフォーム120へのユーザアクセスと関連付けられたコンテキスト情報、ユーザアクセスと関連付けられたユーザ情報、またはユーザアクセスと同時にライブストリーミングされ、1つまたは複数のユーザ集団のユーザによって現在購入されているライブストリームメディアアイテム)を提供し、1つまたは複数の出力を入手するために、入力に対して訓練済機械学習モデル160を動かすライブストリーム推奨エンジン151を含む。図4について下記で詳細に説明されるように、1つの実施形態において、ライブストリーム推奨エンジン151は、現在ライブストリーミングされているか、今にもされようとしている1つまたは複数のライブストリームメディアアイテムを、訓練済機械学習モデル160の出力から識別して、個々のライブストリームメディアアイテムをユーザが購入することになる確実性のレベルを示す出力から確実性データを抽出すること、確実性データを使用して、現在ライブストリーミングされているライブストリームメディアアイテムの推奨を行うこともできる。
【００４５】
いくつかの他の実施形態において、サーバマシン130、140、および150、またはコンテンツ共有プラットフォーム120の機能は、より少ない数の機械によって提供されることが可能であるということに留意されたい。例えば、いくつかの実施形態において、サーバマシン130および140が単一の機械に統合されることが可能である一方で、いくつかの他の実施形態において、サーバマシン130、140、および150が単一の機械に統合されることが可能である。さらに、いくつかの実施形態において、サーバマシン130、140、および150の1つまたは複数が、コンテンツ共有プラットフォーム120に統合されることが可能である。
【００４６】
一般に、1つの実施形態において、コンテンツ共有プラットフォーム120、サーバマシン130、サーバマシン140、またはサーバマシン150によって行われるものとして説明された機能は、妥当であれば、他の実施形態において、クライアントデバイス110Aから110Zに対して行われることも可能である。さらに、一緒に動作する、別のまたは複数の構成要素によって特定の構成要素に帰する機能が行われることが可能である。コンテンツ共有プラットフォーム120、サーバマシン130、サーバマシン140、またはサーバマシン150は、妥当なアプリケーションプログラミングインターフェースを通じて他のシステムまたはデバイスに提供されたサービスとしてアクセスされることも可能であり、したがって、ウェブサイトにおける使用に限定されない。
【００４７】
本開示の実施形態は、コンテンツ共有プラットフォームの観点、およびコンテンツ共有プラットフォーム上でコンテンツアイテムのソーシャルネットワーク共有を推進するという観点から論じられるが、実施形態は、一般に、ユーザ間の接続を提供する任意のタイプのソーシャルネットワークに応用されることも可能である。本開示の実施形態は、チャネルサブスクリプションをユーザに提供するコンテンツ共有プラットフォームに限定されない。
【００４８】
ここで論じられるシステムが、ユーザについての個人情報を収集するか、個人情報を使用することができる状況において、ユーザは、ユーザ情報(例えば、ユーザのソーシャルネットワークの情報、ソーシャルアクションもしくはアクティビティ、職業、ユーザの好み、またはユーザの現在地)をコンテンツ共有プラットフォーム120が収集するかどうかを制御する機会、あるいはユーザに、より関連するものである可能性のあるコンテンツをコンテンツサーバから受信するかどうか、および/またはどのように受信するかを制御する機会を提供されることが可能である。さらに、個人識別情報が除去されるように、一定のデータが格納または使用される前に、1つまたは複数の方法で一定のデータが扱われることが可能である。例えば、ユーザのアイデンティティは、ユーザに関する個人識別情報が判断されることが不可能になるように扱われることが可能であり、また、ユーザの特定の位置が判断されることが不可能になるように、位置情報が入手されたユーザの地理的な位置は、(都市、郵便番号、または州レベルなどに)漠然となることが可能である。したがって、ユーザは、ユーザについての情報がどのように収集され、コンテンツ共有プラットフォーム120によってどのように使用されるかを制御することができる。
【００４９】
図2は、本開示の実施形態による、ライブストリームメディアアイテムを推奨する機械学習モデルのための訓練データを作り出すための訓練セット生成器の例である。システム200は、訓練セット生成器131、訓練入力230、およびターゲット出力240を示す。システム200は、図1について説明されたようなシステム100と類似の構成要素を含むことができる。図1のシステム100について説明された構成要素は、図2のシステム200を説明するのに役立てるために使用されることが可能である。
【００５０】
実施形態において、訓練セット生成器131は、1つまたは複数の訓練入力230、1つまたは複数のターゲット出力240を含む訓練データを生成する。訓練データは、訓練入力230をターゲット出力240にマッピングするマッピングデータを含むこともできる。訓練入力230は、「特徴」または「属性」と呼ばれることも可能である。1つの実施形態において、訓練セット生成器131は、訓練セット内の訓練データを提供し、訓練セットを訓練エンジン141に提供することができ、ここで、訓練セットは、機械学習モデル160を訓練するために使用される。訓練セットを生成することは、図3についてさらに説明されることが可能である。
【００５１】
1つの実施形態において、訓練入力230は、1つまたは複数の以前に提示されたライブストリームメディアアイテム230A、現在提示されているライブストリームメディアアイテム230B、コンテキスト情報230C、またはユーザ情報230Dを含むことができる。1つの実施形態において、以前に提示されたライブストリームメディアアイテム230Aは、コンテンツ共有プラットフォーム120の1つまたは複数のユーザ集団のユーザによって購入されたアーカイブ済ライブストリームメディアアイテムであることが可能である。
【００５２】
1つの実施形態において、以前に提示されたライブストリームメディアアイテム230Aは、ユーザ集団のユーザにライブストリームメディアアイテムがライブストリーミングされている間に、(同じ)以前に提示されたライブストリームメディアアイテムを購入した(例えば一緒に閲覧した)(「ユーザ集団」と呼ばれる)ユーザのグループにマッピングされた(または関連付けられた)以前に提示されたライブストリームメディアアイテムを含むことができる。以前に提示されたライブストリームメディアアイテム230Aは、複数の以前に提示されたライブストリームメディアアイテムを含むことができ、ここで、それぞれの以前に提示されたライブストリームメディアアイテムは、以前に提示されたライブストリームメディアアイテムを一緒に閲覧した個々のユーザ集団にマッピングされるということに留意されたい。メディアアイテムがライブストリーミングされている間に同じライブストリームメディアアイテムの1つまたは複数を視聴したユーザは、(同じライブストリームメディアアイテムのいずれも視聴しなかったユーザより)、より密接に一緒に集まるということに留意されたい。
【００５３】
実施形態において、ユーザは、同じ以前に提示されたライブストリームメディアアイテムの購入などの1つまたは複数の特徴を考慮して一緒に集められることが可能である。いくつかの実施形態において、ユーザ集団は、訓練入力230として使用される前に(または下記で説明されるように、訓練済機械学習モデル160への入力として使用される前に)集められることが可能であるということに留意されたい。例えば、ユーザ集団にマッピングされる(以前に提示された)ライブストリームメディアアイテムは、訓練入力230であることが可能であり、ここで、集団は、訓練入力230として使用される前に判断される。前述の訓練入力230は、単一の訓練入力であることが可能であり、例えば、ユーザ集団にマッピングされた以前に提示されたライブストリームメディアアイテムと呼ばれることも、以前に提示されたライブストリームメディアアイテム(または類似のもの)を購入したユーザ集団と呼ばれることも可能である。前述の訓練入力230は、特定のライブストリームメディアアイテム、および特定のユーザ集団のユーザを識別または指定する追加の情報を含むことができるということにも留意されたい。ライブストリームメディアアイテムがユーザ集団にマッピングされる実施形態において、訓練セット生成器131は、新しいユーザ集団をさらに生成することも、既存のユーザ集団を洗練することもできるということに留意されたい。他の実施形態において、(例えば以前に提示された)ライブストリームメディアアイテム、および(以前に提示された)ライブストリームメディアアイテムを購入するユーザは、個別の訓練入力230であることが可能であり、ここで、訓練セット生成器131は、(例えばユーザ集団のユーザのコンテキスト情報230Cまたはユーザ情報230Dに基づいて)ユーザ集団を判断する。前述は、本明細書で説明される他のユーザ集団、および他のユーザ集団にマッピングされたライブストリームメディアアイテムに応用されることが可能であるということに留意されたい。
【００５４】
いくつかの実施形態において、訓練入力230(または訓練済機械学習モデル160への入力)として使用されるユーザ集団を判断するために機械学習技法が使用されることが可能である。例えば、K平均クラスタリングアルゴリズムまたは他のクラスタリングアルゴリズムが使用されることが可能である。
【００５５】
以下で説明されるように、以前に提示されたライブストリームメディアアイテム230を購入したユーザ集団を区別するために、さらなる機能が使用されることが可能であるということに留意されたい。
【００５６】
別の実施形態において、以前に提示されたライブストリームメディアアイテム230Aは、ユーザ集団にマッピングされた(または関連付けられた)以前に提示されたライブストリームメディアアイテムを含み、ここで、ユーザ集団は、ライブストリームメディアアイテムがライブストリーミングされた後(例えばアーカイブ済ライブストリームメディアアイテムを購入した後)、(同じ)以前に提示されたライブストリームメディアアイテムを購入した。以前に提示されたライブストリームメディアアイテム230Aは、複数の以前に提示されたライブストリームメディアアイテムを含むことができ、以前に提示されたライブストリームメディアアイテムのそれぞれは、個々のアーカイブ済ライブストリームメディアアイテムを一緒に閲覧した個々のユーザ集団にマッピングされるということに留意されたい。メディアアイテムがライブストリーミングされている間に、アーカイブ済ライブストリームメディアアイテムを視聴したユーザ、および同じライブストリームメディアアイテムを視聴した別のユーザは、密接に一緒に集まるということに留意されたい。
【００５７】
さらに別の実施形態において、以前に提示されたライブストリームメディアアイテム230Aは、ユーザ集団にマッピングされた(または関連付けられた)別の以前に提示されたライブストリームメディアアイテムを含み、ここで、ユーザ集団は、別の以前に提示されたライブストリームメディアアイテムのライブストリーム中に、別の以前に提示されたライブストリームメディアアイテムの1つまたは複数を購入し、別の以前に提示されたライブストリームメディアアイテムは、ライブストリームメディアアイテムの類似または同じカテゴリに後で分類された。例えば、ユーザの第1のグループはライブストリームAを購入し、ユーザの第2のグループはライブストリームBを購入した。ライブストリームAおよびライブストリームBは後でアーカイブされ、類別された(例えば、コンテンツ分析などの、人間による分類または機械支援による分類)。ライブストリームAおよびBは両方、サッカーの試合としてカテゴリ化された。ライブストリームAを購入したユーザ、およびライブストリームBを購入した別のユーザは、同じユーザ集団に含まれることが可能である。前述の以前に提示されたライブストリームメディアアイテム230A、および個々のユーザ集団は、本明細書で提示された要素の他の組合せ、または他の以前に提示されたライブストリームメディアアイテム230A、および関連付けられたユーザ集団が、使用されることも可能であるので、限定ではなく、例証であることを意図するものである。
【００５８】
コンテンツ分析は、以前に提示されたライブストリームメディアアイテム230A(例えば受信された完全な情報)に対して行われることが可能であり、以前に提示されたライブストリームメディアアイテム230Aを記述したメタデータが入手されることも可能であるということにも留意されたい。1つの実施形態において、メタデータは、以前に提示されたライブストリームメディアアイテム230Aのコンテンツを説明する記述子またはカテゴリを含むことができる。記述子およびカテゴリは、人間による分類または機械支援による分類を使用して生成され、個々の以前に提示されたライブストリームメディアアイテム230Aと関連付けられることが可能である。いくつかの実施形態において、以前に提示されたライブストリームメディアアイテム230Aのメタデータは、追加の訓練入力230として使用されることが可能である。
【００５９】
1つの実施形態において、訓練入力230は、現在提示されているライブストリームメディアアイテム230Bを含むことができる。1つの実施形態において、現在提示されているライブストリームメディアアイテム230Bは、ユーザ集団にマッピングされた(または関連付けられた)現在提示されているライブストリームメディアアイテムを含むことができ、ここで、ユーザ集団のユーザは、コンテンツ共有プラットフォーム120上でユーザ集団のユーザにライブストリームメディアアイテムがライブストリーミングされている間に、(同じ)ライブストリームメディアアイテムを現在購入している(例えば共同閲覧機能(co-viewership))。現在提示されているライブストリームメディアアイテム230Bは、複数の現在提示されているライブストリームメディアアイテムを含むことができ、ここで、現在提示されているライブストリームメディアアイテムのそれぞれは、個々の現在提示されているライブストリームメディアアイテムを共同閲覧している個々のユーザ集団にマッピングされるということに留意されたい。いくつかの実施形態において、現在提示されているライブストリームメディアアイテムは、これらのコンテンツを説明するメタデータをほとんどまたは全く含んでいない。
【００６０】
実施形態において、訓練入力230は、コンテキスト情報230Cを含むことができる。コンテキスト情報は、特定のメディアアイテムを購入するための、コンテンツ共有プラットフォーム120へのユーザによるユーザアクセスの状況またはコンテキストに関する情報を指すことが可能である。例えば、ユーザは、ブラウザまたはローカルアプリケーションを使用してコンテンツ共有プラットフォーム120にアクセスすることができる。ユーザアクセスのコンテキスト記録は、記録されて格納されることが可能であり、ユーザアクセスの時刻、(デバイスまたはユーザの位置を判断するために使用されることが可能な)アクセスするユーザデバイスに割り当てられたインターネットプロトコル(IP)アドレス、ユーザデバイスのタイプ、またはユーザアクセスを説明する他のコンテキスト情報などの情報を含む。実施形態において、コンテキスト情報230Cは、以前に提示されたライブストリームメディアアイテム230Aまたは現在提示されているライブストリームメディアアイテム230Bの購入に関する、コンテンツ共有プラットフォーム120へのユーザ集団のいくつかまたは全てのユーザによるユーザアクセスのコンテキスト情報を含むことができる。
【００６１】
実施形態において、訓練入力230は、ユーザ情報230Dを含むことができる。ユーザ情報は、コンテンツ共有プラットフォーム120にアクセスするユーザに関する、または説明する、情報を指すことが可能である。例えば、ユーザ情報230Dは、ユーザの年齢、性別、ユーザ履歴(例えば以前に視聴したメディアアイテム)、または親和性を含むことができる。親和性は、メディアアイテムの特定のカテゴリ(例えば、ニュース、ビデオゲーム、大学バスケットボール、等)へのユーザの興味を指すことが可能である。親和性スコア(例えば値0〜1、低から高)は、特定のカテゴリへのユーザの興味を数量化するための各カテゴリに割り当てられることが可能である。例えば、ユーザは、大学バスケットボールに対する0.5という親和性スコア、およびビデオゲームに対する0.9という親和性スコアを有することができる。例えば、ユーザは、コンテンツ共有プラットフォーム120にログインされることが可能であり(例えばアカウント名およびパスワード)、ユーザ情報230Dは、ユーザアカウントと関連付けられることが可能である。別の例において、クッキーが、ユーザ、ユーザデバイス、またはユーザアプリケーションと関連付けられることが可能であり、ユーザ情報230Dは、クッキーから判断されることが可能である。実施形態において、ユーザ情報230Dは、以前に提示されたライブストリームメディアアイテム230A、または現在提示されているライブストリームメディアアイテム230Bを購入するユーザ集団のいくつかまたは全てのユーザの何人かまたは全てのユーザ情報を含むことができる。
【００６２】
実施形態において、ターゲット出力240は、1つまたは複数のライブストリームメディアアイテム240Aを含むことができる。1つの実施形態において、ライブストリームメディアアイテム240Aは、現在提示されているライブストリームメディアアイテムを含むことができる。1つの実施形態において、ライブストリームメディアアイテム240Aは、関連付けられた確実性データ240Bを含むことができる。確実性データ240Bは、ライブストリームメディアアイテム240Aをユーザが購入することになる確実性のレベルを含むこと、または示すことができる。1つの例において、確実性のレベルは0と1を含むその間の実数であり、ここで、0は、ライブストリームメディアアイテム240Aをユーザが購入しないだろうという確実性を示し、1は、ライブストリームメディアアイテム240Aをユーザが購入するだろうという絶対的な確実性を示す。
【００６３】
いくつかの実施形態において、訓練セットを生成し、訓練セットを使用して機械学習モデル160を訓練した後、機械学習モデル160は、(例えば訓練された、または部分的に訓練された機械学習モデル160を使用して推奨された)推奨されたライブストリームメディアアイテム、および推奨されたライブストリームメディアアイテムとのユーザ対話を使用して、さらに訓練されること(例えば訓練セットに対する追加データ)、または調節されること(例えば、ニューラルネットワークにおける接続の重みなどの、機械学習モデル160の入力データと関連付けられた重みを調節すること)が可能である。例えば、訓練セットが生成され、訓練セットを使用して機械学習モデル160が訓練された後、機械学習モデル160は、コンテンツ共有プラットフォーム120のユーザへのライブストリームメディアアイテムの推奨を行うために使用されることが可能である。推奨を行った後、システム100は、推奨されたライブストリームメディアアイテムのユーザによる購入の指示を受信することができる。例えば、システム100は、推奨されたライブストリームメディアアイテムをユーザが購入した(例えば閾値の時間の間にライブストリーム動画アイテムを視聴した)という指示、または推奨されたライブストリームメディアアイテムをユーザが購入しなかった(例えば推奨されたライブストリームメディアアイテムを選択しなかった)という指示を受信することができる。推奨されたライブストリームメディアアイテムに関する情報は、機械学習モデル160をさらに訓練または調節するための、追加の訓練入力230または追加のターゲット出力240として使用されることが可能である。例えば、ユーザアクセスのコンテキスト情報、および推奨されたライブストリームメディアアイテムと関連付けられたユーザのユーザ情報は、追加の訓練入力230として使用されることが可能であり、推奨されたライブストリームメディアアイテムは、ターゲット出力240として使用されることが可能である。さらに他の例において、ユーザ購入の指示は、推奨ライブストリームメディアアイテムに対する確実性データを生成または調節するために使用されることが可能であり、確実性データは、追加のターゲット出力240に対して使用されることが可能である。
【００６４】
1つの実施形態において、推奨されたライブストリームメディアアイテムを使用して機械学習モデル160をさらに訓練または調節するために、システム100は、コンテンツ共有プラットフォーム120へのユーザによるユーザアクセスの指示を受信することができる。システム100は、(訓練された、または部分的に訓練された)機械学習モデル160を使用して、テストライブストリームメディアアイテム、およびテストライブストリームメディアアイテムをユーザが購入するだろうという確実性のレベルを識別するテスト出力を生成する。システム100は、(例えば確実性のレベルが閾値を超過する場合)確実性のレベルに基づいて、テストライブストリームメディアアイテムの推奨をユーザに提供する。システム100は、推奨を考慮した、ユーザによるテストライブストリームメディアアイテムの購入の指示を受信する。システム100は、ユーザによるテストライブストリームメディアアイテムの購入の指示に応答して、購入の指示に基づいて機械学習モデルを調節する。
【００６５】
図3は、本開示の実施形態による、機械学習モデルを訓練する方法300の1つの例についての流れ図を描く。方法は、ハードウェア(回路機器、専用ロジック、等)、ソフトウェア(例えば処理デバイス上で動く命令)、またはこれらの組合せを含むことができる処理ロジックによって行われる。1つの実施形態において、方法300の動作のいくつかまたは全ては、図1のシステム100の1つまたは複数の構成要素によって行われることが可能である。他の実施形態において、方法300の1つまたは複数の動作は、図1〜図2について説明されたような、サーバマシン130の訓練セット生成器131によって行われることが可能である。図1〜図2について説明された構成要素は、図3の態様を示すために使用されることが可能であるということに留意されたい。
【００６６】
方法300は、機械学習モデルのための訓練データを生成することで始まる。いくつかの実施形態において、ブロック301において、方法300を実行する処理ロジックは、訓練セットTを空集合に初期化する。ブロック302において、処理ロジックは、コンテンツ共有プラットフォーム上で第1の複数のユーザ集団のユーザによって購入された(図2について説明されたような)1つまたは複数の以前に提示されたライブストリームメディアアイテム230Aを含む第1の訓練入力を生成する。ブロック303において、処理ロジックは、コンテンツ共有プラットフォーム上で第2の複数のユーザ集団のユーザによって現在購入されている、現在提示されているライブストリームメディアアイテム230Bを含む第2の訓練入力を生成する。ブロック304において、処理ロジックは、コンテンツ共有プラットフォーム120上で1つまたは複数の以前に提示されたライブストリームメディアアイテム230Aを購入した第1の複数のユーザ集団のユーザによるユーザアクセスと関連付けられた第1のコンテキスト情報を含む第3の訓練入力を生成する。ブロック305において、処理ロジックは、コンテンツ共有プラットフォーム上で現在提示されているライブストリームメディアアイテムを購入している第2の複数のユーザ集団のユーザによるユーザアクセスと関連付けられた第2のコンテキスト情報を含む第4の訓練入力を生成する。ブロック306において、処理ロジックは、コンテンツ共有プラットフォーム120上で1つまたは複数の以前に提示されたライブストリームメディアアイテム230Aを購入した第1の複数のユーザ集団のユーザと関連付けられた第1のユーザ情報を含む第5の訓練入力を生成する。ブロック307において、処理ロジックは、コンテンツ共有プラットフォーム120上で現在提示されているライブストリームメディアアイテム230Bを購入している第2の複数のユーザ集団のユーザと関連付けられた第2のユーザ情報を含む第6の訓練入力を生成する。
【００６７】
ブロック308において、処理ロジックは、訓練入力(例えば訓練入力1から6)の1つまたは複数に対する第1のターゲット出力を生成する。第1のターゲット出力は、ライブストリームメディアアイテム(例えば現在提示されている)、およびライブストリームメディアアイテムをユーザが購入することになる確実性のレベルを識別する。ブロック309において、処理ロジックは、入力/出力マッピングを示すものであるマッピングデータを生成する。入力/出力マッピング(またはマッピングデータ)は、訓練入力(例えば本明細書で説明される訓練入力の1つまたは複数)、訓練入力に対するターゲット出力(例えば、ここで、ターゲット出力は、ライブストリームメディアアイテム、およびライブストリームメディアアイテムをユーザが購入するだろうという確実性のレベルを識別する)を指すことが可能であり、ここで、訓練入力は、ターゲット出力と関連付けられる(またはマッピングされる)。ブロック310において、処理ロジックは、ブロック309において生成されたマッピングデータを訓練セットTに追加する。
【００６８】
ブロック311において、処理ロジックは、訓練セットTが機械学習モデル160を訓練するのに十分であるかどうかに基づいて分岐する。十分である場合、実行はブロック312に進み、十分でない場合、実行は、ブロック302に戻って継続する。いくつかの実施形態において、訓練セットTが十分であることは、訓練セット内の入力/出力マッピングの数に単純に基づいて判断されることが可能であるが、いくつかの他の実施形態において、訓練セットTが十分であることは、入力/出力マッピングの数の他に、または代わりに、1つまたは複数の他の基準(例えば、訓練の例、正確さ、等の一定の多様性の測定)に基づいて判断されることが可能であるということに留意されたい。
【００６９】
ブロック312において、処理ロジックは、機械学習モデル160を訓練するための訓練セットTを提供する。1つの実施形態において、訓練セットTは、訓練を行うためにサーバマシン140の訓練エンジン141に提供される。ニューラルネットワークの場合、例えば、所与の入力/出力マッピングの入力値(例えば訓練入力230と関連付けられた数値)は、ニューラルネットワークに入力され、入力/出力マッピングの出力値(例えばターゲット出力240と関連付けられた数値)は、ニューラルネットワークの出力ノードに格納される。ニューラルネットワークにおける接続の重みは、次に、学習アルゴリズム(例えば逆伝搬等)に従って調節され、手順は、訓練セットT内の他の入力/出力マッピングに対して繰り返される。ブロック312の後、機械学習モデル160は、サーバマシン140の訓練エンジン141を使用して訓練されることが可能である。訓練済機械学習モデル160は、ライブストリームメディアアイテム、およびライブストリームメディアアイテムのそれぞれに対する確実性データを判断するため、ならびにライブストリームメディアアイテムの推奨をユーザに対して行うために、(サーバマシン150またはコンテンツ共有プラットフォーム120の)ライブストリーム推奨エンジン151によって実行されることが可能である。
【００７０】
図4は、本開示の実施形態による、訓練済機械学習モデルを使用してライブストリーム動画アイテムを推奨する方法400の1つの例についての流れ図を描く。方法は、ハードウェア(回路機器、専用ロジック、等)、ソフトウェア(例えば処理デバイス上で動く命令)、またはこれらの組合せを含むことができる処理ロジックによって行われる。1つの実施形態において、方法400の動作のいくつかまたは全ては、図1のシステム100の1つまたは複数の構成要素によって行われることが可能である。他の実施形態において、方法400の1つまたは複数の動作は、図1〜図3について説明されたような、訓練済機械学習モデル160などの、訓練済モデルを実行するサーバマシン150またはコンテンツ共有プラットフォーム120のライブストリーム推奨エンジン151によって行われることが可能である。図1〜図2について説明された構成要素は、図4の態様を示すために使用されることが可能であるということに留意されたい。
【００７１】
いくつかの実施形態において、訓練済機械学習モデル160は、コンテンツ共有プラットフォーム120上でライブストリーミングされている現在提示されているライブストリームメディアアイテムを推奨するために使用されることが可能である。いくつかの実施形態において、コンテンツ共有プラットフォーム120にアクセスするユーザ(例えばアクセスユーザ)に応答して、複数の入力が訓練済機械学習モデル160に提供されることが可能である。例えば、入力は、現在提示されているライブストリームメディアアイテムを現在購入しているユーザまたはユーザ集団に(ユーザアクセス時に)マッピングされる現在提示されているライブストリームメディアアイテムを含むことができる。入力は、ユーザ情報230Dなどのコンテンツ共有プラットフォーム120にアクセスするユーザについての情報、またはユーザアクセスに関するコンテキスト情報230Cなどのコンテキストデータを含むこともできる。訓練済機械学習モデル160は、多次元空間(例えば、ここで、各次元は訓練入力230の特徴に基づく)におけるアクセスユーザをグラフで示すことも、マッピングすることもできる。多次元空間は、訓練入力230として使用される集団に基づく集団における他のユーザ、またはマッピングデータによって判断される他の集団をマッピングすることができる。アクセスユーザは、多次元空間における1つまたは複数のユーザ集団にマッピングされることが可能である。いくつかの実施形態において、アクセスユーザは集団の中心とみなされることが可能である。訓練済機械学習モデル160は、アクセスユーザに最も近い(例えば、ユーザまたはユーザ集団に最も近い)(例えば、ある閾値の距離)他のユーザまたはユーザ集団を識別すること、最も近いユーザまたはユーザ集団がアクセスしている現在提示されているライブストリームメディアアイテムを検査すること、および最も近いユーザまたはユーザ集団が購入している1つまたは複数の現在提示されているライブストリームメディアアイテムを出力すること、ができる。いくつかの実施形態において、最も近いユーザまたはユーザ集団がいる距離がアクセスユーザに近くなればなるほど、個々の最も近いユーザまたはユーザ集団と関連付けられた現在提示されているライブストリームメディアアイテムをアクセスユーザが購入するだろうという確実性のレベルが高くなる。
【００７２】
方法400はブロック401において始まることができ、ここで、方法400を実行する処理ロジックは、コンテンツ共有プラットフォーム120のユーザによるユーザアクセスの指示を受信する。ブロック402において、ユーザアクセスに応答して、処理ロジックは、第1の入力、第2の入力、および第3の入力を含む入力データを訓練済機械学習モデル160に提供する。第1の入力は、コンテンツ共有プラットフォーム120へのユーザアクセスと関連付けられたコンテキスト情報(例えばコンテキスト情報230C)を含む。例えば、コンテキスト情報は、ユーザアクセスの時刻、およびコンテンツ共有プラットフォーム120にアクセスするデバイスのタイプを含むことができる。第2の入力は、コンテンツ共有プラットフォーム120へのユーザアクセスと関連付けられたユーザ情報(例えばユーザ情報230D)を含む。例えば、ユーザ情報は、ユーザの性別および年齢を含むことができる。第3の入力は、ユーザアクセスと同時にライブストリーミングされ、コンテンツ共有プラットフォーム120上で第1の複数のユーザ集団のユーザによって現在購入されているライブストリームメディアアイテムを含む。例えば、第3の入力は、コンテンツ共有プラットフォーム120上でライブストリーミングされ、現在提示されているライブストリームメディアアイテムを購入するユーザ集団にマッピングされるか、関連付けられる、現在提示されているライブストリームメディアアイテムを含むことができる。実施形態において、入力(例えば第1から第3の入力)は、単一の動作または複数の動作で訓練済機械学習モデル160に提供されることが可能である。
【００７３】
ブロック403において、処理ロジックは、訓練済機械学習モデル160から、また入力データに基づいて、(i)複数のライブストリームメディアアイテム、および(ii)複数のライブストリームメディアアイテムのうちの個々のライブストリームメディアアイテムをユーザが購入することになる確実性のレベル、を識別する1つまたは複数の出力を入手する。例えば、訓練済機械学習モデル160は、コンテンツ共有プラットフォーム120上で現在ライブストリーミングされているライブストリームメディアアイテム、およびコンテンツ共有プラットフォーム120にアクセスしているユーザが、現在提示されているライブストリームメディアアイテムを購入するだろう確実性のレベルを示す確実性データを出力することができる。
【００７４】
ブロック404において、処理ロジックは、複数のライブストリームメディアアイテムのうちの個々のライブストリームメディアアイテムをユーザが購入することになる確実性のレベルを考慮して、複数のライブストリームメディアアイテムの1つまたは複数に関する推奨を、コンテンツ共有プラットフォーム120のユーザに提供することができる。1つの実施形態において、処理ロジックは、閾値のレベルを超過するか、満たす確実性のレベルを、訓練済機械学習モデル160によって判断された複数のライブストリームメディアアイテムのどれが有するかを判断することができる。処理ロジックは、閾値のレベルを超過するか、満たす確実性のレベルを有するライブストリームメディアアイテムのいくつか(例えば上位3つ)または全て(ライブストリームメディアアイテムのグループ)を選択し、ライブストリームメディアアイテムのグループの各ライブストリームメディアアイテムに関する推奨を行うことができる。
【００７５】
図5は、本開示の実施形態による、例示的なコンピュータシステム500を示すブロック図である。コンピュータシステム500は、本明細書で論じられる方法の任意の1つまたは複数を機械に行わせる命令の1つまたは複数のセットを実行する。命令のセット、命令、および同様のものは、コンピュータシステム500を実行すると、訓練セット生成器131またはライブストリーム推奨エンジン151の1つまたは複数の動作をコンピュータシステム500に行わせる命令を指すことが可能である。機械は、クライアントサーバネットワーク環境におけるサーバまたはクライアントデバイスの能力の中で、またはピアツーピア(もしくは分散型)ネットワーク環境におけるピアマシンとして、動作することができる。機械は、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、ウェブアプライアンス、サーバ、ネットワークルータ、スイッチもしくはブリッジ、または任意の機械によって行われることになるアクションを指定する命令のセット(連続か非連続)を実行することができる任意の機械であることが可能である。さらに、ただ1つの単一の機械が示されているが、「機械」という用語は、本明細書で論じられる方法の任意の1つまたは複数を行うための命令のセットを個別にまたは一緒に実行する機械の任意の集合体を含むものとして理解されることにもなる。
【００７６】
コンピュータシステム500は、処理デバイス502、メインメモリ504(例えば、リードオンリメモリ(ROM)、フラッシュメモリ、シンクロナスDRAM(SDRAM)またはRambus DRAM(RDRAM)などのダイナミックランダムアクセスメモリ(DRAM)、等)、静的メモリ506(例えば、フラッシュメモリ、スタティックランダムアクセスメモリ(SRAM)、等)、およびデータストレージデバイス516を含み、これらは、バス508を介して互いに通信する。
【００７７】
処理デバイス502は、マイクロプロセッサ、中央処理装置、または同様のものなどの、1つまたは複数の汎用処理デバイスを表す。より詳細には、処理デバイス502は、複数命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、または他の命令セットを実行する処理デバイス、もしくは命令セットの組合せを実行する処理デバイスであることが可能である。処理デバイス502は、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタルシグナルプロセッサ(DSP)、ネットワークプロセッサ、または同様のものなどの、1つまたは複数の専用処理デバイスであることも可能である。処理デバイス502は、本明細書で論じられる動作を行うための、システムアーキテクチャ100および訓練セット生成器131またはライブストリーム推奨エンジン151の命令を実行するように構成される。
【００７８】
コンピュータシステム500は、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット、またはインターネットなどのネットワーク518で他の機械との通信を行うネットワークインターフェースデバイス522をさらに含むことができる。コンピュータシステム500は、表示デバイス510(例えば液晶ディスプレイ(LCD)または陰極線管(CRT))、英数字入力デバイス512(例えばキーボード)、カーソル制御デバイス514(例えばマウス)、および信号生成デバイス520(例えばスピーカ)も含むことができる。
【００７９】
データストレージデバイス516は、本明細書で説明される方法または機能の任意の1つまたは複数を具体化する、システムアーキテクチャ100および訓練セット生成器131またはライブストリーム推奨エンジン151の命令のセットが格納される非一時的コンピュータ可読ストレージ媒体524を含むことができる。システムアーキテクチャ100および訓練セット生成器131またはライブストリーム推奨エンジン151の命令のセットは、コンピュータシステム500による命令のセットの実行中にメインメモリ504内および/または処理デバイス502内に、完全にまたは少なくとも部分的に常駐することも可能であり、メインメモリ504および処理デバイス502もコンピュータ可読ストレージ媒体とみなされる。命令のセットは、ネットワークインターフェースデバイス522を介してネットワーク518でさらに送信されるか、受信されることが可能である。
【００８０】
コンピュータ可読ストレージ媒体524の例は単一の媒体として示されるが、「コンピュータ可読ストレージ媒体」という用語は、命令のセットを格納する単一の媒体または複数の媒体(例えば、集中型もしくは分散型データベース、ならびに/または関連付けられたキャッシュおよびサーバ)を含むことができる。「コンピュータ可読ストレージ媒体」という用語は、機械による実行のための命令のセットを格納すること、エンコードすること、または搬送することができ、本開示の方法の任意の1つまたは複数を機械に行わせる、任意の媒体を含むことができる。「コンピュータ可読ストレージ媒体」という用語は、ソリッドステートメモリ、光媒体、および磁気媒体を含むことができるが、これらに限定されない。
【００８１】
前述の説明において、非常に多くの詳細が示される。しかし、本開示は、これらの具体的詳細がなくても実践されることが可能であるということが、本開示の利益を有する当業者には明らかであろう。いくつかの事例において、よく知られた構造およびデバイスが、本開示をあいまいにするのを避けるために、詳細ではなく、ブロック図の形式で示される。
【００８２】
詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビットに対する動作のアルゴリズムおよび象徴的表現の観点から提示された。これらのアルゴリズムの説明および表現は、これらの作業の実体を他の当業者に最も効果的に伝えるために、データ処理の当業者によって使用される手段である。アルゴリズムは、ここで、また一般に、所望の結果に導く動作の首尾一貫した順序であると考えられる。動作は、物理量に対して物理的措置を必要とする動作である。通常、必ずというわけではないが、これらの量は、格納されること、移送されること、組み合わされること、比較されること、およびそうでなければ操作されることが可能である電気または磁気の信号の形をとる。これらの信号を、ビット、値、要素、シンボル、キャラクタ、項、数、または同様のものと呼ぶことが、主に一般的な使用のために時には便利であると証明されてきた。
【００８３】
しかし、これらおよび類似の用語の全ては、妥当な物理量と関連付けられるためのものであり、これらの量に応用される便利なラベルにすぎないということが念頭に置かれることが可能である。別途具体的に述べられない限り、説明の全体を通して、「提供すること」、「受信すること」、「調節すること」、「生成すること」、「入手すること」、「判断すること」、または同様のものなどの用語を利用する議論は、コンピュータシステムメモリもしくはレジスタ、または他のこのような情報ストレージデバイス、情報送信デバイス、または情報表示デバイス内の物理量として同様に表される他のデータに、コンピュータシステムメモリまたはレジスタ内の物理量(例えば電子量)として表されるデータを操作および変換する、コンピュータシステムまたは類似の電子コンピューティングデバイスのアクションおよび処理を指すということが理解される。
【００８４】
本開示は、本明細書における動作を行うための装置にも関係する。この装置は必要な目的のために特別に構築されることが可能であり、また、この装置は、コンピュータに格納されたコンピュータプログラムによって選択的に活性化または再構成される汎用コンピュータを含むことができる。このようなコンピュータプログラムは、フロッピーディスク、光ディスク、コンパクトディスクリードオンリメモリ(CD-ROM)、磁気光ディスク、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、消去可能プログラマブルリードオンリメモリ(EPROM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、磁気もしくは光カード、または電子命令を格納するのに適した任意のタイプの媒体を含む任意のタイプのディスクなどであるがこれらに限定されない、コンピュータ可読ストレージ媒体に格納されることが可能である。
【００８５】
「例」または「例示的な」という単語は、例、実例、または例証としての役割を果たすことを意味するために本明細書において使用される。「例」または「例示的な」として本明細書において説明される任意の態様またはデザインは、必ずしも、他の態様またはデザインに対して好ましいものまたは有利なものとして解釈されることにはならない。むしろ、「例」または「例示的な」という単語の使用は、具体的に概念を提示することを意図するものである。本出願において使用されるように、「または」という用語は、排他的な「または」ではなく包括的な「または」を意味することを意図するものである。すなわち、別途指定されない限り、または文脈から明らかでない限り、「XがAまたはBを含む」は、自然な包括的並べ替えのいずれかを意味することを意図するものである。すなわち、XがAを含む、XがBを含む、またはXがAとBの両方を含む、場合、「XがAまたはBを含む」は、前述の実例のいずれかの下で満たされる。さらに、本出願および添付の特許請求の範囲において使用されるような「a」および「an」という冠詞は、一般に、別途指定されない限り、または文脈から明らかでない限り、単数形を対象とするものとして「1つまたは複数」を意味するように解釈されることが可能である。さらに、「実施形態(an implementation)」または「1つの実施形態(one implementation)」または「実施形態」または「1つの実施形態」という用語の使用は全て、そのようなものとして説明されない限り、同じ実施形態または実施形態を意味することを意図するものではない。本明細書において使用されるような「第1」、「第2」、「第3」、「第4」、等という用語は、異なる要素間で区別するためのラベルとして意図され、必ずしも、これらの数値の指定に従って順序を示す意味を含んでいない可能性がある。
【００８６】
説明の簡略化のために、本明細書における方法は、一連の行為または動作として描かれ、説明される。しかし、本開示による行為は、様々な順序で、および/または同時に発生することが可能であり、他の行為は、本明細書において提示も説明も行われない。さらに、全ての示された行為が、開示の主題による方法を実行するのに必要ではない可能性がある。さらに、方法は、一方で、状態図またはイベントによって一連の相関状態として表されることが可能であるということを当業者は理解し、正しく認識するであろう。さらに、本明細書において開示された方法は、このような方法をコンピューティングデバイスに運搬および移送することを容易にするための製品に格納されることが可能であるということを理解されたい。製品という用語は、本明細書で使用されるように、任意のコンピュータ可読デバイスまたはストレージ媒体からアクセス可能なコンピュータプログラムを包含することを意図するものである。
【００８７】
上記の記述は、例証的なものであり、制限的なものではないことを意図するものであるということを理解されたい。他の実施形態は、上記の記述を読み、理解すれば当業者には明らかであろう。本開示の範囲は、したがって、添付の特許請求の範囲が与えられる均等物の全範囲と共に、添付の特許請求の範囲を参照しながら判断されることが可能である。
【符号の説明】
【００８８】
100  システムアーキテクチャ
104  ネットワーク
106  データストア
110A  クライアントデバイス
110Z  クライアントデバイス
111  メディアビューア
120  コンテンツ共有プラットフォーム、サーバコンテンツ共有プラットフォーム
121  メディアアイテム
122  推奨
130  サーバマシン
131  訓練セット生成器
140  サーバマシン
141  訓練エンジン
150  サーバマシン
151  ライブストリーム推奨エンジン
160  モデル、訓練済機械学習モデル、機械学習モデル
200  システム
230  訓練入力
230A  以前に提示されたライブストリームメディアアイテム
230B  現在提示されているライブストリームメディアアイテム
230C  コンテキスト情報
230D  ユーザ情報
240  ターゲット出力
240A  ライブストリームメディアアイテム
240B  確実性データ
500  コンピュータシステム
502  処理デバイス
504  メインメモリ
506  静的メモリ
508  バス
510  表示デバイス
512  英数字入力デバイス
514  カーソル制御デバイス
516  データストレージデバイス
518  ネットワーク
520  信号生成デバイス
522  ネットワークインターフェースデバイス
524  コンピュータ可読媒体、非一時的コンピュータ可読ストレージ媒体
【図１】
0006855595.tif 000002
【図２】
0006855595.tif 000003
【図３】
0006855595.tif 000004
【図４】
0006855595.tif 000005
【図５】
0006855595.tif 000006