(57)【要約】  本開示は、セキュアなブローカーによって媒介されるデータ分析および予測に関する。１つの例示的な実施形態は方法を含む。本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスから複数のデータセットを受信することを含む。本方法はまた、管理コンピューティングデバイスによって、１つまたは複数の共有パラメータを有する共有関数に基づいて共有表現を計算することを含む。さらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスに、共有表現と、他のデータとを送信することを含む。さらに、本方法は、共有表現と、他のデータとに基づいて、クライアントコンピューティングデバイスが、１つまたは複数の個別パラメータを用いて、部分表現と、個別関数とを更新することを含む。またさらに、本方法は、クライアントコンピューティングデバイスによって、管理コンピューティングデバイスに提供すべきフィードバック値を決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、フィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。
2020537797.tif 000002
【特許請求の範囲】
【請求項１】
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、前記複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
前記管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、前記複数のデータセットのうちの各データセットの識別子の前記リストの組合せを備える識別子の複合リストとを決定することと、
前記管理コンピューティングデバイスによって、前記複数のデータセットの中から一意のオブジェクトのセットを決定することと、
前記管理コンピューティングデバイスによって、識別子の前記複合リストから識別子のサブセットを選択することと、
前記管理コンピューティングデバイスによって、識別子の前記サブセット中の各識別子に対応する一意のオブジェクトの前記セットのサブセットを決定することと、
前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットの前記サブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、前記データセットの共有表現を計算することと、
前記管理コンピューティングデバイスによって、前記それぞれのデータセットについての識別子の前記リストとの識別子の前記サブセットの共通部分に基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについてオブジェクトのサブセットを決定することと、
前記管理コンピューティングデバイスによって、前記それぞれのデータセットについてのオブジェクトの前記サブセットと、前記共有表現とに基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについて部分表現を決定することと、
前記管理コンピューティングデバイスによって、１つまたは複数のフィードバック値を収集することと、ここにおいて、前記１つまたは複数のフィードバック値の各々が、前記それぞれのデータセットに対応する記録値の前記セットと比較された予測値のセットの改善に対応する前記部分表現の変化として決定される、
前記管理コンピューティングデバイスによって、オブジェクトの前記サブセットと、前記クライアントコンピューティングデバイスからの前記１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
前記管理コンピューティングデバイスによって、前記１つまたは複数のアグリゲートされたフィードバック値に基づいて前記１つまたは複数の共有パラメータを更新することと
を備える、機械学習のための方法。
【請求項２】
各データセットが、複数の次元においてオブジェクトを備え、前記データセットの各々についての前記複数の次元のうちの少なくとも１つにおける前記オブジェクトが、同じタイプである、請求項１に記載の方法。
【請求項３】
各データセットの識別子の前記それぞれのリストが、各データセットについてのオブジェクトのセットに対応し、ここにおいて、前記複数のデータセットの前記識別子が、共通のシンタックスに従って定義される、請求項１または２に記載の方法。
【請求項４】
前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に、前記それぞれのデータセットについてのオブジェクトの前記サブセットと、前記それぞれのデータセットについての前記部分表現とを送信することをさらに備え、前記収集することが、前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを備える、先行する請求項のいずれか一項に記載の方法。
【請求項５】
前記１つまたは複数のフィードバック値は、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値の前記セットが、前記それぞれのデータセットに対応する前記部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについての個別損失関数と、前記それぞれのデータセットに対応する予測値の前記セットと、オブジェクトの前記サブセットと、前記それぞれのデータセットに対応する記録値の前記セット中の非空エントリとに基づいて、前記それぞれのデータセットについての誤差を決定することと、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについての前記１つまたは複数の個別パラメータを更新することと、
前記それぞれのクライアントコンピューティングデバイスによって、前記１つまたは複数のフィードバック値を決定することと、ここにおいて、前記１つまたは複数のフィードバック値が、予測値の前記セットの改善に対応する前記部分表現の変化を決定するために使用される、
によって、前記クライアントコンピューティングデバイスによって決定される、請求項４に記載の方法。
【請求項６】
前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に、前記共有関数と、前記１つまたは複数の共有パラメータとを送信することをさらに備える、請求項４または５に記載の方法。
【請求項７】
前記管理コンピューティングデバイスによって、前記複数のデータセットの中から一意のオブジェクトの前記セットを決定することが、
前記管理コンピューティングデバイスによって、各データセットからの前記オブジェクトの組合せであるオブジェクトの複合セットを作成することと、
前記管理コンピューティングデバイスによって、前記複数のデータセットの各々についての識別子の前記リストの共通部分に基づいて、オブジェクトの前記複合セットから重複オブジェクトを削除することと
を備える、先行する請求項のいずれか一項に記載の方法。
【請求項８】
前記それぞれのデータセットについての前記誤差を決定することは、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットに対応する記録値の前記セット中の前記非空エントリのうちのどれが、オブジェクトの前記サブセット中のオブジェクトに対応するかを識別することと、
前記それぞれのクライアントコンピューティングデバイスによって、各識別された非空エントリと、前記それぞれのデータセットに対応する予測値の前記セット中のそれの対応する予測値との間の前記個別損失関数を適用することによって、前記それぞれのデータセットに対応する記録値の前記セット中の前記識別された非空エントリの各々についての部分誤差値を決定することと、
前記それぞれのクライアントコンピューティングデバイスによって、前記部分誤差値を組み合わせることと
を備える、請求項５に記載の方法。
【請求項９】
前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットと、前記共有関数と、前記１つまたは複数の共有パラメータとに基づいて、前記データセットの最終共有表現を計算することと、
前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に前記データセットの前記最終共有表現を送信することと
をさらに備える、先行する請求項のいずれか一項に記載の方法。
【請求項１０】
前記データセットの前記最終共有表現が、前記それぞれのデータセットに対応する予測値の最終セットを決定するために前記クライアントコンピューティングデバイスの各々によって使用可能である、請求項９に記載の方法。
【請求項１１】
前記それぞれのデータセットに対応する予測値の前記最終セットを決定することが、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについてオブジェクトの前記サブセットを受信することと、
前記それぞれのクライアントコンピューティングデバイスによって、オブジェクトの前記サブセットと、前記最終共有表現とに基づいて、それぞれのデータセットについて最終部分表現を決定することと、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットに対応する前記最終部分表現と、前記個別関数と、前記１つまたは複数の個別パラメータとに基づいて、前記それぞれのデータセットに対応する予測値の前記最終セットを決定することと
を備える、請求項１０に記載の方法。
【請求項１２】
前記クライアントコンピューティングデバイスの各々からの前記１つまたは複数のフィードバック値が逆伝搬誤差に基づく、請求項５に記載の方法。
【請求項１３】
前記複数のデータセットの各々が、等しい次元数を備える、先行する請求項のいずれか一項に記載の方法。
【請求項１４】
前記複数のデータセットの各々がテンソルによって表され、
前記複数のデータセットのうちの少なくとも１つがスパーステンソルによって表される、
先行する請求項のいずれか一項に記載の方法。
【請求項１５】
前記管理コンピューティングデバイスによって、識別子の前記複合リストから識別子の追加のサブセットを選択することと、
前記管理コンピューティングデバイスによって、識別子の前記追加のサブセット中の各識別子に対応する一意のオブジェクトの前記セットの追加のサブセットを決定することと、
前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットの前記追加のサブセットと、前記１つまたは複数の共有パラメータを有する前記共有関数とに基づいて、前記データセットの修正された共有表現を計算することと、
前記管理コンピューティングデバイスによって、前記それぞれのデータセットについての識別子の前記リストとの識別子の前記追加のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについてオブジェクトの追加のサブセットを決定することと、
前記管理コンピューティングデバイスによって、前記それぞれのデータセットについてのオブジェクトの前記追加のサブセットと、前記修正された共有表現とに基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについて、修正された部分表現を決定することと、
前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に、
前記それぞれのデータセットについてのオブジェクトの前記追加のサブセットと、
前記それぞれのデータセットについての前記修正された部分表現と
を送信することと、
前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数の修正されたフィードバック値を受信することと、ここにおいて、前記１つまたは複数の修正されたフィードバック値は、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットに対応する予測値の修正されたセットを決定することと、ここにおいて、予測値の前記修正されたセットが、前記それぞれのデータセットに対応する前記修正された部分表現と、前記１つまたは複数の個別パラメータをもつ前記個別関数とに基づく、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについての前記個別損失関数と、前記それぞれのデータセットに対応する予測値の前記修正されたセットと、オブジェクトの前記追加のサブセットと、前記それぞれのデータセットに対応する記録値の前記セット中の前記非空エントリとに基づいて、前記それぞれのデータセットについての修正された誤差を決定することと、
前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについての前記１つまたは複数の個別パラメータを更新することと、
前記それぞれのクライアントコンピューティングデバイスによって、前記１つまたは複数の修正されたフィードバック値を決定することと、ここにおいて、前記１つまたは複数の修正されたフィードバック値が、予測値の前記セットの改善に対応する前記修正された部分表現の変化を決定するために使用される、
によって前記クライアントコンピューティングデバイスによって決定される、
前記管理コンピューティングデバイスによって、オブジェクトの前記追加のサブセットと、前記１つまたは複数の修正されたフィードバック値とに基づいて、１つまたは複数の修正されたアグリゲートされたフィードバック値を決定することと、
前記管理コンピューティングデバイスによって、前記１つまたは複数の修正されたアグリゲートされたフィードバック値に基づいて前記１つまたは複数の共有パラメータを更新することと、
前記管理コンピューティングデバイスによって、前記１つまたは複数の修正されたアグリゲートされたフィードバック値に基づいて、すべてのそれぞれのデータセットについての前記修正された誤差に対応するアグリゲートされた誤差が最小限に抑えられたと決定することと
をさらに備える、請求項５に記載の方法。
【請求項１６】
前記管理コンピューティングデバイスによって、同様の関係をモデル化するために使用される関係する共有関数に基づいて、前記共有関数と、前記１つまたは複数の共有パラメータとを初期化することをさらに備える、先行する請求項のいずれか一項に記載の方法。
【請求項１７】
前記クライアントコンピューティングデバイスによって前記１つまたは複数のフィードバック値を決定することが、前記それぞれのクライアントコンピューティングデバイスによって、乱数生成器または擬似乱数生成器に基づいて、前記それぞれのデータセットに対応する前記個別関数と、前記１つまたは複数の個別パラメータとを初期化することをさらに備える、請求項５に記載の方法。
【請求項１８】
前記複数のデータセットの各々が、少なくとも２つの次元を備え、
前記複数のデータセットの各々の第１の次元が、複数の化学的化合物を備え、
前記複数のデータセットの各々の第２の次元が、前記化学的化合物の記述子を備え、
前記複数のデータセットの各々中のエントリは、それぞれの化学的化合物がそれぞれの記述子を示すかどうかのバイナリ指標に対応し、
前記複数のデータセットの各々に対応する記録値の前記セットの各々が、少なくとも２つの次元を備え、
記録値の前記セットの各々の第１の次元が、前記複数の化学的化合物を備え、
記録値の前記セットの各々の第２の次元が、複数の生物学的アッセイにおける前記化学的化合物の活動性を備え、
記録値の前記セットの各々中のエントリは、それぞれの化学的化合物がそれぞれの活動性を示すかどうかのバイナリ指標に対応する、
先行する請求項のいずれか一項に記載の方法。
【請求項１９】
前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットと、前記共有関数と、前記１つまたは複数の共有パラメータとに基づいて、前記データセットの最終共有表現を計算することと、
前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に前記データセットの前記最終共有表現を送信することと
をさらに備え、
ここにおいて、前記データセットの前記最終共有表現が、前記それぞれのデータセットに対応する予測値の最終セットを決定するために前記クライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の前記最終セットが、前記複数の化学的化合物の中で１つまたは複数の有効な治療化合物を識別するために前記クライアントコンピューティングデバイスのうちの少なくとも１つによって使用される、
請求項１８に記載の方法。
【請求項２０】
前記複数のデータセットの各々が、少なくとも２つの次元を備え、
前記複数のデータセットの各々の第１の次元が、複数の患者を備え、
前記複数のデータセットの各々の第２の次元が、前記患者の記述子を備え、
前記複数のデータセットの各々中のエントリは、それぞれの患者がそれぞれの記述子を示すかどうかのバイナリ指標に対応し、
前記複数のデータセットの各々に対応する記録値の前記セットの各々が、少なくとも２つの次元を備え、
記録値の前記セットの各々の第１の次元が、前記複数の患者を備え、
記録値の前記セットの各々の第２の次元が、前記患者の臨床診断を備え、
記録値の前記セットの各々中のエントリは、それぞれの患者がそれぞれの臨床診断を示すかどうかのバイナリ指標に対応する、
請求項１〜１７のいずれか一項に記載の方法。
【請求項２１】
前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットと、前記共有関数と、前記１つまたは複数の共有パラメータとに基づいて、前記データセットの最終共有表現を計算することと、
前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に前記データセットの前記最終共有表現を送信することと
をさらに備え、
ここにおいて、前記データセットの前記最終共有表現が、前記それぞれのデータセットに対応する予測値の最終セットを決定するために前記クライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の前記最終セットが、前記複数の患者のうちの少なくとも１人を診断するために前記クライアントコンピューティングデバイスのうちの少なくとも１つによって使用される、
請求項２０に記載の方法。
【請求項２２】
前記複数のデータセットのうちの１つに対応する予測値の前記セットの各々が、予測値テンソルに対応し、
前記予測値テンソルが、第２のテンソルによって乗算される第１のテンソルに分解され、
前記第１のテンソルが、前記１つまたは複数の共有パラメータによって乗算される前記それぞれのデータセットに対応する、
請求項５に記載の方法。
【請求項２３】
前記それぞれのデータセットが、前記データセットの前記オブジェクトに関するサイド情報を符号化する、請求項２２に記載の方法。
【請求項２４】
前記予測値テンソルが、Ｍａｃａｕ分解方法を使用して分解される、請求項２２に記載の方法。
【請求項２５】
命令がその上に記憶された非一時的コンピュータ可読媒体であって、前記命令は、
複数のデータセットを受信することと、ここにおいて、前記複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
各データセットについての識別子のそれぞれのリストと、前記複数のデータセットのうちの各データセットの識別子の前記リストの組合せを備える識別子の複合リストとを決定することと、
前記複数のデータセットの中から一意のオブジェクトのセットを決定することと、
識別子の前記複合リストから識別子のサブセットを選択することと、
識別子の前記サブセット中の各識別子に対応する一意のオブジェクトの前記セットのサブセットを決定することと、
一意のオブジェクトの前記セットの前記サブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、前記データセットの共有表現を計算することと、
前記それぞれのデータセットについての識別子の前記リストとの識別子の前記サブセットの共通部分に基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについてオブジェクトのサブセットを決定することと、
前記それぞれのデータセットについてのオブジェクトの前記サブセットと、前記共有表現とに基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについて部分表現を決定することと、
１つまたは複数のフィードバック値を収集することと、ここにおいて、前記１つまたは複数のフィードバック値の各々が、前記それぞれのデータセットについての記録値の前記セットに対する前記部分表現の予測の関係に基づいて決定される、
オブジェクトの前記サブセットと、前記クライアントコンピューティングデバイスからの前記１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
前記１つまたは複数のアグリゲートされたフィードバック値に基づいて前記１つまたは複数の共有パラメータを更新することと
を備える方法を実施するようにプロセッサによって実行可能である、非一時的コンピュータ可読媒体。
【請求項２６】
モデルがその上に記憶されたメモリであって、前記モデルは、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、前記複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
前記管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、前記複数のデータセットのうちの各データセットの識別子の前記リストの組合せを備える識別子の複合リストとを決定することと、
前記管理コンピューティングデバイスによって、前記複数のデータセットの中から一意のオブジェクトのセットを決定することと、
前記管理コンピューティングデバイスによって、識別子の前記複合リストから識別子のサブセットを選択することと、
前記管理コンピューティングデバイスによって、識別子の前記サブセット中の各識別子に対応する一意のオブジェクトの前記セットのサブセットを決定することと、
前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットの前記サブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、前記データセットの共有表現を計算することと、
前記管理コンピューティングデバイスによって、前記それぞれのデータセットについての識別子の前記リストとの識別子の前記サブセットの共通部分に基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについてオブジェクトのサブセットを決定することと、
前記管理コンピューティングデバイスによって、前記それぞれのデータセットについてのオブジェクトの前記サブセットと、前記共有表現とに基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについて部分表現を決定することと、
前記管理コンピューティングデバイスによって、１つまたは複数のフィードバック値を収集することと、ここにおいて、前記１つまたは複数のフィードバック値の各々が、前記それぞれのデータセットについての記録値の前記セットに対する前記部分表現の予測の関係に基づいて決定される、
前記管理コンピューティングデバイスによって、オブジェクトの前記サブセットと、前記クライアントコンピューティングデバイスからの前記１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
前記管理コンピューティングデバイスによって、前記１つまたは複数のアグリゲートされたフィードバック値に基づいて前記１つまたは複数の共有パラメータを更新することと、
前記管理コンピューティングデバイスによって、前記メモリ上に、前記共有表現と、前記共有関数と、前記１つまたは複数の共有パラメータとを記憶することと
を備える方法に従って生成される、メモリ。
【請求項２７】
機械学習のための方法であって、
第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、前記第１のクライアントコンピューティングデバイスに対応する第１のデータセットを送信することと、
ここにおいて、前記第１のデータセットが、複数のクライアントコンピューティングデバイスによって前記管理コンピューティングデバイスに送信される複数のデータセットのうちの１つであり、
ここにおいて、各データセットが記録値のセットに対応し、および
ここにおいて、各データセットがオブジェクトを備える、
前記第１のクライアントコンピューティングデバイスによって、前記第１のデータセットについてのオブジェクトの第１のサブセットと、前記第１のデータセットについての第１の部分表現とを受信することと、ここにおいて、オブジェクトの前記第１のサブセットが、前記複数のデータセットの共有表現を形成することの一部である前記第１のデータセットの前記オブジェクトのサブセットであり、前記共有表現が、１つまたは複数の共有パラメータを有する共有関数によって定義され、前記第１のデータセットの前記部分表現が、オブジェクトの前記第１のサブセットと、前記共有表現とに基づく、
前記第１のクライアントコンピューティングデバイスによって、前記第１のデータセットに対応する予測値の第１のセットを決定することと、ここにおいて、予測値の前記第１のセットが、前記第１のデータセットに対応する前記第１の部分表現と、１つまたは複数の第１の個別パラメータをもつ第１の個別関数とに基づく、
前記第１のクライアントコンピューティングデバイスによって、前記第１のデータセットについての第１の個別損失関数と、前記第１のデータセットに対応する予測値の前記第１のセットと、オブジェクトの前記第１のサブセットと、前記第１のデータセットに対応する記録値の前記セット中の非空エントリとに基づいて、前記第１のデータセットについての第１の誤差を決定することと、
前記第１のクライアントコンピューティングデバイスによって、前記第１のデータセットについての前記１つまたは複数の第１の個別パラメータを更新することと、
前記第１のクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、前記１つまたは複数のフィードバック値が、予測値の前記第１のセットの改善に対応する前記第１の部分表現の変化を決定するために使用される、
前記第１のクライアントコンピューティングデバイスによって前記管理コンピューティングデバイスに、前記１つまたは複数のフィードバック値を送信することと
を備え、
ここにおいて、前記１つまたは複数のフィードバック値が、１つまたは複数のアグリゲートされたフィードバック値を決定するために前記複数のクライアントコンピューティングデバイスからのオブジェクトのサブセットとともに前記管理コンピューティングデバイスによって使用可能であり、および
ここにおいて、前記１つまたは複数のアグリゲートされたフィードバック値が、前記１つまたは複数の共有パラメータを更新するために前記管理コンピューティングデバイスによって使用可能である、
方法。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]本明細書で別段に規定されていない限り、このセクションで説明される資料は、本出願の特許請求の範囲に対する従来技術ではなく、このセクションに包含することによって従来技術であるとは認められない。
【０００２】
[0002]機械学習は、分析モデルの構築を自動化しようとするコンピュータサイエンスの部門である。機械学習では、データセットを使用して「学習」するモデルを作成するためにアルゴリズムが使用される。「教示」されると、機械学習されたモデルは、将来のデータセットを含む、他のデータセットに関する予測を行うために使用され得る。機械学習は、様々な分野においてモデルを開発するのに有用であることが証明されている。たとえば、機械学習は、コンピュータビジョン、統計学、データ分析、バイオインフォマティクス、デオキシリボース核酸（ＤＮＡ）配列識別、マーケティング、言語学、経済学、広告、音声認識、ゲーミングなどに適用されている。
【０００３】
[0003]機械学習は、「トレーニングデータ」と通常呼ばれる、データのセット上でモデルをトレーニングすることを伴う。モデルをトレーニングすることは、教師あり学習および教師なし学習という、２つの主要なサブクラスを含み得る。
【０００４】
[0004]教師あり学習では、トレーニングデータは、結果が知られている複数のデータセットを含み得る。たとえば、画像認識の領域におけるトレーニングデータは、特定のタイプのオブジェクト（たとえば、犬、鉛筆、車など）を含んでいるように（たとえば、人間によって）ラベリングされたいくつかのオブジェクトを示す画像に対応し得る。そのようなトレーニングデータは「ラベル付きトレーニングデータ」と呼ばれることがある。
【０００５】
[0005]教師なし学習では、トレーニングデータは、必ずしも知られている値または結果に対応するとは限らないことがある。そのようなものとして、トレーニングデータは「ラベルなし」であり得る。各トレーニングデータの結果が知られていないので、機械学習アルゴリズムは、トレーニングデータから関数を推論し得る。例として、関数は、トレーニングデータ内の１つまたは複数の次元に基づいて重み付けされ得る。さらに、関数は、モデルが適用される新しいデータに関して予測を行うために使用され得る。
【０００６】
[0006]トレーニングデータを使用してモデルをトレーニングすると、モデルを使用して予測が行われ得る。所与のモデルをトレーニングするために使用されるトレーニングデータがより多いほど、モデルはより改良され得、モデルはより正確になり得る。機械学習における通例の最適化は、最も少ない量のトレーニングデータへのアクセスを有しながら、最もロバストで信頼できるモデルを取得することを含む。
【０００７】
[0007]いくつかの場合には、トレーニングデータの追加のソースは、より良くトレーニングされた機械学習モデルを提供し得る。しかしながら、いくつかのシナリオでは、より多くのトレーニングデータを達成することが可能でないことがある。たとえば、２つの会社が、機械学習モデルをトレーニングするためにまとめて使用され得るトレーニングデータのそれぞれのセットを所有することがあり、この機械学習モデルは、個々に利用されるいずれかのトレーニングデータのセット上でトレーニングされたモデルよりも優れている。しかしながら、各会社は、それらのデータが秘密のままであることを望むことがある（たとえば、各会社はプライベートデータを他の会社に見せることを希望しない）。
【発明の概要】
【０００８】
[0008]本明細書および図面は、セキュアなブローカーによって媒介されるデータ分析および予測に関する実施形態を開示する。
【０００９】
[0009]本開示では、複数の当事者の間でプライベート情報を見せることなしに複数の当事者からの複数のデータセットを使用して共同機械学習を実施するための方法について説明する。そのような方法は、管理コンピューティングデバイスにそれぞれのデータセットを送信する複数のクライアントコンピューティングデバイスを含み得る。管理コンピューティングデバイスは、次いで、データセットを組み合わせ、組み合わされたデータセット上で機械学習アルゴリズムの一部分を実施し、次いで、機械学習アルゴリズムの結果の一部分をクライアントコンピューティングデバイスの各々に返信し得る。各クライアントコンピューティングデバイスは、次いで、機械学習アルゴリズムの別の部分を実施し、結果のそれの部分を管理コンピューティングデバイスに送り返し得る。各クライアントコンピューティングデバイスから受信された結果に基づいて、管理コンピューティングデバイスは、次いで、対応する機械学習モデルを更新するために、機械学習アルゴリズムの追加の部分を実施し得る。いくつかの場合には、本方法は、最適化タイプもしくは再帰タイプ方式で複数回行われ得、および／または継続ベース上で行われ得る。
【００１０】
[0010]第１の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。またさらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。さらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。なおさらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定され、ここにおいて、１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法はまた、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。
【００１１】
[0011]第２の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応し、ここにおいて、各データセットは、複数の化学的化合物をそれらの化学的化合物の複数の記述子に関係付ける。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。なおさらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。それぞれのデータセットに対応する記録値のセットは、複数の化学的化合物を複数の生物学的アッセイにおけるそれらの化学的化合物の活動性に関係付ける。さらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定される。１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法は、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することをさらに含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数の化学的化合物の中で１つまたは複数の有効な治療化合物を識別するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【００１２】
[0012]第３の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応し、ここにおいて、各データセットは、複数の患者をそれらの患者の複数の記述子に関係付ける。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。なおさらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。それぞれのデータセットに対応する記録値のセットは、複数の患者を患者の臨床診断に関係付ける。さらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定される。１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法は、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することをさらに含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数の患者のうちの１人または複数を診断するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【００１３】
[0013]第４の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応し、ここにおいて、各データセットは、複数のユーザによる複数の書籍タイトルについての書籍レーティングのセットを提供する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。なおさらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。それぞれのデータセットに対応する記録値のセットは、複数のユーザによる複数のムービータイトルについてのムービーレーティングのセットを提供する。さらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定される。１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法は、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することをさらに含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数のユーザのうちの１人または複数にムービーを推奨するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【００１４】
[0014]第５の態様では、本開示では方法について説明する。本方法は、第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、第１のクライアントコンピューティングデバイスに対応する第１のデータセットを送信することを含む。第１のデータセットは、複数のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの１つである。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、第１のクライアントコンピューティングデバイスによって、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とを受信することを含む。第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することによって決定される。第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とはまた、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することによって決定される。さらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することによって決定される。なおさらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することによって決定される。またさらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することによって決定される。なおさらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、第１のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第１のデータセットについてオブジェクトの第１のサブリストを決定することによって決定される。またさらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、オブジェクトの第１のサブリストと、共有表現とに基づいて、第１のデータセットについて第１の部分表現を決定することによって決定される。なおさらに、本方法は、第１のクライアントコンピューティングデバイスによって、第１のデータセットに対応する予測値の第１のセットを決定することを含む。予測値の第１のセットは、第１のデータセットに対応する第１の部分表現と、１つまたは複数の第１の個別パラメータをもつ第１の個別関数とに基づく。さらに、本方法は、第１のクライアントコンピューティングデバイスによって、第１のデータセットについての第１の個別損失関数と、第１のデータセットに対応する予測値の第１のセットと、オブジェクトの第１のサブリストと、第１のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第１のデータセットについての第１の誤差を決定することを含む。またさらに、本方法は、第１のクライアントコンピューティングデバイスによって、第１のデータセットについての１つまたは複数の第１の個別パラメータを更新することを含む。またさらに、本方法は、第１のクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することを含む。１つまたは複数のフィードバック値は、予測値の第１のセットの改善に対応する第１の部分表現の変化を決定するために使用される。しかもなおさらに、本方法は、第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、１つまたは複数のフィードバック値を送信することを含む。１つまたは複数のフィードバック値は、１つまたは複数のアグリゲートされたフィードバック値を決定するために複数のクライアントコンピューティングデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能である。１つまたは複数のアグリゲートされたフィードバック値は、１つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
【００１５】
[0015]第６の態様では、本開示では、命令がその上に記憶された非一時的コンピュータ可読媒体について説明する。命令は、方法を実施するようにプロセッサによって実行可能である。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。またさらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。さらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。なおさらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定され、ここにおいて、１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法はまた、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。
【００１６】
[0016]第７の態様では、本開示では、モデルがその上に記憶されたメモリについて説明する。モデルは、方法に従って生成される。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。またさらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。さらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。なおさらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定され、ここにおいて、１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法はまた、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、メモリ上に、共有表現と、共有関数と、１つまたは複数の共有パラメータとを記憶することを含む。
【００１７】
[0017]第８の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。またさらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。さらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。なおさらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定され、ここにおいて、１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法はまた、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。またなおさらに、本方法は、コンピューティングデバイスによって、データセットに対応する予測値の追加のセットを決定するために、共有表現、共有関数、あるいは１つまたは複数の共有パラメータを使用することを含む。
【００１８】
[0018]第９の態様では、本開示ではサーバデバイスについて説明する。サーバデバイスは、プロセッサによって実行されたとき、方法を実施する命令をその上に記憶している。本方法は、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、識別子の複合リストから識別子のサブセットを選択することを含む。またさらに、本方法は、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することを含む。本方法は、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することをさらに含む。なおさらに、本方法は、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またさらに、本方法は、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。しかもなおさらに、本方法は、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。さらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。さらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定される。１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。なおまたさらに、本方法は、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもまたさらに、本方法は、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。
【００１９】
[0019]第１０の態様では、本開示ではサーバデバイスについて説明する。サーバデバイスは、プロセッサによって実行されたとき、方法を実施する命令をその上に記憶している。本方法は、管理コンピューティングデバイスに、サーバデバイスに対応する第１のデータセットを送信することを含む。第１のデータセットは、複数のサーバデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの１つである。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とを受信することを含む。第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することによって、管理コンピューティングデバイスによって決定される。第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とはまた、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することによって、管理コンピューティングデバイスによって決定される。さらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することによって、管理コンピューティングデバイスによって決定される。さらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することによって、管理コンピューティングデバイスによって決定される。またさらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することによって、管理コンピューティングデバイスによって決定される。第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、第１のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第１のデータセットについてオブジェクトの第１のサブリストを決定することによって、管理コンピューティングデバイスによってさらに決定される。またさらに、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とは、管理コンピューティングデバイスによって、オブジェクトの第１のサブリストと、共有表現とに基づいて、第１のデータセットについて第１の部分表現を決定することによって、管理コンピューティングデバイスによって決定される。さらに、本方法は、第１のデータセットに対応する予測値の第１のセットを決定することを含む。予測値の第１のセットは、第１のデータセットに対応する第１の部分表現と、１つまたは複数の第１の個別パラメータをもつ第１の個別関数とに基づく。さらに、本方法は、第１のデータセットについての第１の個別損失関数と、第１のデータセットに対応する予測値の第１のセットと、オブジェクトの第１のサブリストと、第１のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第１のデータセットについての第１の誤差を決定することを含む。なおさらに、本方法は、第１のデータセットについての１つまたは複数の第１の個別パラメータを更新することを含む。本方法は、１つまたは複数のフィードバック値を決定することをさらに含む。１つまたは複数のフィードバック値は、予測値の第１のセットの改善に対応する第１の部分表現の変化を決定するために使用される。またさらに、本方法は、管理コンピューティングデバイスに、１つまたは複数のフィードバック値を送信することを含む。１つまたは複数のフィードバック値は、１つまたは複数のアグリゲートされたフィードバック値を決定するために複数のサーバデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能である。１つまたは複数のアグリゲートされたフィードバック値は、１つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
【００２０】
[0020]第１１の態様では、本開示ではシステムについて説明する。本システムはサーバデバイスを含む。本システムはまた、サーバデバイスにそれぞれ通信可能に結合された複数のクライアントデバイスを含む。サーバデバイスは、プロセッサによって実行されたとき、第１の方法を実施する命令をその上に記憶している。第１の方法は、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントデバイスのうちのそれぞれのクライアントデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。第１の方法はまた、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、第１の方法は、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、第１の方法は、識別子の複合リストから識別子のサブセットを選択することを含む。第１の方法は、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。第１の方法は、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することをさらに含む。またさらに、第１の方法は、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またさらに、第１の方法は、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおさらに、第１の方法は、クライアントデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。各クライアントデバイスは、プロセッサによって実行されたとき、第２の方法を実施する命令をその上に記憶している。第２の方法は、それぞれのデータセットに対応する予測値のセットを決定することを含む。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。第２の方法はまた、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することを含む。さらに、第２の方法は、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することを含む。第２の方法は、１つまたは複数のフィードバック値を決定することをさらに含む。１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。第２の方法は、サーバデバイスに、１つまたは複数のフィードバック値を送信することをさらに含む。またなおさらに、第１の方法は、オブジェクトのサブリストと、クライアントデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもまたさらに、第１の方法は、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。
【００２１】
[0021]第１２の態様では、本開示は、最適化されたモデルについて説明する。モデルは、方法に従って最適化される。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することをさらに含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。さらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから１つまたは複数のフィードバック値を受信することを含む。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく。１つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。さらに、１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。１つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによってさらに決定される。１つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。なおまたさらに、本方法は、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することを含む。またなおさらに一層、本方法は、管理コンピューティングデバイスによって、共有関数と、１つまたは複数の更新された共有パラメータとに基づいて、データセットの更新された共有表現を計算することを含む。更新された共有表現は、最適化されたモデルに対応する。
【００２２】
[0022]第１３の態様では、本開示では、管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのセットを決定することと、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのセットのサブセットを決定することと、管理コンピューティングデバイスによって、一意のオブジェクトのセットのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブセットを決定することと、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブセットと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、管理コンピューティングデバイスによって、１つまたは複数のフィードバック値を収集することと、ここにおいて、１つまたは複数のフィードバック値の各々が、それぞれのデータセットについての記録値のセットと比較された予測値のセットの改善に対応する部分表現の変化として決定される、管理コンピューティングデバイスによって、オブジェクトのサブセットと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することとを備える、機械学習のための方法について説明する。
【００２３】
[0023]第１４の態様では、本開示は、機械学習のための方法であって、第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、第１のクライアントコンピューティングデバイスに対応する第１のデータセットを送信することと、ここにおいて、第１のデータセットが、複数のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの１つであり、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、第１のクライアントコンピューティングデバイスによって、第１のデータセットについてのオブジェクトの第１のサブセットと、第１のデータセットについての第１の部分表現とを受信することと、ここにおいて、オブジェクトの第１のサブセットが、複数のデータセットの共有表現を形成することの一部である第１のデータセットのオブジェクトのサブセットであり、共有表現が、１つまたは複数の共有パラメータを有する共有関数によって定義され、第１のデータセットについての部分表現が、オブジェクトの第１のサブセットと、共有表現とに基づく、第１のクライアントコンピューティングデバイスによって、第１のデータセットに対応する予測値の第１のセットを決定することと、ここにおいて、予測値の第１のセットが、第１のデータセットに対応する第１の部分表現と、１つまたは複数の第１の個別パラメータをもつ第１の個別関数とに基づく、第１のクライアントコンピューティングデバイスによって、第１のデータセットについての第１の個別損失関数と、第１のデータセットに対応する予測値の第１のセットと、オブジェクトの第１のサブセットと、第１のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第１のデータセットについての第１の誤差を決定することと、第１のクライアントコンピューティングデバイスによって、第１のデータセットについての１つまたは複数の第１の個別パラメータを更新することと、第１のクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値の第１のセットの改善に対応する第１の部分表現の変化を決定するために使用される、第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、１つまたは複数のフィードバック値を送信することとを備え、ここにおいて、１つまたは複数のフィードバック値が、１つまたは複数のアグリゲートされたフィードバック値を決定するために複数のクライアントコンピューティングデバイスからのオブジェクトのサブセットとともに管理コンピューティングデバイスによって使用可能であり、およびここにおいて、１つまたは複数のアグリゲートされたフィードバック値が、１つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である、方法について説明する。
【００２４】
[0024]上記の態様のうちの１つまたは複数によれば、複数のデータセットに基づく機械学習が行われる。これは、ロバストで信頼できる機械学習モデルが形成され得るように、トレーニングデータを取得するために複数のソースが使用され得ることを暗示する。本態様のうちの少なくともいくつかによる機械学習は、あるソースから別のソースにデータが散逸することなしに、複数のソースからデータセットが提供されることを可能にする。したがって、クライアントコンピューティングデバイスはモデルをトレーニングするためにプライベートデータに関係するデータセットを提供し得るが、機械学習は、機械学習に対するデータセットを同じく提供している競合者など、無認可の当事者にプライベートデータが共有されないようにセットアップされ得る。
【００２５】
[0025]共有表現は、それぞれのクライアントコンピューティングデバイスからの複数のデータセットに基づいて決定される。したがって、データセットについての共有表現が形成され得、この共有表現は、複数のデータセットの各々についてモデルを形成することに寄与し得る。共有表現は、データセット中でオブジェクトと特徴との間の関係を表すために複数のデータセットについて共有される共有関数に基づき得る。したがって、共有関数は、複数のデータセットに基づいて決定され得、ロバストで信頼できる方式で共有関数が決定されることが可能になる。さらに、部分表現が決定されるおかげで、共有表現を形成することへの各データセットの寄与が抽出され得る。したがって、クライアントコンピューティングデバイスは、それぞれのクライアントコンピューティングデバイスによって提供されるデータセットに関係する部分表現のみを受信し得る。これは、クライアントコンピューティングデバイスが、（たとえば、クライアントコンピューティングデバイスのデータセット中に存在しない特徴に関係する）クライアントコンピューティングデバイスによって提供されるデータセットから推論できないオブジェクトと特徴との間の関係のどんな情報も受信しないように、クライアントコンピューティングデバイスが完全な共有表現の情報を受信しないが、クライアントコンピューティングデバイスが、共有関数のロバストなモデルを形成するのに複数のデータセットの使用から恩恵を受け得ることを暗示する。
【００２６】
[0026]したがって、管理コンピューティングデバイスにデータセットを提供するクライアントコンピューティングデバイスは、機密データを他のクライアントコンピューティングデバイスと共有しない。実際には、クライアントコンピューティングデバイスは、データセットが符号化フォーマットで提供され得るように、機密情報からデータセットを剥ぎ取りさえし得る。データセットは、オブジェクトと特徴との間の関係の情報を提供し得るが、管理コンピューティングデバイスは、オブジェクトと特徴とがどんな物理的性質を表すかを知らないことがある。セキュアな機械学習方法から恩恵を受けることを望む会社は、管理コンピューティングデバイスが、オブジェクトと特徴とがどんな物理的性質を表すかを知ることなしに共有表現を決定することを可能にする共通フォーマットをデータセットが有するように、データセットが提供されるフォーマットに関して（秘密の）同意を有し得る。
【００２７】
[0027]したがって、上記で記述されたように、共有表現を決定するための管理コンピューティングデバイスの使用により、クライアントコンピューティングデバイスは、機密データを損なうことなしにデータセットを提供することが可能になる。したがって、機械学習方法の実装は、クライアントコンピューティングデバイスのホストの能力内に極めて十分にあり得るが、データセットは、大きいセットのトレーニングデータから恩恵を受けるために、共有表現を計算するためにクライアントコンピューティングデバイスから管理コンピューティングデバイスに提供され得る。
【００２８】
[0028]しかしながら、いくつかの実施形態では、クライアントコンピューティングデバイスのホストは、機械学習方法を実装するための能力またはリソースを有しないことがあることも了解されたい。したがって、管理コンピューティングデバイスは、オブジェクトと特徴との間の関係を予測するための機械学習モデルを作成する可能性を提供するために使用され得、ここで、クライアントコンピューティングデバイスは、通常ならばそのような予測を行うことが不可能であろう。そのような場合、データの機密性はあまり重要でないことがあり、管理コンピューティングデバイスは、それぞれのデータセットに対応する１つまたは複数の個別パラメータを用いて個別関数を生成するように構成され得る。したがって、管理コンピューティングデバイスは、共有関数の１つまたは複数の共有パラメータを生じ得るだけでなく、それぞれのデータセットに対応する個別関数をも生じ得る。
【００２９】
[0029]たとえば、クライアントコンピューティングデバイスはオンライン店舗に関係し得、ここにおいて、店舗は、機械学習方法に基づいて商品に関する提案をユーザに提供することを希望する。管理コンピューティングデバイスは、したがって、共有関数のロバストな決定を行うために複数のクライアントコンピューティングデバイスのデータセットを使用し得る。しかしながら、クライアントコンピューティングデバイスは、それらのデータセットの情報を完全に共有することを希望するとは限らないことがある。したがって、管理コンピューティングデバイスは、各クライアントコンピューティングデバイスが共有関数を形成することにおいて複数のデータセットから恩恵を受けるように、それぞれのデータセットについて個別関数を生じ得るが、管理コンピューティングデバイスはすべてのデータセットのデータへのアクセスを有するにもかかわらず、それぞれのクライアントコンピューティングデバイスのデータセットの寄与に基づいてそれぞれのクライアントコンピューティングデバイスのために形成される個別関数が依然としてある。
【００３０】
[0030]したがって、上記で記述されたように、管理コンピューティングデバイスによって、１つまたは複数のフィードバック値を収集することは、管理コンピューティングデバイスがクライアントコンピューティングデバイスに情報を送信することと、クライアントコンピューティングデバイスが１つまたは複数のフィードバック値を決定することとによって達成され得る。しかしながら、代替として、１つまたは複数のフィードバック値は、管理コンピューティングデバイスが、それぞれのデータセットの部分表現にそれぞれのデータセットについての個別関数を適用することによって収集され得る。
【００３１】
[0031]一実施形態によれば、各データセットは、複数の次元においてオブジェクトを備え、データセットの各々についての複数の次元のうちの少なくとも１つにおけるオブジェクトは、同じタイプである。これは、管理コンピューティングデバイスが共有表現を形成するためにオブジェクト間の共有関係を容易に決定し得るように、データセットが、対応する情報を備えることを暗示する。しかしながら、共有表現を生じるために管理コンピューティングデバイスによって異なるオブジェクトタイプがなお使用され得ることを了解されたい。いくつかの実施形態では、異なるオブジェクトタイプを使用することは、異なるオブジェクトタイプに対応する値を正規化することを含み得る。
【００３２】
[0032]一実施形態によれば、各データセットの識別子のそれぞれのリストは、各データセットについてのオブジェクトのセットに対応し、ここにおいて、複数のデータセットについての識別子は、共通のシンタックスに従って定義される。これは、管理コンピューティングデバイスが同一のオブジェクトについて同一の識別子を決定し得るように、それぞれのデータセットについての識別子が同じ仕方で決定されることを暗示し得る。これは、識別子の合成リストが形成され得、ここにおいて一意のオブジェクトが容易に識別され得るように、管理コンピューティングデバイスが同一のオブジェクトについて同一の識別子を容易に形成し得ることを保証し得る。管理コンピューティングデバイスは、クライアントコンピューティングデバイスが所望のフォーマットでデータセットを提供することを保証するために、共通シンタックスに関する情報をクライアントコンピューティングデバイスに提供し得る。しかしながら、代替形態によれば、クライアントコンピューティングデバイスは、管理コンピューティングデバイスなしに共通シンタックスに関して同意し得る。これは、クライアントコンピューティングデバイスが、オブジェクトと特徴とがどんな物理的性質を表すかの情報を提供しないフォーマットでデータセットを提供し得るが、クライアントコンピューティングデバイスが、管理コンピューティングデバイスが共有表現を依然として決定することを可能にする共通の方式でデータセットが提供されることを保証し得ることを暗示する。
【００３３】
[0033]クライアントコンピューティングデバイスは、共有パラメータを改善するためのフィードバック値を決定するようにセットアップされ得る。共有表現は複数のデータセットに基づくので、クライアントコンピューティングデバイスの部分表現は、記録値が存在しないオブジェクトについての値を予測し得る。したがって、クライアントコンピューティングデバイスは、予測値がさらなるエントリのために利用可能であり得るが、データセットについての誤差を決定するために記録値のセット中の非空エントリのみを考慮に入れるように構成され得る。
【００３４】
[0034]管理コンピューティングデバイスは、クライアントコンピューティングデバイスが、クライアントコンピューティングデバイスによって提供されるデータに適用されるモデル情報のみを受信することを保証するために、クライアントコンピューティングデバイスに部分表現を送信するように構成され得る。しかしながら、いくつかの実施形態では、データセット中のデータの秘密性が大きく重要でないことがあり、クライアントコンピューティングデバイスがデータを快く共有することがあることを了解されたい。そのような場合、管理コンピューティングデバイスは、部分表現がクライアントコンピューティングデバイスにおいて決定され得るように、および部分表現を決定するためのデータの処理がクライアントコンピューティングデバイスに分散され得るように、共有表現をクライアントコンピューティングデバイスの各々に送信するように構成され得る。これは、特に多数のクライアントコンピューティングデバイスが共有表現のデータセットを提供している場合は、部分表現を決定することが、部分表現を並列に決定し得る複数のクライアントコンピューティングデバイスに分散され得るので、処理の速度が増加され得ることを保証し得る。管理コンピューティングデバイスは、クライアントコンピューティングデバイスがそれぞれの部分表現を決定することを可能にするために、それぞれのクライアントコンピューティングデバイスに、共有表現と、識別子のサブセットと、それぞれのデータセットについての識別子のリストとを送信するように構成され得る。
【００３５】
[0035]このようにして、第１５の態様では、本開示では、管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのセットを決定することと、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのセットのサブセットを決定することと、管理コンピューティングデバイスによって、一意のオブジェクトのセットのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、共有表現と、識別子のサブセットと、それぞれのデータセットについての識別子のリストとを送信することと、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値の各々が、それぞれのデータセットについての記録値のセットと比較された予測値のセットの改善に対応する部分表現の変化として決定される、管理コンピューティングデバイスによって、オブジェクトのサブセットと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することとを備える、機械学習のための方法について説明する。
【００３６】
[0036]上記の概要は例示的なものにすぎず、いかなる仕方でも限定的なものとなるものではない。上記で説明された例示的な態様、実施形態、および特徴に加えて、さらなる態様、実施形態、および特徴が、図および以下の詳細な説明を参照することによって明らかになろう。
【図面の簡単な説明】
【００３７】
【図１】[0037]例示的な実施形態による、クライアントサーバコンピューティングシステムの高レベル図。
【図２】[0038]例示的な実施形態による、コンピューティングデバイスの概略図。
【図３】[0039]例示的な実施形態による、ネットワーク化サーバクラスタの概略図。
【図４Ａ】[0040]例示的な実施形態による、クライアントコンピューティングデバイスと管理コンピューティングデバイスとを含むネットワークの概略図。
【図４Ｂ】[0041]例示的な実施形態による、方法の一部分のデータフロー図。
【図４Ｃ】[0042]例示的な実施形態による、方法の一部分のデータフロー図。
【図４Ｄ】[0043]例示的な実施形態による、方法の一部分のデータフロー図。
【図４Ｅ】[0044]例示的な実施形態による、方法の一部分のデータフロー図。
【図４Ｆ】[0045]例示的な実施形態による、方法の一部分のデータフロー図。
【図５Ａ】[0046]例示的な実施形態による、データセットと予測値のセットとを示す図。
【図５Ｂ】[0047]例示的な実施形態による、データセットと予測値のセットとを示す図。
【図６Ａ】[0048]例示的な実施形態による、データセットについての識別子のリストを示す図。
【図６Ｂ】[0049]例示的な実施形態による、データセットについての識別子のリストを示す図。
【図７】[0050]例示的な実施形態による、識別子の複合リストを示す図。
【図８】[0051]例示的な実施形態による、一意のオブジェクトのリストを示す図。
【図９】[0052]例示的な実施形態による、識別子のサブセットを示す図。
【図１０】[0053]例示的な実施形態による、一意のオブジェクトのリストのサブセットを示す図。
【図１１】[0054]例示的な実施形態による、共有表現を示す図。
【図１２Ａ】[0055]例示的な実施形態による、データセットについてのオブジェクトのサブリストを示す図。
【図１２Ｂ】[0056]例示的な実施形態による、データセットについてのオブジェクトのサブリストを示す図。
【図１３Ａ】[0057]例示的な実施形態による、部分表現を示す図。
【図１３Ｂ】[0058]例示的な実施形態による、部分表現を示す図。
【図１４Ａ】[0059]例示的な実施形態による、個別関数を示す図。
【図１４Ｂ】[0060]例示的な実施形態による、個別関数を示す図。
【図１５Ａ】[0061]例示的な実施形態による、予測値のセットを示す図。
【図１５Ｂ】[0062]例示的な実施形態による、予測値のセットを示す図。
【図１６Ａ】[0063]例示的な実施形態による、データセットと記録値のセットとを示す図。
【図１６Ｂ】[0064]例示的な実施形態による、データセットと記録値のセットとを示す図。
【図１６Ｃ】[0065]例示的な実施形態による、データセットと記録値のセットとを示す図。
【図１７Ａ】[0066]例示的な実施形態による、行列分解アルゴリズムを示す図。
【図１７Ｂ】[0067]例示的な実施形態による、行列分解アルゴリズムを示す図。
【図１８Ａ】[0068]例示的な実施形態による、データセットと予測値のセットとを示す図。
【図１８Ｂ】[0069]例示的な実施形態による、データセットと予測値のセットとを示す図。
【図１９Ａ】[0070]例示的な実施形態による、データセットについての識別子のリストを示す図。
【図１９Ｂ】[0071]例示的な実施形態による、データセットについての識別子のリストを示す図。
【図２０】[0072]例示的な実施形態による、識別子の複合リストを示す図。
【図２１】[0073]例示的な実施形態による、一意のオブジェクトのリストを示す図。
【図２２】[0074]例示的な実施形態による、識別子のサブセットを示す図。
【図２３】[0075]例示的な実施形態による、一意のオブジェクトのリストのサブセットを示す図。
【図２４】[0076]例示的な実施形態による、共有表現を示す図。
【図２５Ａ】[0077]例示的な実施形態による、データセットについてのオブジェクトのサブリストを示す図。
【図２５Ｂ】[0078]例示的な実施形態による、データセットについてのオブジェクトのサブリストを示す図。
【図２６Ａ】[0079]例示的な実施形態による、部分表現を示す図。
【図２６Ｂ】[0080]例示的な実施形態による、部分表現を示す図。
【図２７Ａ】[0081]例示的な実施形態による、個別関数を示す図。
【図２７Ｂ】[0082]例示的な実施形態による、個別関数を示す図。
【００３８】
[0083]
【発明を実施するための形態】
【００３９】
[0084]例示的な方法およびシステムについて本明細書で説明される。本明細書で説明されるいかなる例示的な実施形態または特徴も、必ずしも他の実施形態または特徴よりも好ましいまたは有利であると解釈されるべきであるとは限らない。本明細書で使用される例示的な実施形態は限定的なものとなるものではない。開示されるシステムおよび方法のいくつかの態様は、本明細書でそれらのすべてが企図される、多種多様な異なる構成で配置され、組み合わされることが可能であることが容易に理解されよう。
【００４０】
[0085]さらに、図に示されている特定の配置は限定的なものと見なされるべきではない。他の実施形態は、所与の図に示されている各要素のより多いまたはより少ないものを含み得ることを理解されたい。さらに、図示されている要素のうちのいくつかは組み合わされるかまたは省略され得る。同様に、例示的な実施形態は、図に示されていない要素を含み得る。
【００４１】
Ｉ．概観
[0086]例示的な実施形態は、セキュアなブローカーによって媒介されるデータ分析および予測に関する。セキュアなブローカーによって媒介されるデータ分析および予測は、ある当事者のプライベートデータを別の当事者に見せることなしに複数の当事者からのプライベートデータを使用して機械学習モデル（たとえば、人工ニューラルネットワーク）を開発するために使用され得る。本明細書で説明される例示的な一実施形態は方法に関係する。
【００４２】
[0087]本方法は、管理コンピューティングデバイス（たとえば、サーバ）が、複数のクライアントコンピューティングデバイスにデータを送信することおよびそれらからデータを受信することを含み得る。データは、機械学習モデルを開発するために、複数のクライアントコンピューティングデバイスに送信され、およびそれらから受信され得る。たとえば、管理コンピューティングデバイスは、複数のクライアントコンピューティングデバイスから複数のデータセットを受信し得る。その後、管理コンピューティングデバイスは、（たとえば、初期パラメータをもつ関数に基づいて）機械学習モデルの初期バージョンを確立するためにこれらのデータセットを使用し得る。
【００４３】
[0088]次いで、管理コンピューティングデバイスは、機械学習モデルの初期バージョンの異なる部分を異なるクライアントコンピューティングデバイスに送信し得る。いくつかの実施形態では、管理コンピューティングデバイスは、モデル全体、ならびにそれぞれのクライアントコンピューティングデバイスのデータセットにどの部分が対応するかの指標をクライアントコンピューティングデバイスに送り得る。その後、それぞれのクライアントコンピューティングデバイスは、モデル全体からモデルの適切な部分を抽出し得る。それぞれのクライアントコンピューティングデバイスに対応する機械学習モデルの一部分を受信／抽出すると、各クライアントコンピューティングデバイスは、それぞれのクライアントコンピューティングデバイス内に記憶されたローカル機械学習モデルを更新し得る。次いで、各クライアントコンピューティングデバイスは、予測を行う（たとえば、予測値または期待値のセットを計算する）ために、更新されたローカル機械学習モデルを使用し得る。
【００４４】
[0089]予測を行うと、それぞれのクライアントコンピューティングデバイスは、予測を、クライアントコンピューティングデバイス内に記憶された記録値のセットと比較し得る。比較に基づいて、クライアントコンピューティングデバイスは、予測に関する１つまたは複数の誤差（したがって、予測がそれに基づく更新されたローカル機械学習モデルに関する１つまたは複数の誤差）を決定し得る。いくつかの実施形態では、そのような誤差は、損失関数を使用して計算され得る。誤差と、それぞれのクライアントコンピューティングデバイスに対応する機械学習モデル全体の部分とに基づいて、クライアントコンピューティングデバイスは、機械学習モデル全体のそれぞれの部分に誤差があることを示す１つまたは複数のフィードバック値を管理コンピューティングデバイスに送信し得る。同様のフィードバックは、１つ、複数、またはすべてのクライアントコンピューティングデバイスによって管理コンピューティングデバイスに提供され得る。
【００４５】
[0090]クライアントコンピューティングデバイスからフィードバックを受信すると、管理コンピューティングデバイスは、次いで、フィードバックに基づいて（たとえば、関数およびパラメータを含む）機械学習モデル全体を更新し得る。そのようなシナリオでは、機械学習モデル全体が改善および／または改良され得る。クライアントコンピューティングデバイスにモデルの部分を送信し、クライアントコンピューティングデバイスに、モデルの部分に基づいて予測を行わせ、予測を評価させ、次いで、クライアントコンピューティングデバイスからフィードバックを受信するという、上記で概説されたステップは、機械学習モデル全体が改善されることがもはや不可能になるまで（たとえば、各クライアントコンピューティングデバイスによって行われる予測が誤差を有しなくなるまで）、または各イタレーション間の改善が改善のしきい値を下回るまで（たとえば、各クライアントコンピューティングデバイスによって行われる予測の誤差が、あるイタレーションから次のイタレーションまで実質的に変化しなくなるまで）、複数のイタレーションにわたって繰り返され得る。
【００４６】
[0091]機械学習モデル全体のトレーニングが完了すると（たとえば、後続のイタレーション間の改善がしきい値を下回ると）、機械学習モデルは、予測または推奨を行うために使用され得る。たとえば、管理コンピューティングデバイスは、将来のイベントに基づいて予測を行うために機械学習モデルを利用し得る。追加または代替として、モデルがトレーニングされると、機械学習モデル全体（またはそれの部分）が、管理コンピューティングデバイスによってクライアントコンピューティングデバイスのうちの１つまたは複数に送信され得る。この時点で、１つまたは複数のクライアントコンピューティングデバイスのうちの少なくとも１つは、予測または推奨を行う（たとえば、機械学習モデルに基づいてそれのユーザのうちの１人に書籍を推奨する）ためにモデルを利用し得る。またさらに、モデルは、機械学習モデルのトレーニングに使用されるデータを提供しなかった１つまたは複数のサードパーティにも送信され得る。そのようなサードパーティは、料金を支払うこと、サブスクリプションサービスに加入すること、広告を閲覧すること、あるいは機械学習モデルを閲覧および／または利用することが可能になる前に確認証明を用いてログインすることを要求され得る。さらに、サードパーティは、それら自体のデータ（たとえば、機械学習モデルのトレーニングにおいて管理コンピューティングデバイスに提供されるデータ以外のデータ）に基づいて予測または推奨を行うために機械学習モデルを利用し得る。
【００４７】
ＩＩ．例示的なシステム
[0092]以下の説明および添付の図面で、様々な例示的な実施形態の特徴を明らかにする。提供される実施形態は例としてであり、限定的なものとなるものではない。したがって、図面の寸法は必ずしも一定の縮尺であるとは限らない。
【００４８】
[0093]図１は、本明細書で説明される実施形態のうちの１つまたは複数を行うための例示的な通信システム１００を示す。通信システム１００はコンピューティングデバイスを含み得る。本明細書で説明される「コンピューティングデバイス」は、クライアントデバイス、サーバデバイス（たとえば、スタンドアロンサーバコンピュータまたはサーバ機器のネットワーク化クラスタ）、あるいは何らかの他のタイプの計算プラットフォームのいずれかを指し得る。
【００４９】
[0094]クライアントデバイス１０２は、本明細書で説明される実施形態に従ってサーバデバイス１０４にデータ１０６を送信しおよび／またはそれからデータ１０８を受信するように構成された、パーソナルコンピュータ、ラップトップコンピュータ、ウェアラブルコンピューティングデバイス、ワイヤレスコンピューティングデバイス、頭部装着可能なコンピューティングデバイス、携帯電話、またはタブレットコンピューティングデバイスなどを含む任意のタイプのデバイスであり得る。たとえば、図１では、クライアントデバイス１０２は、１つまたは複数のワイヤラインまたはワイヤレスインターフェースを介してサーバデバイス１０４と通信し得る。いくつかの場合には、クライアントデバイス１０２とサーバデバイス１０４は、ローカルエリアネットワークを介して互いに通信し得る。代替的に、クライアントデバイス１０２とサーバデバイス１０４は、異なるネットワーク内にそれぞれ存在し得、インターネットなどのワイドエリアネットワークを介して通信し得る。いくつかの実施形態では、クライアントデバイス１０２は「クライアントコンピューティングデバイス」に対応し得る。さらに、いくつかの実施形態では、通信システム１００は複数のクライアントデバイス１０２を含み得る。追加または代替として、１つまたは複数の「クライアントコンピューティングデバイス」は、クライアントデバイス１０２よりも、サーバデバイス１０４により類似するコンピューティング構成要素を含み得る。言い換えれば、いくつかの実施形態では、単一のサーバデバイス１０４が単一のクライアントデバイス１０２と通信するのではなく、複数のサーバデバイス１０４が互いに通信し得る。
【００５０】
[0095]クライアントデバイス１０２は、ユーザインターフェースと、通信インターフェースと、メインプロセッサと、データストレージ（たとえば、メモリ）とを含み得る。データストレージは、サーバデバイス１０４に送られるかまたはそれから受信されるデータに関係する１つまたは複数の動作を行うためにメインプロセッサによって実行可能な命令を含んでいることがある。クライアントデバイス１０２のユーザインターフェースは、ボタン、タッチスクリーン、マイクロフォン、および／または入力を受信するための任意の他の要素、ならびにスピーカー、１つもしくは複数のディスプレイ、および／または出力を通信するための任意の他の要素を含み得る。
【００５１】
[0096]サーバデバイス１０４は、本明細書で説明されるサーバ動作を行うように配置された任意のエンティティまたはコンピューティングデバイスであり得る。さらに、サーバデバイス１０４は、クライアントデバイス１０２にデータ１０８を送り、および／またはそれからデータ１０６を受信するように構成され得る。いくつかの実施形態では、サーバデバイス１０４は、「管理コンピューティングデバイス」（たとえば、「ブローカー」）に対応し得る。追加または代替として、いくつかの実施形態では、サーバデバイス１０４は、１つまたは複数の「クライアントコンピューティングデバイス」（たとえば、「データ供給者」）に対応し得る。
【００５２】
[0097]データ１０６およびデータ１０８は様々な形態をとり得る。たとえば、データ１０６および１０８は、１つまたは複数の通信セッションの一部として、それぞれクライアントデバイス１０２またはサーバデバイス１０４によって送信されるパケットを表し得る。そのような通信セッションは、シグナリングプレーン上で送信されるパケット（たとえば、セッションセットアップ、管理、およびティアダウンメッセージ）、ならびに／あるいはメディアプレーン上で送信されるパケット（たとえば、テキスト、グラフィックス、オーディオ、および／またはビデオデータ）を含み得る。
【００５３】
[0098]厳密なアーキテクチャに関係なく、クライアントデバイス１０２、サーバデバイス１０４の動作、ならびに図１のアーキテクチャに関連する任意の他の動作は、１つまたは複数のコンピューティングデバイスによって行われ得る。これらのコンピューティングデバイスは、スタンドアロン方式で、クラウドベースの（ネットワーク化された）コンピューティング環境で、または他の配置で編成され得る。
【００５４】
[0099]図２は、本明細書の実施形態に従って動作するように配置されたコンピューティングデバイス中に含まれ得る機能構成要素のうちのいくつかを示している、コンピューティングデバイス２００を例示する簡略ブロック図である。例示的なコンピューティングデバイス２００は、クライアントデバイス、サーバデバイス、または何らかの他のタイプの計算プラットフォームであり得る。説明の目的で、本明細書では、コンピューティングデバイス２００をサーバデバイス１０４および／またはクライアントデバイス１０２と同等と見なすことが時々ある。とはいえ、コンピューティングデバイス２００についての説明は、本明細書で説明される目的のために使用されるどんな構成要素にも適用され得る。
【００５５】
[00100]この例では、コンピューティングデバイス２００は、システムバス２１０または同様の機構によってそれらのすべてが結合され得る、プロセッサ２０２と、データストレージ２０４と、ネットワークインターフェース２０６と、入出力機能２０８とを含む。プロセッサ２０２は、１つまたは複数の汎用プロセッサおよび／あるいは１つまたは複数の専用プロセッサ（たとえば、特定用途向け集積回路（ＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、ネットワークプロセッサなど）など、１つまたは複数のＣＰＵを含むことができる。
【００５６】
[00101]次に、データストレージ２０４は、揮発性および／または不揮発性データストレージデバイスを含み得、全体的または部分的にプロセッサ２０２と一体化されることが可能である。データストレージ２０４は、本明細書で説明される様々な方法、プロセス、または動作を行うために、プロセッサ２０２によって実行可能なプログラム命令と、そのようなプログラム命令によって操作され得るデータとを保持することができる。代替的に、これらの方法、プロセス、または動作は、ハードウェア、ファームウェア、ならびに／またはハードウェア、ファームウェア、およびソフトウェアの任意の組合せによって定義されることが可能である。例として、データストレージ２０４中のデータは、本明細書または添付の図面において開示される方法、プロセス、または動作のいずれかを行うためにプロセッサ２０２によって実行可能な、非一時的コンピュータ可読媒体上に場合によっては記憶されたプログラム命令を含んでいることがある。データストレージ２０４は、様々な実施形態では、不揮発性メモリ（たとえば、読取り専用メモリ、ＲＯＭ）および／または揮発性メモリ（たとえば、ランダムアクセスメモリ、ＲＡＭ）を含み得る。たとえば、データストレージ２０４は、ハードドライブ（たとえば、ハードディスク）、フラッシュメモリ、ソリッドステートドライブ（ＳＳＤ）、電気消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ（登録商標））、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、および／またはスタティックランダムアクセスメモリ（ＳＲＡＭ）を含み得る。他のタイプの一時的または非一時的データストレージデバイスが可能であり、本開示の範囲内で企図されることが理解されよう。
【００５７】
[00102]ネットワークインターフェース２０６は、イーサネット（登録商標）、トークンリング、またはＴキャリア接続など、ワイヤライン接続の形態をとり得る。ネットワークインターフェース２０６はまた、ＩＥＥＥ８０２．１１（ＷｉＦｉ（登録商標））、ＢＬＵＥＴＯＯＴＨ（登録商標）、ＢＬＵＥＴＯＯＴＨ  ＬＯＷ  ＥＮＥＲＧＹ（ＢＬＥ）（登録商標）、またはワイドエリアワイヤレス接続など、ワイヤレス接続の形態をとり得る。しかしながら、他の形態の物理層接続と、他のタイプの標準またはプロプライエタリ通信プロトコルとがネットワークインターフェース２０６上で使用され得る。さらに、ネットワークインターフェース２０６は複数の物理インターフェースを含み得る。
【００５８】
[00103]入出力機能２０８は、例示的なコンピューティングデバイス２００とのユーザ対話を容易にし得る。入出力機能２０８は、キーボード、マウス、タッチスクリーンなど、複数のタイプの入力デバイスを備え得る。同様に、入出力機能２０８は、スクリーン、モニタ、プリンタ、あるいは１つまたは複数の発光ダイオード（ＬＥＤ）など、複数のタイプの出力デバイスを備え得る。追加または代替として、例示的なコンピューティングデバイス２００は、ネットワークインターフェース２０６を介するか、あるいはユニバーサルシリアルバス（ＵＳＢ）または高解像度マルチメディアインターフェース（ＨＤＭＩ（登録商標））ポートなどの別のインターフェース（図示されず）を介した、別のデバイスからのリモートアクセスをサポートし得る。
【００５９】
[00104]いくつかの実施形態では、１つまたは複数のコンピューティングデバイスは、ネットワーク化されたアーキテクチャにおいて展開され得る。コンピューティングデバイスの厳密な物理的ロケーション、接続性、および構成は、クライアントデバイスに知られないおよび／またはそれにとって重要でないことがある。したがって、コンピューティングデバイスは、様々なリモートロケーションに格納され得る「クラウドベース」デバイスと呼ばれることがある。
【００６０】
[00105]図３は、例示的な一実施形態によるクラウドベースサーバクラスタ３０４を示す。図３では、（コンピューティングデバイス２００によって例示される）サーバデバイス１０４など、サーバデバイスの機能は、ローカルクラスタネットワーク３１２によってそれらのすべてが接続され得る、サーバデバイス３０６と、クラスタデータストレージ３０８と、クラスタルータ３１０との間で分散され得る。サーバクラスタ３０４中のサーバデバイスと、クラスタデータストレージと、クラスタルータとの数は、サーバクラスタ３０４に割り当てられたコンピューティングタスクおよび／またはアプリケーションに依存し得る。
【００６１】
[00106]たとえば、サーバデバイス３０６は、コンピューティングデバイス２００の様々なコンピューティングタスクを実施するように構成されることが可能である。このようにして、コンピューティングタスクは、サーバデバイス３０６のうちの１つまたは複数の間で分散されることが可能である。これらのコンピューティングタスクが並列に実施されることが可能な程度まで、タスクのそのような分散は、これらのタスクを完了し、結果を返すための合計時間を低減し得る。簡潔さの目的で、サーバクラスタ３０４と個々のサーバデバイス３０６の両方が「サーバデバイス」と呼ばれることがある。この名称は、１つまたは複数の別個のサーバデバイスと、データストレージデバイスと、クラスタルータとがサーバデバイス動作に関与し得ることを暗示すると理解されたい。
【００６２】
[00107]クラスタデータストレージ３０８は、ハードディスクドライブのグループへの読取りおよび書込みアクセスを管理するように構成されたディスクアレイコントローラを含むデータストレージアレイであり得る。ディスクアレイコントローラはまた、単独でまたはサーバデバイス３０６とともに、サーバデバイス３０６のうちの１つまたは複数がクラスタデータストレージ３０８のユニットにアクセスするのを妨げるディスクドライブ障害または他のタイプの障害から保護するために、クラスタデータストレージ３０８に記憶されたデータのバックアップまたは冗長コピーを管理するように構成され得る。
【００６３】
[00108]クラスタルータ３１０は、サーバクラスタのために内部および外部通信を行うように構成されたネットワーキング機器を含み得る。たとえば、クラスタルータ３１０は、（ｉ）クラスタネットワーク３１２を介したサーバデバイス３０６とクラスタデータストレージ３０８との間のネットワーク通信、および／または（ｉｉ）ネットワーク３００への通信リンク３０２を介したサーバクラスタ３０４と他のデバイスとの間のネットワーク通信を行うように構成された１つまたは複数のパケット交換および／またはルーティングデバイスを含み得る。
【００６４】
[00109]さらに、クラスタルータ３１０の構成は、サーバデバイス３０６およびクラスタデータストレージ３０８のデータ通信要件、ローカルクラスタネットワーク３１２のレイテンシおよびスループット、通信リンク３０２のレイテンシ、スループット、およびコスト、ならびに／あるいはシステムアーキテクチャのコスト、速度、耐障害性、レジリエンシー、効率および／または他の設計目的に寄与し得る他の要因に少なくとも部分的に基づくことができる。
【００６５】
[00110]可能な例として、クラスタデータストレージ３０８は、構造化照会言語（ＳＱＬ）データベースなど、任意の形態のデータベースを含み得る。様々なタイプのデータ構造は、限定はされないが、テーブル、アレイ、リスト、ツリー、およびタプルを含めて、そのようなデータベースに情報を記憶し得る。さらに、クラスタデータストレージ３０８中のいずれかのデータベースは、モノリシックであるか、または複数の物理デバイスにわたって分散され得る。
【００６６】
[00111]サーバデバイス３０６は、クラスタデータストレージ３０８にデータを送信し、それからデータを受信するように構成され得る。この送信および取出しは、それぞれ、ＳＱＬクエリまたは他のタイプのデータベースクエリ、およびそのようなクエリの出力の形態をとり得る。追加のテキスト、画像、ビデオ、および／またはオーディオも含められ得る。さらに、サーバデバイス３０６は、受信データをウェブページ表現に編成し得る。そのような表現は、ハイパーテキストマークアップ言語（ＨＴＭＬ）、拡張可能マークアップ言語（ＸＭＬ）、または何らかの他の標準化またはプロプライエタリフォーマットなど、マークアップ言語の形態をとり得る。その上、サーバデバイス３０６は、限定はされないが、Ｐｅｒｌ、Ｐｙｔｈｏｎ、ＰＨＰハイパーテキストプリプロセッサ（ＰＨＰ）、アクティブサーバページ（ＡＳＰ）、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔなど、様々なタイプのコンピュータ化されたスクリプト言語を実行する能力を有し得る。これらの言語で書かれたコンピュータプログラムコードは、クライアントデバイスへのウェブページのプロビジョン、ならびにウェブページとのクライアントデバイス対話を容易にし得る。
【００６７】
[00112]図４Ａは、コンピューティングネットワーク４０１の図である。コンピューティングネットワーク４０１は、クライアントコンピューティングデバイスＡ４０２と、クライアントコンピューティングデバイスＢ４０４と、管理コンピューティングデバイス４０６とを含み得る（いくつかの実施形態では、管理コンピューティングデバイス４０６は、追加または代替として「ブローカー」と呼ばれることがある）。場合によっては、いくつかの実施形態では、コンピューティングネットワーク４０１はサードパーティコンピューティングデバイス４０５をも含み得る。上記で説明されたように、クライアントコンピューティングデバイスＡ４０２と、クライアントコンピューティングデバイスＢ４０４と、サードパーティコンピューティングデバイス４０５と、管理コンピューティングデバイス４０６との各々は、サーバデバイス（たとえば、図１のサーバデバイス１０４）またはクライアントデバイス（たとえば、図１のクライアントデバイス１０２）であり得る。たとえば、いくつかの実施形態では、図４Ａのすべての構成要素は、互いに通信するサーバデバイスであり得る。他の実施形態では、図４Ａのすべての構成要素は、互いに通信するクライアントデバイスであり得る。さらに他の実施形態では、いくつかの構成要素はクライアントデバイスであり得るが、他の構成要素はサーバデバイスである（たとえば、管理コンピューティングデバイス４０６はサーバデバイスであるが、クライアントコンピューティングデバイスＡ４０２と、クライアントコンピューティングデバイスＢ４０４と、サードパーティコンピューティングデバイス４０５とはクライアントデバイスである）。
【００６８】
[00113]図４Ａの破線は、コンピューティング構成要素間の通信結合を示す。図示のように、クライアントコンピューティングデバイスＡ４０２は、管理コンピューティングデバイス４０６に通信可能に結合され得る。同様に、クライアントコンピューティングデバイスＢ４０２も、管理コンピューティングデバイス４０６に通信可能に結合され得る。さらに、サードパーティコンピューティングデバイス４０５を含む実施形態では、点線は、コンピューティング構成要素間の潜在的な通信結合を示す（たとえば、サードパーティコンピューティングデバイス４０５は、クライアントコンピューティングＡ４０２と、クライアントコンピューティングデバイスＢ４０４と、管理コンピューティングデバイス４０６との任意のサブセットに通信可能に結合され得る）。そのような通信結合は、様々な技術を使用して（たとえば、ＷｉＦｉを介して、ＢＬＵＥＴＯＯＴＨを介して、公衆インターネットを介して、などで）行われ得る。
【００６９】
[00114]同じく図示のように、クライアントコンピューティングデバイスＡ４０２とクライアントコンピューティングデバイスＢ４０４は、互いに通信的に分離され得る。このようにして、それぞれのクライアントコンピューティングデバイスと管理コンピューティングデバイス４０６との間の通信のプライバシーが保持され得る。いくつかの実施形態では、プライバシーを保持するための追加の技術（たとえば、クライアントコンピューティングデバイスと管理コンピューティングデバイス４０６との間の通信のための秘密鍵／公開鍵暗号化機構）が実装され得る。
【００７０】
[00115]代替実施形態では、クライアントコンピューティングデバイスＡ４０２とクライアントコンピューティングデバイスＢ４０４が互いに通信可能に結合され得る。これは、クライアントコンピューティングデバイスのデータの一部または全部の、別のクライアントコンピューティングデバイスとの共有を可能にし得る。さらに他の実施形態では、管理コンピューティングデバイス４０６と通信する任意の数のクライアントコンピューティングデバイス（たとえば、３つ以上のクライアントコンピューティングデバイス）があり得る。たとえば、３つ以上のクライアントコンピューティングデバイスが管理コンピューティングデバイス４０６にデータを提供し、それからデータを受信し得る。
【００７１】
[00116]例示的な一実施形態では、サードパーティコンピューティングデバイス４０５は、本明細書の方法４００に関して説明されるように機械学習モデル（たとえば、共有表現Ｕ）の決定に直接関与する必要はない。そのようなシナリオでは、サードパーティコンピューティングデバイス４０５は、本明細書で説明されるように、方法４００の動作のすべてを行う必要があるとは限らない。むしろ、サードパーティコンピューティングデバイス４０５は、方法４００の他の動作を使用して決定された機械学習モデルに基づく情報の受信者であり得る。
【００７２】
ＩＩＩ．例示的なプロセス
[00117]本明細書で説明される様々な実施形態では、いくつかの動作については、管理コンピューティングデバイスおよび／またはクライアントコンピューティングデバイスによって実施されるものとして説明される。単一の管理コンピューティングデバイスによって実施される動作は、（たとえば、計算時間を減少させるために）複数の管理コンピューティングデバイスにわたって拡散され得ることを理解されたい。同様に、単一のクライアントコンピューティングデバイスによって実施される動作は、代わりに、単一のクライアントコンピューティングデバイスの各部分であるコンピューティングデバイスの集合によって実施され得る。なおさらに、複数の動作について、本明細書ではクライアントコンピューティングデバイス（たとえば、クライアントコンピューティングデバイスＡ４０２）によって実施されるものとして説明される。また、単一のクライアントコンピューティングデバイス上で実施されるどんな動作も、（たとえば、記録値のそれぞれのデータセット／セットのために）１つまたは複数の他のクライアントコンピューティングデバイス上でミラーリングされ、実施され得ることを理解されたいが、そのようにされることが必要ではない。同様に、いくつかの動作について、本明細書では複数のクライアントコンピューティングデバイスによって実施されるものとして説明されるが、代替実施形態では、ただ１つのクライアントコンピューティングデバイスがそれらの動作を実施し得る（たとえば、いくつかの実施形態では、管理コンピューティングデバイスに１つまたは複数のフィードバック値を送信することが、１つのクライアントコンピューティングデバイスによって実施され得る）ことを理解されたい。なおさらに、いくつかのクライアントコンピューティングデバイスは、記録値の複数のデータセットおよび／または複数のセットを記憶し得、したがって、本明細書で開示される複数のコンピューティングデバイスに対応する行為を実施し得る。またさらに、いくつかの実施形態では、管理コンピューティングデバイスは、（たとえば、対話する当事者／クライアントコンピューティングデバイスによって要求されるプライバシーのレベルに応じて）クライアントコンピューティングデバイスのうちの１つまたは複数と一体化され得る。
【００７３】
[00118]本明細書で説明される方法およびシステムについては、（たとえば、プロセスを簡潔に記述するように変数を表すために）数学的シンタックスを使用して説明されることがある。本明細書で開示される方法およびシステムについて説明するとき、本明細書で使用されるものとは異なる数学的シンタックス、本明細書で使用されるための補助的な数学的シンタックス、またはまったく数学的シンタックスなしを含む、様々な数学的シンタックスが採用され得ることを理解されたい。さらに、採用される数学的シンタックスは、使用される所与の機械学習モデルに基づき得る（たとえば、人工ニューラルネットワークモデルを表すために使用されるシンタックスは、サポートベクトルマシンモデルを表すために使用されるシンタックスとは異なり得る）ことを理解されたい。例として、以下の表に、本開示の方法およびシステムを示すために本明細書で使用される数学的シンタックス（たとえば、図４Ｂ〜図１５Ｂに関して使用される数学的シンタックス）を要約する。
【００７４】
【表１−１】
2020537797.tif 000003
【表１−２】
2020537797.tif 000004
【００７５】
[00119]図４Ｂは、方法４００の一部分を示すデータフロー図である。方法４００の追加の部分は図４Ｃ〜図４Ｅに示されている。方法４００は、共有関数（ｆ）と１つまたは複数の共有パラメータ（β）とに基づいて共有表現（Ｕ）を生じるために使用され得る。方法４００は、（たとえば、図４Ａに示されている）コンピューティングネットワーク４０１のクライアントコンピューティングデバイスＡ４０２と、クライアントコンピューティングデバイスＢ４０４と、管理コンピューティングデバイス４０６とによって行われ得る。図４Ａに関して示されているように、代替実施形態では、管理コンピューティングデバイスと通信する任意の数のクライアントコンピューティングデバイスがあり得る。追加のクライアントコンピューティングデバイスは、共有表現（Ｕ）を改良するための追加のデータを提供するように働き得る。
【００７６】
[00120]いくつかの実施形態では、図４Ｂ〜図４Ｅに示されている方法４００は、（たとえば、図２に示されているデータストレージ２０４と同様の）非一時的コンピュータ可読媒体に記憶された命令に対応し得る。命令は、方法４００の動作を実施するようにプロセッサによって実行可能であり得る。追加または代替として、方法４００は、モデルを発生するために使用され得る。モデルは、（たとえば、図２に示されているデータストレージ２０４と同様の）メモリに記憶され得る。モデルがその上に記憶されたそのようなメモリは、クライアントコンピューティングデバイスＡ４０２に対応する当事者（たとえば、個人または会社）、クライアントコンピューティングデバイスＢ４０４に対応する当事者（たとえば、個人または会社）、あるいはクライアントコンピューティングデバイスまたは管理コンピューティングデバイス４０６のいずれにも関係しないサードパーティ（たとえば、個人または会社）に販売またはライセンス供与され得る。同様に、モデル自体（たとえば、モデルに対応するデータの配置）が、関連するメモリなしに１つまたは複数のサードパーティに分散され得る。
【００７７】
[00121]例示的な一実施形態によれば、方法４００の動作は、図４Ｂ〜図４Ｅに関して列挙される。しかしながら、図４Ｂ〜図４Ｅにおいて図示および説明される例示的な実施形態の動作についての追加の詳細は、図５Ａ〜図１５Ｂに関して以下で提供される。図４Ｂ〜図４Ｅにおける破線の水平線は、次の図へのまたは前の図からの方法４００の継続を示す。
【００７８】
[00122]動作４１２において、方法４００は、クライアントコンピューティングデバイスＡ４０２が管理コンピューティングデバイス４０６にデータセットＡ（ＸA）を送信することを含み得る。データセットＡ（ＸA）は記録値のセット（ＹA）に対応し得る。さらに、データセットＡ（ＸA）はオブジェクトを含み得る。代替実施形態では、クライアントコンピューティングデバイスＡ４０２はまた、（たとえば、データセットＡ（ＸA）に加えて）記録値の対応するセット（ＹA）を管理コンピューティングデバイス４０６に送信し得る。
【００７９】
[00123]動作４１４において、方法４００は、クライアントコンピューティングデバイスＢ４０４が管理コンピューティングデバイス４０６にデータセットＢ（ＸB）を送信することを含み得る。データセットＢ（ＸB）は記録値のセット（ＹB）に対応し得る。さらに、データセットＢ（ＸB）はオブジェクトを含み得る。代替実施形態では、クライアントコンピューティングデバイスＢ４０４はまた、（たとえば、データセットＢ（ＸB）に加えて）記録値の対応するセット（ＹB）を管理コンピューティングデバイス４０６に送信し得る。
【００８０】
[00124]動作４１６において、方法４００は、管理コンピューティングデバイス４０６が、データセットＡについての識別子のリスト（ＭA）と、データセットＢについての識別子のリスト（ＭB）とを決定することを含み得る。
【００８１】
[00125]動作４１８において、方法４００は、管理コンピューティングデバイス４０６が識別子の複合リスト（たとえば、識別子の「合成」リストを表す、ＭComb）を決定することを含み得る。識別子の複合リストは、データセットＡについての識別子のリスト（ＭA）とデータセットＢについての識別子のリスト（ＭB）との組合せを含み得る。
【００８２】
[00126]動作４２０において、方法４００は、管理コンピューティングデバイス４０６が、データセットＡ（ＸA）とデータセットＢ（ＸB）とからの一意のオブジェクトのリスト（たとえば、データセットからのオブジェクトの「合成」リストを表す、ＸComb）を決定することを含み得る。
【００８３】
[00127]動作４２２において、方法４００は、管理コンピューティングデバイス４０６が識別子の複合リスト（ＭComb）から識別子のサブセット（Ｓ）を選択することを含み得る。
【００８４】
[00128]動作４２４において、方法４００は、管理コンピューティングデバイス４０６が、識別子のサブセット（Ｓ）中の各識別子に対応する一意のオブジェクトのリストのサブセット（Ｚ）を決定することを含み得る。
【００８５】
[00129]図４Ｃは、方法４００の一部分を示すデータフロー図である。方法４００の追加の動作が図４Ｃに示されている。
【００８６】
[00130]動作４２６において、方法４００は、管理コンピューティングデバイス４０６が、一意のオブジェクトのリスト（ＸComb）のサブセット（Ｚ）と、１つまたは複数の共有パラメータ（β）を有する共有関数（ｆ）とに基づいて、データセット（ＸA／ＸB）の共有表現（Ｕ）を計算することを含み得る。
【００８７】
[00131]動作４２８において、方法４００は、管理コンピューティングデバイス４０６が、各クライアントコンピューティングデバイスのそれぞれのデータセット（ＸA／ＸB）についてオブジェクトのサブリスト（ＳA／ＳB）を決定することを含み得る。オブジェクトのサブリスト（ＳA／ＳB）は、それぞれのデータセット（ＸA／ＸB）についての識別子のリスト（ＭA／ＭB）との識別子のサブセット（Ｓ）の共通部分に基づき得る。
【００８８】
[00132]動作４３０において、方法４００は、管理コンピューティングデバイス４０６が、それぞれのデータセット（ＸA／ＸB）についてのオブジェクトのサブリスト（ＳA／ＳB）と、共有表現（Ｕ）とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセット（ＸA／ＸB）についての部分表現（ＵA／ＵB）を決定することを含み得る。
【００８９】
[00133]動作４３２において、方法４００は、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスＡ４０２に、データセットＡ（ＸA）についてのオブジェクトのサブリスト（ＳA）と、データセットＡ（ＸA）についての部分表現（ＵA）とを送信することを含み得る。
【００９０】
[00134]動作４３４において、方法４００は、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスＢ４０４に、データセットＢ（ＸB）についてのオブジェクトのサブリスト（ＳB）と、データセットＢ（ＸB）についての部分表現（ＵB）とを送信することを含み得る。いくつかの実施形態では、動作４３４はまた、動作４３２の前に、または動作４３２と実質的に同時に起こり得ることを理解されたい。
【００９１】
[00135]代替実施形態では、動作４２８、４３０、４３２、および４３４の代わりに、管理コンピューティングデバイス４０６は、クライアントコンピューティングデバイスＡ４０２に、共有表現（Ｕ）と、識別子のサブセット（Ｓ）と、データセットＡ（ＸA）についての識別子のリスト（ＭA）とを送信し、クライアントコンピューティングデバイスＢ４０４に、共有表現（Ｕ）と、識別子のサブセット（Ｓ）と、データセットＢ（ＸB）についての識別子のリスト（ＭB）とを送信し得る。次いで、各それぞれのクライアントコンピューティングデバイスは、それ自体のために、それのそれぞれのデータセット（ＸA／ＸB）についてオブジェクトの対応するサブリスト（ＳA／ＳB）を決定し得る。データセットＡ（ＸA）についてのオブジェクトのサブリスト（ＳA）は、データセットＡ（ＸA）についての識別子のリスト（ＭA）との識別子のサブセット（Ｓ）の共通部分に基づき得る。データセットＢ（ＸB）についてのオブジェクトのサブリスト（ＳB）は、データセットＢ（ＸB）についての識別子のリスト（ＭB）との識別子のサブセット（ＳB）の共通部分に基づき得る。さらに、各それぞれのクライアントコンピューティングデバイスは、それ自体のために、それのそれぞれのデータセット（ＸA／ＸB）についての部分表現（ＵA／ＵB）を決定し得る。データセットＡ（ＸA）についての部分表現（ＵA）は、オブジェクトのサブリスト（ＳA）と、共有表現（Ｕ）とに基づき得る。データセットＢ（ＸB）についての部分表現（ＵB）は、オブジェクトのサブリスト（ＳB）と、共有表現（Ｕ）とに基づき得る。
【００９２】
[00136]図４Ｄは、方法４００の一部分を示すデータフロー図である。方法４００の追加の動作が図４Ｄに示されている。
【００９３】
[00137]動作４３６Ａにおいて、方法４００は、クライアントコンピューティングデバイスＡ４０２が、データセットＡ（ＸA）に対応する予測値のセット
【００９４】
【数１】
2020537797.tif 000005
【００９５】
を決定することを含み得る。予測値のセットは、データセットＡ（ＸA）に対応する部分表現（ＵA）と、１つまたは複数の個別パラメータ（γA）をもつ個別関数（ｇA）とに基づき得る。
【００９６】
[00138]動作４３６Ｂにおいて、方法４００は、クライアントコンピューティングデバイスＢ４０４が、データセットＢ（ＸB）に対応する予測値のセット
【００９７】
【数２】
2020537797.tif 000006
【００９８】
を決定することを含み得る。予測値のセットは、データセットＢ（ＸB）に対応する部分表現（ＵB）と、１つまたは複数の個別パラメータ（γB）をもつ個別関数（ｇB）とに基づき得る。
【００９９】
[00139]動作４３８Ａにおいて、方法４００は、クライアントコンピューティングデバイスＡ４０２がデータセットＡ（ＸA）についての誤差（ＥA）を決定することを含み得る。誤差（ＥA）は、データセットＡ（ＸA）についての個別損失関数（ＬA）と、データセットＡ（ＸA）に対応する予測値のセット
【０１００】
【数３】
2020537797.tif 000007
【０１０１】
と、オブジェクトのサブリスト（ＳA）と、データセットＡ（ＸA）に対応する記録値のセット（ＹA）中の非空エントリ（ＷA）とに基づき得る。
【０１０２】
[00140]動作４３８Ｂにおいて、方法４００は、クライアントコンピューティングデバイスＢ４０４がデータセットＢ（ＸB）についての誤差（ＥB）を決定することを含み得る。誤差（ＥB）は、データセットＢ（ＸB）についての個別損失関数（ＬB）と、データセットＢ（ＸB）に対応する予測値のセット
【０１０３】
【数４】
2020537797.tif 000008
【０１０４】
と、オブジェクトのサブリスト（ＳB）と、データセットＢ（ＸB）に対応する記録値のセット（ＹB）中の非空エントリ（ＷB）とに基づき得る。
【０１０５】
[00141]動作４４０Ａにおいて、方法４００は、クライアントコンピューティングデバイスＡ４０２が、データセットＡ（ＸA）についての１つまたは複数の個別パラメータ（γA）を更新することを含み得る。
【０１０６】
[00142]動作４４０Ｂにおいて、方法４００は、クライアントコンピューティングデバイスＢ４０４が、データセットＢ（ＸB）についての１つまたは複数の個別パラメータ（γB）を更新することを含み得る。
【０１０７】
[00143]動作４４２Ａにおいて、方法４００は、クライアントコンピューティングデバイスＡ４０２が１つまたは複数のフィードバック値（ＣA）を決定することを含み得る。１つまたは複数のフィードバック値（ＣA）は、予測値のセット
【０１０８】
【数５】
2020537797.tif 000009
【０１０９】
の改善に対応する部分表現（ＵA）の変化を決定するために使用され得る。
【０１１０】
[00144]動作４４２Ｂにおいて、方法４００は、クライアントコンピューティングデバイスＢ４０４が１つまたは複数のフィードバック値（ＣB）を決定することを含み得る。１つまたは複数のフィードバック値（ＣB）は、予測値のセット
【０１１１】
【数６】
2020537797.tif 000010
【０１１２】
の改善に対応する部分表現（ＵB）の変化を決定するために使用され得る。
【０１１３】
[00145]動作４４４において、方法４００は、クライアントコンピューティングデバイスＡ４０２が管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値（ＣA）を送信することを含み得る。
【０１１４】
[00146]動作４４６において、方法４００は、クライアントコンピューティングデバイスＢ４０４が管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値（ＣB）を送信することを含み得る。いくつかの実施形態では、動作４４４は、動作４４６の後に、または動作４４６と実質的に同時に行われ得る。
【０１１５】
[00147]いくつかの実施形態（たとえば、３つ以上のデータセットおよび／または３つ以上のクライアントコンピューティングデバイスを含む実施形態）では、クライアントコンピューティングデバイスのサブセットのみが、管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値（たとえば、ＣA／ＣB）を送信し得る。そのような実施形態では、管理コンピューティングデバイス４０６は、すべてのクライアントコンピューティングデバイスからの１つまたは複数のフィードバック値のすべての可能なセットではなく、提供された１つまたは複数のフィードバック値のみに基づいて、１つまたは複数の共有パラメータ（β）を更新し得る。代替的に、クライアントコンピューティングデバイスのサブセットのみが管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値を送信する実施形態では、管理コンピューティングデバイス４０６は、１つまたは複数のフィードバック値を提供しなかったクライアントコンピューティングデバイスに、それぞれのクライアントコンピューティングデバイスからの１つまたは複数のフィードバック値について要求を送信し得る。
【０１１６】
[00148]図４Ｅは、方法４００の一部分を示すデータフロー図である。方法４００の追加の動作が図４Ｅに示されている。
【０１１７】
[00149]動作４４８において、方法４００は、管理コンピューティングデバイス４０６が、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）を決定することを含み得る。１つまたは複数のアグリゲートされたフィードバック値（ＣComb）は、それぞれ、データセットＡ（ＸA）およびデータセットＢ（ＸB）に対応するオブジェクトのサブリスト（ＳA／ＳB）と、それぞれ、クライアントコンピューティングデバイスＡ４０２およびクライアントコンピューティングデバイスＢ４０４からの１つまたは複数のフィードバック値（ＣA／ＣB）とに基づき得る。
【０１１８】
[00150]動作４５０において、方法５００は、管理コンピューティングデバイス４０６が、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）に基づいて１つまたは複数の共有パラメータ（β）を更新することを含み得る。いくつかの実施形態（たとえば、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）が逆伝搬誤差に対応する実施形態）では、１つまたは複数の共有パラメータ（β）は、勾配降下法に従って更新され得る。
【０１１９】
[00151]いくつかの実施形態では、図４Ｂ〜図４Ｅに示されている方法は追加の動作を含み得る。そのような追加の動作は、図４Ｂ〜図４Ｅに示されている動作の前に、それの後に、またはそれと同時に行われ得る。さらに、以下の追加の動作が、様々な実施形態において様々な順序および組合せで行われ得る。
【０１２０】
[00152]たとえば、図４Ｆに示されているように、いくつかの代替実施形態では、動作４６２および動作４６６において、方法４００は、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスの各々に共有表現（Ｕ）、共有関数（ｆ）および／あるいは１つまたは複数の共有パラメータ（β）を送信することを場合によっては含み得る。代替的に、いくつかの実施形態では、本方法は、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスのサブセットに共有関数（ｆ）および／あるいは１つまたは複数の共有パラメータ（β）を送信することを含み得る。そのようなサブセットは、それぞれのクライアントコンピューティングデバイスが（たとえば、機械学習モデルサブスクリプションサービスのための）料金を支払ったか、アクセス証明（たとえば、ユーザ名およびパスワード）を入力したか、または所与のグループ（たとえば、管理特権をもつグループ）のメンバーであるかどうかに基づいて、管理コンピューティングデバイス４０６によって選定され得る。同じく図４Ｆに示されているように、動作４６４において、方法４００は、クライアントコンピューティングデバイスＡ４０２が、データセット（たとえば、データセットＡ（ＸA）または代替データセット）に対応する予測値の追加のセットを決定するために共有表現（Ｕ）、共有関数（ｆ）、および／あるいは１つまたは複数の共有パラメータ（β）を使用することを場合によっては含み得る。同様に、動作４６８において、方法４００は、クライアントコンピューティングデバイスＢ４０４が、データセット（たとえば、データセットＢ（ＸB）または代替データセット）に対応する予測値の追加のセットを決定するために共有表現（Ｕ）、共有関数（ｆ）、および／あるいは１つまたは複数の共有パラメータ（β）を使用することを場合によっては含み得る。
【０１２１】
[00153]場合によっては（たとえば、サードパーティコンピューティングデバイス４０５を含む実施形態では）、図４Ｆに示されているように、動作４７２において、方法４００はまた、管理コンピューティングデバイス４０６が、サードパーティコンピューティングデバイス４０５に共有表現（Ｕ）、共有関数（ｆ）、および／あるいは１つまたは複数の共有パラメータ（β）を送信することを含み得る。同様に、動作４７４において、方法４００は、サードパーティコンピューティングデバイス４０５が、データセットに対応する予測値の追加のセットを決定するために共有表現（Ｕ）、共有関数（ｆ）、および／あるいは１つまたは複数の共有パラメータ（β）を使用することをさらに含み得る。さらに他の実施形態では、サードパーティコンピューティングデバイス４０５は、管理コンピューティングデバイス４０６からではなく、クライアントコンピューティングデバイス（たとえば、クライアントコンピューティングデバイスＡ４０２および／またはクライアントコンピューティングデバイスＢ４０４）のうちの１つまたは複数から、共有表現（Ｕ）、共有関数（ｆ）、および／あるいは１つまたは複数の共有パラメータ（β）を受信し得る。
【０１２２】
[00154]また他の実施形態では、本方法は、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイス４０２／４０４および／またはサードパーティコンピューティングデバイス４０５に、共有関数（ｆ）の一部分のみおよび／あるいは１つまたは複数の共有パラメータ（β）の一部分のみを送信することを含み得る。クライアントコンピューティングデバイス４０２／４０４またはサードパーティコンピューティングデバイス４０５によって受信される部分は異なり得る。たとえば、各クライアントコンピューティングデバイスは、クライアントコンピューティングデバイスによって供給されるデータセット（ＸA／ＸB）に従って生じた共有表現（Ｕ）の部分に対応する１つまたは複数の共有パラメータ（β）の部分のみを受信し得る。
【０１２３】
[00155]追加または代替として、本方法は、管理コンピューティングデバイス４０６がデータセット（ＸA／ＸB）の最終共有表現（ＵFinal）を計算することを含み得る。そのような最終共有表現（ＵFinal）は、一意のオブジェクトのリスト（ＸComb）と、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とに基づき得る。さらに、本方法は、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスＡ４０２および／またはクライアントコンピューティングデバイスＢ４０４にデータセット（ＸA／ＸB）の最終共有表現（ＵFinal）を送信することを含み得る。共有表現（ＵFinal）は、クライアントコンピューティングデバイスのそれぞれのデータセット（ＸA／ＸB）に対応する予測値の最終セット
【０１２４】
【数７】
2020537797.tif 000011
【０１２５】
を決定するために各クライアントコンピューティングデバイス（またはクライアントコンピューティングデバイスのサブセット）によって使用可能であり得る。予測値の最終セット
【０１２６】
【数８】
2020537797.tif 000012
【０１２７】
を決定することは、それぞれのクライアントコンピューティングデバイスが、それぞれのデータセット（ＸA／ＸB）についての識別子のリスト（ＭA／ＭB）に基づいてそれぞれのデータセット（ＸA／ＸB）についての最終部分表現（ＵFinal_A／ＵFinal_B）を決定することを含み得る。予測値の最終セット
【０１２８】
【数９】
2020537797.tif 000013
【０１２９】
を決定することはまた、それぞれのクライアントコンピューティングデバイスが、最終部分表現（ＵFinal_A／ＵFinal_B）と、個別関数（ｇA／ｇB）と、それぞれのデータセット（ＸA／ＸB）に対応する１つまたは複数の個別パラメータ（γA／γB）とに基づいて、それぞれのデータセット（ＸA／ＸB）に対応する予測値の最終セット
【０１３０】
【数１０】
2020537797.tif 000014
【０１３１】
を決定することを含み得る。いくつかの実施形態では、予測値の最終セット
【０１３２】
【数１１】
2020537797.tif 000015
【０１３３】
は、クライアントコンピューティングデバイスのうちの少なくとも１つによって表示され得る。いくつかの実施形態では、予測値の最終セット
【０１３４】
【数１２】
2020537797.tif 000016
【０１３５】
は、それぞれのクライアントコンピューティングデバイスに対応するデータセット（ＸA／ＸB）中のオブジェクトに関して１つまたは複数の予測を行うためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用され得る。
【０１３６】
[00156]いくつかの実施形態では、機械学習モデルをさらに改良するために複数の動作が１回または複数回繰り返され得る。たとえば、機械学習モデルを改良するために、動作４２２、４２４、４２６、４２８、４３０、４３２、４３４、４３６Ａ、４３６Ｂ、４３８Ａ、４３８Ｂ、４４０Ａ、４４０Ｂ、４４２Ａ、４４２Ｂ、４４４、４４６、４４８、および４５０が１回または複数回繰り返され得る。これらの動作が繰り返されるとき、それらは、各決定／選択動作が、（たとえば、場合によっては前のイタレーションにおける選択とは異なる）データの追加のサブセットを決定／選択することを含むように繰り返され得る。
【０１３７】
[00157]いくつかの実施形態では、本方法はまた、管理コンピューティングデバイス４０６が、管理コンピューティングデバイス４０６のメモリ（たとえば、図２に示されているデータストレージ２０４）から、一意のオブジェクトのリスト（ＸComb）と、共有表現（Ｕ）と、各データセット（ＸA／ＸB）についての識別子のリスト（ＭA／ＭB）と、識別子の複合リスト（ＭComb）とを削除（「パージ」）することを含み得る。いくつかの実施形態では、管理コンピューティングデバイス４０６から上記のデータを削除することは、対応するクラウドストレージデバイスから、および／または管理コンピューティングデバイスのデータを記憶するために使用される複数のサーバからデータを削除することを含み得る。そのようなデータの削除は、機械学習モデルが生じた後に、管理コンピューティングデバイスが不特定の時間量の間、データへのアクセスを有するのを防止し得る。
【０１３８】
[00158]図５Ａは、（たとえば、図４Ｂ〜図４Ｅに関して説明された）データセットＡ（ＸA）と、記録値の対応するセット（ＹA）との図である。データセットＡ（ＸA）と、記録値の対応するセット（ＹA）とは、クライアントコンピューティングデバイスＡ４０２に対応し得る。いくつかの実施形態では、データセットＡ（ＸA）は、クライアントコンピューティングデバイスＡ４０２の１次メモリストレージ（たとえば、内部ハードドライブ）に記憶され得、記録値の対応するセット（ＹA）は、クライアントコンピューティングデバイスＡ４０２の２次メモリストレージ（たとえば、外部ハードドライブ）に記憶され得る。
【０１３９】
[00159]図示のように、データセットＡ（ＸA）は、第１の次元において４つのオブジェクト（たとえば、「ティミー」、「ジョニー」、「サリー」、および「スー」）を含む。これらのオブジェクトは、たとえば、クライアントコンピューティングデバイスＡ４０２によって実行されるかまたはクライアントコンピューティングデバイスＡ４０２に関連する（たとえば、データベースを含む）オンライン書籍レーティングおよびムービーレーティングプラットフォームのユーザプロファイルに対応し得る。そのようなユーザプロファイルは、ユーザプロファイルに関連する彼らのプロファイル名、彼らのユーザ識別情報（ＩＤ）番号、ハッシュコード、社会保障番号、またはインターネットプロトコル（ＩＰ）アドレスによって識別され得る。ユーザプロファイルを識別する他の方法も可能である。
【０１４０】
[00160]データセットＡ（ＸA）の第２の次元には、４つのオブジェクトの各々に対応する７つの特徴（たとえば、「書籍タイトル１」、「書籍タイトル２」、「書籍タイトル３」、「書籍タイトル４」、「書籍タイトル５」、「書籍タイトル６」、および「書籍タイトル７」）があり得る。そのような特徴は、代替的に、たとえば、それらの１０桁もしくは１３桁の国際標準図書番号（ＩＳＢＮ）によって、または書籍レーティングおよびムービーレーティングプラットフォームからの対応するユニファイドリソースロケータ（ＵＲＬ）によって識別され得る。
【０１４１】
[00161]（オブジェクト、特徴）の各ペアに対応するエントリは、（たとえば、０〜１００にわたる）レーティング値に対応し得る。たとえば、ユーザ「サリー」は、「書籍タイトル４」に「１７」のレーティングを格付けしていることがある。これらのエントリは、それらがすべて同じ範囲を有するようにスケーリングされ得る（たとえば、レーティングのうちのいくつかは、当初は０〜１０の間で出され、次いで、それらが０〜１００にわたり、他のレーティング値に対して正規化されることを保証するようにスケーリングされていることがある）。
【０１４２】
[00162]代替実施形態では、他のタイプのオブジェクトおよび／または特徴がデータセットＡ（ＸA）内で使用され得る。さらに、他の実施形態では、他の数のオブジェクトおよび／または特徴が使用され得る。さらに、いくつかの実施形態では、他のタイプのデータエントリが使用され得る。追加または代替として、いくつかの実施形態では、データセットＡ（ＸA）のために３以上の次元（ｄ）があり得る。
【０１４３】
[00163]図示のように、記録値の対応するセット（ＹA）は、第１の次元において、データセットＡ（ＸA）中の４つのオブジェクトと同じ４つのオブジェクト（たとえば、「ティミー」、「ジョニー」、「サリー」、および「スー」）を含む。上記の場合と同様に、これらのオブジェクトは、たとえば、クライアントコンピューティングデバイスＡ４０２によって実行されるかまたはクライアントコンピューティングデバイスＡ４０２に関連するオンライン書籍レーティングおよびムービーレーティングプラットフォームのユーザプロファイルに対応し得る。この場合も、そのようなユーザプロファイルは、ユーザプロファイルに関連する彼らのプロファイル名、彼らのユーザＩＤ番号、ハッシュコード、社会保障番号、またはＩＰアドレスによって識別され得る。ユーザプロファイルを識別する他の方法も可能である。
【０１４４】
[00164]記録値の対応するセット（ＹA）の第２の次元には、４つのオブジェクトの各々に対応する５つの特徴（たとえば、「ムービータイトル１」、「ムービータイトル２」、「ムービータイトル３」、「ムービータイトル４」、および「ムービータイトル５」）があり得る。そのような特徴は、代替的に、それらのバーコード、または書籍レーティングおよびムービーレーティングプラットフォームからの対応するＵＲＬによって識別され得る。
【０１４５】
[00165]記録値の対応するセット（ＹA）中の（オブジェクト、特徴）の各ペアに対応するエントリは、（たとえば、０〜１００にわたるレーティング）レーティング値に対応し得る。たとえば、オブジェクト「ジョニー」は、特徴「ムービータイトル２」に「１８」の値を格付けしていることがある。これらのエントリは、それらがすべて同じ範囲を有するようにスケーリングされ得る（たとえば、レーティングのうちのいくつかは、当初は０〜１０の間で出され、次いで、それらが０〜１００にわたり、他のレーティング値に対して正規化されることを保証するようにスケーリングされていることがある）。
【０１４６】
[00166]代替実施形態では、他のタイプのオブジェクトおよび／または特徴が、記録値の対応するセット（ＹA）内で使用され得る。さらに、他の実施形態では、他の数のオブジェクトおよび／または特徴が使用され得る。さらに、いくつかの実施形態では、他のタイプのデータエントリが使用され得る。追加または代替として、いくつかの実施形態では、記録値の対応するセット（ＹA）のために３以上の次元（ｄ）があり得る。記録値の対応するセット（ＹA）中の次元数（ｄ）は、データセットＡ（ＸA）中の次元数（ｄ）と同じであり得る。データセットと、記録値の対応するセットとの代替実施形態については、さらに図１６Ａ〜図１６Ｃに関して図示および説明される。
【０１４７】
[00167]図５Ｂは、（たとえば、図４Ｂ〜図４Ｅに関して説明された）データセットＢ（ＸB）と、記録値の対応するセット（ＹB）との図である。データセットＢ（ＸB）と、記録値の対応するセット（ＹB）とは、クライアントコンピューティングデバイスＢ４０４に対応し得る。データセットＢ（ＸB）と、記録値の対応するセット（ＹB）とは、データセットＡ（ＸA）と、記録値のそれの対応するセット（ＹA）との書籍レーティングおよびムービーレーティングプラットフォームとは別個の（たとえば、データベースを含む）書籍レーティングおよびムービーレーティングプラットフォームに対応し得る。図５Ｂに示されているように、データセットＢ（ＸB）中のオブジェクトは、データセットＡ（ＸA）中のオブジェクトと同じでないことがある。いくつかの実施形態では、図示のように、データセットＢ（ＸB）とデータセットＡ（ＸA）との間にオブジェクトの何らかの重複があり得る。さらに他の実施形態では、データセット（ＸA／ＸB）中のオブジェクトは完全に同じであり得る。なおさらなる実施形態では、データセット（ＸA／ＸB）中のオブジェクトは完全に互いに素であり得る。また図示のように、データセットＢ（ＸB）中のオブジェクトの数は、データセットＡ（ＸA）中のオブジェクトの数と同じでないことがある。
【０１４８】
[00168]図示のように、データセットＢ（ＸB）と、記録値の対応するセット（ＹB）との追加の次元における特徴の数は、データセットＡ（ＸA）と、記録値のそれの対応するセット（ＹA）との追加の次元における特徴の数と同じであり得る。図示のように、データセットＢ（ＸB）の追加の次元において７つの特徴（たとえば、「書籍タイトル１」、「書籍タイトル２」、「書籍タイトル３」、「書籍タイトル４」、「書籍タイトル５」、「書籍タイトル６」、および「書籍タイトル７」）がある。図示のように、これらの特徴は、図５Ａに示されているデータセットＡ（ＸA）の特徴と同じである。
【０１４９】
[00169]またさらに、記録値の対応するセット（ＹB）中の特徴の数は、記録値の対応するセット（ＹA）中の特徴の数とは異なり得る。図示のように、記録値の対応するセット（ＹB）の追加の次元において９つの特徴（たとえば、「ムービータイトル１」、「ムービータイトル３」、「ムービータイトル４」、「ムービータイトル５」、「ムービータイトル６」、「ムービータイトル７」、「ムービータイトル８」、「ムービータイトル９」、および「ムービータイトル１０」）がある。図示のように、これらの特徴のうちのいくつかは、図５Ａに示されている記録値の対応するセット（ＹA）の特徴と同じである。代替実施形態では、特徴のすべてが、記録値の対応するセットの特徴と重複するか、または特徴のいずれも、記録値の対応するセットの特徴と重複しない。
【０１５０】
[00170]さらに、いくつかの実施形態では、図５ＢのデータセットＢ（ＸB）と、記録値の対応するセット（ＹB）とにおける次元数（ｄ）は、図５ＡのデータセットＡ（ＸA）と、記録値の対応するセット（ＹA）とにおける次元数（ｄ）と同じでないことがある。いくつかの実施形態では、複数のデータセット（たとえば、ＸA／ＸB）の各々は、等しい次元数（ｄ）を含み得る。様々な実施形態では、次元数（ｄ）は、２、３、４、５、６、７、８、９、１０、１６、３２、６４、１２８、２５６、５１２、または１０２４であり得る。他の次元数（ｄ）も可能である。いくつかの実施形態では、複数のデータセットの各々はテンソルによって表され得る。さらに、いくつかの実施形態では、複数のデータセットのうちの少なくとも１つはスパーステンソルによって表され得る。様々な実施形態では、テンソルは、テンソルのスパーシティが５０％超、６０％超、７０％超、７５％超、８０％超、９０％超、９５％超、９８％超、９９％超、９９．９％超、９９．９９％超、９９．９９９％超、または９９．９９９９％超である場合、「スパース」テンソルであり得る。図５Ａ／５Ｂに示されている実施形態では、データセット（ＸA／ＸB）の両方がテンソル（たとえば、２次元テンソル、すなわち、「行列」）によって表される。
【０１５１】
[00171]追加または代替として、いくつかの実施形態では、記録値の対応するセットのうちの少なくとも１つはテンソルによって表され得る。さらに、いくつかの実施形態では、記録値の対応するセットのうちの少なくとも１つはスパーステンソルによって表され得る。図５Ａ／５Ｂに示されている実施形態では、記録値の対応するセット（ＹA／ＹB）の両方がテンソル（たとえば、２次元テンソル、すなわち、「行列」）によって表される。
【０１５２】
[00172]いくつかの実施形態では、データセットと、記録値の対応するセットとの３つ以上のペアがあり得る。データセットと、記録値のセットとの追加のペアは、クライアントコンピューティングデバイスＡ４０２またはクライアントコンピューティングデバイスＢ４０４によって送信されおよび／またはそれら内に記憶され得る。追加または代替として、データセットと、記録値のセットとの追加のペアは、追加のクライアントコンピューティングデバイス（たとえば、図４Ａに示されていないクライアントコンピューティングデバイス）によって送信されおよび／またはそれの内に記憶され得る。追加または代替として、いくつかの実施形態では、データセット（たとえば、ＸA／ＸB）の一部または全部は、記録値のそれらの対応するセット（たとえば、ＹA／ＹB）とは別個のクライアントコンピューティングデバイス上に記憶されおよび／またはそれの上で送信され得る。２つの別個のクライアントコンピューティングデバイスが、データセット（たとえば、ＸA）と、記録値の対応するセット（ＹA）とを記憶および／または送信する場合、それらの別個のクライアントコンピューティングデバイスは、単一のクライアント（たとえば、会社）によって制御および／または所有され得る。代替的に、それらの別個のクライアントコンピューティングデバイスは、別個のクライアントによって制御および／または所有され得る。またさらに、それらの別個のクライアントコンピューティングデバイスが別個のクライアントによって制御および／または所有される実施形態では、それらの別個のクライアントは、（たとえば、プライバシーの理由で）互いに通信しないことがあり、管理コンピューティングデバイス４０６は、個々に両方を受信すると、データセットＡ（ＸA）を記録値の対応するセット（ＹA）に最終的に関連付けることを任される。これは、管理コンピューティングデバイス４０６が、データセットＡ（ＸA）が記録値のセット（ＹA）に対応することを識別することができるように、別個のクライアントコンピューティングデバイスの各々によってデータセットＡ（ＸA）と記録値の対応するセット（ＹA）とに付属したメタデータ（たとえば、タグ）を使用して行われ得る。
【０１５３】
[00173]様々な実施形態では、データセットと、記録値の対応するセットとによって表されるデータは変動し得る。たとえば、方法４００は様々な適用例において使用され得、各適用例は、データセット内に記憶されたデータの異なるセットと、記録値の異なる対応するセットとに潜在的に対応する。これについては、さらに図１６Ａ〜図１６Ｃに関して説明および図示される。
【０１５４】
[00174]図６Ａおよび図６Ｂは、図４Ｂ〜図４Ｅに示されている方法４００の動作４１６を示す。図４Ｂに関して説明されたように、動作４１６において、方法４００は、管理コンピューティングデバイスが、データセットＡ（ＸA）についての識別子のリスト（ＭA）と、データセットＢ（ＸB）についての識別子のリスト（ＭB）とを決定することを含み得る。図６Ａに示されているように、データセット（ＸA）のオブジェクトが、データセット（ＸA）についての識別子のリスト（ＭA）に変換されている。識別子のリスト（ＭA）は、管理コンピューティングデバイス４０６によってデータセット（ＸA）中の各オブジェクトに割り当てられた一意のＩＤ（たとえば、ストリング、ハッシュコード、または整数）に対応し得る。識別子のリスト（ＭA）中の一意のＩＤは、データセットＡ（ＸA）中のオブジェクトがデータセットＢ（ＸB）中のオブジェクトと有意味に比較され得るように生成され得る。したがって、図６Ｂに示されているように、データセットＢ（ＸB）のオブジェクトは、データセットＢ（ＸB）についての識別子のリスト（ＭB）に変換されている。識別子のリスト（ＭB）も、管理コンピューティングデバイス４０６によってデータセットＢ（ＸB）中の各オブジェクトに割り当てられた一意のＩＤ（たとえば、ストリング、ハッシュコード、または整数）に対応し得る。図示のように、いくつかの実施形態では、データセットＡ（ＸA）とデータセットＢ（ＸB）の両方において同じであるオブジェクトは、同じ識別子を割り当てられ得る（たとえば、識別子ＭA／ＭBの両方のリストにおいて、「ティミー」は「ユーザ００」を割り当てられ、「ジョニー」は「ユーザ０１」を割り当てられる）。
【０１５５】
[00175]管理コンピューティングデバイス４０６によって、各データセットについての識別子のそれぞれのリスト（ＸA／ＸB）を決定することは、様々な実施形態において様々な動作を含み得る。いくつかの実施形態では、識別子のリスト（ＭA／ＭB）は、それぞれのクライアントコンピューティングデバイス（コンピューティングデバイスＡ４０２／コンピューティングデバイスＢ４０４）によって管理コンピューティングデバイス４０６に提供され得る。他の実施形態では、管理コンピューティングデバイス４０６は、管理コンピューティングデバイス４０６のアルゴリズムに基づいて一意のＩＤを定義し得る。さらに他の実施形態では、管理コンピューティングデバイスによって、識別子のリスト（ＭA／ＭB）を決定することは、オブジェクトの商業的に入手可能な識別子（たとえば、書籍のＩＳＢＮまたは患者の社会保障番号）を受信することを含み得る。オブジェクトのそのような商業的に入手可能な識別子は、サードパーティによって管理コンピューティングデバイス４０６に提供され得る（たとえば、ドメイン名レジストラが、ドメイン名に対応するオブジェクトに、対応するＩＰアドレスを提供し得る）。識別子のリスト（ＭA／ＭB）中の一意のＩＤを定義するために使用される技法に関係なく、一意のＩＤは、各一意のＩＤが共通シンタックスに従って定義されるように定義され得、それにより、識別子の複合リスト（ＭComb）の作成が可能になる。
【０１５６】
[00176]図７は、図４Ｂ〜図４Ｅに示されている方法４００の動作４１８を示す。図４Ｂに関して説明されたように、動作４１８において、方法４００は、管理コンピューティングデバイス４０６が識別子（ＭComb）の複合リストを決定することを含み得る。図７に示されているように、データセットＡ（ＸA）についての識別子のリスト（ＭA）と、データセットＢ（ＭB）についての識別子のリスト（ＭB）とは、すべての識別子のリストを形成するために組み合わされ（たとえば、連結され）得る。すべての識別子のこのリストは、繰り返される（すなわち、「冗長な」）識別子（たとえば、図７の例示的な実施形態では「ユーザ００」および「ユーザ０１」）が削除させられ得る。冗長な識別子を削除すると、識別子の複合リスト（ＭComb）が残り得る。識別子の複合リスト（ＭComb）は、管理コンピューティングデバイス４０６によって受信されたすべてのデータセット（ＸＡ／ＸＢ）に対応するすべての繰り返されない識別子を含み得る。
【０１５７】
[00177]図８は、図４Ｂ〜図４Ｅに示されている方法４００の動作４２０を示す。図４Ｂに関して説明されたように、動作４２０において、方法４００は、管理コンピューティングデバイス４０６が、データセットＡ（ＸA）とデータセットＢ（ＸB）とから一意のオブジェクトのリスト（ＸComb）を決定することを含み得る。図８に示されているように、一意のオブジェクトのリスト（ＸComb）を決定することは、すべてのデータセットからのデータを単一のリスト（たとえば、単一のテンソル）に組み合わせることを含み得る。データは、識別子の複合リスト（ＭComb）に基づいて組み合わされ得る。たとえば、「ユーザ００」は、データセットＡ（ＸA）とデータセットＢ（ＸB）の両方の中のオブジェクトであることがある。したがって、図８に示されているように、データセットＡ（ＸA）とデータセットＢ（ＸB）とからのデータは、一意のオブジェクトのリスト（ＸComb）中の単一のオブジェクト（「ユーザ００」）のデータに組み合わされる。いくつかの実施形態では、異なるスケールが使用された場合（たとえば、データセットＡ（ＸA）が０から１０にわたるレーティングを有し、データセットＢ（ＸB）が０から１００のレーティングスケーリングを有する場合）、各データセット中のオブジェクトの値は、それらを一意のオブジェクトのリスト（ＸComb）に入力する前に正規化され得る。
【０１５８】
[00178]いくつかの実施形態では、２つ以上のデータセットが、同じオブジェクトを含む（たとえば、図８の「ティミー」はデータセットＡ（ＸA）およびデータセットＢ（ＸB）中にある）が、同じオブジェクトの同じ特徴について競合するデータを有し得る。たとえば、「ティミー」が、データセットＡ（ＸA）中で「書籍タイトル５」に「８４」のレーティングを提供したが、データセットＢ（ＸB）中で「６０」のレーティングを提供した場合、これは競合を生じ得る。いくつかの実施形態では、そのような競合は、同じ特徴について厳密に同じデータを有する（たとえば、オブジェクトの特徴のすべてについて同じデータを有するか、または所与のオブジェクトが少しでもデータを有する場合にオブジェクトの特徴について同じデータを有する）オブジェクトのみが、共通の識別子を割り当てられるような仕方で識別子を割り当てることによって、解決され得る。この段落における例を使用すると、データセットＡ（ＸA）中の「ティミー」オブジェクトと、データセットＢ（ＸB）中の「ティミー」オブジェクトは、それらがあらゆる特徴について同じデータを共有しない場合（たとえば、データセットＡ（ＸA）からの「ティミー」オブジェクトは識別子「ユーザ００」を割り当てられ得るが、データセットＢ（ＸB）からの「ティミー」オブジェクトは識別子「ユーザ０５」を割り当てられ得る場合）、異なる識別子を割り当てられ得る。そのような技法を使用して、本明細書で説明されるような、競合による機械学習モデルへの悪影響が防止され得る。
【０１５９】
[00179]いくつかの実施形態では、動作４２０は動作４１８の前に実施され得る。たとえば、識別子の複合リスト（ＭComb）を作成するより前に、データセットＡ（ＸA）からのオブジェクトと、データセットＢ（ＸB）からのオブジェクトと、３つ以上のデータセットを有する実施形態では任意の他のデータセットとが組み合わされ得る。組み合わされると、オブジェクトの合成セット中の繰り返される（すなわち、「重複」）オブジェクトが削除され、それにより、一意のオブジェクトのリスト（ＸComb）が形成され得る。繰り返されるオブジェクトは、複数のデータセット（ＸA／ＸB）の各々についての識別子のリスト（ＭA／ＭB）の共通部分に基づいて削除され得る。次いで、一意のオブジェクトのリストに基づいて、識別子の複合リスト（ＭComb）が生成され得る。
【０１６０】
[00180]図９は、図４Ｂ〜図４Ｅに示されている方法４００の動作４２２を示す。図４Ｂに関して説明されたように、動作４２２において、方法４００は、管理コンピューティングデバイス４０６が識別子の複合リスト（ＭComb）から識別子のサブセット（Ｓ）を選択することを含み得る。識別子のサブセット（Ｓ）は、様々な方法を使用して選択され得る。たとえば、識別子のサブセット（Ｓ）は、（たとえば、ハードウェア乱数生成器などの乱数生成器を使用して）ランダムにまたは（たとえば、シード値とともに擬似乱数生成器を使用して）擬似ランダムに選択され得る。いくつかの実施形態では、識別子のサブセット（Ｓ）は、メルセンヌツイスタ擬似乱数生成器に基づいて選択され得る。追加または代替として、識別子のサブセット（Ｓ）中の各識別子は、管理コンピューティングデバイス４０６のみに知られているアルゴリズムに従って選択され得る。他の実施形態では、識別子のサブセット（Ｓ）中の各識別子は、公的に入手可能なアルゴリズム（たとえば、管理コンピューティングデバイス４０６によって公開され、複数のクライアントコンピューティングデバイス４０２／４０４のうちの１つまたは複数に送信されるアルゴリズム）に従って選択され得る。
【０１６１】
[00181]図１０は、図４Ｂ〜図４Ｅに示されている方法４００の動作４２４を示す。図４Ｂに関して説明されたように、動作４２４において、方法４００は、管理コンピューティングデバイス４０６が、識別子のサブセット（Ｓ）中の各識別子に対応する一意のオブジェクトのリスト（ＸComb）のサブセット（Ｚ）を決定することを含み得る。サブセット（Ｚ）を決定することは、管理コンピューティングデバイス４０６が、一意のオブジェクトのリスト（ＸComb）を取り出し、次いで、一意のオブジェクトのリスト（ＸComb）に基づいてオブジェクトの新しいリストを作成することを含み得る。管理コンピューティングデバイス４０６は、次いで、オブジェクトの新しいリストから、対応する識別子が識別子のサブセット（Ｓ）内に含まれていないオブジェクトを削除し、それにより、一意のオブジェクトのリスト（ＸComb）のサブセット（Ｚ）を作成し得る。代替的に、サブセット（Ｚ）を決定することは、管理コンピューティングデバイス４０６が識別子のサブセット（Ｓ）を取り出すことを含み得る。次いで、識別子のサブセット（Ｓ）に基づいて、管理コンピューティングデバイス４０６は、識別子のサブセット（Ｓ）中の各識別子のために、識別子のサブセット（Ｓ）中の識別子に対応する一意のオブジェクトのリスト（ＸComb）からのオブジェクトを追加することによって、新しいリストをアセンブルし得る。
【０１６２】
[00182]図１１は、図４Ｂ〜図４Ｅに示されている方法４００の動作４２６を示す。図４Ｃに関して説明されたように、動作４２６において、方法４００は、管理コンピューティングデバイス４０６が、一意のオブジェクトのリスト（ＸComb）のサブセット（Ｚ）と、１つまたは複数の共有パラメータ（β）を有する共有関数（ｆ）とに基づいて、データセット（ＸA／ＸB）の共有表現（Ｕ）を計算することを含み得る。いくつかの実施形態（たとえば、機械学習モデルが人工ニューラルネットワークである実施形態）では、１つまたは複数の共有パラメータ（β）は、重みテンソル
【０１６３】
【数１３】
2020537797.tif 000017
【０１６４】
などの共有パラメータテンソル（たとえば、共有パラメータ行列）に対応し得る。
【０１６５】
[00183]図１１、図１３Ａ、図１３Ｂ、図１４Ａ、および図１４Ｂ（ならびに結果的に方法４００の動作４２６、４３０、４３６Ａ、および４３６Ｂ）は、一例として、機械学習の人工ニューラルネットワークモデルを使用して示されている（たとえば、共有関数（ｆ）は、修正線形ユニット（ＲｅＬＵ）非線形性およびドロップアウトを有する人工ニューラルネットワークを含み得る）。このモデルは例として提供されるにすぎず、本開示の範囲から他の機械学習モデル（または、たとえば、統計的手法に基づく、非機械学習モデルさえ）を排除するように意図されていないことを理解されたい。教師あり学習モデル、教師なし学習モデル、および半教師あり学習モデル（たとえば、判別分析）を含む、他の機械学習モデルが方法４００とともに使用され得る。たとえば、決定ツリー学習、相関ルール学習、深層学習、帰納論理プログラミング、サポートベクトルマシン、関連ベクトルマシン、クラスタリング、ベイジアンネットワーク、強化学習、表現学習、類似性および距離学習、スパース辞書学習、遺伝的アルゴリズム、ルールベース機械学習、学習分類子システム、深層信念ネットワーク、リカレントニューラルネットワーク、または上述の技法の様々な組合せは、すべて本明細書において暗黙的に企図される。行列分解に基づく方法４００とともに使用するための機械学習の代替タイプについては、図１７Ａおよび図１７Ｂに関して明示的に図示および説明される。
【０１６６】
[00184]図１１に示されているように、人工ニューラルネットワークの例示的な場合には、データセット（ＸA／ＸB）の共有表現（Ｕ）を計算することは、一意のオブジェクトのリスト（ＸComb）中のオブジェクトの特徴の各々を第１レベルニューロン１１０２に相関させることを含み得る。特徴の各々をそれぞれの第１レベルニューロン１１０２に相関させた後に、第１レベルニューロン１１０２は中間レベルニューロン１１０４（すなわち、中間ニューロン）に接続され得る。図１１では図の混乱を防ぐために、１つの第１レベルニューロン１１０２と、１つの中間レベルニューロン１１０４とのみがラベリングされている。図１１の破線は、第１レベルニューロン１１０２層と中間レベルニューロン１１０４層との間に追加のニューロン層（たとえば、隠れニューロン層）が存在し得る可能性を示すように意図されている。
【０１６７】
[00185]第１レベルニューロン１１０２を中間レベルニューロン１１０４に接続することは、中間レベルニューロン１１０４への入力として第１レベルニューロン１１０２を使用することを含み得る。中間レベルニューロン１１０４への入力として第１レベルニューロン１１０２を使用することは、１つまたは複数の共有パラメータ（β）（すなわち、１つまたは複数の「重み」）によって各第１レベルニューロン１１０２の値を乗算することを含み得る。これらの１つまたは複数の共有パラメータ（β）は、テンソル（たとえば、２次元の例では「重み行列」）として記憶され得る。たとえば、図１１では、中間レベルニューロン１は、重みテンソル（たとえば、１つまたは複数の共有パラメータ（β）を表す行列）中の第１のエントリ（たとえば、「重み」）によって乗算された「書籍タイトル１」第１レベルニューロンの値＋重みテンソル中の第２のエントリによって乗算された「書籍タイトル２」第１ニューロンの値＋重みテンソル中の第３のエントリによって乗算された「書籍タイトル３」第１ニューロンの値などに対応する値を有し得る。このプロセスは、完全な共有表現（Ｕ）に達するために、一意のオブジェクトのリスト（ＸComb）のサブセット（Ｚ）中の各オブジェクトについて繰り返され得る。数学的に表されると、完全な共有表現（Ｕ）のこの定義は、
【０１６８】
【数１４】
2020537797.tif 000018
【０１６９】
に対応し得、ここで、
【０１７０】
【数１５】
2020537797.tif 000019
【０１７１】
は、一意のオブジェクトのリスト（ＸComb）のサブセット（Ｚ）中の各オブジェクトについての第１レベルニューロン１１０２の各々についての入力値を表すテンソル（たとえば、行列）であり、
【０１７２】
【数１６】
2020537797.tif 000020
【０１７３】
は、共有関数（ｆ）を定義する（たとえば、どのように中間レベルニューロン１１０４の値が第１レベルニューロン１１０２の値に依存するかを定義する）１つまたは複数の共有パラメータ（β）を表す重みテンソルであり、
【０１７４】
【数１７】
2020537797.tif 000021
【０１７５】
は、中間レベルニューロン１１０４の各々についての出力値を表すテンソル（たとえば、行列）である。上記に示されたように、共有表現（Ｕ）は、共有関数（ｆ）と、サブセット（Ｚ）中のオブジェクトとによって定義され得る（たとえば、Ｕ：＝ｆ（Ｚ；β））。図示のように、共有関数（ｆ）は、人工ニューラルネットワークモデルの１つまたは複数の第１の層に対応し得る。
【０１７６】
[00186]図１１の例では、
【０１７７】
【数１８】
2020537797.tif 000022
【０１７８】
は、４×７行列（サブセット（Ｚ）中の４つのオブジェクトの各々について７つの値）であり得、
【０１７９】
【数１９】
2020537797.tif 000023
【０１８０】
は、（どのように４つの中間レベルニューロン１１０４が７つの第１レベルニューロン１１０２にそれぞれ依存するかを示す）７×４行列であり得、
【０１８１】
【数２０】
2020537797.tif 000024
【０１８２】
は、４×４行列（サブセット（Ｚ）中の４つのオブジェクトの各々について４つの値）であり得る。
【０１８３】
【数２１】
2020537797.tif 000025
【０１８４】
は、あらゆるオブジェクト（「ユーザ」）が、管理コンピューティングデバイス４０６によって受信されたデータセット（ＸA／ＸB）中の各特徴（「書籍タイトル」）に値（「レーティング」）を提供しているとは限らないので、スパース行列であり得る。言い換えれば、クライアントコンピューティングデバイス４０２／４０４によって提供されるデータセット（ＸA／ＸB）が完全でないことがあるので、
【０１８５】
【数２２】
2020537797.tif 000026
【０１８６】
も不完全である（たとえば、値なしのエントリを有する）ことがある。結果的に、上記の行列乗算に基づいて、たとえば、
【０１８７】
【数２３】
2020537797.tif 000027
【０１８８】
もスパース行列であり得る。
【０１８９】
[00187]いくつかの実施形態では、共有表現（Ｕ）を計算するより前に、共有関数（ｆ）と、（たとえば、人工ニューラルネットワーク実施形態において「重み」テンソル内に記憶された）１つまたは複数の共有パラメータ（β）とは、管理コンピューティングデバイス４０６によって初期化され得る。たとえば、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とは、同様の関係をモデル化するために使用される関係する共有関数に基づいて初期化され得る（たとえば、共有関数（ｆ）が、所与の保険に入っている個人の危険因子と、その個人に生命保険を提供するための所与の保険料との間の関係をモデル化するために使用されている場合、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とは、所与の保険に入っている個人の危険因子と、その個人に健康保険を提供するための所与の保険料との間の関係をモデル化するために開発された以前のモデルに基づいて設定され得る）。関係する共有関数に基づいて、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とを初期化することは、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とを、関係する共有関数と、関係する共有関数のための１つまたは複数の共有パラメータとに等しく設定することを含み得る。代替的に、関係する共有関数に基づいて、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とを初期化することは、関係する共有関数と、関係する共有関数のための１つまたは複数の共有パラメータとをスケーリングおよび／または正規化し、次いで、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とのための初期値として、スケーリングおよび／または正規化された値を使用することを含み得る。
【０１９０】
[00188]代替実施形態では、管理コンピューティングデバイス４０６が、共有関数（ｆ）、または１つあるいは複数の共有パラメータ（β）とを初期化することは、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイス（たとえば、コンピューティングデバイスＡ４０２あるいはコンピューティングデバイスＢ４０４）のうちの１つから、１つあるいは複数の共有パラメータ（β）の初期値を受信することを含み得る。管理コンピューティングデバイス４０６は、受信された初期値に基づいて、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とを初期化し得る。１つまたは複数の共有パラメータ（β）の初期値は、１つまたは複数の公開モデル（たとえば、公的に入手可能な機械学習モデル）に基づいて、それぞれのクライアントコンピューティングデバイス（たとえば、クライアントコンピューティングデバイスＡ４０２またはクライアントコンピューティングデバイスＢ４０４）によって決定され得る。
【０１９１】
[00189]さらに他の実施形態では、管理コンピューティングデバイス４０６は、乱数生成器または擬似乱数生成器（たとえば、メルセンヌツイスタ擬似乱数生成器）に基づいて、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とを初期化し得る。たとえば、管理コンピューティングデバイス４０６は、人工ニューラルネットワークの対応する重みテンソル内の１つまたは複数の共有パラメータ（β）の各々についてランダム値を選択し得る。また他の実施形態では、管理コンピューティングデバイス４０６は、１つまたは複数の共有パラメータが、１つまたは複数の共有パラメータ（β）についてのすべての可能な値の中間点にそれぞれあるように、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とを初期化し得る。たとえば、１つまたは複数の共有パラメータ（β）が重みテンソルを表す（および１つまたは複数の共有パラメータ（β）の各パラメータが重みを表す）場合、１つまたは複数の共有パラメータ（β）のすべての値は、管理コンピューティングデバイス４０６によって０．５（０．０と１．０との間の中間点）に初期化され得る。
【０１９２】
[00190]図１２Ａおよび図１２Ｂは、方法４００の動作４２８の図である。図４Ｃに関して説明されたように、動作４２８において、方法４００は、クライアントコンピューティングデバイスＡ４０２が、データセットＡ（ＸA）についてオブジェクトのサブリスト（ＳA）を決定することを含み得る。オブジェクトのサブリスト（ＳA）は、識別子のサブセット（Ｓ）と、データセットＡ（ＸA）についての識別子のリスト（ＭA）との共通部分に基づき得る。同様に、動作４２８において、方法４００は、クライアントコンピューティングデバイスＢ４０４が、データセットＢ（ＸB）についてオブジェクトのサブリスト（ＳB）を決定することを含み得る。オブジェクトのサブリスト（ＳB）は、識別子のサブセット（Ｓ）と、データセットＢ（ＸB）についての識別子のリスト（ＭB）との共通部分に基づき得る。
【０１９３】
[00191]図１３Ａおよび図１３Ｂは、それぞれ、図４Ｂ〜図４Ｅに示されている方法４００の動作４３０を示す。図４Ｃに関して説明されたように、動作４３０において、方法４００は、管理コンピューティングデバイス４０６が、データセットＡ（ＸA）について部分表現（ＵA）を決定することを含み得る。部分表現（ＵA）は、オブジェクトのサブリスト（ＳA）と、共有表現（Ｕ）とに基づき得る。同様に図４Ｃに関して説明されたように、動作４３０において、方法４００は、管理コンピューティングデバイス４０６が、データセットＢ（ＸB）について部分表現（ＵB）を決定することを含み得る。部分表現（ＵB）は、オブジェクトのサブリスト（ＳB）と、共有表現（Ｕ）とに基づき得る。図１３Ａおよび図１３Ｂでは、図を混乱させるのを回避するために、中間レベルニューロン１１０４のうちの１つと、第１レベルニューロン１１０２のうちの１つとのみがラベリングされている。
【０１９４】
[00192]図１３Ａでは、オブジェクトのサブリスト（ＳA）に対応する共有表現（Ｕ）の成分のみが部分表現（ＵA）中に含まれ得る。たとえば、部分表現（ＵA）は、オブジェクトのサブリスト（ＳA）中に含まれないオブジェクトに関して行われた計算に基づくデータを含まないことがある。
【０１９５】
【数２４】
2020537797.tif 000028
【０１９６】
である上記の行列に戻ると、
【０１９７】
【数２５】
2020537797.tif 000029
【０１９８】
の第４の行が「ユーザ０４」（オブジェクトのサブリスト（ＳA）中に存在しないオブジェクト）に対応する場合、
【０１９９】
【数２６】
2020537797.tif 000030
【０２００】
の対応する第４の行は、「ユーザ０４」がオブジェクトのサブリスト（ＳA）中に含まれないので、部分表現（ＵA）中に存在しないことがある。したがって、１つまたは複数の共有パラメータ（β）は、一意のオブジェクトのリスト（ＸComb）のサブセット（Ｚ）内のオブジェクトの各々に適用され得るが、オブジェクトのそれぞれのサブリスト（ＳA）中に含まれるオブジェクトに対応する部分表現（ＵA）の値のみが、それぞれの部分表現（ＵA）中に含まれ得る。いくつかの実施形態（たとえば、人工ニューラルネットワーク実施形態）では、上記で説明されたように、これは、部分表現（ＵA）中に存在する
【０２０１】
【数２７】
2020537797.tif 000031
【０２０２】
のいくつかの行のみに対応し得る。
【０２０３】
[00193]同様に図１３Ｂでは、オブジェクトのサブリスト（ＳB）に対応する共有表現（Ｕ）の成分のみが部分表現（ＵB）中に含まれ得る。たとえば、部分表現（ＵB）は、オブジェクトのサブリスト（ＳB）中に含まれないオブジェクトに関して行われた計算に基づくデータを含まないことがある。
【０２０４】
【数２８】
2020537797.tif 000032
【０２０５】
である上記の行列に戻ると、
【０２０６】
【数２９】
2020537797.tif 000033
【０２０７】
の第３の行が「ユーザ０３」（オブジェクトのサブリスト（ＳB）中に存在しないオブジェクト）に対応する場合、
【０２０８】
【数３０】
2020537797.tif 000034
【０２０９】
の対応する第３の行は、「ユーザ０３」がオブジェクトのサブリスト（ＳB）中に含まれないので、部分表現（ＵB）中に存在しないことがある。したがって、１つまたは複数の共有パラメータ（β）は、一意のオブジェクトのリスト（ＸComb）のサブセット（Ｚ）内のオブジェクトの各々に適用され得るが、オブジェクトのそれぞれのサブリスト（ＳB）中に含まれるオブジェクトに対応する部分表現（ＵB）の値のみが、それぞれの部分表現（ＵB）中に含まれ得る。いくつかの実施形態（たとえば、人工ニューラルネットワーク実施形態）では、上記で説明されたように、これは、部分表現（ＵB）中に存在する
【０２１０】
【数３１】
2020537797.tif 000035
【０２１１】
のいくつかの行のみに対応し得る。
【０２１２】
[00194]いくつかの実施形態では、図４Ｃに関して説明されたように、データセット（ＸA／ＸB）についてオブジェクトのサブリスト（ＳA／ＳB）と、部分表現（ＵA／ＵB）とを決定した後に、（たとえば、方法４００の動作４３２および４３４において）管理コンピューティングデバイス４０６は、それぞれのクライアントコンピューティングデバイス（クライアントコンピューティングデバイスＡ４０２／クライアントコンピューティングデバイスＢ４０４）に、それぞれのデータセット（ＸA／ＸB）についてのオブジェクトのサブリスト（ＳA／ＳB）と、部分表現（ＵA／ＵB）とを送信し得る。
【０２１３】
[00195]図１４Ａおよび図１４Ｂは、それぞれ、図４Ｂ〜図４Ｅに示されている方法４００の動作４３６Ａおよび４３６Ｂの部分を示す。図４Ｄに関して説明されたように、動作４３６Ａにおいて、方法４００は、クライアントコンピューティングデバイスＡ４０２が、データセットＡ（ＸA）に対応する予測値のセット
【０２１４】
【数３２】
2020537797.tif 000036
【０２１５】
を決定することを含み得る。予測値のセットは、データセットＡ（ＸA）に対応する部分表現（ＵA）と、１つまたは複数の個別パラメータ（γA）をもつ個別関数（ｇA）とに基づき得る。同様に図４Ｄに関して説明されたように、動作４３６Ｂにおいて、方法４００は、クライアントコンピューティングデバイスＢ４０４が、データセットＢ（ＸB）に対応する予測値のセット
【０２１６】
【数３３】
2020537797.tif 000037
【０２１７】
を決定することを含み得る。予測値のセットは、データセットＢ（ＸB）に対応する部分表現（ＵB）と、１つまたは複数の個別パラメータ（γB）をもつ個別関数（ｇB）とに基づき得る。
【０２１８】
[00196]人工ニューラルネットワークモデルを採用する例示的な実施形態では、予測値のセット
【０２１９】
【数３４】
2020537797.tif 000038
【０２２０】
は、図１４Ａおよび図１４Ｂに示されているように、オブジェクトのそれぞれのサブリスト（ＳA／ＳB）中の各オブジェクトについての各上位レベルニューロン１４０２の出力値のセットに対応し得る。図５Ａおよび図５Ｂに示されている例示的なデータセット（ＸA／ＸB）と、記録値の対応するセット（ＹA／ＹB）とを使用して、予測値のセット
【０２２１】
【数３５】
2020537797.tif 000039
【０２２２】
は、「ムービータイトル１」と、「ムービータイトル２」と、「ムービータイトル３」と、「ムービータイトル４」と、「ムービータイトル５」とのレーティングに対応し得る。同じく図示のように、予測値のこれらのセット
【０２２３】
【数３６】
2020537797.tif 000040
【０２２４】
は、データセット（ＸA／ＸB）に対応するそれぞれの１つまたは複数の個別パラメータ（γA／γB）によって乗算された（１つまたは複数の共有パラメータによって乗算された第１レベルニューロン１１０２にそれら自体が基づく）中間レベルニューロン１１０４の値に基づいて決定され得る。これらの個別パラメータは、たとえば、重みテンソル（たとえば、重み行列）
【０２２５】
【数３７】
2020537797.tif 000041
【０２２６】
に記憶され得る。代替実施形態では、（たとえば、人工ニューラルネットワーク以外の）異なる機械学習モデルが使用される場合、１つまたは複数の個別パラメータ（γA／γB）は、機械学習モデルの他のパラメータ（たとえば、重みテンソル以外のパラメータ）に対応し得る。図１１、図１３Ａ、および図１３Ｂにおけるように、破線は、いくつかの実施形態では、図示された人工ニューラルネットワークの層の間に追加の隠れ層（たとえば、１、２、３、４、５、６、７、８、９、１０、１５、１６、２０、３２、または、６４個の隠れ層）があり得ることを示す。
【０２２７】
[00197]図１４Ａおよび図１４Ｂでは、それぞれの図の一部分のみが個別関数（ｇA／ｇB）を表している。個別関数（ｇA／ｇB）を表す部分は、上位レベルニューロン１４０２に接続された中間レベルニューロン１１０４である。中間レベルニューロン１１０４と第１レベルニューロン１１０２との間の接続、ならびに第１レベルニューロン１１０２自体は、それぞれの個別関数（ｇA／ｇB）にコンテキストを提供するためにのみ示されている。たとえば、それぞれの個別関数（ｇA／ｇB）は各々、共有表現（Ｕ）全体ではなく、部分表現（ＵA／ＵB）のみに作用する。上記の場合と同様に、図を混乱させるのを回避するために、単一の第１レベルニューロン１１０２と、単一の中間レベルニューロン１１０４と、単一の上位レベルニューロン１４０２とのみがラベリングされている。
【０２２８】
[00198]下付き文字「ｉ」を使用する、以下で説明される変数は、対応するデータセットを指すことを意図される。たとえば、下付き文字「ｉ」は、データセットＡ（ＸA）に対応する何らかの変数を指すときは「Ａ」と交換され得、データセットＢ（ＸB）に対応する何らかの変数を指すときは「Ｂ」と交換され得る。したがって、所与のデータセットに対応する個別関数（ｇi）は、適切な場合、変数名と交換され得る（ｇi→ｇA／ｇB）。同様の交換は、所与のデータセットの部分表現（Ｕi→ＵA／ＵB）と、所与のデータセットのための個別パラメータ（γi→γA／γB）とについて使用され得る。
【０２２９】
[00199]上記で説明されたように、共有表現（Ｕ）は、共有関数（ｆ）と、サブセット（Ｚ）中のオブジェクトとによって定義され得る（たとえば、Ｕ：＝ｆ（Ｚ；β））。さらに、共有関数（ｆ）は、図１１、図１３Ａ、および図１３Ｂに示されているように、人工ニューラルネットワークモデルの１つまたは複数の層に対応し得る。共有表現（Ｕ）の定義と同様に、個別表現（ＩA／ＩB）が、それぞれ、各クライアントコンピューティングデバイス（クライアントコンピューティングデバイスＡ４０２／クライアントコンピューティングデバイスＢ）によって各データセット（ＸA／ＸB）について生成され得る。個別表現（ＩA／ＩB）は共有表現（Ｕ）と同様に定義され得る。数学的に表されると、所与のデータセットに対応する個別関数（ｇi）と、所与のデータセットについての部分表現（Ｕi）と、所与のデータセットのための１つまたは複数の個別パラメータ（γi）とに基づく、個別表現（Ｉi）のこの定義は、
【０２３０】
【数３８】
2020537797.tif 000042
【０２３１】
に対応し得、ここで、
【０２３２】
【数３９】
2020537797.tif 000043
【０２３３】
は、所与のデータセット（Ｕi）についてそれぞれの部分表現から取られた中間レベルニューロン１１０４の各々についての入力値を表すテンソル（たとえば、行列）であり、
【０２３４】
【数４０】
2020537797.tif 000044
【０２３５】
は、所与のデータセットについての個別関数（ｇi）を定義する（たとえば、どのように上位レベルニューロン１４０２の値が中間レベルニューロン１１０４の値に依存するかを定義する）所与のデータセットのための１つまたは複数の個別パラメータ（γi）を表す重みテンソルであり、
【０２３６】
【数４１】
2020537797.tif 000045
【０２３７】
は、上位レベルニューロン１４０２の各々についての出力値を表すテンソル（たとえば、行列）である。上記に示されたように、個別表現（Ｉi）は、所与のデータセットについての個別関数（ｇi）と、部分表現（Ｕi）とによって定義され得る（たとえば、Ｉ：＝ｇｉ（Ｕi；γi））。図示のように、各個別関数（ｇi）は、人工ニューラルネットワークモデルの１つまたは複数の第２の層の少なくとも一部分に対応し得る。上記で説明された共有関数（ｆ）に対応する１つまたは複数の第１の層のうちの少なくとも１つは、個別関数（ｇi）に対応する１つまたは複数の第２の層のうちの少なくとも１つへの入力層であり得る。
【０２３８】
[00200]図１４Ａの例では、
【０２３９】
【数４２】
2020537797.tif 000046
【０２４０】
は、３×４行列（オブジェクトのサブリスト（ＳA）中の３つのオブジェクトの各々について４つの中間レベルニューロン１１０４値）であり得、
【０２４１】
【数４３】
2020537797.tif 000047
【０２４２】
は、（どのように５つの上位レベルニューロン１４０２が４つの中間レベルニューロン１１０４にそれぞれ依存するかを示す）４×５行列であり得、
【０２４３】
【数４４】
2020537797.tif 000048
【０２４４】
は、３×５行列（オブジェクトのサブリスト（ＳA）中の３つのオブジェクトの各々について５つの上位レベルニューロン１４０２値）であり得る。
【０２４５】
【数４５】
2020537797.tif 000049
【０２４６】
は、あらゆるオブジェクト（「ユーザ」）が、管理コンピューティングデバイス４０６によって受信されたデータセット（ＸA）中の各特徴（「書籍タイトル」）に値（「レーティング」）を提供しているとは限らないので、スパース行列であり得る。言い換えれば、クライアントコンピューティングデバイスＡ４０２によって提供されるデータセット（ＸA）が完全でないことがあるので、
【０２４７】
【数４６】
2020537797.tif 000050
【０２４８】
は、上記で説明されたように、不完全／スパースである（たとえば、値なしのエントリを有する）ことがある。結果的に、上記で説明された行列乗算の２つの層に基づいて、たとえば、
【０２４９】
【数４７】
2020537797.tif 000051
【０２５０】
もスパース行列であり得る。
【０２５１】
[00201]図１４Ｂの例では、
【０２５２】
【数４８】
2020537797.tif 000052
【０２５３】
も、３×４行列（オブジェクトのサブリスト（ＳB）中の３つのオブジェクトの各々について４つの中間レベルニューロン１１０４値）であり得、
【０２５４】
【数４９】
2020537797.tif 000053
【０２５５】
は、（どのように９つの上位レベルニューロン１４０２が４つの中間レベルニューロン１１０４にそれぞれ依存するかを示す）３×４行列であり得、
【０２５６】
【数５０】
2020537797.tif 000054
【０２５７】
は、３×９行列（オブジェクトのサブリスト（ＳB）中の３つのオブジェクトの各々について９つの上位レベルニューロン１４０２値）であり得る。
【０２５８】
【数５１】
2020537797.tif 000055
【０２５９】
は、あらゆるオブジェクト（「ユーザ」）が、管理コンピューティングデバイス４０６によって受信されたデータセット（ＸB）中の各特徴（「書籍タイトル」）に値（「レーティング」）を提供しているとは限らないので、スパース行列であり得る。言い換えれば、クライアントコンピューティングデバイスＢ４０４によって提供されるデータセット（ＸB）が完全でないことがあるので、
【０２６０】
【数５２】
2020537797.tif 000056
【０２６１】
は、上記で説明されたように、不完全／スパースである（たとえば、値なしのエントリを有する）ことがある。結果的に、上記で説明された行列乗算の２つの層に基づいて、たとえば、
【０２６２】
【数５３】
2020537797.tif 000057
【０２６３】
もスパース行列であり得る。
【０２６４】
[00202]いくつかの実施形態では、個別表現（Ｉ）を計算するより前に、個別関数（ｇi）と、（たとえば、人工ニューラルネットワーク実施形態において「重み」テンソル内に記憶された）１つまたは複数の個別パラメータ（γi）とは、それぞれのクライアントコンピューティングデバイスによって初期化され得る。それぞれのクライアントコンピューティングデバイスは、乱数生成器または擬似乱数生成器（たとえば、メルセンヌツイスタ擬似乱数生成器）に基づいて、それぞれのデータセット（ＸA／ＸB）に対応する個別関数（ｇi）と、１つまたは複数の個別パラメータ（γi）とを初期化し得る。
【０２６５】
[00203]図１５Ａおよび図１５Ｂは、それぞれ、図４Ｂ〜図４Ｅに示されている方法４００の動作４３８Ａおよび４３８Ｂの部分を示す。図４Ｄに関して説明されたように、動作４３８Ａにおいて、方法４００は、クライアントコンピューティングデバイスＡ４０２がデータセットＡ（ＸA）についての誤差（ＥA）を決定することを含み得る。誤差（ＥA）は、データセットＡ（ＸA）についての個別損失関数（ＬA）と、データセットＡ（ＸA）に対応する予測値のセット
【０２６６】
【数５４】
2020537797.tif 000058
【０２６７】
と、オブジェクトのサブリスト（ＳA）と、データセットＡ（ＸA）に対応する記録値のセット（ＹA）中の非空エントリ（ＷA）とに基づき得る。同様に図４Ｄに関して説明されたように、動作４３８Ｂにおいて、方法４００は、クライアントコンピューティングデバイスＢ４０４がデータセットＢ（ＸB）についての誤差（ＥB）を決定することを含み得る。誤差（ＥB）は、データセットＢ（ＸB）についての個別損失関数（ＬB）と、データセットＢ（ＸB）に対応する予測値のセット
【０２６８】
【数５５】
2020537797.tif 000059
【０２６９】
と、オブジェクトのサブリスト（ＳB）と、データセットＢ（ＸB）に対応する記録値のセット（ＹB）中の非空エントリ（ＷB）とに基づき得る。
【０２７０】
[00204]図１５Ａおよび図１５Ｂに表されているデータを生成するために、予測値１５０４のセット
【０２７１】
【数５６】
2020537797.tif 000060
【０２７２】
は、各データセット（ＸA／ＸB）に対応する記録値１５０２のセット（ＹA／ＹB）と比較される。図５Ａおよび図５Ｂに示されている例示的なデータセット（ＸA／ＸB）と、記録値１５０２の対応するセット（ＹA／ＹB）とを使用して、予測値１５０４のセット
【０２７３】
【数５７】
2020537797.tif 000061
【０２７４】
は、推定されるムービーレーティングに対応し、記録値１５０２のセット（ＹA／ＹB）は、実際のムービーレーティングに対応する。図１５Ａでは、「ユーザ００」についての記録値１５０２のセット（ＹA）（たとえば、記録値１５０２のセット（ＹA）に対応する行列の第１の行）が、「ユーザ００」についての予測値１５０４のセット
【０２７５】
【数５８】
2020537797.tif 000062
【０２７６】
（たとえば、予測値１５０４のセット
【０２７７】
【数５９】
2020537797.tif 000063
【０２７８】
に対応する行列の第１の行）と比較される。図１５Ｂでは、「ユーザ０４」についての記録値１５０２のセット（ＹB）（たとえば、記録値１５０２のセット（ＹB）に対応する行列の第３の行）が、「ユーザ０４」についての予測値１５０４のセット
【０２７９】
【数６０】
2020537797.tif 000064
【０２８０】
（たとえば、予測値１５０４のセット
【０２８１】
【数６１】
2020537797.tif 000065
【０２８２】
に対応する行列の第３の行）と比較される。
【０２８３】
[00205]両方のデータセットについて、記録値１５０２のセット（ＹA／ＹB）と、予測値１５０４のセット
【０２８４】
【数６２】
2020537797.tif 000066
【０２８５】
とが、例として図１５Ａおよび図１５Ｂに示されている。オブジェクトのそれぞれのサブリスト（ＳA／ＳB）中の他のオブジェクトのために、記録値１５０２のセット（ＹA／ＹB）と、予測値１５０４のセット
【０２８６】
【数６３】
2020537797.tif 000067
【０２８７】
とについて、同様のプロットが作られ得る。たとえば、データセットＡ（ＸA）に対応するオブジェクトのサブリスト（ＳA）からの「ユーザ０１」および「ユーザ０３」もプロットされ得る。対応する記録値１５０２（たとえば、「ユーザ００」についての「ムービータイトル２」）がない、いくつかの特徴（たとえば、図５Ａおよび図５Ｂからの例示的なデータセット（ＸA／ＸB）と、記録値の例示的なセット（ＹA／ＹB）とを使用する「ムービータイトル」）がある。したがって、これらの特徴について、図１５Ａおよび図１５Ｂに示されている対応する記録値１５０２（たとえば、「実際のムービーレーティング」（ＹA／ＹB））はない。
【０２８８】
[00206]予測値１５０４のセット
【０２８９】
【数６４】
2020537797.tif 000068
【０２９０】
は、記録値１５０２のセット（ＹA／ＹB）と同様に、テンソル（たとえば、行列）として記憶され得る。予測値１５０４のセット
【０２９１】
【数６５】
2020537797.tif 000069
【０２９２】
は、次いで、それぞれのデータセット（ＸA／ＸB）の誤差を計算するために記録値１５０２のセット（ＹA／ＹB）と比較され得る。誤差（ＥA／ＥB）は、個別損失関数（ＬA／ＬB）に従って計算され得る。たとえば、各データセット（ＸA／ＸB）に対応する誤差（ＥA／ＥB）は、記録値１５０２のセット（ＹA／ＹB）を表すテンソル中の各非０エントリ（ＷA／ＷB）において評価される個別損失関数（ＬA／ＬB）の和であり得る。図１５Ａに示されているように、所与のエントリについて評価される個別損失関数（ＬA／ＬB）は、そのエントリの予測値１５０４と、そのエントリの記録値１５０２との間の差１５０６に基づき得る。図を混乱させるのを回避するために、図１５Ａと図１５Ｂとの各々にはただ１つの差１５０６がラベリングされている。数学的に、データセットＡ（ＸA）に対応する誤差（ＥA）は、
【０２９３】
【数６６】
2020537797.tif 000070
【０２９４】
によって表され得る。
【０２９５】
[00207]上記の式は、データセットＡ（ＸA）に対応する誤差（ＥA）が、データセットＡ（ＸA）についての記録値のセット（ＹA）に対応するオブジェクトのサブリスト（ＳA）中の各オブジェクトの各非空エントリ（ＷA）について、予測値のセット
【０２９６】
【数６７】
2020537797.tif 000071
【０２９７】
中のエントリと、記録値のセット（ＹA）中のエントリとの間で評価される、個別損失関数（ＬA）の和に等しいことを表す。上記の和における加数は「部分誤差値」と呼ばれることがある。データセットＢ（ＸB）についての数学的表現は、必要な変更を加えて、データセットＡ（ＸA）についての数学的表現に類似する。
【０２９８】
[00208]いくつかの実施形態では、個別損失関数（ＬA／ＬB）は、２次損失関数、対数損失関数、ヒンジ損失関数、分位損失関数、またはコックス比例ハザードモデルに関連する損失関数のうちの少なくとも１つを含み得る。さらに、いくつかの実施形態では、異なるクライアントコンピューティングデバイスは、「共有損失関数」と呼ばれる、同じ個別損失関数を使用し得る（たとえば、各クライアントコンピューティングデバイスによって使用される個別損失関数は管理コンピューティングデバイス４０６によって規定され得る）。たとえば、クライアントコンピューティングデバイスＡ４０２とクライアントコンピューティングデバイスＢ４０４の両方が、それぞれの個別損失関数（ＬA／ＬB）のために２次損失関数を使用し得る（たとえば、ＬA（ｊ，ｋ）＝（ｊ−ｋ）2）。代替実施形態では、異なるデータセット（ＸA／ＸB）に対応する個別損失関数（ＬA／ＬB）は異なり得る。しかしながら、そのような実施形態では、データセット（ＸA／ＸB）のそれぞれのクライアントコンピューティングデバイスによって生成されるいくつかの結果（たとえば、誤差（ＥA／ＥB））は、異なる個別損失関数（ＬA／ＬB）が使用されたとしても結果が互いに有意味に比較されることが可能になるように、管理コンピューティングデバイス４０６への送信の前または後に正規化され得る。いくつかのそのような実施形態では、クライアントコンピューティングデバイスによって使用される特定の個別損失関数（ＬA／ＬB）に関する、および／または記録値の対応するセット（ＹA／ＹB）に関する情報が管理コンピューティングデバイス４０６に送信され得る。使用される特定の個別損失関数（ＬA／ＬB）に関する、および／または記録値の対応するセット（ＹA／ＹB）に関する情報は、正規化を実施するために管理コンピューティングデバイス４０６によって使用され得る。
【０２９９】
[00209]いくつかの実施形態では、図４Ｄに関して図示および説明されたように、方法４００はまた、１つまたは複数の個別パラメータ（γA／γB）を更新することを含み得る。たとえば、動作４４０Ａにおいて、方法４００は、クライアントコンピューティングデバイスＡ４０２が、データセットＡ（ＸA）についての１つまたは複数の個別パラメータ（γA）を更新することを含み得る。同様に、動作４４０Ｂにおいて、方法４００は、クライアントコンピューティングデバイスＢ４０４が、データセットＢ（ＸB）についての１つまたは複数の個別パラメータ（γB）を更新することを含み得る。１つまたは複数の個別パラメータ（γA／γB）を更新することは、計算されたそれぞれの誤差（ＥA／ＥB）に関して勾配降下を実施することを含み得る。追加または代替として（たとえば、採用される機械学習モデルが人工ニューラルネットワークであるとき）、１つまたは複数の個別パラメータ（γA／γB）を更新することは、重みテンソル（たとえば、重み行列）
【０３００】
【数６８】
2020537797.tif 000072
【０３０１】
に基づいてそれぞれの誤差（ＥA／ＥB）を逆伝搬することを含み得る。逆伝搬誤差（ＥA／ＥB）に基づいて、それぞれの１つまたは複数の個別パラメータ（γA／γB）が更新され得、それにより、予測値のそれぞれのセット
【０３０２】
【数６９】
2020537797.tif 000073
【０３０３】
への改善がもたらされ得る。
【０３０４】
[00210]それぞれの１つまたは複数の個別パラメータ（γA／γB）がそれだけ更新される量は、それぞれの個別学習率（ＲA／ＲB）に対応し得る。個別学習率（ＲA／ＲB）は、いくつかの実施形態では、クライアントコンピューティングデバイスの各々によって独立して決定され得る。他の実施形態では、個別学習率（ＲA／ＲB）は、管理コンピューティングデバイス４０６によって決定され、次いで、クライアントコンピューティングデバイスに個々に送信され得る。代替的に、個別学習率（ＲA／ＲB）は、各それぞれのクライアントコンピューティングデバイスによって使用される勾配降下法に固有であり得る。いくつかの実施形態では、個別学習率（ＲA／ＲB）の一方または両方は、指数関数的減衰学習率、ハーモニック減衰学習率、ステップワイズ指数関数的減衰学習率、または適応学習率のうちの少なくとも１つを含み得る。
【０３０５】
[00211]いくつかの実施形態では、図４Ｄに関して図示および説明されたように、方法４００はまた、１つまたは複数のフィードバック値（ＣA／ＣB）を決定することを含み得る。たとえば、動作４４２Ａにおいて、方法４００は、クライアントコンピューティングデバイスＡ４０２が１つまたは複数のフィードバック値（ＣA）を決定することを含み得る。１つまたは複数のフィードバック値（ＣA）は、予測値のセット
【０３０６】
【数７０】
2020537797.tif 000074
【０３０７】
の改善に対応する部分表現（ＵA）の変化を決定するために使用され得る。同様に、動作４４２Ｂにおいて、方法４００は、クライアントコンピューティングデバイスＢ４０４が１つまたは複数のフィードバック値（ＣB）を決定することを含み得る。１つまたは複数のフィードバック値（ＣB）は、予測値のセット
【０３０８】
【数７１】
2020537797.tif 000075
【０３０９】
の改善に対応する部分表現（ＵB）の変化を決定するために使用され得る。１つまたは複数のフィードバック値（ＣA／ＣB）は、（たとえば、重みテンソル
【０３１０】
【数７２】
2020537797.tif 000076
【０３１１】
に基づく）逆伝搬誤差（ＥA／ＥB）に対応し得る。
【０３１２】
[00212]いくつかの実施形態では、１つまたは複数のフィードバック値（ＣA／ＣB）を決定することは、それぞれのクライアントコンピューティングデバイス（クライアントコンピューティングデバイスＡ４０２／クライアントコンピューティングデバイスＢ４０４）によって、勾配降下法を実施することに対応し得る。追加または代替として、予測値のそれぞれのセット
【０３１３】
【数７３】
2020537797.tif 000077
【０３１４】
の改善に対応するそれぞれの部分表現（ＵA／ＵB）の変化を決定するとき、予測値のそれぞれのセットはしきい値改善値に対応し得る。しきい値改善値は共有学習率（η）に基づき得る。いくつかの実施形態では、共有学習率（η）は、管理コンピューティングデバイス４０６によって決定され、管理コンピューティングデバイス４０６によってクライアントコンピューティングデバイスの各々に送信され得る。追加または代替として、いくつかの実施形態では、共有学習率（η）は、クライアントコンピューティングデバイスによって使用される勾配降下法によって定義され得る。たとえば、クライアントコンピューティングデバイスは、関連する共有学習率（η）を有する、同じ勾配降下法（たとえば、管理コンピューティングデバイス４０６によって規定される共有勾配降下法）をそれぞれ使用し得る。さらに、共有学習率（η）は、指数関数的減衰学習率、ハーモニック減衰学習率、またはステップワイズ指数関数的減衰学習率のうちの少なくとも１つを含み得る。他の実施形態では、共有学習率（η）は適応学習率を含み得る。
【０３１５】
[00213]いくつかの実施形態では、予測値のそれぞれのセット
【０３１６】
【数７４】
2020537797.tif 000078
【０３１７】
の改善に対応するそれぞれの部分表現（ＵA／ＵB）の変化を決定するとき、予測値のセット
【０３１８】
【数７５】
2020537797.tif 000079
【０３１９】
の改善は、独立してクライアントコンピューティングデバイスの各々によって決定された個別学習率（ＲA／ＲB）によって定義されるしきい値改善値に対応する。いくつかの実施形態では、個別学習率（ＲA／ＲB）は、指数関数的減衰学習率、ハーモニック減衰学習率、またはステップワイズ指数関数的減衰学習率のうちの少なくとも１つを含み得る。
【０３２０】
[00214]いくつかの実施形態では、１つまたは複数のフィードバック値（ＣA／ＣB）は、それぞれのフィードバックテンソル
【０３２１】
【数７６】
2020537797.tif 000080
【０３２２】
に編成され得る。各フィードバックテンソル
【０３２３】
【数７７】
2020537797.tif 000081
【０３２４】
は、それぞれの部分表現（ＵA／ＵB）の次元性に等しい次元性を有し得る。たとえば、図５Ａおよび図５Ｂに示されている例示的なデータセット（ＸA／ＸB）と、記録値のセット（ＹA／ＹB）とを使用して、方法４００を使用して生じる対応するフィードバックテンソル
【０３２５】
【数７８】
2020537797.tif 000082
【０３２６】
は、２次元フィードバックテンソル（すなわち、フィードバック行列）であり得る。
【０３２７】
[00215]いくつかの実施形態では、図４Ｄに関して図示および説明されたように、方法４００はまた、（たとえば、動作４４４において）クライアントコンピューティングデバイスＡ４０２が管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値（ＣA）を送信することを含み得る。追加または代替として、方法４００は、（たとえば、動作４４６において）クライアントコンピューティングデバイスＢ４０４が管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値（ＣB）を送信することを含み得る。いくつかの実施形態では、クライアントコンピューティングデバイスＢ４０６は、クライアントコンピューティングデバイスＡ４０４が管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値（ＣA）を送信するより前にまたはそれと同時に、管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値（ＣB）を送信し得る。代替的に、いくつかの実施形態では、クライアントコンピューティングデバイスのうちの両方ではなく、ただ１つ（たとえば、クライアントコンピューティングデバイスＡ４０２）が、管理コンピューティングデバイス４０６に１つまたは複数のフィードバック値（たとえば、ＣA）を送信し得る。
【０３２８】
[00216]いくつかの実施形態では、図４Ｅに関して図示および説明されたように、方法４００はまた、（たとえば、動作４４８において）管理コンピューティングデバイス４０６が、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）を決定することを含み得る。１つまたは複数のアグリゲートされたフィードバック値（ＣComb）は、それぞれ、データセットＡ（ＸA）およびデータセットＢ（ＸB）に対応するオブジェクトのサブリスト（ＳA／ＳB）と、それぞれ、クライアントコンピューティングデバイスＡ４０２およびクライアントコンピューティングデバイスＢ４０４からの１つまたは複数のフィードバック値（ＣA／ＣB）とに基づき得る。いくつかの実施形態では、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）を決定することは、管理コンピューティングデバイス４０６が、オブジェクトのサブリスト（ＳA／ＳB）と、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値（ＣA／ＣB）とに基づいて、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）を表すテンソル
【０３２９】
【数７９】
2020537797.tif 000083
【０３３０】
を定義することを含み得る。さらに、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）を決定することはまた、管理コンピューティングデバイス４０６が、オブジェクトのサブリスト（ＳA／ＳB）に基づいて、共有識別子を有するオブジェクトのサブリスト（ＳA／ＳB）中のオブジェクトに対応するクライアントコンピューティングデバイスからの１つまたは複数のフィードバック値（ＣA／ＣB）のうちのフィードバック値を、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）を表すテンソル
【０３３１】
【数８０】
2020537797.tif 000084
【０３３２】
の共有エントリにまとめることを含み得る。
【０３３３】
[00217]いくつかの実施形態では、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）は、アグリゲートされたフィードバックテンソル
【０３３４】
【数８１】
2020537797.tif 000085
【０３３５】
に編成され得る。アグリゲートされたフィードバックテンソル
【０３３６】
【数８２】
2020537797.tif 000086
【０３３７】
は、共有表現（Ｕ）の次元性に等しい次元性を有し得る。たとえば、図５Ａおよび図５Ｂに示されている例示的なデータセット（ＸA／ＸB）と、記録値のセット（ＹA／ＹB）とを使用して、方法４００を使用して生じる対応するアグリゲートされたフィードバックテンソル
【０３３８】
【数８３】
2020537797.tif 000087
【０３３９】
は、２次元のアグリゲートされたフィードバックテンソル（すなわち、フィードバック行列）であり得る。
【０３４０】
[00218]いくつかの実施形態では、図４Ｅに関して図示および説明されたように、方法４００はまた、（たとえば、動作４５０において）管理コンピューティングデバイス４０６が、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）に基づいて１つまたは複数の共有パラメータ（β）を更新することを含み得る。いくつかの実施形態では、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）に基づいて１つまたは複数の共有パラメータ（β）を更新することは、偏導関数の和を評価することを含み得、ここで、偏導関数の各々は、１つまたは複数の共有パラメータ（β）に対するそれぞれのデータセット（ＸA／ＸB）についての誤差（ＥA／ＥB）の偏導関数である。そのような和は、数学的に、
【０３４１】
【数８４】
2020537797.tif 000088
【０３４２】
のように表され得、ここで、上記の和における「ｉ」は、それぞれのデータセット（たとえば、データセットＡ（ＸA））に対応するインデックスである。
【０３４３】
[00219]追加または代替として、いくつかの実施形態では、１つまたは複数のアグリゲートされたフィードバック値（ＣComb）に基づいて１つまたは複数の共有パラメータ（β）を更新することは、第１の偏導関数と第２の偏導関数との積の和を評価することを含み得、ここで、第１の偏導関数の各々は、それぞれの部分表現（ＵA／ＵB）に対するそれぞれのデータセット（ＸA／ＸB）についての誤差（ＥA／ＥB）の偏導関数であり、およびここで、第２の偏導関数の各々は、１つまたは複数の共有パラメータ（β）に対するそれぞれの部分表現（ＵA／ＵB）の偏導関数である。そのような和は、数学的に、
【０３４４】
【数８５】
2020537797.tif 000089
【０３４５】
のように表され得、ここで、上記の和における「ｉ」は、それぞれのデータセット（たとえば、データセットＡ（ＸA））に対応するインデックスである。
【０３４６】
[00220]図１６Ａ〜図１６Ｃは、図５Ａに示されているデータセットＡ（ＸA）と記録値のセット（ＹA）と、および図５Ｂに示されているデータセットＢ（ＸB）と記録値のセット（ＹB）とに類似する、データセットと記録値のセットとの組合せを示す。データセットと記録値のセットとの組合せが、データセットと記録値のセットとの追加の例として提供される。（たとえば、データセットおよび／または記録値のセット中の様々なエントリの）表現、データ、特徴、次元、および値のタイプは、例として提供され、限定するものであると意図されていない。本明細書で企図される様々な実施形態では、データセットと記録値のセットとのために、様々な代替のデータ構造、データのタイプ、データの量、および／またはデータの表現が使用され得る。
【０３４７】
[00221]図１６Ａに示されているのは、データセット１６０２（Ｘバイナリ）と、記録値１６０４の対応するセット（Ｙバイナリ）とである。データセット１６０２（Ｘバイナリ）は、オブジェクトと、（たとえば、保険データに対応する）特徴との間の各関係についてのバイナリ値を含む。図１６Ａにおいて、データセット１６０２（Ｘバイナリ）中の黒いエントリは、オブジェクトが所与の特徴を示すエントリに対応し得る。たとえば、オブジェクト「ジョーダン」は、「３つ未満の事故」と、「制限付き免許」と、「事故のための保険に入っている」とを示し得る。図１６Ａに示されている記録値１６０４の対応するセット（Ｙバイナリ）は、様々な特徴に対応するバイナリデータ、テキストデータ（たとえば、分類データ）、および数字データを含み得る。たとえば、オブジェクト「ジェイソン」は、「２２」の「年齢」値（数字データ）と、「Ｍ」の「性別」（テキストデータ）と、「ＫＹ」の「居住の状態」（テキストデータ）と、「４２」の「収入（千単位）」（数字データ）と、「２」の「子供の数」（数字データ）と、「既婚」（バイナリデータ）とを示し得る。
【０３４８】
[00222]データセットと記録値のセットの両方のいくつかの実施形態では、様々なエントリの値についてのデータは、たとえば、純粋バイナリデータ、純粋テキストデータ（たとえば、分類データ）、または純粋数字データであり得る。データセットと記録値のセットの両方の代替実施形態では、様々なエントリの値についてのデータは、バイナリデータと、テキストデータ（たとえば、分類データ）と、数字データとの組合せであり得る。さらに他の実施形態では、データは、（たとえば、音声認識を実施するために使用されることが可能な機械学習モデルを生じるために使用される）録音、または（たとえば、オブジェクト認識を実施するために使用されることが可能な機械学習モデルを生じるために使用される）画像の形態であり得る。
【０３４９】
[00223]いくつかの実施形態（たとえば、図示されていない実施形態）では、データセットと、記録値の対応するセットとは、３以上の次元を有し得る。そのような例示的な実施形態では、データセットと、記録値の対応するセットとは、（たとえば、２次元テンソル、すなわち、行列ではない）ｎ次元テンソルに対応し得る。
【０３５０】
[00224]図１６Ｂに示されているのは、データセット１６１２（Ｘ薬発見）と、記録値１６１４の対応するセット（Ｙ薬発見）とである。データセット１６１２（Ｘ薬発見）と、記録値１６１４のセット（Ｙ薬発見）とは、（たとえば、臨床試験に起因する）薬剤発見に関係するデータに対応し得る。たとえば、データセット１６１２（Ｘ薬発見）と、記録値１６１４の対応するセット（Ｙ薬発見）とにおけるデータは、様々なアッセイを使用して様々な候補薬剤化合物をテストする過程で製薬会社によって生成されていることがある。図示のように、データセット１６１２（Ｘ薬発見）は、一連の化合物を一連の化学的フィンガープリントおよび／または追加の記述子に関係付け得る。データセット１６１２（Ｘ薬発見）のエントリの値はバイナリであり得る。たとえば、オブジェクト「化合物Ｂ」は、「化学フィンガープリント２」ならびに「追加の記述子３」を示す。代替実施形態では、データセット１６１２（Ｘ薬発見）のエントリの値は、バイナリデータと、テキストデータ（たとえば、分類データ）と、数字データとの任意の組合せであり得る。また図示のように、記録値１６１４の対応するセット（Ｙ薬発見）は、一連の化合物を一連のアッセイ活動性および最大半量活動性濃度（最大半量）に関係付け得る。記録値１６１４のセット（Ｙ薬発見）のエントリの値のうちのいくつかはバイナリであり得るが、エントリの他の値は数字データであり得る。たとえば、オブジェクト「化合物Ｃ」は、「アッセイ１において活動性」と、「アッセイ６において活動性」と、０．２（たとえば、０．２モル）の「最大半量濃度アッセイ５」と、０．８（たとえば、０．８モル）の「最大半量濃度アッセイ９」とを示す。代替実施形態では、記録値１６１４の対応するセット（Ｙ薬発見）のエントリの値は、バイナリデータと、テキストデータ（たとえば、分類データ）と、数字データとの任意の組合せであり得る。
【０３５１】
[00225]図１６Ｃに示されているのは、データセット１６２２（Ｘ治療）と、記録値１６２４の対応するセット（Ｙ治療）とである。データセット１６２２（Ｘ治療）と、記録値１６２４のセット（Ｙ治療）とは、患者診断と（たとえば、医師の記録に起因する）ケアとに関係するデータに対応し得る。たとえば、データセット１６２２（Ｘ治療）と、記録値１６２４の対応するセット（Ｙ治療）とにおけるデータは、患者を診断し治療する過程で医師によって生成されていることがある。図示のように、データセット１６２２（Ｘ治療）は、一連の患者を一連の患者記述子に関係付け得る。データセット１６２２（Ｘ治療）のエントリの値は、バイナリデータと、テキストデータ（たとえば、分類データ）と、数字データとの組合せであり得る。たとえば、オブジェクト「患者Ａ」は、「遺伝マーカー１」ならびに「家族の病歴２」を示し、「Ｆ」に対応する「性別」の値を有し、「２２」に対応する「年齢」の値と、「１０７」に対応する重みの値とを有する。代替実施形態では、データセット１６２２（Ｘ治療）のエントリの値は、バイナリデータと、テキストデータ（たとえば、分類データ）と、数字データとの任意の組合せであり得る。また図示のように、記録値１６２４の対応するセット（Ｙ治療）は、一連の患者を一連の臨床診断に関係付け得る。記録値１６２４のセット（Ｙ治療）のエントリの値はバイナリであり得る。たとえば、オブジェクト「患者Ｃ」は、「臨床診断３」と、「臨床診断４」と、「臨床診断６」とを示す。代替実施形態では、記録値１６２４の対応するセット（Ｙ治療）のエントリの値は、バイナリデータと、テキストデータ（たとえば、分類データ）と、数字データとの任意の組合せであり得る。
【０３５２】
[00226]いくつかの実施形態では、データセットまたは記録値の対応するセットの所与の次元内のすべてのオブジェクトは同じであり得る（たとえば、データセットの第１の次元内のすべてのオブジェクトは、指定されたタイプ「ユーザ」であり得る）。図５Ａおよび図５Ｂに示されているように、データセット（ＸA／ＸB）と、記録値の対応するセット（ＹA／ＹB）とは各々、それらの次元の各々において同じタイプのオブジェクトを含んでいることがある。たとえば、データセットＡ（ＸA）の第１の次元では、オブジェクトは、指定されたタイプ「ユーザ」であり得、データセットＡ（ＸA）の第２の次元では、オブジェクトは、指定されたタイプ「書籍」であり得、記録値Ａのセット（ＹA）の第１の次元では、オブジェクトはタイプ「ユーザ」であり得、記録値Ａのセット（ＹA）の第２の次元では、オブジェクトはタイプ「ムービー」であり得る。これは、データセットＢ（ＸB）と、記録値Ｂの対応するセット（ＹB）とに類似し得る（すなわち、データセットＢ（ＸB）の第１の次元では、オブジェクトは、指定されたタイプ「ユーザ」であり得、データセットＢ（ＸB）の第２の次元では、オブジェクトは、指定されたタイプ「書籍」であり得、記録値Ｂのセット（ＹB）の第１の次元では、オブジェクトはタイプ「ユーザ」であり得、記録値Ｂのセット（ＹB）の第２の次元では、オブジェクトはタイプ「ムービー」であり得る）。代替実施形態では、これは当てはまらない場合がある。たとえば、第１のデータセットは、オブジェクトタイプ「ユーザ」をもつ第１の次元と、オブジェクトタイプ「書籍」をもつ第２の次元とを有し得るが、（たとえば、異なるクライアントコンピューティングデバイスからの）第２のデータセットは、オブジェクトタイプ「ユーザ」をもつ第１の次元と、オブジェクトタイプ「ムービー」をもつ第２の次元とを有し得る。
【０３５３】
[00227]異なるオブジェクトタイプを含んでいる異なるデータセットからの次元は、共有表現を生じ、１つまたは複数の共有パラメータ（β）を更新するために、管理コンピューティングデバイス４０６によって依然として使用され得る。いくつかの実施形態では、共有表現を生じるために異なるオブジェクトタイプを使用することは、それらの異なるオブジェクトタイプに対応する値が互いに有意味に比較されることが可能であるように、（たとえば、管理コンピューティングデバイス４０６またはそれぞれのクライアントコンピューティングデバイスによって）それらの値を正規化することを含み得る。
【０３５４】
[00228]上記で説明された方法、および本明細書において明示的と暗黙的の両方で企図される様々な実施形態は、多種多様な適用例において使用され得る。１つの例示的な適用例は薬剤発見方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット（ＸA／ＸB）の各々の第１の次元は、複数の化学的化合物を含み得、複数のデータセット（ＸA／ＸB）の各々の第２の次元は、化学的化合物の記述子（たとえば、トランスクリプトミクスまたは画像スクリーニングを介して識別された化学誘導フィンガープリントまたは記述子）を含み得る。そのような実施形態では、複数のデータセット（ＸA／ＸB）の各々中のエントリは、それぞれの化学的化合物がそれぞれの記述子を示すかどうかのバイナリ指標に対応し得る。さらに、そのような実施形態では、複数のデータセット（ＸA／ＸB）にそれぞれ対応する記録値のセット（ＹA／ＹB）の各々の第１の次元は、複数の化学的化合物を含み得、記録値のセット（ＹA／ＹB）の各々の第２の次元は、複数の生物学的アッセイ中の化学的化合物の活動性（たとえば、単位時間当たり発生する化学反応の所与の生成物の濃度、蛍光レベル、細胞増殖率、溶液の呈色、溶液のｐＨ、または細胞死亡率）を含み得る。そのような実施形態では、記録値のセット（ＹA／ＹB）の各々中のエントリは、それぞれの化学的化合物がそれぞれの活動性を示すかどうかのバイナリ指標に対応し得る。
【０３５５】
[00229]薬剤発見方法は、管理コンピューティングデバイス４０６が、一意のオブジェクトのリスト（ＸComb）と、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とに基づいて、データセット（ＸA／ＸB）の最終共有表現（ＵFinal）を計算することを含み得る。薬剤発見方法はまた、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスの各々にデータセット（ＸA／ＸB）の最終共有表現（ＵFinal）を送信することを含み得る。データセット（ＸA／ＸB）の最終共有表現（ＵFinal）は、それぞれのデータセット（ＸA／ＸB）に対応する予測値の最終セット
【０３５６】
【数８６】
2020537797.tif 000090
【０３５７】
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
【０３５８】
【数８７】
2020537797.tif 000091
【０３５９】
は、複数の化学的化合物の中で１つまたは複数の有効な治療化合物を識別するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用され得る。
【０３６０】
[00230]追加の例示的な適用例は薬剤診断方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット（ＸA／ＸB）の各々の第１の次元は、複数の患者を含み得、複数のデータセット（ＸA／ＸB）の各々の第２の次元は、患者の記述子（たとえば、ゲノムベースの記述子、患者の人口統計、患者の年齢、患者の身長、患者の体重、または患者の性別）を含み得る。そのような実施形態では、複数のデータセット（ＸA／ＸB）の各々中のエントリは、それぞれの患者がそれぞれの記述子を示すかどうかのバイナリ指標に対応し得る。さらに、そのような実施形態では、複数のデータセット（ＸA／ＸB）にそれぞれ対応する記録値のセット（ＹA／ＹB）の各々の第１の次元は、複数の患者を含み得、記録値のセット（ＹA／ＹB）の各々の第２の次元は、患者の臨床診断（たとえば、癌診断、心臓病診断、骨折診断、皮膚感染診断、心理診断、遺伝的疾患診断、または靭帯損傷診断）を含み得る。そのような実施形態では、記録値のセット（ＹA／ＹB）の各々中のエントリは、それぞれの患者がそれぞれの臨床診断を示すかどうかのバイナリ指標に対応し得る。
【０３６１】
[00231]薬剤診断方法は、管理コンピューティングデバイス４０６が、一意のオブジェクトのリスト（ＸComb）と、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とに基づいて、データセット（ＸA／ＸB）の最終共有表現（ＵFinal）を計算することを含み得る。薬剤診断方法はまた、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスの各々にデータセット（ＸA／ＸB）の最終共有表現（ＵFinal）を送信することを含み得る。データセット（ＸA／ＸB）の最終共有表現（ＵFinal）は、それぞれのデータセット（ＸA／ＸB）に対応する予測値の最終セット
【０３６２】
【数８８】
2020537797.tif 000092
【０３６３】
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
【０３６４】
【数８９】
2020537797.tif 000093
【０３６５】
は、複数の患者のうちの少なくとも１人を診断するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用され得る。
【０３６６】
[00232]さらなる例示的な適用例は、メディア（たとえば、書籍、ムービー、音楽などの）推奨方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット（ＸA／ＸB）の各々の第１の次元は、複数のユーザを含み得、複数のデータセット（ＸA／ＸB）の各々の第２の次元は、複数の書籍タイトルを含み得る。そのような実施形態では、複数のデータセット（ＸA／ＸB）の各々中のエントリは、それぞれのユーザによるそれぞれの書籍タイトルのレーティングに対応し得る。さらに、そのような実施形態では、複数のデータセット（ＸA／ＸB）にそれぞれ対応する記録値のセット（ＹA／ＹB）の各々の第１の次元は、複数のユーザを含み得、記録値のセット（ＹA／ＹB）の各々の第２の次元は、複数のムービータイトルを含み得る。そのような実施形態では、記録値のセット（ＹA／ＹB）の各々中のエントリは、それぞれのユーザによるそれぞれのムービータイトルのレーティングに対応し得る。
【０３６７】
[00233]メディア推奨方法は、管理コンピューティングデバイス４０６が、一意のオブジェクトのリスト（ＸComb）と、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とに基づいて、データセット（ＸA／ＸB）の最終共有表現（ＵFinal）を計算することを含み得る。メディア推奨方法はまた、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスの各々にデータセット（ＸA／ＸB）の最終共有表現（ＵFinal）を送信することを含み得る。データセット（ＸA／ＸB）の最終共有表現（ＵFinal）は、それぞれのデータセット（ＸA／ＸB）に対応する予測値の最終セット
【０３６８】
【数９０】
2020537797.tif 000094
【０３６９】
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
【０３７０】
【数９１】
2020537797.tif 000095
【０３７１】
は、複数のユーザのうちの少なくとも１人に複数のムービータイトルのうちの少なくとも１つを推奨するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用され得る。
【０３７２】
[00234]別の例示的な適用例は保険証券決定方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット（ＸA／ＸB）の各々の第１の次元は、複数の保険証券を含み得、複数のデータセット（ＸA／ＸB）の各々の第２の次元は、複数の控除免責額を含み得る。そのような実施形態では、複数のデータセット（ＸA／ＸB）の各々中のエントリは、それぞれの保険証券がそれぞれの控除免責額を有するかどうかのバイナリ指標に対応し得る。さらに、そのような実施形態では、複数のデータセット（ＸA／ＸB）にそれぞれ対応する記録値のセット（ＹA／ＹB）の各々の第１の次元は、複数の保険証券を含み得、記録値のセット（ＹA／ＹB）の各々の第２の次元は、複数の保険料を含み得る。そのような実施形態では、記録値のセット（ＹA／ＹB）の各々中のエントリは、それぞれの保険証券がそれぞれの保険料を有するかどうかのバイナリ指標に対応し得る。
【０３７３】
[00235]保険証券決定方法は、管理コンピューティングデバイス４０６が、一意のオブジェクトのリスト（ＸComb）と、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とに基づいて、データセット（ＸA／ＸB）の最終共有表現（ＵFinal）を計算することを含み得る。保険証券決定方法はまた、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスの各々にデータセット（ＸA／ＸB）の最終共有表現（ＵFinal）を送信することを含み得る。データセット（ＸA／ＸB）の最終共有表現（ＵFinal）は、それぞれのデータセット（ＸA／ＸB）に対応する予測値の最終セット
【０３７４】
【数９２】
2020537797.tif 000096
【０３７５】
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
【０３７６】
【数９３】
2020537797.tif 000097
【０３７７】
は、予想される控除免責額に基づいて保険料を推奨するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用され得る。
【０３７８】
[00236]また別の例示的な適用例は自動車燃料効率予測方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット（ＸA／ＸB）の各々の第１の次元は、（たとえば、車両識別番号（ＶＩＮ）または通し番号によって識別される）複数の自動車を含み得、複数のデータセット（ＸA／ＸB）の各々の第２の次元は、複数の自動車部品を含み得る。そのような実施形態では、複数のデータセット（ＸA／ＸB）の各々中のエントリは、それぞれの自動車がそれぞれの自動車部品を装備しているかどうかのバイナリ指標に対応し得る。さらに、そのような実施形態では、複数のデータセット（ＸA／ＸB）にそれぞれ対応する記録値のセット（ＹA／ＹB）の各々の第１の次元は、複数の自動車を含み得、記録値のセット（ＹA／ＹB）の各々の第２の次元は、複数の平均燃料効率を含み得る。そのような実施形態では、記録値のセット（ＹA／ＹB）の各々中のエントリは、それぞれの自動車がそれぞれの平均燃料効率を有するかどうかのバイナリ指標に対応し得る。
【０３７９】
[00237]自動車燃料効率予測方法は、管理コンピューティングデバイス４０６が、一意のオブジェクトのリスト（ＸComb）と、共有関数（ｆ）と、１つまたは複数の共有パラメータ（β）とに基づいて、データセット（ＸA／ＸB）の最終共有表現（ＵFinal）を計算することを含み得る。自動車燃料効率予測方法はまた、管理コンピューティングデバイス４０６が、クライアントコンピューティングデバイスの各々にデータセット（ＸA／ＸB）の最終共有表現（ＵFinal）を送信することを含み得る。データセット（ＸA／ＸB）の最終共有表現（ＵFinal）は、それぞれのデータセット（ＸA／ＸB）に対応する予測値の最終セット
【０３８０】
【数９４】
2020537797.tif 000098
【０３８１】
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
【０３８２】
【数９５】
2020537797.tif 000099
【０３８３】
は、装備されている自動車部品のセットに基づいて自動車モデルの平均燃料効率を予測するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用され得る。
【０３８４】
[00238]上記で列挙された実施形態に加えて、いくつかの他の適用例が明らかであろう。たとえば、データセット（ＸA／ＸB）と、記録値の対応するセット（ＹA／ＹB）との様々なセットは、様々なタスクを実施する（たとえば、推奨および／または予測を行う）ために使用され得る、様々な機械学習モデルを生成するために使用され得る。様々な実施形態では、そのような機械学習モデルは、様々な要因（たとえば、弁護士の能力、弁護士の専門分野、クライアントの問題の性質、タイムライン、コスト、クライアントの場所、弁護士の場所など）に基づいて潜在的クライアントに弁護士推奨を行うこと、様々な要因（たとえば、医師の能力、医師の専門分野、患者の問題の性質、タイムライン、コスト、保険、医師の場所、患者の場所など）に基づいて患者に医師推奨を行うこと、様々な要因（たとえば、交通データ、自動車タイプ、リアルタイム気象データ、工事データなど）に基づいて（たとえば、自律車両のために）ナビゲーションのためのルート推奨または選択を行うこと、様々な要因（たとえば、履歴航空路プライスデータ、気象データ、カレンダーデータ、乗客の好み、飛行機の仕様、空港ロケーションなど）に基づいて飛行機旅行予約および／または推奨を行うこと、様々な要因（たとえば、旅行者の以前の旅行場所、旅行者の好み、価格データ、気象データ、複数の旅行者のためのカレンダー情報、所与の目的地についての以前の旅行者からのレーティングなど）に基づいて休暇目的地の推奨を行うこと、様々な要因（たとえば、検出された入力アクセント、スピーチの速度、使用される句読法、テキストのコンテキストなど）に基づいてある言語から別の言語へのテキストまたはスピーチの翻訳を行うこと、様々な要因（たとえば、画像および／またはオブジェクトのサイズ、画像および／またはオブジェクトの形状、画像および／またはオブジェクトの色、画像および／またはオブジェクトのテクスチャ、画像および／またはオブジェクトの彩度、画像および／またはオブジェクトの色相、画像内のオブジェクトのロケーションなど）に基づいて画像データベース中の１つまたは複数の画像上でオブジェクト認識を実施すること、様々な要因（たとえば、被保険者の年齢、被保険者の健康状態、被保険者の性別、被保険者の婚姻状態、保険料額、保険控除免責額、保険担保額、信用履歴、被保険者に関する他の人口統計学的情報など）に基づいて自動車保険、ホーム保険、生命保険、健康保険、歯科保険、船舶保険、業務過誤保険、および／または長期廃疾保険のための保険料、控除免責額、および／または担保額を推奨すること、様々な要因（たとえば、ホーム／自動車／船舶の年数、借り手の信用スコア、頭金額、返済期間、ホーム／自動車／船舶の再販売値、ホーム／自動車／船舶に関する信頼性統計など）に基づいてホーム、自動車、および／または船舶ローンの金利を推奨すること、様々な要因（たとえば、借り手の信用スコア、ローンの額、ローンの返済期間、ローンの頭金額など）に基づいてホーム、自動車、および／または船舶ローンの貸し手を推奨すること、様々な要因（たとえば、債権者の年齢、債権者の性別、債権者の返済履歴、債権者のクレジットカード所有権データ、債権者の平均金���、債権者の負債額など）に基づいて債権者の信用スコアを計算すること、様々な要因（たとえば、生体画像のセット中のオブジェクト認識、指紋データ、網膜データ、要求者の身長、要求者の性別、要求者の年齢、要求者の眼の色、要求者の毛髪の色、要求者の人種など）に基づいて要求者に生体アクセスを許可または拒否すること、様々な要因（たとえば、顧客によって訪問された以前のレストラン、料理の好みデータ、気象データ、カレンダーデータ、リアルタイムレストラン待ち時間データ、様々なレストランについての以前の顧客からのレーティング、レストランのロケーションデータ、顧客のロケーションデータなど）に基づいて顧客にレストランを推奨すること、あるいは様々なデータ（たとえば、参加者に関連する以前のスポーツコンテストの記録、スポーツイベントについての現在の賭け統計、以前のスポーツイベントについての賭け統計、気象データ、スポーツイベントデータのロケーションなど）に基づいてスポーツイベントの結果を予測すること、様々な要因（たとえば、顧客の好み、以前の顧客のレーティング、料理タイプデータ、メニュー上の代替オプション、価格、スパイスレベルデータ、調理時間データなど）に基づいてレストラン顧客にメニュー項目選択を推奨すること、様々な要因（たとえば、遺伝子組換えの座、遺伝子組換えの発生確率、有機体のゲノムの複雑さ、遺伝子組換えの副作用、遺伝子組換えを作成するために必要とされる突然変異／スプライスの数、遺伝子組換えが施される有機体の性別、遺伝子組換えが施される有機体の症状、遺伝子組換えが施される有機体の年齢など）に基づいて、病気を治しおよび／または症状を緩和することに関して有機体への１つまたは複数の遺伝子組換えの実行可能性および成功を決定すること、様々な要因（たとえば、資金の量、交通データ、建築物／インフラストラクチャの年数、人口密度データ、病院データ、電力需要供給データ、犯罪統計など）に従ってスマートシティにおいてどのように資金提供を割り振るべきかを決定すること、様々な要因（たとえば、投資家収益データ、投資家リスク回避データ、株式市場データなど）に基づいて投資戦略を推奨すること、ならびに／あるいは様々な要因（たとえば、オブジェクトの年数、オブジェクトに投資された金、同様のオブジェクトに関する統計データ、オブジェクトが構築された年、オブジェクト使用データ、気象データ、実施された最後の予防的メンテナンス、維持費など）に基づいて（たとえば、自動車、船舶、工業機械、工場機器、飛行機、インフラストラクチャなどに対して）予防的メンテナンスが実施されることを推奨すること、を行うために使用され得る。
【０３８５】
[00239]上記で例として提供された「様々な要素」のいずれも、データセットの成分（たとえば、データセットの１つまたは複数の次元）であり得る。同様に、対応する「結果」（たとえば、推奨される弁護士または推奨される医師）は、予測値のセット
【０３８６】
【数９６】
2020537797.tif 000100
【０３８７】
の成分（たとえば、予測値のセットの１つまたは複数の次元）および／あるいは記録値のセット（ＹA／ＹB）の成分（たとえば、記録値のセットの１つまたは複数の次元）であり得る。
【０３８８】
[00240]図１７Ａおよび図１７Ｂは、例示的な実施形態による、（たとえば、Ｍａｃａｕ分解方法を使用する）行列分解アルゴリズムを示す。行列分解方法は、上記で説明された方法と同様に、個々の当事者のデータのプライバシーを依然として保持しながら機械学習モデルを生成するために使用され得る。行列分解アルゴリズムは、たとえば、図４Ｂ〜図４Ｅに関して説明されたのと同様の動作を使用して実施され得る。図示の行列分解アルゴリズムは、必ずしも人工ニューラルネットワークモデルを組み込むとは限らない、本明細書で企図される無数の実施形態のうちの一実施形態の一例として提供される。しかしながら、代替実施形態では、図１７Ａおよび図１７Ｂに示されている行列分解を実施することは、行列を分解することと併せて人工ニューラルネットワークモデルを生じることを含み得る。同様に、さらに他の実施形態では、図示の行列分解とともに他の機械学習モデル／方法が使用され得る。
【０３８９】
[00241]図１７Ａに示されているように、記録値テンソル
【０３９０】
【数９７】
2020537797.tif 000101
【０３９１】
は、行列
【０３９２】
【数９８】
2020537797.tif 000102
【０３９３】
および
【０３９４】
【数９９】
2020537797.tif 000103
【０３９５】
に分解され得る。言い換えれば、
【０３９６】
【数１００】
2020537797.tif 000104
【０３９７】
は
【０３９８】
【数１０１】
2020537797.tif 000105
【０３９９】
に等しくなり得る。記録値テンソル
【０４００】
【数１０２】
2020537797.tif 000106
【０４０１】
は、それぞれのデータセットに対応する記録値のセットを含んでいることがある。たとえば、記録値テンソル
【０４０２】
【数１０３】
2020537797.tif 000107
【０４０３】
はデータセットＡ（ＸA）に対応し得る。そのような実施形態では、データセットＡ（ＸA）を表すテンソル
【０４０４】
【数１０４】
2020537797.tif 000108
【０４０５】
は、１つまたは複数の共有パラメータ（β）に対応する共有パラメータテンソル
【０４０６】
【数１０５】
2020537797.tif 000109
【０４０７】
（たとえば、共有パラメータベクトルと呼ばれる、１次元共有パラメータテンソル）によって乗算されて、データセットＡ（ＸA）に関係する分解された行列
【０４０８】
【数１０６】
2020537797.tif 000110
【０４０９】
のうちの１つが形成され得る。言い換えれば、
【０４１０】
【数１０７】
2020537797.tif 000111
【０４１１】
は
【０４１２】
【数１０８】
2020537797.tif 000112
【０４１３】
に等しくなり得る。このようにして、共有パラメータテンソル
【０４１４】
【数１０９】
2020537797.tif 000113
【０４１５】
は、データセットＡ（ＸA）中のオブジェクトに関するサイド情報を符号化するために使用されることが可能である。たとえば、データセットＡ（ＸA）が複数のムービーについてのレーティングを表す実施形態では、共有パラメータテンソル
【０４１６】
【数１１０】
2020537797.tif 000114
【０４１７】
は、複数のムービーのジャンル（たとえば、ホラー、コメディー、恋愛など）を記述する情報を表し得る。そのようなサイド情報は、（たとえば、「ホラー」ジャンルの第１のムービーに高いレーティングを与える閲覧者は、「ホラー」ジャンルの第１のムービーに低いレーティングを与えたユーザよりも、「ホラー」ジャンルの第２のムービーに高いレーティングを与える可能性が高くなり得ると仮定することによって）生成される機械学習モデルを改善することができる。いくつかの実施形態（たとえば、記録値テンソル
【０４１８】
【数１１１】
2020537797.tif 000115
【０４１９】
が３つ以上の次元を有する実施形態）では、複数の対応するテンソル（たとえば、記録値テンソル
【０４２０】
【数１１２】
2020537797.tif 000116
【０４２１】
のランクに対応するいくつかの行列）があり得、これらの複数の対応するテンソルは、記録値テンソル
【０４２２】
【数１１３】
2020537797.tif 000117
【０４２３】
を生じるために互いに乗算される。
【０４２４】
[00242]（図４Ｂ〜図１５Ｂに関して）上記で説明された実施形態と同様に、テンソル
【０４２５】
【数１１４】
2020537797.tif 000118
【０４２６】
は、共有表現（Ｕ）の一部である部分表現（ＵA）に対応し得る。共有表現（Ｕ）は、図１７Ｂに示されているように、管理コンピューティングデバイス１７０６によって送信および受信されるデータセットのすべてに基づき得る。たとえば、管理コンピューティングデバイス１７０６は、最初に、クライアントコンピューティングデバイスＡ１７０２からデータセットＡ（ＸA）を、およびクライアントコンピューティングＢ１７０４からデータセットＢ（ＸB）を受信し得る。データセットＡ（ＸA）とデータセットＢ（ＸB）とを受信すると、管理コンピューティングデバイス１７０６は、次いで、（たとえば、図４Ｂ〜図４Ｅに関して上記で説明されたのと同様のプロセスを使用して）一意のオブジェクトのリスト（ＸComb）を作成し得る。
【０４２７】
[00243]一意のオブジェクトのリスト（ＸComb）を作成すると、管理コンピューティングデバイスは、１つまたは複数の共有パラメータ（β）に基づいて共有表現（Ｕ）を決定し得る。いくつかの実施形態では、１つまたは複数の共有パラメータは、更新より前に、ランダムにインスタンス化され得る。これは、図１７Ｂに示されているように、式
【０４２８】
【数１１５】
2020537797.tif 000119
【０４２９】
に従って起こり得る。共有表現（Ｕ）は、次いで、管理コンピューティングデバイス１７０６によってクライアントコンピューティングデバイス１７０２／１７０４の各々に送信され得る。次いで、各クライアントコンピューティングデバイスは、（たとえば、それぞれのクライアントコンピューティングデバイスに対応するそれぞれのデータセットの識別子のサブセット（Ｓ）と、識別子のリスト（ＭA／ＭB）とに基づいて）それぞれのクライアントコンピューティングデバイスに対応するデータセットに、共有表現（Ｕ）のどの部分が対応するかを決定し得る。この決定された部分は、それぞれの部分表現（ＵA／ＵB）を表し得る。
【０４３０】
[00244]いくつかの実施形態では、１つまたは複数の共有パラメータ（β）を更新／改良するための方法が次いで採用され得る。本方法は、クライアントコンピューティングデバイスＡ１７０２が、予測値のセット
【０４３１】
【数１１６】
2020537797.tif 000120
【０４３２】
を計算するために、決定された部分表現（ＵA）を使用することを含み得る。予測値のセットは、
【０４３３】
【数１１７】
2020537797.tif 000121
【０４３４】
によって計算され得る（ここで、「ｏ」は、これが初期イタレーションであることを意味する）。いくつかの実施形態では、他方の分解されたテンソル
【０４３５】
【数１１８】
2020537797.tif 000122
【０４３６】
の元の値がランダムにインスタンス化され得る。（たとえば、予測値テンソルと呼ばれる）予測値のセット
【０４３７】
【数１１９】
2020537797.tif 000123
【０４３８】
を計算すると、部分表現テンソル
【０４３９】
【数１２０】
2020537797.tif 000124
【０４４０】
と、他方の分解されたテンソル
【０４４１】
【数１２１】
2020537797.tif 000125
【０４４２】
とが、予測値のセット
【０４４３】
【数１２２】
2020537797.tif 000126
【０４４４】
を分解することによって（たとえば、「ｏ」ではなく「１」によって示される、第２のイタレーションに対して）更新され得る。更新された部分表現テンソル
【０４４５】
【数１２３】
2020537797.tif 000127
【０４４６】
を使用して、共有パラメータテンソル
【０４４７】
【数１２４】
2020537797.tif 000128
【０４４８】
は、次いで、
【０４４９】
【数１２５】
2020537797.tif 000129
【０４５０】
を
【０４５１】
【数１２６】
2020537797.tif 000130
【０４５２】
について解くこと（または、いくつかの実施形態では、共有パラメータテンソル
【０４５３】
【数１２７】
2020537797.tif 000131
【０４５４】
の領域について少なくとも解くことであって、これらの領域が、データセットＡ（ＸA）を表すテンソル
【０４５５】
【数１２８】
2020537797.tif 000132
【０４５６】
中の非０エントリに対応する、解くこと）によって更新され得る。共有パラメータテンソル
【０４５７】
【数１２９】
2020537797.tif 000133
【０４５８】
を更新した後に、部分表現テンソル
【０４５９】
【数１３０】
2020537797.tif 000134
【０４６０】
は、次いで、管理コンピューティングデバイス１７０６に送信され得る。部分表現テンソルおよび共有パラメータテンソルを更新することと、管理コンピューティングデバイス１７０６への部分表現テンソルの送信とについての上記で説明された動作は、複数のクライアントコンピューティングデバイス（たとえば、クライアントコンピューティングデバイスＡ１７０２とクライアントコンピューティングデバイスＢ１７０４の両方）によって、それらのそれぞれのデータセット（たとえば、データセットＡ（ＸA）およびデータセットＢ（ＸB））について実施され得る。
【０４６１】
[00245]更新された部分表現行列
【０４６２】
【数１３１】
2020537797.tif 000135
【０４６３】
を受信すると、管理コンピューティングデバイスは、それらを共有表現テンソル
【０４６４】
【数１３２】
2020537797.tif 000136
【０４６５】
に再合成し得る。共有表現テンソルを使用して、共有パラメータテンソル
【０４６６】
【数１３３】
2020537797.tif 000137
【０４６７】
は、図１７Ｂに示されているように、
【０４６８】
【数１３４】
2020537797.tif 000138
【０４６９】
の式を解くことによって一意のオブジェクトのリスト（ＸComb）を使用して更新され得る。
【０４７０】
[00246]その後、更新された共有表現テンソル
【０４７１】
【数１３５】
2020537797.tif 000139
【０４７２】
は、次いで、管理コンピューティングデバイス１７０６によってクライアントコンピューティングデバイス１７０２／１７０４の各々に送信され得る。次いで、各クライアントコンピューティングデバイスは、（たとえば、それぞれのクライアントコンピューティングデバイスに対応するそれぞれのデータセットについての識別子のサブセット（Ｓ）と、識別子のリスト（ＭA／ＭB）とに基づいて）それぞれのクライアントコンピューティングデバイスに対応するデータセットに、更新された共有表現テンソル
【０４７３】
【数１３６】
2020537797.tif 000140
【０４７４】
のどの部分が対応するかを決定し得る。この決定された部分は、それぞれの部分表現（ＵA／ＵB）を表し得る。この部分表現（ＵA／ＵB）に基づいて、予測値のセットの第２のイタレーション
【０４７５】
【数１３７】
2020537797.tif 000141
【０４７６】
が計算され得、第２の部分表現テンソル
【０４７７】
【数１３８】
2020537797.tif 000142
【０４７８】
と、他方の分解されたテンソル
【０４７９】
【数１３９】
2020537797.tif 000143
【０４８０】
とが、（たとえば、Ｍａｃａｕ分解を使用して）予測値のセットの第２のイタレーション
【０４８１】
【数１４０】
2020537797.tif 000144
【０４８２】
を分解することによって（たとえば、第３のイタレーションに対して）更新され得、共有パラメータテンソル
【０４８３】
【数１４１】
2020537797.tif 000145
【０４８４】
が、
【０４８５】
【数１４２】
2020537797.tif 000146
【０４８６】
を
【０４８７】
【数１４３】
2020537797.tif 000147
【０４８８】
について解くことによって更新され得る。前の段落のステップは、共有パラメータテンソル
【０４８９】
【数１４４】
2020537797.tif 000148
【０４９０】
が、イタレーションの後に改善するのを止めるまで、または少なくともイタレーションごとにしきい値量を改善するのを止めるまで繰り返され得る。
【０４９１】
[00247]図１８Ａ〜図２７Ｂは、図４Ｂ〜図４Ｆに示されている方法４００の代替実施形態を示す。たとえば、図１８Ａ〜図２７Ｂは、図５Ａ〜図１４Ｂにそれぞれ類似し得る。しかしながら、図１８Ａおよび図１８Ｂに示されているように、データセットＡ（ＸA）と、データセットＡ（ＸA）に対応する記録値のセット（ＹA）と、データセットＢ（ＸB）と、データセットＢ（ＸB）に対応する記録値のセット（ＹB）とは、図５Ａ〜図１４Ｂの例示的な実施形態に含まれるものとは異なるデータを含み得る。
【０４９２】
[00248]図１８Ａに示されているように、データセットＡ（ＸA）は、第１の次元において４つのオブジェクト（たとえば、「書籍タイトル１」、「書籍タイトル２」、「書籍タイトル３」、および「書籍タイトル４」）を含み得る。これらのオブジェクトは、書籍商（たとえば、オンライン書籍商または書店）から仕入れおよび／または販売される書籍に対応し得る。そのような書籍商は、たとえば、クライアントコンピューティングデバイスＡ４０２に対応し得る。データセットＡ（ＸA）の第２の次元には、４つのオブジェクトの各々に対応する５つの特徴（たとえば、「ジャンル」、「著者」、「ＩＳＢＮ」、「言語」、および出版年）があり得る。（オブジェクト、特徴）の各ペアに対応するエントリは、所与のオブジェクトについての所与の特徴の値に対応し得る。たとえば、オブジェクト「書籍タイトル１」は、「５６４１５」の特徴「ＩＳＢＮ」の値を有し得る。「ＩＳＢＮ」に対応する値は５桁を使用して示されているが、例示的な実施形態では他の桁数（たとえば、１０桁、１３桁、２０桁など）が使用され得る。さらに、いくつかの実施形態では、ＩＳＢＮは、（たとえば、１０進数ではなく）２進数または１６進数であり得る。
【０４９３】
[00249]さらに、図１８Ａに示されているように、記録値の対応するセット（ＹA）は、第１の次元において、データセットＡ（ＸA）中の４つのオブジェクトと同じ４つのオブジェクト（たとえば、「書籍タイトル１」、「書籍タイトル２」、「書籍タイトル３」、および「書籍タイトル４」）を含む。記録値のセット（ＹA）はまた、データセットＡ（ＸA）に対応する書籍商に対応し得る。記録値の対応するセット（ＹA）の第２の次元には、４つのオブジェクトの各々に対応する５つの特徴（たとえば、「ティミー」、「ジョニー」、「サリー」、「スー」、および「マーク」）があり得る。記録値の対応するセット（ＹA）中の（オブジェクト、特徴）の各ペアに対応するエントリは、（たとえば、０〜１００にわたるレーティング）レーティング値に対応し得る。たとえば、特徴「ジョニー」は、オブジェクト「書籍タイトル２」に「１８」の値を格付けしていることがある。
【０４９４】
[00250]同様に、図１８Ｂに示されているように、データセットＢ（ＸB）は、第１の次元において３つのオブジェクト（たとえば、「書籍タイトル２」、「書籍タイトル５」、および「書籍タイトル６」）を含み得る。これらのオブジェクトは、書籍商（たとえば、データセットＡ（ＸA）に対応するオンライン書籍商または書店とは異なるオンライン書籍商または書店）から仕入れおよび／または販売される書籍に対応し得る。そのような書籍商は、たとえば、クライアントコンピューティングデバイスＢ４０４に対応し得る。データセットＢ（ＸB）の第２の次元には、３つのオブジェクトの各々に対応する５つの特徴（たとえば、「ジャンル」、「著者」、「ＩＳＢＮ」、「言語」、および「出版年」）があり得る。図示のように、データセットＢ（ＸB）の特徴はデータセットＡ（ＸA）の特徴と同じであり得る。（オブジェクト、特徴）の各ペアに対応するエントリは、所与のオブジェクトについての所与の特徴の値に対応し得る。たとえば、オブジェクト「書籍タイトル５」は、「英語」の特徴「言語」の値を有し得る。
【０４９５】
[00251]さらに、図１８Ｂに示されているように、記録値の対応するセット（ＹB）は、第１の次元において、データセットＢ（ＸB）中の３つのオブジェクトと同じ３つのオブジェクト（たとえば、「書籍タイトル２」、「書籍タイトル５」、および「書籍タイトル６」）を含む。記録値のセット（ＹB）はまた、データセットＢ（ＸB）に対応する書籍商に対応し得る。記録値の対応するセット（ＹB）の第２の次元には、３つのオブジェクトの各々に対応する３つの特徴（たとえば、「ボブ」、「マーガレット」、および「ブラム」）があり得る。記録値の対応するセット（ＹB）中の（オブジェクト、特徴）の各ペアに対応するエントリは、（たとえば、０〜１００にわたるレーティング）レーティング値に対応し得る。たとえば、特徴「ブラム」は、オブジェクト「書籍タイトル６」に「７４」の値を格付けしていることがある。
【０４９６】
[00252]図１９Ａ〜図２３に示されているように、ＩＳＢＮは、データセットＡ（ＸA）とデータセットＢ（ＸB）との中のオブジェクトの各々の識別子として管理コンピューティングデバイス４０６によって使用され得る。
【０４９７】
[00253]（たとえば、図１９Ａ〜図２７Ｂに示されているように）図４Ｂ〜図４Ｅに示されている方法４００の動作を伝わって、予測値のセット
【０４９８】
【数１４５】
2020537797.tif 000149
【０４９９】
は、図２７Ａおよび図２７Ｂに示されているように、各クライアントコンピューティングデバイスによってそれぞれの部分表現（ＵA／ＵB）について決定されることが可能である。予測値のセット
【０５００】
【数１４６】
2020537797.tif 000150
【０５０１】
と、記録値の対応するセット（ＹA／ＹB）とを使用して、クライアントコンピューティングデバイスは、（たとえば、個別損失関数（ＬA／ＬB）に基づいて）誤差（ＥA／ＥB）を決定し得る。これらの誤差に基づいて、クライアントコンピューティングデバイスは、それぞれのフィードバック値（ＣA／ＣB）を決定し、管理コンピューティングデバイス４０６に送信し得る。それぞれのフィードバック値（ＣA／ＣB）を使用して、管理コンピューティングデバイス４０６は共有表現（Ｕ）を更新し得る。
【０５０２】
[00254]共有表現（Ｕ）および／あるいは１つまたは複数の共有パラメータ（β）がクライアントコンピューティングデバイスに分散された場合、クライアントコンピューティングデバイスは、将来の予測を行うために共有表現（Ｕ）および／あるいは１つまたは複数の共有パラメータ（β）を使用し得る。たとえば、クライアントコンピューティングデバイスＡ４０２とデータセットＡ（ＸA）とに対応する書籍商が販売用に新しい書籍を供給する場合、その書籍商は、（たとえば、「ジャンル」、「著者」、「ＩＳＢＮ」、「言語」、および／または「出版年」の特徴に対応するその新しい書籍の値に基づいて）既存の顧客がその新しい書籍に与えるレーティングを予測し得る。
【０５０３】
[00255]別の例示的な実施形態では、データセット（ＸA／ＸB）内のオブジェクトは化学的化合物であり得る（たとえば、図１８Ａおよび図１８Ｂにおいて、「書籍タイトル１」、「書籍タイトル２」などは、「化学的化合物１」、「化学的化合物２」などと交換され得る）。そのような実施形態では、化学的化合物のために使用される識別子は、（たとえば、図１９Ａ〜図２３に示されているＩＳＢＮと同様に）化学的フィンガープリントであり得る。さらに、そのような実施形態では、記録値の対応するセット（ＹA／ＹB）の特徴は、ユーザではなく、細胞標的（たとえば、癌細胞、配偶子など）に対応し得る（たとえば、「ティミー」、「ジョニー」などは「癌細胞」、「配偶子」などと交換され得る）。またさらに、そのような実施形態では、「ジャンル」および「著者」などのデータセット（ＸA／ＸB）の特徴は、（たとえば、水酸基など、化学的化合物の一部分を備え得るいくつかの官能基などの）化学的サイド情報に関する特徴と交換され得る。
【０５０４】
ＩＶ．結論
[00256]本開示は、様々な態様の例示として意図されている、本出願で説明される特定の実施形態に関して限定されない。当業者には明らかになるように、それの範囲から逸脱することなく多数の修正および変更が行われ得る。本明細書で説明されたものに加えて、本開示の範囲内の機能的に等価な方法および装置が、上記の説明から当業者に明らかになろう。そのような修正および変形は添付の特許請求の範囲内に入るものである。
【０５０５】
[00257]上記の詳細な説明では、添付の図を参照しながら開示されるシステム、デバイス、および方法の様々な特徴および動作について説明している。本明細書および図において説明される例示的な実施形態は、限定的なものとなるものではない。本明細書で提示される主題の範囲から逸脱することなく、他の実施形態が利用されることが可能であり、他の変更が行われることが可能である。本開示の態様は、本明細書で概して説明され、図に示されているように、多種多様な異なる構成で配置、置換、組合せ、分離、および設計されることが可能であることが容易に理解されよう。
【０５０６】
[00258]図中のおよび本明細書で論じられたメッセージフロー図、シナリオ、およびフローチャートのいずれかまたはすべてに関して、各ステップ、ブロック、動作、および／または通信は、例示的な実施形態による情報の処理および／または情報の送信を表すことができる。代替実施形態は、これらの例示的な実施形態の範囲内に含まれる。これらの代替実施形態では、たとえば、ステップ、ブロック、送信、通信、要求、応答、および／またはメッセージとして説明される動作は、関与する機能に応じて、実質的に同時にまたは逆順にを含めて、その図示または議論されたものとは狂っている順序で実行されることが可能である。さらに、本明細書で論じられたメッセージフロー図、シナリオ、およびフローチャートのいずれかとともに、より多いまたはより少ないブロックおよび／または動作が使用されることが可能であり、これらのメッセージフロー図、シナリオ、およびフローチャートは、部分的または全体的に、互いに組み合わされることが可能である。
【０５０７】
[00259]情報の処理を表すステップ、ブロック、または動作は、本明細書で説明される方法または技法の特定の論理機能を実施するように構成されることが可能な回路に対応することができる。代替または追加として、情報の処理を表すステップまたはブロックは、モジュール、セグメント、または（関係するデータを含む）プログラムコードの一部分に対応することができる。プログラムコードは、方法または技法において特定の論理動作または行為を実装するためにプロセッサによって実行可能な１つまたは複数の命令を含むことができる。プログラムコードおよび／または関係するデータは、ＲＡＭ、ディスクドライブ、ソリッドステートドライブ、または別の記憶媒体を含む記憶デバイスなど、任意のタイプのコンピュータ可読媒体上に記憶されることが可能である。
【０５０８】
[00260]コンピュータ可読媒体はまた、レジスタメモリおよびプロセッサキャッシュのように短い時間期間の間データを記憶するコンピュータ可読媒体などの非一時的コンピュータ可読媒体を含むことができる。コンピュータ可読媒体は、より長い時間期間の間プログラムコードおよび／またはデータを記憶する非一時的コンピュータ可読媒体をさらに含むことができる。したがって、コンピュータ可読媒体は、たとえば、ＲＯＭ、光または磁気ディスク、ソリッドステートドライブ、コンパクトディスク読取り専用メモリ（ＣＤ−ＲＯＭ）のような、２次または永続的長期記憶装置を含み得る。コンピュータ可読媒体はまた、任意の他の揮発性または不揮発性記憶システムであることが可能である。コンピュータ可読媒体は、たとえば、コンピュータ可読記憶媒体、または有形記憶デバイスと見なされることが可能である。
【０５０９】
[00261]その上、１つまたは複数の情報送信を表すステップ、ブロック、または動作は、同じ物理デバイス中のソフトウェアおよび／またはハードウェアモジュール間の情報送信に対応することができる。しかしながら、他の情報送信は、異なる物理デバイス中のソフトウェアモジュールおよび／またはハードウェアモジュール間で行われることが可能である。
【０５１０】
[00262]図に示されている特定の配置は、限定するものと見なされるべきではない。他の実施形態は、所与の図に示されている各要素のより多いまたはより少ないものを含むことができることを理解されたい。さらに、図示されている要素のうちのいくつかは、組み合わされるかまたは省略されることが可能である。またさらに、例示的な実施形態は、図に示されていない要素を含むことができる。
【０５１１】
[00263]様々な態様および実施形態が本明細書で開示されたが、他の態様および実施形態が当業者には明らかであろう。本明細書で開示される様々な態様および実施形態は、説明のためのものであり、限定するものではなく、それの真の範囲は以下の特許請求の範囲によって示される。
【０５１２】
[00264]本開示の実施形態は、このようにして、下記の列挙された例示的な実施形態（ＥＥＥ：enumerated example embodiment）のうちの１つに関係し得る。
【０５１３】
[00265]ＥＥＥ１は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える、方法である。
【０５１４】
[00266]ＥＥＥ２は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、共有関数と、１つまたは複数の共有パラメータとを送信することをさらに備える、ＥＥＥ１の方法である。
【０５１５】
[00267]ＥＥＥ３は、識別子のサブセットの各識別子がランダムまたは擬似ランダムに選択される、ＥＥＥ１または２の方法である。
【０５１６】
[00268]ＥＥＥ４は、識別子のサブセットの各識別子が、メルセンヌツイスタ擬似乱数生成器に基づいて選択される、ＥＥＥ３の方法である。
【０５１７】
[00269]ＥＥＥ５は、識別子のサブセットの各識別子が、管理コンピューティングデバイスのみに知られているアルゴリズムに従って選択される、ＥＥＥ１または２の方法である。
【０５１８】
[00270]ＥＥＥ６は、識別子のサブセットの各識別子が、公的に入手可能なアルゴリズムに従って選択される、ＥＥＥ１または２の方法である。
【０５１９】
[00271]ＥＥＥ７は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することが、
管理コンピューティングデバイスによって、各データセットからのオブジェクトの組合せであるオブジェクトの複合リストを作成することと、
管理コンピューティングデバイスによって、複数のデータセットの各々についての識別子のリストの共通部分に基づいて、オブジェクトの複合リストから重複オブジェクトを削除することと
を備える、ＥＥＥ１〜６のいずれかの方法である。
【０５２０】
[00272]ＥＥＥ８は、個別損失関数が、２次損失関数、対数損失関数、ヒンジ損失関数、または分位損失関数のうちの少なくとも１つを備える、ＥＥＥ１〜７のいずれかの方法である。
【０５２１】
[00273]ＥＥＥ９は、それぞれのデータセットについての誤差を決定することが、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する記録値のセット中の非空エントリのうちのどれが、オブジェクトのサブリスト中のオブジェクトに対応するかを識別することと、
それぞれのクライアントコンピューティングデバイスによって、各識別された非空エントリと、それぞれのデータセットに対応する予測値のセット中のそれの対応する予測値との間の個別損失関数を適用することによって、それぞれのデータセットに対応する記録値のセット中の識別された非空エントリの各々の部分誤差値を決定することと、
それぞれのクライアントコンピューティングデバイスによって、部分誤差値を組み合わせることと
を備える、ＥＥＥ１〜８のいずれかの方法である。
【０５２２】
[00274]ＥＥＥ１０は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、１つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、ＥＥＥ１〜９のいずれかの方法である。
【０５２３】
[00275]ＥＥＥ１１は、データセットの最終共有表現が、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能である、ＥＥＥ１０の方法である。
【０５２４】
[00276]ＥＥＥ１２は、それぞれのデータセットに対応する予測値の最終セットを決定することが、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについてオブジェクトのサブリストを受信することと、
それぞれのクライアントコンピューティングデバイスによって、オブジェクトのサブリストと、最終共有表現とに基づいて、それぞれのデータセットについて最終部分表現を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する最終部分表現と、個別関数と、１つまたは複数の個別パラメータとに基づいて、それぞれのデータセットに対応する予測値の最終セットを決定することと
を備える、ＥＥＥ１１の方法である。
【０５２５】
[00277]ＥＥＥ１３は、予測値の最終セットが、
クライアントコンピューティングデバイスのうちの少なくとも１つによって表示されるか、または
それぞれのクライアントコンピューティングデバイスに対応するデータセット中のオブジェクトに関して１つまたは複数の予測を行うためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用される、
ＥＥＥ１１または１２の方法である。
【０５２６】
[00278]ＥＥＥ１４は、クライアントコンピューティングデバイスの各々からの１つまたは複数のフィードバック値が逆伝搬誤差に基づく、ＥＥＥ１〜１３のいずれかの方法である。
【０５２７】
[00279]ＥＥＥ１５は、
共有関数が、人工ニューラルネットワークモデルの１つまたは複数の第１の層に対応し、
各個別関数が、人工ニューラルネットワークモデルの１つまたは複数の第２の層の少なくとも一部分に対応し、
１つまたは複数の第１の層のうちの少なくとも１つが、１つまたは複数の第２の層のうちの少なくとも１つへの入力層である、
ＥＥＥ１〜１４のいずれかの方法である。
【０５２８】
[00280]ＥＥＥ１６は、１つまたは複数の共有パラメータが各々、共有表現の重みテンソル中の１つまたは複数の重みに対応する、ＥＥＥ１５の方法である。
【０５２９】
[00281]ＥＥＥ１７は、１つまたは複数の個別パラメータが各々、それぞれのデータセットについての個別関数の重みテンソル中の１つまたは複数の重みに対応する、ＥＥＥ１５または１６の方法である。
【０５３０】
[00282]ＥＥＥ１８は、複数のデータセットの各々が、等しい次元数を備える、ＥＥＥ１〜１７のいずれかの方法である。
【０５３１】
[00283]ＥＥＥ１９は、次元数が、２、３、４、５、６、７、８、９、１０、１６、３２、６４、１２８、２５６、５１２、または１０２４である、ＥＥＥ１８の方法である。
【０５３２】
[00284]ＥＥＥ２０は、
複数のデータセットの各々がテンソルによって表され、
複数のデータセットのうちの少なくとも１つがスパーステンソルによって表される、
ＥＥＥ１〜１９のいずれかの方法である。
【０５３３】
[00285]ＥＥＥ２１は、共有関数が、修正線形ユニット（ＲｅＬＵ）非線形性およびドロップアウトを有する人工ニューラルネットワークを備える、ＥＥＥ１〜２０のいずれかの方法である。
【０５３４】
[00286]ＥＥＥ２２は、それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することが、それぞれのクライアントコンピューティングデバイスによって、勾配降下法を実施することに対応する、ＥＥＥ１〜２１のいずれかの方法である。
【０５３５】
[00287]ＥＥＥ２３は、予測値のセットの改善が、共有学習率に基づくしきい値改善値に対応する、ＥＥＥ１〜２２のいずれかの方法である。
【０５３６】
[00288]ＥＥＥ２４は、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの共有学習率を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に共有学習率を送信することと
をさらに備える、ＥＥＥ２３の方法である。
【０５３７】
[00289]ＥＥＥ２５は、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することが、それぞれのクライアントコンピューティングデバイスによって、勾配降下法を実施することに対応し、
共有学習率が勾配降下法によって定義される、
ＥＥＥ２３の方法である。
【０５３８】
[00290]ＥＥＥ２６は、共有学習率が、指数関数的減衰学習率、ハーモニック減衰学習率、またはステップワイズ指数関数的減衰学習率のうちの少なくとも１つを備える、ＥＥＥ２３〜２５のいずれかの方法である。
【０５３９】
[00291]ＥＥＥ２７は、予測値のセットの改善が、独立してクライアントコンピューティングデバイスの各々によって決定された個別学習率によって定義されるしきい値改善値に対応する、ＥＥＥ１〜２２のいずれかの方法である。
【０５４０】
[00292]ＥＥＥ２８は、個別学習率が、指数関数的減衰学習率、ハーモニック減衰学習率、またはステップワイズ指数関数的減衰学習率のうちの少なくとも１つを備える、ＥＥＥ２７の方法である。
【０５４１】
[00293]ＥＥＥ２９は、
管理コンピューティングデバイスによって、識別子の複合リストから識別子の追加のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子の追加のサブセット中の各識別子に対応する一意のオブジェクトのリストの追加のサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストの追加のサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの修正された共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子の追加のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトの追加のサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトの追加のサブリストと、修正された共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて、修正された部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトの追加のサブリストと、
それぞれのデータセットについての修正された部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数の修正されたフィードバック値を受信することと、ここにおいて、１つまたは複数の修正されたフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値の修正されたセットを決定することと、ここにおいて、予測値の修正されたセットが、それぞれのデータセットに対応する修正された部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値の修正されたセットと、オブジェクトの追加のサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての修正された誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数の修正されたフィードバック値を決定することと、ここにおいて、１つまたは複数の修正されたフィードバック値が、予測値のセットの改善に対応する修正された部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトの追加のサブリストと、１つまたは複数の修正されたフィードバック値とに基づいて、１つまたは複数の修正されたアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数の修正されたアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと、
管理コンピューティングデバイスによって、１つまたは複数の修正されたアグリゲートされたフィードバック値に基づいて、すべてのそれぞれのデータセットについての修正された誤差に対応するアグリゲートされた誤差が最小限に抑えられたと決定することと
をさらに備える、ＥＥＥ１〜２８のいずれかの方法である。
【０５４２】
[00294]ＥＥＥ３０は、
クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値がフィードバックテンソルに編成され、
各それぞれのフィードバックテンソルが、それぞれの部分表現の次元性に等しい次元性を有する、
ＥＥＥ１〜２９のいずれかの方法である。
【０５４３】
[00295]ＥＥＥ３１は、
１つまたは複数のアグリゲートされたフィードバック値が、アグリゲートされたフィードバックテンソルに編成され、
アグリゲートされたフィードバックテンソルが、共有表現の次元性に等しい次元性を有する、
ＥＥＥ１〜３０のいずれかの方法である。
【０５４４】
[00296]ＥＥＥ３２は、管理コンピューティングデバイスによって、同様の関係をモデル化するために使用される関係する共有関数に基づいて、共有関数と、１つまたは複数の共有パラメータとを初期化することをさらに備える、ＥＥＥ１〜３１のいずれかの方法である。
【０５４５】
[00297]ＥＥＥ３３は、
管理コンピューティングデバイスによって、複数のクライアントコンピューティングデバイスのうちの第１のクライアントコンピューティングデバイスから１つまたは複数の共有パラメータの初期値を受信することと、
管理コンピューティングデバイスによって、１つまたは複数の共有パラメータの初期値に基づいて、共有関数と、１つまたは複数の共有パラメータとを初期化することと
をさらに備える、ＥＥＥ１〜３１のいずれかの方法である。
【０５４６】
[00298]ＥＥＥ３４は、１つまたは複数の共有パラメータの初期値が、１つまたは複数の公開モデルに基づいて第１のクライアントコンピューティングデバイスによって決定される、ＥＥＥ３３の方法である。
【０５４７】
[00299]ＥＥＥ３５は、管理コンピューティングデバイスによって、乱数生成器または擬似乱数生成器のうちの少なくとも１つに基づいて、共有関数と、１つまたは複数の共有パラメータとを初期化することをさらに備える、ＥＥＥ１〜３１のいずれかの方法である。
【０５４８】
[00300]ＥＥＥ３６は、クライアントコンピューティングデバイスによって１つまたは複数のフィードバック値を決定することが、それぞれのクライアントコンピューティングデバイスによって、乱数生成器または擬似乱数生成器に基づいて、それぞれのデータセットに対応する個別関数と、１つまたは複数の個別パラメータとを初期化することをさらに備える、ＥＥＥ１〜３５のいずれかの方法である。
【０５４９】
[00301]ＥＥＥ３７は、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することが、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を表すテンソルを定義することと、
管理コンピューティングデバイスによって、オブジェクトのサブリストに基づいて、共有識別子を有するオブジェクトのサブリスト中のオブジェクトに対応するクライアントコンピューティングデバイスからの１つまたは複数のフィードバック値のうちのフィードバック値を、１つまたは複数のアグリゲートされたフィードバック値を表すテンソルの共有エントリにまとめることと
を備える、ＥＥＥ１〜３６のいずれかの方法である。
【０５５０】
[00302]ＥＥＥ３８は、
１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することが、偏導関数の和を評価することを備え、
偏導関数の各々が、１つまたは複数の共有パラメータに対するそれぞれのデータセットについての誤差の偏導関数である、
ＥＥＥ１〜３７のいずれかの方法である。
【０５５１】
[00303]ＥＥＥ３９は、
１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することが、第１の偏導関数と第２の偏導関数との積の和を評価することを備え、
第１の偏導関数が、それぞれの部分表現に対するそれぞれのデータセットについての誤差の偏導関数であり、
第２の偏導関数が、１つまたは複数の共有パラメータに対するそれぞれの部分表現の偏導関数である、
ＥＥＥ１〜３７のいずれかの方法である。
【０５５２】
[00304]ＥＥＥ４０は、管理コンピューティングデバイスによって、管理コンピューティングデバイスのメモリから、一意のオブジェクトのリストと、共有表現と、複数のデータセットのうちの各データセットの識別子のリストと、識別子の複合リストとを削除することをさらに備える、ＥＥＥ１〜３９のいずれかの方法である。
【０５５３】
[00305]ＥＥＥ４１は、
複数のデータセットの各々が、少なくとも２つの次元を備え、
複数のデータセットの各々の第１の次元が、複数の化学的化合物を備え、
複数のデータセットの各々の第２の次元が、化学的化合物の記述子を備え、
複数のデータセットの各々中のエントリは、それぞれの化学的化合物がそれぞれの記述子を示すかどうかのバイナリ指標に対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも２つの次元を備え、
記録値のセットの各々の第１の次元が、複数の化学的化合物を備え、
記録値のセットの各々の第２の次元が、複数の生物学的アッセイにおける化学的化合物の活動性を備え、
記録値のセットの各々中のエントリは、それぞれの化学的化合物がそれぞれの活動性を示すかどうかのバイナリ指標に対応する、
ＥＥＥ１〜４０のいずれかの方法である。
【０５５４】
[00306]ＥＥＥ４２は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、１つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、ＥＥＥ４１の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、複数の化学的化合物の中で１つまたは複数の有効な治療化合物を識別するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用される。
【０５５５】
[00307]ＥＥＥ４３は、
複数のデータセットの各々が、少なくとも２つの次元を備え、
複数のデータセットの各々の第１の次元が、複数の患者を備え、
複数のデータセットの各々の第２の次元が、患者の記述子を備え、
複数のデータセットの各々中のエントリは、それぞれの患者がそれぞれの記述子を示すかどうかのバイナリ指標に対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも２つの次元を備え、
記録値のセットの各々の第１の次元が、複数の患者を備え、
記録値のセットの各々の第２の次元が、患者の臨床診断を備え、
記録値のセットの各々中のエントリは、それぞれの患者がそれぞれの臨床診断を示すかどうかのバイナリ指標に対応する、
ＥＥＥ１〜４０のいずれかの方法である。
【０５５６】
[00308]ＥＥＥ４４は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、１つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、ＥＥＥ４３の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、複数の患者のうちの少なくとも１人を診断するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用される。
【０５５７】
[00309]ＥＥＥ４５は、
複数のデータセットの各々が、少なくとも２つの次元を備え、
複数のデータセットの各々の第１の次元が、複数のユーザを備え、
複数のデータセットの各々の第２の次元が、複数の書籍タイトルを備え、
複数のデータセットの各々中のエントリが、それぞれのユーザによるそれぞれの書籍タイトルのレーティングに対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも２つの次元を備え、
記録値のセットの各々の第１の次元が、複数のユーザを備え、
記録値のセットの各々の第２の次元が、複数のムービータイトルを備え、
記録値のセットの各々中のエントリが、それぞれのユーザによるそれぞれのムービータイトルのレーティングに対応する、
ＥＥＥ１〜４０のいずれかの方法である。
【０５５８】
[00310]ＥＥＥ４６は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、１つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、ＥＥＥ４５の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、複数のユーザのうちの少なくとも１人に複数のムービータイトルのうちの少なくとも１つを推奨するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用される。
【０５５９】
[00311]ＥＥＥ４７は、
複数のデータセットの各々が、少なくとも２つの次元を備え、
複数のデータセットの各々の第１の次元が、複数の保険証券を備え、
複数のデータセットの各々の第２の次元が、複数の控除免責額を備え、
複数のデータセットの各々中のエントリは、それぞれの保険証券がそれぞれの控除免責額を有するかどうかのバイナリ指標に対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも２つの次元を備え、
記録値のセットの各々の第１の次元が、複数の保険証券を備え、
記録値のセットの各々の第２の次元が、複数の保険料を備え、
記録値のセットの各々中のエントリは、それぞれの保険証券がそれぞれの保険料を有するかどうかのバイナリ指標に対応する、
ＥＥＥ１〜４０のいずれかの方法である。
【０５６０】
[00312]ＥＥＥ４８は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、１つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、ＥＥＥ４７の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、予想される控除免責額に基づいて保険料を推奨するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用される。
【０５６１】
[00313]ＥＥＥ４９は、
複数のデータセットの各々が、少なくとも２つの次元を備え、
複数のデータセットの各々の第１の次元が、複数の自動車を備え、
複数のデータセットの各々の第２の次元が、複数の自動車部品を備え、
複数のデータセットの各々中のエントリが、それぞれの自動車がそれぞれの自動車部品を装備しているかどうかのバイナリ指標に対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも２つの次元を備え、
記録値のセットの各々の第１の次元が、複数の自動車を備え、
記録値のセットの各々の第２の次元が、複数の平均燃料効率を備え、
記録値のセットの各々中のエントリが、それぞれの自動車がそれぞれの平均燃料効率を有するかどうかのバイナリ指標に対応する、
ＥＥＥ１〜４０のいずれかの方法である。
【０５６２】
[00314]ＥＥＥ５０は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、１つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、ＥＥＥ４９の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、装備されている自動車部品のセットに基づいて自動車モデルの平均燃料効率を予測するためにクライアントコンピューティングデバイスのうちの少なくとも１つによって使用される。
【０５６３】
[00315]ＥＥＥ５１は、
それぞれのクライアントコンピューティングデバイスのそれぞれのデータセットが１次メモリストレージに記憶され、
それぞれのデータセットに対応する記録値のセットが２次メモリストレージに記憶される、
ＥＥＥ１〜５０のいずれかの方法である。
【０５６４】
[00316]ＥＥＥ５２は、
複数のデータセットのうちの１つに対応する予測値のセットの各々が、予測値テンソルに対応し、
予測値テンソルが、第２のテンソルによって乗算される第１のテンソルに分解され、
第１のテンソルが、１つまたは複数の共有パラメータによって乗算されるそれぞれのデータセットに対応する、
ＥＥＥ１〜１４、１８〜２０、または２２〜５１のいずれかの方法である。
【０５６５】
[00317]ＥＥＥ５３は、それぞれのデータセットが、データセットのオブジェクトに関するサイド情報を符号化する、ＥＥＥ５２の方法である。
【０５６６】
[00318]ＥＥＥ５４は、予測値テンソルが、Ｍａｃａｕ分解方法を使用して分解される、ＥＥＥ５２または５３の方法である。
【０５６７】
[00319]ＥＥＥ５５は、各それぞれのクライアントコンピューティングデバイスの個別損失関数が共有損失関数を備える、ＥＥＥ１〜５４のいずれかの方法である。
【０５６８】
[00320]ＥＥＥ５６は、個別損失関数のうちの第１の個別損失関数が、個別損失関数のうちの第２の個別損失関数とは異なる、ＥＥＥ１〜５４のいずれかの方法である。
【０５６９】
[00321]ＥＥＥ５７は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数の化学的化合物をそれらの化学的化合物の複数の記述子に関係付け、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数の化学的化合物を複数の生物学的アッセイにおけるそれらの化学的化合物の活動性に関係付ける、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える、方法であり、
ここにおいて、共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数の化学的化合物の中で１つまたは複数の有効な治療化合物を識別するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【０５７０】
[00322]ＥＥＥ５８は、複数の記述子が、トランスクリプトミクスまたは画像スクリーニングを介して識別された化学導出フィンガープリントまたは記述子を備える、ＥＥＥ５７の方法である。
【０５７１】
[00323]ＥＥＥ５９は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数の患者をそれらの患者の複数の記述子に関係付け、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数の患者を患者の臨床診断に関係付ける、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える、方法であり、
ここにおいて、共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数の患者のうちの１人または複数を診断するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【０５７２】
[00324]ＥＥＥ６０は、患者の複数の記述子が、ゲノムベースの記述子、患者の人口統計、患者の年齢、患者の身長、患者の体重、または患者の性別を備える、ＥＥＥ５９の方法である。
【０５７３】
[00325]ＥＥＥ６１は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数のユーザによる複数の書籍タイトルについての書籍レーティングのセットを提供し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数のユーザによる複数のムービータイトルについてのムービーレーティングのセットを提供する、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える、方法であり、
ここにおいて、共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数のユーザのうちの１人または複数にムービーを推奨するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【０５７４】
[00326]ＥＥＥ６２は、書籍レーティングが、バイナリレーティング、分類レーティング、または数値レーティングのうちの少なくとも１つを備える、ＥＥＥ６１の方法である。
【０５７５】
[00327]ＥＥＥ６３は、ムービーレーティングが、バイナリレーティング、分類レーティング、または数値レーティングのうちの少なくとも１つを備える、ＥＥＥ６１または６２の方法である。
【０５７６】
[00328]ＥＥＥ６４は、
第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、第１のクライアントコンピューティングデバイスに対応する第１のデータセットを送信することと、
ここにおいて、第１のデータセットが、複数のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの１つであり、
ここにおいて、各データセットが記録値のセットに対応し、および
ここにおいて、各データセットがオブジェクトを備える、
第１のクライアントコンピューティングデバイスによって、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とを受信することと、
ここにおいて、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットについての第１の部分表現とが、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することと、
管理コンピューティングデバイスによって、第１のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第１のデータセットについてオブジェクトの第１のサブリストを決定することと、
管理コンピューティングデバイスによって、オブジェクトの第１のサブリストと、共有表現とに基づいて、第１のデータセットについて第１の部分表現を決定することと
によって管理コンピューティングデバイスによって決定される、
第１のクライアントコンピューティングデバイスによって、第１のデータセットに対応する予測値の第１のセットを決定することと、ここにおいて、予測値の第１のセットが、第１のデータセットに対応する第１の部分表現と、１つまたは複数の第１の個別パラメータをもつ第１の個別関数とに基づく、
第１のクライアントコンピューティングデバイスによって、第１のデータセットについての第１の個別損失関数と、第１のデータセットに対応する予測値の第１のセットと、オブジェクトの第１のサブリストと、第１のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第１のデータセットについての第１の誤差を決定することと、
第１のクライアントコンピューティングデバイスによって、第１のデータセットについての１つまたは複数の第１の個別パラメータを更新することと、
第１のクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値の第１のセットの改善に対応する第１の部分表現の変化を決定するために使用される、
第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、１つまたは複数のフィードバック値を送信することと
を備える、方法であり、
ここにおいて、１つまたは複数のフィードバック値は、１つまたは複数のアグリゲートされたフィードバック値を決定するために複数のクライアントコンピューティングデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能であり、および
ここにおいて、１つまたは複数のアグリゲートされたフィードバック値は、１つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
【０５７７】
[00329]ＥＥＥ６５は、命令がその上に記憶された非一時的コンピュータ可読媒体であり、ここにおいて、命令は、
複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
複数のデータセットの中から一意のオブジェクトのリストを決定することと、
識別子の複合リストから識別子のサブセットを選択することと、
識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える方法を実施するようにプロセッサによって実行可能である。
【０５７８】
[00330]ＥＥＥ６６は、モデルがその上に記憶されたメモリであり、ここにおいて、モデルは、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと、
管理コンピューティングデバイスによって、メモリ上に、共有表現と、共有関数と、１つまたは複数の共有パラメータとを記憶することと
を備える方法に従って生成される。
【０５７９】
[00331]ＥＥＥ６７は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと、
コンピューティングデバイスによって、データセットに対応する予測値の追加のセットを決定するために、共有表現、共有関数、あるいは１つまたは複数の共有パラメータを使用することと
を備える、方法である。
【０５８０】
[00332]ＥＥＥ６８はサーバデバイスであり、ここにおいて、サーバデバイスは、プロセッサによって実行されたとき、方法を実施する命令をその上に記憶しており、本方法は、
複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
複数のデータセットの中から一意のオブジェクトのリストを決定することと、
識別子の複合リストから識別子のサブセットを選択することと、
識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える。
【０５８１】
[00333]ＥＥＥ６９はサーバデバイスであり、ここにおいて、サーバデバイスは、プロセッサによって実行されたとき、方法を実施する命令をその上に記憶しており、本方法は、
管理コンピューティングデバイスに、サーバデバイスに対応する第１のデータセットを送信することと、
ここにおいて、第１のデータセットが、複数のサーバデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの１つであり、
ここにおいて、各データセットが記録値のセットに対応し、および
ここにおいて、各データセットがオブジェクトを備える、
第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットの第１の部分表現とを受信することと、
ここにおいて、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットの第１の部分表現とが、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することと、
管理コンピューティングデバイスによって、第１のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第１のデータセットについてオブジェクトの第１のサブリストを決定することと、
管理コンピューティングデバイスによって、オブジェクトの第１のサブリストと、共有表現とに基づいて、第１のデータセットについて第１の部分表現を決定することと
によって管理コンピューティングデバイスによって決定される、
第１のデータセットに対応する予測値の第１のセットを決定することと、ここにおいて、予測値の第１のセットが、第１のデータセットに対応する第１の部分表現と、１つまたは複数の第１の個別パラメータをもつ第１の個別関数とに基づく、
第１のデータセットについての第１の個別損失関数と、第１のデータセットに対応する予測値の第１のセットと、オブジェクトの第１のサブリストと、第１のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第１のデータセットについての第１の誤差を決定することと、
第１のデータセットについての１つまたは複数の第１の個別パラメータを更新することと、
１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値の第１のセットの改善に対応する第１の部分表現の変化を決定するために使用される、
管理コンピューティングデバイスに、１つまたは複数のフィードバック値を送信することと
を備え、
ここにおいて、１つまたは複数のフィードバック値は、１つまたは複数のアグリゲートされたフィードバック値を決定するために複数のサーバデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能であり、および
ここにおいて、１つまたは複数のアグリゲートされたフィードバック値は、１つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
【０５８２】
[00334]ＥＥＥ７０は、
サーバデバイスと、
サーバデバイスにそれぞれ通信可能に結合された複数のクライアントデバイスと
を備える、システムであり、
ここにおいて、サーバデバイスは、プロセッサによって実行されたとき、第１の方法を実施する命令をその上に記憶しており、第１の方法は、
複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントデバイスのうちのそれぞれのクライアントデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
複数のデータセットの中から一意のオブジェクトのリストを決定することと、
識別子の複合リストから識別子のサブセットを選択することと、
識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントデバイスのそれぞれのデータセットについて部分表現を決定することと、
クライアントデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと
を備え、
ここにおいて、各クライアントデバイスは、プロセッサによって実行されたとき、第２の方法を実施する命令をその上に記憶しており、第２の方法は、
それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
サーバデバイスに、１つまたは複数のフィードバック値を送信することと
を備え、
ここにおいて、第１の方法は、
オブジェクトのサブリストと、クライアントデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
をさらに備える。
【０５８３】
[00335]ＥＥＥ７１は、最適化されたモデルであり、ここにおいて、このモデルは、方法に従って最適化され、本方法は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと、
管理コンピューティングデバイスによって、共有関数と、１つまたは複数の更新された共有パラメータとに基づいて、データセットの更新された共有表現を計算することと、
ここにおいて、更新された共有表現は、最適化されたモデルに対応する、
を備える。
【０５８４】
[00336]ＥＥＥ７２は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える、コンピュータ実装方法である。
【０５８５】
[00337]ＥＥＥ７３は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数の化学的化合物をそれらの化学的化合物の複数の記述子に関係付け、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数の化学的化合物を複数の生物学的アッセイにおけるそれらの化学的化合物の活動性に関係付ける、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える、コンピュータ実装方法であり、
ここにおいて、共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数の化学的化合物の中で１つまたは複数の有効な治療化合物を識別するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【０５８６】
[00338]ＥＥＥ７４は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数の患者をそれらの患者の複数の記述子に関係付け、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数の患者を患者の臨床診断に関係付ける、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える、コンピュータ実装方法であり、
ここにおいて、共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数の患者のうちの１人または複数を診断するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【０５８７】
[00339]ＥＥＥ７５は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数のユーザによる複数の書籍タイトルについての書籍レーティングのセットを提供し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数のユーザによる複数のムービータイトルについてのムービーレーティングのセットを提供する、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと
を備える、コンピュータ実装方法であり、
ここにおいて、共有表現、共有関数、あるいは１つまたは複数の共有パラメータは、複数のユーザのうちの１人または複数にムービーを推奨するために複数のクライアントコンピューティングデバイスのうちの少なくとも１つによって使用可能である。
【０５８８】
[00340]ＥＥＥ７６は、
第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、第１のクライアントコンピューティングデバイスに対応する第１のデータセットを送信することと、
ここにおいて、第１のデータセットが、複数のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの１つであり、
ここにおいて、各データセットが記録値のセットに対応し、および
ここにおいて、各データセットがオブジェクトを備える、
第１のクライアントコンピューティングデバイスによって、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットの第１の部分表現とを受信することと、
ここにおいて、第１のデータセットについてのオブジェクトの第１のサブリストと、第１のデータセットの第１の部分表現とが、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することと、
管理コンピューティングデバイスによって、第１のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第１のデータセットについてオブジェクトの第１のサブリストを決定することと、
管理コンピューティングデバイスによって、オブジェクトの第１のサブリストと、共有表現とに基づいて、第１のデータセットについて第１の部分表現を決定することと
によって管理コンピューティングデバイスによって決定される、
第１のクライアントコンピューティングデバイスによって、第１のデータセットに対応する予測値の第１のセットを決定することと、ここにおいて、予測値の第１のセットが、第１のデータセットに対応する第１の部分表現と、１つまたは複数の第１の個別パラメータをもつ第１の個別関数とに基づく、
第１のクライアントコンピューティングデバイスによって、第１のデータセットについての第１の個別損失関数と、第１のデータセットに対応する予測値の第１のセットと、オブジェクトの第１のサブリストと、第１のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第１のデータセットについての第１の誤差を決定することと、
第１のクライアントコンピューティングデバイスによって、第１のデータセットについての１つまたは複数の第１の個別パラメータを更新することと、
第１のクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値の第１のセットの改善に対応する第１の部分表現の変化を決定するために使用される、
第１のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、１つまたは複数のフィードバック値を送信することと
を備える、コンピュータ実装方法であり、
ここにおいて、１つまたは複数のフィードバック値は、１つまたは複数のアグリゲートされたフィードバック値を決定するために複数のクライアントコンピューティングデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能であり、および
ここにおいて、１つまたは複数のアグリゲートされたフィードバック値は、１つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
【０５８９】
[00341]ＥＥＥ７７は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、１つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも１つから、１つまたは複数のフィードバック値を受信することと、ここにおいて、１つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、１つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての１つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、１つまたは複数のフィードバック値を決定することと、ここにおいて、１つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの１つまたは複数のフィードバック値とに基づいて、１つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、１つまたは複数のアグリゲートされたフィードバック値に基づいて１つまたは複数の共有パラメータを更新することと、
コンピューティングデバイスによって、データセットに対応する予測値の追加のセットを決定するために、共有表現、共有関数、あるいは１つまたは複数の共有パラメータを使用することと
を備える、コンピュータ実装方法である。
【図１】
2020537797.tif 000151
【図２】
2020537797.tif 000152
【図３】
2020537797.tif 000153
【図４Ａ】
2020537797.tif 000154
【図４Ｂ】
2020537797.tif 000155
【図４Ｃ】
2020537797.tif 000156
【図４Ｄ】
2020537797.tif 000157
【図４Ｅ】
2020537797.tif 000158
【図４Ｆ】
2020537797.tif 000159
【図５Ａ】
2020537797.tif 000160
【図５Ｂ】
2020537797.tif 000161
【図６Ａ】
2020537797.tif 000162
【図６Ｂ】
2020537797.tif 000163
【図７】
2020537797.tif 000164
【図８】
2020537797.tif 000165
【図９】
2020537797.tif 000166
【図１０】
2020537797.tif 000167
【図１１】
2020537797.tif 000168
【図１２Ａ】
2020537797.tif 000169
【図１２Ｂ】
2020537797.tif 000170
【図１３Ａ】
2020537797.tif 000171
【図１３Ｂ】
2020537797.tif 000172
【図１４Ａ】
2020537797.tif 000173
【図１４Ｂ】
2020537797.tif 000174
【図１５Ａ】
2020537797.tif 000175
【図１５Ｂ】
2020537797.tif 000176
【図１６Ａ】
2020537797.tif 000177
【図１６Ｂ】
2020537797.tif 000178
【図１６Ｃ】
2020537797.tif 000179
【図１７Ａ】
2020537797.tif 000180
【図１７Ｂ】
2020537797.tif 000181
【図１８Ａ】
2020537797.tif 000182
【図１８Ｂ】
2020537797.tif 000183
【図１９Ａ】
2020537797.tif 000184
【図１９Ｂ】
2020537797.tif 000185
【図２０】
2020537797.tif 000186
【図２１】
2020537797.tif 000187
【図２２】
2020537797.tif 000188
【図２３】
2020537797.tif 000189
【図２４】
2020537797.tif 000190
【図２５Ａ】
2020537797.tif 000191
【図２５Ｂ】
2020537797.tif 000192
【図２６Ａ】
2020537797.tif 000193
【図２６Ｂ】
2020537797.tif 000194
【図２７Ａ】
2020537797.tif 000195
【図２７Ｂ】
2020537797.tif 000196
【国際調査報告】
2020537797.tif 000197
2020537797.tif 000198
2020537797.tif 000199
2020537797.tif 000200