JP2020537797A - セキュアなブローカーによって媒介されるデータ分析および予測 - Google Patents

セキュアなブローカーによって媒介されるデータ分析および予測 Download PDF

Info

Publication number
JP2020537797A
JP2020537797A JP2020539142A JP2020539142A JP2020537797A JP 2020537797 A JP2020537797 A JP 2020537797A JP 2020539142 A JP2020539142 A JP 2020539142A JP 2020539142 A JP2020539142 A JP 2020539142A JP 2020537797 A JP2020537797 A JP 2020537797A
Authority
JP
Japan
Prior art keywords
computing device
dataset
client computing
objects
shared
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020539142A
Other languages
English (en)
Other versions
JP7374905B2 (ja
Inventor
クールマンス、ヒューゴ
ワイツ、ロエル
ベラヒタート、ウィルフリート
シム、ヤーク
アラニー、アダム
モロー、イブ・ジャン・リュック
エルジール、シャルロット
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Katholieke Universiteit Leuven
Original Assignee
Katholieke Universiteit Leuven
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Katholieke Universiteit Leuven filed Critical Katholieke Universiteit Leuven
Publication of JP2020537797A publication Critical patent/JP2020537797A/ja
Application granted granted Critical
Publication of JP7374905B2 publication Critical patent/JP7374905B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/30Prediction of properties of chemical compounds, compositions or mixtures
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/70Machine learning, data mining or chemometrics
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本開示は、セキュアなブローカーによって媒介されるデータ分析および予測に関する。1つの例示的な実施形態は方法を含む。本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスから複数のデータセットを受信することを含む。本方法はまた、管理コンピューティングデバイスによって、1つまたは複数の共有パラメータを有する共有関数に基づいて共有表現を計算することを含む。さらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスに、共有表現と、他のデータとを送信することを含む。さらに、本方法は、共有表現と、他のデータとに基づいて、クライアントコンピューティングデバイスが、1つまたは複数の個別パラメータを用いて、部分表現と、個別関数とを更新することを含む。またさらに、本方法は、クライアントコンピューティングデバイスによって、管理コンピューティングデバイスに提供すべきフィードバック値を決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、フィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。

Description

[0001]本明細書で別段に規定されていない限り、このセクションで説明される資料は、本出願の特許請求の範囲に対する従来技術ではなく、このセクションに包含することによって従来技術であるとは認められない。
[0002]機械学習は、分析モデルの構築を自動化しようとするコンピュータサイエンスの部門である。機械学習では、データセットを使用して「学習」するモデルを作成するためにアルゴリズムが使用される。「教示」されると、機械学習されたモデルは、将来のデータセットを含む、他のデータセットに関する予測を行うために使用され得る。機械学習は、様々な分野においてモデルを開発するのに有用であることが証明されている。たとえば、機械学習は、コンピュータビジョン、統計学、データ分析、バイオインフォマティクス、デオキシリボース核酸(DNA)配列識別、マーケティング、言語学、経済学、広告、音声認識、ゲーミングなどに適用されている。
[0003]機械学習は、「トレーニングデータ」と通常呼ばれる、データのセット上でモデルをトレーニングすることを伴う。モデルをトレーニングすることは、教師あり学習および教師なし学習という、2つの主要なサブクラスを含み得る。
[0004]教師あり学習では、トレーニングデータは、結果が知られている複数のデータセットを含み得る。たとえば、画像認識の領域におけるトレーニングデータは、特定のタイプのオブジェクト(たとえば、犬、鉛筆、車など)を含んでいるように(たとえば、人間によって)ラベリングされたいくつかのオブジェクトを示す画像に対応し得る。そのようなトレーニングデータは「ラベル付きトレーニングデータ」と呼ばれることがある。
[0005]教師なし学習では、トレーニングデータは、必ずしも知られている値または結果に対応するとは限らないことがある。そのようなものとして、トレーニングデータは「ラベルなし」であり得る。各トレーニングデータの結果が知られていないので、機械学習アルゴリズムは、トレーニングデータから関数を推論し得る。例として、関数は、トレーニングデータ内の1つまたは複数の次元に基づいて重み付けされ得る。さらに、関数は、モデルが適用される新しいデータに関して予測を行うために使用され得る。
[0006]トレーニングデータを使用してモデルをトレーニングすると、モデルを使用して予測が行われ得る。所与のモデルをトレーニングするために使用されるトレーニングデータがより多いほど、モデルはより改良され得、モデルはより正確になり得る。機械学習における通例の最適化は、最も少ない量のトレーニングデータへのアクセスを有しながら、最もロバストで信頼できるモデルを取得することを含む。
[0007]いくつかの場合には、トレーニングデータの追加のソースは、より良くトレーニングされた機械学習モデルを提供し得る。しかしながら、いくつかのシナリオでは、より多くのトレーニングデータを達成することが可能でないことがある。たとえば、2つの会社が、機械学習モデルをトレーニングするためにまとめて使用され得るトレーニングデータのそれぞれのセットを所有することがあり、この機械学習モデルは、個々に利用されるいずれかのトレーニングデータのセット上でトレーニングされたモデルよりも優れている。しかしながら、各会社は、それらのデータが秘密のままであることを望むことがある(たとえば、各会社はプライベートデータを他の会社に見せることを希望しない)。
[0008]本明細書および図面は、セキュアなブローカーによって媒介されるデータ分析および予測に関する実施形態を開示する。
[0009]本開示では、複数の当事者の間でプライベート情報を見せることなしに複数の当事者からの複数のデータセットを使用して共同機械学習を実施するための方法について説明する。そのような方法は、管理コンピューティングデバイスにそれぞれのデータセットを送信する複数のクライアントコンピューティングデバイスを含み得る。管理コンピューティングデバイスは、次いで、データセットを組み合わせ、組み合わされたデータセット上で機械学習アルゴリズムの一部分を実施し、次いで、機械学習アルゴリズムの結果の一部分をクライアントコンピューティングデバイスの各々に返信し得る。各クライアントコンピューティングデバイスは、次いで、機械学習アルゴリズムの別の部分を実施し、結果のそれの部分を管理コンピューティングデバイスに送り返し得る。各クライアントコンピューティングデバイスから受信された結果に基づいて、管理コンピューティングデバイスは、次いで、対応する機械学習モデルを更新するために、機械学習アルゴリズムの追加の部分を実施し得る。いくつかの場合には、本方法は、最適化タイプもしくは再帰タイプ方式で複数回行われ得、および/または継続ベース上で行われ得る。
[0010]第1の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。またさらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。さらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。なおさらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定され、ここにおいて、1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法はまた、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。
[0011]第2の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応し、ここにおいて、各データセットは、複数の化学的化合物をそれらの化学的化合物の複数の記述子に関係付ける。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。なおさらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。それぞれのデータセットに対応する記録値のセットは、複数の化学的化合物を複数の生物学的アッセイにおけるそれらの化学的化合物の活動性に関係付ける。さらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定される。1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法は、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することをさらに含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数の化学的化合物の中で1つまたは複数の有効な治療化合物を識別するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[0012]第3の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応し、ここにおいて、各データセットは、複数の患者をそれらの患者の複数の記述子に関係付ける。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。なおさらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。それぞれのデータセットに対応する記録値のセットは、複数の患者を患者の臨床診断に関係付ける。さらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定される。1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法は、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することをさらに含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数の患者のうちの1人または複数を診断するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[0013]第4の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応し、ここにおいて、各データセットは、複数のユーザによる複数の書籍タイトルについての書籍レーティングのセットを提供する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。なおさらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。それぞれのデータセットに対応する記録値のセットは、複数のユーザによる複数のムービータイトルについてのムービーレーティングのセットを提供する。さらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定される。1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法は、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することをさらに含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数のユーザのうちの1人または複数にムービーを推奨するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[0014]第5の態様では、本開示では方法について説明する。本方法は、第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、第1のクライアントコンピューティングデバイスに対応する第1のデータセットを送信することを含む。第1のデータセットは、複数のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの1つである。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、第1のクライアントコンピューティングデバイスによって、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とを受信することを含む。第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することによって決定される。第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とはまた、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することによって決定される。さらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することによって決定される。なおさらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することによって決定される。またさらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することによって決定される。なおさらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、第1のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第1のデータセットについてオブジェクトの第1のサブリストを決定することによって決定される。またさらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、オブジェクトの第1のサブリストと、共有表現とに基づいて、第1のデータセットについて第1の部分表現を決定することによって決定される。なおさらに、本方法は、第1のクライアントコンピューティングデバイスによって、第1のデータセットに対応する予測値の第1のセットを決定することを含む。予測値の第1のセットは、第1のデータセットに対応する第1の部分表現と、1つまたは複数の第1の個別パラメータをもつ第1の個別関数とに基づく。さらに、本方法は、第1のクライアントコンピューティングデバイスによって、第1のデータセットについての第1の個別損失関数と、第1のデータセットに対応する予測値の第1のセットと、オブジェクトの第1のサブリストと、第1のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第1のデータセットについての第1の誤差を決定することを含む。またさらに、本方法は、第1のクライアントコンピューティングデバイスによって、第1のデータセットについての1つまたは複数の第1の個別パラメータを更新することを含む。またさらに、本方法は、第1のクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することを含む。1つまたは複数のフィードバック値は、予測値の第1のセットの改善に対応する第1の部分表現の変化を決定するために使用される。しかもなおさらに、本方法は、第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、1つまたは複数のフィードバック値を送信することを含む。1つまたは複数のフィードバック値は、1つまたは複数のアグリゲートされたフィードバック値を決定するために複数のクライアントコンピューティングデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能である。1つまたは複数のアグリゲートされたフィードバック値は、1つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
[0015]第6の態様では、本開示では、命令がその上に記憶された非一時的コンピュータ可読媒体について説明する。命令は、方法を実施するようにプロセッサによって実行可能である。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。またさらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。さらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。なおさらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定され、ここにおいて、1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法はまた、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。
[0016]第7の態様では、本開示では、モデルがその上に記憶されたメモリについて説明する。モデルは、方法に従って生成される。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。またさらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。さらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。なおさらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定され、ここにおいて、1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法はまた、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、メモリ上に、共有表現と、共有関数と、1つまたは複数の共有パラメータとを記憶することを含む。
[0017]第8の態様では、本開示では方法について説明する。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することを含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。またさらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。さらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。なおさらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。またさらに、1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定され、ここにおいて、1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。本方法はまた、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもなおさらに、本方法は、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。またなおさらに、本方法は、コンピューティングデバイスによって、データセットに対応する予測値の追加のセットを決定するために、共有表現、共有関数、あるいは1つまたは複数の共有パラメータを使用することを含む。
[0018]第9の態様では、本開示ではサーバデバイスについて説明する。サーバデバイスは、プロセッサによって実行されたとき、方法を実施する命令をその上に記憶している。本方法は、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、本方法は、識別子の複合リストから識別子のサブセットを選択することを含む。またさらに、本方法は、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することを含む。本方法は、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することをさらに含む。なおさらに、本方法は、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またさらに、本方法は、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおまたさらに、本方法は、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。しかもなおさらに、本方法は、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。さらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。さらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによって決定される。1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。なおまたさらに、本方法は、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもまたさらに、本方法は、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。
[0019]第10の態様では、本開示ではサーバデバイスについて説明する。サーバデバイスは、プロセッサによって実行されたとき、方法を実施する命令をその上に記憶している。本方法は、管理コンピューティングデバイスに、サーバデバイスに対応する第1のデータセットを送信することを含む。第1のデータセットは、複数のサーバデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの1つである。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とを受信することを含む。第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することによって、管理コンピューティングデバイスによって決定される。第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とはまた、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することによって、管理コンピューティングデバイスによって決定される。さらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することによって、管理コンピューティングデバイスによって決定される。さらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することによって、管理コンピューティングデバイスによって決定される。またさらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することによって、管理コンピューティングデバイスによって決定される。第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、第1のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第1のデータセットについてオブジェクトの第1のサブリストを決定することによって、管理コンピューティングデバイスによってさらに決定される。またさらに、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とは、管理コンピューティングデバイスによって、オブジェクトの第1のサブリストと、共有表現とに基づいて、第1のデータセットについて第1の部分表現を決定することによって、管理コンピューティングデバイスによって決定される。さらに、本方法は、第1のデータセットに対応する予測値の第1のセットを決定することを含む。予測値の第1のセットは、第1のデータセットに対応する第1の部分表現と、1つまたは複数の第1の個別パラメータをもつ第1の個別関数とに基づく。さらに、本方法は、第1のデータセットについての第1の個別損失関数と、第1のデータセットに対応する予測値の第1のセットと、オブジェクトの第1のサブリストと、第1のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第1のデータセットについての第1の誤差を決定することを含む。なおさらに、本方法は、第1のデータセットについての1つまたは複数の第1の個別パラメータを更新することを含む。本方法は、1つまたは複数のフィードバック値を決定することをさらに含む。1つまたは複数のフィードバック値は、予測値の第1のセットの改善に対応する第1の部分表現の変化を決定するために使用される。またさらに、本方法は、管理コンピューティングデバイスに、1つまたは複数のフィードバック値を送信することを含む。1つまたは複数のフィードバック値は、1つまたは複数のアグリゲートされたフィードバック値を決定するために複数のサーバデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能である。1つまたは複数のアグリゲートされたフィードバック値は、1つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
[0020]第11の態様では、本開示ではシステムについて説明する。本システムはサーバデバイスを含む。本システムはまた、サーバデバイスにそれぞれ通信可能に結合された複数のクライアントデバイスを含む。サーバデバイスは、プロセッサによって実行されたとき、第1の方法を実施する命令をその上に記憶している。第1の方法は、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントデバイスのうちのそれぞれのクライアントデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。第1の方法はまた、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、第1の方法は、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。さらに、第1の方法は、識別子の複合リストから識別子のサブセットを選択することを含む。第1の方法は、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。第1の方法は、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することをさらに含む。またさらに、第1の方法は、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またさらに、第1の方法は、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントデバイスのそれぞれのデータセットについて部分表現を決定することを含む。なおさらに、第1の方法は、クライアントデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。各クライアントデバイスは、プロセッサによって実行されたとき、第2の方法を実施する命令をその上に記憶している。第2の方法は、それぞれのデータセットに対応する予測値のセットを決定することを含む。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。第2の方法はまた、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することを含む。さらに、第2の方法は、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することを含む。第2の方法は、1つまたは複数のフィードバック値を決定することをさらに含む。1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。第2の方法は、サーバデバイスに、1つまたは複数のフィードバック値を送信することをさらに含む。またなおさらに、第1の方法は、オブジェクトのサブリストと、クライアントデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することを含む。しかもまたさらに、第1の方法は、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。
[0021]第12の態様では、本開示は、最適化されたモデルについて説明する。モデルは、方法に従って最適化される。本方法は、管理コンピューティングデバイスによって、複数のデータセットを受信することを含む。複数のデータセットのうちの各データセットは、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信される。各データセットは記録値のセットに対応する。各データセットはオブジェクトを含む。本方法はまた、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを含む識別子の複合リストとを決定することを含む。さらに、本方法は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することを含む。本方法は、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することをさらに含む。本方法は、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することをさらに含む。さらに、本方法は、管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することを含む。なおさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することを含む。またさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、それぞれのデータセットについてのオブジェクトのサブリストと、それぞれのデータセットについての部分表現とを送信することを含む。なおまたさらに、本方法は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを含む。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することによって、クライアントコンピューティングデバイスによって決定される。予測値のセットは、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく。1つまたは複数のフィードバック値はまた、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することによって、クライアントコンピューティングデバイスによって決定される。さらに、1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することによって、クライアントコンピューティングデバイスによって決定される。1つまたは複数のフィードバック値は、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することによって、クライアントコンピューティングデバイスによってさらに決定される。1つまたは複数のフィードバック値は、予測値のセットの改善に対応する部分表現の変化を決定するために使用される。なおまたさらに、本方法は、管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することを含む。またなおさらに、本方法は、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することを含む。またなおさらに一層、本方法は、管理コンピューティングデバイスによって、共有関数と、1つまたは複数の更新された共有パラメータとに基づいて、データセットの更新された共有表現を計算することを含む。更新された共有表現は、最適化されたモデルに対応する。
[0022]第13の態様では、本開示では、管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのセットを決定することと、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのセットのサブセットを決定することと、管理コンピューティングデバイスによって、一意のオブジェクトのセットのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブセットを決定することと、管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブセットと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、管理コンピューティングデバイスによって、1つまたは複数のフィードバック値を収集することと、ここにおいて、1つまたは複数のフィードバック値の各々が、それぞれのデータセットについての記録値のセットと比較された予測値のセットの改善に対応する部分表現の変化として決定される、管理コンピューティングデバイスによって、オブジェクトのサブセットと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することとを備える、機械学習のための方法について説明する。
[0023]第14の態様では、本開示は、機械学習のための方法であって、第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、第1のクライアントコンピューティングデバイスに対応する第1のデータセットを送信することと、ここにおいて、第1のデータセットが、複数のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの1つであり、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、第1のクライアントコンピューティングデバイスによって、第1のデータセットについてのオブジェクトの第1のサブセットと、第1のデータセットについての第1の部分表現とを受信することと、ここにおいて、オブジェクトの第1のサブセットが、複数のデータセットの共有表現を形成することの一部である第1のデータセットのオブジェクトのサブセットであり、共有表現が、1つまたは複数の共有パラメータを有する共有関数によって定義され、第1のデータセットについての部分表現が、オブジェクトの第1のサブセットと、共有表現とに基づく、第1のクライアントコンピューティングデバイスによって、第1のデータセットに対応する予測値の第1のセットを決定することと、ここにおいて、予測値の第1のセットが、第1のデータセットに対応する第1の部分表現と、1つまたは複数の第1の個別パラメータをもつ第1の個別関数とに基づく、第1のクライアントコンピューティングデバイスによって、第1のデータセットについての第1の個別損失関数と、第1のデータセットに対応する予測値の第1のセットと、オブジェクトの第1のサブセットと、第1のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第1のデータセットについての第1の誤差を決定することと、第1のクライアントコンピューティングデバイスによって、第1のデータセットについての1つまたは複数の第1の個別パラメータを更新することと、第1のクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値の第1のセットの改善に対応する第1の部分表現の変化を決定するために使用される、第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、1つまたは複数のフィードバック値を送信することとを備え、ここにおいて、1つまたは複数のフィードバック値が、1つまたは複数のアグリゲートされたフィードバック値を決定するために複数のクライアントコンピューティングデバイスからのオブジェクトのサブセットとともに管理コンピューティングデバイスによって使用可能であり、およびここにおいて、1つまたは複数のアグリゲートされたフィードバック値が、1つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である、方法について説明する。
[0024]上記の態様のうちの1つまたは複数によれば、複数のデータセットに基づく機械学習が行われる。これは、ロバストで信頼できる機械学習モデルが形成され得るように、トレーニングデータを取得するために複数のソースが使用され得ることを暗示する。本態様のうちの少なくともいくつかによる機械学習は、あるソースから別のソースにデータが散逸することなしに、複数のソースからデータセットが提供されることを可能にする。したがって、クライアントコンピューティングデバイスはモデルをトレーニングするためにプライベートデータに関係するデータセットを提供し得るが、機械学習は、機械学習に対するデータセットを同じく提供している競合者など、無認可の当事者にプライベートデータが共有されないようにセットアップされ得る。
[0025]共有表現は、それぞれのクライアントコンピューティングデバイスからの複数のデータセットに基づいて決定される。したがって、データセットについての共有表現が形成され得、この共有表現は、複数のデータセットの各々についてモデルを形成することに寄与し得る。共有表現は、データセット中でオブジェクトと特徴との間の関係を表すために複数のデータセットについて共有される共有関数に基づき得る。したがって、共有関数は、複数のデータセットに基づいて決定され得、ロバストで信頼できる方式で共有関数が決定されることが可能になる。さらに、部分表現が決定されるおかげで、共有表現を形成することへの各データセットの寄与が抽出され得る。したがって、クライアントコンピューティングデバイスは、それぞれのクライアントコンピューティングデバイスによって提供されるデータセットに関係する部分表現のみを受信し得る。これは、クライアントコンピューティングデバイスが、(たとえば、クライアントコンピューティングデバイスのデータセット中に存在しない特徴に関係する)クライアントコンピューティングデバイスによって提供されるデータセットから推論できないオブジェクトと特徴との間の関係のどんな情報も受信しないように、クライアントコンピューティングデバイスが完全な共有表現の情報を受信しないが、クライアントコンピューティングデバイスが、共有関数のロバストなモデルを形成するのに複数のデータセットの使用から恩恵を受け得ることを暗示する。
[0026]したがって、管理コンピューティングデバイスにデータセットを提供するクライアントコンピューティングデバイスは、機密データを他のクライアントコンピューティングデバイスと共有しない。実際には、クライアントコンピューティングデバイスは、データセットが符号化フォーマットで提供され得るように、機密情報からデータセットを剥ぎ取りさえし得る。データセットは、オブジェクトと特徴との間の関係の情報を提供し得るが、管理コンピューティングデバイスは、オブジェクトと特徴とがどんな物理的性質を表すかを知らないことがある。セキュアな機械学習方法から恩恵を受けることを望む会社は、管理コンピューティングデバイスが、オブジェクトと特徴とがどんな物理的性質を表すかを知ることなしに共有表現を決定することを可能にする共通フォーマットをデータセットが有するように、データセットが提供されるフォーマットに関して(秘密の)同意を有し得る。
[0027]したがって、上記で記述されたように、共有表現を決定するための管理コンピューティングデバイスの使用により、クライアントコンピューティングデバイスは、機密データを損なうことなしにデータセットを提供することが可能になる。したがって、機械学習方法の実装は、クライアントコンピューティングデバイスのホストの能力内に極めて十分にあり得るが、データセットは、大きいセットのトレーニングデータから恩恵を受けるために、共有表現を計算するためにクライアントコンピューティングデバイスから管理コンピューティングデバイスに提供され得る。
[0028]しかしながら、いくつかの実施形態では、クライアントコンピューティングデバイスのホストは、機械学習方法を実装するための能力またはリソースを有しないことがあることも了解されたい。したがって、管理コンピューティングデバイスは、オブジェクトと特徴との間の関係を予測するための機械学習モデルを作成する可能性を提供するために使用され得、ここで、クライアントコンピューティングデバイスは、通常ならばそのような予測を行うことが不可能であろう。そのような場合、データの機密性はあまり重要でないことがあり、管理コンピューティングデバイスは、それぞれのデータセットに対応する1つまたは複数の個別パラメータを用いて個別関数を生成するように構成され得る。したがって、管理コンピューティングデバイスは、共有関数の1つまたは複数の共有パラメータを生じ得るだけでなく、それぞれのデータセットに対応する個別関数をも生じ得る。
[0029]たとえば、クライアントコンピューティングデバイスはオンライン店舗に関係し得、ここにおいて、店舗は、機械学習方法に基づいて商品に関する提案をユーザに提供することを希望する。管理コンピューティングデバイスは、したがって、共有関数のロバストな決定を行うために複数のクライアントコンピューティングデバイスのデータセットを使用し得る。しかしながら、クライアントコンピューティングデバイスは、それらのデータセットの情報を完全に共有することを希望するとは限らないことがある。したがって、管理コンピューティングデバイスは、各クライアントコンピューティングデバイスが共有関数を形成することにおいて複数のデータセットから恩恵を受けるように、それぞれのデータセットについて個別関数を生じ得るが、管理コンピューティングデバイスはすべてのデータセットのデータへのアクセスを有するにもかかわらず、それぞれのクライアントコンピューティングデバイスのデータセットの寄与に基づいてそれぞれのクライアントコンピューティングデバイスのために形成される個別関数が依然としてある。
[0030]したがって、上記で記述されたように、管理コンピューティングデバイスによって、1つまたは複数のフィードバック値を収集することは、管理コンピューティングデバイスがクライアントコンピューティングデバイスに情報を送信することと、クライアントコンピューティングデバイスが1つまたは複数のフィードバック値を決定することとによって達成され得る。しかしながら、代替として、1つまたは複数のフィードバック値は、管理コンピューティングデバイスが、それぞれのデータセットの部分表現にそれぞれのデータセットについての個別関数を適用することによって収集され得る。
[0031]一実施形態によれば、各データセットは、複数の次元においてオブジェクトを備え、データセットの各々についての複数の次元のうちの少なくとも1つにおけるオブジェクトは、同じタイプである。これは、管理コンピューティングデバイスが共有表現を形成するためにオブジェクト間の共有関係を容易に決定し得るように、データセットが、対応する情報を備えることを暗示する。しかしながら、共有表現を生じるために管理コンピューティングデバイスによって異なるオブジェクトタイプがなお使用され得ることを了解されたい。いくつかの実施形態では、異なるオブジェクトタイプを使用することは、異なるオブジェクトタイプに対応する値を正規化することを含み得る。
[0032]一実施形態によれば、各データセットの識別子のそれぞれのリストは、各データセットについてのオブジェクトのセットに対応し、ここにおいて、複数のデータセットについての識別子は、共通のシンタックスに従って定義される。これは、管理コンピューティングデバイスが同一のオブジェクトについて同一の識別子を決定し得るように、それぞれのデータセットについての識別子が同じ仕方で決定されることを暗示し得る。これは、識別子の合成リストが形成され得、ここにおいて一意のオブジェクトが容易に識別され得るように、管理コンピューティングデバイスが同一のオブジェクトについて同一の識別子を容易に形成し得ることを保証し得る。管理コンピューティングデバイスは、クライアントコンピューティングデバイスが所望のフォーマットでデータセットを提供することを保証するために、共通シンタックスに関する情報をクライアントコンピューティングデバイスに提供し得る。しかしながら、代替形態によれば、クライアントコンピューティングデバイスは、管理コンピューティングデバイスなしに共通シンタックスに関して同意し得る。これは、クライアントコンピューティングデバイスが、オブジェクトと特徴とがどんな物理的性質を表すかの情報を提供しないフォーマットでデータセットを提供し得るが、クライアントコンピューティングデバイスが、管理コンピューティングデバイスが共有表現を依然として決定することを可能にする共通の方式でデータセットが提供されることを保証し得ることを暗示する。
[0033]クライアントコンピューティングデバイスは、共有パラメータを改善するためのフィードバック値を決定するようにセットアップされ得る。共有表現は複数のデータセットに基づくので、クライアントコンピューティングデバイスの部分表現は、記録値が存在しないオブジェクトについての値を予測し得る。したがって、クライアントコンピューティングデバイスは、予測値がさらなるエントリのために利用可能であり得るが、データセットについての誤差を決定するために記録値のセット中の非空エントリのみを考慮に入れるように構成され得る。
[0034]管理コンピューティングデバイスは、クライアントコンピューティングデバイスが、クライアントコンピューティングデバイスによって提供されるデータに適用されるモデル情報のみを受信することを保証するために、クライアントコンピューティングデバイスに部分表現を送信するように構成され得る。しかしながら、いくつかの実施形態では、データセット中のデータの秘密性が大きく重要でないことがあり、クライアントコンピューティングデバイスがデータを快く共有することがあることを了解されたい。そのような場合、管理コンピューティングデバイスは、部分表現がクライアントコンピューティングデバイスにおいて決定され得るように、および部分表現を決定するためのデータの処理がクライアントコンピューティングデバイスに分散され得るように、共有表現をクライアントコンピューティングデバイスの各々に送信するように構成され得る。これは、特に多数のクライアントコンピューティングデバイスが共有表現のデータセットを提供している場合は、部分表現を決定することが、部分表現を並列に決定し得る複数のクライアントコンピューティングデバイスに分散され得るので、処理の速度が増加され得ることを保証し得る。管理コンピューティングデバイスは、クライアントコンピューティングデバイスがそれぞれの部分表現を決定することを可能にするために、それぞれのクライアントコンピューティングデバイスに、共有表現と、識別子のサブセットと、それぞれのデータセットについての識別子のリストとを送信するように構成され得る。
[0035]このようにして、第15の態様では、本開示では、管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのセットを決定することと、管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのセットのサブセットを決定することと、管理コンピューティングデバイスによって、一意のオブジェクトのセットのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、共有表現と、識別子のサブセットと、それぞれのデータセットについての識別子のリストとを送信することと、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値の各々が、それぞれのデータセットについての記録値のセットと比較された予測値のセットの改善に対応する部分表現の変化として決定される、管理コンピューティングデバイスによって、オブジェクトのサブセットと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することとを備える、機械学習のための方法について説明する。
[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]さらに、図に示されている特定の配置は限定的なものと見なされるべきではない。他の実施形態は、所与の図に示されている各要素のより多いまたはより少ないものを含み得ることを理解されたい。さらに、図示されている要素のうちのいくつかは組み合わされるかまたは省略され得る。同様に、例示的な実施形態は、図に示されていない要素を含み得る。
I.概観
[0086]例示的な実施形態は、セキュアなブローカーによって媒介されるデータ分析および予測に関する。セキュアなブローカーによって媒介されるデータ分析および予測は、ある当事者のプライベートデータを別の当事者に見せることなしに複数の当事者からのプライベートデータを使用して機械学習モデル(たとえば、人工ニューラルネットワーク)を開発するために使用され得る。本明細書で説明される例示的な一実施形態は方法に関係する。
[0087]本方法は、管理コンピューティングデバイス(たとえば、サーバ)が、複数のクライアントコンピューティングデバイスにデータを送信することおよびそれらからデータを受信することを含み得る。データは、機械学習モデルを開発するために、複数のクライアントコンピューティングデバイスに送信され、およびそれらから受信され得る。たとえば、管理コンピューティングデバイスは、複数のクライアントコンピューティングデバイスから複数のデータセットを受信し得る。その後、管理コンピューティングデバイスは、(たとえば、初期パラメータをもつ関数に基づいて)機械学習モデルの初期バージョンを確立するためにこれらのデータセットを使用し得る。
[0088]次いで、管理コンピューティングデバイスは、機械学習モデルの初期バージョンの異なる部分を異なるクライアントコンピューティングデバイスに送信し得る。いくつかの実施形態では、管理コンピューティングデバイスは、モデル全体、ならびにそれぞれのクライアントコンピューティングデバイスのデータセットにどの部分が対応するかの指標をクライアントコンピューティングデバイスに送り得る。その後、それぞれのクライアントコンピューティングデバイスは、モデル全体からモデルの適切な部分を抽出し得る。それぞれのクライアントコンピューティングデバイスに対応する機械学習モデルの一部分を受信/抽出すると、各クライアントコンピューティングデバイスは、それぞれのクライアントコンピューティングデバイス内に記憶されたローカル機械学習モデルを更新し得る。次いで、各クライアントコンピューティングデバイスは、予測を行う(たとえば、予測値または期待値のセットを計算する)ために、更新されたローカル機械学習モデルを使用し得る。
[0089]予測を行うと、それぞれのクライアントコンピューティングデバイスは、予測を、クライアントコンピューティングデバイス内に記憶された記録値のセットと比較し得る。比較に基づいて、クライアントコンピューティングデバイスは、予測に関する1つまたは複数の誤差(したがって、予測がそれに基づく更新されたローカル機械学習モデルに関する1つまたは複数の誤差)を決定し得る。いくつかの実施形態では、そのような誤差は、損失関数を使用して計算され得る。誤差と、それぞれのクライアントコンピューティングデバイスに対応する機械学習モデル全体の部分とに基づいて、クライアントコンピューティングデバイスは、機械学習モデル全体のそれぞれの部分に誤差があることを示す1つまたは複数のフィードバック値を管理コンピューティングデバイスに送信し得る。同様のフィードバックは、1つ、複数、またはすべてのクライアントコンピューティングデバイスによって管理コンピューティングデバイスに提供され得る。
[0090]クライアントコンピューティングデバイスからフィードバックを受信すると、管理コンピューティングデバイスは、次いで、フィードバックに基づいて(たとえば、関数およびパラメータを含む)機械学習モデル全体を更新し得る。そのようなシナリオでは、機械学習モデル全体が改善および/または改良され得る。クライアントコンピューティングデバイスにモデルの部分を送信し、クライアントコンピューティングデバイスに、モデルの部分に基づいて予測を行わせ、予測を評価させ、次いで、クライアントコンピューティングデバイスからフィードバックを受信するという、上記で概説されたステップは、機械学習モデル全体が改善されることがもはや不可能になるまで(たとえば、各クライアントコンピューティングデバイスによって行われる予測が誤差を有しなくなるまで)、または各イタレーション間の改善が改善のしきい値を下回るまで(たとえば、各クライアントコンピューティングデバイスによって行われる予測の誤差が、あるイタレーションから次のイタレーションまで実質的に変化しなくなるまで)、複数のイタレーションにわたって繰り返され得る。
[0091]機械学習モデル全体のトレーニングが完了すると(たとえば、後続のイタレーション間の改善がしきい値を下回ると)、機械学習モデルは、予測または推奨を行うために使用され得る。たとえば、管理コンピューティングデバイスは、将来のイベントに基づいて予測を行うために機械学習モデルを利用し得る。追加または代替として、モデルがトレーニングされると、機械学習モデル全体(またはそれの部分)が、管理コンピューティングデバイスによってクライアントコンピューティングデバイスのうちの1つまたは複数に送信され得る。この時点で、1つまたは複数のクライアントコンピューティングデバイスのうちの少なくとも1つは、予測または推奨を行う(たとえば、機械学習モデルに基づいてそれのユーザのうちの1人に書籍を推奨する)ためにモデルを利用し得る。またさらに、モデルは、機械学習モデルのトレーニングに使用されるデータを提供しなかった1つまたは複数のサードパーティにも送信され得る。そのようなサードパーティは、料金を支払うこと、サブスクリプションサービスに加入すること、広告を閲覧すること、あるいは機械学習モデルを閲覧および/または利用することが可能になる前に確認証明を用いてログインすることを要求され得る。さらに、サードパーティは、それら自体のデータ(たとえば、機械学習モデルのトレーニングにおいて管理コンピューティングデバイスに提供されるデータ以外のデータ)に基づいて予測または推奨を行うために機械学習モデルを利用し得る。
II.例示的なシステム
[0092]以下の説明および添付の図面で、様々な例示的な実施形態の特徴を明らかにする。提供される実施形態は例としてであり、限定的なものとなるものではない。したがって、図面の寸法は必ずしも一定の縮尺であるとは限らない。
[0093]図1は、本明細書で説明される実施形態のうちの1つまたは複数を行うための例示的な通信システム100を示す。通信システム100はコンピューティングデバイスを含み得る。本明細書で説明される「コンピューティングデバイス」は、クライアントデバイス、サーバデバイス(たとえば、スタンドアロンサーバコンピュータまたはサーバ機器のネットワーク化クラスタ)、あるいは何らかの他のタイプの計算プラットフォームのいずれかを指し得る。
[0094]クライアントデバイス102は、本明細書で説明される実施形態に従ってサーバデバイス104にデータ106を送信しおよび/またはそれからデータ108を受信するように構成された、パーソナルコンピュータ、ラップトップコンピュータ、ウェアラブルコンピューティングデバイス、ワイヤレスコンピューティングデバイス、頭部装着可能なコンピューティングデバイス、携帯電話、またはタブレットコンピューティングデバイスなどを含む任意のタイプのデバイスであり得る。たとえば、図1では、クライアントデバイス102は、1つまたは複数のワイヤラインまたはワイヤレスインターフェースを介してサーバデバイス104と通信し得る。いくつかの場合には、クライアントデバイス102とサーバデバイス104は、ローカルエリアネットワークを介して互いに通信し得る。代替的に、クライアントデバイス102とサーバデバイス104は、異なるネットワーク内にそれぞれ存在し得、インターネットなどのワイドエリアネットワークを介して通信し得る。いくつかの実施形態では、クライアントデバイス102は「クライアントコンピューティングデバイス」に対応し得る。さらに、いくつかの実施形態では、通信システム100は複数のクライアントデバイス102を含み得る。追加または代替として、1つまたは複数の「クライアントコンピューティングデバイス」は、クライアントデバイス102よりも、サーバデバイス104により類似するコンピューティング構成要素を含み得る。言い換えれば、いくつかの実施形態では、単一のサーバデバイス104が単一のクライアントデバイス102と通信するのではなく、複数のサーバデバイス104が互いに通信し得る。
[0095]クライアントデバイス102は、ユーザインターフェースと、通信インターフェースと、メインプロセッサと、データストレージ(たとえば、メモリ)とを含み得る。データストレージは、サーバデバイス104に送られるかまたはそれから受信されるデータに関係する1つまたは複数の動作を行うためにメインプロセッサによって実行可能な命令を含んでいることがある。クライアントデバイス102のユーザインターフェースは、ボタン、タッチスクリーン、マイクロフォン、および/または入力を受信するための任意の他の要素、ならびにスピーカー、1つもしくは複数のディスプレイ、および/または出力を通信するための任意の他の要素を含み得る。
[0096]サーバデバイス104は、本明細書で説明されるサーバ動作を行うように配置された任意のエンティティまたはコンピューティングデバイスであり得る。さらに、サーバデバイス104は、クライアントデバイス102にデータ108を送り、および/またはそれからデータ106を受信するように構成され得る。いくつかの実施形態では、サーバデバイス104は、「管理コンピューティングデバイス」(たとえば、「ブローカー」)に対応し得る。追加または代替として、いくつかの実施形態では、サーバデバイス104は、1つまたは複数の「クライアントコンピューティングデバイス」(たとえば、「データ供給者」)に対応し得る。
[0097]データ106およびデータ108は様々な形態をとり得る。たとえば、データ106および108は、1つまたは複数の通信セッションの一部として、それぞれクライアントデバイス102またはサーバデバイス104によって送信されるパケットを表し得る。そのような通信セッションは、シグナリングプレーン上で送信されるパケット(たとえば、セッションセットアップ、管理、およびティアダウンメッセージ)、ならびに/あるいはメディアプレーン上で送信されるパケット(たとえば、テキスト、グラフィックス、オーディオ、および/またはビデオデータ)を含み得る。
[0098]厳密なアーキテクチャに関係なく、クライアントデバイス102、サーバデバイス104の動作、ならびに図1のアーキテクチャに関連する任意の他の動作は、1つまたは複数のコンピューティングデバイスによって行われ得る。これらのコンピューティングデバイスは、スタンドアロン方式で、クラウドベースの(ネットワーク化された)コンピューティング環境で、または他の配置で編成され得る。
[0099]図2は、本明細書の実施形態に従って動作するように配置されたコンピューティングデバイス中に含まれ得る機能構成要素のうちのいくつかを示している、コンピューティングデバイス200を例示する簡略ブロック図である。例示的なコンピューティングデバイス200は、クライアントデバイス、サーバデバイス、または何らかの他のタイプの計算プラットフォームであり得る。説明の目的で、本明細書では、コンピューティングデバイス200をサーバデバイス104および/またはクライアントデバイス102と同等と見なすことが時々ある。とはいえ、コンピューティングデバイス200についての説明は、本明細書で説明される目的のために使用されるどんな構成要素にも適用され得る。
[00100]この例では、コンピューティングデバイス200は、システムバス210または同様の機構によってそれらのすべてが結合され得る、プロセッサ202と、データストレージ204と、ネットワークインターフェース206と、入出力機能208とを含む。プロセッサ202は、1つまたは複数の汎用プロセッサおよび/あるいは1つまたは複数の専用プロセッサ(たとえば、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサなど)など、1つまたは複数のCPUを含むことができる。
[00101]次に、データストレージ204は、揮発性および/または不揮発性データストレージデバイスを含み得、全体的または部分的にプロセッサ202と一体化されることが可能である。データストレージ204は、本明細書で説明される様々な方法、プロセス、または動作を行うために、プロセッサ202によって実行可能なプログラム命令と、そのようなプログラム命令によって操作され得るデータとを保持することができる。代替的に、これらの方法、プロセス、または動作は、ハードウェア、ファームウェア、ならびに/またはハードウェア、ファームウェア、およびソフトウェアの任意の組合せによって定義されることが可能である。例として、データストレージ204中のデータは、本明細書または添付の図面において開示される方法、プロセス、または動作のいずれかを行うためにプロセッサ202によって実行可能な、非一時的コンピュータ可読媒体上に場合によっては記憶されたプログラム命令を含んでいることがある。データストレージ204は、様々な実施形態では、不揮発性メモリ(たとえば、読取り専用メモリ、ROM)および/または揮発性メモリ(たとえば、ランダムアクセスメモリ、RAM)を含み得る。たとえば、データストレージ204は、ハードドライブ(たとえば、ハードディスク)、フラッシュメモリ、ソリッドステートドライブ(SSD)、電気消去可能プログラマブル読取り専用メモリ(EEPROM(登録商標))、ダイナミックランダムアクセスメモリ(DRAM)、および/またはスタティックランダムアクセスメモリ(SRAM)を含み得る。他のタイプの一時的または非一時的データストレージデバイスが可能であり、本開示の範囲内で企図されることが理解されよう。
[00102]ネットワークインターフェース206は、イーサネット(登録商標)、トークンリング、またはTキャリア接続など、ワイヤライン接続の形態をとり得る。ネットワークインターフェース206はまた、IEEE802.11(WiFi(登録商標))、BLUETOOTH(登録商標)、BLUETOOTH LOW ENERGY(BLE)(登録商標)、またはワイドエリアワイヤレス接続など、ワイヤレス接続の形態をとり得る。しかしながら、他の形態の物理層接続と、他のタイプの標準またはプロプライエタリ通信プロトコルとがネットワークインターフェース206上で使用され得る。さらに、ネットワークインターフェース206は複数の物理インターフェースを含み得る。
[00103]入出力機能208は、例示的なコンピューティングデバイス200とのユーザ対話を容易にし得る。入出力機能208は、キーボード、マウス、タッチスクリーンなど、複数のタイプの入力デバイスを備え得る。同様に、入出力機能208は、スクリーン、モニタ、プリンタ、あるいは1つまたは複数の発光ダイオード(LED)など、複数のタイプの出力デバイスを備え得る。追加または代替として、例示的なコンピューティングデバイス200は、ネットワークインターフェース206を介するか、あるいはユニバーサルシリアルバス(USB)または高解像度マルチメディアインターフェース(HDMI(登録商標))ポートなどの別のインターフェース(図示されず)を介した、別のデバイスからのリモートアクセスをサポートし得る。
[00104]いくつかの実施形態では、1つまたは複数のコンピューティングデバイスは、ネットワーク化されたアーキテクチャにおいて展開され得る。コンピューティングデバイスの厳密な物理的ロケーション、接続性、および構成は、クライアントデバイスに知られないおよび/またはそれにとって重要でないことがある。したがって、コンピューティングデバイスは、様々なリモートロケーションに格納され得る「クラウドベース」デバイスと呼ばれることがある。
[00105]図3は、例示的な一実施形態によるクラウドベースサーバクラスタ304を示す。図3では、(コンピューティングデバイス200によって例示される)サーバデバイス104など、サーバデバイスの機能は、ローカルクラスタネットワーク312によってそれらのすべてが接続され得る、サーバデバイス306と、クラスタデータストレージ308と、クラスタルータ310との間で分散され得る。サーバクラスタ304中のサーバデバイスと、クラスタデータストレージと、クラスタルータとの数は、サーバクラスタ304に割り当てられたコンピューティングタスクおよび/またはアプリケーションに依存し得る。
[00106]たとえば、サーバデバイス306は、コンピューティングデバイス200の様々なコンピューティングタスクを実施するように構成されることが可能である。このようにして、コンピューティングタスクは、サーバデバイス306のうちの1つまたは複数の間で分散されることが可能である。これらのコンピューティングタスクが並列に実施されることが可能な程度まで、タスクのそのような分散は、これらのタスクを完了し、結果を返すための合計時間を低減し得る。簡潔さの目的で、サーバクラスタ304と個々のサーバデバイス306の両方が「サーバデバイス」と呼ばれることがある。この名称は、1つまたは複数の別個のサーバデバイスと、データストレージデバイスと、クラスタルータとがサーバデバイス動作に関与し得ることを暗示すると理解されたい。
[00107]クラスタデータストレージ308は、ハードディスクドライブのグループへの読取りおよび書込みアクセスを管理するように構成されたディスクアレイコントローラを含むデータストレージアレイであり得る。ディスクアレイコントローラはまた、単独でまたはサーバデバイス306とともに、サーバデバイス306のうちの1つまたは複数がクラスタデータストレージ308のユニットにアクセスするのを妨げるディスクドライブ障害または他のタイプの障害から保護するために、クラスタデータストレージ308に記憶されたデータのバックアップまたは冗長コピーを管理するように構成され得る。
[00108]クラスタルータ310は、サーバクラスタのために内部および外部通信を行うように構成されたネットワーキング機器を含み得る。たとえば、クラスタルータ310は、(i)クラスタネットワーク312を介したサーバデバイス306とクラスタデータストレージ308との間のネットワーク通信、および/または(ii)ネットワーク300への通信リンク302を介したサーバクラスタ304と他のデバイスとの間のネットワーク通信を行うように構成された1つまたは複数のパケット交換および/またはルーティングデバイスを含み得る。
[00109]さらに、クラスタルータ310の構成は、サーバデバイス306およびクラスタデータストレージ308のデータ通信要件、ローカルクラスタネットワーク312のレイテンシおよびスループット、通信リンク302のレイテンシ、スループット、およびコスト、ならびに/あるいはシステムアーキテクチャのコスト、速度、耐障害性、レジリエンシー、効率および/または他の設計目的に寄与し得る他の要因に少なくとも部分的に基づくことができる。
[00110]可能な例として、クラスタデータストレージ308は、構造化照会言語(SQL)データベースなど、任意の形態のデータベースを含み得る。様々なタイプのデータ構造は、限定はされないが、テーブル、アレイ、リスト、ツリー、およびタプルを含めて、そのようなデータベースに情報を記憶し得る。さらに、クラスタデータストレージ308中のいずれかのデータベースは、モノリシックであるか、または複数の物理デバイスにわたって分散され得る。
[00111]サーバデバイス306は、クラスタデータストレージ308にデータを送信し、それからデータを受信するように構成され得る。この送信および取出しは、それぞれ、SQLクエリまたは他のタイプのデータベースクエリ、およびそのようなクエリの出力の形態をとり得る。追加のテキスト、画像、ビデオ、および/またはオーディオも含められ得る。さらに、サーバデバイス306は、受信データをウェブページ表現に編成し得る。そのような表現は、ハイパーテキストマークアップ言語(HTML)、拡張可能マークアップ言語(XML)、または何らかの他の標準化またはプロプライエタリフォーマットなど、マークアップ言語の形態をとり得る。その上、サーバデバイス306は、限定はされないが、Perl、Python、PHPハイパーテキストプリプロセッサ(PHP)、アクティブサーバページ(ASP)、Java(登録商標)Scriptなど、様々なタイプのコンピュータ化されたスクリプト言語を実行する能力を有し得る。これらの言語で書かれたコンピュータプログラムコードは、クライアントデバイスへのウェブページのプロビジョン、ならびにウェブページとのクライアントデバイス対話を容易にし得る。
[00112]図4Aは、コンピューティングネットワーク401の図である。コンピューティングネットワーク401は、クライアントコンピューティングデバイスA402と、クライアントコンピューティングデバイスB404と、管理コンピューティングデバイス406とを含み得る(いくつかの実施形態では、管理コンピューティングデバイス406は、追加または代替として「ブローカー」と呼ばれることがある)。場合によっては、いくつかの実施形態では、コンピューティングネットワーク401はサードパーティコンピューティングデバイス405をも含み得る。上記で説明されたように、クライアントコンピューティングデバイスA402と、クライアントコンピューティングデバイスB404と、サードパーティコンピューティングデバイス405と、管理コンピューティングデバイス406との各々は、サーバデバイス(たとえば、図1のサーバデバイス104)またはクライアントデバイス(たとえば、図1のクライアントデバイス102)であり得る。たとえば、いくつかの実施形態では、図4Aのすべての構成要素は、互いに通信するサーバデバイスであり得る。他の実施形態では、図4Aのすべての構成要素は、互いに通信するクライアントデバイスであり得る。さらに他の実施形態では、いくつかの構成要素はクライアントデバイスであり得るが、他の構成要素はサーバデバイスである(たとえば、管理コンピューティングデバイス406はサーバデバイスであるが、クライアントコンピューティングデバイスA402と、クライアントコンピューティングデバイスB404と、サードパーティコンピューティングデバイス405とはクライアントデバイスである)。
[00113]図4Aの破線は、コンピューティング構成要素間の通信結合を示す。図示のように、クライアントコンピューティングデバイスA402は、管理コンピューティングデバイス406に通信可能に結合され得る。同様に、クライアントコンピューティングデバイスB402も、管理コンピューティングデバイス406に通信可能に結合され得る。さらに、サードパーティコンピューティングデバイス405を含む実施形態では、点線は、コンピューティング構成要素間の潜在的な通信結合を示す(たとえば、サードパーティコンピューティングデバイス405は、クライアントコンピューティングA402と、クライアントコンピューティングデバイスB404と、管理コンピューティングデバイス406との任意のサブセットに通信可能に結合され得る)。そのような通信結合は、様々な技術を使用して(たとえば、WiFiを介して、BLUETOOTHを介して、公衆インターネットを介して、などで)行われ得る。
[00114]同じく図示のように、クライアントコンピューティングデバイスA402とクライアントコンピューティングデバイスB404は、互いに通信的に分離され得る。このようにして、それぞれのクライアントコンピューティングデバイスと管理コンピューティングデバイス406との間の通信のプライバシーが保持され得る。いくつかの実施形態では、プライバシーを保持するための追加の技術(たとえば、クライアントコンピューティングデバイスと管理コンピューティングデバイス406との間の通信のための秘密鍵/公開鍵暗号化機構)が実装され得る。
[00115]代替実施形態では、クライアントコンピューティングデバイスA402とクライアントコンピューティングデバイスB404が互いに通信可能に結合され得る。これは、クライアントコンピューティングデバイスのデータの一部または全部の、別のクライアントコンピューティングデバイスとの共有を可能にし得る。さらに他の実施形態では、管理コンピューティングデバイス406と通信する任意の数のクライアントコンピューティングデバイス(たとえば、3つ以上のクライアントコンピューティングデバイス)があり得る。たとえば、3つ以上のクライアントコンピューティングデバイスが管理コンピューティングデバイス406にデータを提供し、それからデータを受信し得る。
[00116]例示的な一実施形態では、サードパーティコンピューティングデバイス405は、本明細書の方法400に関して説明されるように機械学習モデル(たとえば、共有表現U)の決定に直接関与する必要はない。そのようなシナリオでは、サードパーティコンピューティングデバイス405は、本明細書で説明されるように、方法400の動作のすべてを行う必要があるとは限らない。むしろ、サードパーティコンピューティングデバイス405は、方法400の他の動作を使用して決定された機械学習モデルに基づく情報の受信者であり得る。
III.例示的なプロセス
[00117]本明細書で説明される様々な実施形態では、いくつかの動作については、管理コンピューティングデバイスおよび/またはクライアントコンピューティングデバイスによって実施されるものとして説明される。単一の管理コンピューティングデバイスによって実施される動作は、(たとえば、計算時間を減少させるために)複数の管理コンピューティングデバイスにわたって拡散され得ることを理解されたい。同様に、単一のクライアントコンピューティングデバイスによって実施される動作は、代わりに、単一のクライアントコンピューティングデバイスの各部分であるコンピューティングデバイスの集合によって実施され得る。なおさらに、複数の動作について、本明細書ではクライアントコンピューティングデバイス(たとえば、クライアントコンピューティングデバイスA402)によって実施されるものとして説明される。また、単一のクライアントコンピューティングデバイス上で実施されるどんな動作も、(たとえば、記録値のそれぞれのデータセット/セットのために)1つまたは複数の他のクライアントコンピューティングデバイス上でミラーリングされ、実施され得ることを理解されたいが、そのようにされることが必要ではない。同様に、いくつかの動作について、本明細書では複数のクライアントコンピューティングデバイスによって実施されるものとして説明されるが、代替実施形態では、ただ1つのクライアントコンピューティングデバイスがそれらの動作を実施し得る(たとえば、いくつかの実施形態では、管理コンピューティングデバイスに1つまたは複数のフィードバック値を送信することが、1つのクライアントコンピューティングデバイスによって実施され得る)ことを理解されたい。なおさらに、いくつかのクライアントコンピューティングデバイスは、記録値の複数のデータセットおよび/または複数のセットを記憶し得、したがって、本明細書で開示される複数のコンピューティングデバイスに対応する行為を実施し得る。またさらに、いくつかの実施形態では、管理コンピューティングデバイスは、(たとえば、対話する当事者/クライアントコンピューティングデバイスによって要求されるプライバシーのレベルに応じて)クライアントコンピューティングデバイスのうちの1つまたは複数と一体化され得る。
[00118]本明細書で説明される方法およびシステムについては、(たとえば、プロセスを簡潔に記述するように変数を表すために)数学的シンタックスを使用して説明されることがある。本明細書で開示される方法およびシステムについて説明するとき、本明細書で使用されるものとは異なる数学的シンタックス、本明細書で使用されるための補助的な数学的シンタックス、またはまったく数学的シンタックスなしを含む、様々な数学的シンタックスが採用され得ることを理解されたい。さらに、採用される数学的シンタックスは、使用される所与の機械学習モデルに基づき得る(たとえば、人工ニューラルネットワークモデルを表すために使用されるシンタックスは、サポートベクトルマシンモデルを表すために使用されるシンタックスとは異なり得る)ことを理解されたい。例として、以下の表に、本開示の方法およびシステムを示すために本明細書で使用される数学的シンタックス(たとえば、図4B〜図15Bに関して使用される数学的シンタックス)を要約する。
[00119]図4Bは、方法400の一部分を示すデータフロー図である。方法400の追加の部分は図4C〜図4Eに示されている。方法400は、共有関数(f)と1つまたは複数の共有パラメータ(β)とに基づいて共有表現(U)を生じるために使用され得る。方法400は、(たとえば、図4Aに示されている)コンピューティングネットワーク401のクライアントコンピューティングデバイスA402と、クライアントコンピューティングデバイスB404と、管理コンピューティングデバイス406とによって行われ得る。図4Aに関して示されているように、代替実施形態では、管理コンピューティングデバイスと通信する任意の数のクライアントコンピューティングデバイスがあり得る。追加のクライアントコンピューティングデバイスは、共有表現(U)を改良するための追加のデータを提供するように働き得る。
[00120]いくつかの実施形態では、図4B〜図4Eに示されている方法400は、(たとえば、図2に示されているデータストレージ204と同様の)非一時的コンピュータ可読媒体に記憶された命令に対応し得る。命令は、方法400の動作を実施するようにプロセッサによって実行可能であり得る。追加または代替として、方法400は、モデルを発生するために使用され得る。モデルは、(たとえば、図2に示されているデータストレージ204と同様の)メモリに記憶され得る。モデルがその上に記憶されたそのようなメモリは、クライアントコンピューティングデバイスA402に対応する当事者(たとえば、個人または会社)、クライアントコンピューティングデバイスB404に対応する当事者(たとえば、個人または会社)、あるいはクライアントコンピューティングデバイスまたは管理コンピューティングデバイス406のいずれにも関係しないサードパーティ(たとえば、個人または会社)に販売またはライセンス供与され得る。同様に、モデル自体(たとえば、モデルに対応するデータの配置)が、関連するメモリなしに1つまたは複数のサードパーティに分散され得る。
[00121]例示的な一実施形態によれば、方法400の動作は、図4B〜図4Eに関して列挙される。しかしながら、図4B〜図4Eにおいて図示および説明される例示的な実施形態の動作についての追加の詳細は、図5A〜図15Bに関して以下で提供される。図4B〜図4Eにおける破線の水平線は、次の図へのまたは前の図からの方法400の継続を示す。
[00122]動作412において、方法400は、クライアントコンピューティングデバイスA402が管理コンピューティングデバイス406にデータセットA(XA)を送信することを含み得る。データセットA(XA)は記録値のセット(YA)に対応し得る。さらに、データセットA(XA)はオブジェクトを含み得る。代替実施形態では、クライアントコンピューティングデバイスA402はまた、(たとえば、データセットA(XA)に加えて)記録値の対応するセット(YA)を管理コンピューティングデバイス406に送信し得る。
[00123]動作414において、方法400は、クライアントコンピューティングデバイスB404が管理コンピューティングデバイス406にデータセットB(XB)を送信することを含み得る。データセットB(XB)は記録値のセット(YB)に対応し得る。さらに、データセットB(XB)はオブジェクトを含み得る。代替実施形態では、クライアントコンピューティングデバイスB404はまた、(たとえば、データセットB(XB)に加えて)記録値の対応するセット(YB)を管理コンピューティングデバイス406に送信し得る。
[00124]動作416において、方法400は、管理コンピューティングデバイス406が、データセットAについての識別子のリスト(MA)と、データセットBについての識別子のリスト(MB)とを決定することを含み得る。
[00125]動作418において、方法400は、管理コンピューティングデバイス406が識別子の複合リスト(たとえば、識別子の「合成」リストを表す、MComb)を決定することを含み得る。識別子の複合リストは、データセットAについての識別子のリスト(MA)とデータセットBについての識別子のリスト(MB)との組合せを含み得る。
[00126]動作420において、方法400は、管理コンピューティングデバイス406が、データセットA(XA)とデータセットB(XB)とからの一意のオブジェクトのリスト(たとえば、データセットからのオブジェクトの「合成」リストを表す、XComb)を決定することを含み得る。
[00127]動作422において、方法400は、管理コンピューティングデバイス406が識別子の複合リスト(MComb)から識別子のサブセット(S)を選択することを含み得る。
[00128]動作424において、方法400は、管理コンピューティングデバイス406が、識別子のサブセット(S)中の各識別子に対応する一意のオブジェクトのリストのサブセット(Z)を決定することを含み得る。
[00129]図4Cは、方法400の一部分を示すデータフロー図である。方法400の追加の動作が図4Cに示されている。
[00130]動作426において、方法400は、管理コンピューティングデバイス406が、一意のオブジェクトのリスト(XComb)のサブセット(Z)と、1つまたは複数の共有パラメータ(β)を有する共有関数(f)とに基づいて、データセット(XA/XB)の共有表現(U)を計算することを含み得る。
[00131]動作428において、方法400は、管理コンピューティングデバイス406が、各クライアントコンピューティングデバイスのそれぞれのデータセット(XA/XB)についてオブジェクトのサブリスト(SA/SB)を決定することを含み得る。オブジェクトのサブリスト(SA/SB)は、それぞれのデータセット(XA/XB)についての識別子のリスト(MA/MB)との識別子のサブセット(S)の共通部分に基づき得る。
[00132]動作430において、方法400は、管理コンピューティングデバイス406が、それぞれのデータセット(XA/XB)についてのオブジェクトのサブリスト(SA/SB)と、共有表現(U)とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセット(XA/XB)についての部分表現(UA/UB)を決定することを含み得る。
[00133]動作432において、方法400は、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスA402に、データセットA(XA)についてのオブジェクトのサブリスト(SA)と、データセットA(XA)についての部分表現(UA)とを送信することを含み得る。
[00134]動作434において、方法400は、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスB404に、データセットB(XB)についてのオブジェクトのサブリスト(SB)と、データセットB(XB)についての部分表現(UB)とを送信することを含み得る。いくつかの実施形態では、動作434はまた、動作432の前に、または動作432と実質的に同時に起こり得ることを理解されたい。
[00135]代替実施形態では、動作428、430、432、および434の代わりに、管理コンピューティングデバイス406は、クライアントコンピューティングデバイスA402に、共有表現(U)と、識別子のサブセット(S)と、データセットA(XA)についての識別子のリスト(MA)とを送信し、クライアントコンピューティングデバイスB404に、共有表現(U)と、識別子のサブセット(S)と、データセットB(XB)についての識別子のリスト(MB)とを送信し得る。次いで、各それぞれのクライアントコンピューティングデバイスは、それ自体のために、それのそれぞれのデータセット(XA/XB)についてオブジェクトの対応するサブリスト(SA/SB)を決定し得る。データセットA(XA)についてのオブジェクトのサブリスト(SA)は、データセットA(XA)についての識別子のリスト(MA)との識別子のサブセット(S)の共通部分に基づき得る。データセットB(XB)についてのオブジェクトのサブリスト(SB)は、データセットB(XB)についての識別子のリスト(MB)との識別子のサブセット(SB)の共通部分に基づき得る。さらに、各それぞれのクライアントコンピューティングデバイスは、それ自体のために、それのそれぞれのデータセット(XA/XB)についての部分表現(UA/UB)を決定し得る。データセットA(XA)についての部分表現(UA)は、オブジェクトのサブリスト(SA)と、共有表現(U)とに基づき得る。データセットB(XB)についての部分表現(UB)は、オブジェクトのサブリスト(SB)と、共有表現(U)とに基づき得る。
[00136]図4Dは、方法400の一部分を示すデータフロー図である。方法400の追加の動作が図4Dに示されている。
[00137]動作436Aにおいて、方法400は、クライアントコンピューティングデバイスA402が、データセットA(XA)に対応する予測値のセット
を決定することを含み得る。予測値のセットは、データセットA(XA)に対応する部分表現(UA)と、1つまたは複数の個別パラメータ(γA)をもつ個別関数(gA)とに基づき得る。
[00138]動作436Bにおいて、方法400は、クライアントコンピューティングデバイスB404が、データセットB(XB)に対応する予測値のセット
を決定することを含み得る。予測値のセットは、データセットB(XB)に対応する部分表現(UB)と、1つまたは複数の個別パラメータ(γB)をもつ個別関数(gB)とに基づき得る。
[00139]動作438Aにおいて、方法400は、クライアントコンピューティングデバイスA402がデータセットA(XA)についての誤差(EA)を決定することを含み得る。誤差(EA)は、データセットA(XA)についての個別損失関数(LA)と、データセットA(XA)に対応する予測値のセット
と、オブジェクトのサブリスト(SA)と、データセットA(XA)に対応する記録値のセット(YA)中の非空エントリ(WA)とに基づき得る。
[00140]動作438Bにおいて、方法400は、クライアントコンピューティングデバイスB404がデータセットB(XB)についての誤差(EB)を決定することを含み得る。誤差(EB)は、データセットB(XB)についての個別損失関数(LB)と、データセットB(XB)に対応する予測値のセット
と、オブジェクトのサブリスト(SB)と、データセットB(XB)に対応する記録値のセット(YB)中の非空エントリ(WB)とに基づき得る。
[00141]動作440Aにおいて、方法400は、クライアントコンピューティングデバイスA402が、データセットA(XA)についての1つまたは複数の個別パラメータ(γA)を更新することを含み得る。
[00142]動作440Bにおいて、方法400は、クライアントコンピューティングデバイスB404が、データセットB(XB)についての1つまたは複数の個別パラメータ(γB)を更新することを含み得る。
[00143]動作442Aにおいて、方法400は、クライアントコンピューティングデバイスA402が1つまたは複数のフィードバック値(CA)を決定することを含み得る。1つまたは複数のフィードバック値(CA)は、予測値のセット
の改善に対応する部分表現(UA)の変化を決定するために使用され得る。
[00144]動作442Bにおいて、方法400は、クライアントコンピューティングデバイスB404が1つまたは複数のフィードバック値(CB)を決定することを含み得る。1つまたは複数のフィードバック値(CB)は、予測値のセット
の改善に対応する部分表現(UB)の変化を決定するために使用され得る。
[00145]動作444において、方法400は、クライアントコンピューティングデバイスA402が管理コンピューティングデバイス406に1つまたは複数のフィードバック値(CA)を送信することを含み得る。
[00146]動作446において、方法400は、クライアントコンピューティングデバイスB404が管理コンピューティングデバイス406に1つまたは複数のフィードバック値(CB)を送信することを含み得る。いくつかの実施形態では、動作444は、動作446の後に、または動作446と実質的に同時に行われ得る。
[00147]いくつかの実施形態(たとえば、3つ以上のデータセットおよび/または3つ以上のクライアントコンピューティングデバイスを含む実施形態)では、クライアントコンピューティングデバイスのサブセットのみが、管理コンピューティングデバイス406に1つまたは複数のフィードバック値(たとえば、CA/CB)を送信し得る。そのような実施形態では、管理コンピューティングデバイス406は、すべてのクライアントコンピューティングデバイスからの1つまたは複数のフィードバック値のすべての可能なセットではなく、提供された1つまたは複数のフィードバック値のみに基づいて、1つまたは複数の共有パラメータ(β)を更新し得る。代替的に、クライアントコンピューティングデバイスのサブセットのみが管理コンピューティングデバイス406に1つまたは複数のフィードバック値を送信する実施形態では、管理コンピューティングデバイス406は、1つまたは複数のフィードバック値を提供しなかったクライアントコンピューティングデバイスに、それぞれのクライアントコンピューティングデバイスからの1つまたは複数のフィードバック値について要求を送信し得る。
[00148]図4Eは、方法400の一部分を示すデータフロー図である。方法400の追加の動作が図4Eに示されている。
[00149]動作448において、方法400は、管理コンピューティングデバイス406が、1つまたは複数のアグリゲートされたフィードバック値(CComb)を決定することを含み得る。1つまたは複数のアグリゲートされたフィードバック値(CComb)は、それぞれ、データセットA(XA)およびデータセットB(XB)に対応するオブジェクトのサブリスト(SA/SB)と、それぞれ、クライアントコンピューティングデバイスA402およびクライアントコンピューティングデバイスB404からの1つまたは複数のフィードバック値(CA/CB)とに基づき得る。
[00150]動作450において、方法500は、管理コンピューティングデバイス406が、1つまたは複数のアグリゲートされたフィードバック値(CComb)に基づいて1つまたは複数の共有パラメータ(β)を更新することを含み得る。いくつかの実施形態(たとえば、1つまたは複数のアグリゲートされたフィードバック値(CComb)が逆伝搬誤差に対応する実施形態)では、1つまたは複数の共有パラメータ(β)は、勾配降下法に従って更新され得る。
[00151]いくつかの実施形態では、図4B〜図4Eに示されている方法は追加の動作を含み得る。そのような追加の動作は、図4B〜図4Eに示されている動作の前に、それの後に、またはそれと同時に行われ得る。さらに、以下の追加の動作が、様々な実施形態において様々な順序および組合せで行われ得る。
[00152]たとえば、図4Fに示されているように、いくつかの代替実施形態では、動作462および動作466において、方法400は、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスの各々に共有表現(U)、共有関数(f)および/あるいは1つまたは複数の共有パラメータ(β)を送信することを場合によっては含み得る。代替的に、いくつかの実施形態では、本方法は、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスのサブセットに共有関数(f)および/あるいは1つまたは複数の共有パラメータ(β)を送信することを含み得る。そのようなサブセットは、それぞれのクライアントコンピューティングデバイスが(たとえば、機械学習モデルサブスクリプションサービスのための)料金を支払ったか、アクセス証明(たとえば、ユーザ名およびパスワード)を入力したか、または所与のグループ(たとえば、管理特権をもつグループ)のメンバーであるかどうかに基づいて、管理コンピューティングデバイス406によって選定され得る。同じく図4Fに示されているように、動作464において、方法400は、クライアントコンピューティングデバイスA402が、データセット(たとえば、データセットA(XA)または代替データセット)に対応する予測値の追加のセットを決定するために共有表現(U)、共有関数(f)、および/あるいは1つまたは複数の共有パラメータ(β)を使用することを場合によっては含み得る。同様に、動作468において、方法400は、クライアントコンピューティングデバイスB404が、データセット(たとえば、データセットB(XB)または代替データセット)に対応する予測値の追加のセットを決定するために共有表現(U)、共有関数(f)、および/あるいは1つまたは複数の共有パラメータ(β)を使用することを場合によっては含み得る。
[00153]場合によっては(たとえば、サードパーティコンピューティングデバイス405を含む実施形態では)、図4Fに示されているように、動作472において、方法400はまた、管理コンピューティングデバイス406が、サードパーティコンピューティングデバイス405に共有表現(U)、共有関数(f)、および/あるいは1つまたは複数の共有パラメータ(β)を送信することを含み得る。同様に、動作474において、方法400は、サードパーティコンピューティングデバイス405が、データセットに対応する予測値の追加のセットを決定するために共有表現(U)、共有関数(f)、および/あるいは1つまたは複数の共有パラメータ(β)を使用することをさらに含み得る。さらに他の実施形態では、サードパーティコンピューティングデバイス405は、管理コンピューティングデバイス406からではなく、クライアントコンピューティングデバイス(たとえば、クライアントコンピューティングデバイスA402および/またはクライアントコンピューティングデバイスB404)のうちの1つまたは複数から、共有表現(U)、共有関数(f)、および/あるいは1つまたは複数の共有パラメータ(β)を受信し得る。
[00154]また他の実施形態では、本方法は、管理コンピューティングデバイス406が、クライアントコンピューティングデバイス402/404および/またはサードパーティコンピューティングデバイス405に、共有関数(f)の一部分のみおよび/あるいは1つまたは複数の共有パラメータ(β)の一部分のみを送信することを含み得る。クライアントコンピューティングデバイス402/404またはサードパーティコンピューティングデバイス405によって受信される部分は異なり得る。たとえば、各クライアントコンピューティングデバイスは、クライアントコンピューティングデバイスによって供給されるデータセット(XA/XB)に従って生じた共有表現(U)の部分に対応する1つまたは複数の共有パラメータ(β)の部分のみを受信し得る。
[00155]追加または代替として、本方法は、管理コンピューティングデバイス406がデータセット(XA/XB)の最終共有表現(UFinal)を計算することを含み得る。そのような最終共有表現(UFinal)は、一意のオブジェクトのリスト(XComb)と、共有関数(f)と、1つまたは複数の共有パラメータ(β)とに基づき得る。さらに、本方法は、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスA402および/またはクライアントコンピューティングデバイスB404にデータセット(XA/XB)の最終共有表現(UFinal)を送信することを含み得る。共有表現(UFinal)は、クライアントコンピューティングデバイスのそれぞれのデータセット(XA/XB)に対応する予測値の最終セット
を決定するために各クライアントコンピューティングデバイス(またはクライアントコンピューティングデバイスのサブセット)によって使用可能であり得る。予測値の最終セット
を決定することは、それぞれのクライアントコンピューティングデバイスが、それぞれのデータセット(XA/XB)についての識別子のリスト(MA/MB)に基づいてそれぞれのデータセット(XA/XB)についての最終部分表現(UFinal_A/UFinal_B)を決定することを含み得る。予測値の最終セット
を決定することはまた、それぞれのクライアントコンピューティングデバイスが、最終部分表現(UFinal_A/UFinal_B)と、個別関数(gA/gB)と、それぞれのデータセット(XA/XB)に対応する1つまたは複数の個別パラメータ(γA/γB)とに基づいて、それぞれのデータセット(XA/XB)に対応する予測値の最終セット
を決定することを含み得る。いくつかの実施形態では、予測値の最終セット
は、クライアントコンピューティングデバイスのうちの少なくとも1つによって表示され得る。いくつかの実施形態では、予測値の最終セット
は、それぞれのクライアントコンピューティングデバイスに対応するデータセット(XA/XB)中のオブジェクトに関して1つまたは複数の予測を行うためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用され得る。
[00156]いくつかの実施形態では、機械学習モデルをさらに改良するために複数の動作が1回または複数回繰り返され得る。たとえば、機械学習モデルを改良するために、動作422、424、426、428、430、432、434、436A、436B、438A、438B、440A、440B、442A、442B、444、446、448、および450が1回または複数回繰り返され得る。これらの動作が繰り返されるとき、それらは、各決定/選択動作が、(たとえば、場合によっては前のイタレーションにおける選択とは異なる)データの追加のサブセットを決定/選択することを含むように繰り返され得る。
[00157]いくつかの実施形態では、本方法はまた、管理コンピューティングデバイス406が、管理コンピューティングデバイス406のメモリ(たとえば、図2に示されているデータストレージ204)から、一意のオブジェクトのリスト(XComb)と、共有表現(U)と、各データセット(XA/XB)についての識別子のリスト(MA/MB)と、識別子の複合リスト(MComb)とを削除(「パージ」)することを含み得る。いくつかの実施形態では、管理コンピューティングデバイス406から上記のデータを削除することは、対応するクラウドストレージデバイスから、および/または管理コンピューティングデバイスのデータを記憶するために使用される複数のサーバからデータを削除することを含み得る。そのようなデータの削除は、機械学習モデルが生じた後に、管理コンピューティングデバイスが不特定の時間量の間、データへのアクセスを有するのを防止し得る。
[00158]図5Aは、(たとえば、図4B〜図4Eに関して説明された)データセットA(XA)と、記録値の対応するセット(YA)との図である。データセットA(XA)と、記録値の対応するセット(YA)とは、クライアントコンピューティングデバイスA402に対応し得る。いくつかの実施形態では、データセットA(XA)は、クライアントコンピューティングデバイスA402の1次メモリストレージ(たとえば、内部ハードドライブ)に記憶され得、記録値の対応するセット(YA)は、クライアントコンピューティングデバイスA402の2次メモリストレージ(たとえば、外部ハードドライブ)に記憶され得る。
[00159]図示のように、データセットA(XA)は、第1の次元において4つのオブジェクト(たとえば、「ティミー」、「ジョニー」、「サリー」、および「スー」)を含む。これらのオブジェクトは、たとえば、クライアントコンピューティングデバイスA402によって実行されるかまたはクライアントコンピューティングデバイスA402に関連する(たとえば、データベースを含む)オンライン書籍レーティングおよびムービーレーティングプラットフォームのユーザプロファイルに対応し得る。そのようなユーザプロファイルは、ユーザプロファイルに関連する彼らのプロファイル名、彼らのユーザ識別情報(ID)番号、ハッシュコード、社会保障番号、またはインターネットプロトコル(IP)アドレスによって識別され得る。ユーザプロファイルを識別する他の方法も可能である。
[00160]データセットA(XA)の第2の次元には、4つのオブジェクトの各々に対応する7つの特徴(たとえば、「書籍タイトル1」、「書籍タイトル2」、「書籍タイトル3」、「書籍タイトル4」、「書籍タイトル5」、「書籍タイトル6」、および「書籍タイトル7」)があり得る。そのような特徴は、代替的に、たとえば、それらの10桁もしくは13桁の国際標準図書番号(ISBN)によって、または書籍レーティングおよびムービーレーティングプラットフォームからの対応するユニファイドリソースロケータ(URL)によって識別され得る。
[00161](オブジェクト、特徴)の各ペアに対応するエントリは、(たとえば、0〜100にわたる)レーティング値に対応し得る。たとえば、ユーザ「サリー」は、「書籍タイトル4」に「17」のレーティングを格付けしていることがある。これらのエントリは、それらがすべて同じ範囲を有するようにスケーリングされ得る(たとえば、レーティングのうちのいくつかは、当初は0〜10の間で出され、次いで、それらが0〜100にわたり、他のレーティング値に対して正規化されることを保証するようにスケーリングされていることがある)。
[00162]代替実施形態では、他のタイプのオブジェクトおよび/または特徴がデータセットA(XA)内で使用され得る。さらに、他の実施形態では、他の数のオブジェクトおよび/または特徴が使用され得る。さらに、いくつかの実施形態では、他のタイプのデータエントリが使用され得る。追加または代替として、いくつかの実施形態では、データセットA(XA)のために3以上の次元(d)があり得る。
[00163]図示のように、記録値の対応するセット(YA)は、第1の次元において、データセットA(XA)中の4つのオブジェクトと同じ4つのオブジェクト(たとえば、「ティミー」、「ジョニー」、「サリー」、および「スー」)を含む。上記の場合と同様に、これらのオブジェクトは、たとえば、クライアントコンピューティングデバイスA402によって実行されるかまたはクライアントコンピューティングデバイスA402に関連するオンライン書籍レーティングおよびムービーレーティングプラットフォームのユーザプロファイルに対応し得る。この場合も、そのようなユーザプロファイルは、ユーザプロファイルに関連する彼らのプロファイル名、彼らのユーザID番号、ハッシュコード、社会保障番号、またはIPアドレスによって識別され得る。ユーザプロファイルを識別する他の方法も可能である。
[00164]記録値の対応するセット(YA)の第2の次元には、4つのオブジェクトの各々に対応する5つの特徴(たとえば、「ムービータイトル1」、「ムービータイトル2」、「ムービータイトル3」、「ムービータイトル4」、および「ムービータイトル5」)があり得る。そのような特徴は、代替的に、それらのバーコード、または書籍レーティングおよびムービーレーティングプラットフォームからの対応するURLによって識別され得る。
[00165]記録値の対応するセット(YA)中の(オブジェクト、特徴)の各ペアに対応するエントリは、(たとえば、0〜100にわたるレーティング)レーティング値に対応し得る。たとえば、オブジェクト「ジョニー」は、特徴「ムービータイトル2」に「18」の値を格付けしていることがある。これらのエントリは、それらがすべて同じ範囲を有するようにスケーリングされ得る(たとえば、レーティングのうちのいくつかは、当初は0〜10の間で出され、次いで、それらが0〜100にわたり、他のレーティング値に対して正規化されることを保証するようにスケーリングされていることがある)。
[00166]代替実施形態では、他のタイプのオブジェクトおよび/または特徴が、記録値の対応するセット(YA)内で使用され得る。さらに、他の実施形態では、他の数のオブジェクトおよび/または特徴が使用され得る。さらに、いくつかの実施形態では、他のタイプのデータエントリが使用され得る。追加または代替として、いくつかの実施形態では、記録値の対応するセット(YA)のために3以上の次元(d)があり得る。記録値の対応するセット(YA)中の次元数(d)は、データセットA(XA)中の次元数(d)と同じであり得る。データセットと、記録値の対応するセットとの代替実施形態については、さらに図16A〜図16Cに関して図示および説明される。
[00167]図5Bは、(たとえば、図4B〜図4Eに関して説明された)データセットB(XB)と、記録値の対応するセット(YB)との図である。データセットB(XB)と、記録値の対応するセット(YB)とは、クライアントコンピューティングデバイスB404に対応し得る。データセットB(XB)と、記録値の対応するセット(YB)とは、データセットA(XA)と、記録値のそれの対応するセット(YA)との書籍レーティングおよびムービーレーティングプラットフォームとは別個の(たとえば、データベースを含む)書籍レーティングおよびムービーレーティングプラットフォームに対応し得る。図5Bに示されているように、データセットB(XB)中のオブジェクトは、データセットA(XA)中のオブジェクトと同じでないことがある。いくつかの実施形態では、図示のように、データセットB(XB)とデータセットA(XA)との間にオブジェクトの何らかの重複があり得る。さらに他の実施形態では、データセット(XA/XB)中のオブジェクトは完全に同じであり得る。なおさらなる実施形態では、データセット(XA/XB)中のオブジェクトは完全に互いに素であり得る。また図示のように、データセットB(XB)中のオブジェクトの数は、データセットA(XA)中のオブジェクトの数と同じでないことがある。
[00168]図示のように、データセットB(XB)と、記録値の対応するセット(YB)との追加の次元における特徴の数は、データセットA(XA)と、記録値のそれの対応するセット(YA)との追加の次元における特徴の数と同じであり得る。図示のように、データセットB(XB)の追加の次元において7つの特徴(たとえば、「書籍タイトル1」、「書籍タイトル2」、「書籍タイトル3」、「書籍タイトル4」、「書籍タイトル5」、「書籍タイトル6」、および「書籍タイトル7」)がある。図示のように、これらの特徴は、図5Aに示されているデータセットA(XA)の特徴と同じである。
[00169]またさらに、記録値の対応するセット(YB)中の特徴の数は、記録値の対応するセット(YA)中の特徴の数とは異なり得る。図示のように、記録値の対応するセット(YB)の追加の次元において9つの特徴(たとえば、「ムービータイトル1」、「ムービータイトル3」、「ムービータイトル4」、「ムービータイトル5」、「ムービータイトル6」、「ムービータイトル7」、「ムービータイトル8」、「ムービータイトル9」、および「ムービータイトル10」)がある。図示のように、これらの特徴のうちのいくつかは、図5Aに示されている記録値の対応するセット(YA)の特徴と同じである。代替実施形態では、特徴のすべてが、記録値の対応するセットの特徴と重複するか、または特徴のいずれも、記録値の対応するセットの特徴と重複しない。
[00170]さらに、いくつかの実施形態では、図5BのデータセットB(XB)と、記録値の対応するセット(YB)とにおける次元数(d)は、図5AのデータセットA(XA)と、記録値の対応するセット(YA)とにおける次元数(d)と同じでないことがある。いくつかの実施形態では、複数のデータセット(たとえば、XA/XB)の各々は、等しい次元数(d)を含み得る。様々な実施形態では、次元数(d)は、2、3、4、5、6、7、8、9、10、16、32、64、128、256、512、または1024であり得る。他の次元数(d)も可能である。いくつかの実施形態では、複数のデータセットの各々はテンソルによって表され得る。さらに、いくつかの実施形態では、複数のデータセットのうちの少なくとも1つはスパーステンソルによって表され得る。様々な実施形態では、テンソルは、テンソルのスパーシティが50%超、60%超、70%超、75%超、80%超、90%超、95%超、98%超、99%超、99.9%超、99.99%超、99.999%超、または99.9999%超である場合、「スパース」テンソルであり得る。図5A/5Bに示されている実施形態では、データセット(XA/XB)の両方がテンソル(たとえば、2次元テンソル、すなわち、「行列」)によって表される。
[00171]追加または代替として、いくつかの実施形態では、記録値の対応するセットのうちの少なくとも1つはテンソルによって表され得る。さらに、いくつかの実施形態では、記録値の対応するセットのうちの少なくとも1つはスパーステンソルによって表され得る。図5A/5Bに示されている実施形態では、記録値の対応するセット(YA/YB)の両方がテンソル(たとえば、2次元テンソル、すなわち、「行列」)によって表される。
[00172]いくつかの実施形態では、データセットと、記録値の対応するセットとの3つ以上のペアがあり得る。データセットと、記録値のセットとの追加のペアは、クライアントコンピューティングデバイスA402またはクライアントコンピューティングデバイスB404によって送信されおよび/またはそれら内に記憶され得る。追加または代替として、データセットと、記録値のセットとの追加のペアは、追加のクライアントコンピューティングデバイス(たとえば、図4Aに示されていないクライアントコンピューティングデバイス)によって送信されおよび/またはそれの内に記憶され得る。追加または代替として、いくつかの実施形態では、データセット(たとえば、XA/XB)の一部または全部は、記録値のそれらの対応するセット(たとえば、YA/YB)とは別個のクライアントコンピューティングデバイス上に記憶されおよび/またはそれの上で送信され得る。2つの別個のクライアントコンピューティングデバイスが、データセット(たとえば、XA)と、記録値の対応するセット(YA)とを記憶および/または送信する場合、それらの別個のクライアントコンピューティングデバイスは、単一のクライアント(たとえば、会社)によって制御および/または所有され得る。代替的に、それらの別個のクライアントコンピューティングデバイスは、別個のクライアントによって制御および/または所有され得る。またさらに、それらの別個のクライアントコンピューティングデバイスが別個のクライアントによって制御および/または所有される実施形態では、それらの別個のクライアントは、(たとえば、プライバシーの理由で)互いに通信しないことがあり、管理コンピューティングデバイス406は、個々に両方を受信すると、データセットA(XA)を記録値の対応するセット(YA)に最終的に関連付けることを任される。これは、管理コンピューティングデバイス406が、データセットA(XA)が記録値のセット(YA)に対応することを識別することができるように、別個のクライアントコンピューティングデバイスの各々によってデータセットA(XA)と記録値の対応するセット(YA)とに付属したメタデータ(たとえば、タグ)を使用して行われ得る。
[00173]様々な実施形態では、データセットと、記録値の対応するセットとによって表されるデータは変動し得る。たとえば、方法400は様々な適用例において使用され得、各適用例は、データセット内に記憶されたデータの異なるセットと、記録値の異なる対応するセットとに潜在的に対応する。これについては、さらに図16A〜図16Cに関して説明および図示される。
[00174]図6Aおよび図6Bは、図4B〜図4Eに示されている方法400の動作416を示す。図4Bに関して説明されたように、動作416において、方法400は、管理コンピューティングデバイスが、データセットA(XA)についての識別子のリスト(MA)と、データセットB(XB)についての識別子のリスト(MB)とを決定することを含み得る。図6Aに示されているように、データセット(XA)のオブジェクトが、データセット(XA)についての識別子のリスト(MA)に変換されている。識別子のリスト(MA)は、管理コンピューティングデバイス406によってデータセット(XA)中の各オブジェクトに割り当てられた一意のID(たとえば、ストリング、ハッシュコード、または整数)に対応し得る。識別子のリスト(MA)中の一意のIDは、データセットA(XA)中のオブジェクトがデータセットB(XB)中のオブジェクトと有意味に比較され得るように生成され得る。したがって、図6Bに示されているように、データセットB(XB)のオブジェクトは、データセットB(XB)についての識別子のリスト(MB)に変換されている。識別子のリスト(MB)も、管理コンピューティングデバイス406によってデータセットB(XB)中の各オブジェクトに割り当てられた一意のID(たとえば、ストリング、ハッシュコード、または整数)に対応し得る。図示のように、いくつかの実施形態では、データセットA(XA)とデータセットB(XB)の両方において同じであるオブジェクトは、同じ識別子を割り当てられ得る(たとえば、識別子MA/MBの両方のリストにおいて、「ティミー」は「ユーザ00」を割り当てられ、「ジョニー」は「ユーザ01」を割り当てられる)。
[00175]管理コンピューティングデバイス406によって、各データセットについての識別子のそれぞれのリスト(XA/XB)を決定することは、様々な実施形態において様々な動作を含み得る。いくつかの実施形態では、識別子のリスト(MA/MB)は、それぞれのクライアントコンピューティングデバイス(コンピューティングデバイスA402/コンピューティングデバイスB404)によって管理コンピューティングデバイス406に提供され得る。他の実施形態では、管理コンピューティングデバイス406は、管理コンピューティングデバイス406のアルゴリズムに基づいて一意のIDを定義し得る。さらに他の実施形態では、管理コンピューティングデバイスによって、識別子のリスト(MA/MB)を決定することは、オブジェクトの商業的に入手可能な識別子(たとえば、書籍のISBNまたは患者の社会保障番号)を受信することを含み得る。オブジェクトのそのような商業的に入手可能な識別子は、サードパーティによって管理コンピューティングデバイス406に提供され得る(たとえば、ドメイン名レジストラが、ドメイン名に対応するオブジェクトに、対応するIPアドレスを提供し得る)。識別子のリスト(MA/MB)中の一意のIDを定義するために使用される技法に関係なく、一意のIDは、各一意のIDが共通シンタックスに従って定義されるように定義され得、それにより、識別子の複合リスト(MComb)の作成が可能になる。
[00176]図7は、図4B〜図4Eに示されている方法400の動作418を示す。図4Bに関して説明されたように、動作418において、方法400は、管理コンピューティングデバイス406が識別子(MComb)の複合リストを決定することを含み得る。図7に示されているように、データセットA(XA)についての識別子のリスト(MA)と、データセットB(MB)についての識別子のリスト(MB)とは、すべての識別子のリストを形成するために組み合わされ(たとえば、連結され)得る。すべての識別子のこのリストは、繰り返される(すなわち、「冗長な」)識別子(たとえば、図7の例示的な実施形態では「ユーザ00」および「ユーザ01」)が削除させられ得る。冗長な識別子を削除すると、識別子の複合リスト(MComb)が残り得る。識別子の複合リスト(MComb)は、管理コンピューティングデバイス406によって受信されたすべてのデータセット(XA/XB)に対応するすべての繰り返されない識別子を含み得る。
[00177]図8は、図4B〜図4Eに示されている方法400の動作420を示す。図4Bに関して説明されたように、動作420において、方法400は、管理コンピューティングデバイス406が、データセットA(XA)とデータセットB(XB)とから一意のオブジェクトのリスト(XComb)を決定することを含み得る。図8に示されているように、一意のオブジェクトのリスト(XComb)を決定することは、すべてのデータセットからのデータを単一のリスト(たとえば、単一のテンソル)に組み合わせることを含み得る。データは、識別子の複合リスト(MComb)に基づいて組み合わされ得る。たとえば、「ユーザ00」は、データセットA(XA)とデータセットB(XB)の両方の中のオブジェクトであることがある。したがって、図8に示されているように、データセットA(XA)とデータセットB(XB)とからのデータは、一意のオブジェクトのリスト(XComb)中の単一のオブジェクト(「ユーザ00」)のデータに組み合わされる。いくつかの実施形態では、異なるスケールが使用された場合(たとえば、データセットA(XA)が0から10にわたるレーティングを有し、データセットB(XB)が0から100のレーティングスケーリングを有する場合)、各データセット中のオブジェクトの値は、それらを一意のオブジェクトのリスト(XComb)に入力する前に正規化され得る。
[00178]いくつかの実施形態では、2つ以上のデータセットが、同じオブジェクトを含む(たとえば、図8の「ティミー」はデータセットA(XA)およびデータセットB(XB)中にある)が、同じオブジェクトの同じ特徴について競合するデータを有し得る。たとえば、「ティミー」が、データセットA(XA)中で「書籍タイトル5」に「84」のレーティングを提供したが、データセットB(XB)中で「60」のレーティングを提供した場合、これは競合を生じ得る。いくつかの実施形態では、そのような競合は、同じ特徴について厳密に同じデータを有する(たとえば、オブジェクトの特徴のすべてについて同じデータを有するか、または所与のオブジェクトが少しでもデータを有する場合にオブジェクトの特徴について同じデータを有する)オブジェクトのみが、共通の識別子を割り当てられるような仕方で識別子を割り当てることによって、解決され得る。この段落における例を使用すると、データセットA(XA)中の「ティミー」オブジェクトと、データセットB(XB)中の「ティミー」オブジェクトは、それらがあらゆる特徴について同じデータを共有しない場合(たとえば、データセットA(XA)からの「ティミー」オブジェクトは識別子「ユーザ00」を割り当てられ得るが、データセットB(XB)からの「ティミー」オブジェクトは識別子「ユーザ05」を割り当てられ得る場合)、異なる識別子を割り当てられ得る。そのような技法を使用して、本明細書で説明されるような、競合による機械学習モデルへの悪影響が防止され得る。
[00179]いくつかの実施形態では、動作420は動作418の前に実施され得る。たとえば、識別子の複合リスト(MComb)を作成するより前に、データセットA(XA)からのオブジェクトと、データセットB(XB)からのオブジェクトと、3つ以上のデータセットを有する実施形態では任意の他のデータセットとが組み合わされ得る。組み合わされると、オブジェクトの合成セット中の繰り返される(すなわち、「重複」)オブジェクトが削除され、それにより、一意のオブジェクトのリスト(XComb)が形成され得る。繰り返されるオブジェクトは、複数のデータセット(XA/XB)の各々についての識別子のリスト(MA/MB)の共通部分に基づいて削除され得る。次いで、一意のオブジェクトのリストに基づいて、識別子の複合リスト(MComb)が生成され得る。
[00180]図9は、図4B〜図4Eに示されている方法400の動作422を示す。図4Bに関して説明されたように、動作422において、方法400は、管理コンピューティングデバイス406が識別子の複合リスト(MComb)から識別子のサブセット(S)を選択することを含み得る。識別子のサブセット(S)は、様々な方法を使用して選択され得る。たとえば、識別子のサブセット(S)は、(たとえば、ハードウェア乱数生成器などの乱数生成器を使用して)ランダムにまたは(たとえば、シード値とともに擬似乱数生成器を使用して)擬似ランダムに選択され得る。いくつかの実施形態では、識別子のサブセット(S)は、メルセンヌツイスタ擬似乱数生成器に基づいて選択され得る。追加または代替として、識別子のサブセット(S)中の各識別子は、管理コンピューティングデバイス406のみに知られているアルゴリズムに従って選択され得る。他の実施形態では、識別子のサブセット(S)中の各識別子は、公的に入手可能なアルゴリズム(たとえば、管理コンピューティングデバイス406によって公開され、複数のクライアントコンピューティングデバイス402/404のうちの1つまたは複数に送信されるアルゴリズム)に従って選択され得る。
[00181]図10は、図4B〜図4Eに示されている方法400の動作424を示す。図4Bに関して説明されたように、動作424において、方法400は、管理コンピューティングデバイス406が、識別子のサブセット(S)中の各識別子に対応する一意のオブジェクトのリスト(XComb)のサブセット(Z)を決定することを含み得る。サブセット(Z)を決定することは、管理コンピューティングデバイス406が、一意のオブジェクトのリスト(XComb)を取り出し、次いで、一意のオブジェクトのリスト(XComb)に基づいてオブジェクトの新しいリストを作成することを含み得る。管理コンピューティングデバイス406は、次いで、オブジェクトの新しいリストから、対応する識別子が識別子のサブセット(S)内に含まれていないオブジェクトを削除し、それにより、一意のオブジェクトのリスト(XComb)のサブセット(Z)を作成し得る。代替的に、サブセット(Z)を決定することは、管理コンピューティングデバイス406が識別子のサブセット(S)を取り出すことを含み得る。次いで、識別子のサブセット(S)に基づいて、管理コンピューティングデバイス406は、識別子のサブセット(S)中の各識別子のために、識別子のサブセット(S)中の識別子に対応する一意のオブジェクトのリスト(XComb)からのオブジェクトを追加することによって、新しいリストをアセンブルし得る。
[00182]図11は、図4B〜図4Eに示されている方法400の動作426を示す。図4Cに関して説明されたように、動作426において、方法400は、管理コンピューティングデバイス406が、一意のオブジェクトのリスト(XComb)のサブセット(Z)と、1つまたは複数の共有パラメータ(β)を有する共有関数(f)とに基づいて、データセット(XA/XB)の共有表現(U)を計算することを含み得る。いくつかの実施形態(たとえば、機械学習モデルが人工ニューラルネットワークである実施形態)では、1つまたは複数の共有パラメータ(β)は、重みテンソル
などの共有パラメータテンソル(たとえば、共有パラメータ行列)に対応し得る。
[00183]図11、図13A、図13B、図14A、および図14B(ならびに結果的に方法400の動作426、430、436A、および436B)は、一例として、機械学習の人工ニューラルネットワークモデルを使用して示されている(たとえば、共有関数(f)は、修正線形ユニット(ReLU)非線形性およびドロップアウトを有する人工ニューラルネットワークを含み得る)。このモデルは例として提供されるにすぎず、本開示の範囲から他の機械学習モデル(または、たとえば、統計的手法に基づく、非機械学習モデルさえ)を排除するように意図されていないことを理解されたい。教師あり学習モデル、教師なし学習モデル、および半教師あり学習モデル(たとえば、判別分析)を含む、他の機械学習モデルが方法400とともに使用され得る。たとえば、決定ツリー学習、相関ルール学習、深層学習、帰納論理プログラミング、サポートベクトルマシン、関連ベクトルマシン、クラスタリング、ベイジアンネットワーク、強化学習、表現学習、類似性および距離学習、スパース辞書学習、遺伝的アルゴリズム、ルールベース機械学習、学習分類子システム、深層信念ネットワーク、リカレントニューラルネットワーク、または上述の技法の様々な組合せは、すべて本明細書において暗黙的に企図される。行列分解に基づく方法400とともに使用するための機械学習の代替タイプについては、図17Aおよび図17Bに関して明示的に図示および説明される。
[00184]図11に示されているように、人工ニューラルネットワークの例示的な場合には、データセット(XA/XB)の共有表現(U)を計算することは、一意のオブジェクトのリスト(XComb)中のオブジェクトの特徴の各々を第1レベルニューロン1102に相関させることを含み得る。特徴の各々をそれぞれの第1レベルニューロン1102に相関させた後に、第1レベルニューロン1102は中間レベルニューロン1104(すなわち、中間ニューロン)に接続され得る。図11では図の混乱を防ぐために、1つの第1レベルニューロン1102と、1つの中間レベルニューロン1104とのみがラベリングされている。図11の破線は、第1レベルニューロン1102層と中間レベルニューロン1104層との間に追加のニューロン層(たとえば、隠れニューロン層)が存在し得る可能性を示すように意図されている。
[00185]第1レベルニューロン1102を中間レベルニューロン1104に接続することは、中間レベルニューロン1104への入力として第1レベルニューロン1102を使用することを含み得る。中間レベルニューロン1104への入力として第1レベルニューロン1102を使用することは、1つまたは複数の共有パラメータ(β)(すなわち、1つまたは複数の「重み」)によって各第1レベルニューロン1102の値を乗算することを含み得る。これらの1つまたは複数の共有パラメータ(β)は、テンソル(たとえば、2次元の例では「重み行列」)として記憶され得る。たとえば、図11では、中間レベルニューロン1は、重みテンソル(たとえば、1つまたは複数の共有パラメータ(β)を表す行列)中の第1のエントリ(たとえば、「重み」)によって乗算された「書籍タイトル1」第1レベルニューロンの値+重みテンソル中の第2のエントリによって乗算された「書籍タイトル2」第1ニューロンの値+重みテンソル中の第3のエントリによって乗算された「書籍タイトル3」第1ニューロンの値などに対応する値を有し得る。このプロセスは、完全な共有表現(U)に達するために、一意のオブジェクトのリスト(XComb)のサブセット(Z)中の各オブジェクトについて繰り返され得る。数学的に表されると、完全な共有表現(U)のこの定義は、
に対応し得、ここで、
は、一意のオブジェクトのリスト(XComb)のサブセット(Z)中の各オブジェクトについての第1レベルニューロン1102の各々についての入力値を表すテンソル(たとえば、行列)であり、
は、共有関数(f)を定義する(たとえば、どのように中間レベルニューロン1104の値が第1レベルニューロン1102の値に依存するかを定義する)1つまたは複数の共有パラメータ(β)を表す重みテンソルであり、
は、中間レベルニューロン1104の各々についての出力値を表すテンソル(たとえば、行列)である。上記に示されたように、共有表現(U)は、共有関数(f)と、サブセット(Z)中のオブジェクトとによって定義され得る(たとえば、U:=f(Z;β))。図示のように、共有関数(f)は、人工ニューラルネットワークモデルの1つまたは複数の第1の層に対応し得る。
[00186]図11の例では、
は、4×7行列(サブセット(Z)中の4つのオブジェクトの各々について7つの値)であり得、
は、(どのように4つの中間レベルニューロン1104が7つの第1レベルニューロン1102にそれぞれ依存するかを示す)7×4行列であり得、
は、4×4行列(サブセット(Z)中の4つのオブジェクトの各々について4つの値)であり得る。
は、あらゆるオブジェクト(「ユーザ」)が、管理コンピューティングデバイス406によって受信されたデータセット(XA/XB)中の各特徴(「書籍タイトル」)に値(「レーティング」)を提供しているとは限らないので、スパース行列であり得る。言い換えれば、クライアントコンピューティングデバイス402/404によって提供されるデータセット(XA/XB)が完全でないことがあるので、
も不完全である(たとえば、値なしのエントリを有する)ことがある。結果的に、上記の行列乗算に基づいて、たとえば、
もスパース行列であり得る。
[00187]いくつかの実施形態では、共有表現(U)を計算するより前に、共有関数(f)と、(たとえば、人工ニューラルネットワーク実施形態において「重み」テンソル内に記憶された)1つまたは複数の共有パラメータ(β)とは、管理コンピューティングデバイス406によって初期化され得る。たとえば、共有関数(f)と、1つまたは複数の共有パラメータ(β)とは、同様の関係をモデル化するために使用される関係する共有関数に基づいて初期化され得る(たとえば、共有関数(f)が、所与の保険に入っている個人の危険因子と、その個人に生命保険を提供するための所与の保険料との間の関係をモデル化するために使用されている場合、共有関数(f)と、1つまたは複数の共有パラメータ(β)とは、所与の保険に入っている個人の危険因子と、その個人に健康保険を提供するための所与の保険料との間の関係をモデル化するために開発された以前のモデルに基づいて設定され得る)。関係する共有関数に基づいて、共有関数(f)と、1つまたは複数の共有パラメータ(β)とを初期化することは、共有関数(f)と、1つまたは複数の共有パラメータ(β)とを、関係する共有関数と、関係する共有関数のための1つまたは複数の共有パラメータとに等しく設定することを含み得る。代替的に、関係する共有関数に基づいて、共有関数(f)と、1つまたは複数の共有パラメータ(β)とを初期化することは、関係する共有関数と、関係する共有関数のための1つまたは複数の共有パラメータとをスケーリングおよび/または正規化し、次いで、共有関数(f)と、1つまたは複数の共有パラメータ(β)とのための初期値として、スケーリングおよび/または正規化された値を使用することを含み得る。
[00188]代替実施形態では、管理コンピューティングデバイス406が、共有関数(f)、または1つあるいは複数の共有パラメータ(β)とを初期化することは、管理コンピューティングデバイス406が、クライアントコンピューティングデバイス(たとえば、コンピューティングデバイスA402あるいはコンピューティングデバイスB404)のうちの1つから、1つあるいは複数の共有パラメータ(β)の初期値を受信することを含み得る。管理コンピューティングデバイス406は、受信された初期値に基づいて、共有関数(f)と、1つまたは複数の共有パラメータ(β)とを初期化し得る。1つまたは複数の共有パラメータ(β)の初期値は、1つまたは複数の公開モデル(たとえば、公的に入手可能な機械学習モデル)に基づいて、それぞれのクライアントコンピューティングデバイス(たとえば、クライアントコンピューティングデバイスA402またはクライアントコンピューティングデバイスB404)によって決定され得る。
[00189]さらに他の実施形態では、管理コンピューティングデバイス406は、乱数生成器または擬似乱数生成器(たとえば、メルセンヌツイスタ擬似乱数生成器)に基づいて、共有関数(f)と、1つまたは複数の共有パラメータ(β)とを初期化し得る。たとえば、管理コンピューティングデバイス406は、人工ニューラルネットワークの対応する重みテンソル内の1つまたは複数の共有パラメータ(β)の各々についてランダム値を選択し得る。また他の実施形態では、管理コンピューティングデバイス406は、1つまたは複数の共有パラメータが、1つまたは複数の共有パラメータ(β)についてのすべての可能な値の中間点にそれぞれあるように、共有関数(f)と、1つまたは複数の共有パラメータ(β)とを初期化し得る。たとえば、1つまたは複数の共有パラメータ(β)が重みテンソルを表す(および1つまたは複数の共有パラメータ(β)の各パラメータが重みを表す)場合、1つまたは複数の共有パラメータ(β)のすべての値は、管理コンピューティングデバイス406によって0.5(0.0と1.0との間の中間点)に初期化され得る。
[00190]図12Aおよび図12Bは、方法400の動作428の図である。図4Cに関して説明されたように、動作428において、方法400は、クライアントコンピューティングデバイスA402が、データセットA(XA)についてオブジェクトのサブリスト(SA)を決定することを含み得る。オブジェクトのサブリスト(SA)は、識別子のサブセット(S)と、データセットA(XA)についての識別子のリスト(MA)との共通部分に基づき得る。同様に、動作428において、方法400は、クライアントコンピューティングデバイスB404が、データセットB(XB)についてオブジェクトのサブリスト(SB)を決定することを含み得る。オブジェクトのサブリスト(SB)は、識別子のサブセット(S)と、データセットB(XB)についての識別子のリスト(MB)との共通部分に基づき得る。
[00191]図13Aおよび図13Bは、それぞれ、図4B〜図4Eに示されている方法400の動作430を示す。図4Cに関して説明されたように、動作430において、方法400は、管理コンピューティングデバイス406が、データセットA(XA)について部分表現(UA)を決定することを含み得る。部分表現(UA)は、オブジェクトのサブリスト(SA)と、共有表現(U)とに基づき得る。同様に図4Cに関して説明されたように、動作430において、方法400は、管理コンピューティングデバイス406が、データセットB(XB)について部分表現(UB)を決定することを含み得る。部分表現(UB)は、オブジェクトのサブリスト(SB)と、共有表現(U)とに基づき得る。図13Aおよび図13Bでは、図を混乱させるのを回避するために、中間レベルニューロン1104のうちの1つと、第1レベルニューロン1102のうちの1つとのみがラベリングされている。
[00192]図13Aでは、オブジェクトのサブリスト(SA)に対応する共有表現(U)の成分のみが部分表現(UA)中に含まれ得る。たとえば、部分表現(UA)は、オブジェクトのサブリスト(SA)中に含まれないオブジェクトに関して行われた計算に基づくデータを含まないことがある。
である上記の行列に戻ると、
の第4の行が「ユーザ04」(オブジェクトのサブリスト(SA)中に存在しないオブジェクト)に対応する場合、
の対応する第4の行は、「ユーザ04」がオブジェクトのサブリスト(SA)中に含まれないので、部分表現(UA)中に存在しないことがある。したがって、1つまたは複数の共有パラメータ(β)は、一意のオブジェクトのリスト(XComb)のサブセット(Z)内のオブジェクトの各々に適用され得るが、オブジェクトのそれぞれのサブリスト(SA)中に含まれるオブジェクトに対応する部分表現(UA)の値のみが、それぞれの部分表現(UA)中に含まれ得る。いくつかの実施形態(たとえば、人工ニューラルネットワーク実施形態)では、上記で説明されたように、これは、部分表現(UA)中に存在する
のいくつかの行のみに対応し得る。
[00193]同様に図13Bでは、オブジェクトのサブリスト(SB)に対応する共有表現(U)の成分のみが部分表現(UB)中に含まれ得る。たとえば、部分表現(UB)は、オブジェクトのサブリスト(SB)中に含まれないオブジェクトに関して行われた計算に基づくデータを含まないことがある。
である上記の行列に戻ると、
の第3の行が「ユーザ03」(オブジェクトのサブリスト(SB)中に存在しないオブジェクト)に対応する場合、
の対応する第3の行は、「ユーザ03」がオブジェクトのサブリスト(SB)中に含まれないので、部分表現(UB)中に存在しないことがある。したがって、1つまたは複数の共有パラメータ(β)は、一意のオブジェクトのリスト(XComb)のサブセット(Z)内のオブジェクトの各々に適用され得るが、オブジェクトのそれぞれのサブリスト(SB)中に含まれるオブジェクトに対応する部分表現(UB)の値のみが、それぞれの部分表現(UB)中に含まれ得る。いくつかの実施形態(たとえば、人工ニューラルネットワーク実施形態)では、上記で説明されたように、これは、部分表現(UB)中に存在する
のいくつかの行のみに対応し得る。
[00194]いくつかの実施形態では、図4Cに関して説明されたように、データセット(XA/XB)についてオブジェクトのサブリスト(SA/SB)と、部分表現(UA/UB)とを決定した後に、(たとえば、方法400の動作432および434において)管理コンピューティングデバイス406は、それぞれのクライアントコンピューティングデバイス(クライアントコンピューティングデバイスA402/クライアントコンピューティングデバイスB404)に、それぞれのデータセット(XA/XB)についてのオブジェクトのサブリスト(SA/SB)と、部分表現(UA/UB)とを送信し得る。
[00195]図14Aおよび図14Bは、それぞれ、図4B〜図4Eに示されている方法400の動作436Aおよび436Bの部分を示す。図4Dに関して説明されたように、動作436Aにおいて、方法400は、クライアントコンピューティングデバイスA402が、データセットA(XA)に対応する予測値のセット
を決定することを含み得る。予測値のセットは、データセットA(XA)に対応する部分表現(UA)と、1つまたは複数の個別パラメータ(γA)をもつ個別関数(gA)とに基づき得る。同様に図4Dに関して説明されたように、動作436Bにおいて、方法400は、クライアントコンピューティングデバイスB404が、データセットB(XB)に対応する予測値のセット
を決定することを含み得る。予測値のセットは、データセットB(XB)に対応する部分表現(UB)と、1つまたは複数の個別パラメータ(γB)をもつ個別関数(gB)とに基づき得る。
[00196]人工ニューラルネットワークモデルを採用する例示的な実施形態では、予測値のセット
は、図14Aおよび図14Bに示されているように、オブジェクトのそれぞれのサブリスト(SA/SB)中の各オブジェクトについての各上位レベルニューロン1402の出力値のセットに対応し得る。図5Aおよび図5Bに示されている例示的なデータセット(XA/XB)と、記録値の対応するセット(YA/YB)とを使用して、予測値のセット
は、「ムービータイトル1」と、「ムービータイトル2」と、「ムービータイトル3」と、「ムービータイトル4」と、「ムービータイトル5」とのレーティングに対応し得る。同じく図示のように、予測値のこれらのセット
は、データセット(XA/XB)に対応するそれぞれの1つまたは複数の個別パラメータ(γA/γB)によって乗算された(1つまたは複数の共有パラメータによって乗算された第1レベルニューロン1102にそれら自体が基づく)中間レベルニューロン1104の値に基づいて決定され得る。これらの個別パラメータは、たとえば、重みテンソル(たとえば、重み行列)
に記憶され得る。代替実施形態では、(たとえば、人工ニューラルネットワーク以外の)異なる機械学習モデルが使用される場合、1つまたは複数の個別パラメータ(γA/γB)は、機械学習モデルの他のパラメータ(たとえば、重みテンソル以外のパラメータ)に対応し得る。図11、図13A、および図13Bにおけるように、破線は、いくつかの実施形態では、図示された人工ニューラルネットワークの層の間に追加の隠れ層(たとえば、1、2、3、4、5、6、7、8、9、10、15、16、20、32、または、64個の隠れ層)があり得ることを示す。
[00197]図14Aおよび図14Bでは、それぞれの図の一部分のみが個別関数(gA/gB)を表している。個別関数(gA/gB)を表す部分は、上位レベルニューロン1402に接続された中間レベルニューロン1104である。中間レベルニューロン1104と第1レベルニューロン1102との間の接続、ならびに第1レベルニューロン1102自体は、それぞれの個別関数(gA/gB)にコンテキストを提供するためにのみ示されている。たとえば、それぞれの個別関数(gA/gB)は各々、共有表現(U)全体ではなく、部分表現(UA/UB)のみに作用する。上記の場合と同様に、図を混乱させるのを回避するために、単一の第1レベルニューロン1102と、単一の中間レベルニューロン1104と、単一の上位レベルニューロン1402とのみがラベリングされている。
[00198]下付き文字「i」を使用する、以下で説明される変数は、対応するデータセットを指すことを意図される。たとえば、下付き文字「i」は、データセットA(XA)に対応する何らかの変数を指すときは「A」と交換され得、データセットB(XB)に対応する何らかの変数を指すときは「B」と交換され得る。したがって、所与のデータセットに対応する個別関数(gi)は、適切な場合、変数名と交換され得る(gi→gA/gB)。同様の交換は、所与のデータセットの部分表現(Ui→UA/UB)と、所与のデータセットのための個別パラメータ(γi→γA/γB)とについて使用され得る。
[00199]上記で説明されたように、共有表現(U)は、共有関数(f)と、サブセット(Z)中のオブジェクトとによって定義され得る(たとえば、U:=f(Z;β))。さらに、共有関数(f)は、図11、図13A、および図13Bに示されているように、人工ニューラルネットワークモデルの1つまたは複数の層に対応し得る。共有表現(U)の定義と同様に、個別表現(IA/IB)が、それぞれ、各クライアントコンピューティングデバイス(クライアントコンピューティングデバイスA402/クライアントコンピューティングデバイスB)によって各データセット(XA/XB)について生成され得る。個別表現(IA/IB)は共有表現(U)と同様に定義され得る。数学的に表されると、所与のデータセットに対応する個別関数(gi)と、所与のデータセットについての部分表現(Ui)と、所与のデータセットのための1つまたは複数の個別パラメータ(γi)とに基づく、個別表現(Ii)のこの定義は、
に対応し得、ここで、
は、所与のデータセット(Ui)についてそれぞれの部分表現から取られた中間レベルニューロン1104の各々についての入力値を表すテンソル(たとえば、行列)であり、
は、所与のデータセットについての個別関数(gi)を定義する(たとえば、どのように上位レベルニューロン1402の値が中間レベルニューロン1104の値に依存するかを定義する)所与のデータセットのための1つまたは複数の個別パラメータ(γi)を表す重みテンソルであり、
は、上位レベルニューロン1402の各々についての出力値を表すテンソル(たとえば、行列)である。上記に示されたように、個別表現(Ii)は、所与のデータセットについての個別関数(gi)と、部分表現(Ui)とによって定義され得る(たとえば、I:=gi(Ui;γi))。図示のように、各個別関数(gi)は、人工ニューラルネットワークモデルの1つまたは複数の第2の層の少なくとも一部分に対応し得る。上記で説明された共有関数(f)に対応する1つまたは複数の第1の層のうちの少なくとも1つは、個別関数(gi)に対応する1つまたは複数の第2の層のうちの少なくとも1つへの入力層であり得る。
[00200]図14Aの例では、
は、3×4行列(オブジェクトのサブリスト(SA)中の3つのオブジェクトの各々について4つの中間レベルニューロン1104値)であり得、
は、(どのように5つの上位レベルニューロン1402が4つの中間レベルニューロン1104にそれぞれ依存するかを示す)4×5行列であり得、
は、3×5行列(オブジェクトのサブリスト(SA)中の3つのオブジェクトの各々について5つの上位レベルニューロン1402値)であり得る。
は、あらゆるオブジェクト(「ユーザ」)が、管理コンピューティングデバイス406によって受信されたデータセット(XA)中の各特徴(「書籍タイトル」)に値(「レーティング」)を提供しているとは限らないので、スパース行列であり得る。言い換えれば、クライアントコンピューティングデバイスA402によって提供されるデータセット(XA)が完全でないことがあるので、
は、上記で説明されたように、不完全/スパースである(たとえば、値なしのエントリを有する)ことがある。結果的に、上記で説明された行列乗算の2つの層に基づいて、たとえば、
もスパース行列であり得る。
[00201]図14Bの例では、
も、3×4行列(オブジェクトのサブリスト(SB)中の3つのオブジェクトの各々について4つの中間レベルニューロン1104値)であり得、
は、(どのように9つの上位レベルニューロン1402が4つの中間レベルニューロン1104にそれぞれ依存するかを示す)3×4行列であり得、
は、3×9行列(オブジェクトのサブリスト(SB)中の3つのオブジェクトの各々について9つの上位レベルニューロン1402値)であり得る。
は、あらゆるオブジェクト(「ユーザ」)が、管理コンピューティングデバイス406によって受信されたデータセット(XB)中の各特徴(「書籍タイトル」)に値(「レーティング」)を提供しているとは限らないので、スパース行列であり得る。言い換えれば、クライアントコンピューティングデバイスB404によって提供されるデータセット(XB)が完全でないことがあるので、
は、上記で説明されたように、不完全/スパースである(たとえば、値なしのエントリを有する)ことがある。結果的に、上記で説明された行列乗算の2つの層に基づいて、たとえば、
もスパース行列であり得る。
[00202]いくつかの実施形態では、個別表現(I)を計算するより前に、個別関数(gi)と、(たとえば、人工ニューラルネットワーク実施形態において「重み」テンソル内に記憶された)1つまたは複数の個別パラメータ(γi)とは、それぞれのクライアントコンピューティングデバイスによって初期化され得る。それぞれのクライアントコンピューティングデバイスは、乱数生成器または擬似乱数生成器(たとえば、メルセンヌツイスタ擬似乱数生成器)に基づいて、それぞれのデータセット(XA/XB)に対応する個別関数(gi)と、1つまたは複数の個別パラメータ(γi)とを初期化し得る。
[00203]図15Aおよび図15Bは、それぞれ、図4B〜図4Eに示されている方法400の動作438Aおよび438Bの部分を示す。図4Dに関して説明されたように、動作438Aにおいて、方法400は、クライアントコンピューティングデバイスA402がデータセットA(XA)についての誤差(EA)を決定することを含み得る。誤差(EA)は、データセットA(XA)についての個別損失関数(LA)と、データセットA(XA)に対応する予測値のセット
と、オブジェクトのサブリスト(SA)と、データセットA(XA)に対応する記録値のセット(YA)中の非空エントリ(WA)とに基づき得る。同様に図4Dに関して説明されたように、動作438Bにおいて、方法400は、クライアントコンピューティングデバイスB404がデータセットB(XB)についての誤差(EB)を決定することを含み得る。誤差(EB)は、データセットB(XB)についての個別損失関数(LB)と、データセットB(XB)に対応する予測値のセット
と、オブジェクトのサブリスト(SB)と、データセットB(XB)に対応する記録値のセット(YB)中の非空エントリ(WB)とに基づき得る。
[00204]図15Aおよび図15Bに表されているデータを生成するために、予測値1504のセット
は、各データセット(XA/XB)に対応する記録値1502のセット(YA/YB)と比較される。図5Aおよび図5Bに示されている例示的なデータセット(XA/XB)と、記録値1502の対応するセット(YA/YB)とを使用して、予測値1504のセット
は、推定されるムービーレーティングに対応し、記録値1502のセット(YA/YB)は、実際のムービーレーティングに対応する。図15Aでは、「ユーザ00」についての記録値1502のセット(YA)(たとえば、記録値1502のセット(YA)に対応する行列の第1の行)が、「ユーザ00」についての予測値1504のセット
(たとえば、予測値1504のセット
に対応する行列の第1の行)と比較される。図15Bでは、「ユーザ04」についての記録値1502のセット(YB)(たとえば、記録値1502のセット(YB)に対応する行列の第3の行)が、「ユーザ04」についての予測値1504のセット
(たとえば、予測値1504のセット
に対応する行列の第3の行)と比較される。
[00205]両方のデータセットについて、記録値1502のセット(YA/YB)と、予測値1504のセット
とが、例として図15Aおよび図15Bに示されている。オブジェクトのそれぞれのサブリスト(SA/SB)中の他のオブジェクトのために、記録値1502のセット(YA/YB)と、予測値1504のセット
とについて、同様のプロットが作られ得る。たとえば、データセットA(XA)に対応するオブジェクトのサブリスト(SA)からの「ユーザ01」および「ユーザ03」もプロットされ得る。対応する記録値1502(たとえば、「ユーザ00」についての「ムービータイトル2」)がない、いくつかの特徴(たとえば、図5Aおよび図5Bからの例示的なデータセット(XA/XB)と、記録値の例示的なセット(YA/YB)とを使用する「ムービータイトル」)がある。したがって、これらの特徴について、図15Aおよび図15Bに示されている対応する記録値1502(たとえば、「実際のムービーレーティング」(YA/YB))はない。
[00206]予測値1504のセット
は、記録値1502のセット(YA/YB)と同様に、テンソル(たとえば、行列)として記憶され得る。予測値1504のセット
は、次いで、それぞれのデータセット(XA/XB)の誤差を計算するために記録値1502のセット(YA/YB)と比較され得る。誤差(EA/EB)は、個別損失関数(LA/LB)に従って計算され得る。たとえば、各データセット(XA/XB)に対応する誤差(EA/EB)は、記録値1502のセット(YA/YB)を表すテンソル中の各非0エントリ(WA/WB)において評価される個別損失関数(LA/LB)の和であり得る。図15Aに示されているように、所与のエントリについて評価される個別損失関数(LA/LB)は、そのエントリの予測値1504と、そのエントリの記録値1502との間の差1506に基づき得る。図を混乱させるのを回避するために、図15Aと図15Bとの各々にはただ1つの差1506がラベリングされている。数学的に、データセットA(XA)に対応する誤差(EA)は、
によって表され得る。
[00207]上記の式は、データセットA(XA)に対応する誤差(EA)が、データセットA(XA)についての記録値のセット(YA)に対応するオブジェクトのサブリスト(SA)中の各オブジェクトの各非空エントリ(WA)について、予測値のセット
中のエントリと、記録値のセット(YA)中のエントリとの間で評価される、個別損失関数(LA)の和に等しいことを表す。上記の和における加数は「部分誤差値」と呼ばれることがある。データセットB(XB)についての数学的表現は、必要な変更を加えて、データセットA(XA)についての数学的表現に類似する。
[00208]いくつかの実施形態では、個別損失関数(LA/LB)は、2次損失関数、対数損失関数、ヒンジ損失関数、分位損失関数、またはコックス比例ハザードモデルに関連する損失関数のうちの少なくとも1つを含み得る。さらに、いくつかの実施形態では、異なるクライアントコンピューティングデバイスは、「共有損失関数」と呼ばれる、同じ個別損失関数を使用し得る(たとえば、各クライアントコンピューティングデバイスによって使用される個別損失関数は管理コンピューティングデバイス406によって規定され得る)。たとえば、クライアントコンピューティングデバイスA402とクライアントコンピューティングデバイスB404の両方が、それぞれの個別損失関数(LA/LB)のために2次損失関数を使用し得る(たとえば、LA(j,k)=(j−k)2)。代替実施形態では、異なるデータセット(XA/XB)に対応する個別損失関数(LA/LB)は異なり得る。しかしながら、そのような実施形態では、データセット(XA/XB)のそれぞれのクライアントコンピューティングデバイスによって生成されるいくつかの結果(たとえば、誤差(EA/EB))は、異なる個別損失関数(LA/LB)が使用されたとしても結果が互いに有意味に比較されることが可能になるように、管理コンピューティングデバイス406への送信の前または後に正規化され得る。いくつかのそのような実施形態では、クライアントコンピューティングデバイスによって使用される特定の個別損失関数(LA/LB)に関する、および/または記録値の対応するセット(YA/YB)に関する情報が管理コンピューティングデバイス406に送信され得る。使用される特定の個別損失関数(LA/LB)に関する、および/または記録値の対応するセット(YA/YB)に関する情報は、正規化を実施するために管理コンピューティングデバイス406によって使用され得る。
[00209]いくつかの実施形態では、図4Dに関して図示および説明されたように、方法400はまた、1つまたは複数の個別パラメータ(γA/γB)を更新することを含み得る。たとえば、動作440Aにおいて、方法400は、クライアントコンピューティングデバイスA402が、データセットA(XA)についての1つまたは複数の個別パラメータ(γA)を更新することを含み得る。同様に、動作440Bにおいて、方法400は、クライアントコンピューティングデバイスB404が、データセットB(XB)についての1つまたは複数の個別パラメータ(γB)を更新することを含み得る。1つまたは複数の個別パラメータ(γA/γB)を更新することは、計算されたそれぞれの誤差(EA/EB)に関して勾配降下を実施することを含み得る。追加または代替として(たとえば、採用される機械学習モデルが人工ニューラルネットワークであるとき)、1つまたは複数の個別パラメータ(γA/γB)を更新することは、重みテンソル(たとえば、重み行列)
に基づいてそれぞれの誤差(EA/EB)を逆伝搬することを含み得る。逆伝搬誤差(EA/EB)に基づいて、それぞれの1つまたは複数の個別パラメータ(γA/γB)が更新され得、それにより、予測値のそれぞれのセット
への改善がもたらされ得る。
[00210]それぞれの1つまたは複数の個別パラメータ(γA/γB)がそれだけ更新される量は、それぞれの個別学習率(RA/RB)に対応し得る。個別学習率(RA/RB)は、いくつかの実施形態では、クライアントコンピューティングデバイスの各々によって独立して決定され得る。他の実施形態では、個別学習率(RA/RB)は、管理コンピューティングデバイス406によって決定され、次いで、クライアントコンピューティングデバイスに個々に送信され得る。代替的に、個別学習率(RA/RB)は、各それぞれのクライアントコンピューティングデバイスによって使用される勾配降下法に固有であり得る。いくつかの実施形態では、個別学習率(RA/RB)の一方または両方は、指数関数的減衰学習率、ハーモニック減衰学習率、ステップワイズ指数関数的減衰学習率、または適応学習率のうちの少なくとも1つを含み得る。
[00211]いくつかの実施形態では、図4Dに関して図示および説明されたように、方法400はまた、1つまたは複数のフィードバック値(CA/CB)を決定することを含み得る。たとえば、動作442Aにおいて、方法400は、クライアントコンピューティングデバイスA402が1つまたは複数のフィードバック値(CA)を決定することを含み得る。1つまたは複数のフィードバック値(CA)は、予測値のセット
の改善に対応する部分表現(UA)の変化を決定するために使用され得る。同様に、動作442Bにおいて、方法400は、クライアントコンピューティングデバイスB404が1つまたは複数のフィードバック値(CB)を決定することを含み得る。1つまたは複数のフィードバック値(CB)は、予測値のセット
の改善に対応する部分表現(UB)の変化を決定するために使用され得る。1つまたは複数のフィードバック値(CA/CB)は、(たとえば、重みテンソル
に基づく)逆伝搬誤差(EA/EB)に対応し得る。
[00212]いくつかの実施形態では、1つまたは複数のフィードバック値(CA/CB)を決定することは、それぞれのクライアントコンピューティングデバイス(クライアントコンピューティングデバイスA402/クライアントコンピューティングデバイスB404)によって、勾配降下法を実施することに対応し得る。追加または代替として、予測値のそれぞれのセット
の改善に対応するそれぞれの部分表現(UA/UB)の変化を決定するとき、予測値のそれぞれのセットはしきい値改善値に対応し得る。しきい値改善値は共有学習率(η)に基づき得る。いくつかの実施形態では、共有学習率(η)は、管理コンピューティングデバイス406によって決定され、管理コンピューティングデバイス406によってクライアントコンピューティングデバイスの各々に送信され得る。追加または代替として、いくつかの実施形態では、共有学習率(η)は、クライアントコンピューティングデバイスによって使用される勾配降下法によって定義され得る。たとえば、クライアントコンピューティングデバイスは、関連する共有学習率(η)を有する、同じ勾配降下法(たとえば、管理コンピューティングデバイス406によって規定される共有勾配降下法)をそれぞれ使用し得る。さらに、共有学習率(η)は、指数関数的減衰学習率、ハーモニック減衰学習率、またはステップワイズ指数関数的減衰学習率のうちの少なくとも1つを含み得る。他の実施形態では、共有学習率(η)は適応学習率を含み得る。
[00213]いくつかの実施形態では、予測値のそれぞれのセット
の改善に対応するそれぞれの部分表現(UA/UB)の変化を決定するとき、予測値のセット
の改善は、独立してクライアントコンピューティングデバイスの各々によって決定された個別学習率(RA/RB)によって定義されるしきい値改善値に対応する。いくつかの実施形態では、個別学習率(RA/RB)は、指数関数的減衰学習率、ハーモニック減衰学習率、またはステップワイズ指数関数的減衰学習率のうちの少なくとも1つを含み得る。
[00214]いくつかの実施形態では、1つまたは複数のフィードバック値(CA/CB)は、それぞれのフィードバックテンソル
に編成され得る。各フィードバックテンソル
は、それぞれの部分表現(UA/UB)の次元性に等しい次元性を有し得る。たとえば、図5Aおよび図5Bに示されている例示的なデータセット(XA/XB)と、記録値のセット(YA/YB)とを使用して、方法400を使用して生じる対応するフィードバックテンソル
は、2次元フィードバックテンソル(すなわち、フィードバック行列)であり得る。
[00215]いくつかの実施形態では、図4Dに関して図示および説明されたように、方法400はまた、(たとえば、動作444において)クライアントコンピューティングデバイスA402が管理コンピューティングデバイス406に1つまたは複数のフィードバック値(CA)を送信することを含み得る。追加または代替として、方法400は、(たとえば、動作446において)クライアントコンピューティングデバイスB404が管理コンピューティングデバイス406に1つまたは複数のフィードバック値(CB)を送信することを含み得る。いくつかの実施形態では、クライアントコンピューティングデバイスB406は、クライアントコンピューティングデバイスA404が管理コンピューティングデバイス406に1つまたは複数のフィードバック値(CA)を送信するより前にまたはそれと同時に、管理コンピューティングデバイス406に1つまたは複数のフィードバック値(CB)を送信し得る。代替的に、いくつかの実施形態では、クライアントコンピューティングデバイスのうちの両方ではなく、ただ1つ(たとえば、クライアントコンピューティングデバイスA402)が、管理コンピューティングデバイス406に1つまたは複数のフィードバック値(たとえば、CA)を送信し得る。
[00216]いくつかの実施形態では、図4Eに関して図示および説明されたように、方法400はまた、(たとえば、動作448において)管理コンピューティングデバイス406が、1つまたは複数のアグリゲートされたフィードバック値(CComb)を決定することを含み得る。1つまたは複数のアグリゲートされたフィードバック値(CComb)は、それぞれ、データセットA(XA)およびデータセットB(XB)に対応するオブジェクトのサブリスト(SA/SB)と、それぞれ、クライアントコンピューティングデバイスA402およびクライアントコンピューティングデバイスB404からの1つまたは複数のフィードバック値(CA/CB)とに基づき得る。いくつかの実施形態では、1つまたは複数のアグリゲートされたフィードバック値(CComb)を決定することは、管理コンピューティングデバイス406が、オブジェクトのサブリスト(SA/SB)と、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値(CA/CB)とに基づいて、1つまたは複数のアグリゲートされたフィードバック値(CComb)を表すテンソル
を定義することを含み得る。さらに、1つまたは複数のアグリゲートされたフィードバック値(CComb)を決定することはまた、管理コンピューティングデバイス406が、オブジェクトのサブリスト(SA/SB)に基づいて、共有識別子を有するオブジェクトのサブリスト(SA/SB)中のオブジェクトに対応するクライアントコンピューティングデバイスからの1つまたは複数のフィードバック値(CA/CB)のうちのフィードバック値を、1つまたは複数のアグリゲートされたフィードバック値(CComb)を表すテンソル
の共有エントリにまとめることを含み得る。
[00217]いくつかの実施形態では、1つまたは複数のアグリゲートされたフィードバック値(CComb)は、アグリゲートされたフィードバックテンソル
に編成され得る。アグリゲートされたフィードバックテンソル
は、共有表現(U)の次元性に等しい次元性を有し得る。たとえば、図5Aおよび図5Bに示されている例示的なデータセット(XA/XB)と、記録値のセット(YA/YB)とを使用して、方法400を使用して生じる対応するアグリゲートされたフィードバックテンソル
は、2次元のアグリゲートされたフィードバックテンソル(すなわち、フィードバック行列)であり得る。
[00218]いくつかの実施形態では、図4Eに関して図示および説明されたように、方法400はまた、(たとえば、動作450において)管理コンピューティングデバイス406が、1つまたは複数のアグリゲートされたフィードバック値(CComb)に基づいて1つまたは複数の共有パラメータ(β)を更新することを含み得る。いくつかの実施形態では、1つまたは複数のアグリゲートされたフィードバック値(CComb)に基づいて1つまたは複数の共有パラメータ(β)を更新することは、偏導関数の和を評価することを含み得、ここで、偏導関数の各々は、1つまたは複数の共有パラメータ(β)に対するそれぞれのデータセット(XA/XB)についての誤差(EA/EB)の偏導関数である。そのような和は、数学的に、
のように表され得、ここで、上記の和における「i」は、それぞれのデータセット(たとえば、データセットA(XA))に対応するインデックスである。
[00219]追加または代替として、いくつかの実施形態では、1つまたは複数のアグリゲートされたフィードバック値(CComb)に基づいて1つまたは複数の共有パラメータ(β)を更新することは、第1の偏導関数と第2の偏導関数との積の和を評価することを含み得、ここで、第1の偏導関数の各々は、それぞれの部分表現(UA/UB)に対するそれぞれのデータセット(XA/XB)についての誤差(EA/EB)の偏導関数であり、およびここで、第2の偏導関数の各々は、1つまたは複数の共有パラメータ(β)に対するそれぞれの部分表現(UA/UB)の偏導関数である。そのような和は、数学的に、
のように表され得、ここで、上記の和における「i」は、それぞれのデータセット(たとえば、データセットA(XA))に対応するインデックスである。
[00220]図16A〜図16Cは、図5Aに示されているデータセットA(XA)と記録値のセット(YA)と、および図5Bに示されているデータセットB(XB)と記録値のセット(YB)とに類似する、データセットと記録値のセットとの組合せを示す。データセットと記録値のセットとの組合せが、データセットと記録値のセットとの追加の例として提供される。(たとえば、データセットおよび/または記録値のセット中の様々なエントリの)表現、データ、特徴、次元、および値のタイプは、例として提供され、限定するものであると意図されていない。本明細書で企図される様々な実施形態では、データセットと記録値のセットとのために、様々な代替のデータ構造、データのタイプ、データの量、および/またはデータの表現が使用され得る。
[00221]図16Aに示されているのは、データセット1602(Xバイナリ)と、記録値1604の対応するセット(Yバイナリ)とである。データセット1602(Xバイナリ)は、オブジェクトと、(たとえば、保険データに対応する)特徴との間の各関係についてのバイナリ値を含む。図16Aにおいて、データセット1602(Xバイナリ)中の黒いエントリは、オブジェクトが所与の特徴を示すエントリに対応し得る。たとえば、オブジェクト「ジョーダン」は、「3つ未満の事故」と、「制限付き免許」と、「事故のための保険に入っている」とを示し得る。図16Aに示されている記録値1604の対応するセット(Yバイナリ)は、様々な特徴に対応するバイナリデータ、テキストデータ(たとえば、分類データ)、および数字データを含み得る。たとえば、オブジェクト「ジェイソン」は、「22」の「年齢」値(数字データ)と、「M」の「性別」(テキストデータ)と、「KY」の「居住の状態」(テキストデータ)と、「42」の「収入(千単位)」(数字データ)と、「2」の「子供の数」(数字データ)と、「既婚」(バイナリデータ)とを示し得る。
[00222]データセットと記録値のセットの両方のいくつかの実施形態では、様々なエントリの値についてのデータは、たとえば、純粋バイナリデータ、純粋テキストデータ(たとえば、分類データ)、または純粋数字データであり得る。データセットと記録値のセットの両方の代替実施形態では、様々なエントリの値についてのデータは、バイナリデータと、テキストデータ(たとえば、分類データ)と、数字データとの組合せであり得る。さらに他の実施形態では、データは、(たとえば、音声認識を実施するために使用されることが可能な機械学習モデルを生じるために使用される)録音、または(たとえば、オブジェクト認識を実施するために使用されることが可能な機械学習モデルを生じるために使用される)画像の形態であり得る。
[00223]いくつかの実施形態(たとえば、図示されていない実施形態)では、データセットと、記録値の対応するセットとは、3以上の次元を有し得る。そのような例示的な実施形態では、データセットと、記録値の対応するセットとは、(たとえば、2次元テンソル、すなわち、行列ではない)n次元テンソルに対応し得る。
[00224]図16Bに示されているのは、データセット1612(X薬発見)と、記録値1614の対応するセット(Y薬発見)とである。データセット1612(X薬発見)と、記録値1614のセット(Y薬発見)とは、(たとえば、臨床試験に起因する)薬剤発見に関係するデータに対応し得る。たとえば、データセット1612(X薬発見)と、記録値1614の対応するセット(Y薬発見)とにおけるデータは、様々なアッセイを使用して様々な候補薬剤化合物をテストする過程で製薬会社によって生成されていることがある。図示のように、データセット1612(X薬発見)は、一連の化合物を一連の化学的フィンガープリントおよび/または追加の記述子に関係付け得る。データセット1612(X薬発見)のエントリの値はバイナリであり得る。たとえば、オブジェクト「化合物B」は、「化学フィンガープリント2」ならびに「追加の記述子3」を示す。代替実施形態では、データセット1612(X薬発見)のエントリの値は、バイナリデータと、テキストデータ(たとえば、分類データ)と、数字データとの任意の組合せであり得る。また図示のように、記録値1614の対応するセット(Y薬発見)は、一連の化合物を一連のアッセイ活動性および最大半量活動性濃度(最大半量)に関係付け得る。記録値1614のセット(Y薬発見)のエントリの値のうちのいくつかはバイナリであり得るが、エントリの他の値は数字データであり得る。たとえば、オブジェクト「化合物C」は、「アッセイ1において活動性」と、「アッセイ6において活動性」と、0.2(たとえば、0.2モル)の「最大半量濃度アッセイ5」と、0.8(たとえば、0.8モル)の「最大半量濃度アッセイ9」とを示す。代替実施形態では、記録値1614の対応するセット(Y薬発見)のエントリの値は、バイナリデータと、テキストデータ(たとえば、分類データ)と、数字データとの任意の組合せであり得る。
[00225]図16Cに示されているのは、データセット1622(X治療)と、記録値1624の対応するセット(Y治療)とである。データセット1622(X治療)と、記録値1624のセット(Y治療)とは、患者診断と(たとえば、医師の記録に起因する)ケアとに関係するデータに対応し得る。たとえば、データセット1622(X治療)と、記録値1624の対応するセット(Y治療)とにおけるデータは、患者を診断し治療する過程で医師によって生成されていることがある。図示のように、データセット1622(X治療)は、一連の患者を一連の患者記述子に関係付け得る。データセット1622(X治療)のエントリの値は、バイナリデータと、テキストデータ(たとえば、分類データ)と、数字データとの組合せであり得る。たとえば、オブジェクト「患者A」は、「遺伝マーカー1」ならびに「家族の病歴2」を示し、「F」に対応する「性別」の値を有し、「22」に対応する「年齢」の値と、「107」に対応する重みの値とを有する。代替実施形態では、データセット1622(X治療)のエントリの値は、バイナリデータと、テキストデータ(たとえば、分類データ)と、数字データとの任意の組合せであり得る。また図示のように、記録値1624の対応するセット(Y治療)は、一連の患者を一連の臨床診断に関係付け得る。記録値1624のセット(Y治療)のエントリの値はバイナリであり得る。たとえば、オブジェクト「患者C」は、「臨床診断3」と、「臨床診断4」と、「臨床診断6」とを示す。代替実施形態では、記録値1624の対応するセット(Y治療)のエントリの値は、バイナリデータと、テキストデータ(たとえば、分類データ)と、数字データとの任意の組合せであり得る。
[00226]いくつかの実施形態では、データセットまたは記録値の対応するセットの所与の次元内のすべてのオブジェクトは同じであり得る(たとえば、データセットの第1の次元内のすべてのオブジェクトは、指定されたタイプ「ユーザ」であり得る)。図5Aおよび図5Bに示されているように、データセット(XA/XB)と、記録値の対応するセット(YA/YB)とは各々、それらの次元の各々において同じタイプのオブジェクトを含んでいることがある。たとえば、データセットA(XA)の第1の次元では、オブジェクトは、指定されたタイプ「ユーザ」であり得、データセットA(XA)の第2の次元では、オブジェクトは、指定されたタイプ「書籍」であり得、記録値Aのセット(YA)の第1の次元では、オブジェクトはタイプ「ユーザ」であり得、記録値Aのセット(YA)の第2の次元では、オブジェクトはタイプ「ムービー」であり得る。これは、データセットB(XB)と、記録値Bの対応するセット(YB)とに類似し得る(すなわち、データセットB(XB)の第1の次元では、オブジェクトは、指定されたタイプ「ユーザ」であり得、データセットB(XB)の第2の次元では、オブジェクトは、指定されたタイプ「書籍」であり得、記録値Bのセット(YB)の第1の次元では、オブジェクトはタイプ「ユーザ」であり得、記録値Bのセット(YB)の第2の次元では、オブジェクトはタイプ「ムービー」であり得る)。代替実施形態では、これは当てはまらない場合がある。たとえば、第1のデータセットは、オブジェクトタイプ「ユーザ」をもつ第1の次元と、オブジェクトタイプ「書籍」をもつ第2の次元とを有し得るが、(たとえば、異なるクライアントコンピューティングデバイスからの)第2のデータセットは、オブジェクトタイプ「ユーザ」をもつ第1の次元と、オブジェクトタイプ「ムービー」をもつ第2の次元とを有し得る。
[00227]異なるオブジェクトタイプを含んでいる異なるデータセットからの次元は、共有表現を生じ、1つまたは複数の共有パラメータ(β)を更新するために、管理コンピューティングデバイス406によって依然として使用され得る。いくつかの実施形態では、共有表現を生じるために異なるオブジェクトタイプを使用することは、それらの異なるオブジェクトタイプに対応する値が互いに有意味に比較されることが可能であるように、(たとえば、管理コンピューティングデバイス406またはそれぞれのクライアントコンピューティングデバイスによって)それらの値を正規化することを含み得る。
[00228]上記で説明された方法、および本明細書において明示的と暗黙的の両方で企図される様々な実施形態は、多種多様な適用例において使用され得る。1つの例示的な適用例は薬剤発見方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット(XA/XB)の各々の第1の次元は、複数の化学的化合物を含み得、複数のデータセット(XA/XB)の各々の第2の次元は、化学的化合物の記述子(たとえば、トランスクリプトミクスまたは画像スクリーニングを介して識別された化学誘導フィンガープリントまたは記述子)を含み得る。そのような実施形態では、複数のデータセット(XA/XB)の各々中のエントリは、それぞれの化学的化合物がそれぞれの記述子を示すかどうかのバイナリ指標に対応し得る。さらに、そのような実施形態では、複数のデータセット(XA/XB)にそれぞれ対応する記録値のセット(YA/YB)の各々の第1の次元は、複数の化学的化合物を含み得、記録値のセット(YA/YB)の各々の第2の次元は、複数の生物学的アッセイ中の化学的化合物の活動性(たとえば、単位時間当たり発生する化学反応の所与の生成物の濃度、蛍光レベル、細胞増殖率、溶液の呈色、溶液のpH、または細胞死亡率)を含み得る。そのような実施形態では、記録値のセット(YA/YB)の各々中のエントリは、それぞれの化学的化合物がそれぞれの活動性を示すかどうかのバイナリ指標に対応し得る。
[00229]薬剤発見方法は、管理コンピューティングデバイス406が、一意のオブジェクトのリスト(XComb)と、共有関数(f)と、1つまたは複数の共有パラメータ(β)とに基づいて、データセット(XA/XB)の最終共有表現(UFinal)を計算することを含み得る。薬剤発見方法はまた、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスの各々にデータセット(XA/XB)の最終共有表現(UFinal)を送信することを含み得る。データセット(XA/XB)の最終共有表現(UFinal)は、それぞれのデータセット(XA/XB)に対応する予測値の最終セット
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
は、複数の化学的化合物の中で1つまたは複数の有効な治療化合物を識別するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用され得る。
[00230]追加の例示的な適用例は薬剤診断方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット(XA/XB)の各々の第1の次元は、複数の患者を含み得、複数のデータセット(XA/XB)の各々の第2の次元は、患者の記述子(たとえば、ゲノムベースの記述子、患者の人口統計、患者の年齢、患者の身長、患者の体重、または患者の性別)を含み得る。そのような実施形態では、複数のデータセット(XA/XB)の各々中のエントリは、それぞれの患者がそれぞれの記述子を示すかどうかのバイナリ指標に対応し得る。さらに、そのような実施形態では、複数のデータセット(XA/XB)にそれぞれ対応する記録値のセット(YA/YB)の各々の第1の次元は、複数の患者を含み得、記録値のセット(YA/YB)の各々の第2の次元は、患者の臨床診断(たとえば、癌診断、心臓病診断、骨折診断、皮膚感染診断、心理診断、遺伝的疾患診断、または靭帯損傷診断)を含み得る。そのような実施形態では、記録値のセット(YA/YB)の各々中のエントリは、それぞれの患者がそれぞれの臨床診断を示すかどうかのバイナリ指標に対応し得る。
[00231]薬剤診断方法は、管理コンピューティングデバイス406が、一意のオブジェクトのリスト(XComb)と、共有関数(f)と、1つまたは複数の共有パラメータ(β)とに基づいて、データセット(XA/XB)の最終共有表現(UFinal)を計算することを含み得る。薬剤診断方法はまた、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスの各々にデータセット(XA/XB)の最終共有表現(UFinal)を送信することを含み得る。データセット(XA/XB)の最終共有表現(UFinal)は、それぞれのデータセット(XA/XB)に対応する予測値の最終セット
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
は、複数の患者のうちの少なくとも1人を診断するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用され得る。
[00232]さらなる例示的な適用例は、メディア(たとえば、書籍、ムービー、音楽などの)推奨方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット(XA/XB)の各々の第1の次元は、複数のユーザを含み得、複数のデータセット(XA/XB)の各々の第2の次元は、複数の書籍タイトルを含み得る。そのような実施形態では、複数のデータセット(XA/XB)の各々中のエントリは、それぞれのユーザによるそれぞれの書籍タイトルのレーティングに対応し得る。さらに、そのような実施形態では、複数のデータセット(XA/XB)にそれぞれ対応する記録値のセット(YA/YB)の各々の第1の次元は、複数のユーザを含み得、記録値のセット(YA/YB)の各々の第2の次元は、複数のムービータイトルを含み得る。そのような実施形態では、記録値のセット(YA/YB)の各々中のエントリは、それぞれのユーザによるそれぞれのムービータイトルのレーティングに対応し得る。
[00233]メディア推奨方法は、管理コンピューティングデバイス406が、一意のオブジェクトのリスト(XComb)と、共有関数(f)と、1つまたは複数の共有パラメータ(β)とに基づいて、データセット(XA/XB)の最終共有表現(UFinal)を計算することを含み得る。メディア推奨方法はまた、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスの各々にデータセット(XA/XB)の最終共有表現(UFinal)を送信することを含み得る。データセット(XA/XB)の最終共有表現(UFinal)は、それぞれのデータセット(XA/XB)に対応する予測値の最終セット
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
は、複数のユーザのうちの少なくとも1人に複数のムービータイトルのうちの少なくとも1つを推奨するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用され得る。
[00234]別の例示的な適用例は保険証券決定方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット(XA/XB)の各々の第1の次元は、複数の保険証券を含み得、複数のデータセット(XA/XB)の各々の第2の次元は、複数の控除免責額を含み得る。そのような実施形態では、複数のデータセット(XA/XB)の各々中のエントリは、それぞれの保険証券がそれぞれの控除免責額を有するかどうかのバイナリ指標に対応し得る。さらに、そのような実施形態では、複数のデータセット(XA/XB)にそれぞれ対応する記録値のセット(YA/YB)の各々の第1の次元は、複数の保険証券を含み得、記録値のセット(YA/YB)の各々の第2の次元は、複数の保険料を含み得る。そのような実施形態では、記録値のセット(YA/YB)の各々中のエントリは、それぞれの保険証券がそれぞれの保険料を有するかどうかのバイナリ指標に対応し得る。
[00235]保険証券決定方法は、管理コンピューティングデバイス406が、一意のオブジェクトのリスト(XComb)と、共有関数(f)と、1つまたは複数の共有パラメータ(β)とに基づいて、データセット(XA/XB)の最終共有表現(UFinal)を計算することを含み得る。保険証券決定方法はまた、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスの各々にデータセット(XA/XB)の最終共有表現(UFinal)を送信することを含み得る。データセット(XA/XB)の最終共有表現(UFinal)は、それぞれのデータセット(XA/XB)に対応する予測値の最終セット
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
は、予想される控除免責額に基づいて保険料を推奨するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用され得る。
[00236]また別の例示的な適用例は自動車燃料効率予測方法を含む。たとえば、一実施形態では、管理コンピューティングデバイスに送信される複数のデータセット(XA/XB)の各々の第1の次元は、(たとえば、車両識別番号(VIN)または通し番号によって識別される)複数の自動車を含み得、複数のデータセット(XA/XB)の各々の第2の次元は、複数の自動車部品を含み得る。そのような実施形態では、複数のデータセット(XA/XB)の各々中のエントリは、それぞれの自動車がそれぞれの自動車部品を装備しているかどうかのバイナリ指標に対応し得る。さらに、そのような実施形態では、複数のデータセット(XA/XB)にそれぞれ対応する記録値のセット(YA/YB)の各々の第1の次元は、複数の自動車を含み得、記録値のセット(YA/YB)の各々の第2の次元は、複数の平均燃料効率を含み得る。そのような実施形態では、記録値のセット(YA/YB)の各々中のエントリは、それぞれの自動車がそれぞれの平均燃料効率を有するかどうかのバイナリ指標に対応し得る。
[00237]自動車燃料効率予測方法は、管理コンピューティングデバイス406が、一意のオブジェクトのリスト(XComb)と、共有関数(f)と、1つまたは複数の共有パラメータ(β)とに基づいて、データセット(XA/XB)の最終共有表現(UFinal)を計算することを含み得る。自動車燃料効率予測方法はまた、管理コンピューティングデバイス406が、クライアントコンピューティングデバイスの各々にデータセット(XA/XB)の最終共有表現(UFinal)を送信することを含み得る。データセット(XA/XB)の最終共有表現(UFinal)は、それぞれのデータセット(XA/XB)に対応する予測値の最終セット
を決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり得る。さらに、予測値の最終セット
は、装備されている自動車部品のセットに基づいて自動車モデルの平均燃料効率を予測するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用され得る。
[00238]上記で列挙された実施形態に加えて、いくつかの他の適用例が明らかであろう。たとえば、データセット(XA/XB)と、記録値の対応するセット(YA/YB)との様々なセットは、様々なタスクを実施する(たとえば、推奨および/または予測を行う)ために使用され得る、様々な機械学習モデルを生成するために使用され得る。様々な実施形態では、そのような機械学習モデルは、様々な要因(たとえば、弁護士の能力、弁護士の専門分野、クライアントの問題の性質、タイムライン、コスト、クライアントの場所、弁護士の場所など)に基づいて潜在的クライアントに弁護士推奨を行うこと、様々な要因(たとえば、医師の能力、医師の専門分野、患者の問題の性質、タイムライン、コスト、保険、医師の場所、患者の場所など)に基づいて患者に医師推奨を行うこと、様々な要因(たとえば、交通データ、自動車タイプ、リアルタイム気象データ、工事データなど)に基づいて(たとえば、自律車両のために)ナビゲーションのためのルート推奨または選択を行うこと、様々な要因(たとえば、履歴航空路プライスデータ、気象データ、カレンダーデータ、乗客の好み、飛行機の仕様、空港ロケーションなど)に基づいて飛行機旅行予約および/または推奨を行うこと、様々な要因(たとえば、旅行者の以前の旅行場所、旅行者の好み、価格データ、気象データ、複数の旅行者のためのカレンダー情報、所与の目的地についての以前の旅行者からのレーティングなど)に基づいて休暇目的地の推奨を行うこと、様々な要因(たとえば、検出された入力アクセント、スピーチの速度、使用される句読法、テキストのコンテキストなど)に基づいてある言語から別の言語へのテキストまたはスピーチの翻訳を行うこと、様々な要因(たとえば、画像および/またはオブジェクトのサイズ、画像および/またはオブジェクトの形状、画像および/またはオブジェクトの色、画像および/またはオブジェクトのテクスチャ、画像および/またはオブジェクトの彩度、画像および/またはオブジェクトの色相、画像内のオブジェクトのロケーションなど)に基づいて画像データベース中の1つまたは複数の画像上でオブジェクト認識を実施すること、様々な要因(たとえば、被保険者の年齢、被保険者の健康状態、被保険者の性別、被保険者の婚姻状態、保険料額、保険控除免責額、保険担保額、信用履歴、被保険者に関する他の人口統計学的情報など)に基づいて自動車保険、ホーム保険、生命保険、健康保険、歯科保険、船舶保険、業務過誤保険、および/または長期廃疾保険のための保険料、控除免責額、および/または担保額を推奨すること、様々な要因(たとえば、ホーム/自動車/船舶の年数、借り手の信用スコア、頭金額、返済期間、ホーム/自動車/船舶の再販売値、ホーム/自動車/船舶に関する信頼性統計など)に基づいてホーム、自動車、および/または船舶ローンの金利を推奨すること、様々な要因(たとえば、借り手の信用スコア、ローンの額、ローンの返済期間、ローンの頭金額など)に基づいてホーム、自動車、および/または船舶ローンの貸し手を推奨すること、様々な要因(たとえば、債権者の年齢、債権者の性別、債権者の返済履歴、債権者のクレジットカード所有権データ、債権者の平均金利、債権者の負債額など)に基づいて債権者の信用スコアを計算すること、様々な要因(たとえば、生体画像のセット中のオブジェクト認識、指紋データ、網膜データ、要求者の身長、要求者の性別、要求者の年齢、要求者の眼の色、要求者の毛髪の色、要求者の人種など)に基づいて要求者に生体アクセスを許可または拒否すること、様々な要因(たとえば、顧客によって訪問された以前のレストラン、料理の好みデータ、気象データ、カレンダーデータ、リアルタイムレストラン待ち時間データ、様々なレストランについての以前の顧客からのレーティング、レストランのロケーションデータ、顧客のロケーションデータなど)に基づいて顧客にレストランを推奨すること、あるいは様々なデータ(たとえば、参加者に関連する以前のスポーツコンテストの記録、スポーツイベントについての現在の賭け統計、以前のスポーツイベントについての賭け統計、気象データ、スポーツイベントデータのロケーションなど)に基づいてスポーツイベントの結果を予測すること、様々な要因(たとえば、顧客の好み、以前の顧客のレーティング、料理タイプデータ、メニュー上の代替オプション、価格、スパイスレベルデータ、調理時間データなど)に基づいてレストラン顧客にメニュー項目選択を推奨すること、様々な要因(たとえば、遺伝子組換えの座、遺伝子組換えの発生確率、有機体のゲノムの複雑さ、遺伝子組換えの副作用、遺伝子組換えを作成するために必要とされる突然変異/スプライスの数、遺伝子組換えが施される有機体の性別、遺伝子組換えが施される有機体の症状、遺伝子組換えが施される有機体の年齢など)に基づいて、病気を治しおよび/または症状を緩和することに関して有機体への1つまたは複数の遺伝子組換えの実行可能性および成功を決定すること、様々な要因(たとえば、資金の量、交通データ、建築物/インフラストラクチャの年数、人口密度データ、病院データ、電力需要供給データ、犯罪統計など)に従ってスマートシティにおいてどのように資金提供を割り振るべきかを決定すること、様々な要因(たとえば、投資家収益データ、投資家リスク回避データ、株式市場データなど)に基づいて投資戦略を推奨すること、ならびに/あるいは様々な要因(たとえば、オブジェクトの年数、オブジェクトに投資された金、同様のオブジェクトに関する統計データ、オブジェクトが構築された年、オブジェクト使用データ、気象データ、実施された最後の予防的メンテナンス、維持費など)に基づいて(たとえば、自動車、船舶、工業機械、工場機器、飛行機、インフラストラクチャなどに対して)予防的メンテナンスが実施されることを推奨すること、を行うために使用され得る。
[00239]上記で例として提供された「様々な要素」のいずれも、データセットの成分(たとえば、データセットの1つまたは複数の次元)であり得る。同様に、対応する「結果」(たとえば、推奨される弁護士または推奨される医師)は、予測値のセット
の成分(たとえば、予測値のセットの1つまたは複数の次元)および/あるいは記録値のセット(YA/YB)の成分(たとえば、記録値のセットの1つまたは複数の次元)であり得る。
[00240]図17Aおよび図17Bは、例示的な実施形態による、(たとえば、Macau分解方法を使用する)行列分解アルゴリズムを示す。行列分解方法は、上記で説明された方法と同様に、個々の当事者のデータのプライバシーを依然として保持しながら機械学習モデルを生成するために使用され得る。行列分解アルゴリズムは、たとえば、図4B〜図4Eに関して説明されたのと同様の動作を使用して実施され得る。図示の行列分解アルゴリズムは、必ずしも人工ニューラルネットワークモデルを組み込むとは限らない、本明細書で企図される無数の実施形態のうちの一実施形態の一例として提供される。しかしながら、代替実施形態では、図17Aおよび図17Bに示されている行列分解を実施することは、行列を分解することと併せて人工ニューラルネットワークモデルを生じることを含み得る。同様に、さらに他の実施形態では、図示の行列分解とともに他の機械学習モデル/方法が使用され得る。
[00241]図17Aに示されているように、記録値テンソル
は、行列
および
に分解され得る。言い換えれば、
に等しくなり得る。記録値テンソル
は、それぞれのデータセットに対応する記録値のセットを含んでいることがある。たとえば、記録値テンソル
はデータセットA(XA)に対応し得る。そのような実施形態では、データセットA(XA)を表すテンソル
は、1つまたは複数の共有パラメータ(β)に対応する共有パラメータテンソル
(たとえば、共有パラメータベクトルと呼ばれる、1次元共有パラメータテンソル)によって乗算されて、データセットA(XA)に関係する分解された行列
のうちの1つが形成され得る。言い換えれば、
に等しくなり得る。このようにして、共有パラメータテンソル
は、データセットA(XA)中のオブジェクトに関するサイド情報を符号化するために使用されることが可能である。たとえば、データセットA(XA)が複数のムービーについてのレーティングを表す実施形態では、共有パラメータテンソル
は、複数のムービーのジャンル(たとえば、ホラー、コメディー、恋愛など)を記述する情報を表し得る。そのようなサイド情報は、(たとえば、「ホラー」ジャンルの第1のムービーに高いレーティングを与える閲覧者は、「ホラー」ジャンルの第1のムービーに低いレーティングを与えたユーザよりも、「ホラー」ジャンルの第2のムービーに高いレーティングを与える可能性が高くなり得ると仮定することによって)生成される機械学習モデルを改善することができる。いくつかの実施形態(たとえば、記録値テンソル
が3つ以上の次元を有する実施形態)では、複数の対応するテンソル(たとえば、記録値テンソル
のランクに対応するいくつかの行列)があり得、これらの複数の対応するテンソルは、記録値テンソル
を生じるために互いに乗算される。
[00242](図4B〜図15Bに関して)上記で説明された実施形態と同様に、テンソル
は、共有表現(U)の一部である部分表現(UA)に対応し得る。共有表現(U)は、図17Bに示されているように、管理コンピューティングデバイス1706によって送信および受信されるデータセットのすべてに基づき得る。たとえば、管理コンピューティングデバイス1706は、最初に、クライアントコンピューティングデバイスA1702からデータセットA(XA)を、およびクライアントコンピューティングB1704からデータセットB(XB)を受信し得る。データセットA(XA)とデータセットB(XB)とを受信すると、管理コンピューティングデバイス1706は、次いで、(たとえば、図4B〜図4Eに関して上記で説明されたのと同様のプロセスを使用して)一意のオブジェクトのリスト(XComb)を作成し得る。
[00243]一意のオブジェクトのリスト(XComb)を作成すると、管理コンピューティングデバイスは、1つまたは複数の共有パラメータ(β)に基づいて共有表現(U)を決定し得る。いくつかの実施形態では、1つまたは複数の共有パラメータは、更新より前に、ランダムにインスタンス化され得る。これは、図17Bに示されているように、式
に従って起こり得る。共有表現(U)は、次いで、管理コンピューティングデバイス1706によってクライアントコンピューティングデバイス1702/1704の各々に送信され得る。次いで、各クライアントコンピューティングデバイスは、(たとえば、それぞれのクライアントコンピューティングデバイスに対応するそれぞれのデータセットの識別子のサブセット(S)と、識別子のリスト(MA/MB)とに基づいて)それぞれのクライアントコンピューティングデバイスに対応するデータセットに、共有表現(U)のどの部分が対応するかを決定し得る。この決定された部分は、それぞれの部分表現(UA/UB)を表し得る。
[00244]いくつかの実施形態では、1つまたは複数の共有パラメータ(β)を更新/改良するための方法が次いで採用され得る。本方法は、クライアントコンピューティングデバイスA1702が、予測値のセット
を計算するために、決定された部分表現(UA)を使用することを含み得る。予測値のセットは、
によって計算され得る(ここで、「o」は、これが初期イタレーションであることを意味する)。いくつかの実施形態では、他方の分解されたテンソル
の元の値がランダムにインスタンス化され得る。(たとえば、予測値テンソルと呼ばれる)予測値のセット
を計算すると、部分表現テンソル
と、他方の分解されたテンソル
とが、予測値のセット
を分解することによって(たとえば、「o」ではなく「1」によって示される、第2のイタレーションに対して)更新され得る。更新された部分表現テンソル
を使用して、共有パラメータテンソル
は、次いで、
について解くこと(または、いくつかの実施形態では、共有パラメータテンソル
の領域について少なくとも解くことであって、これらの領域が、データセットA(XA)を表すテンソル
中の非0エントリに対応する、解くこと)によって更新され得る。共有パラメータテンソル
を更新した後に、部分表現テンソル
は、次いで、管理コンピューティングデバイス1706に送信され得る。部分表現テンソルおよび共有パラメータテンソルを更新することと、管理コンピューティングデバイス1706への部分表現テンソルの送信とについての上記で説明された動作は、複数のクライアントコンピューティングデバイス(たとえば、クライアントコンピューティングデバイスA1702とクライアントコンピューティングデバイスB1704の両方)によって、それらのそれぞれのデータセット(たとえば、データセットA(XA)およびデータセットB(XB))について実施され得る。
[00245]更新された部分表現行列
を受信すると、管理コンピューティングデバイスは、それらを共有表現テンソル
に再合成し得る。共有表現テンソルを使用して、共有パラメータテンソル
は、図17Bに示されているように、
の式を解くことによって一意のオブジェクトのリスト(XComb)を使用して更新され得る。
[00246]その後、更新された共有表現テンソル
は、次いで、管理コンピューティングデバイス1706によってクライアントコンピューティングデバイス1702/1704の各々に送信され得る。次いで、各クライアントコンピューティングデバイスは、(たとえば、それぞれのクライアントコンピューティングデバイスに対応するそれぞれのデータセットについての識別子のサブセット(S)と、識別子のリスト(MA/MB)とに基づいて)それぞれのクライアントコンピューティングデバイスに対応するデータセットに、更新された共有表現テンソル
のどの部分が対応するかを決定し得る。この決定された部分は、それぞれの部分表現(UA/UB)を表し得る。この部分表現(UA/UB)に基づいて、予測値のセットの第2のイタレーション
が計算され得、第2の部分表現テンソル
と、他方の分解されたテンソル
とが、(たとえば、Macau分解を使用して)予測値のセットの第2のイタレーション
を分解することによって(たとえば、第3のイタレーションに対して)更新され得、共有パラメータテンソル
が、
について解くことによって更新され得る。前の段落のステップは、共有パラメータテンソル
が、イタレーションの後に改善するのを止めるまで、または少なくともイタレーションごとにしきい値量を改善するのを止めるまで繰り返され得る。
[00247]図18A〜図27Bは、図4B〜図4Fに示されている方法400の代替実施形態を示す。たとえば、図18A〜図27Bは、図5A〜図14Bにそれぞれ類似し得る。しかしながら、図18Aおよび図18Bに示されているように、データセットA(XA)と、データセットA(XA)に対応する記録値のセット(YA)と、データセットB(XB)と、データセットB(XB)に対応する記録値のセット(YB)とは、図5A〜図14Bの例示的な実施形態に含まれるものとは異なるデータを含み得る。
[00248]図18Aに示されているように、データセットA(XA)は、第1の次元において4つのオブジェクト(たとえば、「書籍タイトル1」、「書籍タイトル2」、「書籍タイトル3」、および「書籍タイトル4」)を含み得る。これらのオブジェクトは、書籍商(たとえば、オンライン書籍商または書店)から仕入れおよび/または販売される書籍に対応し得る。そのような書籍商は、たとえば、クライアントコンピューティングデバイスA402に対応し得る。データセットA(XA)の第2の次元には、4つのオブジェクトの各々に対応する5つの特徴(たとえば、「ジャンル」、「著者」、「ISBN」、「言語」、および出版年)があり得る。(オブジェクト、特徴)の各ペアに対応するエントリは、所与のオブジェクトについての所与の特徴の値に対応し得る。たとえば、オブジェクト「書籍タイトル1」は、「56415」の特徴「ISBN」の値を有し得る。「ISBN」に対応する値は5桁を使用して示されているが、例示的な実施形態では他の桁数(たとえば、10桁、13桁、20桁など)が使用され得る。さらに、いくつかの実施形態では、ISBNは、(たとえば、10進数ではなく)2進数または16進数であり得る。
[00249]さらに、図18Aに示されているように、記録値の対応するセット(YA)は、第1の次元において、データセットA(XA)中の4つのオブジェクトと同じ4つのオブジェクト(たとえば、「書籍タイトル1」、「書籍タイトル2」、「書籍タイトル3」、および「書籍タイトル4」)を含む。記録値のセット(YA)はまた、データセットA(XA)に対応する書籍商に対応し得る。記録値の対応するセット(YA)の第2の次元には、4つのオブジェクトの各々に対応する5つの特徴(たとえば、「ティミー」、「ジョニー」、「サリー」、「スー」、および「マーク」)があり得る。記録値の対応するセット(YA)中の(オブジェクト、特徴)の各ペアに対応するエントリは、(たとえば、0〜100にわたるレーティング)レーティング値に対応し得る。たとえば、特徴「ジョニー」は、オブジェクト「書籍タイトル2」に「18」の値を格付けしていることがある。
[00250]同様に、図18Bに示されているように、データセットB(XB)は、第1の次元において3つのオブジェクト(たとえば、「書籍タイトル2」、「書籍タイトル5」、および「書籍タイトル6」)を含み得る。これらのオブジェクトは、書籍商(たとえば、データセットA(XA)に対応するオンライン書籍商または書店とは異なるオンライン書籍商または書店)から仕入れおよび/または販売される書籍に対応し得る。そのような書籍商は、たとえば、クライアントコンピューティングデバイスB404に対応し得る。データセットB(XB)の第2の次元には、3つのオブジェクトの各々に対応する5つの特徴(たとえば、「ジャンル」、「著者」、「ISBN」、「言語」、および「出版年」)があり得る。図示のように、データセットB(XB)の特徴はデータセットA(XA)の特徴と同じであり得る。(オブジェクト、特徴)の各ペアに対応するエントリは、所与のオブジェクトについての所与の特徴の値に対応し得る。たとえば、オブジェクト「書籍タイトル5」は、「英語」の特徴「言語」の値を有し得る。
[00251]さらに、図18Bに示されているように、記録値の対応するセット(YB)は、第1の次元において、データセットB(XB)中の3つのオブジェクトと同じ3つのオブジェクト(たとえば、「書籍タイトル2」、「書籍タイトル5」、および「書籍タイトル6」)を含む。記録値のセット(YB)はまた、データセットB(XB)に対応する書籍商に対応し得る。記録値の対応するセット(YB)の第2の次元には、3つのオブジェクトの各々に対応する3つの特徴(たとえば、「ボブ」、「マーガレット」、および「ブラム」)があり得る。記録値の対応するセット(YB)中の(オブジェクト、特徴)の各ペアに対応するエントリは、(たとえば、0〜100にわたるレーティング)レーティング値に対応し得る。たとえば、特徴「ブラム」は、オブジェクト「書籍タイトル6」に「74」の値を格付けしていることがある。
[00252]図19A〜図23に示されているように、ISBNは、データセットA(XA)とデータセットB(XB)との中のオブジェクトの各々の識別子として管理コンピューティングデバイス406によって使用され得る。
[00253](たとえば、図19A〜図27Bに示されているように)図4B〜図4Eに示されている方法400の動作を伝わって、予測値のセット
は、図27Aおよび図27Bに示されているように、各クライアントコンピューティングデバイスによってそれぞれの部分表現(UA/UB)について決定されることが可能である。予測値のセット
と、記録値の対応するセット(YA/YB)とを使用して、クライアントコンピューティングデバイスは、(たとえば、個別損失関数(LA/LB)に基づいて)誤差(EA/EB)を決定し得る。これらの誤差に基づいて、クライアントコンピューティングデバイスは、それぞれのフィードバック値(CA/CB)を決定し、管理コンピューティングデバイス406に送信し得る。それぞれのフィードバック値(CA/CB)を使用して、管理コンピューティングデバイス406は共有表現(U)を更新し得る。
[00254]共有表現(U)および/あるいは1つまたは複数の共有パラメータ(β)がクライアントコンピューティングデバイスに分散された場合、クライアントコンピューティングデバイスは、将来の予測を行うために共有表現(U)および/あるいは1つまたは複数の共有パラメータ(β)を使用し得る。たとえば、クライアントコンピューティングデバイスA402とデータセットA(XA)とに対応する書籍商が販売用に新しい書籍を供給する場合、その書籍商は、(たとえば、「ジャンル」、「著者」、「ISBN」、「言語」、および/または「出版年」の特徴に対応するその新しい書籍の値に基づいて)既存の顧客がその新しい書籍に与えるレーティングを予測し得る。
[00255]別の例示的な実施形態では、データセット(XA/XB)内のオブジェクトは化学的化合物であり得る(たとえば、図18Aおよび図18Bにおいて、「書籍タイトル1」、「書籍タイトル2」などは、「化学的化合物1」、「化学的化合物2」などと交換され得る)。そのような実施形態では、化学的化合物のために使用される識別子は、(たとえば、図19A〜図23に示されているISBNと同様に)化学的フィンガープリントであり得る。さらに、そのような実施形態では、記録値の対応するセット(YA/YB)の特徴は、ユーザではなく、細胞標的(たとえば、癌細胞、配偶子など)に対応し得る(たとえば、「ティミー」、「ジョニー」などは「癌細胞」、「配偶子」などと交換され得る)。またさらに、そのような実施形態では、「ジャンル」および「著者」などのデータセット(XA/XB)の特徴は、(たとえば、水酸基など、化学的化合物の一部分を備え得るいくつかの官能基などの)化学的サイド情報に関する特徴と交換され得る。
IV.結論
[00256]本開示は、様々な態様の例示として意図されている、本出願で説明される特定の実施形態に関して限定されない。当業者には明らかになるように、それの範囲から逸脱することなく多数の修正および変更が行われ得る。本明細書で説明されたものに加えて、本開示の範囲内の機能的に等価な方法および装置が、上記の説明から当業者に明らかになろう。そのような修正および変形は添付の特許請求の範囲内に入るものである。
[00257]上記の詳細な説明では、添付の図を参照しながら開示されるシステム、デバイス、および方法の様々な特徴および動作について説明している。本明細書および図において説明される例示的な実施形態は、限定的なものとなるものではない。本明細書で提示される主題の範囲から逸脱することなく、他の実施形態が利用されることが可能であり、他の変更が行われることが可能である。本開示の態様は、本明細書で概して説明され、図に示されているように、多種多様な異なる構成で配置、置換、組合せ、分離、および設計されることが可能であることが容易に理解されよう。
[00258]図中のおよび本明細書で論じられたメッセージフロー図、シナリオ、およびフローチャートのいずれかまたはすべてに関して、各ステップ、ブロック、動作、および/または通信は、例示的な実施形態による情報の処理および/または情報の送信を表すことができる。代替実施形態は、これらの例示的な実施形態の範囲内に含まれる。これらの代替実施形態では、たとえば、ステップ、ブロック、送信、通信、要求、応答、および/またはメッセージとして説明される動作は、関与する機能に応じて、実質的に同時にまたは逆順にを含めて、その図示または議論されたものとは狂っている順序で実行されることが可能である。さらに、本明細書で論じられたメッセージフロー図、シナリオ、およびフローチャートのいずれかとともに、より多いまたはより少ないブロックおよび/または動作が使用されることが可能であり、これらのメッセージフロー図、シナリオ、およびフローチャートは、部分的または全体的に、互いに組み合わされることが可能である。
[00259]情報の処理を表すステップ、ブロック、または動作は、本明細書で説明される方法または技法の特定の論理機能を実施するように構成されることが可能な回路に対応することができる。代替または追加として、情報の処理を表すステップまたはブロックは、モジュール、セグメント、または(関係するデータを含む)プログラムコードの一部分に対応することができる。プログラムコードは、方法または技法において特定の論理動作または行為を実装するためにプロセッサによって実行可能な1つまたは複数の命令を含むことができる。プログラムコードおよび/または関係するデータは、RAM、ディスクドライブ、ソリッドステートドライブ、または別の記憶媒体を含む記憶デバイスなど、任意のタイプのコンピュータ可読媒体上に記憶されることが可能である。
[00260]コンピュータ可読媒体はまた、レジスタメモリおよびプロセッサキャッシュのように短い時間期間の間データを記憶するコンピュータ可読媒体などの非一時的コンピュータ可読媒体を含むことができる。コンピュータ可読媒体は、より長い時間期間の間プログラムコードおよび/またはデータを記憶する非一時的コンピュータ可読媒体をさらに含むことができる。したがって、コンピュータ可読媒体は、たとえば、ROM、光または磁気ディスク、ソリッドステートドライブ、コンパクトディスク読取り専用メモリ(CD−ROM)のような、2次または永続的長期記憶装置を含み得る。コンピュータ可読媒体はまた、任意の他の揮発性または不揮発性記憶システムであることが可能である。コンピュータ可読媒体は、たとえば、コンピュータ可読記憶媒体、または有形記憶デバイスと見なされることが可能である。
[00261]その上、1つまたは複数の情報送信を表すステップ、ブロック、または動作は、同じ物理デバイス中のソフトウェアおよび/またはハードウェアモジュール間の情報送信に対応することができる。しかしながら、他の情報送信は、異なる物理デバイス中のソフトウェアモジュールおよび/またはハードウェアモジュール間で行われることが可能である。
[00262]図に示されている特定の配置は、限定するものと見なされるべきではない。他の実施形態は、所与の図に示されている各要素のより多いまたはより少ないものを含むことができることを理解されたい。さらに、図示されている要素のうちのいくつかは、組み合わされるかまたは省略されることが可能である。またさらに、例示的な実施形態は、図に示されていない要素を含むことができる。
[00263]様々な態様および実施形態が本明細書で開示されたが、他の態様および実施形態が当業者には明らかであろう。本明細書で開示される様々な態様および実施形態は、説明のためのものであり、限定するものではなく、それの真の範囲は以下の特許請求の範囲によって示される。
[00264]本開示の実施形態は、このようにして、下記の列挙された例示的な実施形態(EEE:enumerated example embodiment)のうちの1つに関係し得る。
[00265]EEE1は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える、方法である。
[00266]EEE2は、管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、共有関数と、1つまたは複数の共有パラメータとを送信することをさらに備える、EEE1の方法である。
[00267]EEE3は、識別子のサブセットの各識別子がランダムまたは擬似ランダムに選択される、EEE1または2の方法である。
[00268]EEE4は、識別子のサブセットの各識別子が、メルセンヌツイスタ擬似乱数生成器に基づいて選択される、EEE3の方法である。
[00269]EEE5は、識別子のサブセットの各識別子が、管理コンピューティングデバイスのみに知られているアルゴリズムに従って選択される、EEE1または2の方法である。
[00270]EEE6は、識別子のサブセットの各識別子が、公的に入手可能なアルゴリズムに従って選択される、EEE1または2の方法である。
[00271]EEE7は、管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することが、
管理コンピューティングデバイスによって、各データセットからのオブジェクトの組合せであるオブジェクトの複合リストを作成することと、
管理コンピューティングデバイスによって、複数のデータセットの各々についての識別子のリストの共通部分に基づいて、オブジェクトの複合リストから重複オブジェクトを削除することと
を備える、EEE1〜6のいずれかの方法である。
[00272]EEE8は、個別損失関数が、2次損失関数、対数損失関数、ヒンジ損失関数、または分位損失関数のうちの少なくとも1つを備える、EEE1〜7のいずれかの方法である。
[00273]EEE9は、それぞれのデータセットについての誤差を決定することが、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する記録値のセット中の非空エントリのうちのどれが、オブジェクトのサブリスト中のオブジェクトに対応するかを識別することと、
それぞれのクライアントコンピューティングデバイスによって、各識別された非空エントリと、それぞれのデータセットに対応する予測値のセット中のそれの対応する予測値との間の個別損失関数を適用することによって、それぞれのデータセットに対応する記録値のセット中の識別された非空エントリの各々の部分誤差値を決定することと、
それぞれのクライアントコンピューティングデバイスによって、部分誤差値を組み合わせることと
を備える、EEE1〜8のいずれかの方法である。
[00274]EEE10は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、1つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、EEE1〜9のいずれかの方法である。
[00275]EEE11は、データセットの最終共有表現が、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能である、EEE10の方法である。
[00276]EEE12は、それぞれのデータセットに対応する予測値の最終セットを決定することが、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについてオブジェクトのサブリストを受信することと、
それぞれのクライアントコンピューティングデバイスによって、オブジェクトのサブリストと、最終共有表現とに基づいて、それぞれのデータセットについて最終部分表現を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する最終部分表現と、個別関数と、1つまたは複数の個別パラメータとに基づいて、それぞれのデータセットに対応する予測値の最終セットを決定することと
を備える、EEE11の方法である。
[00277]EEE13は、予測値の最終セットが、
クライアントコンピューティングデバイスのうちの少なくとも1つによって表示されるか、または
それぞれのクライアントコンピューティングデバイスに対応するデータセット中のオブジェクトに関して1つまたは複数の予測を行うためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用される、
EEE11または12の方法である。
[00278]EEE14は、クライアントコンピューティングデバイスの各々からの1つまたは複数のフィードバック値が逆伝搬誤差に基づく、EEE1〜13のいずれかの方法である。
[00279]EEE15は、
共有関数が、人工ニューラルネットワークモデルの1つまたは複数の第1の層に対応し、
各個別関数が、人工ニューラルネットワークモデルの1つまたは複数の第2の層の少なくとも一部分に対応し、
1つまたは複数の第1の層のうちの少なくとも1つが、1つまたは複数の第2の層のうちの少なくとも1つへの入力層である、
EEE1〜14のいずれかの方法である。
[00280]EEE16は、1つまたは複数の共有パラメータが各々、共有表現の重みテンソル中の1つまたは複数の重みに対応する、EEE15の方法である。
[00281]EEE17は、1つまたは複数の個別パラメータが各々、それぞれのデータセットについての個別関数の重みテンソル中の1つまたは複数の重みに対応する、EEE15または16の方法である。
[00282]EEE18は、複数のデータセットの各々が、等しい次元数を備える、EEE1〜17のいずれかの方法である。
[00283]EEE19は、次元数が、2、3、4、5、6、7、8、9、10、16、32、64、128、256、512、または1024である、EEE18の方法である。
[00284]EEE20は、
複数のデータセットの各々がテンソルによって表され、
複数のデータセットのうちの少なくとも1つがスパーステンソルによって表される、
EEE1〜19のいずれかの方法である。
[00285]EEE21は、共有関数が、修正線形ユニット(ReLU)非線形性およびドロップアウトを有する人工ニューラルネットワークを備える、EEE1〜20のいずれかの方法である。
[00286]EEE22は、それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することが、それぞれのクライアントコンピューティングデバイスによって、勾配降下法を実施することに対応する、EEE1〜21のいずれかの方法である。
[00287]EEE23は、予測値のセットの改善が、共有学習率に基づくしきい値改善値に対応する、EEE1〜22のいずれかの方法である。
[00288]EEE24は、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの共有学習率を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に共有学習率を送信することと
をさらに備える、EEE23の方法である。
[00289]EEE25は、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することが、それぞれのクライアントコンピューティングデバイスによって、勾配降下法を実施することに対応し、
共有学習率が勾配降下法によって定義される、
EEE23の方法である。
[00290]EEE26は、共有学習率が、指数関数的減衰学習率、ハーモニック減衰学習率、またはステップワイズ指数関数的減衰学習率のうちの少なくとも1つを備える、EEE23〜25のいずれかの方法である。
[00291]EEE27は、予測値のセットの改善が、独立してクライアントコンピューティングデバイスの各々によって決定された個別学習率によって定義されるしきい値改善値に対応する、EEE1〜22のいずれかの方法である。
[00292]EEE28は、個別学習率が、指数関数的減衰学習率、ハーモニック減衰学習率、またはステップワイズ指数関数的減衰学習率のうちの少なくとも1つを備える、EEE27の方法である。
[00293]EEE29は、
管理コンピューティングデバイスによって、識別子の複合リストから識別子の追加のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子の追加のサブセット中の各識別子に対応する一意のオブジェクトのリストの追加のサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストの追加のサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの修正された共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子の追加のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトの追加のサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトの追加のサブリストと、修正された共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて、修正された部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトの追加のサブリストと、
それぞれのデータセットについての修正された部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数の修正されたフィードバック値を受信することと、ここにおいて、1つまたは複数の修正されたフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値の修正されたセットを決定することと、ここにおいて、予測値の修正されたセットが、それぞれのデータセットに対応する修正された部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値の修正されたセットと、オブジェクトの追加のサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての修正された誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数の修正されたフィードバック値を決定することと、ここにおいて、1つまたは複数の修正されたフィードバック値が、予測値のセットの改善に対応する修正された部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトの追加のサブリストと、1つまたは複数の修正されたフィードバック値とに基づいて、1つまたは複数の修正されたアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数の修正されたアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと、
管理コンピューティングデバイスによって、1つまたは複数の修正されたアグリゲートされたフィードバック値に基づいて、すべてのそれぞれのデータセットについての修正された誤差に対応するアグリゲートされた誤差が最小限に抑えられたと決定することと
をさらに備える、EEE1〜28のいずれかの方法である。
[00294]EEE30は、
クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値がフィードバックテンソルに編成され、
各それぞれのフィードバックテンソルが、それぞれの部分表現の次元性に等しい次元性を有する、
EEE1〜29のいずれかの方法である。
[00295]EEE31は、
1つまたは複数のアグリゲートされたフィードバック値が、アグリゲートされたフィードバックテンソルに編成され、
アグリゲートされたフィードバックテンソルが、共有表現の次元性に等しい次元性を有する、
EEE1〜30のいずれかの方法である。
[00296]EEE32は、管理コンピューティングデバイスによって、同様の関係をモデル化するために使用される関係する共有関数に基づいて、共有関数と、1つまたは複数の共有パラメータとを初期化することをさらに備える、EEE1〜31のいずれかの方法である。
[00297]EEE33は、
管理コンピューティングデバイスによって、複数のクライアントコンピューティングデバイスのうちの第1のクライアントコンピューティングデバイスから1つまたは複数の共有パラメータの初期値を受信することと、
管理コンピューティングデバイスによって、1つまたは複数の共有パラメータの初期値に基づいて、共有関数と、1つまたは複数の共有パラメータとを初期化することと
をさらに備える、EEE1〜31のいずれかの方法である。
[00298]EEE34は、1つまたは複数の共有パラメータの初期値が、1つまたは複数の公開モデルに基づいて第1のクライアントコンピューティングデバイスによって決定される、EEE33の方法である。
[00299]EEE35は、管理コンピューティングデバイスによって、乱数生成器または擬似乱数生成器のうちの少なくとも1つに基づいて、共有関数と、1つまたは複数の共有パラメータとを初期化することをさらに備える、EEE1〜31のいずれかの方法である。
[00300]EEE36は、クライアントコンピューティングデバイスによって1つまたは複数のフィードバック値を決定することが、それぞれのクライアントコンピューティングデバイスによって、乱数生成器または擬似乱数生成器に基づいて、それぞれのデータセットに対応する個別関数と、1つまたは複数の個別パラメータとを初期化することをさらに備える、EEE1〜35のいずれかの方法である。
[00301]EEE37は、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することが、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を表すテンソルを定義することと、
管理コンピューティングデバイスによって、オブジェクトのサブリストに基づいて、共有識別子を有するオブジェクトのサブリスト中のオブジェクトに対応するクライアントコンピューティングデバイスからの1つまたは複数のフィードバック値のうちのフィードバック値を、1つまたは複数のアグリゲートされたフィードバック値を表すテンソルの共有エントリにまとめることと
を備える、EEE1〜36のいずれかの方法である。
[00302]EEE38は、
1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することが、偏導関数の和を評価することを備え、
偏導関数の各々が、1つまたは複数の共有パラメータに対するそれぞれのデータセットについての誤差の偏導関数である、
EEE1〜37のいずれかの方法である。
[00303]EEE39は、
1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することが、第1の偏導関数と第2の偏導関数との積の和を評価することを備え、
第1の偏導関数が、それぞれの部分表現に対するそれぞれのデータセットについての誤差の偏導関数であり、
第2の偏導関数が、1つまたは複数の共有パラメータに対するそれぞれの部分表現の偏導関数である、
EEE1〜37のいずれかの方法である。
[00304]EEE40は、管理コンピューティングデバイスによって、管理コンピューティングデバイスのメモリから、一意のオブジェクトのリストと、共有表現と、複数のデータセットのうちの各データセットの識別子のリストと、識別子の複合リストとを削除することをさらに備える、EEE1〜39のいずれかの方法である。
[00305]EEE41は、
複数のデータセットの各々が、少なくとも2つの次元を備え、
複数のデータセットの各々の第1の次元が、複数の化学的化合物を備え、
複数のデータセットの各々の第2の次元が、化学的化合物の記述子を備え、
複数のデータセットの各々中のエントリは、それぞれの化学的化合物がそれぞれの記述子を示すかどうかのバイナリ指標に対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも2つの次元を備え、
記録値のセットの各々の第1の次元が、複数の化学的化合物を備え、
記録値のセットの各々の第2の次元が、複数の生物学的アッセイにおける化学的化合物の活動性を備え、
記録値のセットの各々中のエントリは、それぞれの化学的化合物がそれぞれの活動性を示すかどうかのバイナリ指標に対応する、
EEE1〜40のいずれかの方法である。
[00306]EEE42は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、1つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、EEE41の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、複数の化学的化合物の中で1つまたは複数の有効な治療化合物を識別するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用される。
[00307]EEE43は、
複数のデータセットの各々が、少なくとも2つの次元を備え、
複数のデータセットの各々の第1の次元が、複数の患者を備え、
複数のデータセットの各々の第2の次元が、患者の記述子を備え、
複数のデータセットの各々中のエントリは、それぞれの患者がそれぞれの記述子を示すかどうかのバイナリ指標に対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも2つの次元を備え、
記録値のセットの各々の第1の次元が、複数の患者を備え、
記録値のセットの各々の第2の次元が、患者の臨床診断を備え、
記録値のセットの各々中のエントリは、それぞれの患者がそれぞれの臨床診断を示すかどうかのバイナリ指標に対応する、
EEE1〜40のいずれかの方法である。
[00308]EEE44は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、1つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、EEE43の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、複数の患者のうちの少なくとも1人を診断するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用される。
[00309]EEE45は、
複数のデータセットの各々が、少なくとも2つの次元を備え、
複数のデータセットの各々の第1の次元が、複数のユーザを備え、
複数のデータセットの各々の第2の次元が、複数の書籍タイトルを備え、
複数のデータセットの各々中のエントリが、それぞれのユーザによるそれぞれの書籍タイトルのレーティングに対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも2つの次元を備え、
記録値のセットの各々の第1の次元が、複数のユーザを備え、
記録値のセットの各々の第2の次元が、複数のムービータイトルを備え、
記録値のセットの各々中のエントリが、それぞれのユーザによるそれぞれのムービータイトルのレーティングに対応する、
EEE1〜40のいずれかの方法である。
[00310]EEE46は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、1つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、EEE45の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、複数のユーザのうちの少なくとも1人に複数のムービータイトルのうちの少なくとも1つを推奨するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用される。
[00311]EEE47は、
複数のデータセットの各々が、少なくとも2つの次元を備え、
複数のデータセットの各々の第1の次元が、複数の保険証券を備え、
複数のデータセットの各々の第2の次元が、複数の控除免責額を備え、
複数のデータセットの各々中のエントリは、それぞれの保険証券がそれぞれの控除免責額を有するかどうかのバイナリ指標に対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも2つの次元を備え、
記録値のセットの各々の第1の次元が、複数の保険証券を備え、
記録値のセットの各々の第2の次元が、複数の保険料を備え、
記録値のセットの各々中のエントリは、それぞれの保険証券がそれぞれの保険料を有するかどうかのバイナリ指標に対応する、
EEE1〜40のいずれかの方法である。
[00312]EEE48は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、1つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、EEE47の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、予想される控除免責額に基づいて保険料を推奨するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用される。
[00313]EEE49は、
複数のデータセットの各々が、少なくとも2つの次元を備え、
複数のデータセットの各々の第1の次元が、複数の自動車を備え、
複数のデータセットの各々の第2の次元が、複数の自動車部品を備え、
複数のデータセットの各々中のエントリが、それぞれの自動車がそれぞれの自動車部品を装備しているかどうかのバイナリ指標に対応し、
複数のデータセットの各々に対応する記録値のセットの各々が、少なくとも2つの次元を備え、
記録値のセットの各々の第1の次元が、複数の自動車を備え、
記録値のセットの各々の第2の次元が、複数の平均燃料効率を備え、
記録値のセットの各々中のエントリが、それぞれの自動車がそれぞれの平均燃料効率を有するかどうかのバイナリ指標に対応する、
EEE1〜40のいずれかの方法である。
[00314]EEE50は、
管理コンピューティングデバイスによって、一意のオブジェクトのリストと、共有関数と、1つまたは複数の共有パラメータとに基づいて、データセットの最終共有表現を計算することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々にデータセットの最終共有表現を送信することと
をさらに備える、EEE49の方法であり、
ここにおいて、データセットの最終共有表現は、それぞれのデータセットに対応する予測値の最終セットを決定するためにクライアントコンピューティングデバイスの各々によって使用可能であり、および
ここにおいて、予測値の最終セットは、装備されている自動車部品のセットに基づいて自動車モデルの平均燃料効率を予測するためにクライアントコンピューティングデバイスのうちの少なくとも1つによって使用される。
[00315]EEE51は、
それぞれのクライアントコンピューティングデバイスのそれぞれのデータセットが1次メモリストレージに記憶され、
それぞれのデータセットに対応する記録値のセットが2次メモリストレージに記憶される、
EEE1〜50のいずれかの方法である。
[00316]EEE52は、
複数のデータセットのうちの1つに対応する予測値のセットの各々が、予測値テンソルに対応し、
予測値テンソルが、第2のテンソルによって乗算される第1のテンソルに分解され、
第1のテンソルが、1つまたは複数の共有パラメータによって乗算されるそれぞれのデータセットに対応する、
EEE1〜14、18〜20、または22〜51のいずれかの方法である。
[00317]EEE53は、それぞれのデータセットが、データセットのオブジェクトに関するサイド情報を符号化する、EEE52の方法である。
[00318]EEE54は、予測値テンソルが、Macau分解方法を使用して分解される、EEE52または53の方法である。
[00319]EEE55は、各それぞれのクライアントコンピューティングデバイスの個別損失関数が共有損失関数を備える、EEE1〜54のいずれかの方法である。
[00320]EEE56は、個別損失関数のうちの第1の個別損失関数が、個別損失関数のうちの第2の個別損失関数とは異なる、EEE1〜54のいずれかの方法である。
[00321]EEE57は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数の化学的化合物をそれらの化学的化合物の複数の記述子に関係付け、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数の化学的化合物を複数の生物学的アッセイにおけるそれらの化学的化合物の活動性に関係付ける、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える、方法であり、
ここにおいて、共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数の化学的化合物の中で1つまたは複数の有効な治療化合物を識別するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[00322]EEE58は、複数の記述子が、トランスクリプトミクスまたは画像スクリーニングを介して識別された化学導出フィンガープリントまたは記述子を備える、EEE57の方法である。
[00323]EEE59は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数の患者をそれらの患者の複数の記述子に関係付け、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットの識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数の患者を患者の臨床診断に関係付ける、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える、方法であり、
ここにおいて、共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数の患者のうちの1人または複数を診断するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[00324]EEE60は、患者の複数の記述子が、ゲノムベースの記述子、患者の人口統計、患者の年齢、患者の身長、患者の体重、または患者の性別を備える、EEE59の方法である。
[00325]EEE61は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数のユーザによる複数の書籍タイトルについての書籍レーティングのセットを提供し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数のユーザによる複数のムービータイトルについてのムービーレーティングのセットを提供する、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える、方法であり、
ここにおいて、共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数のユーザのうちの1人または複数にムービーを推奨するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[00326]EEE62は、書籍レーティングが、バイナリレーティング、分類レーティング、または数値レーティングのうちの少なくとも1つを備える、EEE61の方法である。
[00327]EEE63は、ムービーレーティングが、バイナリレーティング、分類レーティング、または数値レーティングのうちの少なくとも1つを備える、EEE61または62の方法である。
[00328]EEE64は、
第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、第1のクライアントコンピューティングデバイスに対応する第1のデータセットを送信することと、
ここにおいて、第1のデータセットが、複数のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの1つであり、
ここにおいて、各データセットが記録値のセットに対応し、および
ここにおいて、各データセットがオブジェクトを備える、
第1のクライアントコンピューティングデバイスによって、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とを受信することと、
ここにおいて、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットについての第1の部分表現とが、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することと、
管理コンピューティングデバイスによって、第1のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第1のデータセットについてオブジェクトの第1のサブリストを決定することと、
管理コンピューティングデバイスによって、オブジェクトの第1のサブリストと、共有表現とに基づいて、第1のデータセットについて第1の部分表現を決定することと
によって管理コンピューティングデバイスによって決定される、
第1のクライアントコンピューティングデバイスによって、第1のデータセットに対応する予測値の第1のセットを決定することと、ここにおいて、予測値の第1のセットが、第1のデータセットに対応する第1の部分表現と、1つまたは複数の第1の個別パラメータをもつ第1の個別関数とに基づく、
第1のクライアントコンピューティングデバイスによって、第1のデータセットについての第1の個別損失関数と、第1のデータセットに対応する予測値の第1のセットと、オブジェクトの第1のサブリストと、第1のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第1のデータセットについての第1の誤差を決定することと、
第1のクライアントコンピューティングデバイスによって、第1のデータセットについての1つまたは複数の第1の個別パラメータを更新することと、
第1のクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値の第1のセットの改善に対応する第1の部分表現の変化を決定するために使用される、
第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、1つまたは複数のフィードバック値を送信することと
を備える、方法であり、
ここにおいて、1つまたは複数のフィードバック値は、1つまたは複数のアグリゲートされたフィードバック値を決定するために複数のクライアントコンピューティングデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能であり、および
ここにおいて、1つまたは複数のアグリゲートされたフィードバック値は、1つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
[00329]EEE65は、命令がその上に記憶された非一時的コンピュータ可読媒体であり、ここにおいて、命令は、
複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
複数のデータセットの中から一意のオブジェクトのリストを決定することと、
識別子の複合リストから識別子のサブセットを選択することと、
識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える方法を実施するようにプロセッサによって実行可能である。
[00330]EEE66は、モデルがその上に記憶されたメモリであり、ここにおいて、モデルは、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと、
管理コンピューティングデバイスによって、メモリ上に、共有表現と、共有関数と、1つまたは複数の共有パラメータとを記憶することと
を備える方法に従って生成される。
[00331]EEE67は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと、
コンピューティングデバイスによって、データセットに対応する予測値の追加のセットを決定するために、共有表現、共有関数、あるいは1つまたは複数の共有パラメータを使用することと
を備える、方法である。
[00332]EEE68はサーバデバイスであり、ここにおいて、サーバデバイスは、プロセッサによって実行されたとき、方法を実施する命令をその上に記憶しており、本方法は、
複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
複数のデータセットの中から一意のオブジェクトのリストを決定することと、
識別子の複合リストから識別子のサブセットを選択することと、
識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える。
[00333]EEE69はサーバデバイスであり、ここにおいて、サーバデバイスは、プロセッサによって実行されたとき、方法を実施する命令をその上に記憶しており、本方法は、
管理コンピューティングデバイスに、サーバデバイスに対応する第1のデータセットを送信することと、
ここにおいて、第1のデータセットが、複数のサーバデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの1つであり、
ここにおいて、各データセットが記録値のセットに対応し、および
ここにおいて、各データセットがオブジェクトを備える、
第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットの第1の部分表現とを受信することと、
ここにおいて、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットの第1の部分表現とが、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することと、
管理コンピューティングデバイスによって、第1のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第1のデータセットについてオブジェクトの第1のサブリストを決定することと、
管理コンピューティングデバイスによって、オブジェクトの第1のサブリストと、共有表現とに基づいて、第1のデータセットについて第1の部分表現を決定することと
によって管理コンピューティングデバイスによって決定される、
第1のデータセットに対応する予測値の第1のセットを決定することと、ここにおいて、予測値の第1のセットが、第1のデータセットに対応する第1の部分表現と、1つまたは複数の第1の個別パラメータをもつ第1の個別関数とに基づく、
第1のデータセットについての第1の個別損失関数と、第1のデータセットに対応する予測値の第1のセットと、オブジェクトの第1のサブリストと、第1のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第1のデータセットについての第1の誤差を決定することと、
第1のデータセットについての1つまたは複数の第1の個別パラメータを更新することと、
1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値の第1のセットの改善に対応する第1の部分表現の変化を決定するために使用される、
管理コンピューティングデバイスに、1つまたは複数のフィードバック値を送信することと
を備え、
ここにおいて、1つまたは複数のフィードバック値は、1つまたは複数のアグリゲートされたフィードバック値を決定するために複数のサーバデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能であり、および
ここにおいて、1つまたは複数のアグリゲートされたフィードバック値は、1つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
[00334]EEE70は、
サーバデバイスと、
サーバデバイスにそれぞれ通信可能に結合された複数のクライアントデバイスと
を備える、システムであり、
ここにおいて、サーバデバイスは、プロセッサによって実行されたとき、第1の方法を実施する命令をその上に記憶しており、第1の方法は、
複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントデバイスのうちのそれぞれのクライアントデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
複数のデータセットの中から一意のオブジェクトのリストを決定することと、
識別子の複合リストから識別子のサブセットを選択することと、
識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントデバイスのそれぞれのデータセットについて部分表現を決定することと、
クライアントデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと
を備え、
ここにおいて、各クライアントデバイスは、プロセッサによって実行されたとき、第2の方法を実施する命令をその上に記憶しており、第2の方法は、
それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
サーバデバイスに、1つまたは複数のフィードバック値を送信することと
を備え、
ここにおいて、第1の方法は、
オブジェクトのサブリストと、クライアントデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
をさらに備える。
[00335]EEE71は、最適化されたモデルであり、ここにおいて、このモデルは、方法に従って最適化され、本方法は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと、
管理コンピューティングデバイスによって、共有関数と、1つまたは複数の更新された共有パラメータとに基づいて、データセットの更新された共有表現を計算することと、
ここにおいて、更新された共有表現は、最適化されたモデルに対応する、
を備える。
[00336]EEE72は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える、コンピュータ実装方法である。
[00337]EEE73は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数の化学的化合物をそれらの化学的化合物の複数の記述子に関係付け、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数の化学的化合物を複数の生物学的アッセイにおけるそれらの化学的化合物の活動性に関係付ける、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える、コンピュータ実装方法であり、
ここにおいて、共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数の化学的化合物の中で1つまたは複数の有効な治療化合物を識別するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[00338]EEE74は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数の患者をそれらの患者の複数の記述子に関係付け、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数の患者を患者の臨床診断に関係付ける、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える、コンピュータ実装方法であり、
ここにおいて、共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数の患者のうちの1人または複数を診断するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[00339]EEE75は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、ここにおいて、各データセットが、複数のユーザによる複数の書籍タイトルについての書籍レーティングのセットを提供し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、ここにおいて、それぞれのデータセットに対応する記録値のセットが、複数のユーザによる複数のムービータイトルについてのムービーレーティングのセットを提供する、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと
を備える、コンピュータ実装方法であり、
ここにおいて、共有表現、共有関数、あるいは1つまたは複数の共有パラメータは、複数のユーザのうちの1人または複数にムービーを推奨するために複数のクライアントコンピューティングデバイスのうちの少なくとも1つによって使用可能である。
[00340]EEE76は、
第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、第1のクライアントコンピューティングデバイスに対応する第1のデータセットを送信することと、
ここにおいて、第1のデータセットが、複数のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに送信される複数のデータセットのうちの1つであり、
ここにおいて、各データセットが記録値のセットに対応し、および
ここにおいて、各データセットがオブジェクトを備える、
第1のクライアントコンピューティングデバイスによって、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットの第1の部分表現とを受信することと、
ここにおいて、第1のデータセットについてのオブジェクトの第1のサブリストと、第1のデータセットの第1の部分表現とが、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、複数のデータセットの共有表現を計算することと、
管理コンピューティングデバイスによって、第1のデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、第1のデータセットについてオブジェクトの第1のサブリストを決定することと、
管理コンピューティングデバイスによって、オブジェクトの第1のサブリストと、共有表現とに基づいて、第1のデータセットについて第1の部分表現を決定することと
によって管理コンピューティングデバイスによって決定される、
第1のクライアントコンピューティングデバイスによって、第1のデータセットに対応する予測値の第1のセットを決定することと、ここにおいて、予測値の第1のセットが、第1のデータセットに対応する第1の部分表現と、1つまたは複数の第1の個別パラメータをもつ第1の個別関数とに基づく、
第1のクライアントコンピューティングデバイスによって、第1のデータセットについての第1の個別損失関数と、第1のデータセットに対応する予測値の第1のセットと、オブジェクトの第1のサブリストと、第1のデータセットに対応する記録値のセット中の非空エントリとに基づいて、第1のデータセットについての第1の誤差を決定することと、
第1のクライアントコンピューティングデバイスによって、第1のデータセットについての1つまたは複数の第1の個別パラメータを更新することと、
第1のクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値の第1のセットの改善に対応する第1の部分表現の変化を決定するために使用される、
第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、1つまたは複数のフィードバック値を送信することと
を備える、コンピュータ実装方法であり、
ここにおいて、1つまたは複数のフィードバック値は、1つまたは複数のアグリゲートされたフィードバック値を決定するために複数のクライアントコンピューティングデバイスからのオブジェクトのサブリストとともに管理コンピューティングデバイスによって使用可能であり、および
ここにおいて、1つまたは複数のアグリゲートされたフィードバック値は、1つまたは複数の共有パラメータを更新するために管理コンピューティングデバイスによって使用可能である。
[00341]EEE77は、
管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、複数のデータセットのうちの各データセットの識別子のリストの組合せを備える識別子の複合リストとを決定することと、
管理コンピューティングデバイスによって、複数のデータセットの中から一意のオブジェクトのリストを決定することと、
管理コンピューティングデバイスによって、識別子の複合リストから識別子のサブセットを選択することと、
管理コンピューティングデバイスによって、識別子のサブセット中の各識別子に対応する一意のオブジェクトのリストのサブセットを決定することと、
管理コンピューティングデバイスによって、一意のオブジェクトのリストのサブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、データセットの共有表現を計算することと、
管理コンピューティングデバイスによって、それぞれのデータセットについての識別子のリストとの識別子のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについてオブジェクトのサブリストを決定することと、
管理コンピューティングデバイスによって、それぞれのデータセットについてのオブジェクトのサブリストと、共有表現とに基づいて、各クライアントコンピューティングデバイスのそれぞれのデータセットについて部分表現を決定することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスの各々に、
それぞれのデータセットについてのオブジェクトのサブリストと、
それぞれのデータセットについての部分表現と
を送信することと、
管理コンピューティングデバイスによって、クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数のフィードバック値を受信することと、ここにおいて、1つまたは複数のフィードバック値は、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値のセットが、それぞれのデータセットに対応する部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての個別損失関数と、それぞれのデータセットに対応する予測値のセットと、オブジェクトのサブリストと、それぞれのデータセットに対応する記録値のセット中の非空エントリとに基づいて、それぞれのデータセットについての誤差を決定することと、
それぞれのクライアントコンピューティングデバイスによって、それぞれのデータセットについての1つまたは複数の個別パラメータを更新することと、
それぞれのクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、1つまたは複数のフィードバック値が、予測値のセットの改善に対応する部分表現の変化を決定するために使用される、
によってクライアントコンピューティングデバイスによって決定される、
管理コンピューティングデバイスによって、オブジェクトのサブリストと、クライアントコンピューティングデバイスからの1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
管理コンピューティングデバイスによって、1つまたは複数のアグリゲートされたフィードバック値に基づいて1つまたは複数の共有パラメータを更新することと、
コンピューティングデバイスによって、データセットに対応する予測値の追加のセットを決定するために、共有表現、共有関数、あるいは1つまたは複数の共有パラメータを使用することと
を備える、コンピュータ実装方法である。

Claims (27)

  1. 管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、前記複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
    前記管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、前記複数のデータセットのうちの各データセットの識別子の前記リストの組合せを備える識別子の複合リストとを決定することと、
    前記管理コンピューティングデバイスによって、前記複数のデータセットの中から一意のオブジェクトのセットを決定することと、
    前記管理コンピューティングデバイスによって、識別子の前記複合リストから識別子のサブセットを選択することと、
    前記管理コンピューティングデバイスによって、識別子の前記サブセット中の各識別子に対応する一意のオブジェクトの前記セットのサブセットを決定することと、
    前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットの前記サブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、前記データセットの共有表現を計算することと、
    前記管理コンピューティングデバイスによって、前記それぞれのデータセットについての識別子の前記リストとの識別子の前記サブセットの共通部分に基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについてオブジェクトのサブセットを決定することと、
    前記管理コンピューティングデバイスによって、前記それぞれのデータセットについてのオブジェクトの前記サブセットと、前記共有表現とに基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについて部分表現を決定することと、
    前記管理コンピューティングデバイスによって、1つまたは複数のフィードバック値を収集することと、ここにおいて、前記1つまたは複数のフィードバック値の各々が、前記それぞれのデータセットに対応する記録値の前記セットと比較された予測値のセットの改善に対応する前記部分表現の変化として決定される、
    前記管理コンピューティングデバイスによって、オブジェクトの前記サブセットと、前記クライアントコンピューティングデバイスからの前記1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
    前記管理コンピューティングデバイスによって、前記1つまたは複数のアグリゲートされたフィードバック値に基づいて前記1つまたは複数の共有パラメータを更新することと
    を備える、機械学習のための方法。
  2. 各データセットが、複数の次元においてオブジェクトを備え、前記データセットの各々についての前記複数の次元のうちの少なくとも1つにおける前記オブジェクトが、同じタイプである、請求項1に記載の方法。
  3. 各データセットの識別子の前記それぞれのリストが、各データセットについてのオブジェクトのセットに対応し、ここにおいて、前記複数のデータセットの前記識別子が、共通のシンタックスに従って定義される、請求項1または2に記載の方法。
  4. 前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に、前記それぞれのデータセットについてのオブジェクトの前記サブセットと、前記それぞれのデータセットについての前記部分表現とを送信することをさらに備え、前記収集することが、前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスのうちの少なくとも1つから1つまたは複数のフィードバック値を受信することを備える、先行する請求項のいずれか一項に記載の方法。
  5. 前記1つまたは複数のフィードバック値は、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットに対応する予測値のセットを決定することと、ここにおいて、予測値の前記セットが、前記それぞれのデータセットに対応する前記部分表現と、1つまたは複数の個別パラメータをもつ個別関数とに基づく、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについての個別損失関数と、前記それぞれのデータセットに対応する予測値の前記セットと、オブジェクトの前記サブセットと、前記それぞれのデータセットに対応する記録値の前記セット中の非空エントリとに基づいて、前記それぞれのデータセットについての誤差を決定することと、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについての前記1つまたは複数の個別パラメータを更新することと、
    前記それぞれのクライアントコンピューティングデバイスによって、前記1つまたは複数のフィードバック値を決定することと、ここにおいて、前記1つまたは複数のフィードバック値が、予測値の前記セットの改善に対応する前記部分表現の変化を決定するために使用される、
    によって、前記クライアントコンピューティングデバイスによって決定される、請求項4に記載の方法。
  6. 前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に、前記共有関数と、前記1つまたは複数の共有パラメータとを送信することをさらに備える、請求項4または5に記載の方法。
  7. 前記管理コンピューティングデバイスによって、前記複数のデータセットの中から一意のオブジェクトの前記セットを決定することが、
    前記管理コンピューティングデバイスによって、各データセットからの前記オブジェクトの組合せであるオブジェクトの複合セットを作成することと、
    前記管理コンピューティングデバイスによって、前記複数のデータセットの各々についての識別子の前記リストの共通部分に基づいて、オブジェクトの前記複合セットから重複オブジェクトを削除することと
    を備える、先行する請求項のいずれか一項に記載の方法。
  8. 前記それぞれのデータセットについての前記誤差を決定することは、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットに対応する記録値の前記セット中の前記非空エントリのうちのどれが、オブジェクトの前記サブセット中のオブジェクトに対応するかを識別することと、
    前記それぞれのクライアントコンピューティングデバイスによって、各識別された非空エントリと、前記それぞれのデータセットに対応する予測値の前記セット中のそれの対応する予測値との間の前記個別損失関数を適用することによって、前記それぞれのデータセットに対応する記録値の前記セット中の前記識別された非空エントリの各々についての部分誤差値を決定することと、
    前記それぞれのクライアントコンピューティングデバイスによって、前記部分誤差値を組み合わせることと
    を備える、請求項5に記載の方法。
  9. 前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットと、前記共有関数と、前記1つまたは複数の共有パラメータとに基づいて、前記データセットの最終共有表現を計算することと、
    前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に前記データセットの前記最終共有表現を送信することと
    をさらに備える、先行する請求項のいずれか一項に記載の方法。
  10. 前記データセットの前記最終共有表現が、前記それぞれのデータセットに対応する予測値の最終セットを決定するために前記クライアントコンピューティングデバイスの各々によって使用可能である、請求項9に記載の方法。
  11. 前記それぞれのデータセットに対応する予測値の前記最終セットを決定することが、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについてオブジェクトの前記サブセットを受信することと、
    前記それぞれのクライアントコンピューティングデバイスによって、オブジェクトの前記サブセットと、前記最終共有表現とに基づいて、それぞれのデータセットについて最終部分表現を決定することと、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットに対応する前記最終部分表現と、前記個別関数と、前記1つまたは複数の個別パラメータとに基づいて、前記それぞれのデータセットに対応する予測値の前記最終セットを決定することと
    を備える、請求項10に記載の方法。
  12. 前記クライアントコンピューティングデバイスの各々からの前記1つまたは複数のフィードバック値が逆伝搬誤差に基づく、請求項5に記載の方法。
  13. 前記複数のデータセットの各々が、等しい次元数を備える、先行する請求項のいずれか一項に記載の方法。
  14. 前記複数のデータセットの各々がテンソルによって表され、
    前記複数のデータセットのうちの少なくとも1つがスパーステンソルによって表される、
    先行する請求項のいずれか一項に記載の方法。
  15. 前記管理コンピューティングデバイスによって、識別子の前記複合リストから識別子の追加のサブセットを選択することと、
    前記管理コンピューティングデバイスによって、識別子の前記追加のサブセット中の各識別子に対応する一意のオブジェクトの前記セットの追加のサブセットを決定することと、
    前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットの前記追加のサブセットと、前記1つまたは複数の共有パラメータを有する前記共有関数とに基づいて、前記データセットの修正された共有表現を計算することと、
    前記管理コンピューティングデバイスによって、前記それぞれのデータセットについての識別子の前記リストとの識別子の前記追加のサブセットの共通部分に基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについてオブジェクトの追加のサブセットを決定することと、
    前記管理コンピューティングデバイスによって、前記それぞれのデータセットについてのオブジェクトの前記追加のサブセットと、前記修正された共有表現とに基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについて、修正された部分表現を決定することと、
    前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に、
    前記それぞれのデータセットについてのオブジェクトの前記追加のサブセットと、
    前記それぞれのデータセットについての前記修正された部分表現と
    を送信することと、
    前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスのうちの少なくとも1つから、1つまたは複数の修正されたフィードバック値を受信することと、ここにおいて、前記1つまたは複数の修正されたフィードバック値は、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットに対応する予測値の修正されたセットを決定することと、ここにおいて、予測値の前記修正されたセットが、前記それぞれのデータセットに対応する前記修正された部分表現と、前記1つまたは複数の個別パラメータをもつ前記個別関数とに基づく、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについての前記個別損失関数と、前記それぞれのデータセットに対応する予測値の前記修正されたセットと、オブジェクトの前記追加のサブセットと、前記それぞれのデータセットに対応する記録値の前記セット中の前記非空エントリとに基づいて、前記それぞれのデータセットについての修正された誤差を決定することと、
    前記それぞれのクライアントコンピューティングデバイスによって、前記それぞれのデータセットについての前記1つまたは複数の個別パラメータを更新することと、
    前記それぞれのクライアントコンピューティングデバイスによって、前記1つまたは複数の修正されたフィードバック値を決定することと、ここにおいて、前記1つまたは複数の修正されたフィードバック値が、予測値の前記セットの改善に対応する前記修正された部分表現の変化を決定するために使用される、
    によって前記クライアントコンピューティングデバイスによって決定される、
    前記管理コンピューティングデバイスによって、オブジェクトの前記追加のサブセットと、前記1つまたは複数の修正されたフィードバック値とに基づいて、1つまたは複数の修正されたアグリゲートされたフィードバック値を決定することと、
    前記管理コンピューティングデバイスによって、前記1つまたは複数の修正されたアグリゲートされたフィードバック値に基づいて前記1つまたは複数の共有パラメータを更新することと、
    前記管理コンピューティングデバイスによって、前記1つまたは複数の修正されたアグリゲートされたフィードバック値に基づいて、すべてのそれぞれのデータセットについての前記修正された誤差に対応するアグリゲートされた誤差が最小限に抑えられたと決定することと
    をさらに備える、請求項5に記載の方法。
  16. 前記管理コンピューティングデバイスによって、同様の関係をモデル化するために使用される関係する共有関数に基づいて、前記共有関数と、前記1つまたは複数の共有パラメータとを初期化することをさらに備える、先行する請求項のいずれか一項に記載の方法。
  17. 前記クライアントコンピューティングデバイスによって前記1つまたは複数のフィードバック値を決定することが、前記それぞれのクライアントコンピューティングデバイスによって、乱数生成器または擬似乱数生成器に基づいて、前記それぞれのデータセットに対応する前記個別関数と、前記1つまたは複数の個別パラメータとを初期化することをさらに備える、請求項5に記載の方法。
  18. 前記複数のデータセットの各々が、少なくとも2つの次元を備え、
    前記複数のデータセットの各々の第1の次元が、複数の化学的化合物を備え、
    前記複数のデータセットの各々の第2の次元が、前記化学的化合物の記述子を備え、
    前記複数のデータセットの各々中のエントリは、それぞれの化学的化合物がそれぞれの記述子を示すかどうかのバイナリ指標に対応し、
    前記複数のデータセットの各々に対応する記録値の前記セットの各々が、少なくとも2つの次元を備え、
    記録値の前記セットの各々の第1の次元が、前記複数の化学的化合物を備え、
    記録値の前記セットの各々の第2の次元が、複数の生物学的アッセイにおける前記化学的化合物の活動性を備え、
    記録値の前記セットの各々中のエントリは、それぞれの化学的化合物がそれぞれの活動性を示すかどうかのバイナリ指標に対応する、
    先行する請求項のいずれか一項に記載の方法。
  19. 前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットと、前記共有関数と、前記1つまたは複数の共有パラメータとに基づいて、前記データセットの最終共有表現を計算することと、
    前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に前記データセットの前記最終共有表現を送信することと
    をさらに備え、
    ここにおいて、前記データセットの前記最終共有表現が、前記それぞれのデータセットに対応する予測値の最終セットを決定するために前記クライアントコンピューティングデバイスの各々によって使用可能であり、および
    ここにおいて、予測値の前記最終セットが、前記複数の化学的化合物の中で1つまたは複数の有効な治療化合物を識別するために前記クライアントコンピューティングデバイスのうちの少なくとも1つによって使用される、
    請求項18に記載の方法。
  20. 前記複数のデータセットの各々が、少なくとも2つの次元を備え、
    前記複数のデータセットの各々の第1の次元が、複数の患者を備え、
    前記複数のデータセットの各々の第2の次元が、前記患者の記述子を備え、
    前記複数のデータセットの各々中のエントリは、それぞれの患者がそれぞれの記述子を示すかどうかのバイナリ指標に対応し、
    前記複数のデータセットの各々に対応する記録値の前記セットの各々が、少なくとも2つの次元を備え、
    記録値の前記セットの各々の第1の次元が、前記複数の患者を備え、
    記録値の前記セットの各々の第2の次元が、前記患者の臨床診断を備え、
    記録値の前記セットの各々中のエントリは、それぞれの患者がそれぞれの臨床診断を示すかどうかのバイナリ指標に対応する、
    請求項1〜17のいずれか一項に記載の方法。
  21. 前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットと、前記共有関数と、前記1つまたは複数の共有パラメータとに基づいて、前記データセットの最終共有表現を計算することと、
    前記管理コンピューティングデバイスによって、前記クライアントコンピューティングデバイスの各々に前記データセットの前記最終共有表現を送信することと
    をさらに備え、
    ここにおいて、前記データセットの前記最終共有表現が、前記それぞれのデータセットに対応する予測値の最終セットを決定するために前記クライアントコンピューティングデバイスの各々によって使用可能であり、および
    ここにおいて、予測値の前記最終セットが、前記複数の患者のうちの少なくとも1人を診断するために前記クライアントコンピューティングデバイスのうちの少なくとも1つによって使用される、
    請求項20に記載の方法。
  22. 前記複数のデータセットのうちの1つに対応する予測値の前記セットの各々が、予測値テンソルに対応し、
    前記予測値テンソルが、第2のテンソルによって乗算される第1のテンソルに分解され、
    前記第1のテンソルが、前記1つまたは複数の共有パラメータによって乗算される前記それぞれのデータセットに対応する、
    請求項5に記載の方法。
  23. 前記それぞれのデータセットが、前記データセットの前記オブジェクトに関するサイド情報を符号化する、請求項22に記載の方法。
  24. 前記予測値テンソルが、Macau分解方法を使用して分解される、請求項22に記載の方法。
  25. 命令がその上に記憶された非一時的コンピュータ可読媒体であって、前記命令は、
    複数のデータセットを受信することと、ここにおいて、前記複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
    各データセットについての識別子のそれぞれのリストと、前記複数のデータセットのうちの各データセットの識別子の前記リストの組合せを備える識別子の複合リストとを決定することと、
    前記複数のデータセットの中から一意のオブジェクトのセットを決定することと、
    識別子の前記複合リストから識別子のサブセットを選択することと、
    識別子の前記サブセット中の各識別子に対応する一意のオブジェクトの前記セットのサブセットを決定することと、
    一意のオブジェクトの前記セットの前記サブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、前記データセットの共有表現を計算することと、
    前記それぞれのデータセットについての識別子の前記リストとの識別子の前記サブセットの共通部分に基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについてオブジェクトのサブセットを決定することと、
    前記それぞれのデータセットについてのオブジェクトの前記サブセットと、前記共有表現とに基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについて部分表現を決定することと、
    1つまたは複数のフィードバック値を収集することと、ここにおいて、前記1つまたは複数のフィードバック値の各々が、前記それぞれのデータセットについての記録値の前記セットに対する前記部分表現の予測の関係に基づいて決定される、
    オブジェクトの前記サブセットと、前記クライアントコンピューティングデバイスからの前記1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
    前記1つまたは複数のアグリゲートされたフィードバック値に基づいて前記1つまたは複数の共有パラメータを更新することと
    を備える方法を実施するようにプロセッサによって実行可能である、非一時的コンピュータ可読媒体。
  26. モデルがその上に記憶されたメモリであって、前記モデルは、
    管理コンピューティングデバイスによって、複数のデータセットを受信することと、ここにおいて、前記複数のデータセットのうちの各データセットが、複数のクライアントコンピューティングデバイスのうちのそれぞれのクライアントコンピューティングデバイスから受信され、ここにおいて、各データセットが記録値のセットに対応し、およびここにおいて、各データセットがオブジェクトを備える、
    前記管理コンピューティングデバイスによって、各データセットについての識別子のそれぞれのリストと、前記複数のデータセットのうちの各データセットの識別子の前記リストの組合せを備える識別子の複合リストとを決定することと、
    前記管理コンピューティングデバイスによって、前記複数のデータセットの中から一意のオブジェクトのセットを決定することと、
    前記管理コンピューティングデバイスによって、識別子の前記複合リストから識別子のサブセットを選択することと、
    前記管理コンピューティングデバイスによって、識別子の前記サブセット中の各識別子に対応する一意のオブジェクトの前記セットのサブセットを決定することと、
    前記管理コンピューティングデバイスによって、一意のオブジェクトの前記セットの前記サブセットと、1つまたは複数の共有パラメータを有する共有関数とに基づいて、前記データセットの共有表現を計算することと、
    前記管理コンピューティングデバイスによって、前記それぞれのデータセットについての識別子の前記リストとの識別子の前記サブセットの共通部分に基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについてオブジェクトのサブセットを決定することと、
    前記管理コンピューティングデバイスによって、前記それぞれのデータセットについてのオブジェクトの前記サブセットと、前記共有表現とに基づいて、各クライアントコンピューティングデバイスの前記それぞれのデータセットについて部分表現を決定することと、
    前記管理コンピューティングデバイスによって、1つまたは複数のフィードバック値を収集することと、ここにおいて、前記1つまたは複数のフィードバック値の各々が、前記それぞれのデータセットについての記録値の前記セットに対する前記部分表現の予測の関係に基づいて決定される、
    前記管理コンピューティングデバイスによって、オブジェクトの前記サブセットと、前記クライアントコンピューティングデバイスからの前記1つまたは複数のフィードバック値とに基づいて、1つまたは複数のアグリゲートされたフィードバック値を決定することと、
    前記管理コンピューティングデバイスによって、前記1つまたは複数のアグリゲートされたフィードバック値に基づいて前記1つまたは複数の共有パラメータを更新することと、
    前記管理コンピューティングデバイスによって、前記メモリ上に、前記共有表現と、前記共有関数と、前記1つまたは複数の共有パラメータとを記憶することと
    を備える方法に従って生成される、メモリ。
  27. 機械学習のための方法であって、
    第1のクライアントコンピューティングデバイスによって管理コンピューティングデバイスに、前記第1のクライアントコンピューティングデバイスに対応する第1のデータセットを送信することと、
    ここにおいて、前記第1のデータセットが、複数のクライアントコンピューティングデバイスによって前記管理コンピューティングデバイスに送信される複数のデータセットのうちの1つであり、
    ここにおいて、各データセットが記録値のセットに対応し、および
    ここにおいて、各データセットがオブジェクトを備える、
    前記第1のクライアントコンピューティングデバイスによって、前記第1のデータセットについてのオブジェクトの第1のサブセットと、前記第1のデータセットについての第1の部分表現とを受信することと、ここにおいて、オブジェクトの前記第1のサブセットが、前記複数のデータセットの共有表現を形成することの一部である前記第1のデータセットの前記オブジェクトのサブセットであり、前記共有表現が、1つまたは複数の共有パラメータを有する共有関数によって定義され、前記第1のデータセットの前記部分表現が、オブジェクトの前記第1のサブセットと、前記共有表現とに基づく、
    前記第1のクライアントコンピューティングデバイスによって、前記第1のデータセットに対応する予測値の第1のセットを決定することと、ここにおいて、予測値の前記第1のセットが、前記第1のデータセットに対応する前記第1の部分表現と、1つまたは複数の第1の個別パラメータをもつ第1の個別関数とに基づく、
    前記第1のクライアントコンピューティングデバイスによって、前記第1のデータセットについての第1の個別損失関数と、前記第1のデータセットに対応する予測値の前記第1のセットと、オブジェクトの前記第1のサブセットと、前記第1のデータセットに対応する記録値の前記セット中の非空エントリとに基づいて、前記第1のデータセットについての第1の誤差を決定することと、
    前記第1のクライアントコンピューティングデバイスによって、前記第1のデータセットについての前記1つまたは複数の第1の個別パラメータを更新することと、
    前記第1のクライアントコンピューティングデバイスによって、1つまたは複数のフィードバック値を決定することと、ここにおいて、前記1つまたは複数のフィードバック値が、予測値の前記第1のセットの改善に対応する前記第1の部分表現の変化を決定するために使用される、
    前記第1のクライアントコンピューティングデバイスによって前記管理コンピューティングデバイスに、前記1つまたは複数のフィードバック値を送信することと
    を備え、
    ここにおいて、前記1つまたは複数のフィードバック値が、1つまたは複数のアグリゲートされたフィードバック値を決定するために前記複数のクライアントコンピューティングデバイスからのオブジェクトのサブセットとともに前記管理コンピューティングデバイスによって使用可能であり、および
    ここにおいて、前記1つまたは複数のアグリゲートされたフィードバック値が、前記1つまたは複数の共有パラメータを更新するために前記管理コンピューティングデバイスによって使用可能である、
    方法。
JP2020539142A 2017-10-02 2018-10-01 セキュアなブローカーによって媒介されるデータ分析および予測 Active JP7374905B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/722,742 US20190102670A1 (en) 2017-10-02 2017-10-02 Secure Broker-Mediated Data Analysis and Prediction
US15/722,742 2017-10-02
PCT/EP2018/076598 WO2019068616A1 (en) 2017-10-02 2018-10-01 DATA ANALYSIS AND PREDICTION WITH SECURED BROKER INTERMEDIATE

Publications (2)

Publication Number Publication Date
JP2020537797A true JP2020537797A (ja) 2020-12-24
JP7374905B2 JP7374905B2 (ja) 2023-11-07

Family

ID=63862100

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020539142A Active JP7374905B2 (ja) 2017-10-02 2018-10-01 セキュアなブローカーによって媒介されるデータ分析および予測

Country Status (4)

Country Link
US (2) US20190102670A1 (ja)
EP (1) EP3692475A1 (ja)
JP (1) JP7374905B2 (ja)
WO (1) WO2019068616A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220102166A (ko) * 2021-01-11 2022-07-20 연세대학교 산학협력단 물리적 데이터 공유 없이 수평분할 기반 중앙화 모델을 추정하기 위한 가중치 기반 통합 방법

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11153156B2 (en) 2017-11-03 2021-10-19 Vignet Incorporated Achieving personalized outcomes with digital therapeutic applications
US11645552B2 (en) * 2018-03-11 2023-05-09 International Business Machines Corporation Travel health optimization simulating health impact of intended user travel using cognitive analytics based on conditions at a geographic location
US11599894B2 (en) * 2018-06-29 2023-03-07 Tata Consultancy Services Limited Method and system for generating customer decision tree through machine learning
US11093883B2 (en) * 2018-08-03 2021-08-17 Camelot Uk Bidco Limited Apparatus, method, and computer-readable medium for determining a drug for manufacture
KR101990326B1 (ko) * 2018-11-28 2019-06-18 한국인터넷진흥원 감가율 자동 조정 방식의 강화 학습 방법
US11556839B1 (en) * 2019-01-15 2023-01-17 Amazon Technologies, Inc. Auditing system for machine learning decision system
US11030701B1 (en) * 2019-02-12 2021-06-08 State Farm Mutual Automobile Insurance Company Systems and methods for electronically matching online user profiles
US11562245B2 (en) * 2019-09-27 2023-01-24 Sap Se Neural network model generation and distribution with client feedback
US11431663B2 (en) * 2019-10-24 2022-08-30 Salesforce, Inc. Technologies for predicting personalized message send times
WO2022025282A1 (ja) * 2020-07-31 2022-02-03 TechMagic株式会社 学習制御システム
US11456080B1 (en) 2020-08-05 2022-09-27 Vignet Incorporated Adjusting disease data collection to provide high-quality health data to meet needs of different communities
US11056242B1 (en) 2020-08-05 2021-07-06 Vignet Incorporated Predictive analysis and interventions to limit disease exposure
US11504011B1 (en) 2020-08-05 2022-11-22 Vignet Incorporated Early detection and prevention of infectious disease transmission using location data and geofencing
US11127506B1 (en) 2020-08-05 2021-09-21 Vignet Incorporated Digital health tools to predict and prevent disease transmission
US11281553B1 (en) 2021-04-16 2022-03-22 Vignet Incorporated Digital systems for enrolling participants in health research and decentralized clinical trials
US11586524B1 (en) 2021-04-16 2023-02-21 Vignet Incorporated Assisting researchers to identify opportunities for new sub-studies in digital health research and decentralized clinical trials
US11789837B1 (en) 2021-02-03 2023-10-17 Vignet Incorporated Adaptive data collection in clinical trials to increase the likelihood of on-time completion of a trial
US11901083B1 (en) 2021-11-30 2024-02-13 Vignet Incorporated Using genetic and phenotypic data sets for drug discovery clinical trials
US11705230B1 (en) 2021-11-30 2023-07-18 Vignet Incorporated Assessing health risks using genetic, epigenetic, and phenotypic data sources

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013117921A (ja) * 2011-12-05 2013-06-13 Nippon Telegr & Teleph Corp <Ntt> ランキング関数学習装置、方法、及びプログラム
JP2014095931A (ja) * 2012-11-07 2014-05-22 Okinawa Institute Of Science And Technology Graduate Univ データ通信システム、データ解析装置、データ通信方法、および、プログラム
US20170220949A1 (en) * 2016-01-29 2017-08-03 Yahoo! Inc. Method and system for distributed deep machine learning

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10380500B2 (en) 2015-09-24 2019-08-13 Microsoft Technology Licensing, Llc Version control for asynchronous distributed machine learning
US10579938B2 (en) * 2016-01-20 2020-03-03 Fair Isaac Corporation Real time autonomous archetype outlier analytics
US10984008B2 (en) * 2016-06-19 2021-04-20 Data.World, Inc. Collaborative dataset consolidation via distributed computer networks
US10515085B2 (en) * 2016-06-19 2019-12-24 Data.World, Inc. Consolidator platform to implement collaborative datasets via distributed computer networks
US11036716B2 (en) * 2016-06-19 2021-06-15 Data World, Inc. Layered data generation and data remediation to facilitate formation of interrelated data in a system of networked collaborative datasets
US10645548B2 (en) * 2016-06-19 2020-05-05 Data.World, Inc. Computerized tool implementation of layered data files to discover, form, or analyze dataset interrelations of networked collaborative datasets
US10776760B2 (en) * 2017-11-17 2020-09-15 The Boeing Company Machine learning based repair forecasting
US10990593B2 (en) * 2018-05-04 2021-04-27 Saleforce.com, inc. Providing matching security between data stores in a database system
US11341367B1 (en) * 2019-03-29 2022-05-24 Amazon Technologies, Inc. Synthetic training data generation for machine learning

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013117921A (ja) * 2011-12-05 2013-06-13 Nippon Telegr & Teleph Corp <Ntt> ランキング関数学習装置、方法、及びプログラム
JP2014095931A (ja) * 2012-11-07 2014-05-22 Okinawa Institute Of Science And Technology Graduate Univ データ通信システム、データ解析装置、データ通信方法、および、プログラム
US20170220949A1 (en) * 2016-01-29 2017-08-03 Yahoo! Inc. Method and system for distributed deep machine learning

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KONECNY,JAKUB: "Federated Learning: Strategies for Improving Communication Efficiency", ARXIV:1610.05492V1, JPN6022040694, 18 October 2016 (2016-10-18), ISSN: 0004888367 *
SHOKRI, REZA: "Privacy-Preserving Deep Learning", CCS’15: PROCEEDINGS OF THE 22ND ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, JPN6022040695, 12 October 2015 (2015-10-12), ISSN: 0004888368 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220102166A (ko) * 2021-01-11 2022-07-20 연세대학교 산학협력단 물리적 데이터 공유 없이 수평분할 기반 중앙화 모델을 추정하기 위한 가중치 기반 통합 방법
KR102519218B1 (ko) 2021-01-11 2023-04-07 연세대학교 산학협력단 물리적 데이터 공유 없이 수평분할 기반 중앙화 모델을 추정하기 위한 가중치 기반 통합 방법

Also Published As

Publication number Publication date
US20200265293A1 (en) 2020-08-20
EP3692475A1 (en) 2020-08-12
US20190102670A1 (en) 2019-04-04
US11615288B2 (en) 2023-03-28
JP7374905B2 (ja) 2023-11-07
WO2019068616A1 (en) 2019-04-11

Similar Documents

Publication Publication Date Title
JP7374905B2 (ja) セキュアなブローカーによって媒介されるデータ分析および予測
Beaulieu-Jones et al. Machine learning for patient risk stratification: standing on, or looking over, the shoulders of clinicians?
EP3223183B1 (en) Case-based reasoning in the cloud using deep learning
US11270263B2 (en) Blockchain-based crowdsourced initiatives tracking system
Shah et al. Mining patient opinion to evaluate the service quality in healthcare: a deep-learning approach
Zehlike et al. Matching code and law: achieving algorithmic fairness with optimal transport
US20100100398A1 (en) Social network interface
US20130332195A1 (en) System and methods for epidemiological data collection, management and display
US20210326785A1 (en) Continuous and anonymous risk evaluation
Kashyap Big Data Analytics challenges and solutions
Dash et al. Summarizing user-generated textual content: Motivation and methods for fairness in algorithmic summaries
US20140006166A1 (en) System and method for determining offers based on predictions of user interest
US11663492B2 (en) Alife machine learning system and method
US20230023630A1 (en) Creating predictor variables for prediction models from unstructured data using natural language processing
Chen et al. A novel weighted evidence combination rule based on improved entropy function with a diagnosis application
Wang et al. EHR STAR: the state‐of‐the‐art in interactive EHR visualization
Cournane et al. Predicting outcomes in emergency medical admissions using a laboratory only nomogram
US20190197585A1 (en) Systems and methods for data storage and retrieval with access control
Wee et al. Automated triaging medical referral for otorhinolaryngology using data mining and machine learning techniques
Laqueur et al. Machine learning analysis of handgun transactions to predict firearm suicide risk
Khaleghi et al. A tree based approach for multi-class classification of surgical procedures using structured and unstructured data
Izenman et al. Local spatial biclustering and prediction of urban juvenile delinquency and recidivism
Holdship et al. Developing a multivariate predictive model of hospital outpatient attendance for patients of all ages
Kasaie et al. Integrating machine learning algorithms and explainable artificial intelligence approach for predicting patient unpunctuality in psychiatric clinics
US11501880B1 (en) Anonymizing genetic datasets in a disparate computing environment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210927

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230411

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230616

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230704

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230704

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230926

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231025

R150 Certificate of patent or registration of utility model

Ref document number: 7374905

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150