JP7439125B2 - 保護されたデータに対する分散型プライバシー保全コンピューティング - Google Patents

保護されたデータに対する分散型プライバシー保全コンピューティング Download PDF

Info

Publication number
JP7439125B2
JP7439125B2 JP2021557379A JP2021557379A JP7439125B2 JP 7439125 B2 JP7439125 B2 JP 7439125B2 JP 2021557379 A JP2021557379 A JP 2021557379A JP 2021557379 A JP2021557379 A JP 2021557379A JP 7439125 B2 JP7439125 B2 JP 7439125B2
Authority
JP
Japan
Prior art keywords
data
algorithm
asset
data asset
validation
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.)
Active
Application number
JP2021557379A
Other languages
English (en)
Other versions
JPWO2020198542A5 (ja
JP2022526948A (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.)
University of California
Original Assignee
University of California
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 University of California filed Critical University of California
Publication of JP2022526948A publication Critical patent/JP2022526948A/ja
Publication of JPWO2020198542A5 publication Critical patent/JPWO2020198542A5/ja
Application granted granted Critical
Publication of JP7439125B2 publication Critical patent/JP7439125B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • 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/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Geometry (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

関連出願の相互参照
本出願は、2019年12月16日に出願された、「DISTRIBUTED PRIVACY-PRESERVING COMPUTING ON PROTECTED DATA」と題する米国仮出願第62/948,556号および2019年3月26日に出願された「FEDERATED MACHINE LEARNING TECHNIQUES FOR HIGHLY CURATED HEALTH-CARE DATA SETS」と題する米国仮出願第62/824,183号の優先権および利益を主張するものであり、その全内容はあらゆる目的で参照により本明細書に組み入れられる。
分野
本発明は、プライバシー保全コンピューティングに関し、特に、プライバシー保護された整合化データの複数のソースに対する分散解析を利用して人工知能アプリケーションおよび/またはアルゴリズムを開発するための技術(例えば、システム、方法、1つまたは複数のプロセッサによって実行可能なコードまたは命令を格納するコンピュータプログラム製品)に関する。本発明は、プライバシー保護された整合化された臨床データおよび健康データを使用して規制された医療用途のための人工知能アルゴリズムを開発するのに特に有効である。
背景
クラウド計算、データ並列クラスタ計算、および高性能計算を含む最新の計算パラダイムは、広く利用可能な様々な機械学習および深層学習アルゴリズムアーキテクチャと組み合わされて、基礎となるアルゴリズムを適切に最適化するのに十分なデータが利用可能であれば、ほぼあらゆる産業の問題を解決するための膨大な数の人工知能(artificial intelligence(AI))アプリケーションを開発することができる環境を作り出している。データへのアクセスがAIアプリケーションの開発に対する主要な障壁であることは今や明らかである。実際、多くの産業では、ロバストで一般化可能なAIを作成するために、様々なソースからのデータを使用する必要がある。課題は、一般に、データの所有者が、データを共有することができないか、または共有しないか、またはデータが自分の管理を離れることを許容しないことである。データは資産であり、機密性の高いプライベートデータおよび/または個人データを含むことが多く、共有を困難または不可能にする方法で規制することができるため、これは無理もないことである。これらの課題は、医療AIの開発において克服することが特に困難である。
全世界の格納データのうち、約30%が医療にあり、そのことがAIアルゴリズムの開発と資金提供を劇化させている。AIおよび機械学習(「ML」)によって作成された洞察は、臨床的判断を強化し、処置精度を可能にし、デジタル治療法を作成するために必要な複雑なデータ内の関連性(すなわち、相関)を学習する可能性を秘めている。医療AIは、バイオテクノロジー、医薬品、医療情報技術、解析および遺伝子検査、ならびに医療機器の分野に関係がある。機械学習システムを含む人工知能アプローチは、複雑なデータ内のパターンを識別することができる。一般に、アルゴリズムおよびモデルを作成するために利用されるデータの忠実度および多様性が高いほど、アルゴリズムおよびモデルは多様な環境および集団にわたってより正確かつ一貫して機能する。よって、これらのAIアプローチは、モデルを開発、最適化、および検証するために、多様な高忠実度データへのアクセスを必要とする。しかしながら、ほとんどのAIアルゴリズム開発者らには、データにアクセスするための大きな障壁を打開することなく開発者らのアルゴリズムおよびモデルを訓練、試験、および検証するのに十分な忠実度および多様性を有する医療データ資産がない。さらに、AIアルゴリズム開発者らに十分なデータ資産がある場合でも、第三者の検証を行う開発者はほとんどおらず、その結果、本質的に概念研究の証明であり、生産または臨床環境に適用できる解決策ではないアルゴリズムおよびモデルが得られることになる。生産または臨床使用のためのAIモデルおよびアルゴリズムのさらなる開発は、高い忠実度、多様性、プライバシー保護データへのタイムリーなアクセスという大きな障害によって著しく妨げられるようである。
医療には、患者情報のプライバシーを維持するための規制要件、法的要件、および倫理的要件がある。プライバシーの目的には、不正アクセスからデータを防護すること、個人のプライバシーの同意に従って使用の透明性を提供すること、および可能な限り個人を特定できるデータの使用を最小限に抑えることが含まれる。よって、データプライバシーおよびその保護が、高忠実度の、リアルタイムの、多様なデータへのタイムリーなアクセスを必要とするAIの障壁である。医療AIにおける機会は、プライバシー保全コンピューティングを利用して、識別可能な情報を公開するリスクを排除することである。これらの考慮事項は、データの機密性(例えば、企業秘密や個人に関するプライベートデータを含むかどうか)が、データの保護に責任を負う組織の境界外でのデータの共有を妨げる多くの産業におけるAIの開発に当てはまる。したがって、高忠実度の多様なデータへのタイムリーなアクセスを容易にするために、複数の組織にわたってプライバシー保全コンピューティングを確立する必要性が存在する。
簡単な概要
1つまたは複数のコンピュータのシステムを、動作に際してシステムに特定の操作または動作を行わせるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせがシステムにインストールされていることによって、それらの動作を行うように構成することができる。1つまたは複数のコンピュータプログラムを、データ処理装置によって実行されると、装置に特定の操作または動作を行わせる命令を含むことによって、それらの動作を行うように構成することができる。1つの一般的な局面は、データ処理システムにおいて、アルゴリズムおよびアルゴリズムと関連付けられた入力データ要件を受け取る工程であって、入力データ要件が、データ資産がアルゴリズムで動作するための最適化および/または検証選択基準を含む、受け取る工程を含む方法を含む。この方法はまた、データ処理システムによって、データ資産を、データ資産についての最適化および/または検証選択基準に基づいてデータホストから利用可能であるものとして識別する工程も含む。この方法はまた、データ処理システムによって、データホストのインフラストラクチャ内のデータストレージ構造内のデータ資産をキュレートする工程も含む。この方法はまた、データ処理システムによって、アルゴリズムが処理するためのデータストレージ構造内のデータ資産を準備する工程も含む。この方法はまた、データ処理システムによって、アルゴリズムをセキュアなカプセル計算フレームワークに統合する工程であって、セキュアなカプセル計算フレームワークがアルゴリズムを、データストレージ構造内のデータ資産に、データ資産およびアルゴリズムのプライバシーを保全するセキュアな方法で提供する、統合する工程も含む。この方法はまた、データ処理システムによって、データ資産をアルゴリズムを通して動作させる工程も含む。この局面の他の態様は、方法の動作を行うように各々構成された、対応するコンピュータシステム、装置、および1つまたは複数のコンピュータ記憶デバイスに記録されたコンピュータプログラムを含む。
実施態様は、以下の特徴のうちの1つまたは複数を含み得る。アルゴリズムおよび入力データ要件が、データホストとは異なるエンティティであるアルゴリズム開発者から受け取られ、最適化および/または検証選択基準が、データ資産がアルゴリズムで動作するための特性、フォーマットおよび要件を定義する方法。データ資産の特性および要件が、(i)アルゴリズムの環境、(ii)入力データ内の例の配分、(iii)入力データを生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、(v)アルゴリズムによって実装されたタスク、または(vi)それらの任意の組み合わせに基づいて定義される方法。データ処理システムによって、データホストを迎え入れる工程であって、迎え入れる工程が、アルゴリズムでのデータ資産の使用がデータプライバシー要件に準拠したものであることを確認する工程を含む、迎え入れる工程をさらに含む方法。データ資産を準備する工程が、データ資産に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の整合化トランスフォーマセットを適用する工程も含む。この方法はまた、データ処理システムによって、データ変換のためのアルゴリズムを開発するためのガイドとして使用すべき整合化プロトタイプデータセットを準備する工程であって、整合化プロトタイプデータセットが整合化プロセスのキー属性を取り込む、準備する工程も含む。この方法はまた、データ処理システムによって、整合化プロトタイプデータセット内のデータの現在のフォーマットに基づいて変換されたデータ資産の変換のための第2の整合化トランスフォーマセットを作成する工程も含む。この方法はまた、データ処理システムによって、整合化されたデータ資産を生成するために変換されたデータ資産に第2の整合化トランスフォーマセットを適用する工程も含む。この方法はまた、データ処理システムによって、整合化されたデータ資産をアルゴリズムを通して動作させる工程であって、アルゴリズムが、アルゴリズムを、データストレージ構造内の整合化されたデータ資産に、整合化されたデータ資産およびアルゴリズムのプライバシーを保全するセキュアな方法で提供するセキュアなカプセル計算フレームワーク内にある、動作させる工程も含む。この局面の他の態様は、方法の動作を行うように各々構成された、対応するコンピュータシステム、装置、および1つまたは複数のコンピュータ記憶デバイスに記録されたコンピュータプログラムを含む。
実施態様は、以下の特徴のうちの1つまたは複数を含み得る。選択基準が、データホストとは異なるエンティティであるアルゴリズム開発者から受け取られ、選択基準が、データ資産がアルゴリズムで動作するための特性、フォーマットおよび要件を定義する方法。データ資産の特性および要件が、(i)アルゴリズムの環境、(ii)入力データ内の例の配分、(iii)入力データを生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、(v)アルゴリズムによって実装されたタスク、または(vi)それらの任意の組み合わせに基づいて定義される方法。トランスフォーマ・プロトタイプ・データセットを匿名化し、匿名化されたトランスフォーマ・プロトタイプ・データセットを、データ資産の変換のための第1の整合化トランスフォーマセットを作成する目的でアルゴリズム開発者に供する工程をさらに含む方法。データ資産に第1の整合化トランスフォーマセットを適用する工程が、データ構造内で行われる方法。データ処理システムで、注釈付きデータセットを生成するために定義済み注釈付けプロトコルに従って変換されたデータ資産に注釈を付ける工程であって、変換されたデータに注釈を付ける工程がデータ構造内で行われ、整合化されたデータ資産を生成するために注釈付きデータセットに第2の整合化トランスフォーマセットが適用される、注釈を付ける工程をさらに含む方法。注釈付きデータ資産に第2の整合化トランスフォーマセットを適用する工程がデータ構造内で行われる方法。第1の整合化トランスフォーマセット、注釈、および第2の整合化トランスフォーマセットが、正常に適用され、データプライバシー要件に違反せずに適用されるかどうかを判定する工程をさらに含む方法。記載の技術の実施態様は、ハードウェア、方法もしくはプロセス、またはコンピュータアクセス可能媒体上のコンピュータソフトウェアを含み得る。
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つもしくは複数のプロセスの一部もしくは全部を行わせるように構成された命令を含む、非一時的機械可読記憶媒体において実体的に具体化されたコンピュータプログラム製品を含む。
[本発明1001]
以下の工程を含む方法:
データ処理システムにおいて、アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取る工程であって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための最適化および/または検証選択基準を含む、受け取る工程;
前記データ処理システムによって、前記データ資産を、前記データ資産についての前記最適化および/または検証選択基準に基づいて、データホストから利用可能であるものとして識別する工程;
前記データ処理システムによって、前記データホストのインフラストラクチャ内のデータストレージ構造内の前記データ資産をキュレートする工程;
前記データ処理システムによって、前記アルゴリズムが処理するための前記データストレージ構造内の前記データ資産を準備する工程;
前記データ処理システムによって、前記アルゴリズムをセキュアなカプセル計算フレームワークに統合する工程であって、前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを前記データストレージ構造内の前記データ資産に、前記データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供する、統合する工程;ならびに
前記データ処理システムによって、前記データ資産を前記アルゴリズムを通して動作させる工程。
[本発明1002]
前記アルゴリズムおよび前記入力データ要件が、前記データホストとは異なるエンティティであるアルゴリズム開発者から受け取られ、前記最適化および/または検証選択基準が、前記データ資産が前記アルゴリズムで動作するための特性、フォーマット、および要件を定義する、本発明1001の方法。
[本発明1003]
前記データ資産の前記特性および前記要件が、
(i)前記アルゴリズムの環境、(ii)前記入力データ内の例の配分、(iii)前記入力データを生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、(v)前記アルゴリズムによって実装されたタスク、または(vi)それらの任意の組み合わせ
に基づいて定義される、本発明1002の方法。
[本発明1004]
前記識別する工程が、前記データ資産内の個人に関するプライベート情報を伏せたままで、前記データ資産内のグループのパターンを記述することによって、前記データ資産内の情報を共有するための差分プライバシーを使用して行われ、
前記キュレートする工程が、複数のデータストレージ構造の中から前記データストレージ構造を選択することと、前記データホストの前記インフラストラクチャ内に前記データストレージ構造をプロビジョニングすることとを含み、
前記データストレージ構造の前記選択が、前記アルゴリズムのタイプ、前記データ資産内のデータのタイプ、前記データ処理システムのシステム要件、またはそれらの組み合わせに基づくものである、
本発明1002の方法。
[本発明1005]
前記データ処理システムによって、前記データホストを迎え入れる工程をさらに含み、
前記迎え入れる工程が、前記アルゴリズムでの前記データ資産の使用がデータプライバシー要件に準拠したものであることを確認することを含む、
本発明1001、1002、または1003の方法。
[本発明1006]
前記データ資産を準備する工程が、前記データ資産に1つもしくは複数の変換を適用すること、前記データ資産に注釈を付けること、前記データ資産を整合化すること、またはそれらの組み合わせを含む、本発明1001~1005のいずれかの方法。
[本発明1007]
前記データ資産を前記アルゴリズムを通して前記動作させる工程が、
前記モデルの複数のインスタンスを作成することと、前記データ資産を、訓練データセットと1つまたは複数の試験データセットとに分割することと、前記モデルの前記複数のインスタンスを前記訓練データセットで訓練することと、前記モデルの前記複数のインスタンスの各々の前記訓練からの結果を完全連合モデルに統合することと、前記1つまたは複数の試験データセットを前記完全連合モデルを通して動作させることと、前記1つまたは複数の試験データセットの前記動作に基づいて前記完全連合モデルの性能を計算することとを含む、訓練ワークフロー
を実行することを含む、本発明1001~1006のいずれかの方法。
[本発明1008]
前記データ資産を前記アルゴリズムを通して前記動作させる工程が、
前記データ資産を1つまたは複数の検証データセットにおいて分割することと、前記1つまたは複数の検証データセットを前記アルゴリズムを通して動作させることと、前記1つまたは複数の検証データセットの前記動作に基づいて前記アルゴリズムの性能を計算することとを含む、検証ワークフロー
を実行することを含む、本発明1001~1006のいずれかの方法。
[本発明1009]
前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを動作させるのに必要な暗号化コードを受け入れるように構成された計算インフラストラクチャ内にプロビジョニングされ、
前記計算インフラストラクチャを前記プロビジョニングすることが、前記計算インフラストラクチャ上で前記セキュアなカプセル計算フレームワークをインスタンス化することと、前記アルゴリズム開発者によって、前記暗号化コードを前記セキュアなカプセル計算フレームワークの内部に配置することと、前記セキュアなカプセル計算フレームワークがインスタンス化された後で、前記暗号化コードを復号することとを含む、
本発明1001~1008のいずれかの方法。
[本発明1010]
1つまたは複数のデータプロセッサと、
前記1つまたは複数のデータプロセッサ上で実行されると、前記1つまたは複数のデータプロセッサに、
アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取る動作であって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための最適化および/または検証選択基準を含む、受け取る動作と、
前記データ資産を、前記データ資産についての前記最適化および/または検証選択基準に基づいてデータホストから利用可能であるものとして識別する動作と、
前記データ資産を、前記データホストのインフラストラクチャ内にあるデータストレージ構造内でキュレートする動作と、
前記アルゴリズムによって処理するための前記データストレージ構造内の前記データ資産を準備する動作と、
前記アルゴリズムをセキュアなカプセル計算フレームワークに統合する動作であって、前記セキュアなカプセル計算フレームワークが前記アルゴリズムを前記データストレージ構造内の前記データ資産に、前記データ資産および前記機械学習モデルのプライバシーを保全するセキュアな方法で提供する、統合する動作と、
前記データ資産を前記アルゴリズムを通して動作させる動作と
を含む動作を行わせる命令を含む、非一時的コンピュータ可読記憶媒体と
を含む、システム。
[本発明1011]
前記アルゴリズムおよび前記入力データ要件が、前記データホストとは異なるエンティティであるアルゴリズム開発者から受け取られ、前記最適化および/または検証選択基準が、データ資産が前記アルゴリズムで動作するための特性、フォーマット、および要件を定義する、本発明1010のシステム。
[本発明1012]
前記データ資産の前記特性および前記要件が、
(i)前記アルゴリズムの環境、(ii)前記入力データ内の例の配分、(iii)前記入力データを生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、(v)前記アルゴリズムによって実装されたタスク、または(vi)それらの任意の組み合わせ
に基づいて定義される、本発明1011のシステム。
[本発明1013]
前記識別する動作が、前記データ資産内の個人に関するプライベート情報を伏せたままで、前記データ資産内のグループのパターンを記述することによって、前記データ資産内の情報を共有するための差分プライバシーを使用して行われ、
前記キュレートする動作が、複数のデータストレージ構造の中から前記データストレージ構造を選択することと、前記データホストの前記インフラストラクチャ内に前記データストレージ構造をプロビジョニングすることとを含み、
前記データストレージ構造の前記選択が、前記アルゴリズムのタイプ、前記データ資産内のデータのタイプ、前記システムの要件、またはそれらの組み合わせに基づくものである、
本発明1010のシステム。
[本発明1014]
前記動作が、前記データホストを迎え入れることをさらに含み、
前記迎え入れることが、前記アルゴリズムでの前記データ資産の使用がデータプライバシー要件に準拠したものであることを確認することを含む、
本発明1010、1011、または1012のシステム。
[本発明1015]
前記データ資産を準備する動作が、前記データ資産に1つもしくは複数の変換を適用すること、前記データ資産に注釈を付けること、前記データ資産を整合化すること、またはそれらの組み合わせを含む、本発明1010~1014のいずれかのシステム。
[本発明1016]
前記データ資産を前記アルゴリズムを通して前記動作させる動作が、
前記モデルの複数のインスタンスを作成することと、前記データ資産を、訓練データセットと1つまたは複数の試験データセットとに分割することと、前記モデルの前記複数のインスタンスを前記訓練データセットで訓練することと、前記モデルの前記複数のインスタンスの各々の前記訓練からの結果を完全連合モデルに統合することと、前記1つまたは複数の試験データセットを前記完全連合モデルによって動作させることと、前記1つまたは複数の試験データセットの前記動作に基づいて前記完全連合モデルの性能を計算することとを含む、訓練ワークフロー
を実行することを含む、本発明1010~1015のいずれかのシステム。
[本発明1017]
前記データ資産を前記アルゴリズムを通して前記動作させる動作が、
前記データ資産を1つまたは複数の検証データセットにおいて分割することと、前記1つまたは複数の検証データセットを前記アルゴリズムを通して動作させることと、前記1つまたは複数の検証データセットの前記動作に基づいて前記アルゴリズムの性能を計算することとを含む、検証ワークフロー
を実行することを含む、本発明1010~1015のいずれかのシステム。
[本発明1018]
前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを動作させるのに必要な暗号化コードを受け入れるように構成された計算インフラストラクチャ内にプロビジョニングされ、
前記計算インフラストラクチャを前記プロビジョニングすることが、前記計算インフラストラクチャ上で前記セキュアなカプセル計算フレームワークをインスタンス化することと、前記アルゴリズム開発者を通して、前記暗号化コードを前記セキュアなカプセル計算フレームワークの内部に配置することと、前記セキュアなカプセル計算フレームワークがインスタンス化された後で、前記暗号化コードを復号することとを含む、
本発明1010~1017のいずれかのシステム。
[本発明1019]
1つまたは複数のデータプロセッサに、
アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取る動作であって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための最適化および/または検証選択基準を含む、受け取る動作と、
前記データ資産を、前記データ資産についての前記最適化および/または検証選択基準に基づいてデータホストから利用可能であるものとして識別する動作と、
前記データ資産を、前記データホストのインフラストラクチャ内にあるデータストレージ構造内でキュレートする動作と、
前記アルゴリズムによって処理するための前記データストレージ構造内の前記データ資産を準備する動作と、
前記アルゴリズムをセキュアなカプセル計算フレームワークに統合する動作であって、前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを、前記データストレージ構造内の前記データ資産に、前記データ資産および前記機械学習モデルのプライバシーを保全するセキュアな方法で提供する、統合する動作と、
前記データ資産を前記アルゴリズムを通して動作させる動作と
を含む動作を行わせるように構成された命令
を含む、非一時的機械可読記憶媒体において実体的に具体化された、コンピュータプログラム製品。
[本発明1020]
前記アルゴリズムおよび前記入力データ要件が、前記データホストとは異なるエンティティであるアルゴリズム開発者から受け取られ、前記最適化および/または検証選択基準が、データ資産が前記アルゴリズムで動作するための特性、フォーマット、および要件を定義する、本発明1019のコンピュータプログラム製品。
[本発明1021]
前記データ資産の前記特性および前記要件が、
(i)前記アルゴリズムの環境、(ii)前記入力データ内の例の配分、(iii)前記入力データを生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、(v)前記アルゴリズムによって実装されたタスク、または(vi)それらの任意の組み合わせ
に基づいて定義される、本発明1020のコンピュータプログラム製品。
[本発明1022]
前記識別する動作が、前記データ資産内の個人に関するプライベート情報を伏せたままで、前記データ資産内のグループのパターンを記述することによって、前記データ資産内の情報を共有するための差分プライバシーを使用して行われ、
前記キュレートする動作が、複数のデータストレージ構造の中から前記データストレージ構造を選択することと、前記データホストの前記インフラストラクチャ内に前記データストレージ構造をプロビジョニングすることとを含み、
前記データストレージ構造の前記選択が、前記アルゴリズムのタイプ、前記データ資産内のデータのタイプ、前記システムの要件、またはそれらの組み合わせに基づくものである、
本発明1020のコンピュータプログラム製品。
[本発明1023]
前記動作が、前記データホストを迎え入れる動作をさらに含み、
前記迎え入れる動作が、前記アルゴリズムでの前記データ資産の使用がデータプライバシー要件に準拠したものであることを確認することを含む、
本発明1019、1020、または1021のコンピュータプログラム製品。
[本発明1024]
前記データ資産を前記アルゴリズムを通して前記動作させる動作が、
前記モデルの複数のインスタンスを作成することと、前記データ資産を、訓練データセットと1つまたは複数の試験データセットとに分割することと、前記モデルの前記複数のインスタンスを前記訓練データセットで訓練することと、前記モデルの前記複数のインスタンスの各々の前記訓練からの結果を完全連合モデルに統合することと、前記1つまたは複数の試験データセットを前記完全連合モデルを通して動作させることと、前記1つまたは複数の試験データセットの前記動作に基づいて前記完全連合モデルの性能を計算することとを含む、訓練ワークフロー
を実行することを含む、本発明1019~1023のいずれかのコンピュータプログラム製品。
[本発明1025]
前記データ資産を前記アルゴリズムを通して前記動作させる動作が、
前記データ資産を1つまたは複数の検証データセットにおいて分割することと、前記1つまたは複数の検証データセットを前記アルゴリズムを通して動作させることと、前記1つまたは複数の検証データセットの前記動作に基づいて前記アルゴリズムの性能を計算することとを含む、検証ワークフロー
を実行することを含む、本発明1019~1023のいずれかのコンピュータプログラム製品。
[本発明1026]
前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを動作させるのに必要な暗号化コードを受け入れるように構成された計算インフラストラクチャ内にプロビジョニングされ、
前記計算インフラストラクチャを前記プロビジョニングすることが、前記計算インフラストラクチャ上で前記セキュアなカプセル計算フレームワークをインスタンス化することと、前記アルゴリズム開発者によって、前記暗号化コードを前記セキュアなカプセル計算フレームワークの内部に配置することと、前記セキュアなカプセル計算フレームワークがインスタンス化された後で、前記暗号化コードを復号することとを含む、
本発明1019~1025のいずれかのコンピュータプログラム製品。
[本発明1027]
以下の工程を含む方法:
アルゴリズムの複数のインスタンスを識別する工程であって、前記アルゴリズムの各インスタンスが、1つまたは複数のセキュアなカプセル計算フレームワークに統合され、前記1つまたは複数のセキュアなカプセル計算フレームワークが、前記アルゴリズムの各インスタンスを、1つまたは複数のデータホストの1つまたは複数のデータストレージ構造内の訓練データ資産に、前記訓練データ資産および前記アルゴリズムの各インスタンスのプライバシーを保全するセキュアな方法で提供する、識別する工程;
データ処理システムによって、前記アルゴリズムの各インスタンスで連合訓練ワークフローを実行する工程であって、前記連合訓練ワークフローが、前記訓練データ資産を入力として取り込み、パラメータを使用して前記訓練データ資産の特徴をターゲット推論にマップし、損失関数または誤差関数を計算し、前記損失関数または前記誤差関数を最小化するために前記パラメータを学習されたパラメータに更新し、前記アルゴリズムの1つまたは複数の訓練されたインスタンスを出力する、実行する工程;
前記データ処理システムによって、前記アルゴリズムの訓練されたインスタンスごとの前記学習されたパラメータを、完全連合アルゴリズムに統合する工程であって、前記統合する工程が、前記学習されたパラメータを集約して、集約されたパラメータを取得することと、前記完全連合アルゴリズムの学習されたパラメータを前記集約されたパラメータで更新することとを含む、統合する工程;
前記データ処理システムによって、前記完全連合アルゴリズムで試験ワークフローを実行する工程であって、前記試験ワークフローが、試験データを入力として取り込み、前記更新された学習されたパラメータを使用して前記試験データ内のパターンを見つけ、推論を出力する、実行する工程;
前記データ処理システムによって、前記推論を提供する際の前記完全連合アルゴリズムの性能を計算する工程;
前記データ処理システムによって、前記完全連合アルゴリズムの前記性能がアルゴリズム終了基準を満たすかどうかを判定する工程;
前記完全連合アルゴリズムの前記性能が前記アルゴリズム終了基準を満たさない場合、前記データ処理システムによって、前記アルゴリズムの各インスタンスを前記完全連合アルゴリズムで置き換え、前記完全連合アルゴリズムの各インスタンスで前記連合訓練ワークフローを再実行する工程;ならびに
前記完全連合アルゴリズムの前記性能が前記アルゴリズム終了基準を満たす場合、前記データ処理システムによって、前記完全連合アルゴリズムの前記性能および前記集約されたパラメータを、前記アルゴリズムのアルゴリズム開発者に提供する工程。
[本発明1028]
前記アルゴリズムの前記複数のインスタンスを前記識別する工程が、
前記データ処理システムにおいて、前記アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取ることであって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための最適化および/または検証選択基準を含む、受け取ることと、
前記データ処理システムによって、前記データ資産を、前記データ資産についての最適化および/または検証選択基準に基づいて前記1つまたは複数のデータホストから利用可能であるものとして識別することと、
前記データ処理システムによって、前記1つまたは複数のデータホストの各データホストのインフラストラクチャ内にあるデータストレージ構造内の前記データ資産をキュレートすることと、
前記データ資産の少なくとも一部を、前記1つまたは複数のデータホストの各データホストの前記インフラストラクチャ内にある前記データストレージ構造内の前記訓練データ資産に分割することと
を含む、本発明1027の方法。
[本発明1029]
前記アルゴリズムおよび前記入力データ要件が、前記1つまたは複数のデータホストとは異なるエンティティであるアルゴリズム開発者から受け取られ、前記最適化および/または検証選択基準が、データ資産が前記アルゴリズムで動作するための特性、フォーマット、および要件を定義する、本発明1028の方法。
[本発明1030]
前記連合訓練ワークフローが、訓練勾配を暗号化することをさらに含み、前記統合することが、前記訓練勾配を復号することを含む、本発明1027、1028、または1029の方法。
[本発明1031]
前記完全連合アルゴリズムの前記性能が前記アルゴリズム終了基準を満たす場合、前記データ処理システムによって、集約されたパラメータを前記アルゴリズムの各インスタンスに送る工程;ならびに
前記データ処理システムによって、前記アルゴリズムの各インスタンスで更新訓練ワークフローを実行する工程であって、前記更新訓練ワークフローが、前記学習されたパラメータを前記集約されたパラメータで更新し、前記アルゴリズムの1つまたは複数の更新および訓練されたインスタンスを出力する、実行する工程
をさらに含む、本発明1027、1028、1029、または1030の方法。
[本発明1032]
前記データ処理システムによって、残りの前記データ資産を、前記アルゴリズムの各インスタンスを通して動作させる工程をさらに含む、本発明1031の方法。
[本発明1033]
前記データ資産を前記アルゴリズムの各インスタンスを通して前記動作させる工程が、
前記データ資産の少なくとも一部を1つまたは複数の検証データセットにさらに分割することと、前記1つまたは複数の検証データセットを前記アルゴリズムの各インスタンスを通して動作させることと、前記1つまたは複数の検証データセットの前記動作に基づいて前記アルゴリズムの各インスタンスの性能を計算することとを含む、検証ワークフロー
を実行することを含む、本発明1031の方法。
[本発明1034]
1つまたは複数のデータプロセッサと、
前記1つまたは複数のデータプロセッサ上で実行されると、前記1つまたは複数のデータプロセッサに、
アルゴリズムの複数のインスタンスを識別する動作であって、前記アルゴリズムの各インスタンスが1つまたは複数のセキュアなカプセル計算フレームワークに統合され、前記1つまたは複数のセキュアなカプセル計算フレームワークが、前記アルゴリズムの各インスタンスを、1つまたは複数のデータホストの1つまたは複数のデータストレージ構造内の訓練データ資産に、前記訓練データ資産および前記アルゴリズムの各インスタンスのプライバシーを保全するセキュアな方法で提供する、識別する動作と、
前記アルゴリズムの各インスタンスで連合訓練ワークフローを実行する動作であって、前記連合訓練ワークフローが、前記訓練データ資産を入力として取り込み、パラメータを使用して前記訓練データ資産の特徴をターゲット推論にマップし、損失関数または誤差関数を計算し、前記損失関数または前記誤差関数を最小化するために前記パラメータを学習されたパラメータに更新し、前記アルゴリズムの1つまたは複数の訓練されたインスタンスを出力する、実行する動作と、
前記データ処理システムによって、前記アルゴリズムの訓練されたインスタンスごとの前記学習されたパラメータを、完全連合アルゴリズムに統合する動作であって、前記統合する動作が、前記学習されたパラメータを集約して、集約されたパラメータを取得することと、前記完全連合アルゴリズムの学習されたパラメータを前記集約されたパラメータで更新することとを含む、統合する動作と、
前記データ処理システムによって、前記完全連合アルゴリズムで試験ワークフローを実行する動作であって、前記試験ワークフローが、試験データを入力として取り込み、前記更新された学習されたパラメータを使用して前記試験データ内のパターンを見つけ、推論を出力する、実行する動作と、
前記データ処理システムによって、前記推論を提供する際の前記完全連合アルゴリズムの性能を計算する動作と、
前記データ処理システムによって、前記完全連合アルゴリズムの前記性能がアルゴリズム終了基準を満たすかどうかを判定する動作と、
前記完全連合アルゴリズムの前記性能が前記アルゴリズム終了基準を満たさない場合、前記データ処理システムによって、前記アルゴリズムの各インスタンスを前記完全連合アルゴリズムで置き換え、前記完全連合アルゴリズムの各インスタンスで前記連合訓練ワークフローを再実行する動作と、
前記完全連合アルゴリズムの前記性能が前記アルゴリズム終了基準を満たす場合、前記データ処理システムによって、前記完全連合アルゴリズムの前記性能および前記集約されたパラメータを、前記アルゴリズムのアルゴリズム開発者に提供する動作と
を含む動作を行わせる命令を含む、非一時的コンピュータ可読記憶媒体と
を含む、システム。
[本発明1035]
以下の工程を含む方法:
データ処理システムによって、データ資産の選択基準に基づいてデータホストから利用可能なデータ資産を識別する工程;
前記データ処理システムによって、前記データホストのインフラストラクチャ内にあるデータストレージ構造内の前記データ資産をキュレートする工程;
前記データ処理システムによって、データ変換のためのアルゴリズムを開発するためのガイドとして使用すべきトランスフォーマ・プロトタイプ・データセットを準備する工程であって、前記トランスフォーマ・プロトタイプ・データセットが整合化プロセスのキー属性を取り込む、準備する工程;
前記データ処理システムで、前記トランスフォーマ・プロトタイプ・データセット内のデータの現在のフォーマットに基づいて前記データ資産の変換のための第1の整合化トランスフォーマセットを作成する工程;
前記データ処理システムによって、変換されたデータ資産を生成するために前記データ資産に前記第1の整合化トランスフォーマセットを適用する工程;
前記データ処理システムによって、データ変換のためのアルゴリズムを開発するためのガイドとして使用すべき整合化プロトタイプデータセットを準備する工程であって、前記整合化プロトタイプデータセットが前記整合化プロセスのキー属性を取り込む、準備する工程;
前記データ処理システムによって、前記整合化プロトタイプデータセット内のデータの現在のフォーマットに基づいて前記変換されたデータ資産の変換のための第2の整合化トランスフォーマセットを作成する工程;
前記データ処理システムによって、整合化されたデータ資産を生成するために、前記変換されたデータ資産に前記第2の整合化トランスフォーマセットを適用する工程;ならびに
前記データ処理システムによって、前記整合化されたデータ資産をアルゴリズムを通して動作させる工程であって、前記アルゴリズムが、前記アルゴリズムを、前記データストレージ構造内の前記整合化されたデータ資産に、前記整合化されたデータ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供するセキュアなカプセル計算フレームワーク内にある、動作させる工程。
[本発明1036]
前記選択基準が、前記データホストとは異なるエンティティであるアルゴリズム開発者から受け取られ、前記選択基準が、前記データ資産が前記アルゴリズムで動作するための特性、フォーマットおよび要件を定義する、本発明1035の方法。
[本発明1037]
前記データ資産の前記特性および前記要件が、
(i)前記アルゴリズムの環境、(ii)前記入力データ内の例の配分、(iii)前記入力データを生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、(v)前記アルゴリズムによって実装されたタスク、または(vi)それらの任意の組み合わせ
に基づいて定義される、本発明1036の方法。
[本発明1038]
前記トランスフォーマ・プロトタイプ・データセットを匿名化し、前記匿名化されたトランスフォーマ・プロトタイプ・データセットを、前記データ資産の変換のための前記第1の整合化トランスフォーマセットを作成する目的で、前記アルゴリズム開発者に供する工程をさらに含む、本発明1037の方法。
[本発明1039]
前記データ資産に前記第1の整合化トランスフォーマセットを適用する工程が、前記データ構造内で行われる、本発明1035、1036、1037、または1038の方法。
[本発明1040]
前記データ処理システムで、注釈付きデータセットを生成するために、定義済み注釈付けプロトコルに従って、前記変換されたデータ資産に注釈を付ける工程をさらに含み、
前記変換されたデータに前記注釈を付ける工程が前記データ構造内で行われ、前記第2の整合化トランスフォーマセットが、整合化されたデータ資産を生成するために、前記注釈付きデータセットに適用される、
本発明1035~1039のいずれかの方法。
[本発明1041]
前記注釈付きデータ資産に前記第2の整合化トランスフォーマセットを前記適用する工程が、前記データ構造内で行われる、本発明1035~1040のいずれかの方法。
[本発明1042]
前記第1の整合化トランスフォーマセット、前記注釈、および前記第2の整合化トランスフォーマセットが、正常に適用され、かつデータプライバシー要件に違反せずに適用されるかどうかを判定する工程
をさらに含む、本発明1040または1041の方法。
[本発明1043]
1つまたは複数のデータプロセッサと、
前記1つまたは複数のデータプロセッサ上で実行されると、前記1つまたは複数のデータプロセッサに、
データ資産の選択基準に基づいてデータホストから利用可能な前記データ資産を識別する動作と、
前記データ資産を、前記データホストのインフラストラクチャ内にあるデータストレージ構造内でキュレートする動作と、
データ変換のためのアルゴリズムとして使用すべきトランスフォーマ・プロトタイプ・データセットを準備する動作であって、前記トランスフォーマ・プロトタイプ・データセットが整合化プロセスのキー属性を取り込む、準備する動作と、
前記トランスフォーマ・プロトタイプ・データセット内のデータの現在のフォーマットに基づいて前記データ資産の変換のための第1の整合化トランスフォーマセットを作成する動作と、
変換されたデータ資産を生成するために前記データ資産に前記第1の整合化トランスフォーマセットを適用する動作と、
データ変換のためのアルゴリズムを開発するために使用すべき整合化プロトタイプデータセットを準備する動作であって、前記整合化プロトタイプデータセットが前記整合化プロセスのキー属性を取り込む、準備する動作と、
前記整合化プロトタイプデータセット内のデータの現在のフォーマットに基づいて、前記変換されたデータ資産の変換のための第2の整合化トランスフォーマセットを作成する動作と、
整合化されたデータ資産を生成するために、前記変換されたデータ資産に前記第2の整合化トランスフォーマセットを適用する動作と、
前記整合化されたデータ資産をアルゴリズムを通して動作させる動作であって、前記アルゴリズムが、前記アルゴリズムを、前記データストレージ構造内の前記整合化されたデータ資産に、前記整合化されたデータ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供するセキュアなカプセル計算フレームワーク内にある、動作させる動作と
を含む動作を行わせる命令を含む、非一時的コンピュータ可読記憶媒体と
を含む、システム。
[本発明1044]
以下の工程を含む方法:
アルゴリズムまたはモデルを識別する工程であって、前記アルゴリズムまたはモデルが、セキュアなカプセル計算フレームワークに統合され、前記セキュアなカプセル計算フレームワークが、前記アルゴリズムまたはモデルを、データホストのデータストレージ構造内の訓練データ資産に、前記訓練データ資産および前記アルゴリズムまたはモードのプライバシーを保全するセキュアな方法で提供する、識別する工程;
データ処理システムによって、前記アルゴリズムまたはモデルで連合訓練ワークフローを実行する工程であって、前記連合訓練ワークフローが、前記訓練データ資産を入力として取り込み、パラメータを使用して前記訓練データ資産の特徴をターゲット推論にマップし、損失関数または誤差関数を計算し、前記損失関数または前記誤差関数を最小化するためにパラメータを学習されたパラメータに更新し、訓練されたアルゴリズムまたはモデルを出力する、実行する工程;
前記データ処理システムによって、前記アルゴリズムまたはモデルの前記学習されたパラメータを、完全連合アルゴリズムまたはモデルに統合する工程であって、前記統合する工程が、前記学習されたパラメータを集約して、集約されたパラメータを取得することと、前記完全連合アルゴリズムまたはモデルの学習されたパラメータを前記集約されたパラメータで更新することとを含む、統合する工程;
前記データ処理システムによって、前記完全連合アルゴリズムまたはモデルで試験ワークフローを実行する工程であって、前記試験ワークフローが、試験データを入力として取り込み、前記更新された学習されたパラメータを使用して前記試験データ内のパターンを見つけ、推論を出力する、実行する工程;
前記データ処理システムによって、前記推論を提供する際の前記完全連合アルゴリズムの性能を計算する工程;
前記データ処理システムによって、前記完全連合アルゴリズムまたはモデルの前記性能がアルゴリズム終了基準を満たすかどうかを判定する工程;
前記完全連合アルゴリズムまたはモデルの前記性能が前記アルゴリズム終了基準を満たさない場合、前記データ処理システムによって、前記アルゴリズムまたはモデルを前記完全連合アルゴリズムまたはモデルで置き換え、前記完全連合アルゴリズムまたはモデルで前記連合訓練ワークフローを再実行する工程;ならびに
前記完全連合アルゴリズムまたはモデルの前記性能が前記アルゴリズム終了基準を満たす場合、前記データ処理システムによって、前記完全連合アルゴリズムまたはモデルの前記性能および前記集約されたパラメータを、前記アルゴリズムまたはモデルのアルゴリズム開発者に提供する工程。
[本発明1045]
以下の工程を含む方法:
アルゴリズムを識別する工程であって、前記アルゴリズムが、アルゴリズム開発者によって提供されてセキュアなカプセル計算フレームワークに統合され、前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを、データストレージ構造内の検証データ資産に、前記検証データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供する、識別する工程;
データ処理システムによって、前記アルゴリズムで検証ワークフローを実行する工程であって、前記検証ワークフローが、前記検証データ資産を入力として取り込み、学習されたパラメータを使用して前記検証データ資産に前記アルゴリズムを適用し、推論を出力する、実行する工程;
前記データ処理システムによって、前記推論を提供する際の前記アルゴリズムの性能を計算する工程であって、前記性能がゴールド・スタンダード・ラベルに基づいて計算される、計算する工程;
前記データ処理システムによって、前記アルゴリズムの前記性能がアルゴリズム開発者によって定義された検証基準を満たすかどうかを判定する工程;
前記アルゴリズムの前記性能が前記検証基準を満たさない場合、前記データ処理システムで、前記アルゴリズムの1つまたは複数のハイパーパラメータを最適化し、前記最適化された1つまたは複数のハイパーパラメータを用いて、前記アルゴリズムで前記検証ワークフローを再実行する工程;ならびに
前記アルゴリズムの前記性能が前記検証基準を満たす場合、前記データ処理システムによって、前記アルゴリズムの前記性能および前記1つまたは複数のハイパーパラメータを、前記アルゴリズム開発者に提供する工程。
[本発明1046]
前記アルゴリズムを前記識別する工程が、
前記データ処理システムにおいて、前記アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取ることであって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための検証選択基準を含む、受け取ることと、
前記データ処理システムによって、前記データ資産を、前記データ資産についての前記検証選択基準に基づいてデータホストから利用可能であるものとして識別することと、
前記データ処理システムによって、前記データホストのインフラストラクチャ内にあるデータストレージ構造内の前記データ資産をキュレートすることと、
前記データ資産の少なくとも一部を、前記データホストの前記インフラストラクチャ内にある前記データストレージ構造内の前記検証データ資産に分割することと
を含む、本発明1044の方法。
[本発明1047]
前記検証選択基準が、臨床コホート基準、人口統計学的基準、および/またはデータ・セット・クラス・バランスを含み、前記臨床コホート基準が、コホート研究のために前記データ資産を取得するべき人々のグループ、前記コホート研究のタイプ、前記人々のグループが一定期間にわたってさらされる可能性のあるリスク因子、解決されるべき疑問もしくは仮説および関連付けられる疾患もしくは状態、前記コホート研究の基準を定義するその他のパラメータ、またはそれらの任意の組み合わせを定義する、本発明1045の方法。
[本発明1048]
前記データ処理システムによって、前記データホストを迎え入れる工程であって、前記迎え入れる工程が、前記アルゴリズムでの前記データ資産の使用がデータプライバシー要件に準拠したものであることを確認することを含む、迎え入れる工程;ならびに
前記アルゴリズムを検証する目的での前記データホストからの前記データ資産の使用の施設内審査委員会からの許可を含む、ガバナンス要件およびコンプライアンス要件を完了する工程
をさらに含み、
前記キュレートする工程が、複数のデータストレージ構造の中から前記データストレージ構造を選択することと、前記データホストの前記インフラストラクチャ内に前記データストレージ構造をプロビジョニングすることとを含み、前記データストレージ構造の前記選択が、前記アルゴリズム内のアルゴリズムのタイプ、前記データ資産内のデータのタイプ、前記データ処理システムのシステム要件、またはそれらの組み合わせに基づくものである、
本発明1045または1046の方法。
[本発明1049]
前記アルゴリズムの前記性能が前記検証基準を満たす場合、前記データ処理システムによって、前記アルゴリズムおよび前記検証データ資産を、前記検証データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で維持する工程
をさらに含む、本発明1044~1047のいずれかの方法。
[本発明1050]
前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを動作させるのに必要な暗号化コードを受け入れるように構成された計算インフラストラクチャ内にプロビジョニングされ、
前記計算インフラストラクチャを前記プロビジョニングすることが、前記計算インフラストラクチャ上で前記セキュアなカプセル計算フレームワークをインスタンス化することと、前記アルゴリズム開発者によって、前記暗号化コードを前記セキュアなカプセル計算フレームワークの内部に配置することと、前記セキュアなカプセル計算フレームワークがインスタンス化された後で、前記暗号化コードを復号することとを含む、
本発明1044~1048のいずれかの方法。
[本発明1051]
前記検証データ資産が、複数の独立したデータ資産セットであり、前記暗号化コードが、前記データ処理システムによって署名されてデータ・ストレージ・アーカイブに格納され、前記アルゴリズムの前記性能が、前記複数の独立したデータ資産セットに対して行われた複数の検証から集約された前記アルゴリズムの検証についての単一の検証報告として提供される、本発明1049の方法。
[本発明1052]
1つまたは複数のデータプロセッサと、
前記1つまたは複数のデータプロセッサ上で実行されると、前記1つまたは複数のデータプロセッサに、
アルゴリズムを識別する動作であって、前記アルゴリズムが、アルゴリズム開発者によって提供されてセキュアなカプセル計算フレームワークに統合され、前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを、データストレージ構造内の検証データ資産に、前記検証データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供する、識別する動作と、
前記アルゴリズムで検証ワークフローを実行する動作であって、前記検証ワークフローが、前記検証データ資産を入力として取り込み、学習されたパラメータを使用して前記検証データ資産内のパターンを見つけ、推論を出力する、実行する動作と、
前記推論を提供する際の前記アルゴリズムの性能を計算する動作であって、前記性能がゴールド・スタンダード・ラベルに基づいて計算される、計算する動作と、
前記アルゴリズムの前記性能がアルゴリズム開発者によって定義された検証基準を満たすかどうかを判定する動作と、
前記アルゴリズムの前記性能が前記検証基準を満たさない場合、前記アルゴリズムの1つまたは複数のハイパーパラメータを最適化し、前記最適化された1つまたは複数のハイパーパラメータを用いて、前記アルゴリズムで前記検証ワークフローを再実行する動作と、
前記アルゴリズムの前記性能が前記検証基準を満たす場合、前記アルゴリズムの前記性能および前記1つまたは複数のハイパーパラメータを、前記アルゴリズム開発者に提供する動作と
を含む動作を行わせる命令を含む、非一時的コンピュータ可読記憶媒体と
を含む、システム。
[本発明1053]
以下の工程を含む方法:
データ処理システムにおいて、アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取る工程であって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための検証選択基準を含む、受け取る工程;
前記データ処理システムによって、前記データ資産を、前記データ資産についての前記検証選択基準に基づいてデータホストから利用可能であるものとして識別する工程;
前記データ処理システムによって、前記データホストのインフラストラクチャ内のデータストレージ構造内の前記データ資産をキュレートする工程;
前記データ処理システムによって、前記アルゴリズムによって処理するための前記データストレージ構造内の前記データ資産を準備する工程;
前記データ処理システムによって、前記アルゴリズムをセキュアなカプセル計算フレームワークに統合する工程であって、前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを前記データストレージ構造内の前記データ資産に、前記データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供する、統合する工程;ならびに
前記データ処理システムによって、前記アルゴリズムで検証ワークフローを実行する工程であって、前記検証ワークフローが、前記データ資産を入力として取り込み、学習されたパラメータを使用して前記データ資産内のパターンを見つけ、推論を出力する、実行する工程;
前記データ処理システムによって、前記推論を提供する際の前記アルゴリズムの性能を計算する工程であって、前記性能がゴールド・スタンダード・ラベルに基づいて計算される、計算する工程;ならびに
前記データ処理システムによって、前記アルゴリズムの前記性能を、前記アルゴリズム開発者に提供する工程。
[本発明1054]
前記検証選択基準が、臨床コホート基準、人口統計学的基準、および/またはデータ・セット・クラス・バランスを含み、前記臨床コホート基準が、コホート研究のために前記データ資産を取得するべき人々のグループ、前記コホート研究のタイプ、前記人々のグループが一定期間にわたってさらされる可能性のあるリスク因子、解決されるべき疑問もしくは仮説および関連付けられる疾患もしくは状態、前記コホート研究の基準を定義するその他のパラメータ、またはそれらの任意の組み合わせを定義する、本発明1053の方法。
[本発明1055]
前記データ処理システムによって、前記データホストを迎え入れる工程であって、前記迎え入れる工程が、前記アルゴリズムでの前記データ資産の使用がデータプライバシー要件に準拠したものであることを確認することを含む、迎え入れる工程;ならびに
前記アルゴリズムを検証する目的での前記データホストからの前記データ資産の使用の施設内審査委員会からの許可を含む、ガバナンス要件およびコンプライアンス要件を完了する工程
をさらに含み、
前記キュレートする工程が、複数のデータストレージ構造の中から前記データストレージ構造を選択することと、前記データホストの前記インフラストラクチャ内に前記データストレージ構造をプロビジョニングすることとを含み、前記データストレージ構造の前記選択が、前記アルゴリズム内のアルゴリズムのタイプ、前記データ資産内のデータのタイプ、前記データ処理システムのシステム要件、またはそれらの組み合わせに基づくものである、
本発明1053または1054の方法。
[本発明1056]
前記データ処理システムによって、前記アルゴリズムおよび前記データ資産を、前記データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で維持する工程をさらに含む、本発明1053~1055のいずれかの方法。
[本発明1057]
前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを動作させるのに必要な暗号化コードを受け入れるように構成された計算インフラストラクチャ内にプロビジョニングされ、
前記計算インフラストラクチャを前記プロビジョニングすることが、前記計算インフラストラクチャ上で前記セキュアなカプセル計算フレームワークをインスタンス化することと、前記アルゴリズム開発者によって、前記暗号化コードを前記セキュアなカプセル計算フレームワークの内部に配置することと、前記セキュアなカプセル計算フレームワークがインスタンス化された後で、前記暗号化コードを復号することとを含む、
本発明1053~1056のいずれかの方法。
[本発明1058]
前記データ資産が、複数の独立したデータ資産セットであり、前記暗号化コードが、前記データ処理システムによって署名されてデータ・ストレージ・アーカイブに格納され、前記アルゴリズムの前記性能が、前記複数の独立したデータ資産セットに対して行われた複数の検証から集約された前記アルゴリズムの検証についての単一の検証報告として提供される、本発明1057の方法。
用いられている用語および表現は、限定ではなく説明の用語として使用されており、そのような用語および表現の使用に際して、図示および説明される特徴のうちのその部分の任意の均等物を除外する意図はなく、特許請求される発明の範囲内で様々な改変が可能であることを理解されたい。よって、特許請求される本発明は態様および任意の特徴によって具体的に開示されているが、当業者によれば本明細書に開示される概念の改変および変形が用いられ得ること、およびそのような改変および変形は、添付の特許請求の範囲によって定義される本発明の範囲内にあるとみなされることを理解されたい。
本発明は、以下の非限定的な図を考慮すればよりよく理解されるであろう。
様々な態様によるAIエコシステムを示す図である。 様々な態様によるAIアルゴリズム開発プラットフォームを示す図である。 様々な態様による、データ(例えば、臨床データおよび健康データ)に関するモデルを最適化および/または検証するためのコアプロセスを示す図である。 様々な態様によるAIアルゴリズム開発プラットフォーム上に1つまたは複数のデータホストを迎え入れるプロセスを示す図である。 様々な態様によるAIアルゴリズム開発プラットフォームと共に使用されるべきデータ資産を識別、取得、およびキュレートするためのプロセスを示す図である。 様々な態様によるAIアルゴリズム開発プラットフォームと共に使用されるべきデータ資産を変換するためのプロセスを示す図である。 様々な態様によるAIアルゴリズム開発プラットフォームと共に使用されるべきデータ資産に注釈を付けるためのプロセスを示す図である。 様々な態様によるAIアルゴリズム開発プラットフォームと共に使用されるべきデータ資産を整合化するためのプロセスを示す図である。 様々な態様によるAIアルゴリズム開発プラットフォームを使用して1つまたは複数のモデルを最適化するためのプロセスを示す図である。 様々な態様によるAIアルゴリズム開発プラットフォームを使用して1つまたは複数のモデルを検証するためのプロセスを示す図である。 様々な態様による臨床データおよび健康データに関するモデルを最適化および/または検証するための例示的なフローを示す図である。 様々な態様によるデータ処理システムの一部としての例示的なコンピューティングデバイスを示す図である。
詳細な説明
I. 概論
本開示は、プライバシー保護された整合化データ(例えば、臨床データおよび健康データ)の複数のソースに解析を分散させることによってAIアプリケーションおよび/またはアルゴリズムを開発するための技術を説明する。より具体的には、本開示のいくつかの態様は、プライバシー保護された整合化データ(例えば、臨床データおよび健康データ)の複数のソースに解析を分散することによって、アプリケーションおよび/またはアルゴリズム開発(本明細書では個別にまたは集合的にアルゴリズム開発と呼ばれ得る)を加速するAIアルゴリズム開発プラットフォームを提供する。医療産業における問題を解決するためにAIアルゴリズムが開発される機械学習およびアルゴリズムアーキテクチャの様々な態様が本明細書に開示されているが、これらのアーキテクチャおよび技術を、他のタイプのシステムおよび設定で実施することもできることを理解されたい。例えば、これらのアーキテクチャおよび技術を、データの機密性(例えば、データが企業秘密や個人に関するプライベートデータを含むかどうか)が、データの保護に責任を負う組織の境界外でのデータの共有を妨げる、多くの産業(金融、ライフサイエンス、サプライチェーン、国家安全、法執行、公共安全など)におけるAIアルゴリズムの開発において実装することができる。
本明細書に開示される様々な態様は、訓練、試験、最適化、および検証を含むアルゴリズムおよびモデル開発のための技術を説明する。「(1つまたは複数の)アルゴリズム」および「(1つまたは複数の)モデル」という用語は、詳細な説明(特許請求の範囲ではない)において読みやすさと簡潔さのために区別なく使用され、よって、本明細書で「(1つまたは複数の)アルゴリズム」という用語が使用される場合には、「(1つまたは複数の)モデル」という用語で置き換えることができ、「(1つまたは複数の)モデル」という用語が使用される場合には、「(1つまたは複数の)アルゴリズム」という用語で置き換えることができる。しかしながら、これらの用語は以下のような別個の意味を有することを理解されたい。「(1つまたは複数の)アルゴリズム」は、タスクを完了するかまたは問題を解決するために実装される関数、メソッド、またはプロシージャであり、一方、「(1つまたは複数の)モデル」は、1つまたは複数のアルゴリズムを含む明確に定義された計算であり、入力としてある値または値のセットを取り、出力としてある値または値のセットを生成する。例えば、変数が線形関係にある場合にxの特定の値に対するyの値を見つけるために、y=mx+bなどのアルゴリズムが、x変数とy変数との間の線形関係を記述するために使用され得る。勾配(m)および切片(c)の値を有するモデルが、訓練、試験、最適化、または検証され得、その後、モデルは、アルゴリズムy=mx+bならびに勾配(m)および切片(c)の値を使用して、xの異なる点に対するyの値を見つけるために使用され得る。通常、規制されたAIアルゴリズムおよびMLアルゴリズム(例えば、医療用途での使用が意図されるもの)は、一般化可能であり、したがって、アルゴリズムが使用される環境に関係なく、民族性、適用環境およびワークフロー(例えば、特定の臨床環境)および地理などの詳細に依存しない方法で実行されるべきである。一貫した性能を達成するために、アルゴリズムは、非常に多様なデータにタイムリーにアクセスして、発見、最適化、および検証を可能にする必要がある。
規制されたAIアルゴリズムおよびMLアルゴリズムの発見、最適化、および検証に対する最大の障壁の1つは、多くの場合プライバシー保護されたデータである非常に多様なデータへのタイムリーなアクセスの欠如である。プライバシー保護されたデータは法的に保護されており、機関によって組織的資産とみなされ、「所有者」が異なる隔離されたリポジトリに存在し、アルゴリズム開発者がデータにアクセスできたとしても、データが計算可能な形態ではない可能性が高い。医療業界内では、この問題は、Francis Collins, MD, PhD、国立衛生研究所(NIH)所長が、NIH Workshop on Harnessing Artificial Intelligence and Machine Learning to Advance Biomedical Researchへの2018年7月のプレゼンテーションにおいて、「多くの研究者らが、データにアクセスして解析可能にするために相当な時間を費やしており、この局面が改善される必要がある」と述べたことによって強調されたように、広く理解されている。また、NIHは、その「データサイエンス戦略計画」において、「現在のところ、...革新的なアルゴリズムおよびツールを、使いやすさおよび運用効率の業界標準を満たす企業対応リソースに変換または強化する一般的なシステムはない」ことを認めている。これらの課題は、データ資産が異なる場所に分散され、機密データまたはプライベートデータを含む産業全体に広く当てはまる。
AIソリューションの開発における重要な役割には、アルゴリズム開発者、データ提供者、第三者注釈者、(1または複数の)第三者検証者、(1または複数の)アルゴリズム規制機関、およびエンドユーザまたは顧客(例えば、医療組織)、が含まれる。(例えば、医療、金融、法執行、教育、および他の多くの場合に当てはまるような)規制された環境においてアルゴリズムを開発するプロセスの複雑さの一例として、医療のためのAIまたはMLの規制されたアルゴリズムを開発する企業の現在のプロセスを考察する。そのような企業は、典型的には、業界標準を満たすアルゴリズムを作成するために長時間のプロセスに耐える。このプロセスは、データ提供者を確保すること、技術環境を確立すること、セキュリティおよびプライバシー審査を確立すること、データを準備すること(例えば、キュレーションおよび匿名化)、匿名化データをアルゴリズム開発者に転送すること、アルゴリズム発見および開発のために匿名化データにAIまたはMLを適用すること、アルゴリズムの発見および開発の結果を文書化すること、ならびに審査および承認のためにアルゴリズムまたはモデルを規制機関(例えば、食品医薬品局(FDA))に提出することを含み得る。このプロセスは、再構成攻撃(生データから抽出された公開された特徴から生のプライベートデータを再構成する)、モデル反転攻撃(モデルから受け取られた応答を利用して特徴ベクトルを作成する)、メンバシップ推論攻撃(サンプルがMLモデルを構築するために使用された訓練セットのメンバであったかどうかを判定する)、およびプライベートデータの再特定化を含むいくつかのプライバシーの脅威を含む。
多くの従来のプライバシー強化技術は、データ提供者およびアルゴリズム開発者がセキュアな通信、暗号化手法、または差分プライベートデータリリース(摂動技術)を利用してこれらのプライバシーの脅威を克服または最小化できるようにすることに集中している。例えば、差分プライバシーは、メンバシップ推論攻撃を防止するのに有効である。さらに、モデル推論出力を制限する(例えば、クラスラベルのみ)ことによって、モデル反転攻撃およびメンバシップ推論攻撃の成功を減らすことができる。発見、最適化、および検証を行いながらプライベートデータを保護する前述の技術にもかかわらず、多くのアルゴリズム開発者らは、市販までの時間の増加、コスト、およびアルゴリズム開発の複雑さの増加により、(医療機関からの臨床データを含む)プライバシー保護されたデータの使用を回避し、それにより、(臨床を含む)忠実性の欠如に起因する固有のバイアスが組み込まれ、プライバシーに敏感な産業で使用するためのAIを作成することになる現実世界の研究ではなく、本質的に概念研究の証明であるアルゴリズムが生成される。例えば、プライバシー保護されたデータを防護するために必要な工程を完了するためのスケジュールは、典型的なベンチャー投資利益の予想を超える。資本市場が経験しているのは、機密性の低いデータを利用する産業がアルゴリズムを生成し、(医療を含む)プライバシーに敏感な産業においてそれらのアルゴリズムを期待するための適時性である。例えば、利益を達成するためのこのような忍耐力の欠如は、初期段階の企業が臨床的に展開されたアルゴリズムに必要なマルチサイトの訓練を継続するための資金を使い果たすために、医療AIへのほとんどの投資が目標に達しないことを意味するであろう。
これらの問題に対処するために、様々な態様は、プライバシー保護された整合化臨床データおよび健康データの複数のソースに解析を分散させることによって人工知能アプリケーションを開発するためのプラットフォームおよび技術を対象とする。例えば、医療AIアルゴリズム開発のコンテキストでは、プラットフォームは、民族および機器の多様なデータを集合的に表す世界中からの参加医療データ提供者組織のグループを含み得る。このグループは、アルゴリズム開発者が複数のデータソースにアクセスするための1つの契約を確立することを可能にする集中型の契約および価格設定モデルに参加し得る。データ整合化、注釈付け、検証、および連合訓練のための共有技術インフラストラクチャのプラットフォーム内で確立することにより、アルゴリズム開発者が単一の開発および展開環境で複数のデータソースにアクセスすることが可能になり得る。複数組織の協調により、アルゴリズム開発者が複数の組織にわたって適用可能な単一の標準化されたセキュリティおよびプライバシー審査を満たすことを可能にする協調の下で集中化される標準化されたセキュリティおよびプライバシー審査を採用することが可能になり得る。データ準備は、複数の組織と協働する際の冗長性を排除する標準化された複数組織の施設内審査委員会承認(IRB)(ライフサイエンス企業のコンテキストで利用される)フォーマットを採用すること、ならびにアルゴリズム開発者に基礎となるデータセットを公開せず、基礎となる資産を保護する方法でデータキュレーション、匿名化、変換、および増強を行い、デバッグするためのキュレーション、匿名化、および増強のツールおよびワークフローを開発すること(あるデータホストのために開発されたツールは追加のデータホストからのデータで再利用されるか、または再利用のために修正され得る)を含み得る。アルゴリズムの発見、検証、または訓練に使用されるべき準備データは、元のデータ所有者の管理から決して移行されない。発見、検証、および/または訓練の実行を担うソフトウェアコンポーネントは、データホストによって制御されるインフラストラクチャ内でカプセル化されたフォーマットで動作する。このインフラストラクチャは、オンプレミスまたはクラウド上にあってもよいが、全体がデータホストのドメイン制御内にある。
プラットフォームは、プライバシーを保全する方法で準備されたデータにAIまたはMLを適用するためのセキュアなカプセル計算サービスフレームワークを提供する。ある例では、このプロセスの一部として技術的較正が行われるが、エンドツーエンドの計算パイプラインが確実に完了するように、反復プロセスで準備されたデータの小部分に対して最初に行われ得る。これらのステップは、プラットフォームの標準化されたインフラストラクチャ内で動作するため、このプロセスは、データホストの従業員によってではなくプラットフォームによって管理され得る。これは、プロセスが反復可能かつスケーラブルであり、十分に訓練された、プロセスに精通した個人によって行われることを意味する。準備されたデータへのAIまたはMLの適用は、アルゴリズム発見、アルゴリズム最適化、および/またはアルゴリズム検証を含み得る。
ある例では、アルゴリズム発見の動作は、完全にデータホストの技術制御内で実装されてもよく、これにより、基礎となるデータのある範囲のレベルの保護が可能になる。特定のタイプのアルゴリズム開発アクティビティは、データ漏洩の最小限のリスクを保証するために差分プライバシー技術を使用して保護され得る。当事者間の信頼レベルに応じて、新しいアルゴリズム発見方法が、データホスト環境で動作しているカプセル化されたソフトウェアからのアルゴリズムアクティビティおよび発信トラフィックの広範な監視を通じて可能とされ得る。本開示の1つの例示的な態様は、データ処理システムにおいて、アルゴリズムまたはモデルおよびアルゴリズムと関連付けられた入力データ要件を受け取る工程であって、入力データ要件が、データ資産がアルゴリズムまたはモデルで動作するための最適化および/または検証選択基準を含む、受け取る工程と、データ処理システムによって、データ資産を、データ資産についての最適化および/または検証選択基準に基づいてデータホストから利用可能であるものとして識別する工程と、データ処理システムによって、データホストのインフラストラクチャ内のデータストレージ構造内のデータ資産をキュレートする工程と、データ処理システムによって、アルゴリズムまたはモデルが処理するためのデータストレージ構造内のデータ資産を準備する工程と、データ処理システムによって、アルゴリズムまたはモデルをセキュアなカプセル計算フレームワークに統合する工程であって、セキュアなカプセル計算フレームワークがアルゴリズムまたはモデルを、データストレージ構造内のデータ資産に、データ資産およびアルゴリズムまたはモデルのプライバシーを保全するセキュアな方法で提供する、統合する工程と、データ処理システムによって、データ資産をアルゴリズムまたはモデルを通して動作させる工程とを含む。
ある例では、最適化は、データの外部共有を必要とせずに、完全にデータホストのインフラストラクチャおよび制御の内部で行われ得る。データホストによって選択されたセキュリティレベルに応じて、訓練データの漏洩の可能性なしに(例えば、準同型暗号化およびリファクタリングアルゴリズムを使用して)アルゴリズム最適化をサポートすることが可能である。コホート開発のためのすべてのツールは、プライベートデータに対する再構成攻撃、差分攻撃、追跡攻撃およびその他の攻撃を防ぐために、厳密な差分プライバシー制御で管理され得る。本開示の1つの例示的な態様は、アルゴリズムまたはモデルを識別する工程であって、アルゴリズムまたはモデルがセキュアなカプセル計算フレームワークに統合され、セキュアなカプセル計算フレームワークが、アルゴリズムまたはモデルを、データホストのデータストレージ構造内の訓練データ資産に、訓練データ資産およびアルゴリズムまたはモードのプライバシーを保全するセキュアな方法で提供する、識別する工程と、データ処理システムによって、アルゴリズムまたはモデルで連合訓練ワークフローを実行する工程であって、連合訓練ワークフローが、訓練データ資産を入力として取り込み、パラメータを使用して訓練データ資産の特徴をターゲット推論にマップし、損失関数または誤差関数を計算し、損失関数または誤差関数を最小化するためにパラメータを学習されたパラメータに更新し、訓練されたアルゴリズムまたはモデルを出力する、実行する工程と、データ処理システムによって、アルゴリズムまたはモデルの学習されたパラメータを、完全連合アルゴリズムまたはモデルに統合する工程であって、統合する工程が、学習されたパラメータを集約して、集約されたパラメータを取得する工程と、完全連合アルゴリズムまたはモデルの学習されたパラメータを集約されたパラメータで更新する工程とを含む、統合する工程と、データ処理システムによって、完全連合アルゴリズムまたはモデルで試験ワークフローを実行する工程であって、試験ワークフローが、試験データを入力として取り込み、更新された学習されたパラメータを使用して試験データ内のパターンを見つけ、推論(入力データ、学習されたパラメータ、およびアルゴリズムまたはモデルの構成に基づいて得られる結論(例えば、モデルの予測やアルゴリズムの結果))を出力する、実行する工程と、データ処理システムによって、推論を提供する際の完全連合アルゴリズムの性能を計算する工程と、データ処理システムによって、完全連合アルゴリズムまたはモデルの性能がアルゴリズム終了基準を満たすかどうかを判定する工程と、完全連合アルゴリズムまたはモデルの性能がアルゴリズム終了基準を満たさない場合、データ処理システムによって、アルゴリズムまたはモデルを完全連合アルゴリズムまたはモデルで置き換え、完全連合アルゴリズムまたはモデルで連合訓練ワークフローを再実行する工程と、完全連合アルゴリズムまたはモデルの性能がアルゴリズム終了基準を満たす場合、データ処理システムによって、完全連合アルゴリズムまたはモデルの性能および集約されたパラメータをアルゴリズムまたはモデルのアルゴリズム開発者に提供する工程とを含む。
ある例では、検証は、データの外部共有を必要とせずに、完全にデータホストのインフラストラクチャおよび制御の内部で行われ得る。検証データの漏洩の可能性はなく、コホート開発のためのすべてのツールは、プライベートデータに対する再構成攻撃、差分攻撃、追跡攻撃およびその他の攻撃を防ぐために、厳密な差分プライバシー制御で管理される。本開示の1つの例示的な態様は、データ処理システムにおいて、アルゴリズムおよびアルゴリズムと関連付けられた入力データ要件を受け取る工程であって、入力データ要件が、データ資産がアルゴリズムで動作するための検証選択基準を含む、受け取る工程と、データ処理システムによって、データ資産を、データ資産についての検証選択基準に基づいてデータホストから利用可能であるものとして識別する工程と、データ処理システムによって、データホストのインフラストラクチャ内のデータストレージ構造内のデータ資産をキュレートする工程と、データ処理システムによって、アルゴリズムが処理するためのデータストレージ構造内のデータ資産を準備する工程と、データ処理システムによって、アルゴリズムをセキュアなカプセル計算フレームワークに統合する工程であって、セキュアなカプセル計算フレームワークがアルゴリズムをデータストレージ構造内のデータ資産に、データ資産およびアルゴリズムのプライバシーを保全するセキュアな方法で提供する、統合する工程と、データ処理システムによって、アルゴリズムで検証ワークフローを実行する工程であって、検証ワークフローが、検証データ資産を入力として取り込み、学習されたパラメータを使用して検証データ資産内のパターンを見つけ、推論を出力する、実行する工程と、データ処理システムによって、推論を提供する際のアルゴリズムの性能を計算する工程であって、性能がゴールド・スタンダード・ラベルに基づいて計算される、計算する工程と、データ処理システムによって、アルゴリズムの性能をアルゴリズム開発者に提供する工程とを含む。書類提出を必要とするアルゴリズムまたはモデルの重要な要件が、多くの場合、異なる地理からの多様な独立したデータセットに対するアルゴリズムまたはモデルの検証である。プラットフォームは、独立したデータセットに対して一貫した動作パラメータおよび検証報告を用いて検証を行い、プラットフォームは、各データセットの基礎となる特性(人口統計、使用機器、データ収集に使用されたプロトコル)を報告するので、ほとんどの書類提出に必要な検証の完了は、劇的に容易で、迅速で、安価である。
有利には、これらの技術は、アルゴリズムおよびモデルのマルチサイト開発をサポートするためのプライバシーを保全する分散型プラットフォームの展開を可能にする。さらに、これらの技術は、アルゴリズム開発者がアルゴリズムまたはモデルの市販までの時間を加速し、商業的実行可能性を最適化し、プライベートデータを利用するアルゴリズムおよびモデルへの投資のリスクを軽減するのを助けることができる。さらに、これらの技術は、データホストがそれらのデータ資産の価値を最適化するのを、データが適用可能なデータセットに表されている個人のプライバシーを保護し、(医療用途における)患者の転帰を最適化するのを助け、当該分野における革新的思考のリーダーシップを生み出すやり方で助けることができる。
II. 人工知能(AI)エコシステム
図1に、データセット105a~105nからのデータの増強、アルゴリズム/モデル110a~110nの展開、アルゴリズム/モデル110a~110nの検証、アルゴリズム/モデル110a~110nの最適化(訓練/試験)、および複数のデータセット105a~105nに対するアルゴリズム/モデル110a~110nの連合訓練を含む、プライベートデータセット105a~105n(「n」は任意の自然数を表す)に対するセキュアな連合計算を可能にするAIエコシステム100を示す。AI開発プラットフォーム110は、AIシステム115と、セキュアなカプセル計算サービス120a~120nとを含む。AIシステム115は、AIエコシステム100内のソフトウェア資産の開発および展開を管理する。訓練、最適化、採点および検証のための事前訓練されたアルゴリズム/モデル110a~110nと、(データに対してアルゴリズム/モデルを訓練するための)アルゴリズム訓練コードとを含む様々なソフトウェアモジュールが、AIシステム115を介して開発および展開される。例えば、AIシステム115は、様々なソフトウェアコンポーネントを1つまたは複数のセキュアなカプセル計算サービス120a~120nに展開または出力し得る。セキュアなカプセル計算サービス120a~120nは、完全にデータホストの計算ドメイン内のセキュアなカプセル計算サービス環境で計算することができるカプセル化された、またはその他のポータブルなソフトウェアコンポーネントである。
セキュアなカプセル計算サービスは、検証および/または訓練されるべきアルゴリズムを含むソフトウェアの外部環境(この場合、データホストの計算環境)への展開を容易にし、さらに、カプセル内に展開されるソフトウェアのプライバシーとホスト計算環境のセキュリティの両方を保護するためのセキュリティサービスを提供する。異なる態様では、すべての当事者にセキュリティを提供するために暗号化、セキュアなカプセル計算フレームワーク、隔離、難読化、およびその他の方法が用いられ得る。例えば、ある例では、セキュアなカプセル化された計算モジュール(例えば、データホスト)でソフトウェアを動作させている組織が、アルゴリズム開発者の独自のソフトウェアを検査、コピー、または修正することができないことは、アルゴリズム開発者にとって重要であり得る。セキュアなカプセル化された計算サービスは、そのような計算モデルをサポートするためのポータブル環境を提供する。さらに、多くの場合、セキュアなカプセル化された計算サービスを動作させしている利害関係者は、ホストされているソフトウェアが悪意のあるものであり、ホストのインフラストラクチャに害を及ぼしたり、データプライバシーを侵害したりし得る可能性に対する保護を望む。さらに、AIシステム115は、訓練のためにデータリソース、モデルパラメータ、または共有データ(例えば、親教師訓練パラダイム(parent-teacher training paradigm))を展開または出力し得る。引き換えに、AIシステム115は、計算結果、データ、および計算監視結果、訓練されたモデル、モデルパラメータ、またはセキュアなカプセル計算サービス120a~120nなどの展開された計算コンポーネントおよびプロセスの他の結果を含む入力を受け取り得る。
セキュアなカプセル計算サービス120a~120nは、同じかまたは異なる機能または動作を提供し得る。例えば、セキュアなカプセル計算サービス120aおよび120nは、データ変換および計算アクティビティを管理し得るが、これらは、計算アクティビティを行う際に異なる機能または動作を実施し得る。セキュアなカプセル計算サービス120aは、AIシステム100からデータおよびソフトウェアを受け取り、データソース125a~125n(例えば、データソース120aおよび120b)からキュレートされていないデータを受け取り得る。データは、AIシステム100からソフトウェア(例えば、アルゴリズム/モデル110a~110n)によってインポートされ、任意で格納され、変換され、それ以外に整合化され、次いで計算され得る。対照的に、セキュアなカプセル計算サービス120nは、AIシステム100からデータおよびソフトウェアを受け取り、データソース125a~125n(例えば、データソース120aおよび120b)からキュレートされていないデータを受け取り、1つまたは複数の第三者130からのデータを結合し得る。データは、AIシステム100からソフトウェア(例えば、アルゴリズム/モデル110a~110n)によってインポートされ、任意で格納され、変換され、結合データと結合され、それ以外に整合化され、次いで計算され得る。セキュアなカプセル計算サービス120a~120nは、通信ネットワーク135を介してデータソース125a~125nおよび任意で第三者130と通信する。通信ネットワーク135の例には、モバイルネットワーク、無線ネットワーク、セルラーネットワーク、エリアネットワーク(LAN)、広域ネットワーク(WAN)、他の無線通信ネットワーク、またはそれらの組み合わせが含まれ得る。
図2に、プライバシー保護された整合化データの複数のソースに解析を分散させることによって人工知能アルゴリズムを開発するためのAIアルゴリズム開発プラットフォーム200(例えば、図1に関して説明したAIエコシステム100内に実装されたデータ処理システム)を示す。ある例では、プラットフォーム200は、セキュアなカプセル計算サービス210のネットワークと通信するAIシステム205を含む(簡単にするために、ただ1つのセキュアなカプセル計算サービスが示されている)。AIシステム205は、データサイエンス開発モジュール215、データ・ハーモナイザ・ワークフロー作成モジュール220、ソフトウェア展開モジュール225、連合マスタアルゴリズム訓練モジュール230、システム監視モジュール235、およびグローバル結合データ240を含むデータストアを含み得る。AIシステム205は、1者または複数のアルゴリズム開発者と通信し得、新しいプロジェクトで最適化および/または検証されるべき1つまたは複数のアルゴリズムまたはモデルを受け取るように構成される。
データサイエンス開発モジュール215は、1つまたは複数のモデルの最適化および/または検証のために、1者または複数のアルゴリズム開発者から入力データ要件を受け取るように構成され得る。入力データ要件は、データキュレーション、データ変換、およびデータ整合化のワークフローの目的を定義する。入力データ要件はまた、1つまたは複数のモデルでの使用が許容されるデータ資産を識別するための制約も提供する。データ・ハーモナイザ・ワークフロー作成モジュール220は、変換、整合化、および注釈付けプロトコルの開発および展開を管理するように構成され得る。ソフトウェア展開モジュール225は、データサイエンス開発モジュール215およびデータ・ハーモナイザ・ワークフロー作成モジュール220と共に、1つまたは複数のモデルで使用するためのデータ資産を評価するように構成され得る。このプロセスを自動化することができ、または対話型検索/問い合わせプロセスとすることができる。ソフトウェア展開モジュール225は、データサイエンス開発モジュール215と共に、モデルを、必要なライブラリおよびリソースと共に、セキュアなカプセル計算フレームワークに統合するようにさらに構成され得る。
いくつかの態様では、ソース260(例えば、患者)からデータホスト255によって収集された複数の独立したプライベートデータセット245、250(例えば、臨床データおよび健康データ)から学習したロバストな優れたアルゴリズム/モデルを開発することが求められる。連合マスタアルゴリズム訓練モジュール230は、独立したデータセットからの学習を単一のマスタアルゴリズムに集約するように構成され得る。異なる態様では、連合訓練のためのアルゴリズム方法論は異なり得る。例えば、モデルパラメータの共有、アンサンブル学習、共有データに対する親教師学習、および他の多くの方法が、連合訓練を可能にするために開発され得る。プライバシー要件およびセキュリティ要件が、各データシステムがデータへのアクセスに支払われ得る対価の決定などの商業的考慮事項と共に、どの連合訓練方法論が使用されるかを決定し得る。
システム監視モジュール235は、セキュアなカプセル計算サービス210におけるアクティビティを監視する。監視されるアクティビティは、例としての計算作業負荷、エラー状態、および接続状況などの動作追跡から、処理されたデータ量、アルゴリズム収束状況、データ特性の変動、データエラー、アルゴリズム/モデル性能メトリック、および各ユースケースおよび態様によって必要とされる多数の追加メトリックなどのデータサイエンス監視にまで及び得る。
ある例では、プライベートデータセット245、250を追加のデータ240(結合データ)で増強することが望ましい。例えば、環境暴露を確認するために、地理的位置の大気質データを患者の地理的位置データと結合することができる。特定の例では、結合データ240は、データ整合化または計算中にデータ245、250と結合されるようにセキュアなカプセル計算サービス210に送信され得る。
セキュアなカプセル計算サービス210は、ハーモナイザ・ワークフロー・モジュール265、整合化データ270、リモート計算モジュール275、システム監視モジュール280、およびデータ管理モジュール285を含み得る。データ・ハーモナイザ・ワークフロー作成モジュール230によって管理される変換、整合化、および注釈付けのワークフローは、変換および整合化データ270を使用して、ハーモナイザ・ワークフロー・モジュール265によって環境において展開および実行され得る。ある例では、結合データ240は、データ整合化中にデータ245、250と結合されるように、ハーモナイザ・ワークフロー・モジュール265に送信され得る。リモート計算モジュール275は、プライベートデータセット245、250をアルゴリズム/モデルを通して動作させるように構成され得る。いくつかの態様では、動作させることは、アルゴリズム/モデルの複数のインスタンスを作成することと、プライベートデータセット245、250を、訓練データセットと1つまたは複数の試験データセットとに分割することと、アルゴリズム/モデルの複数のインスタンスを訓練データセットで訓練することと、モデルの複数のインスタンスの各々の訓練からの結果を完全連合アルゴリズム/モデルに統合することと、1つまたは複数の試験データセットを完全連合アルゴリズム/モデルによって動作させることと、1つまたは複数の試験データセットの動作に基づいて完全連合モデルの性能を計算することとを含む訓練ワークフローを実行することを含む。他の態様では、動作させることは、プライベートデータセット245、250を分割、結合および/または変換して1つまたは複数の検証データセットにすることと、1つまたは複数の検証データセットを機械学習アルゴリズム/モデルによって動作させることと、1つまたは複数の検証データセットの動作に基づいて機械学習アルゴリズム/モデルの性能を計算することとを含む検証ワークフローを実行することを含む。ある例では、結合データ240は、計算中にデータ245、250と結合されるようにリモート計算モジュール275に送信され得る。
システム監視モジュール280は、セキュアなカプセル計算サービス210におけるアクティビティを監視する。監視されるアクティビティは、各ユースケースおよび態様によって必要とされる、アルゴリズム/モデル受け入れ、ワークフロー構成、およびデータホスト迎え入れなどの動作追跡を含み得る。データ管理モジュール285は、データホスト255の既存のインフラストラクチャ内のデータ資産を維持しながら、データホスト255からプライベートデータセット245、250などのデータ資産をインポートするように構成され得る。
III. モデルを最適化および/または検証するための技術
様々な態様において、プライバシー保護された整合化データ(例えば、整合化臨床データおよび健康データ)の1つまたは複数のソースを使用して1つまたは複数のモデルを最適化および検証するための技術が提供される。モデルは、第1のエンティティ(例えば、ライフサイエンス企業などのアルゴリズム開発者)によって提供され得、データセットは、第2のエンティティ(例えば、大学医療センターなどのデータホスト)によって提供され得る。例えば、ライフサイエンス企業は、プライバシー保護された整合化臨床データおよび健康データの1つまたは複数のソースに対する自社のモデルの実行性能を最適化または評価することによって、製品およびサービスの市販までの時間を加速し、または商業的実行可能性を最適化することに関心がある場合がある。さらに、大学医療センターは、その臨床データおよび健康データの価値をデータプライバシーを維持する方法で掘り起こすことに関心がある場合がある。図3に示されるように、これらの2つのエンティティの要望を満たすために、臨床データおよび健康データに対してモデルを最適化および/または検証するためのコアプロセス300が、人工知能アルゴリズム開発プラットフォーム(例えば、図1および図2に関して説明されたプラットフォームおよびシステム)を使用して行われ得る。
ブロック305で、第三者アルゴリズム開発者(第1のエンティティ)が、新しいプロジェクトにおいて最適化および/または検証されるべき1つまたは複数のアルゴリズムまたはモデルを提供する。1つまたは複数のアルゴリズムまたはモデルは、アルゴリズム開発者によって、独自の開発環境、ツール、およびシードデータセット(例えば、訓練/試験データセット)を使用して開発され得る。ある例では、モデルは1つまたは複数の予測モデルを含む。予測モデルは、任意のアルゴリズム、例えば、畳み込みニューラルネットワーク(「CNN」)、例えば、インセプション・ニューラル・ネットワークや、残差ニューラルネットワーク(「Resnet」)、またはリカレント・ニューラル・ネットワーク、例えば、長・短期記憶(「LSTM」)モデルやゲート付き回帰型ユニット(「GRU」)モデルを含むがこれらに限定されないMLモデルを含むことができる。予測モデルはまた、直接測定することができないか、もしくは将来発生することになる何かを予測するように、またはデータから推論(例えば、モデルの予測やアルゴリズムの結果)を行うように訓練された任意の他の適切なMLモデルとすることもできる。例えば、医療用途では、これらは、画像またはビデオフレームからの臨床症状、同一性、診断、または予後、例えば、三次元CNN(「3DCNN」)、動的時間伸縮(「DTW」)技術、隠れマルコフモデル(「HMM」)など、またはそのような技術の1つもしくは複数の組み合わせ、例えば、CNN-HMMやMCNN(Multi-Scale Convolutional Neural Network)などであり得る。アルゴリズム開発者は、同じタイプの予測モデルまたは異なるタイプの予測モデル(例えば、アンサンブルML技術)を用いて、予測または推論、例えば、臨床症状、同一性、診断、または予後を行い得る。シードデータセットは、モデルの初期訓練および試験のためにアルゴリズム開発者によって取得された初期データセット(例えば、プライベートまたは公開の臨床データまたは健康データ)であり得る。
ブロック310で、アルゴリズム開発者は、1つまたは複数のモデルの最適化および/または検証のための制約を提供する。制約は、(i)訓練制約、(ii)データ準備制約、および(iii)検証制約のうちの1つまたは複数を含み得る。これらの制約は、図4~図12に関してさらに詳細に説明されるように、データ準備(例えば、データキュレーション、データ変換、データ整合化、およびデータ注釈付け)、モデル訓練、モデル検証、および報告を含む1つまたは複数のモデルの最適化および/または検証の目的を基本的に定義する。理解されるように、アルゴリズム開発者がデータホスト(第2のエンティティ)から利用可能な訓練/試験データセットを使用してアルゴリズム開発者のモデルのうちの1つまたは複数を最適化するように要求する場合には、アルゴリズム開発者は、モデル、訓練制約およびデータ準備制約を提供し得る。他の例では、アルゴリズム開発者が、データホストから利用可能な検証データセットを使用してアルゴリズム開発者のモデルのうちの1つまたは複数を検証することを要求する場合、アルゴリズム開発者は、モデル、検証制約およびデータ準備制約を提供することができる。さらに他の例では、アルゴリズム開発者がデータホストから利用可能なデータセットを訓練/試験/検証することを使用してそれらのモデルの1つまたは複数を最適化および検証することを要求する場合、アルゴリズム開発者は、モデル、訓練制約、検証制約、およびデータ準備制約を提供し得る。
いくつかの態様では、訓練制約には、ハイパーパラメータ、正則化基準、収束基準、アルゴリズム終了基準、1つまたは複数のアルゴリズムで使用するために定義された訓練/検証/試験データ分割、および訓練/試験報告要件のうちの1つまたは複数が含まれるが、これらに限定されない。モデル・ハイパー・パラメータは、モデルの外部にあり、その値をデータから推定することができない構成である。ハイパーパラメータは、機械学習アルゴリズムの挙動を制御し、モデルパラメータを推定または学習するのに役立つように調整または最適化することができる設定である。ハイパーパラメータを選択および最適化するプロセスは、多くの機械学習ソリューションの重要な局面である。ほとんどの機械学習アルゴリズムは、メモリや実行コストなどのモデルの異なる局面を制御するハイパーパラメータを明示的に定義する。ハイパーパラメータは、アルゴリズム開発者によって指定され、ヒューリスティクスなどの1つまたは複数の問題解決技術を使用して設定され得る。しかしながら、アルゴリズムを特定のシナリオに適合させるために、追加のハイパーパラメータが定義されてもよい。例えば、ハイパーパラメータは、モデルの隠れユニットの数、モデルの学習率、またはモデルの畳み込みカーネル幅を含み得る。
正則化は、係数推定値を0に向かって抑制し、または減少させる。言い換えれば、この技術は、過学習のリスクを回避するために、より複雑または柔軟なモデルを学習することを妨げる。正則化は、モデルのバイアスを実質的に増加させることなく、モデルの分散を大幅に減少させる。そのため、正則化技術で使用される調整パラメータλなどの正則化の制約は、バイアスおよび分散に対する影響を制御する。λの値が上昇すると、係数の値が減少し、よって分散が減少する。ある点まで、このλの増加は、データの重要な特性を失うことなく、分散を減少させる(したがって、過学習を回避する)だけであるため、有益である。しかし、特定の値の後、モデルは重要な特性を失い始め、モデルにバイアスが生じ、よって学習不足になる。したがって、λの値などの正則化の制約が、モデル内で様々な正則化技術を実施するために選択され得る。対照的に、収束基準は、シーケンスの収束(例えば、何回かの反復後の1つまたは複数の重みの収束)を確認するために使用される。収束基準は、固定されたエポック数、目標定義、および早期停止などの様々な形態で実装され得、よって、収束基準の制約は、使用されるべき形態または技術、および行われるべき訓練の反復回数、目標値、性能値、使用されるべき検証データセット、定義された改善などいった形態または技術の変数を含み得る。
アルゴリズム終了基準は、モデルが十分な訓練を達成したかどうかを判定するためのパラメータを定義する。アルゴリズム訓練は反復最適化プロセスであるため、訓練アルゴリズムは、訓練データの全部または一部に対して動作し、モデルパラメータを更新し、次いでモデルの性能を再評価する、というステップを複数回行い得る。一般に、終了基準は、処理を継続するために、反復または反復セットごとの最小限の性能改善として定義されることが多い、アルゴリズム性能目標を含み得る。ある例では、終了基準は、訓練モデル更新プロセスの最大反復回数、または訓練に割り振られるべき最大クロック時間もしくは計算グサイクル数を含み得る。反復訓練プロセスをいつ停止すべきかを決定するための他の方法も想定される。訓練/検証/試験データ分割は、データ資産を訓練セット、検証セット、および/または試験セットに分割するための基準を含む。訓練データセットは、モデルを適合または訓練するために使用されるデータのセットである。検証データセットは、モデルパラメータを調整しながら訓練データセットで適合または訓練されたモデルの公平な評価を提供するために使用されるデータセットである。試験データセットは、訓練データセットで適合または訓練された最終モデルの公平な評価を提供するために使用されるデータセットである。これらのデータセットの分割は、モデルの訓練、試験、および/または検証に使用されるべきデータから利用可能なサンプルの総数を含むいくつかの要因に依存し得る。例えば、一部のモデルは、訓練するためにかなりのデータを必要とするので、この場合、アルゴリズム開発者は、より大きな訓練セットに対して最適化する制約を定義し得る。さらに、パラメータが非常に少ないモデルは、検証および調整がより簡単であり得るので、アルゴリズム開発者は、検証セットのサイズを縮小する制約を定義し得る。しかしながら、モデルが多くのパラメータを有する場合には、アルゴリズム開発者が、大きな検証セットに対応する制約を定義したい場合がある(ただし、交差検証も考慮され、制約内に含まれ得る)。
訓練/試験報告は、アルゴリズム開発者が1つまたは複数のモデルの訓練、最適化、および/または試験から観察することに関心を有するメトリックおよび基準を含み得る。ある例では、メトリックおよび基準の制約は、モデルの性能を示すように選択される。例えば、平均パーセント誤差などのメトリックおよび基準は、勾配消失や勾配爆発などのモデルを完成させるときに発生し得るバイアス、分散、およびその他の誤差に関する情報を提供し得る。バイアスは、学習アルゴリズムがデータから学習するには弱い場合の学習アルゴリズムの誤差である。高いバイアスの場合には、学習アルゴリズムは、データ内の関連する詳細を学習することができない。よって、モデルは、訓練データおよび試験データセットに対して性能が低い。対照的に、分散は、学習アルゴリズムがデータセットから過学習しようとするか、または訓練データを可能な限り厳密に適合しようとする場合の学習アルゴリズムの誤差である。高い分散の場合には、アルゴリズムは試験データセットに対して性能が低いが、訓練データセットに対しては性能がかなり良好であり得る。さらに、平均パーセント誤差やR2スコアなどの一般的な誤差メトリックは、必ずしもモデルの正確度を示すとは限らないため、アルゴリズム開発者は、モデルの正確度をより詳細に見るための追加のメトリックおよび基準を定義したい場合がある。例えば、選択されたデータセットが、時間的に相関する傾向があり、しばしば有意な自己相関を示す時系列データを含む場合(値を直接予測する能力の観点からモデルを評価する場合、平均パーセント誤差やR2(決定係数)スコアなどの一般的な誤差メトリックは、両方とも誤った高い予測正確度を示す)には、アルゴリズム開発者は、1つまたは複数の追加のメトリックまたは基準を使用して自己相関を監視することを望む場合がある。
いくつかの態様では、データ準備制約には、入力データ要件および注釈付けプロトコル要件、のうちの1つまたは複数が含まれるが、これらに限定されない。入力データ要件は、データ資産がアルゴリズムまたはモデルで動作するための最適化および/または検証選択基準を含み得る。最適化および/または検証選択基準は、モデルで使用可能であるべき入力データ(例えば、外部データ)の特性、データフォーマット、および要件を定義する。入力データの特性および要件は、データがモデルを最適化および/または検証するために使用可能であるようなデータの特性および要件を指す。例えば、モデルによって実装されるアルゴリズムは、より一般化可能なアルゴリズムを作成するために、異なる民族や地理的データなど、モデルが動作することになる環境を正確に表す訓練データを必要とし得る。ある例では、入力データの特性および要件は、(i)モデルの環境、(ii)50%男性および50%女性などの例の配分、(iii)データ(例えば、画像データ)および/または測定値を生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、すなわち、分散の大きいモデルは、訓練データに簡単に適合し、複雑さを受け入れることができるが、ノイズに敏感であり、一方、バイアスの高いモデルは、より柔軟性が低く、データやノイズの変動に対する感度が低く、複雑さを失いやすい、(v)分類、クラスタ化、回帰、ランク付けなどのモデルによって実装される(1つもしくは複数の)タスク、または(vi)それらの任意の組み合わせに基づいて定義される。例えば、分類およびクラスタ化技術を使用して腫瘍の存在を予測するために開発されたモデルのデータの特性および要件は、そのような腫瘍の識別に使用される30歳~60歳の同数の女性と男性との混合からの三次元画像データおよび/またはバイオマーカ試験データの要件を含み得る。フォーマットは、データのファイル形式(例えば、すべての画像データは.jpegファイルフォーマットでなければならない)だけでなく、レコード自体の整合性も指す。例えば、データフォーマットの制約は、モデルによって認識されるデータセットのための標準的な命名法(例えば、解剖学、疾患、所見、手順、微生物、物質などを網羅する標準化されたコード、用語、同義語および定義を提供する)を定義し得る。
注釈付けプロトコル要件は、モデルに使用されるべき異なるタイプのデータ注釈付けを含み得る。データ注釈付けは、構造化された数値、テキスト、オーディオ、画像、またはビデオなどの任意の形態であり得るデータ(例えば、最適化および/または検証のためのデータセット)をラベル付けするタスクである。データ注釈付けは、教師あり機械学習におけるデータ準備の重要な段階である。モデルは、注釈付きデータ内の反復パターンを認識することを学習する。アルゴリズムが十分な注釈付きデータを処理した後、アルゴリズムは、新しい注釈なしデータが提示されたときに同じパターンを認識し始め得る。制約に基づいて注釈付けプロトコル内で定義され得る様々なタイプの注釈付けがある。例えば、意味的注釈付けは、解析データ、医療メモ、または診断コードなどのテキスト内の様々な概念に対して定義され得る。さらに、テキストカテゴリ化および内容カテゴリ化が、文書に定義済みのカテゴリを割り当てるために定義され得る。例えば、文書内で文もしくは段落にトピックによってタグ付けすることができ、または医学出版物を、内医学、腫瘍学、血液学、微生物学などといった主題によって編成することができる。画像およびビデオの注釈付けの場合、画像またはビデオのフレーム上に描かれた仮想的なボックスである境界ボックスが使用され得る。境界ボックスの内容は、モデルが内容を、腫瘍や骨折などの別個のタイプのオブジェクトとして認識するのを支援するために注釈を付けられ得る。オーディオ注釈付けの場合、エンティティ注釈付け、エンティティ連結、および句チャンキングは、構造化されていない音声の部分をラベル付けおよび定義し、音声の部分に言語的または文法的な意味でタグ付けするために使用され得る。
いくつかの態様では、検証制約は、検証データ選択基準、検証終了基準、および検証報告要件のうちの1つまたは複数を含むが、これらに限定されない。検証データ選択基準は、開発中のアプリケーションにデータの適切なサブセットを選択するために必要な任意の要因を含むことができる検証データセットの選択基準を含み得る。例えば、医療用途では、コホート選択には、臨床コホート基準、人口統計学的基準、およびデータ・セット・クラス・バランスが含まれるが、これらに限定されない。医療アルゴリズム開発において、コホート研究は、疾患の原因を調査し、コホートとして知られる人々のグループにおけるリスク因子と健康転帰との間の関連を確立するために使用される医療研究の一種である。後向きコホート研究は、既に存在するデータを調べ、特定の状態のリスク因子を特定しようとする。前向きコホート研究では、研究者らは疑問を提起し、何が疾患を引き起こす可能性があるかについての仮説を形成する。次いで、研究者らは、仮説を証明または反証するために、一定期間にわたってコホートを観察する。よって、臨床コホート基準は、研究のためにデータを取得すべき人々のグループ、研究のタイプ(例えば、後向きまたは前向き)、そのグループが一定期間にわたって暴露され得るリスク因子、解決されるべき疑問/仮説および関連する疾患もしくは状態、ならびに/またはコホート研究の基準を定義する他のパラメータを定義し得る。人口統計学的基準は、研究のためにデータを取得すべき人々のグループの人口統計学的要因を定義する。人口統計学的要因には、例えば、年齢、性別、教育レベル、収入レベル、配偶者の有無、職業、宗教、出生率、死亡率、家族の平均人数、平均結婚年齢が含まれ得る。データ・セット・クラス・バランスは、研究のためにデータが提示されるかどうかおよびどのように提示されるかを定義する。例えば、多くの場合、データセットは不均衡である(例えば、陽性の解析試験結果を有する患者と比較して、陰性の解析試験結果を有する患者がはるかに多いなど)。不均衡なデータセットを修正する簡単な方法は、少数クラスのインスタンスをオーバーサンプリングするか、または多数クラスのインスタンスをアンダーサンプリングすることによって、それらのデータセットのバランスをとることである。よって、データ・セット・クラス・バランスの制約は、(i)そもそもデータセットのバランスをとるべきかどうか、(ii)どのようにデータセットのバランスをとるべきか、例えば、80:20と比較して40:60が許容可能であるか、または50:50でなければならないか、および(iii)どのようにしてバランスをとるか、例えば少数クラスをオーバーサンプリングするかを定義し得る。医療におけるこれらのコホート定義の考慮事項の多くは、他の適用分野でも類似点を有する。
検証終了基準は、モデルが十分な検証を達成したかどうかを定義する。検証報告は、アルゴリズム開発者が1つまたは複数のモデルの検証から観察することに関心を有するメトリックおよび基準を含み得る。ある例では、メトリックおよび基準の制約は、モデルの全体的な性能および/または正確度を示すように選択される。例えば、メトリックおよび基準は、モデルによって取り込まれた新しいデータバッチ内にデータエラー(例えば、データの予期される状態と実際の状態との間の不一致)があるかどうか、データバッチ間に現れる誤差があるかどうか、訓練と試験との間に特徴スキュー、訓練と試験との間の分布スキューがあるかどうか、予期されるデータと訓練コードでなされた仮定との間に不一致があるかどうか、モデルの品質、モデルの正確度、モデルの精度、モデルの性能、およびモデル品質の問題の診断を支援する経験的データに関する情報を提供し得る。特定の態様では、メトリックおよび基準は、モデル性能を高めるように調整することができるハイパーパラメータに関する情報を提供し得る。
ブロック315で、図4に関して詳細に説明されたプロセスを使用して、1つまたは複数のデータホストがプラットフォームに迎え入れられる。ある例では、潜在的なデータホストは、データプライバシーを維持する方法で、データホストのデータ資産(例えば、臨床データおよび健康データ)から追加の価値を導出する可能性のある機会を通知され得る。プラットフォームを介してそれらのデータ資産を供することに関心のあるデータホストについて、プラットフォームは、データホスト計算およびストレージインフラストラクチャを、データホストのインフラストラクチャ(例えば、ストレージインフラストラクチャをインスタンス化する前のデータホストの既存のインフラストラクチャ)内にプロビジョニングすることと、プラットフォームを介したデータ資産の公開に関するガバナンス要件およびコンプライアンス要件を完了することと、データホストがプラットフォームを介してアルゴリズム開発者(第1のエンティティ)に供することに関心のあるデータ資産を取得することとを含むプロセスを使用して、1つまたは複数のデータホストを迎え入れ得る。迎え入れられると、取得されたデータ資産は、データプライバシーを維持する方法で第三者から検索可能および評価可能になる。
ブロック320で、モデルと共に使用されるべきデータ資産が、図5に関して詳細に説明されたプロセスを使用して識別、取得、およびキュレートされる。ある例では、ブロック310でアルゴリズム開発者によって定義されたデータ資産は、変換、注釈付け、および計算のためにプラットフォームによって識別、取得、およびキュレートされる。すべてのデータ資産は、データホストの環境内に留まり、物理的にもしくはクラウドベースのデータ構造において編成することができ、またはデータ資産を、既存のデータストレージインフラストラクチャ内で論理的に編成することができる。メタデータ、中間計算ステップ、構成およびデータ、ならびにモデルの起源および計算結果を格納するために、記憶空間が識別され得る。ある例では、データセット、メタデータ、および起源データは、将来の参照および規制上の審査のために永続記憶に保存され得る。
ブロック325で、キュレートされたデータ資産が注釈付けプロトコル(例えば、ブロック310で定義された注釈付けプロトコル)に従って注釈を付けられているかどうかに関する判定が行われる。ある例では、判定は、注釈付けプロトコルの制約を、キュレートされたデータ資産に現在適用されている注釈と比較することによって行われ得る。キュレートされたデータ資産が注釈付けプロトコルに従って注釈を付けられている場合には、注釈付けは不要であり、プロセスはブロック340に進む。キュレートされたデータ資産が注釈付けプロトコルに従って注釈を付けられていない場合には、注釈付けが必要であり、プロセスはブロック330に進む。ブロック330で、キュレートされたデータ資産は、図6に関して詳細に説明されるように注釈付けのために準備される。ある例では、注釈付けプロトコルは、データ資産が注釈付けのために特定のフォーマットに変換されるか、または特定の方法で変更されることを必要とする。例えば、複数の画像から構成されるビデオは、閲覧および注釈付けのために個々のフレームまたは画像に分離される必要があり得る。変換プロセスは、通常、データが(1つまたは複数の)モデルの1つまたは複数のアルゴリズムによって必要とされる形態になる、整合化の最終目標に向かう中間ステップである。
ブロック335で、データ資産が注釈付けのために準備されると、データ資産は、図7に関して詳細に説明されるように注釈を付けられる。モデルの各アルゴリズムは、データが特定の方法でラベル付けされることを必要とする場合がある。例えば、乳癌検出/スクリーニングシステムは、特定の病変がizedおよび特定されることを必要とし得る。別の例は、各画像がセグメント化され、存在する組織の種類(正常、壊死、悪性など)によって標識される必要があり得る胃腸がんデジタル病理であろう。テキストまたは臨床データを含むいくつかの事例では、注釈付けは、テキストおよび構造化データの選択されたサブセットに標識オントロジーを適用することを含み得る。注釈付けは、セキュアなカプセル計算サービス内のデータホストに対して(ly)行われる。変換プロセスおよび注釈付けプロセスの重要な原理は、プラットフォームが、データ資産のプライバシーを保全しながら、データがデータホストの技術的範囲外に移動される必要なしに、データのクリーニングおよび変換のアルゴリズムを適用および改良するための様々なプロセスを容易にすることである。
ブロック340で、注釈付きデータ資産がアルゴリズムプロトコル(例えば、ブロック310で定義された訓練制約および/または検証制約)に従って整合化されているかどうかに関する判定が行われる。データ整合化は、様々なファイルフォーマット、命名規則、および列のデータセットをまとめて1つのまとまりのあるデータセットに変換するプロセスである。ある例では、判定は、訓練制約および/または検証制約を注釈付きデータ資産の整合化と比較することによって行われ得る。注釈付きデータ資産がアルゴリズムプロトコルに従って整合化される場合には、さらなる整合化は不要であり、プロセスはブロック360に進む。注釈付きデータ資産がアルゴリズムプロトコルに従って整合化されていない場合、整合化が必要であり、プロセスはブロック345に進む。ブロック345で、注釈付きデータ資産は、図8に関して詳細に説明されるように整合化される。ある例では、アルゴリズムプロトコルは、データ資産が計算のために特定のフォーマットに変換されるか、または特定の方法で変更されることを必要とする。データの整合化は、データ資産を特定のフォーマットに変換するために行われ得、または特定の方法で変更され得る。
ブロック350およびブロック355で、モデルは、データ資産を計算するために準備される。ブロック350およびブロック355で行われるプロセスは、データ資産の準備(例えば、変換および注釈付け)に続いて、データ資産の準備に先立って、またはデータ資産の準備と並行して行われ得る。任意のブロック350で、モデルはリファクタリングされてもよい。このプロセスは、モデルがプラットフォーム内で動作することを可能にするように特別なライブラリまたは最適化をサポートするために行われ得る。例えば、準同型暗号化データを効率的な方法で操作するためには、特別なライブラリがモデルコードに含められる必要があり得る。これらのライブラリは、リファクタリングプロセス中にモデルに組み込まれ得る。しかしながら、リファクタリングプロセスは、すべての最適化アルゴリズムおよび/または検証アルゴリズムに必要とされるわけではないことを理解されたい。
ブロック355で、モデルは、検証および/または訓練されるべきアルゴリズムを含むソフトウェアの外部環境(この場合、データホストの計算環境)への展開を容易にし、さらに、カプセル内に展開されるソフトウェアのプライバシーとホスト計算環境のセキュリティの両方を保護するためのセキュリティサービスを提供するために、セキュアなカプセル計算サービスフレームワークに統合される。セキュアなカプセル計算サービスフレームワークは、プラットフォーム内にプロビジョニングされたモデル・サービング・システムを含む。モデル・サービング・システムは、各モデルを1つまたは複数のセキュアな展開カプセルと関連付け、1つまたは複数のセキュアな展開カプセル内のモデルをデータホストに展開し、モデルは、1つまたは複数のセキュアなアプリケーション・プログラム・インターフェース(API)を介して最適化および/または検証のために1つまたは複数のセキュアなカプセル内から提供または利用され得る。例えば、モデルがセキュアなカプセル計算サービスの一部としてデータホストに展開されると、プラットフォームは、アルゴリズムAPIを介してモデルにデータリソース、モデルパラメータ、または訓練用の共有データ(例えば、親教師訓練パラダイム)を展開または出力し得る。引き換えに、プラットフォームは、アルゴリズムAPIを介して、計算結果、データ、および計算監視結果、訓練されたモデル、モデルパラメータ、またはセキュアなカプセル計算サービスなどの展開された計算コンポーネントおよびプロセスの他の結果を含む入力を受け取り得る。セキュアな展開カプセルは、モデルが、データホストのインフラストラクチャ内から、データ資産およびモデル(例えば、アルゴリズム)のプライバシーを維持しながら隔離された方法で動作することを可能にする。さらに、1つまたは複数のセキュアな展開カプセル内でモデルを動作させているデータホストは、アルゴリズム開発者の独自のソフトウェアを検査、コピー、または修正することができない可能性がある。さらに、1つまたは複数のセキュアな展開カプセル内でモデルを動作させているデータホストは、ホストされているモデルが悪意のあるものであり、組織のインフラストラクチャに害を及ぼしたり、データプライバシーを侵害したりし得る可能性から保護され得る。
様々な態様において、セキュアなカプセル計算フレームワークは、アルゴリズムを動作させるために必要な暗号化コードを受け入れるように構成された計算インフラストラクチャ(例えば、1つまたは複数のサーバ、1つまたは複数の計算ノード、1つまたは複数の仮想コンピューティングデバイスなど)内にプロビジョニングされる。暗号化は、業界標準の公開鍵/秘密鍵暗号化(例えば、AES 256)であり得る。この計算インフラストラクチャは、データホストの計算インフラストラクチャで動作することもでき、またはデータホストのクラウドインフラストラクチャで動作することもできる。暗号化コードは、プラットフォームによって署名され、アーカイブ(例えば、データ・ストレージ・デバイス)に格納される。プラットフォームは暗号化コードの内容を見ることができないが、これにより、食品医薬品協会(Food&Drug Association(FDA))などの規制機関によって要求される場合にはプラットフォームによって検証された正確なアルゴリズムの記録が確立される。セキュアなカプセル計算フレームワークは、計算インフラストラクチャ上でインスタンス化され、暗号化コードは、セキュアなカプセル計算フレームワーク内にアルゴリズム開発者によって配置される。この時点で、暗号化コードが復号される。ある例では、暗号化コードは、アルゴリズム開発者によって、セキュアなカプセル計算フレームワークに正しい秘密鍵を渡すことによって復号され得る。セキュアなカプセル計算フレームワークは、本明細書に記載される定義されたAPIによる以外、一旦起動されるとセキュアなカプセル計算フレームワークの内容と対話することができないように、サーバのCPUハードウェアに格納された秘密鍵を用いてメモリの内容を暗号化することによって作成され得る。オペレーティングシステム自体でさえも、CPUハードウェアのみがアクセス可能な鍵で暗号化されているため、セキュアなカプセル計算フレームワークの内容と対話することができない。これは、たとえオペレーティングシステムが損なわれたとしても、セキュアなカプセル計算フレームワークの内容を監視または読み取ることができないことを意味する。
ブロック360で、モデルの最適化および/または検証が、データ資産を使用して行われる。ある例では、最適化は、アルゴリズムを重みおよびバイアスの定義済みの値またはランダム値で初期設定し、それらの値での出力を予測しようと試みることを含む。特定の例では、モデルはアルゴリズム開発者によって事前に訓練されており、よってアルゴリズムは、重みおよびバイアスで既に初期設定されている場合がある。他の例では、重みおよびバイアスの定義済みの値またはランダム値は、ブロック310でアルゴリズム開発者によって定義され、ブロック360でアルゴリズムに読み込まれ得る。その後、データ資産およびハイパーパラメータがアルゴリズムに入力され得、推論または予測が計算され得、訓練されたモデルが出力をどの程度正確に予測したかを判定するために試験または比較が行われ得る。最適化は、図9に関して詳細に説明されるように、モデルの性能を最適化(例えば、重みおよびバイアスを最適化)しようと、データ資産を用いて訓練および/または試験の1つまたは複数のインスタンスを動作させることを含み得る。検証は、図10に関して詳細に説明されるように、ゴールド・スタンダード・ラベルに基づいてモデルを検証しようと、データ資産を用いて検証の1つまたは複数のインスタンスを動作させることを含み得る。ブロック365で、ブロック360の結果に基づいて、1つまたは複数の報告が生成され、アルゴリズム開発者に配信される。ある例では、報告は、ブロック310で定義された訓練/試験報告要件および/または検証報告要件に従って生成される。
図4に、人工知能アルゴリズム開発プラットフォーム(例えば、図1および図2に関して説明されたプラットフォームおよびシステム)に1つまたは複数のデータホストを迎え入れるためのプロセス400を示す。ブロック405で、データホスト計算およびストレージインフラストラクチャ(例えば、図1および図2に関して説明されたセキュアなカプセル計算サービス)が、データホストのインフラストラクチャ内にプロビジョニングされる。ある例では、このプロビジョニングは、インフラストラクチャにおけるカプセル化されたアルゴリズムの展開、インフラストラクチャにおける適切にプロビジョニングされたハードウェアおよびソフトウェアを有する物理コンピューティングデバイスの展開、ストレージ(物理データストアまたはクラウドベースのストレージ)の展開、インフラストラクチャを介してアクセス可能な公共または専用のクラウドインフラストラクチャ上の展開などを含む。
ブロック410で、ガバナンス要件およびコンプライアンス要件が完了される。いくつかの例では、ガバナンス要件およびコンプライアンス要件の完了は、施設内審査委員会(IRB)からの許可を含む。IRBは、プラットフォームの一部として設けられてもよく、またはデータホストに所属する別個のエンティティであってもよい。IRBは、連合訓練を含むアルゴリズムの開発、検証、および訓練の目的でのデータホストからのデータ資産の使用のための審査および承認に使用され得る。特定の例では、プラットフォーム上で動作すべき特定のプロジェクトが、審査および承認プロセスを合理化するために、IRBの修正として審査される。ガバナンス要件およびコンプライアンス要件の完了は、医療保険の相互運用性と責任に関する法律(Health Insurance Portability and Accountability Act(HIPAA))などの準拠法の下でのプラットフォームによって行われている任意のプロジェクトおよび/またはプラットフォーム自体のコンプライアンスの審査および承認をさらに含み得る。ある例では、既存のインフラストラクチャにおけるカプセル化されたアルゴリズムの展開、適切にプロビジョニングされたハードウェアおよびソフトウェアを備えた物理機器の展開、公共または専用のクラウドインフラストラクチャにおける展開などを含むプラットフォーム、ならびにプロジェクトを実行するためのプラットフォーム内およびプラットフォームに付随する一部またはすべてのアクティビティは、準拠法に準拠する(例えば、100%HIPAA準拠である)必要がある。このプロセスステップは、プラットフォームの準拠法コンプライアンスを審査および承認するために必要なデータホストによるアクティビティを取り込むことを意図されている。ある例では、このプロセスには、HyTrust認証などの所定の認証のアサーションで十分であり得る。
ガバナンス要件およびコンプライアンス要件の完了は、セキュリティ認証の取得をさらに含み得る。例えば、データホストは、新たにプロビジョニングされたすべてのハードウェアおよびソフトウェアシステムにセキュリティ審査プロセスを適用するのが一般的である。セキュリティ審査の詳細は、データホストで定義され、セキュリティ認証を取得するために個別的に決定され得るが、プラットフォームは、明確に文書化し、実証することができるセキュリティの最良慣行に準拠するようにプロビジョニングされる必要がある。ガバナンス要件およびコンプライアンス要件の完了は、追加のガバナンス/コンプライアンスアクティビティの下でのプラットフォームよって行われている任意のプロジェクトおよび/またはプラットフォーム自体のコンプライアンスの審査および承認をさらに含み得る。例えば、各データホストまたはデータホストが位置する政府領域は、追加のガバナンス/コンプライアンスアクティビティを有する場合がある。既存のインフラストラクチャにおけるカプセル化されたアルゴリズムの展開、適切にプロビジョニングされたハードウェアおよびソフトウェアを備えた物理機器の展開、公共または専用のクラウドインフラストラクチャにおける展開などを含むプラットフォーム、ならびにプロジェクトを実行するためのプラットフォーム内およびプラットフォームに付随する一部またはすべてのアクティビティは、追加のガバナンス/コンプライアンスアクティビティに準拠する必要がある。このプロセスステップは、プラットフォームのガバナンス/コンプライアンスアクティビティを審査および承認するために必要なデータホストによるアクティビティを取り込むことを意図されている。ある例では、このプロセスには、所定の認証のアサーションで十分であり得る。
ブロック415で、データホストがモデルの最適化および/または検証に供されることを望むデータ資産が取り出される。ある例では、データ資産は、プラットフォームによる使用のために、既存の記憶場所およびフォーマットからプロビジョニングされたストレージ(物理データストアまたはクラウドベースのストレージ)に転送され(プラットフォームによってアクセス可能な1つまたは複数のデータストアにキュレートされ)得る。例えば、データ資産の第1のデータセットは、データホスト(第2のエンティティ)の第1のデータベースで利用可能であると識別され得、データセットの第2のデータセットは、データホストの第2のデータベースで利用可能であると識別され得る。この例では、データ資産の取り出しは、データプライバシーを維持する方法で、プロビジョニングされたストレージ内の第1のデータセットおよび第2のデータセットを物理的にizingすることを含み得る。プロビジョニングされるストレージは、ステップ505で新たにプロビジョニングされ得るか、またはプラットフォームのための新しいアクセス許可が定義される既存のストレージであり得る。他の例では、データ資産はプロビジョニングされたストレージに物理的に移動されるのではなく、論理アドレスの集合が、プロビジョニングされたストレージまたはプラットフォームからアクセス可能な既存のストレージ(データホストの既存のインフラストラクチャの一部である物理データストアまたはクラウドベースのストレージ)に記録され得る。データ資産が(物理的または論理的に)取り出され、格納される際に、プロジェクト管理およびデータ品質保証においてプラットフォームが使用するためにデータ起源が文書化され得る。理解されるように、データ資産は、データホストのインフラストラクチャ(新たにプロビジョニングされたストレージまたは既存のストレージであり得る)から移動されない。
ブロック415は、データホストが新しいデータを収集するか、または新しいデータ資産のプラットフォームを利用するときに、プラットフォームを新しいデータで更新するために、経時的に繰り返し行われ得る。これらの更新は、連続的であっても一括でもよいが、起源情報を含む、取り出されたデータ資産に対するすべての変更は、各プロジェクトの各段階で使用されるデータを正確に複製し、その起源を理解できることを保証するように記録され得る。
任意で、ブロック420で、データ資産は匿名化されてもよい。ある例では、データ資産は、プラットフォームで使用する前に匿名化される必要がある。匿名化は、誰かの個人の身元が明らかになるのを防ぐために使用されるプロセスである。例えば、人間の対象者の研究中に生成されたデータは、研究参加者のプライバシーを保全するために匿名化される場合がある。匿名化のための戦略は、個人名などの個人識別要素を削除するかまたは隠すことと、生年月日などの準識別要素を抑制または一般化することとを含み得る。特定の例では、データ資産が匿名化され得、適切な再特定化情報が保護された形態(例えば、暗号化)で記録され得る。
任意で、ブロック425で、データ資産は難読化されてもよい。ある例では、プラットフォームで使用する前に、データ資産が難読化される必要がある。データ難読化は、データ暗号化またはトークン化を含むプロセスである。データ暗号化は、機密データがアルゴリズムおよび暗号鍵を使用して符号化され、アルゴリズムおよび正しい暗号鍵を持つユーザのみが機密データをアクセスまたは復号することができるセキュリティプロセスである。いくつかの態様では、データは、従来の暗号化アルゴリズム(例えば、RSA)または準同型暗号のどちらかを使用して暗号化される。特定のアルゴリズムによって暗号化する選択は、規制要件とビジネスニーズとの組み合わせによって決定され得る。例えば、データホストは、アルゴリズム検証の目的では準同型暗号化データへの広範なアクセスを提供し得るが、アルゴリズム訓練ではRSA暗号化データへの高度に制限されたアクセスを提供し得る。データトークン化は、機密データが、破られた場合に意味のある値を有さず、機密値とトークンとの間の関係を格納するトークン保管庫へのアクセス権を有するユーザのみがアクセスまたは復号することができるトークンと呼ばれるランダムな文字列に変換されるセキュリティ方法である。いくつかの態様では、データはトークン化され、トークン保管庫はデータホストによって維持される。
ブロック430で、データ資産が索引付けされ得る。データ索引付けは、問い合わせがデータベースからデータを効率的に取り出すことを可能にする。索引は、特定のテーブルに関連付けられ得、索引で検索されるべき1つまたは複数のキーまたは値から構成され得る(例えば、キーは、データテーブルの列または行に基づくものであり得る)。問い合わせ用語を索引内のキーと比較することにより、同じ値を有する1つまたは複数のデータベースレコードを効率的な方法で見つけることが可能である。ある例では、メタデータやデータフィールドの統計的属性などの基本情報が、1つまたは複数のキーとして計算され、索引に格納される。どんな基本情報が収集され、プラットフォーム内での検索するためにどのように公開されるかの詳細は、データタイプおよび予想されるユースケースに依存する。一般に、この基本情報は、プロジェクトおよびデータの属性についてプラットフォーム上でどんなデータが利用可能であり得るかを識別することによって問い合わせを支援することを意図されている。基本情報を、プラットフォームまたはエンドユーザに、データ資産を処理するために必要となり得るデータ変換および整合化方法を知らせるために使用することもできる。さらに、基本情報を、異常検出および一般的なデータ品質保証目的に使用することができる。
図5に、新しいプロジェクト(例えば、図3のブロック305で受け取られた(1つもしくは複数の)モデルの最適化および/または検証)を完了するためにプラットフォーム(例えば、図1および図2に関して説明されたプラットフォームおよびシステム)と共に使用されるべきデータ資産を識別、取得、およびキュレートするためのプロセス500を示す。ブロック505で、モデルと共に使用されるべきデータ資産がプラットフォーム上で既に利用可能である(既に迎え入れられている)かどうかに関する判定が行われる。判定は、プラットフォーム上のデータ資産の存在(またはその欠如)を識別することによって行われ得る。データ資産は、図4に関して説明されたように、迎え入れられたデータホスト(例えば、パートナーの大学医療センター)から取り出されたデータ資産に対して問い合わせを実行することによって識別され得る。ある例では、入力データ要件(例えば、入力データ特性、データフォーマット、および図3のブロック310で取得されるモデルで使用可能な外部データの要件)は、プラットフォームが利用可能であり、記載の目的を達成するためにモデルによって使用可能なデータ資産を識別するために、プラットフォームによって検索語、フィルタ、および/または追加情報として使用され得る。
識別プロセスは、入力データ要件を検索語および/またはフィルタとして使用して、データ資産に対して問い合わせを実行する(例えば、データ索引を使用してプロビジョニングされたデータストアに対して問い合わせを実行する)プラットフォームによって自動的に行われ得る。あるいは、このプロセスは、対話型プロセスを使用して行われてもよく、例えば、アルゴリズム開発者は、プラットフォームに検索語および/またはフィルタを提供し、それに応答して、プラットフォームは、追加情報を取得するために問題を立て、アルゴリズム開発者は、追加情報を提供し、プラットフォームは、検索語、フィルタ、および/または追加情報を使用して、データ資産についての問い合わせ(例えば、1つまたは複数のデータホストのデータベース上での問い合わせの実行や、データ資産を有し得るデータホストを識別するウェブクローリング)を実行し得る。どちらの場合も、識別は、データ資産内の個人に関するプライベート情報を伏せたままで、データ資産内のグループのパターンを記述することによって、データ資産内の情報を共有するための差分プライバシーを使用して行われる。データ資産がプラットフォーム上で利用可能である(例えば、検索により、問い合わせまたは入力データ要件の制約を満たすデータ資産が識別される)場合には、プロセスはブロック510に進んで、データ資産の新しいプロジェクトを構成する。データ資産がプラットフォーム上で利用できない(例えば、検索により、問い合わせまたは入力データ要件の制約を満たすデータ資産が識別されない)場合には、プロセスはブロック525に進んで、データ資産が既存のデータホストから利用できるかどうかを判定する。
ブロック510で、データ資産のために新しいプロジェクトが構成される。ある例では、データホストコンピュータおよびストレージインフラストラクチャは、識別されたデータ資産で新しいプロジェクトを処理するために、データホストのインフラストラクチャ内にプロビジョニングまたは構成される。ある例では、プロビジョニングまたは構成は、図4のブロック405で説明されたプロセスと同様の方法で行われる。例えば、プロビジョニングまたは構成は、インフラストラクチャにおける新しいプロジェクトに固有のカプセル化されたアルゴリズムの展開、新しいプロジェクトに固有のストレージ(物理データストアまたはクラウドベースのストレージ)の展開、インフラストラクチャを介してアクセス可能な公共または専用のクラウドインフラストラクチャ上の展開などを含み得る。
ブロック515で、規制上の承認(例えば、IRBその他のデータ・ガバナンス・プロセス)が完了され、文書化される。いくつかの例では、規制上の承認は既に存在し、新しいプロジェクトのために単に更新されればよい場合もあり、または新しいプロジェクトのために完全に完了される必要がある場合もある。ある例では、規制上の承認は、図4のブロック410で説明されたプロセスと同様の方法で完了される。例えば、ガバナンス要件およびコンプライアンス要件の完了は、IRBの設定または現在のIRBの修正、準拠法の下での新しいプロジェクトおよび/またはプラットフォームのコンプライアンスの審査および承認、セキュリティ認証の取得、ならびに追加のガバナンス/コンプライアンスアクティビティの下での新しいプロジェクトおよび/またはプラットフォームのコンプライアンスの審査および承認を含み得る。
ブロック520で、データストレージがプロビジョニングされ、プラットフォーム上で識別された新しいデータ資産または迎え入れられる新しいデータ資産のためにデータフォーマットが構成される。ある例では、データストレージのプロビジョニングは、適切なデータストレージおよび問い合わせ構造の作成と共に、新しい論理データ記憶場所の識別およびプロビジョニングを含む。例えば、いくつかの態様では、データは、リレーショナルデータベース、no-SQLデータストア、フラットファイル(例えば、JSON)、または他の構造に格納され得る。これらのアクセスモデル内で、データは、他の多くの可能な方法の中でも特に、リレーショナル・データ・スキーマ(例えばスタースキーマ)として、またはデータフレームのセットとして編成され得る。ストレージモデルの決定は、データタイプ、アルゴリズムタイプ、および基礎となるアルゴリズムソフトウェアによって影響され得るか、またはプラットフォーム自体によって設定されたシステム要件によって決定され得る。プラットフォームへのデータ収集および集約が進行中である場合(前向き研究の場合のように)には、進行中の性能メトリックを適切に比較できるように、訓練または検証プロセスの各ステップでどんなデータセットが使用されたかを正確に識別するために追加の文書が格納され得る。(データセットが増大する際の)データセットの許容される合計サイズ、および欠陥のあるデータの訓練セットへの導入を回避するために進行中の品質評価がどのように実行されるかを含む、追加のプロビジョニング要因がここで考慮される必要があり得る。さらに、これは既存のデータホストのための新しいプロジェクトであるので、ブロック510およびブロック515に関して説明されたように、データホスト計算およびストレージインフラストラクチャがプロビジョニングまたは再構成される必要があり得、規制上の承認(例えば、IRBその他のデータ・ガバナンス・プロセス)が完了され、新しいデータ資産の意図される使用を説明するように文書化される必要があり得る。
ブロック525で、モデルと共に使用されるべきデータ資産が既知または既存のデータホスト(以前に迎え入れられていない)から利用可能であるかどうかに関する判定が行われる。判定は、入力データ要件(例えば、入力データ特性、データフォーマット、および図3のブロック310で取得されるモデルで使用可能な外部データの要件)を有するデータ資産要求を既知または既存のデータホストに送出するプラットフォームによって行われ得る。データホストは機会を通知され、データ資産は入力データ要件に基づいてデータホストによって識別され得る。データ資産が既知のまたは既存のデータホストから利用可能である(例えば、1つまたは複数のデータホストが要求に応答する)場合には、プロセスはブロック510に進んで、新しいプロジェクトを構成し、データ資産を迎え入れる(既知または既存のデータホストは、以前に迎え入れられた他のデータセットを有していた可能性もあるが、この例では、新しいデータ資産が迎え入れられる)。データ資産が既知のまたは既存のデータホストから利用できない(例えば、1つまたは複数のデータホストが要求に応答しない)場合には、プロセスはブロック530に進んで、新しいホストを探す(例えば、潜在的なデータホストは、図3のブロック315に関して説明されたように、データプライバシーを維持する方法でそれらのデータ資産から追加の価値を導出する機会として新しいプロジェクトを通知され得る)。
ブロック530で、1つまたは複数の新しいデータホストがプラットフォームに迎え入れられる。1つまたは複数の新しいデータホストが新しいプロジェクトの通知に応答する例では、図4に関して説明されたように、1つまたは複数の新しいデータホストおよびそれらのデータ資産がプラットフォームに迎え入れられ得る。データ資産が1つまたは複数の新しいデータホストから利用可能である(例えば、1つまたは複数のデータホストが迎え入れられる)場合には、プロセスはブロック510に進んで、新しいプロジェクトを構成し、新しいデータ資産を迎え入れる。
図6に、新しいプロジェクト(例えば、図3のブロック305で受け取られた(1つもしくは複数の)モデルの最適化および/または検証)を完了するためにプラットフォーム(例えば、図1および図2に関して説明されたプラットフォームおよびシステム)と共に使用されるべきデータ資産を変換するためのプロセス600を示す。プロセス600の目標は、注釈付けのためにデータ資産を準備することであり、これは、データが特定のフォーマットで提示されるか、または注釈付けのために修正されることを必要とし得る。ブロック605で、模範データが準備され得る。いくつかの例では、模範データの準備は、整合化プロセスのキー属性を取り込むデータセットの識別または作成を含む。特定の例では、準備は、模範データの匿名化を含む。例えば、データホストは、データ変換のためのデータ変換モデルのアルゴリズムを開発するためのガイドとして使用するために、小さな代表的な模範データセット(トランスフォーマ・プロトタイプ・セット)を識別または作成し得る。トランスフォーマ・プロトタイプ・セットのデータは、匿名化され、整合化プロセスを実施するためのリモート整合化トランスフォーマの作成のためにアルゴリズム開発者に供され得る。
ブロック610で、トランスフォーマ・プロトタイプ・セット内のデータの現在のフォーマットに基づいて、データ資産の変換のために整合化トランスフォーマが作成される。整合化トランスフォーマは、図3のブロック310で定義された(i)訓練制約、(ii)データ準備制約、および(iii)検証制約に従って作成され得る。整合化トランスフォーマは、データホストの生データ資産を注釈付けに使用可能なフォーマットに最終的に変換するために使用される。ブロック615で、トランスフォーマ・プロトタイプ・セット用に開発された整合化トランスフォーマが、プロジェクトに供されたデータホストの生データ資産に適用される。整合化トランスフォーマは、データ資産のプライバシーを維持するために、データホストのインフラストラクチャ内のプラットフォームまたはデータホストによってデータ資産に対して実行される。ブロック620で、プラットフォームまたはデータホストは、(注釈前に)結果として得られた変換されたデータセットを審査して、変換が正常に適用され、データプライバシー要件に違反することなく適用されるかどうかを判定する。ある例では、判定は、初期トランスフォーマ・プロトタイプ・セットのギャップおよび/またはトランスフォーマ実行のエラーを識別することを含む。変換プロセスに失敗が存在する場合には、プロセスはブロック605に戻って、トランスフォーマ・プロトタイプ・セットの新しいデータメンバを識別する。データ資産が正常に変換される場合には、プロセスは、変換されたデータ資産に注釈を付けるための注釈付けプロセスに進む。
図7に、新しいプロジェクト(例えば、図3のブロック305で受け取られた(1つもしくは複数の)モデルの最適化および/または検証)を完了するためにプラットフォーム(例えば、図1および図2に関して説明されたプラットフォームおよびシステム)と共に使用されるべきデータ資産に注釈を付けるためのプロセス700を示す。ブロック705で、アルゴリズム開発者は、モデルの訓練、試験、および検証のためのゴールド・スタンダード・ラベルを作成するための注釈付けプロトコルを定義する。注釈付けプロトコルは、図3のブロック310に関して説明されたように定義され得る。ブロック710で、アルゴリズム開発者は、注釈者のための訓練資料を作成する。訓練資料は、例示的データに対して行われた注釈付けのビデオ、アルゴリズム開発者ソースからの注釈付きの例示的データ、データ・ホスト・ソースからの匿名化データの注釈付きの例、書面によるフローチャート、注釈付けソフトウェアから利用可能な自動スクリプトおよび自動ツールを含み得るが、これらに限定されない。ブロック715で、注釈付けインフラストラクチャが展開され得る。インフラストラクチャの展開は、注釈付きデータのための注釈付けインターフェースおよびバックエンドデータ記憶環境を設定することを含み得る。ある例では、注釈付けインフラストラクチャは、データ資産のプライバシーを維持するためにデータホストのインフラストラクチャ内に展開される。このプロセスは、十分な注釈者ログインのためのライセンス入手、注釈者の成績、注釈、ならびにプロジェクトステータスおよびデータの起源に関するその他のメタデータの追跡を含み得る。
ブロック720で、注釈者がプラットフォームに迎え入れられる。例えば、注釈者が識別され、従事し、訓練され得る。ログイン認証情報が、任意のコンピューティング要件またはアクセス要件(コンピュータ、クラウド・コンピューティング・アクセス、ディスプレイワークステーションなど)と共に注釈者に提供され得る。注釈付けの間中ずっとデータ資産のプライバシーが確実に維持するように、報酬、HIPAA準拠などを含む作業条件、契約が実施され得る。ブロック725で、注釈付けプロジェクトが設定または構成される。ある例では、データホストは、アルゴリズム開発者と協調してプロジェクトの目的および注釈者ワークリスト戦略を定義し得る。次いで、プロジェクトの目的および注釈者ワークリスト戦略を使用して、注釈付けプロジェクトを設定または構成することができる。例えば、測定可能であり、注釈付けプロジェクトの成功を評価するために使用され得る重要な成績指標(例えば、1日当たり、またはセッションごとに注釈付けされるべきデータ点数)を含むプロジェクトの目的が定義され得る。さらに、注釈ワークリスト戦略は、(既知のラベルを有するアルゴリズム開発者によって供給された)試験データを含む注釈者間のデータの分割、複数の注釈者へのデータの公開(例えば、オペレータ間のばらつきおよび注釈者の正確度監視のため)、同じ注釈者への複数のデータ公開(例えば、オペレータ内のばらつきを監視するため)、ならびに他の作業上の考慮事項を含む1つまたは複数の作業上の考慮事項を説明するように定義され得る。
ブロック730で、データ(例えば、プロセス600からの変換データ)の注釈付けが、定義された注釈付けプロトコルにより、ブロック725で定義されたプロジェクト構造に従って行われる。ブロック735で、注釈付けプロセスの成績およびデータプライバシー要件のコンプライアンスが監視される。アルゴリズム開発者、データホスト、またはそれらの組み合わせは、注釈者の成績を監視し得る。このコンテキストでは、成績は、作業速度と作業正確度の両方を含むことができ(これらはブロック740で別々に監視され得る)、注釈者別およびデータタイプ別に分けることができる。例えば、注釈者が契約上の義務を満たしており、プロジェクトの目的に向かって進んでいるかどうかを判定するために、1日当たりの注釈の数および注釈者ごとの合計注釈数が監視され得る。注釈付けの正確度を、いくつかの手段によって監視することができる。例えば、試験データがアルゴリズム開発者によって供給され得、既知のラベルを有し、注釈者がプロトコルに実質的に従っていることを保証するために注釈者に提示することができる。いくつかの態様では、注釈者の正確度を評価/推定するために、同じデータを複数の注釈者に提示することができる。本明細書で使用される場合、「実質的に(substantially)」、「およそ(approximately)」、および「約(about)」という用語は、当業者には理解されるように、指定されたものの必ずしも全部ではないが大部分として定義される(かつ指定されたものを完全に含む)。任意の開示の態様では、「実質的に(substantially)」、「およそ(approximately)」、または「約(about)」という用語は、指定されたものの「[パーセンテージ]内」で置き換えられてもよく、パーセンテージは0.1パーセント、1パーセント、5パーセント、および10パーセントを含む。ブロック730では、自動注釈付け技術も同様に組み込まれ得ることが想定される。ある例では、既存の自動注釈付け技術をいくつかの注釈付けタスクに使用することができる。他の場合には、データが注釈付けされる際に、モデルが、注釈付けプロセスを自動化、加速、および/または増強するために開発される。そのようなツールを次いで、異なるデータセットおよび異なるアルゴリズム開発者プロジェクトに関連付けられ得る将来の注釈付けタスクにおいて使用することができる。
図8に、新しいプロジェクト(例えば、図3のブロック305で受け取られた(1つもしくは複数の)モデルの最適化および/または検証)を完了するためにプラットフォーム(例えば、図1および図2に関して説明されたプラットフォームおよびシステム)と共に使用されるべきデータ資産を整合化するためのプロセス800を示す。プロセス800の目標は、1つまたは複数のアルゴリズムによる計算のためにデータ資産を準備することであり、これは、データが特定のフォーマットで提示されるか、または処理のために修正されることを必要とし得る。ブロック805で、模範データが準備され得る。いくつかの例では、模範データの準備は、整合化プロセスのキー属性を取り込むデータセットの識別または作成を含む。特定の例では、準備は、模範データの匿名化を含む。例えば、データホストは、データ変換のためのモデルとして使用するために、小さな代表的な模範データセット(整合化プロトタイプセット)を識別または作成し得る。整合化プロトタイプセットのデータは、匿名化され、整合化プロセスを実施するためのリモート整合化トランスフォーマの作成のためにアルゴリズム開発者に供され得る。模範データは、図6に関して説明された変換プロセスで使用される同じ模範データセット(トランスフォーマ・プロトタイプ・セット)であってもよく、補足されたデータセット(例えば、整合化プロトタイプセットを作成するためにトランスフォーマ・プロトタイプ・セットに追加された新しいデータメンバ)であってもよく、または整合化のための完全に新しいデータセットであってもよい。
ブロック810で、整合化プロトタイプセット内のデータの現在のフォーマットに基づいて、データ資産の整合化のための整合化トランスフォーマが作成される。整合化トランスフォーマは、図3のブロック310で定義された(i)訓練制約、(ii)データ準備制約、および(iii)検証制約に従って作成され得る。整合化トランスフォーマは、データホストの変換された/注釈付きデータ資産をモデルへの入力に使用可能なフォーマットに最終的に変換するために使用される。ブロック815で、整合化プロトタイプセットのために開発された整合化トランスフォーマが、プロジェクトに供されたデータホストの変換された/注釈付きデータ資産に適用される。データトランスフォーマは、データ資産のプライバシーを維持するために、データホストのインフラストラクチャ内のプラットフォームまたはデータホストによって変換された/注釈付きデータ資産に対して実行される。ブロック820で、プラットフォームまたはデータホストは、(モデル実行前に)結果として得られた整合化データセットを審査して、変換が正常に適用され、データプライバシー要件に違反することなく適用されるかどうかを判定する。ある例では、判定は、初期トランスフォーマ・プロトタイプ・セットのギャップおよび/またはトランスフォーマ実行のエラーを識別することを含む。変換プロセスに失敗が存在する場合には、プロセスはブロック805に戻って、整合化プロトタイプセットの新しいデータメンバを識別する。データ資産が正常に変換される場合には、プロセスは、モデル内の整合化されたデータ資産を使用するための最適化および/または検証プロセスに進む。有利には、アルゴリズムで使用するためのデータの多段階整合化および注釈付けを容易にするためのこれらのステップは、基礎となるデータをアルゴリズム開発者に公開することなく実施されることが可能である。
図9に、プラットフォーム(例えば、図1および図2に関して説明されたプラットフォームおよびシステム)を使用して1つまたは複数のモデルを最適化するためのプロセス900を示す。ブロック905で、アルゴリズムの各インスタンスでデータセット(データ資産から分割された訓練データセット)を訓練するために連合訓練ワークフローが実行される。ある例では、訓練されたモデルを生成するためにアルゴリズム訓練が訓練データセットに対して行われる。訓練データセットは、図3および図4に関して説明されたように、1つまたは複数のデータホストによってホストされ得る。連合訓練ワークフローは、訓練データ資産を入力として取り込み、パラメータを使用して訓練データ資産の特徴をターゲット推論にマップし、損失関数または誤差関数を計算し、損失関数または誤差関数を最小化するためにパラメータを学習されたパラメータに更新し、モデルの1つまたは複数の訓練されたインスタンスを出力する。例えば、連合訓練ワークフローは、訓練データ資産を入力として取り込み得、モデルパラメータを使用して訓練データ資産の属性をターゲット予測にマップする訓練データ資産内のパターンを見つけ、損失関数または誤差関数の訓練勾配を計算し、訓練勾配に応答してモデルパラメータを学習されたモデルパラメータに更新し、学習されたモデルパラメータを使用して訓練データ資産内のパターンを取り込むアルゴリズムの訓練されたインスタンスを出力する。
訓練セットからのデータが、APIを介してデータホストによってセキュアなカプセル計算フレームワークに渡され、1つまたは複数のモデルの応答(例えば、訓練勾配)がプラットフォームに返され、そこで応答は訓練報告に集約される。この対話以外に、セキュアなカプセル計算フレームワークの内部からセキュアなカプセル計算フレームワークの外部への通信は許されず、不正なアルゴリズムがセキュアなカプセル計算フレームワークの外部でプライベートデータを通信するのを防ぐ。いくつかの態様では、連合訓練ワークフローは、アルゴリズム訓練が完全に収束し、すべてのハイパーパラメータが最適化される完全なモデル訓練を含む。他の態様では、連合訓練ワークフローは、増分訓練を実行する。どちらの場合も、パラメータおよび/または訓練勾配などの訓練の結果は、「完全連合モデル」への統合のためにマスタ・アルゴリズム・モジュールに送信される。パラメータおよび/または訓練勾配などの結果は、データ資産およびモデルのプライバシーを保証するために送信前に暗号化され得る。
ブロック910で、モデルの訓練されたインスタンスごとのパラメータおよび/または訓練勾配を含む結果が、完全連合モデルに統合される。統合することは、パラメータおよび/または訓練勾配などの結果を集約して集約されたパラメータおよび/または訓練勾配を得ることと、完全連合モデルの学習されたモデルパラメータを集約されたパラメータおよび/または訓練勾配で更新することとを含む。ある例では、集約することは、水平連合学習、垂直連合学習、連合転移学習、またはそれらの任意の組み合わせを使用して行われる。
ブロック915で、完全連合モデルで試験ワークフローが実行される。試験ワークフローは、試験データを入力として取り込み、更新された学習されたモデルパラメータを使用して試験データ内のパターンを見つけ、推論を出力する。さらに、推論を提供する際の完全連合モデルの性能が計算され、完全連合モデルがアルゴリズム終了基準(すなわち、モデルが十分な訓練を達成したかどうかを定義する基準)を満たしているかどうかに関する判定が行われる。ある例では、モデルのハイパーパラメータおよびモデルパラメータが、図3のブロック310でアルゴリズム開発者によって定義されたアルゴリズム終了基準に従って、収束、エラー状態、収束の失敗などについて試験される。終了基準に達していない場合には、プロセスはブロック905に戻り、そこで更新されたモデル(例えば、完全連合モデル)が訓練データセットでの追加の訓練のために各データホストに配布される。この反復プロセスは、アルゴリズム終了基準が満たされるまで繰り返される。アルゴリズム訓練プロセスの進捗状況は、報告制約に従って、このステップ中にアルゴリズム開発者に報告され得る。アルゴリズム終了基準が満たされた場合には、プロセスはブロック920に進む。
ブロック920で、反復アルゴリズム訓練プロセスがアルゴリズム終了基準を満たすと、完全連合モデルの集約されたパラメータおよび/または訓練勾配などの集約結果が、報告制約に従って性能メトリックの報告と共に、アルゴリズム開発者に配信され得る。ブロック925で、アルゴリズム開発者によって最適化プロセスが完了されたと判定され得る。ある例では、反復アルゴリズム訓練プロセスがアルゴリズム終了基準を満たしたとき、またはアルゴリズム開発者が要求したときに、集約されたパラメータおよび/または訓練勾配などの集約結果がモデルの各インスタンスに送信され得る。モデルの各インスタンスで更新訓練ワークフローが実行され得る。更新訓練ワークフローは、学習されたモデルパラメータを集約されたパラメータおよび/または訓練勾配で更新し、更新された学習されたモデルパラメータを使用して訓練および試験データ資産内のパターンを取り込むモデルの更新されたインスタンスを出力する。
特定の例では、訓練プロセスで使用されるモデルおよびデータセットは、将来の目的(例えば、規制上の審査)のために維持される。例えば、訓練アクティビティが完了すると、セキュアなカプセル計算フレームワーク全体およびその内容のすべては、転送されたデータまたはモデルに対する継続的な暴露のリスクがないように安全に削除され得る。訓練のために提出された元の暗号化コードは、規制当局による検査のために常に利用可能であるようにするためにプラットフォームによってアーカイブされる。
図10に、プラットフォーム(例えば、図1および図2に関して説明されたプラットフォームおよびシステム)を使用して1つまたは複数のモデルを検証するためのプロセス1000を示す。ブロック1005で、初期モデルが取得される。ある例では、取得されるモデルは、アルゴリズム開発者から取得された既存の訓練されたモデルである。初期モデルは、図3に関して説明されたように取得され得る。ブロック1010で、検証データセット(データ資産から分割された検証データセット)に対して検証ワークフローが実行される。ある例では、モデル性能または正確度を判定するために、検証データセットに対して検証が行われる。検証データセットは、図3および図4に関して説明されたように、1つまたは複数のデータホストによってホストされ得る。検証ワークフローは、検証データセットを入力として取り込み、学習されたモデルパラメータを使用して検証データセット内のパターンを見つけ、推論を出力する。検証セットからのデータが、APIを介してデータホストによってセキュアなカプセル計算フレームワークに渡され、1つまたは複数のモデルの応答(例えば、推論)がプラットフォームに返され、そこで応答は検証報告に集約される。この対話以外に、セキュアなカプセル計算フレームワークの内部からセキュアなカプセル計算フレームワークの外部への通信は許されず、不正なアルゴリズムがセキュアなカプセル計算フレームワークの外部でプライベートデータを通信するのを防ぐ。
ブロック1015で、モデルの性能または正確度がゴールド・スタンダード・ラベル(すなわち、グラウンドトゥルース)に基づいて計算され、モデルが検証されたかどうかに関する判定が行われる。例えば、マンモグラムで乳癌病変を検出するように設計されたアルゴリズムを、病変を含むかまたは含まないかのどちらかとして医療専門家によってラベル付けされたマンモグラムのセットで検証することができる。この専門的にラベル付けされたマンモグラムのセットに対するアルゴリズムの性能が検証報告である。ある例では、図3のブロック310でアルゴリズム開発者によって定義された検証基準(すなわち、モデルの検証が判定される基準)に従って、モデルの特徴選択、分類、およびパラメータ化が(例えば、曲線下面積解析を使用して)視覚化され、ランク付けされる。ある例では、モデルが検証されたかどうかを判定することは、モデルが図3のブロック310でアルゴリズム開発者によって定義された検証終了基準(すなわち、モデルが十分な検証を達成したかどうかを定義する基準)を満たしたかどうかを判定することを含む。
モデルの性能が検証されていない場合には、プロセスはブロック1020に戻り、そこでモデルが微調整され得る(例えば、ハイパーパラメータを最適化する)。ハイパーパラメータの最適化は、グリッド検索技術やランダム検索技術などの任意の公知の最適化技術を使用して行われ得る。この反復プロセスは、モデルが検証されるまで、または検証終了基準が満たされるまで繰り返される。検証プロセスの進捗状況は、報告制約に従って、このステップ中にアルゴリズム開発者に報告され得る。検証終了基準が満たされた場合には、プロセスはブロック1025に進む。ブロック1025で、検証終了基準が満たされると、検証されたモデルの最適化されたハイパーパラメータが、報告制約に従って性能メトリックの報告と共に、アルゴリズム開発者に配信され得る。ある例では、性能メトリックの報告は、単一のデータ資産セットに対するアルゴリズムまたはモデルの検証の単一の検証報告として提供され得る。他の例では、性能メトリックの報告は、任意の数の独立したデータ資産セットに対する検証から集約されたアルゴリズムまたはモデルの検証の単一の検証報告として提供され得る。その後、検証プロセスは、アルゴリズム開発者によって完了したと判定され得る。特定の例では、検証プロセスで使用されるモデルおよびデータセットは、将来の目的(例えば、規制上の審査)のために維持される。例えば、検証アクティビティが完了すると、セキュアなカプセル計算フレームワーク全体およびその内容のすべては、転送されたデータまたはモデルに対する継続的な暴露のリスクがないように安全に削除され得る。検証のために提出された元の暗号化コードは、規制当局による検査のために常に利用可能であるようにするためにプラットフォームによってアーカイブされる。
図11は、モデル開発プラットフォームおよびシステム(例えば、図1~図10に関して説明されたモデル開発プラットフォームおよびシステム)を使用してモデルを最適化および/または検証するための処理の一例を示す簡略フローチャート1100である。プロセス1100はブロック1105で開始し、そこでモデルおよびモデルと関連付けられる入力データ要件がアルゴリズム開発者(例えば、第1のエンティティ)から受け取られる。入力データ要件は、データ資産がモデルで動作するための最適化および/または検証選択基準を含み得る。最適化および/または検証選択基準は、データ資産がモデルで動作するための特性、フォーマット、および要件を定義する。ブロック1110で、データ資産の入力データ要件(例えば、最適化および/または検証選択基準)に基づいて、データ資産がデータホストから利用可能であると識別される。データ資産は、最適化および/または検証選択基準に基づいて1つまたは複数のホストのデータストレージ構造に対して1つまたは複数の問い合わせを実行することによって識別され得る。
ブロック1115で、データホストが迎え入れられる(以前に迎え入れられていない場合)。迎え入れることは、モデルでのデータ資産の使用がデータプライバシー要件に準拠していることを確認することを含む。ブロック1120で、データ資産は、データホストのインフラストラクチャ内にあるデータストレージ構造内でキュレートされる。キュレートすることは、複数のデータストレージ構造の中からデータストレージ構造を選択すること、およびデータホストのインフラストラクチャ内にデータストレージ構造をプロビジョニングすることを含み得る。データストレージ構造の選択は、モデル内のアルゴリズムのタイプ、データ資産内のデータのタイプ、コンピューティングデバイスのシステム要件、またはそれらの組み合わせに基づくものであり得る。ブロック1125で、モデルによる処理のためにデータ資産がデータストレージ構造内で準備される。データ資産を準備することは、データ資産に1つまたは複数の変換を適用すること、データ資産に注釈を付けること、データ資産を整合化すること、またはそれらの組み合わせを含み得る。
ブロック1130で、モデルがセキュアなカプセル計算フレームワークに統合される。セキュアなカプセル計算フレームワークは、データ資産のプライバシーを保全するセキュアな方法でアプリケーション・プログラム・インターフェースを介してデータストレージ構造内のデータ資産にモデルを提供し得る。ブロック1135で、データ資産がモデルによって動作する。いくつかの態様では、データ資産をモデルによって動作させることは、モデルの複数のインスタンスを作成することと、データ資産を、訓練データセットと1つまたは複数の試験データセットとに分割することと、モデルの複数のインスタンスを訓練データセットで訓練することと、モデルの複数のインスタンスの各々の訓練からの結果を完全連合モデルに統合することと、1つまたは複数の試験データセットを完全連合モデルによって動作させることと、1つまたは複数の試験データセットの動作に基づいて完全連合モデルの性能を計算することとを含む訓練ワークフローを実行することを含む。他の態様では、データ資産をモデルによって動作させることは、1つまたは複数の検証データセットにおいてデータ資産を分割することと、1つまたは複数の検証データセットをモデルによって動作させることと、1つまたは複数の検証データセットの動作に基づいてモデルの性能を計算することとを含む検証ワークフローを実行することを含む。ブロック1140で、ブロック1145でモデルを動作させたことに関する報告がアルゴリズム開発者に提供され得る。
図12に、本開示による、プライバシー保護された整合化臨床データおよび健康データの複数のソースに解析を分散させることによって人工知能アルゴリズムを開発するためのシステムおよび方法での使用に適した例示的なコンピューティングデバイス1200を示す。例示的なコンピューティングデバイス1200は、1つまたは複数の通信バス1215を使用してメモリ1210およびコンピューティングデバイス1200のその他の構成要素と通信するプロセッサ1205を含む。プロセッサ1205は、メモリ1210に格納されたプロセッサ実行可能命令を実行して、図11に関して上述された例示的な方法1100の一部または全部などの、異なる例に従って人工知能アルゴリズムを開発するための1つまたは複数の方法を行うように構成される。この例では、メモリ1210は、図1~図11に関して上述されたように、モデルおよびデータ資産およびモデル性能解析1225を使用して推論1220を提供するプロセッサ実行可能命令を格納する。コンピューティングデバイス1200は、この例では、ユーザ入力を受け入れるために、キーボード、マウス、タッチスクリーン、マイクロフォンなどの1つまたは複数のユーザ入力デバイス1230も含む。コンピューティングデバイス1200はまた、ユーザインターフェースなどのユーザに視覚出力を提供するためのディスプレイ1235も含む。
コンピューティングデバイス1000はまた、通信インターフェース1240も含む。いくつかの例では、通信インターフェース1240は、エリアネットワーク(「LAN」)、インターネットなどの広域ネットワーク(「WAN」)、メトロポリタン・エリア・ネットワーク(「MAN」)、ポイントツーポイント接続またはピアツーピア接続を含む、1つまたは複数のネットワークを使用した通信を可能にし得る。他のデバイスとの通信は、任意の適切なネットワーキングプロトコルを用いて達成され得る。例えば、1つの適切なネットワーキングプロトコルは、インターネットプロトコル(「IP」)、伝送制御プロトコル(「TCP」)、ユーザ・データグラム・プロトコル(「UDP」)、またはTCP/IPやUDP/IPなどのそれらの組み合わせを含み得る。
本明細書の方法およびシステムのいくつかの例は、様々な機械上で実行されるソフトウェアに関して説明されているが、方法およびシステムはまた、特に本開示による様々な方法を実行するためのフィールド・プログラマブル・ゲート・アレイ(FPGA)などの特別に構成されたハードウェアとして実装されてもよい。例えば、各例を、デジタル電子回路として、またはコンピュータハードウェア、ファームウェア、ソフトウェアとして、もしくはそれらの組み合わせとして実装することができる。一例では、デバイスは、1つまたは複数のプロセッサを含み得る。プロセッサは、プロセッサに結合されたランダム・アクセス・メモリ(RAM)などのコンピュータ可読媒体を含む。プロセッサは、1つまたは複数のコンピュータプログラムを実行するなど、メモリに格納されたコンピュータ実行可能プログラム命令を実行する。そのようなプロセッサは、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、アルゴリズム固有集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、および状態機械を含み得る。そのようなプロセッサは、PLC、プログラマブル割り込みコントローラ(PIC)、プログラマブル論理デバイス(PLD)、プログラマブル読み出し専用メモリ(PROM)、電子的プログラム可能読み出し専用メモリ(EPROMもしくはEEPROM)、または他の同様のデバイスなどのプログラマブル電子デバイスをさらに含み得る。
そのようなプロセッサは、プロセッサによって実行されると、プロセッサに、本開示による方法を、プロセッサによって実行されるかまたは支援されるように実行させることができるプロセッサ実行可能命令を格納し得る媒体、例えば、1つまたは複数の非一時的コンピュータ可読媒体を含むか、または媒体と通信し得る。非一時的コンピュータ可読媒体の例には、ウェブサーバ内のプロセッサなどのプロセッサにプロセッサ実行可能命令を提供することができる電子記憶デバイス、光学記憶デバイス、磁気記憶デバイス、またはその他の記憶装置が含まれ得るが、これらに限定されない。非一時的コンピュータ可読媒体の他の例には、フロッピーディスク、CD-ROM、磁気ディスク、メモリチップ、ROM、RAM、ASIC、構成済みプロセッサ、すべての光学媒体、すべての磁気テープその他の磁気媒体、またはコンピュータプロセッサが読み取ることができる任意の他の媒体が含まれるが、これらに限定されない。記載のプロセッサおよび処理は、1つまたは複数の構造内にあってもよく、1つまたは複数の構造を介して分散されてもよい。プロセッサは、本開示による方法(または方法の一部)を実行するためのコードを含み得る。
IV. さらなる考慮事項
上記の説明では、態様の完全な理解を提供するために具体的な詳細が示されている。しかしながら、態様をこれらの具体的な詳細なしで実施することができることが理解される。例えば、態様を不必要な詳細で不明瞭にしないために、回路をブロック図に示すことができる。他の例では、態様を不明瞭にすることを回避するために、周知の回路、プロセス、アルゴリズム、構造、および技術を不必要な詳細なしで示すことができる。
上述の技術、ブロック、ステップ、および手段の実装は、様々な方法で行うことができる。例えば、これらの技術、ブロック、ステップ、および手段を、ハードウェア、ソフトウェア、またはそれらの組み合わせとして実装することができる。ハードウェア実装の場合、処理ユニットを、1つまたは複数のアルゴリズム固有集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、上述の機能を行うように設計された他の電子ユニット、および/またはそれらの組み合わせ内に実装することができる。
また、態様を、フローチャート、フロー図、データフロー図、構造図、またはブロック図として示されるプロセスとして記述することができることにも留意されたい。フローチャートは動作を順次プロセスとして記述することができるが、動作の多くを並行してまたは同時に行うことができる。さらに、動作の順序を並べ替えることもできる。プロセスは、その動作が完了したときに終了するが、図に含まれていない追加のステップを有することも可能である。プロセスは、メソッド、関数、プロシージャ、サブルーチン、サブプログラムなどに対応することができる。プロセスが関数に対応する場合、その終了は、呼び出し関数またはメイン関数への関数の戻りに対応する。
さらに、態様を、ハードウェア、ソフトウェア、スクリプト言語、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、および/またはそれらの任意の組み合わせによって実装することができる。ソフトウェア、ファームウェア、ミドルウェア、スクリプト言語、および/またはマイクロコードで実装される場合、必要なタスクを行うためのプログラムコードまたはコードセグメントを、記憶媒体などの機械可読媒体に格納することができる。コードセグメントまたは機械実行可能命令は、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、スクリプト、クラス、または命令、データ構造、および/もしくはプログラム文の任意の組み合わせを表すことができる。コードセグメントを、情報、データ、引数、パラメータ、および/またはメモリ内容を受け渡すことによって、別のコードセグメントまたはハードウェア回路に結合することができる。情報、引数、パラメータ、データなどを、メモリ共有、メッセージパッシング、チケットパッシング、ネットワーク伝送などを含む任意の適切な手段を介して受け渡し、転送し、または伝送することができる。
ファームウェアおよび/またはソフトウェア実装の場合、方法を、本明細書に記載の機能を行うモジュール(例えば、プロシージャ、関数など)を用いて実装することができる。本明細書に記載の方法を実装する際に、命令を実体的に具体化する任意の機械可読媒体を使用することができる。例えば、ソフトウェアコードをメモリに格納することができる。メモリは、プロセッサ内またはプロセッサの外部に実装することができる。本明細書で使用される場合、「メモリ」という用語は、任意のタイプの長期、短期、揮発性、不揮発性、またはその他の記憶媒体を指し、どんな特定のタイプのメモリまたはメモリの数にも、または記憶が格納される媒体のタイプにも限定されない。
さらに、本明細書で開示されるように、「記憶媒体」、「ストレージ」または「メモリ」という用語は、読み出し専用メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、磁気RAM、コアメモリ、磁気ディスク記憶媒体、光記憶媒体、フラッシュ・メモリ・デバイス、および/または情報を格納するためのその他の機械可読媒体を含む、データを格納するための1つまたは複数のメモリを表すことができる。「機械可読媒体」という用語は、携帯型もしくは固定型の記憶デバイス、光記憶デバイス、無線チャネル、ならびに/または(1つもしくは複数の)命令および/もしくはデータを含むかもしくは搬送する、格納することができる様々な他の記憶媒体を含むが、これらに限定されない。
本開示の原理を特定の装置および方法に関連して上述したが、この説明は例としてなされているにすぎず、本開示の範囲に対する限定としてではないことを明確に理解されたい。

Claims (15)

  1. 以下の工程を含む方法:
    データ処理システムにおいて、アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取る工程であって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための最適化および/または検証選択基準を含み、前記最適化および/または検証選択基準は、前記データ資産が前記アルゴリズムで動作するための特性、フォーマット、および要件を定義し、前記データ資産の特性および要件は、前記データ資産が前記アルゴリズムを最適化および/または検証するために使用可能であるデータの特性および要件を指し、前記アルゴリズムおよび入力データ要件は、アルゴリズム開発者から受け取られる、前記受け取る工程;
    前記データ処理システムによって、前記データ資産を、前記データ資産についての前記最適化および/または検証選択基準に基づいて、データホストから利用可能であるものとして識別する工程であって、前記データホストは、前記アルゴリズム開発者とは異なるエンティティである、前記識別する工程;
    前記データ処理システムによって、前記データホストのインフラストラクチャ内のデータストレージ構造内の前記データ資産をキュレートする工程;
    前記データ処理システムによって、前記アルゴリズムが処理するための前記データストレージ構造内の前記データ資産を準備する工程;
    前記データ処理システムによって、セキュアなカプセル計算フレームワークを、前記データホストのインフラストラクチャの計算インフラストラクチャ内にプロビジョニングする工程であって、前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを前記データストレージ構造内の前記データ資産に、前記データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供する、前記プロビジョニングする工程;
    前記データ処理システムによって、前記アルゴリズムを前記セキュアなカプセル計算フレームワークに統合する工程であって、前記アルゴリズム開発者によって、前記アルゴリズムを動作させるための暗号化コードを前記セキュアなカプセル計算フレームワークの内部に配置することと、前記アルゴリズム開発者によって、前記アルゴリズムを動作させるための復号化コードを得るために前記暗号化コードを復号化することとを含む、前記統合する工程;ならびに、
    前記データ処理システムによって、前記データ資産を前記アルゴリズムを通して動作させる工程であって、1つまたは複数のセキュアなアプリケーション・プログラム・インターフェースを介して、前記データ資産を前記データストレージ構造から前記セキュアなカプセル計算フレームワーク内の前記アルゴリズムへ渡すことと、前記データ資産および前記復号化コードを用いて前記アルゴリズムを最適化する、検証する、または前記アルゴリズムにより推論を計算することと、前記最適化、検証、または推論の計算の結果を、前記1つまたは複数のセキュアなアプリケーション・プログラム・インターフェースを介して、前記アルゴリズム開発者または前記データホストに渡すこととを含む、前記動作させる工程。
  2. 前記データ資産の前記特性および前記要件が、
    (i)前記アルゴリズムの環境、(ii)前記ータ資産内の例の配分、(iii)前記ータ資産を生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、(v)前記アルゴリズムによって実装されたタスク、または(vi)それらの任意の組み合わせ
    に基づいて定義される、請求項1記載の方法。
  3. 前記識別する工程が、前記データ資産内の個人に関するプライベート情報を伏せたままで、前記データ資産内のグループのパターンを記述することによって、前記データ資産内の情報を共有するための差分プライバシーを使用して行われ、
    前記キュレートする工程が、複数のデータストレージ構造の中から前記データストレージ構造を選択することと、前記データホストの前記インフラストラクチャ内に前記データストレージ構造をプロビジョニングすることとを含み、
    前記データストレージ構造の前記選択が、前記アルゴリズムのタイプ、前記データ資産内のデータのタイプ、前記データ処理システムのシステム要件、またはそれらの組み合わせに基づくものである、
    請求項1記載の方法。
  4. 前記データ処理システムによって、前記データホストを迎え入れる工程をさらに含み、
    前記迎え入れる工程が、前記アルゴリズムでの前記データ資産の使用がデータプライバシー要件に準拠したものであることを確認することを含む、
    請求項1記載の方法。
  5. 前記データ資産を準備する工程が、前記データ資産に1つもしくは複数の変換を適用すること、前記データ資産に注釈を付けること、前記データ資産を整合化すること、またはそれらの組み合わせを含む、請求項1記載の方法。
  6. 前記データ資産を前記アルゴリズムを通して前記動作させる工程が、
    前記アルゴリズムの複数のインスタンスを作成することと、前記データ資産を、訓練データセットと1つまたは複数の試験データセットとに分割することと、前記アルゴリズムの前記複数のインスタンスを前記訓練データセットで訓練することと、前記アルゴリズムの前記複数のインスタンスの各々の前記訓練からの結果を完全連合アルゴリズムに統合することと、前記1つまたは複数の試験データセットを前記完全連合アルゴリズムを通して動作させることと、前記1つまたは複数の試験データセットの前記動作に基づいて前記完全連合アルゴリズムの性能を計算することとを含む、訓練ワークフロー
    を実行することをさらに含む、請求項1記載の方法。
  7. 前記データ資産を前記アルゴリズムを通して前記動作させる工程が、
    前記データ資産を1つまたは複数の検証データセットにおいて分割することと、前記1つまたは複数の検証データセットを前記アルゴリズムを通して動作させることと、前記1つまたは複数の検証データセットの前記動作に基づいて前記アルゴリズムの性能を計算することとを含む、検証ワークフロー
    を実行することをさらに含む、請求項1記載の方法。
  8. 1つまたは複数のデータプロセッサと、
    前記1つまたは複数のデータプロセッサ上で実行されると、前記1つまたは複数のデータプロセッサに、
    アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取る動作であって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための最適化および/または検証選択基準を含み、前記最適化および/または検証選択基準は、前記データ資産が前記アルゴリズムで動作するための特性、フォーマット、および要件を定義し、前記データ資産の特性および要件は、前記データ資産が前記アルゴリズムを最適化および/または検証するために使用可能であるデータの特性および要件を指し、前記アルゴリズムおよび入力データ要件は、アルゴリズム開発者から受け取られる、前記受け取る動作と、
    前記データ資産を、前記データ資産についての前記最適化および/または検証選択基準に基づいてデータホストから利用可能であるものとして識別する動作であって、前記データホストは、前記アルゴリズム開発者とは異なるエンティティである、前記識別する動作と、
    前記データ資産を、前記データホストのインフラストラクチャ内にあるデータストレージ構造内でキュレートする動作と、
    前記アルゴリズムによって処理するための前記データストレージ構造内の前記データ資産を準備する動作と、
    セキュアなカプセル計算フレームワークを、前記データホストのインフラストラクチャの計算インフラストラクチャ内にプロビジョニングする動作であって、前記セキュアなカプセル計算フレームワークが前記アルゴリズムを前記データストレージ構造内の前記データ資産に、前記データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供する、前記プロビジョニングする動作と、
    前記アルゴリズムを前記セキュアなカプセル計算フレームワークに統合する動作であって、前記アルゴリズム開発者によって、前記アルゴリズムを動作させるための暗号化コードを前記セキュアなカプセル計算フレームワークの内部に配置することと、前記アルゴリズム開発者によって、前記アルゴリズムを動作させるための復号化コードを得るために前記暗号化コードを復号化することとを含む、前記統合する動作と、
    前記データ資産を前記アルゴリズムを通して動作させる動作であって、1つまたは複数のセキュアなアプリケーション・プログラム・インターフェースを介して、前記データ資産を前記データストレージ構造から前記セキュアなカプセル計算フレームワーク内の前記アルゴリズムへ渡すことと、前記データ資産および前記復号化コードを用いて前記アルゴリズムを最適化する、検証する、または前記アルゴリズムにより推論を計算することと、前記最適化、検証、または推論の計算の結果を、前記1つまたは複数のセキュアなアプリケーション・プログラム・インターフェースを介して、前記アルゴリズム開発者または前記データホストに渡すこととを含む、前記動作させる動作と
    を含む動作を行わせる命令を含む、非一時的コンピュータ可読記憶媒体と
    を含む、システム。
  9. 前記データ資産の前記特性および前記要件が、
    (i)前記アルゴリズムの環境、(ii)前記ータ資産内の例の配分、(iii)前記ータ資産を生成するデバイスのパラメータおよびタイプ、(iv)分散対バイアス、(v)前記アルゴリズムによって実装されたタスク、または(vi)それらの任意の組み合わせ
    に基づいて定義される、請求項8記載のシステム。
  10. 前記識別する動作が、前記データ資産内の個人に関するプライベート情報を伏せたままで、前記データ資産内のグループのパターンを記述することによって、前記データ資産内の情報を共有するための差分プライバシーを使用して行われ、
    前記キュレートする動作が、複数のデータストレージ構造の中から前記データストレージ構造を選択することと、前記データホストの前記インフラストラクチャ内に前記データストレージ構造をプロビジョニングすることとを含み、
    前記データストレージ構造の前記選択が、前記アルゴリズムのタイプ、前記データ資産内のデータのタイプ、前記システムの要件、またはそれらの組み合わせに基づくものである、
    請求項8記載のシステム。
  11. 前記動作が、前記データホストを迎え入れることをさらに含み、
    前記迎え入れることが、前記アルゴリズムでの前記データ資産の使用がデータプライバシー要件に準拠したものであることを確認することを含む、
    請求項8記載のシステム。
  12. 前記データ資産を準備する動作が、前記データ資産に1つもしくは複数の変換を適用すること、前記データ資産に注釈を付けること、前記データ資産を整合化すること、またはそれらの組み合わせを含む、請求項8記載のシステム。
  13. 前記データ資産を前記アルゴリズムを通して前記動作させる動作が、
    前記アルゴリズムの複数のインスタンスを作成することと、前記データ資産を、訓練データセットと1つまたは複数の試験データセットとに分割することと、前記アルゴリズムの前記複数のインスタンスを前記訓練データセットで訓練することと、前記アルゴリズムの前記複数のインスタンスの各々の前記訓練からの結果を完全連合アルゴリズムに統合することと、前記1つまたは複数の試験データセットを前記完全連合アルゴリズムによって動作させることと、前記1つまたは複数の試験データセットの前記動作に基づいて前記完全連合アルゴリズムの性能を計算することとを含む、訓練ワークフロー
    を実行することをさらに含む、請求項8記載のシステム。
  14. 前記データ資産を前記アルゴリズムを通して前記動作させる動作が、
    前記データ資産を1つまたは複数の検証データセットにおいて分割することと、前記1つまたは複数の検証データセットを前記アルゴリズムを通して動作させることと、前記1つまたは複数の検証データセットの前記動作に基づいて前記アルゴリズムの性能を計算することとを含む、検証ワークフロー
    を実行することをさらに含む、請求項8記載のシステム。
  15. 1つまたは複数のロセッサによって実行されると、システムに
    アルゴリズムおよび前記アルゴリズムと関連付けられた入力データ要件を受け取る動作であって、前記入力データ要件が、データ資産が前記アルゴリズムで動作するための最適化および/または検証選択基準を含み、前記最適化および/または検証選択基準は、前記データ資産が前記アルゴリズムで動作するための特性、フォーマット、および要件を定義し、前記データ資産の特性および要件は、前記データ資産が前記アルゴリズムを最適化および/または検証するために使用可能であるデータの特性および要件を指し、前記アルゴリズムおよび入力データ要件は、アルゴリズム開発者から受け取られる、前記受け取る動作と、
    前記データ資産を、前記データ資産についての前記最適化および/または検証選択基準に基づいてデータホストから利用可能であるものとして識別する動作であって、前記データホストは、前記アルゴリズム開発者とは異なるエンティティである、前記識別する動作と、
    前記データ資産を、前記データホストのインフラストラクチャ内にあるデータストレージ構造内でキュレートする動作と、
    前記アルゴリズムによって処理するための前記データストレージ構造内の前記データ資産を準備する動作と、
    セキュアなカプセル計算フレームワークを、前記データホストのインフラストラクチャの計算インフラストラクチャ内にプロビジョニングする動作であって、前記セキュアなカプセル計算フレームワークが、前記アルゴリズムを、前記データストレージ構造内の前記データ資産に、前記データ資産および前記アルゴリズムのプライバシーを保全するセキュアな方法で提供する、前記プロビジョニングする動作と、
    前記アルゴリズムを前記セキュアなカプセル計算フレームワークに統合する動作であって、前記アルゴリズム開発者によって、前記アルゴリズムを動作させるための暗号化コードを前記セキュアなカプセル計算フレームワークの内部に配置することと、前記アルゴリズム開発者によって、前記アルゴリズムを動作させるための復号化コードを得るために前記暗号化コードを復号化することとを含む、前記統合する動作と、
    前記データ資産を前記アルゴリズムを通して動作させる動作であって、1つまたは複数のセキュアなアプリケーション・プログラム・インターフェースを介して、前記データ資産を前記データストレージ構造から前記セキュアなカプセル計算フレームワーク内の前記アルゴリズムへ渡すことと、前記データ資産および前記復号化コードを用いて前記アルゴリズムを最適化する、検証する、または前記アルゴリズムにより推論を計算することと、前記最適化、検証、または推論の計算の結果を、前記1つまたは複数のセキュアなアプリケーション・プログラム・インターフェースを介して、前記アルゴリズム開発者または前記データホストに渡すこととを含む、前記動作させる動作と
    を含む作を行わせる
    格納する、1つまたは複数の非一時的機械可読記憶媒体
JP2021557379A 2019-03-26 2020-03-26 保護されたデータに対する分散型プライバシー保全コンピューティング Active JP7439125B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962824183P 2019-03-26 2019-03-26
US62/824,183 2019-03-26
US201962948556P 2019-12-16 2019-12-16
US62/948,556 2019-12-16
PCT/US2020/025083 WO2020198542A1 (en) 2019-03-26 2020-03-26 Distributed privacy-preserving computing on protected data

Publications (3)

Publication Number Publication Date
JP2022526948A JP2022526948A (ja) 2022-05-27
JPWO2020198542A5 JPWO2020198542A5 (ja) 2023-03-31
JP7439125B2 true JP7439125B2 (ja) 2024-02-27

Family

ID=72606244

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021557379A Active JP7439125B2 (ja) 2019-03-26 2020-03-26 保護されたデータに対する分散型プライバシー保全コンピューティング

Country Status (10)

Country Link
US (3) US11531904B2 (ja)
EP (1) EP3948570A4 (ja)
JP (1) JP7439125B2 (ja)
KR (2) KR102634785B1 (ja)
CN (1) CN113892093A (ja)
AU (1) AU2020244856B2 (ja)
BR (1) BR112021018241A2 (ja)
CA (1) CA3133466A1 (ja)
IL (2) IL311967A (ja)
WO (1) WO2020198542A1 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11763950B1 (en) 2018-08-16 2023-09-19 Clarify Health Solutions, Inc. Computer network architecture with machine learning and artificial intelligence and patient risk scoring
US11087004B2 (en) * 2019-02-01 2021-08-10 Rsa Security Llc Anonymizing data sets in risk management applications
WO2020198542A1 (en) 2019-03-26 2020-10-01 The Regents Of The University Of California Distributed privacy-preserving computing on protected data
US11625789B1 (en) 2019-04-02 2023-04-11 Clarify Health Solutions, Inc. Computer network architecture with automated claims completion, machine learning and artificial intelligence
US11621085B1 (en) 2019-04-18 2023-04-04 Clarify Health Solutions, Inc. Computer network architecture with machine learning and artificial intelligence and active updates of outcomes
US11238469B1 (en) 2019-05-06 2022-02-01 Clarify Health Solutions, Inc. Computer network architecture with machine learning and artificial intelligence and risk adjusted performance ranking of healthcare providers
US11238167B2 (en) * 2019-06-14 2022-02-01 Sap Se Secure sublinear time differentially private median computation
US11487902B2 (en) * 2019-06-21 2022-11-01 nference, inc. Systems and methods for computing with private healthcare data
JP7114528B2 (ja) * 2019-07-08 2022-08-08 株式会社東芝 推論装置、学習装置、推論方法及び学習方法
US11449797B1 (en) * 2019-09-23 2022-09-20 Amazon Technologies, Inc. Secure machine learning workflow automation using isolated resources
US11531846B1 (en) * 2019-09-30 2022-12-20 Amazon Technologies, Inc. Extending sensitive data tagging without reannotating training data
US11270785B1 (en) 2019-11-27 2022-03-08 Clarify Health Solutions, Inc. Computer network architecture with machine learning and artificial intelligence and care groupings
US11398216B2 (en) 2020-03-11 2022-07-26 Nuance Communication, Inc. Ambient cooperative intelligence system and method
CN115917553A (zh) * 2020-06-12 2023-04-04 甲骨文国际公司 在聊天机器人中实现稳健命名实体识别的实体级数据扩充
US11995048B2 (en) * 2020-09-29 2024-05-28 Adobe Inc. Lifelong schema matching
US20220108226A1 (en) 2020-10-01 2022-04-07 Nec Laboratories America, Inc. Voting-based approach for differentially private federated learning
CN112948836B (zh) * 2020-11-16 2022-05-17 支付宝(杭州)信息技术有限公司 保护神经网络模型安全的方法及装置
US11366894B1 (en) 2020-12-08 2022-06-21 International Business Machines Corporation Secure computing resource deployment using homomorphic encryption
CN112598311A (zh) * 2020-12-29 2021-04-02 中国农业银行股份有限公司 一种风险操作识别模型构建方法、风险操作识别方法
CN113807380B (zh) * 2020-12-31 2023-09-01 京东科技信息技术有限公司 一种联邦学习模型的训练方法、装置及电子设备
CN113807544B (zh) * 2020-12-31 2023-09-26 京东科技控股股份有限公司 一种联邦学习模型的训练方法、装置及电子设备
US20220237503A1 (en) * 2021-01-26 2022-07-28 International Business Machines Corporation Machine learning model deployment within a database management system
US11847245B2 (en) * 2021-02-17 2023-12-19 Capital One Services, Llc Privacy preserving data labeling
US20220284278A1 (en) * 2021-03-03 2022-09-08 International Business Machines Corporation Estimating remaining useful life based on operation and degradation characteristics
US11783083B2 (en) 2021-03-19 2023-10-10 International Business Machines Corporation Computing trade-offs between privacy and accuracy of data analysis
US20220318420A1 (en) * 2021-03-30 2022-10-06 Adobe Inc. Platform for unsupervised machine learning training on unseeable user generated assets
KR102437715B1 (ko) * 2021-06-07 2022-08-26 성신여자대학교 연구 산학협력단 데이터 분산처리 장치 및 이의 동작방법
US20220398327A1 (en) * 2021-06-10 2022-12-15 International Business Machines Corporation Applying noise to formats with masking restrictions
US20230025754A1 (en) * 2021-07-22 2023-01-26 Accenture Global Solutions Limited Privacy-preserving machine learning training based on homomorphic encryption using executable file packages in an untrusted environment
WO2023028694A1 (en) * 2021-09-03 2023-03-09 Bitnobi, Inc. Federated, decentralized data sharing
CA3233034A1 (en) * 2021-09-27 2023-03-30 Fairly Ai Inc. System and method for artificial intelligence and machine learning model validation
WO2023056546A1 (en) * 2021-10-04 2023-04-13 Fuseforward Technology Solutions Limited Machine learning training system and method
CN114154645B (zh) * 2021-12-03 2022-05-17 中国科学院空间应用工程与技术中心 跨中心图像联合学习方法、系统、存储介质及电子设备
CN114239064A (zh) * 2021-12-20 2022-03-25 杭州趣链科技有限公司 隐私计算方法、装置、电子设备及计算机可读存储介质
US20230205917A1 (en) * 2021-12-24 2023-06-29 BeeKeeperAI, Inc. Systems and methods for data validation and transformation of data in a zero-trust environment
CN114638376B (zh) * 2022-03-25 2024-06-04 支付宝(杭州)信息技术有限公司 一种复合样本场景中的多方联合模型训练方法及装置
US20240020417A1 (en) * 2022-04-29 2024-01-18 BeeKeeperAI, Inc. Systems and methods for federated feedback and secure multi-model training within a zero-trust environment
US20230376859A1 (en) * 2022-05-19 2023-11-23 Microsoft Technology Licensing, Llc Federated Learning Solutions for Machine Learning
US20230394357A1 (en) 2022-06-06 2023-12-07 Epistamai LLC Bias reduction in machine learning model training and inference
US20230394366A1 (en) * 2022-06-06 2023-12-07 Epistamai LLC Bias reduction in machine learning model training and inference
US20240037299A1 (en) * 2022-07-29 2024-02-01 BeeKeeperAI, Inc. Systems and methods for algorithm performance modeling in a zero-trust environment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090254971A1 (en) 1999-10-27 2009-10-08 Pinpoint, Incorporated Secure data interchange
JP6329333B1 (ja) 2016-07-04 2018-05-23 株式会社Seltech 人工知能を有するシステム
US20180182037A1 (en) 2014-03-28 2018-06-28 Jeffrey S. Lange Systems and methods for crowdsourcing of algorithmic forecasting

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8346534B2 (en) 2008-11-06 2013-01-01 University of North Texas System Method, system and apparatus for automatic keyword extraction
US8959577B2 (en) 2012-04-13 2015-02-17 Cisco Technology, Inc. Automatic curation and modification of virtualized computer programs
US10133878B2 (en) * 2014-07-30 2018-11-20 Microsoft Technology Licensing, Llc Stochastic privacy
US20170258390A1 (en) 2016-02-12 2017-09-14 Newton Howard Early Detection Of Neurodegenerative Disease
WO2017187207A1 (en) 2016-04-29 2017-11-02 Privitar Limited Computer-implemented privacy engineering system and method
US20180150609A1 (en) * 2016-11-29 2018-05-31 Electronics And Telecommunications Research Institute Server and method for predicting future health trends through similar case cluster based prediction models
US20190392928A1 (en) 2017-03-01 2019-12-26 Seqster Pdm, Inc. Personal data marketplace for genetic, fitness, and medical information including health trust management
US10198399B1 (en) * 2018-03-06 2019-02-05 KenSci Inc. Cryptographically secure machine learning
WO2019231481A1 (en) * 2018-05-29 2019-12-05 Visa International Service Association Privacy-preserving machine learning in the three-server model
US10867067B2 (en) * 2018-06-07 2020-12-15 Cisco Technology, Inc. Hybrid cognitive system for AI/ML data privacy
US11443182B2 (en) * 2018-06-25 2022-09-13 International Business Machines Corporation Privacy enhancing deep learning cloud service using a trusted execution environment
US11816575B2 (en) * 2018-09-07 2023-11-14 International Business Machines Corporation Verifiable deep learning training service
US11710035B2 (en) * 2018-09-28 2023-07-25 Apple Inc. Distributed labeling for supervised learning
US10970402B2 (en) * 2018-10-19 2021-04-06 International Business Machines Corporation Distributed learning preserving model security
US11449775B2 (en) * 2018-12-27 2022-09-20 Hubspot, Inc. Multi-client service system platform
US20200293918A1 (en) * 2019-03-15 2020-09-17 Cognitive Scale, Inc. Augmented Intelligence System Assurance Engine
WO2020198542A1 (en) 2019-03-26 2020-10-01 The Regents Of The University Of California Distributed privacy-preserving computing on protected data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090254971A1 (en) 1999-10-27 2009-10-08 Pinpoint, Incorporated Secure data interchange
US20180182037A1 (en) 2014-03-28 2018-06-28 Jeffrey S. Lange Systems and methods for crowdsourcing of algorithmic forecasting
JP6329333B1 (ja) 2016-07-04 2018-05-23 株式会社Seltech 人工知能を有するシステム

Also Published As

Publication number Publication date
US20230080780A1 (en) 2023-03-16
IL311967A (en) 2024-06-01
US20200311300A1 (en) 2020-10-01
KR102634785B1 (ko) 2024-02-08
CN113892093A (zh) 2022-01-04
US11748633B2 (en) 2023-09-05
BR112021018241A2 (pt) 2022-02-01
KR20240019868A (ko) 2024-02-14
AU2020244856A1 (en) 2021-10-28
EP3948570A4 (en) 2022-12-21
US20230325682A1 (en) 2023-10-12
CA3133466A1 (en) 2020-10-01
KR20210143879A (ko) 2021-11-29
EP3948570A1 (en) 2022-02-09
US11531904B2 (en) 2022-12-20
JP2022526948A (ja) 2022-05-27
IL286232A (en) 2021-10-31
WO2020198542A1 (en) 2020-10-01
AU2020244856B2 (en) 2024-05-16
US12001965B2 (en) 2024-06-04

Similar Documents

Publication Publication Date Title
JP7439125B2 (ja) 保護されたデータに対する分散型プライバシー保全コンピューティング
US11848082B2 (en) Systems and methods for computing with private healthcare data
Madhuri et al. Challenges and issues of data analytics in emerging scenarios for big data, cloud and image mining
US20180082023A1 (en) Secure Distributed Patient Consent and Information Management
US20210193297A1 (en) Methods, Systems and Computer Program Products for Retrospective Data Mining
Meldolesi et al. Standardized data collection to build prediction models in oncology: a prototype for rectal cancer
El-Sappagh et al. Trustworthy artificial intelligence in Alzheimer’s disease: state of the art, opportunities, and challenges
US20220343499A1 (en) Systems and methods for analysis of processing electronic images with flexible algorithmic processing
Lee et al. Concept and proof of the lifelog bigdata platform for digital healthcare and precision medicine on the cloud
Yang et al. Expert recommendation on collection, storage, annotation, and management of data related to medical artificial intelligence
Gao et al. PANDA: facilitating usable AI development
EP4127972A1 (en) Methods, systems and computer program products for retrospective data mining
Tarcar Advancing healthcare solutions with federated learning
US20240020417A1 (en) Systems and methods for federated feedback and secure multi-model training within a zero-trust environment
Jabborov et al. Taxonomy of Quality Assessment for Intelligent Software Systems: A Systematic Literature Review
US20230315902A1 (en) Systems and methods for dataset verification in a zero-trust computing environment
US20230162823A1 (en) Retroactive coding for healthcare
US20230289728A1 (en) Systems and methods for using distributed computing in healthcare model development
Patel Panacea: Making the World’s Biomedical Information Computable to Develop Data Platforms for Machine Learning
Diot-Dejonghe et al. Development of a Secure Web-Based Medical Imaging Analysis Platform: The AWESOMME Project
Dasoriya et al. Advancements in Data Analytics using Big Data and Cloud Computing
Khan et al. Applications of Parallel Data Processing for Biomedical Imaging
Darzidehkalani Federated learning in medical image analysis
Hof et al. The DANS services for sharing, cataloguing and archiving your health data
WO2023164519A2 (en) Synthetic and traditional data stewards for selecting, optimizing, verifying and recommending one or more datasets

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230323

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230323

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230522

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231101

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20231121

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: 20240115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240214

R150 Certificate of patent or registration of utility model

Ref document number: 7439125

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150