(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-02-03
(45)【発行日】2025-02-12
(54)【発明の名称】機械学習を使用したデータセキュリティ及びアクセス制御の強化
(51)【国際特許分類】
G06F 21/62 20130101AFI20250204BHJP
【FI】
G06F21/62
(21)【出願番号】P 2022529683
(86)(22)【出願日】2020-11-24
(86)【国際出願番号】 IB2020061107
(87)【国際公開番号】W WO2021111247
(87)【国際公開日】2021-06-10
【審査請求日】2023-11-14
(32)【優先日】2019-12-03
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】319008904
【氏名又は名称】アルコン インコーポレイティド
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100160705
【氏名又は名称】伊藤 健太郎
(72)【発明者】
【氏名】ウマ チャンドラシェーカル
【審査官】岸野 徹
(56)【参考文献】
【文献】特開2016-162298(JP,A)
【文献】米国特許出願公開第2019/0258818(US,A1)
【文献】特開2019-128916(JP,A)
【文献】特開2016-167206(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/60-64
(57)【特許請求の範囲】
【請求項1】
トレーニングデータを生成するためのトレーニングデータジェネレータと、データアクセスルールを個別に満たす集約されたデータ要素の特性に基づいて、データアクセス可能性を制御するために1つ又は複数の機械学習モデルをトレーニングするためのモデルトレーナとを備えるトレーニングサーバにおいて実行される方法であって、
トレーニングデータジェネレータによって、複数の分析の層の各層についてトレーニングされる各モデル用の個別のトレーニングデータを生成することと、
以前のデータの要求に対応し、以前のデータ共有の決定及びデータアクセスの要求が承認された又は否認されたかに関連する履歴アクセスレコードのセットから第1のトレーニングデータセットを生成することであって、前記第1のトレーニングデータセット内のそれぞれのアクセスレコードは、データのそれぞれの要求に対応し、前記それぞれの要求が1つ又は複数の
前記データアクセスルールを満たしているかどうか、を識別する情報を含
み、前記第1のトレーニングデータセット内のそれぞれの前記アクセスレコードは、(i)前記それぞれの要求の目的と、(ii)前記それぞれの要求に関連する1つ又は複数の前記データ要素と、を識別する情報を更に含む、生成することと、
データレコードのセットから第2のトレーニングデータセットを生成することであって、前記第2のトレーニングデータセットのそれぞれの
前記データレコードは、それぞれの
前記データ要素に対応し、
それぞれの前記データ要素が
1つ又は複数の前記データアクセスルールを満たしているかどうか、を識別する情報を含
み、前記第2のトレーニングデータセット内のそれぞれの前記データレコードは、それぞれの前記データ要素の1つ又は複数の特性を識別する情報及び集約された前記データ要素のそれぞれのセットの中の各前記データ要素のソースのデータプロファイルを識別する情報を更に含む、生成することと、
前記履歴アクセスレコード
のセットから第3のトレーニングデータセットを生成することであって、前記第3のトレーニングデータセットのそれぞれの
前記アクセスレコードは、集約された
前記データ要素のそれぞれのセットに対応し、集約された
前記データ要素
のそれぞれのセットが
、前記データアクセスルールを個別に満たす集約された前記データ要素の特性に基づいて、1つ又は複数の前記データアクセスルールを満たしているかどうか、を識別する情報を含
み、前記第3のトレーニングデータセット内のそれぞれの前記データレコードは、それぞれの前記データ要素のソースのデータプロファイルを識別する情報を更に含む、生成することと、
前記第1のトレーニングデータセット、前記第2のトレーニングデータセット、及び前記第3のトレーニングデータセットに基づいて前記1つ又は複数の機械学習モデルをトレーニングして、
前記データの要求を許可する必要があるかどうかを識別する出力を生成することと、
分析サーバを備える1つ又は複数のコンピューティングシステムに前記1つ又は複数の機械学習モデルを展開すること
であって、前記トレーニングサーバは、実行時に受信するデータ要求を分析し、実行時に取得された個別の前記データ要素を分析し、実行時に取得された前記データ要素の集約セットを分析するために、1つ又は複数のトレーニングされた機械学習モデルを展開する、前記1つ又は複数の機械学習モデルを展開すること、
を含む方法。
【請求項2】
前記第1のトレーニングデータセット、前記第2のトレーニングデータセット、及び前記第3のトレーニングデータセットに基づいて前記1つ又は複数の機械学習モデルをトレーニングすることが、
前記第1のトレーニングデータセットに基づいて、前記1つ又は複数の機械学習モデルの第1のセットをトレーニングすることと、
前記第2のトレーニングデータセットに基づいて、前記1つ又は複数の機械学習モデルの第2のセットをトレーニングすることと、
前記第3のトレーニングデータセットに基づいて、前記1つ又は複数の機械学習モデルの第3のセットをトレーニングすることと、
を含む、
請求項1に記載の方法。
【請求項3】
1つ又は複数の前記データアクセスルールが、
(i)第1のルールと、
(ii)第2のルールと、
(iii)第3のルールと、
を含む、
請求項2に記載の方法。
【請求項4】
前記1つ又は複数の機械学習モデルの前記第1のセットをトレーニングすることは、
前記第1のトレーニングデータセットと前記第1のルールとに基づいて第1の機械学習モデルをトレーニングすることと、
前記第1のトレーニングデータセットと前記第2のルールとに基づいて第2の機械学習モデルをトレーニングすることと、
前記第1のトレーニングデータセットと前記第3のルールとに基づいて第3の機械学習モデルをトレーニングすることと、
を含み、
前記1つ又は複数の機械学習モデルの前記第2のセットをトレーニングすることは、
記第2のトレーニングデータセットと前記第1のルールとに基づいて第4の機械学習モデルをトレーニングすることと、
前記第2のトレーニングデータセットと前記第2のルールとに基づいて第5の機械学習モデルをトレーニングすることと、
前記第2のトレーニングデータセットと前記第3のルールとに基づいて第6の機械学習モデルをトレーニングすることと、
を含み、
前記1つ又は複数の機械学習モデルの前記第3のセットをトレーニングすることは、
前記第3のトレーニングデータセットと前記第1のルールとに基づいて第7の機械学習モデルをトレーニングすることと、
前記第3のトレーニングデータセットと前記第2のルールとに基づいて第8の機械学習モデルをトレーニングすることと、
前記第3のトレーニングデータセットと前記第3のルールとに基づいて第9の機械学習モデルをトレーニングすることと、
を含む、
請求項3に記載の方法。
【請求項5】
前記第1のルールが、
前記データにアクセスできるのはそうすることで人類を向上させるであろう場合のみであることを指定し、
前記第2のルールが、
前記データにアクセスできるのは前記データの意図された使用が正当である場合のみであることを指定し、
前記第3のルールが、
前記データにアクセスできるのは
前記データが保護されたままの場合のみであることを指定している、
請求項3に記載の方法。
【請求項6】
前記データの要求は、医療診断の決定に関連する情報に対する前記データの要求であり、第1のルールは、前記データの要求が、プライバシー及びセキュリティを維持しながら、前記データの要求者又は他の人に有益かつ正当な前記データの要求である場合に、前記データにアクセスできることを規定し、
前記データ要素は、検査結果、遺伝的素因及び症状を含む医療診断に関連する要素で構成され、第2のルールは、前記データの意図された使用が正当な場合に限り前記データにアクセスできることを規定し、
集約された前記データ要素には、患者名、病院のアイデンティティ又は場所を含む診断に関連しない前記データがさらに含まれ、第3のルールは、前記データが保護されたままである場合に限り前記データにアクセスできることを規定する、
請求項3に記載の方法。
【請求項7】
請求項1から請求項6の何れか1項に記載の方法に従って、前記1つ又は複数の機械学習モデルを使用してデータアクセスを自動的に制御する
ために前記分析サーバにおいて実行される方法であって、
第1のユーザから、第2のユーザに関係する
前記データの第1の要求を受信する
ことであって、前記第1の要求は、1つ又は複数の明示的な参照によって、又は、前記データをフィルタリングするために使用できる特性と、要求の目的又は理由とを提供することによって、要求される前記データを示す、前記第1の要求を受信することと、
前記1つ又は複数のトレーニングされた機械学習モデルの第1のセットを使用して前記第1の要求を処理することによって、前記第1の要求が1つ又は複数の
前記データアクセスルールを満たしているかどうかを自動的に決定することと、
前記第1の要求が
1つ又は複数の前記データアクセスルールを満たしていると決定すると、前記第1の要求に基づいて第1の複数のデータ要素を自動的に取得することと、
前記1つ又は複数のトレーニングされた機械学習モデルの第2のセットを個別に使用して前記第1の複数のデータ要素のそれぞれを処理することによって、前記第1の複数のデータ要素のそれぞれが
1つ又は複数の前記データアクセスルールを満たしているかどうかを自動的に決定することと、
前記第1の複数のデータ要素からの
前記データ要素の第1のセットの各
前記データ要素が
1つ又は複数の前記データアクセスルールを個別に満たしていると決定すると、
前記第1の複数のデータ要素を承認された前記データ要素のサブセットに追加することと、
前記1つ又は複数のトレーニングされた機械学習モデルの第3のセットを使用して
前記データ要素の前記第1のセットを処理することによって、
前記データ要素の前記第1のセットが集合的に
1つ又は複数の前記データアクセスルールを満たしているかどうかを決定することと、
前記データ要素の前記第1のセットが
1つ又は複数の前記データアクセスルールを満たしていると決定すると、
前記データ要素の前記第1のセットを含むカスタムレポートを生成することと、
を含む、方法。
【請求項8】
第2の要求を受信することと、
前記1つ又は複数のトレーニングされた機械学習モデルの前記第1のセットを使用して前記第2の要求を処理することによって、前記第2の要求が
1つ又は複数の前記データアクセスルールを満たしているかどうかを決定することと、
前記第2の要求が
1つ又は複数の前記データアクセスルールを満たしていないと決定すると、前記第2の要求の
前記データを取得することを控えることと、
を更に含む、
請求項7に記載の方法。
【請求項9】
前記第1の複数のデータ要素からの
前記データ要素の第2のセットが
1つ又は複数の前記データアクセスルールを満たしていないと決定すると、
前記データ要素の前記第2のセットを提供することを控えること、
を更に含む、
請求項7に記載の方法。
【請求項10】
第2の要求を受信することと、
前記第2の要求に基づいて第2の複数のデータ要素を自動的に取得することと、
前記1つ又は複数のトレーニングされた機械学習モデルの前記第2のセットを使用して前記第2の複数のデータ要素のそれぞれを処理することによって、前記第2の複数のデータ要素からの
前記データ要素の第2のセットが
1つ又は複数の前記データアクセスルールを満たしていることを自動的に決定することと、
前記1つ又は複数のトレーニングされた機械学習モデルの前記第3のセットを使用して
前記データ要素の前記第2のセットを処理することによって、
前記データ要素の前記第2のセットが
1つ又は複数の前記データアクセスルールを集合的に満たしているかどうかを決定することと、
前記データ要素の前記第2のセットが
1つ又は複数の前記データアクセスルールを集合的に満たしていないと決定すると、
前記データ要素の前記第2のセットからの少なくとも1つの
前記データ要素を提供することを控えることと、
を更に含む、
請求項7に記載の方法。
【請求項11】
前記第2のユーザに、
前記データ要素の前記第1のセットが前記第1のユーザによってアクセスされたという通知を送信すること、
を更に含む、
請求項7に記載の方法。
【請求項12】
第2の要求を受信することと、
前記第2の要求が
1つ又は複数の前記データアクセスルールを満たしていないと決定することと、
前記第2の要求が否認された理由を指定するカスタムレポートを生成することと、
を更に含む、
請求項7に記載の方法。
【請求項13】
前記データアクセスルールには、データ主体に害を与えることなく要求が正当な臨床診断又は医学的診断に関連しているかどうか、及び、前記データが機密として保持されるかどうかを判断することを含む、請求項7に記載の方法。
【請求項14】
前記分析サーバは、集約された前記データから1つ又は複数の前記データ要素を繰り返し削除し、満足のいく集約された前記データ要素のセットが見つかるまで残りのセットを再処理することができ、データ主体が特定される可能性のある前記データ要素、又は、施設の場所又は医療専門家が特定される可能性のある前記データ要素は、集約された前記データから削除される、請求項7に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の態様は、データアクセス及びセキュリティに関し、より具体的には、機械学習を使用してデータの可視性、制御、アクセス、及びセキュリティの決定を推進することに関する。
【背景技術】
【0002】
患者、ユーザ、又は処理及び保存されたデータによって記述される任意のその他の個人又はエンティティなど、任意の数のデータ主体に関するデータを収集及び保存するために、様々なグローバルシステムが使用されている。例えば、医療データは、特定の施設の患者ごとに維持されることがよくある。これには、診断、遺伝情報、臨床記録、患者が服用している(又は以前に処方された)投薬、入院患者又は外来患者の外科的手術、又は実行されるか若しくは推奨されているその他の処置など、任意の数の様々なデータ要素を含めることができる。一般に、このデータは、データのセキュリティとユーザのプライバシに関係する様々な保護と要件の対象となる。しかしながら、データへのアクセスが、データ主体に害を及ぼしたり、又はそれらのプライバシを侵害したりすることなく、データ主体又は他の人にとって有益である場合が多くある。
【0003】
既存のシステムは一般にデータアクセスを困難にし、どのデータ要素が公開されているか(又は公開されてよいか)、どのデータ要素が保護されているかに関して重大な混乱を引き起こす。多くの分野(医療分野など)では、データアクセスとセキュリティは、共有が他者にとって有益である場合でも、データのどの要素を共有できるかについての柔軟性と予測可能性がほとんどない様々なテクノロジーによって主に制御されている。例えば、特定のケースでは、患者は、合併症又は根本的な病状のために残念ながら亡くなる可能性がある。患者の生涯の間に、遺伝情報や診断などの医療データが収集され、相関している可能性がある。そのような情報は、例えば、患者の生きている親戚にとっても、同じ状態の素因となる可能性のある遺伝子マーカーを持っているかどうかを決定するなど、有益である可能性がある。親戚がそのような情報にアクセスできた場合、それは彼らがより早く状態に対処し、生活の質を向上させるのに役立つ可能性がある。しかし、現在のシステムは非常に厳格であるため、親戚は患者の同意がないためそのような情報にアクセスできず、更にこの段階では、残念ながらそれを取得することはできない。
【発明の概要】
【発明が解決しようとする課題】
【0004】
他の業界では、パートナーや競合他社も同様に、専有知識を失うことを恐れており、イノベーションと成長の機会を逃しているにもかかわらず、一般的にデータアクセスを完全に妨げている。高いレベルでは、イノベーションを進めるために他の人が使用する可能性のある貴重なデータが、アクセス制限のために、そのような制限の影響を考慮せずに一般に利用できないため、これは社会のイノベーションの進展に悪影響を与える可能性がある。したがって、データ開示のオールオアナッシングの既存のバイナリフレームワークの代替として、データアクセスをより細かく制御するための柔軟でインテリジェントなシステムが必要である。
【課題を解決するための手段】
【0005】
特定の実施形態は、1つ又は複数の機械学習モデルを使用してデータアクセスを自動的に制御するための方法を提供する。この方法は、概して、第1のユーザから、第2のユーザに関係するデータの第1の要求を受信することと、1つ又は複数のトレーニングされた機械学習モデルの第1のセットを使用して第1の要求を処理することにより、第1の要求が1つ又は複数のデータアクセスルールを満たしているかどうかを自動的に決定することと、第1の要求が1つ又は複数のデータアクセスルールを満たしていると決定すると、第1の要求に基づいて第1の複数のデータ要素を自動的に取得することと、1つ又は複数のトレーニングされた機械学習モデルの第2のセットを使用して第1の複数のデータ要素のそれぞれを処理することによって、第1の複数のデータ要素のそれぞれが1つ又は複数のデータアクセスルールを満たしているかどうかを自動的に決定することと、第1の複数のデータ要素からのデータ要素の第1のセットが1つ又は複数のデータアクセスルールを満たしていると決定すると、1つ又は複数のトレーニングされた機械学習モデルの第3のセットを使用してデータ要素の第1のセットを処理することによって、データ要素の第1のセットが1つ又は複数のデータアクセスルールを満たしているかどうかを決定することと、データ要素の第1のセットが1つ又は複数のデータアクセスルールを満たしていると決定すると、データ要素の第1のセットを含むカスタムレポートを生成することと、を含む。
【0006】
特定の実施形態は、1つ又は複数の機械学習モデルをトレーニングしてデータアクセス可能性を制御するための方法を提供する。この方法は、概して、履歴アクセスレコードのセットから第1のトレーニングデータセットを生成することであって、第1のトレーニングデータセットのそれぞれのアクセスレコードは、データのそれぞれの要求に対応し、それぞれの要求が1つ又は複数のデータアクセスルールを満たしているかどうかを識別する情報を含む、生成することと、データレコードのセットから第2のトレーニングデータセットを生成することであって、第2のトレーニングデータセットのそれぞれのデータレコードは、それぞれのデータ要素に対応し、それぞれのデータ要素が1つ又は複数のデータアクセスルールを満たしているかどうかを識別する情報を含む、生成することと、履歴アクセスレコードのセットから第3のトレーニングデータセットを生成することであって、第3のトレーニングデータセットのそれぞれのアクセスレコードは、集約されたデータ要素のそれぞれのセットに対応し、集約されたデータ要素のそれぞれのセットが1つ又は複数のデータアクセスルールを満たしているかどうかを識別する情報を含む、生成することと、第1、第2、及び第3のトレーニングデータセットに基づいて1つ又は複数の機械学習モデルをトレーニングして、データの要求を許可すべきかどうかを識別する出力を生成することと、1つ又は複数の機械学習モデルを1つ又は複数のコンピューティングシステムに展開することと、を含む。
【0007】
本開示の態様は、本明細書に記載の方法を実行するための、装置、プロセッサ、及びコンピュータ可読媒体のための手段を提供する。
【0008】
前述及び関連する目的を達成するために、1つ又は複数の態様は、以下で完全に説明され、特に特許請求の範囲で挙げられる特徴を含む。以下の説明及び添付図面は、1つ又は複数の態様の特定の例示的な特徴を詳述する。しかしながら、これらの特徴は、様々な態様の原理を採用できる様々な方法のほんの一部を示しているものである。
【0009】
添付の図面は、1つ又は複数の実施形態の特定の態様を示しており、それゆえ、本開示の範囲を限定するものと見なされるべきではない。
【図面の簡単な説明】
【0010】
【
図1】
図1は、本明細書に開示されるいくつかの実施形態による、機械学習を使用してデータアクセスを制御するように構成された分析サーバを含む環境を示す。
【
図2】
図2は、本明細書に開示されるいくつかの実施形態による、様々なアクセスルールを使用してデータアクセスを制御するためのワークフローを示す。
【
図3】
図3は、本明細書に開示されるいくつかの実施形態による、機械学習モデルをトレーニングして、データ要求の特性に基づいてデータアクセスを制御するための方法を示す流れ図である。
【
図4】
図4は、本明細書に開示されるいくつかの実施形態による、機械学習モデルをトレーニングして、個々のデータ要素の特性に基づいてデータアクセスを制御するための方法を示す流れ図である。
【
図5】
図5は、本明細書に開示されるいくつかの実施形態による、機械学習モデルをトレーニングして、アクセスルールを個別に満たす集約されたデータ要素の特性に基づいてデータアクセスを制御するための方法を示す流れ図である。
【
図6】
図6は、本明細書に開示されるいくつかの実施形態による、トレーニングされた機械学習モデルを使用してデータアクセスを制御するための方法を示す流れ図である。
【
図7】
図7は、本明細書に開示されるいくつかの実施形態による、データアクセス制御及び通知を強化するためのグラフィカルユーザインタフェース(GUI)を示す。
【
図8】
図8は、本明細書に開示されるいくつかの実施形態による、1つ又は複数の機械学習モデルを使用してデータアクセスを自動的に制御するための方法を示す流れ図である。
【
図9】
図9は、本明細書に開示されるいくつかの実施形態による、1つ又は複数の機械学習モデルをトレーニングしてデータアクセス可能性を制御するための方法を示す流れ図である。
【
図10】
図10は、本明細書に開示されるいくつかの実施形態による、機械学習モデルをトレーニング及び使用してデータアクセスを制御するように構成されたコンピューティングデバイスを示すブロック図である。
【発明を実施するための形態】
【0011】
理解を促進するために、各図面に共通する同一の要素は、可能な限り同一の参照符号を使用して示している。一実施形態の要素及び特徴は、更なる説明を伴わずに他の実施形態に有益に組み込むことができるように企図されている。
【0012】
本開示の実施形態は、データのプライバシ及びセキュリティが維持されることを保証すると同時に、そうすることが対応する害なしに有益であるときには柔軟なアクセスを可能にする、効果的なデータアクセス制御のための技術を提供する。有利なことに、そのようなシステムは、共有から利益を得ることができるデータが共有される一方で、(例えば、プライバシ問題につながる特定の個人を識別することによって)害を及ぼす可能性のあるデータの共有が実行されないように、定義された方法で貴重なデータへのアクセスを自動的に提供することができる。このような微調整されたデータ共有は、単にデータ共有にオールオアナッシングアプローチを利用する既存の方法では不可能である。例えば、既存のシステムによって収集されたデータのせん断量に基づいて、共有するデータを手動で決定する現在のメカニズムでは、本明細書で説明するデータ共有の柔軟性のレベルを提供することは実際には実現可能ではない。したがって、そのような手動メカニズムは慎重になり過ぎる可能性があり、ほとんどのデータを共有しないことによってデータへのアクセスを過度に制限する可能性がある。
【0013】
いくつかの実施形態では、そのような柔軟なデータ共有を可能にするために、定義されたアクセスルールを利用して、複数の層又はステップでデータ要求及びデータ要素を評価して(例えば、要求のみを評価し、それぞれの個別のデータ要素を評価し、集約されたデータ要素を評価して)からその後に任意のデータを提供する(又は提供を控える)。いくつかの実施形態では、1つ又は複数の機械学習モデルのセットは、そのようなアクセスルールに基づいて要求及びデータ要素を分類するようにトレーニングされる。そうすることで、本開示の実施形態は、データセキュリティを維持しながら、データ要求への迅速な評価及び応答を可能にする。加えて、本システムは、(現在のシステムが主観的な決定に依存しているのに対して)客観的なモデルを利用して要求を評価するため、データの整合性が保証される。
【0014】
いくつかの実施形態では、アクセスルールのセットを利用して、データアクセスの決定を推進する。いくつかの実施形態では、所与の展開において任意の数のアクセスルールが存在し得る。いくつかの実施形態では、システムは、業界にとらわれない方法でアクセスルールの基本セットを利用することができ、所与の業界又は展開に対する特定の要件及び要望に基づいて追加のルールを追加又は変更することができる。いくつかの実施形態では、アクセスルールは、初期手動フェーズ中にデータアクセスを制御するために使用され、(例えば、対象分野の専門家又は他のユーザによって)ルールに基づいて行われた決定を使用して、自動的に分析を提供するための機械学習モデルをトレーニングする。すなわち、上記で初期手動フェーズと呼ばれるものの間に、人間のレビュー担当者は、要求が許可されるべきか、及び/又はデータが共有されるべきかを決定するために、アクセスルールを考慮して要求及びデータ要素を評価し得る。これらの手動の決定は、要求及び/又はデータの詳細を含むレコードに保存でき、人間の決定でラベル付けされる。このようなレコードは、機械学習アルゴリズムで使用して、機械学習モデルをトレーニングし、同様の分析を自動的に実行できる。
【0015】
いくつかの実施形態では、アクセスルール(したがって、アクセスルールに基づいてトレーニングされたモデル)は、プライバシ及びセキュリティを維持しながらアクセスが有益であると考えられるときにデータを共有できることを保証するために使用される。いくつかの実施形態では、システムは、3つのルールのセットを使用し、それらは、データが提供された場合、それは(データ主体に害を与えることなく)人類又は社会を向上させるためにのみ使用できることを指定する第1のアクセスルール、要求元エンティティがデータに対して正当な意図を有している必要があることを指定する第2のアクセスルール、及び他のルールと競合することなく、データを可能な限り保護及び保証する必要があることを指定する第3のアクセスルール、である。このフレームワークに基づいて、モデルをトレーニングして、アクセスルールを順守しながら、インテリジェントで柔軟な方法でデータへのアクセスを許可及び制限する動的データアクセスシステムを効果的に提供できる。
【0016】
図1は、本明細書に開示されるいくつかの実施形態による、機械学習を使用してデータアクセスを制御するように構成された分析サーバ110を含む環境100を示す。図示の実施形態では、要求元ユーザ105は、分析サーバ110に要求を提供することができる。この要求は通常、少なくとも要求されたデータ並びにデータの使用目的を識別する。いくつかの実施形態では、要求は、要求元ユーザ105を識別するために、又は他の追加情報を提供して要求にコンテキストを与えるために使用されるメタデータ若しくは他の追加データを含む。いくつかの実施形態では、要求は、例えば、要求元ユーザ105のアイデンティティ(例えば、それらの名前又は他の識別情報)、要求の理由若しくは目的、データがいつ必要であるかのタイムライン、又は要求のコンテキストを補足又は提供するための任意の追加のドキュメントを指定する要求者プロファイルに関連付けられる。
【0017】
例えば、ユーザが家族歴に基づいて、深部静脈血栓症(DVT)などの特定の障害のリスクが高いかどうかを決定したいと仮定する。いくつかの実施形態では、ユーザ(要求元ユーザ105として作用する)は、直接又はネットワークによってなど別のデバイスを介して、この情報を含む分析サーバ110に要求を提供することができる。分析サーバ110は、任意の適切な環境(例えば、オンプレミス、エンティティに関連付けられている、クラウド内など)の任意の適切なサーバであり得る。いくつかの実施形態では、要求は、1つ又は複数のデータ主体を具体的に識別する。例えば、要求元ユーザ105は、彼らの家族をデータ主体として識別することができる(例えば、「私の家族の誰かがDVTの病歴を持っているか?」)。別の実施形態では、分析サーバ110は、関連するデータ主体を識別するために要求を評価する。例えば、要求(例えば、「私はDVTの遺伝的リスクが高いか?」)に基づいて、システムは、関連するデータ主体が要求元ユーザ105の親戚であると決定することができる。これは、例えば、自然言語処理(NLP)を使用して実現できる。
【0018】
加えて、いくつかの実施形態では、要求は、所望のデータ要素を具体的に識別する(例えば、特定のレポート、検査、又はデータの他の要素を識別する)。別の実施形態では、分析サーバ110は、NLP又は他の技術を使用して要求を分析することに基づいて、関連するデータ要素を識別する。
【0019】
図示の環境100では、分析サーバ110は、データ共有コンポーネント115及びカスタムレポートジェネレータ120を含む。データ共有コンポーネント115は、一般に、本明細書で論じられるアクセスルールのセットに基づいて、要求を(完全に又は部分的に)許可すべきかどうかを決定するために要求を評価し、更に、関連するデータ要素を識別、取得、及び評価して、それらが本明細書で論じられるのと同じアクセスルールのセットに基づいて、データ要求者に提供されるべきかどうかを決定する。いくつかの実施形態では、データ共有コンポーネント115は、3つの層で要求及びデータを評価し、それらは、アクセスルールを考慮して要求を評価する第1の層、アクセスルールを考慮してそれぞれの個別のデータ要素を評価する第2の層、及びアクセスルールを考慮してデータ要素の集合セットを評価する第3の層、である。最終レポートには、全ての層に合格するデータ要素のみが含まれる。カスタムレポートジェネレータ120は、一般に、要求元ユーザ105のためのカスタムレポートを構築する。このカスタムレポートには、データ共有コンポーネントによる共有が承認されたあらゆるデータ要素が含まれ得る。いくつかの実施形態では、カスタムレポートは、以下でより詳細に説明するように、任意の要求の一部(又は要求全体)が否認された理由、又は任意のデータが除外された理由を更に含むことができる。データ共有コンポーネント115及びカスタムレポートジェネレータ120は、概念を明確にするために個別のコンポーネントとして示されているが、実施形態では、操作は、任意の数のコンポーネント及びデバイスにわたって組み合わせ又は分散され得る。
【0020】
いくつかの実施形態では、データ共有コンポーネント115は、定義されたアクセスルールに基づいてなど、要求を完全に否認すべきかどうかを決定するために、最初に要求を評価することができる。これは、本明細書に記載のいくつかの実施形態では「層1」と呼ばれることがある。例えば、データ共有コンポーネント115は、アクセスルールに指定されるように、要求されたデータへのアクセスを許可することが、データ主体に害を与えることなく人類を向上させるかどうか、要求が正当な意図によって導かれているかどうか、データが保護されたままであるかどうかなどを決定することができる。いくつかの実施形態では、データ共有コンポーネント115は、以下でより詳細に説明するように、1つ又は複数のトレーニングされたモデルを使用してそのようにする。例えば、データ共有コンポーネント115は、本明細書で更に議論されるように、要求の特徴を抽出し、以前の要求からのラベル付けされたアクセスデータに基づいてトレーニングされた1つ又は複数のモデルを使用してそれらを処理することができる。そのような特徴は、限定されないが、要求元ユーザ105及び/又はデータ主体のアイデンティティ、それらの間の関係、データを要求するための示された目的(明示的に述べられてもよく、又は例えば、NLPなどを使用して要求を処理することに基づいて決定されてもよい)などを含み得る。
【0021】
データ共有コンポーネント115が(例えば、要求元ユーザ105が広告目的でデータを商業的に利用することを意図しており、これは人類を向上させる正当な使用ではないため)要求を否認すべきであると決定した場合、データ共有コンポーネント115は要求を拒否することができる。次に、カスタムレポートジェネレータ120は、要求が否認されたことを示すレポートを生成し、決定された理由(例えば、どのアクセスルールに不合格だったかを示す)を含めることができる。
【0022】
いくつかの実施形態では、データ共有コンポーネント115が、(例えば、トレーニングされたモデルを使用して)要求がアクセスルールを満たしていると決定した場合、データ共有コンポーネント115は、関連するデータ要素を識別し、それらを1つ又は複数のデータリポジトリ125から取得することによって、分析の第2の層を開始することができる。例えば、データ共有コンポーネント115は、データが含まれ得るデータリポジトリ125を識別する。データリポジトリ125は、例えば、要求元ユーザ105のアイデンティティ、データ主体のアイデンティティ、要求の性質又はコンテキスト(例えば、要求されている特定のタイプのデータ)などに基づいて識別され得る。次に、データ共有コンポーネント115は、識別された各リポジトリにクエリを送信して、関連するデータを取得することができる。
【0023】
いくつかの実施形態では、データ共有コンポーネント115は、次に、アクセスルールに基づいて(例えば、1つ又は複数のトレーニングされたモデルを使用して)それぞれの個別のデータ要素を評価する。実施形態では、データ共有コンポーネント115は、要求を評価するために使用されるのと同じモデルを利用することができ、又はデータ要素を評価するためにトレーニングされた異なるモデルのセットを使用することができる。それぞれの個別のデータ要素ごとに、データ共有コンポーネント115が、データ要素はアクセスルールを満たしていると決定した場合、データ共有コンポーネント115は、要求元ユーザ105が潜在的にアクセスを許可されるデータ要素のセットにそれを追加することができる。不合格だったあらゆるデータについては、データ共有コンポーネント115はそれを開示することを控えることができる。いくつかの実施形態では、カスタムレポートジェネレータ120は、特定のデータ要素が除外された理由を含むことになる。
【0024】
複数のデータ要素が基準を満たしていると決定された場合、いくつかの実施形態では、データ共有コンポーネント115は、次に、複数のデータ要素を集合的に評価して、それが集合的に共有されるべきかどうかを決定することができる。例えば、データ要素のセットは、個別にルールを満たすことができるが(例えば、データ主体を特定したり又は害を与えたりすることなく人類を向上させるために使用されているため)、データ要素は、まとめて評価されると、不合格となる可能性がある(例えば、それらを集合的に使用して、データ主体を特定及び/又は害することができ得るため)。例えば、性別、生年月日、及び勤務地のそれぞれだけでは、データ主体を特定するのに個別に十分ではない場合があり、これは、そのような定義に個別に一致するデータ主体が多数あるためであるが、集合的には、そのような情報は、小グループ又は単一のデータ主体だけにしか関連しない可能性がある。
【0025】
いくつかの実施形態では、データ共有コンポーネント115の評価に基づいて、カスタムレポートジェネレータ120は、次に、カスタムレポートを生成し、要求元ユーザ105に返す。いくつかの実施形態では、カスタムレポートジェネレータ120は、どのデータが共有されたかを示す通知をデータ主体130に更に提供することができる。いくつかの実施形態では、通知は、要求の理由又は目的、要求元ユーザ105のアイデンティティなどを更に示す。特定の実施形態では、通知は、差し控えられた任意のデータ要素を更に示すことができる。
【0026】
図示の実施形態では、データ主体130は、分析サーバ110へのこのデータアクセスに関係するフィードバックを提供することができる。例えば、データ主体130は、1つ又は複数の特定のデータ要素が共有されることを望まないこと、又はそれにもかかわらず差し控えられた1つ又は複数のデータ要素が共有されるべきであることを示し得る。いくつかの実施形態では、システムは、このフィードバックに基づいてトレーニングされたモデルを精緻化することができる。
【0027】
図示の実施形態では、データ共有コンポーネント115は、トレーニングサーバ135によって提供されるトレーニングされたモデルを利用する。概念を明確にするために別個のサーバとして示されているが、いくつかの実施形態では、トレーニングサーバ135及び分析サーバ110は、単一のサーバとして動作することができる。つまり、モデルは単一のサーバでトレーニングして使用することも、又は1つ又は複数のサーバでトレーニングして他の1つ又は複数のサーバで使用するために展開することもできる。
【0028】
図示のように、トレーニングサーバ135は、トレーニングデータジェネレータ140及びモデルトレーナ145を含む。概念を明確にするために個別のコンポーネントとして示されているが、いくつかの実施形態では、トレーニングデータジェネレータ140及びモデルトレーナ145の動作は組み合わせられてもよく、又は任意の数のコンポーネント及びデバイスにわたって分散されてもよい。
【0029】
トレーニングデータジェネレータ140は、一般に、履歴アクセスレコード150を使用して、モデルトレーナ145が1つ又は複数の機械学習モデルをトレーニングするために使用するトレーニングデータセットを生成する。いくつかの実施形態では、履歴アクセスレコード150は、データ共有に関する以前の決定に関係している。例えば、履歴アクセスレコード150内の各レコードは、特定の要求に対応することができ、レコードは、要求が許可されたかどうかを示すことができる。いくつかの実施形態では、否認された要求ごとに、対応するレコードは、要求が否認された理由を示すこともできる。いくつかの実施形態では、承認された要求ごとに、対応するレコードは、関連するデータ要素、それぞれの個別のデータ要素のリリースが承認されたかどうか、集約されたデータセットが承認されたかどうかなどを示すことができる。
【0030】
いくつかの実施形態では、トレーニングデータジェネレータ140は、トレーニングされるモデルごとに別個のトレーニングデータセットを生成する。例えば、モデルトレーナ145は、分析の各層について別個のモデルをトレーニングすることができ、そのモデルは、要求がアクセスルールを満たしているかどうかを評価する1つ又は複数のモデルの第1のセット、それぞれの個別のデータ要素がアクセスルールを満たしているかどうかを評価する1つ又は複数のモデルの第2のセット、及び、集約されたデータ要素がアクセスルールを満たしているかどうかを評価する1つ又は複数のモデルの第3のセット、である。同様に、各層について、モデルトレーナ145は、アクセスルールごとに別個のモデルをトレーニングすることができる。例えば、モデルトレーナ145は、要求が第1のルールを満たしているかどうか(例えば、要求が人類に利益をもたらすかどうか)を決定する第1のモデル、要求が第2のアクセスルールを満たしているかどうかを決定する第2のモデル、及び要求が第2のアクセスルールを満たしているかどうかを決定する第3のモデル、をトレーニングすることができる。同様に、モデルトレーナ145は、個々のデータ要素が同じ第1のルールを満たしているかどうかを決定する第1のモデル、個々のデータ要素が第2のアクセスルールを満たしているかどうかを決定する第2のモデル、及び個々のデータ要素が第3のアクセスルールを満たしているどうかを決定する第3のモデル、をトレーニングすることができる。また、モデルトレーナ145は、集約されたデータ要素が第1のルールを満たしているかどうかを決定する第3のモデル、集約されたデータ要素が第2のアクセスルールを満たしているかどうかを決定する第2のモデル、及び集約されたデータ要素が第3のアクセスルールを満たしているかどうかを決定する第3のモデル、をトレーニングすることができる。
【0031】
いくつかの実施形態では、生成されたトレーニングデータセットは、ターゲットモデルに基づいて異なる可能性がある。例えば、分析の要求層のためにモデルをトレーニングするために、トレーニングデータジェネレータ140は、履歴アクセスレコード150からデータセットを生成することができ、ここで、各トレーニングレコードは、要求の態様である入力特徴(例えば、決定された理由、要求者のアイデンティティなど)、及び要求がアクセスルールを満たしたかどうか、したがって承認されたかどうか(又は、それぞれの個別のデータアクセスルールに合格又は不合格であると決定されたかどうか)を示す対応するラベルを指定する。例えば、人間のユーザは、要求がアクセスルールを満たしているかどうかを決定するために要求を評価することができる。次に要求データ(又はメタデータ)は、ラベル付けの例として、ユーザの決定と共に記録できる。個々のデータ要素層について、トレーニングデータジェネレータ140は、各レコードが以前に要求及び/又は共有された特定のデータ要素に対応し、各レコードがデータ要素の特性に関係する入力特徴(例えば、関係するフィールド、事前定義されたプライバシレベル、関連する規制など)を指定する、データレコードのセット、並びに、データ要素へのアクセスを許可することがアクセスルールを満たしていると決定されたかどうかを示すラベルを生成することができる。
【0032】
図示の実施形態では、モデルトレーナ145は、生成されたトレーニングデータセットを使用して、モデルのセットをトレーニングする。一般に、各モデルのトレーニングには、1つ又は複数のトレーニングレコードについて、(ランダムなパラメータで開始できる)示された入力特徴をモデルへの入力として提供することが含まれる。次に、生成された出力がトレーニングレコードのラベルと比較され、モデルトレーナ145は、生成された出力と提供されたラベルとの間の差に基づいて損失を計算することができる。次に、この損失を使用して、モデルの内部パラメータ又は重みを変更できる(例えば、バックプロパゲーションを介して)。各トレーニングレコードを繰り返し処理することにより、モデルは繰り返し精緻化され、入力特徴に基づいて正確なアクセス決定を生成する。
【0033】
図示のように、トレーニングサーバ135は、実行時に使用するために、これらのトレーニングされたモデルを分析サーバ110に展開する。いくつかの実施形態では、トレーニングサーバ135はまた、分析サーバ110から更新を受信する(例えば、データ主体又は対象分野の専門家からのフィードバックの形で)。これらの更新は、モデルを更に精緻化するために使用できる。
【0034】
図2は、本明細書に開示されるいくつかの実施形態による、様々なアクセスルールを使用してデータアクセスを制御するためのワークフロー200を示す。ワークフロー200は、要求205が受信されたときに開始する。要求は通常、所望のデータを示したり又は識別したりする。この指示は、特定のデータ要素の指定(例えば、特定のレコードの識別)、データのタイプの識別(例えば、「検査結果」)、所望のコンテンツの表示(例えば、「DVTに関係するレコード」)などを含む、任意の特異性のものであり得る。いくつかの実施形態では、要求205はまた、1つ又は複数のデータ主体を識別する。説明したように、データ主体とは、要求されたデータの対象となる人物である。いくつかの実施形態では、データ主体を識別することはまた、特定の人々を識別すること、又は人々のグループ(例えば、「私の親戚」、「60歳未満の男性」など)を示すことを含む、任意のレベルの特異性であり得る。
【0035】
いくつかの実施形態では、要求205は、要求元エンティティ、データの目的などを更に識別する。いくつかの実施形態では、データの目的を示すことは、理由を明示的に述べること、事前定義された目的を選択することなどを含むことができる。特定の実施形態では、要求205は自然言語テキストを含む。そのような一実施形態では、システムは、NLPを使用して、要求されたデータ、関連するデータ主体、及び/又は要求の目的を識別することができる。例えば、分析サーバは、NLPを使用して、テキストから概念を抽出し、要求205で識別された概念に基づいて、関連する業界又は分野(例えば、医療)、所望のデータ要素、関連するデータ主体などを決定することができる。
【0036】
ブロック210で、分析サーバは、要求205が1つ又は複数の定義されたアクセスルールを満たしているかどうかを決定する。機械学習モデルが使用されないいくつかの実施形態では、決定は、要求205で識別された(又は指定された)概念を、データの許容可能又は正当な目的を指定する1つ又は複数の定義されたルックアップテーブルと比較することを含む。特定の実施形態では、これらのルックアップテーブルは業界固有であり、その結果、所与の目的は、一部の業界では受け入れ可能であるが、他の業界では受け入れ可能でない場合がある。
【0037】
いくつかの実施形態では、分析サーバは、代わりに、トレーニングされた機械学習モデルを利用して、ブロック210で、要求205がアクセスルールを満たしているかどうかを決定する。いくつかの実施形態では、上記のように、1つ又は複数の機械学習モデルは、ラベル付けされたトレーニングデータを含む手動でキュレーションされたアクセスレコードに基づいてトレーニングされる。更に、説明したように、ラベル付けされたトレーニングデータを使用して、1つ又は複数の機械学習モデルをトレーニングし、要求205がアクセスルールを満たしているかどうかの分析を自動的に実行することができる。いくつかの実施形態では、アクセスルールは、説明したように、データ処理のための定義された倫理規定に関係している。
【0038】
特定の実施形態では、アクセスルールごとに別個のモデルがトレーニングされる。そのようないくつかの実施形態では、分析サーバが3つのアクセスルールを利用する場合、ブロック210は、要求205を3つの別個の機械学習モデルを通して渡すことを含む。モデルへの入力(及び、したがって、モデルをトレーニングするために使用される入力)は、一般に、データの示された目的又はデータが関係する分野又は業界などの、要求205の特徴を含む。例えば、データが匿名化されて医学研究を推進するために使用されることを示す要求は承認される可能性があるが、データが広告代理店に販売されることを示す要求は否認される可能性がある。一般に、評価される要求特徴は、要求205から抽出された任意の数の様々な概念を含むことができる。上記のように、いくつかの実施形態では、特徴は、要求元ユーザ及び/又はデータ主体のアイデンティティ、それらの間の関係、データを要求するための示された目的(明示的に述べられ得るか、又は、例えば、NLPを使用して要求を処理することに基づいて決定され得る)、要求又はデータが関係する分野又は業界などを含み得る。
【0039】
図示のように、要求205がアクセスルールに合格しなかった場合(例えば、トレーニングされたモデルが要求205を拒否することによって示される)、ワークフロー200はブロック250に進み、ここで分析サーバは、拒否の1つ又は複数の理由を含むカスタムレポートを生成する。いくつかの実施形態では、分析サーバは、要求205が不合格だったアクセスルールを示すことができる。分析サーバは、要求を拒否したモデルに基づいて、これらの不合格だったルールを識別できる。要求を拒否したトレーニングされた任意のモデルに対して、分析サーバは、対応するアクセスルールが満たされていないことを示すことができる。
【0040】
要求205が全てのアクセスルールを満たしている場合(例えば、この段階で全ての機械学習モデルによって承認されている場合)、分析サーバはデータクエリ215を生成し、これは1つ又は複数のデータリポジトリ215に送信される。いくつかの実施形態では、分析サーバは、要求205によって示される要求されたデータに基づいてデータクエリ215を生成する。例えば、要求がDVTを発症する要求者の家族性リスクについて尋ねた場合、分析サーバは、要求者に関係し、DVTに関連するデータ主体に対応するデータレコードを取得するためのクエリを生成できる(例えば、診断、検査結果、遺伝子マーカー、検査が行われた医療提供者の名前及び/又は場所、検査の精度、提案又は完了された処置など)。
【0041】
図示の実施形態では、データリポジトリ125は、1つ又は複数のデータジェネレータ220によって作成されたデータを格納する。データジェネレータ220は、一般に、医療施設又は非医療施設、特定の機械又は機器、データ主体自体、データの収集を容易にした他者などの任意のデータソースを含む。例えば、医療データの場合、データジェネレータ220は、患者、医療専門家、患者からデータを取得又は記録するために使用された機器、データが収集された診療所又は施設などを含み得る。
【0042】
図示のように、データリポジトリ125は、データクエリ215に基づいて、関連するデータ要素225を返す。本明細書で使用される場合、データ要素225は、一般に、別個のデータ片であり、任意の数及びタイプの値を含むことができる。例えば、データ要素225は、医療検査結果を指定し、実行された検査を示し、検査の精度を指定し、検査が実行された施設を示すなどであり得る。
【0043】
ブロック230において、これらのデータ要素225は、それらがアクセスルールを満たしているかどうかを決定するために、それぞれ個別に評価される。いくつかの実施形態では、分析サーバは、1つ又は複数のトレーニングされた機械学習モデルを利用して、このレビューを実行する。いくつかの実施形態では、分析サーバは、個々のデータ要素を評価するために特別にトレーニングされたモデルを利用する。すなわち、ブロック210で使用されるモデルは、要求特徴を評価するようにトレーニングされたが、ブロック230で使用されるモデルは、データ要素を評価するようにトレーニングすることができる。いくつかの実施形態では、ブロック230で使用されるモデルは、ブロック210を参照して上で論じられたモデルと同様にトレーニングされる。例えば、システムは、データレコード内のデータ要素ごとに、人間のユーザがアクセスを承認したかどうか(又はデータ要素が特定のアクセスルールに合格したとユーザが決定したかどうか)を示す履歴アクセスレコード又はデータレコードを取得できる。
【0044】
そのような各レコードは、入力特徴として、データの1つ又は複数の特性を指定できる。実施形態では、これらの特徴は、データのタイプ、データの特異性、データの出所、データが関係する分野、データがデータ主体を具体的に識別するかどうかなどを含み得る。いくつかの実施形態では、これらの特徴の1つ又は複数は、データ要素225に関連するメタデータで指定される。いくつかの実施形態では、データ要素225が自然言語テキスト(例えば、臨床記録)を含む場合、分析サーバは、自然言語処理を利用して、入力特徴として使用される概念を抽出することができる。更に、いくつかの実施形態では、各レコードは、データ要素が1つ又は複数のデータアクセスルールに合格した(又は不合格であった)と人間のユーザが決定したかどうかに関する指示でラベル付けされる。いくつかの実施形態では、次に、モデルは、レコードに基づいてトレーニングされる。
【0045】
所与のデータ要素がアクセスルールのいずれかに不合格である場合、ブロック250でレポートから除外される。特定の実施形態では、分析サーバはまた、拒否の1つ又は複数の理由を含むことができる(例えば、特定のルールに不合格であるために1つ又は複数のデータ要素が差し控えられたことを示す)。いくつかの実施形態では、分析サーバは、どのデータ要素が差し控えられ、どれが解放されたかを示す通知を追加的に生成し、データ主体に送信することができる。
【0046】
図示のワークフロー200では、アクセスルールを満たしていると決定された任意のデータ要素225が組み合わされて、集約されたデータ要素(「集約されたデータ」)235のセットを形成する。図示のように、次に、この集約されたデータ235は、ブロック240で評価されて、集約されたデータ235がデータアクセスルールを満たしているかどうかを決定する。例えば、2つ以上のデータ要素225は、ステップ230で個別に評価されるときにアクセスルールに合格するが、結合されると、要素が基礎となるデータ主体の識別を可能にするため、集約されたときに不合格となる可能性がある。
【0047】
いくつかの実施形態では、ブロック240での評価は、1つ又は複数のトレーニングされた機械学習モデルを使用して同様に実行される。いくつかの実施形態では、分析サーバは、この集約された評価のために特別にトレーニングされたモデルを利用する。すなわち、分析サーバは、ブロック210で要求評価を実行する1つ又は複数のモデルの第1のセット、ブロック230でデータ評価を実行する1つ又は複数のモデルの第2のセット、及びブロック240で集約されたデータ評価を実行する1つ又は複数のモデルの第3のセットを利用することができる。いくつかの実施形態では、ブロック240で評価される特徴は、ブロック230で利用された特徴を反映することができる。
【0048】
図示のように、集約されたデータがアクセスルールに合格する場合、分析サーバは承認されたデータ要素を使用してカスタムレポートを生成する(ブロック245内)。図示の実施形態では、集約されたセットが1つ又は複数のアクセスルールに不合格だった場合、分析サーバは、データ要素の少なくとも1つを除外しながら、カスタムレポートを生成する。いくつかの実施形態では、分析サーバは、あらゆるデータ要素を提供することを控えることができる。別の実施形態では、分析サーバは、承認されたデータ要素のいくつかのサブセットを提供することができる。
【0049】
例えば、集約されたデータ235が1つ又は複数のアクセスルールに不合格だったと決定すると、分析サーバは、セットから1つ又は複数のデータ要素を削除し、モデルを使用して集約されたデータセットを再評価することができる。いくつかの実施形態では、分析サーバは、どのデータ要素をセットから削除すべきかを識別するために、データ要素の異なる組み合わせを繰り返し評価することができる。例えば、分析サーバは、削除される要素を最も少なくしてルールに合格するデータ要素の組み合わせを見つけようとすることができる(分析サーバが可能な限り多くのデータを返すことができるように)。
【0050】
図3~5は、データ要求、データ要素、及び集約されたデータを評価するためなど、本明細書で論じられる機械学習モデルをトレーニングするための技術を更に詳細に説明している。
【0051】
図3は、本明細書に開示されるいくつかの実施形態による、機械学習モデルをトレーニングして、データ要求の特性に基づいてデータアクセスを制御するための方法300を示す流れ図である。いくつかの実施形態では、方法300を使用して、要求を評価するようにモデルをトレーニングすることができる(例えば、
図2のブロック210で)。方法300は、ブロック305で開始し、ここで、トレーニングサーバ(例えば、トレーニングサーバ135)は、履歴アクセスレコードのセットを取得する。いくつかの実施形態では、各履歴アクセスレコードは、以前のデータ要求に対応し、人間のレビュー担当者が要求を承認したかどうか(及び/又は要求が1つ又は複数のデータアクセスルールを満たしていると決定されたかどうか)を示すラベルを含む。例えば、初期手動/トレーニングフェーズ中に、レビュー担当者がデータの要求を評価及び承認又は拒否するときに、トレーニングサーバはデータを収集することができる。この監視に基づいて、トレーニングサーバは履歴アクセスレコードのトレーニングデータセットを構築できる。
【0052】
ブロック310で、トレーニングサーバは、履歴アクセスレコードの1つを選択する。実施形態では、この選択は、トレーニングサーバがトレーニングセット内の各履歴アクセスレコードを反復処理するときに、任意の適切な基準(例えば、最も古いレコードから開始、最新のレコードから開始など)を利用できる。次に、方法300は、ブロック315に進み、ここで、トレーニングサーバは、選択されたレコードに対応する要求の1つ又は複数の特徴を抽出する。これらの特徴は、機械学習モデルへの入力特徴として使用される。これには、要求の目的、要求に関係する分野又は業界など、要求から概念を抽出することが含まれ得る。例えば、トレーニングサーバは、要求が健康又は幸福、経済的利益などに関係するかどうかを決定することができる。特定の実施形態では、トレーニングサーバは、NLPを利用して、要求からこれらの特徴を抽出する。いくつかの実施形態では、特徴を抽出するために要求が以前に評価されている可能性があり、これらの特徴はアクセスレコードに格納され得る。いくつかの実施形態では、各アクセスレコードは、要求が承認されたか又は拒否されたかを示すラベルに更に関連付けられる。
【0053】
次に、方法300は、ブロック320に進み、ここで、トレーニングサーバは、選択されたレコードに基づいて1つ又は複数の機械学習モデルをトレーニングする。いくつかの実施形態では、トレーニングサーバは、モデルへの入力として(ブロック315で抽出された)特徴を提供することによってそれを行う。このモデルは、ランダムな重みとパラメータで初期化された新しいモデルである場合もあれば、又は(例えば、以前のトレーニングラウンドに基づいて)部分的又は完全に事前トレーニングされている場合もある。入力特徴に基づいて、トレーニング中のモデルはいくつかの出力(例えば、1つ又は複数のアクセスルールの「合格」又は「不合格」としての分類)を生成する。実施形態では、トレーニングサーバは、この生成された分類を(レコードに示されている)レコードの実際のラベルと比較して、実際の結果と生成された結果との差に基づいて損失を計算することができる。次に、この損失を使用して、モデルの1つ又は複数の内部の重みとパラメータを精緻化し(例えば、バックプロパゲーションを介して)、モデルが要求をより正確に分類することを学習するようにする。
【0054】
いくつかの実施形態では、トレーニングサーバは、アクセスルールの集合的なセットを考慮して要求を分析するためにモデルをトレーニングする。つまり、トレーニングサーバは、全てのアクセスルールを考慮して要求を同時に評価するようにモデルをトレーニングし、要求が全てのアクセスルールに合格したか、又は少なくとも1つに不合格となったかに基づいて、バイナリの「合格」又は「不合格」を出力できる(又はルールごとに1つずつ、決定のセットを出力できる)。他の実施形態では、上記のように、トレーニングサーバは、アクセスルールごとに別個のモデルをトレーニングする。
【0055】
次に、方法300は、ブロック325に進み、ここで、トレーニングサーバは、追加のトレーニングが必要かどうかを決定する。これには、任意の追加の履歴アクセスレコードがトレーニングデータセットに残っているかどうかなど、任意の終了基準の評価が含まれ得る。様々な実施形態において、他の終了基準は、限定されないが、事前定義された時間又はコンピューティングリソースがモデルのトレーニングに費やされたかどうか、モデルが事前定義された最小精度に達したかどうかなどを含み得る。追加のトレーニングがまだ完了していない場合、方法300はブロック310に戻る。
【0056】
そうでない場合、方法300はブロック330に進み、ここでトレーニングサーバは、実行時に着信データ要求を分析するためにトレーニングされたモデルを展開する。いくつかの実施形態では、これは、別のデバイス上でモデルをインスタンス化するために使用することができるトレーニングされたモデル(例えば、重みベクトル)のいくつかの指示を送信することを含む。例えば、トレーニングサーバは、トレーニングされたモデルの重みを分析サーバに送信することができる。その後、モデルを使用して、新たに受信したデータ要求を評価できる。
【0057】
図4は、本明細書に開示されるいくつかの実施形態による、機械学習モデルをトレーニングして、個々のデータ要素の特性に基づいてデータアクセスを制御するための方法400を示す流れ図である。いくつかの実施形態では、方法400を使用して、個々のデータ要素を評価するようにモデルをトレーニングすることができる(例えば、
図2のブロック230で)。方法400は、ブロック405で開始し、ここで、トレーニングサーバは、それぞれが前のデータ要求に対応する1つ又は複数の履歴アクセスレコードを取得する。いくつかの実施形態では、トレーニングサーバは、要求が承認されたアクセスレコードを選択する。つまり、拒否された要求についてデータが取得又は分析されないため、トレーニングサーバは、少なくとも1つのデータ要素が人間のレビュー担当者によって取得及び評価された承認済みの要求しか取得できない。いくつかの実施形態では、履歴アクセスレコードは、それぞれ1つ又は複数のデータレコードに関連付けられ、各データレコードは、要求に基づいて取得されたそれぞれのデータ要素に対応する。
【0058】
次に、方法400は、ブロック410に進み、ここで、トレーニングサーバは、トレーニングアクセスレコードのセットから履歴アクセスレコードを選択する。実施形態では、この選択は、トレーニングサーバがトレーニングセット内の各履歴アクセスレコードを反復処理するときに、任意の適切な基準(例えば、最も古いレコードから開始、最新のレコードから開始など)を利用できる。ブロック415で、トレーニングサーバは、選択されたアクセスレコードに関連付けられたデータレコードを識別する。いくつかの実施形態では、各データレコードは、選択されたアクセスレコードに対応する要求に応じて取得されたデータ要素に対応する。例えば、選択したアクセスレコードに対応する要求の結果、データリポジトリから10個のデータ要素が取得されていると仮定する。したがって、いくつかの実施形態では、アクセスレコードは、10個のデータレコード(各データ要素に1個)を含むか、又はそれらにリンクされるか、又はさもなければ関連付けられる。いくつかの実施形態では、各データレコードは、対応するデータ要素の特徴、並びにデータ要素が1つ又は複数のアクセスルールを満たしているかどうかを示すラベルを含む。
【0059】
ブロック420で、トレーニングサーバは、識別されたデータレコードの1つを選択する。次に、方法400は、ブロック425に進み、ここで、トレーニングサーバは、選択されたレコードに対応するデータ要素の1つ又は複数の特徴を抽出する。特徴は、一般に、データのタイプ、データのソース、データの事前定義された機密性又はプライバシレベルなどのデータ要素の特性に対応する。いくつかの実施形態では、特徴は、データ要素のデータプロファイルを含み、データプロファイルは、関連する特徴を指定するメタデータ構造である。特定の実施形態では、トレーニングサーバはまた、データ要素の1つ又は複数のデータソースプロファイルを抽出する。データソースプロファイルは通常、データ要素のソースの特徴を指定するメタデータ構造である。例えば、データ要素が特定の医療施設によって収集された場合、データソースプロファイルは施設の特徴(名前、場所など)を指定できる。同様に、データ要素が特定の機器を使用して収集された場合、プロファイルは、機器のアイデンティティとタイプ、保守レコード、機器の精度などを指定できる。いくつかの実施形態では、各データレコードは、データの収集及びデータリポジトリへの転送に関与するエンティティに対応する任意の数のプロファイルに関連付けることができる。
【0060】
次に、方法400は、ブロック430に進み、ここで、トレーニングサーバは、選択されたデータレコードに基づいて1つ又は複数の機械学習モデルをトレーニングする。いくつかの実施形態では、トレーニングサーバは、モデルへの入力として(ブロック425で抽出された)特徴を提供することによってそれを行う。このモデルは、ランダムな重みとパラメータで初期化された新しいモデルである場合もあれば、又は(例えば、以前のトレーニングラウンドに基づいて)部分的又は完全に事前トレーニングされている場合もある。入力特徴に基づいて、トレーニング中のモデルはいくつかの出力(例えば、1つ又は複数のアクセスルールの「合格」又は「不合格」としての分類)を生成する。実施形態では、トレーニングサーバは、この生成された分類を(データレコードと共に含まれている)実際のラベルと比較して、実際の結果と生成された結果との差に基づいて損失を計算することができる。次に、この損失を使用して、モデルの1つ又は複数の内部の重みとパラメータを精緻化し(例えば、バックプロパゲーションを介して)、モデルが個々のデータ要素をより正確に分類することを学習するようにする。
【0061】
いくつかの実施形態では、トレーニングサーバは、アクセスルールの集合的なセットを考慮してデータ要素を分析するためにモデルをトレーニングする。つまり、トレーニングサーバは、全てのアクセスルールを考慮してデータ要素を同時に評価するようにモデルをトレーニングし、データ要素が全てのアクセスルールに合格したか、又は少なくとも1つに不合格となったかに基づいて、バイナリの「合格」又は「不合格」を出力できる(又はルールごとに1つずつ、決定のセットを出力できる)。他の実施形態では、上記のように、トレーニングサーバは、アクセスルールごとに別個のモデルをトレーニングする。
【0062】
次に、方法400は、ブロック435に進み、ここで、トレーニングサーバは、選択されたアクセスレコードが、まだ評価されていない少なくとももう1つの追加のデータレコードを含むかどうかを決定する。含む場合、方法400はブロック420に戻る。そうでない場合、方法400はブロック440に進み、ここでトレーニングサーバは追加のトレーニングが必要かどうかを決定する。これには、任意の追加の履歴アクセスレコードがトレーニングデータセットに残っているかどうかなど、任意の終了基準の評価が含まれ得る。様々な実施形態において、他の終了基準は、限定されないが、事前定義された時間又はコンピューティングリソースがモデルのトレーニングに費やされたかどうか、モデルが事前定義された最小精度に達したかどうかなどを含み得る。追加のトレーニングがまだ完了していない場合、方法400はブロック410に戻る。
【0063】
そうでない場合、方法400は、ブロック445に進み、ここで、トレーニングサーバは、実行時に取得された個々のデータ要素を分析するためにトレーニングされたモデルを展開する。いくつかの実施形態では、これは、別のデバイス上でモデルをインスタンス化するために使用することができるトレーニングされたモデル(例えば、重みベクトル)のいくつかの指示を送信することを含む。例えば、トレーニングサーバは、トレーニングされたモデルの重みを分析サーバに送信することができる。次に、このモデルを使用して、新たに受信したデータ要求に応じて取得されるデータ要素を評価できる。
【0064】
図5は、本明細書に開示されるいくつかの実施形態による、機械学習モデルをトレーニングして、アクセスルールを個別に満たす集約されたデータ要素の特性に基づいてデータアクセスを制御するための方法500を示す流れ図である。いくつかの実施形態では、方法500を使用して、集約されたデータに対応する集約されたデータ要素を評価するようにモデルをトレーニングすることができる(例えば、
図2のブロック240で)。方法500は、ブロック505で開始し、ここで、トレーニングサーバは、それぞれが前のデータ要求に対応する1つ又は複数の履歴アクセスレコードを取得する。いくつかの実施形態では、トレーニングサーバは、要求が承認されたアクセスレコードを選択する。つまり、拒否された要求についてデータが取得又は分析されないため、トレーニングサーバは、少なくとも1つのデータ要素が人間のレビュー担当者によって取得及び評価された承認済みの要求しか取得できない。いくつかの実施形態では、トレーニングサーバは、少なくとも2つのデータ要素が取得されたレコードのみを取得する(例えば、集約されたデータが個々の評価とは異なる結果を引き起こす可能性があるように)。いくつかの実施形態では、履歴アクセスレコードは、それぞれ1つ又は複数のデータレコードに関連付けられ、各データレコードは、要求に基づいて取得されたそれぞれのデータ要素に対応する。
【0065】
次に、方法500は、ブロック510に進み、ここで、トレーニングサーバは、トレーニングレコードのセットから履歴アクセスレコードを選択する。いくつかの実施形態では、この選択は、トレーニングサーバがトレーニングセット内の各履歴アクセスレコードを反復処理するときに、任意の適切な基準(例えば、最も古いレコードから開始、最新のレコードから開始など)を利用できる。ブロック515で、トレーニングサーバは、アクセスルールを満たしていると決定された、選択されたアクセスレコードに関連付けられたデータレコードを識別する。つまり、トレーニングサーバは、アクセスルールを個別に満たしていると見なされたデータ要素がある場合はそれを識別できる。例えば、システムが要求に基づいて10個のデータ要素を取得し、3個のデータ要素が個別に評価されたときに1つ又は複数のデータアクセスルールに不合格だったと仮定する。いくつかの実施形態では、トレーニングサーバは、個々のレビューに合格したデータ要素のサブセット(例えば、残りの7個)を識別することができる。
【0066】
ブロック520で、トレーニングサーバは、個々のレビューに合格した識別されたデータレコードの1つを選択する。次に、方法500は、ブロック525に進み、ここで、トレーニングサーバは、選択されたレコードに対応するデータ要素の1つ又は複数の特徴を抽出する。上記のように、特徴は、一般に、データのタイプ、データのソース、データの事前定義された機密性又はプライバシレベルなどのデータ要素の特性に対応する。いくつかの実施形態では、特徴は、データ要素のデータプロファイルを含み、データプロファイルは、関連する特徴を指定するメタデータ構造である。特定の実施形態では、トレーニングサーバはまた、要素の1つ又は複数のデータソースプロファイルを抽出する。データソースプロファイルは通常、データソースの特徴を指定するメタデータ構造である。例えば、データが特定の医療施設によって収集された場合、データソースプロファイルは施設の特徴(名前、場所など)を指定できる。同様に、データが特定の機器を使用して収集された場合、プロファイルは、機器のアイデンティティとタイプ、保守レコード、機器の精度などを指定できる。いくつかの実施形態では、各データレコードは、データの収集及びデータリポジトリへの転送に関与するエンティティに対応する任意の数のプロファイルに関連付けることができる。
【0067】
ブロック530で、トレーニングサーバは、データ要素が生成されたデータレポートに含まれていたかどうかを決定する。データが除外された場合、人間は、そのデータを含めると、集合セットが1つ又は複数のデータアクセスルールに違反することになると決定したに違いない。対照的に、含まれている場合、レビュー担当者は、選択された要素が他の含まれている要素と組み合わされた場合でも、アクセスルールを満たしていると決定した。
【0068】
次に、方法500は、ブロック535に進み、ここで、トレーニングサーバは、選択されたアクセスレコードが、まだ評価されていない少なくとももう1つの追加のデータレコードを含むかどうかを決定する。含む場合、方法500はブロック520に戻る。そうでない場合、方法500は、ブロック540に進み、ここで、トレーニングサーバは、アクセスルールを個別に満たした識別されたデータレコードに基づいて、1つ又は複数の機械学習モデルをトレーニングする。いくつかの実施形態では、トレーニングサーバは、モデルへの入力として(ブロック525で抽出された)各データレコードの特徴を提供することによってそれを行う。このモデルは、ランダムな重みとパラメータで初期化された新しいモデルである場合もあれば、又は(例えば、以前のトレーニングラウンドに基づいて)部分的又は完全に事前トレーニングされている場合もある。入力特徴に基づいて、トレーニング中のモデルは1つ又は複数のアクセスルールのいくつかの出力(例えば、「合格」又は「不合格」としての集約されたセットの分類)を生成する。実施形態では、トレーニングサーバは、この生成された分類をブロック530で決定された実際の結果(例えば、レポートに含まれたデータ要素の実際のセット)と比較して、実際の結果と生成された結果との差に基づいて損失を計算することができる。次に、この損失を使用して、モデルの1つ又は複数の内部の重みとパラメータを精緻化し(例えば、バックプロパゲーションを介して)、モデルがデータ要素の集約されたセットをより正確に分類することを学習するようにする。
【0069】
いくつかの実施形態では、トレーニングサーバは、アクセスルールの集合的なセットを考慮して集約されたデータを分析するためにモデルをトレーニングする。つまり、トレーニングサーバは、全てのアクセスルールを考慮して集約されたデータを同時に評価するようにモデルをトレーニングし、集約されたセットが全てのアクセスルールに合格したか、又は少なくとも1つに不合格となったかに基づいて、バイナリの「合格」又は「不合格」を出力できる(又はルールごとに1つずつ、決定のセットを出力できる)。他の実施形態では、上記のように、トレーニングサーバは、アクセスルールごとに別個のモデルをトレーニングする。
【0070】
次に、方法500は、ブロック545に進み、ここで、トレーニングサーバは、追加のトレーニングが必要かどうかを決定する。これには、任意の追加の履歴アクセスレコードがトレーニングデータセットに残っているかどうかなど、任意の終了基準の評価が含まれ得る。様々な実施形態において、他の終了基準は、限定されないが、事前定義された時間又はコンピューティングリソースがモデルのトレーニングに費やされたかどうか、モデルが事前定義された最小精度に達したかどうかなどを含み得る。追加のトレーニングがまだ完了していない場合、方法500はブロック510に戻る。
【0071】
そうでない場合、方法500は、ブロック550に進み、ここで、トレーニングサーバは、実行時に取得されたデータ要素の集合セットを分析するためにトレーニングされたモデルを展開する。いくつかの実施形態では、これは、別のデバイス上でモデルをインスタンス化するために使用することができるトレーニングされたモデル(例えば、重みベクトル)のいくつかの指示を送信することを含む。例えば、トレーニングサーバは、トレーニングされたモデルの重みを分析サーバに送信することができる。次に、モデルを使用して、ルールを個別に満たしていると決定されたデータ要素の集約されたセットを評価できる。
【0072】
図6は、本明細書に開示されるいくつかの実施形態による、トレーニングされた機械学習モデルを使用してデータアクセスを制御するための方法600を示す流れ図である。一実施形態では、方法600は、機械学習及び/又はルールエンジンを活用して、有効な要求に基づいて関連データを取得するための信頼できるソースとして機能するために、業界全体に共通の方法論を提供する。
【0073】
方法600は、ブロック605で開始し、ここで、分析サーバ(例えば、分析サーバ110)は、データアクセスの要求を受信する。上記のように、この要求は、一般に、明示的な参照によって、データをフィルタリング又は識別するために使用できる特性を提供することによってなど、所望のデータを示す。更に、実施形態では、要求は、一般に、要求の目的又は理由を示す。いくつかの実施形態では、要求は、要求されたデータ及び/又は提案された使用法の自然言語のテキスト記述を含む。例えば、要求には、「私は家族歴のためにDVTのリスクが高くなっているか?もしそうなら、どのマーカーをスクリーニングする必要があるか?」などの質問が含まれる場合がある。いくつかの実施形態では、要求は、データが必要とされる(又は所望の)タイムライン、及び提供され得る任意の追加のサポートドキュメントなどの他のフィールドを追加的に含むことができる。いくつかの実施形態では、これらの要求特徴は、要求プロファイルと呼ばれるメタデータ構造に含まれる(直接提供されるか、又はNLPを使用して要求を評価することに基づいて生成される)。
【0074】
次に、方法600は、ブロック610に進み、ここで分析サーバは、1つ又は複数のトレーニングされた機械学習モデルの第1のセットを使用して要求プロファイルを処理する。いくつかの実施形態では、上記のように、これらのモデルは、一般に、要求が1つ又は複数のアクセスルールを満たしているかどうかを決定するようにトレーニングされる。例えば、要求がデータ主体に害を与えることなく人類を向上させるかどうかを決定するために、分析サーバは、要求が健康又は幸福に関係する(人類に利益をもたらすことを示す)かどうか、使用に商業的利益が含まれる(そうでないことを示す)かどうか、などを決定することができる。加えて、モデルを使用して、提案された使用が正当であるかどうか(例えば、それが臨床的であるか又は医療的であるか、又はユーザが単に好奇心を持っているか、又はデータを悪用するつもりであるかどうか)を決定できる。同様に、モデルを使用して、データが保護されているかどうか(例えば、機密性を維持したままになるかどうか)を決定できる。いくつかの実施形態では、上記のように、別個のトレーニングされたモデルを使用して、それぞれの個別のアクセスルールを考慮して要求を評価する。
【0075】
ブロック615で、分析サーバは、モデルによって提供される分類に基づいて、要求がアクセスルールに合格するかどうかを決定する。例えば、要求が商業的利益を目的としている場合、分析サーバは要求を拒否することができる。
【0076】
要求が合格しない場合、方法600はブロック660に進み、ここで分析サーバは要求を拒否するカスタムレポートを生成する。いくつかの実施形態では、レポートは、要求が拒否された理由(例えば、違反されたルールを指定する)を含む。要求がアクセスルールを満たしている場合、方法600はブロック620に進む。
【0077】
ブロック620で、分析サーバは、1つ又は複数のデータリポジトリから要求されたデータを取得する。次に、方法600は、ブロック625に進み、ここで分析サーバは、1つ又は複数のトレーニングされたモデルの第2のセットを使用して、取得されたデータ要素の1つを処理する。つまり、分析サーバは各データ要素を個別に処理する。いくつかの実施形態では、分析サーバは、単一のモデルを使用して各データ要素を評価する。別のものでは、分析サーバはモデルのセット(例えば、データアクセスルールごとに1つ)を使用する。
【0078】
いくつかの実施形態では、データ要素を処理することは、データ要素の特徴又は特性(例えば、データ及び/又はデータのソース若しくはジェネレータのための1つ又は複数のデータプロファイル)を抽出することを含む。次にこれらの特徴は、1つ又は複数のモデルの入力として使用される。ブロック630で、分析サーバは、選択されたデータ要素が全てのアクセスルールを満たしているかどうかを決定する。満たしていない場合、方法600は、ブロック635に進み、ここで、分析サーバは、選択されたデータ要素をブロックする(例えば、カスタムレポートから除外するためにフラグを立てるか、それを破棄するか、又はそうでなければそれを処理又は考慮することを停止する)。データ要素がルールに合格したと分析サーバが決定した場合、分析サーバはそれを承認されたデータ要素のサブセットに追加し、方法600はブロック640に進む。
【0079】
DVT関連の要求について上記の例を続けると、分析サーバは、検査及び/又は識別されたDVTマーカー、要求者の家族歴、親戚の診断、実施した検査のタイプなどのデータ主体に害を及ぼしたり又は特定したりすることなく、一部のデータ要素を使用することで人類を向上させ得ると決定することができる。対照的に、人類を向上させない、又はデータ主体に害を及ぼす可能性があるためにこのルールに不合格となる可能性のあるデータ要素のいくつかの例には、医師の診断書、DVTを持っている又は持っていた家族の特定のアイデンティティなどがある。
【0080】
同様に、使用法が正当であると見なすことができる要素の例として、分析サーバは、DVTマーカー、診断、使用された検査のタイプなどのデータが正当に使用されていると決定することができる。対照的に、分析サーバは、任意のDVTに関連しない履歴、DVTに関係しない検査などのデータ要素が、要求を考慮して正当な使用法ではないと決定することができる。このような要素は制限され得る。加えて、分析サーバがデータは保護されていないと決定する要素の例として、分析サーバは、DVTマーカーと診断は条件を満たしているが、特定の患者名、生年月日、非DVT診断などのデータ要素を除外する必要がある、と決定することができる。
【0081】
図6に戻ると、ブロック640において、分析サーバは、取得されたがまだ評価されていない任意の追加のデータ要素が存在するかどうかを決定する。存在する場合、方法600はブロック625に戻る。そうでない場合、方法600はブロック645に進む。
【0082】
ブロック645で、分析サーバは、1つ又は複数の機械学習モデルの第3のセットを使用して、残りのデータ要素の集約されたセット(例えば、個別にルールを満たしていることが見出されたデータ要素)を処理する。上記のように、これには、モデルの第3のセットを使用して(承認された要素のセット内の各データ要素からの)特徴の集約されたセットを提供することが含まれ得る。ブロック650で、分析サーバは、集約されたデータがデータアクセスルールに合格するかどうかを決定する。合格である場合、方法600は、ブロック660に進み、ここで、分析サーバは、集約されたデータを含むレポートを生成する。いくつかの実施形態では、いずれかの要素が除外された場合(例えば、ブロック635で)、分析サーバは、(例えば、除外されたデータ要素ごとに不合格だったルールを識別する)説明を含むことができる。
【0083】
ブロック650で、分析サーバが、集約されたデータがルールのセットに合格できないと決定した場合、方法600は、ブロック655に進み、ここで、分析サーバは、データ要素の少なくとも1つを最終レポートから除外する。例えば、関係する医療専門家又は施設の場所を識別するデータ要素は、個別にアクセスルールに合格する場合があるが、他の承認されたデータ要素と組み合わせると、データ主体を識別できるようになるか、又は他のアクセスルールに違反する可能性がある。いくつかの実施形態では、分析サーバは、集約されたデータから1つ又は複数のデータ要素を繰り返し削除し、満足のいくデータ要素の集約されたセットが見つかるまで残りのセットを再処理することができる。次に、方法600はブロック660に進む。
【0084】
いくつかの実施形態では、どのデータが共有されたかについて知らせる通知をデータ主体に送信することもできる。特定の実施形態では、通知はまた、要求者、要求の理由などを示す。
【0085】
ブロック615の評価の別の例として、養子縁組された個人が、自分の病歴に関する情報を受け取るために、自分の実の親の現在の場所を知ることを要求すると仮定する。一実施形態では、示された目的(病歴の受信及びレビュー)は、より侵入的でない要求(例えば、親の場所ではなく、データのための特別な要求)で満たすことができるので、そのような要求は、ブロック615で否認され得る。
【0086】
別の例として、養子縁組された個人が、自分の病歴を確認するために、自分の実の親に関する一般的な情報を要求すると仮定する。一実施形態では、この要求は、(例えば、要求者が有効であり、要求されたデータ及び述べられた目的が整合されているため)ブロック615に合格することができ、データは、ブロック620で1つ又は複数のソース(関連する養子縁組機関など)から取得され得る。ブロック630で、いくつかのデータ(両親の名前、養子縁組の日付、家族歴、基本的な病歴など)がアクセスルールに合格する可能性がある。対照的に、親の現在の連絡先情報、親の社会保障番号などのデータは、アクセスルールに違反しているために不合格となる。
【0087】
集約されたときにブロック650での評価に不合格となる可能性があるデータ要素の例として、養子縁組された子の例を検討する。各親の名前及び養子縁組の日付又は場所などのデータは個別にルールに合格する場合があるが(ブロック630で)、そのようなデータはブロック650での評価に合格しない場合がある(例えば、親の特定が可能になるため)。対照的に、基本的な病歴などのデータは、この集約された評価に合格する可能性がある。
【0088】
更に別の例として、ある個人が生物学的親のアイデンティティをすでに知っていて、親の健康保険会社が遺伝子の危険因子を決定するために医療遺伝子検査情報を公開するように要求すると仮定する。一実施形態では、そのような要求は、アクセスのルールを満たす有効な目的のための有効な要求であるため、ブロック615で評価に合格することができる。ブロック630では、親の身体的属性(例えば、身長、体重、BMIなど)、保険情報、調査又は質問票への個人的な回答(薬物使用など)、検査を実施した会社の識別などのデータは、否認され得る。対照的に、検査が実施された日付、試験施設の場所、発見された特定の遺伝子バイオマーカー値などのデータは、ブロック630のルールを満たすであろう。しかしながら、ブロック650では、施設の場所、検査の日付、医師の診断書などのデータは集合分析に不合格となり、識別されたバイオマーカーなどのデータは合格する。
【0089】
ブロック615での評価の更に別の例として、教育結果を向上させ、生徒が学校を中退するのを防ぐために、地方自治体の職員が郡内の全ての生徒の通知表又は成績情報を要求すると仮定する。一実施形態では、そのような要求は、そのようなデータを共有しない、より侵入的でない要求で(成果を向上させ、脱落を減らすための)意図を満たすことができるので、ブロック615での評価に不合格となる。
【0090】
代わりに、政府職員が教育結果を向上させることを望んでおり、子供の教育を懸念して追加の支援を要求した親に関する情報を要求すると仮定する。要求は、職員が、教育成果を向上させるために、これらの関心のある個人の個別指導及び/又はクラスに関する戦略を増強又は変更することを望んでいることを示している場合がある。一実施形態では、そのような要求は、有効であり、意図を満たすために必要な最も侵入的でないデータに限定されるため、ブロック615で評価に合格することができる。
【0091】
一実施形態では、ブロック630において、親教師間のメモ、親の名前、関心のある教科、生徒の年齢、彼らの教師の名前、指導教員及び使用されている学習技術などのデータはルールを満たすことができる。このようなデータは関連性があり、対象に害を与えたり、又はルールに違反したりすることはない。対照的に、生徒の特定の通知表、親の財政状況、生徒の特定の識別子などのデータは、データ主体に害を及ぼす可能性があるか、又はそうでなければ意図を満たすのに必要がないため、ブロック630でこの評価に不合格となり得る。
【0092】
追加の支援を要求した親又は生徒に関する情報を要求する政府職員に関する上記の例を続けると、生徒の名前(例えば、親と教師の間のメモに含まれる)、所与の試験で受け取った具体的な成績、親又は教師の名前などのいくつかのデータは、ブロック650で評価に不合格となる可能性がある。そのようなデータは、全体として、主体に害を及ぼす可能性がある。対照的に、関心のある教科、既知の学習障害、年齢層又は範囲などのデータは、この評価に合格し、レポートに含まれ得る。
【0093】
方法600の適用の更に別の例として、納税者固有の割戻しを提供するために、政府職員が郡内の各家庭の納税者に関する情報を要求すると仮定する。一実施形態では、この要求は、要求者のアイデンティティ及び要求/意図が有効であるため、ブロック615で評価に合格することができる。ブロック630では、納税者の社会保障番号、総所得、扶養家族の数、郵便番号などのデータは、害を及ぼすことなく要求を満たすことができるため、ブロック630でそれぞれ個別分析に合格することができる。対照的に、個人の市民権状況、識別子、障害状況などのデータは不合格となり得る。全体として、ブロック650では、社会保障番号、扶養家族の数、総収入などのデータは、主体に害を及ぼす可能性があるため、不合格となり得る。対照的に、その地域の納税者数などのデータは合格することができる。
【0094】
追加の例として、全ての居住者の保険にアクセスするために、政府職員が公的保険の対象となる人数に関する情報を要求すると仮定する。そのような要求は、ブロック615で評価に合格することができる。ブロック630において、各主体の家族収入、彼らが住んでいる場所の郵便番号、既存の健康状態などのデータは、アクセスルールに不合格となり得る。対照的に、納税者情報、年齢、社会保障番号、居住地、雇用状況などのデータは、害を及ぼすことなく要求に対応できるため、この個人評価に合格することができる。しかしながら、ブロック650では、社会保障番号、年齢、結婚歴などのデータは集約されたレビューに不合格となるが、対象者の適格性、名前などのデータは合格となり得る。
【0095】
更に別の例として、病気が広がるリスクを最小限に抑え、関連する乗客に懸念を通知するために、航空会社が特定の期間に伝染病にかかった個人と接触した全ての個人のアイデンティティを要求すると仮定する。そのような要求は、より侵入的でない要求で対処できるので、ブロック615での評価に不合格となり得る。
【0096】
上記の例を続けて、代わりに航空会社が(乗客を具体的に特定することなく)任意の乗客が伝染病にかかった個人と接触したかどうかについての決定を要求したと仮定する。一実施形態では、この要求は、ブロック615で評価に合格することができる。ブロック620で、乗客のアイデンティティ、場所(例えば、ソーシャルメディア又はGPSを使用して)、カレンダー、関連する検査機関及び実験室の結果などの関連するデータを取得することができる。ブロック630では、乗客の個人名又は識別子、年齢、既存の状態などのデータを除外することができる。しかしながら、接触トレース情報(位置データなど)、現在の健康状態の結果などのデータは含めることができる。ブロック650では、全体として、乗客に接触した人の名前、乗客の年齢、潜在的に伝染病にかかっている個人の現在の位置などのデータを除外することができる。対照的に、誰かが伝染病にかかった人と接触したかどうか、接触が事前定義された時間内であったかどうかなどに関するバイナリの「はい」又は「いいえ」の表示などのデータは、ルールに合格することができる。
【0097】
別の例として、患者(又は潜在的な患者)が、自分の手術の治療計画と医療提供者を選ぶために、網膜剥離手術を受けた患者に関する情報を1つ又は複数の施設に要求すると仮定する。そのような要求は、意図がより侵入的でない要求又はデータで満たすことができるので、ブロック615での評価に不合格となり得る。
【0098】
代わりに、患者がそのような手術の成功率、又はそれらによって引き起こされた任意の永久的な損傷又は危害についての情報を要求したと仮定する。この要求は、ブロック615で評価に合格することができる。ブロック630では、特定の診療場所、特定の患者情報などのデータはレビューに不合格となる。対照的に、手術を行う診療所及び/又は外科医のリスト、成功率に影響を与える要因の表示、手術に使用される医療機器のリスト、眼の測定値又は患者の他のデータなどのデータは、この評価に合格し得る。
【0099】
しかしながら、ブロック650では、成功率が低い特定の診療所又は個々の外科医、手術で使用される特定のデバイスなどのデータは除外され得る。対照的に、成功率の高い外科医のリスト、合併症又は危害の兆候などのデータが含まれ得る。
【0100】
別の例として、政府職員又は契約した非営利団体が、結果を評価するために、現在開発中のワクチンの臨床試験に関係するデータを要求すると仮定する。要求は、ブロック615で評価に合格することができ、データを取得することができる。ブロック630では、ワクチンの成分、副作用、ワクチンが投与された日付又は時間、投与量、懸念の報告、ワクチンの独立した評価、開発の段階、試験のフェーズ、参加者数、報告された有害事象、試験から脱落した患者の兆候などは全てアクセスルールに合格することができる。対照的に、特定の患者の名前、場所、住所などのデータは、このレビューに不合格となり得る。
【0101】
この例を続けると、ブロック650で、特定の試験の名前と場所、ワクチンの価格設定構造、コストなどが全てまとめて除外され得る。対照的に、ワクチンの有効性、年齢層別の抗体又は免疫応答、報告された副作用などのデータは、レポートに含めるためにこの集合レビューに合格することができる。
【0102】
別の例として、研究者が、手術部位周辺の経時的な形態変化を分析するために、外科的治療を受けた患者の生の画像データへのアクセスを要求すると仮定する。そのような要求は、ブロック615で評価に合格することができる。ブロック630において、手術を実施する病院又は現場、手術に使用される装置、データを収集するために使用される画像装置、医師の診断書、患者の苦情、副作用などのデータは、個別の評価に合格することができる。対照的に、施設の場所、患者の名前、患者の病歴などのデータは、このレビューに不合格となる。
【0103】
ブロック650において、生画像、画像又は操作に関連する既存の条件の要約などのデータは、集約されたレビューに合格することができる。対照的に、画像分析に関係のない医師の診断書、医師の名前又は識別子、画像をキャプチャするために使用される特定の医療機器、画像に関係のない副作用などのデータは除外され得る。
【0104】
方法600の適用の更に別の例として、学校の教師が、生徒が虐待されている疑いがあるために、特定の生徒が受けた全ての医療のレコードについて、医療サービスに情報を要求すると仮定する。一実施形態では、要求者は正当であるが、要求されたレコードは必要なものを超えているので、この要求はブロック615で評価に不合格となる。例えば、(特定の健康データを要求せずに)欠席又は遅刻の頻度、診察の回数などを対象とした場合、要求はルールを満たすことができる。
【0105】
別の例として、生徒が授業を避けるために家族の緊急事態について嘘をついた疑いがあるため、教授が生徒の位置データを要求すると仮定する。一実施形態では、そのような要求は、データ主体に有害である(また、異なるデータが要求された場合にも満たされる可能性が高い)ため、ブロック615での評価に不合格となる。
【0106】
更に別の例として、故人の成人した子供が、ビデオトリビュート用の写真やビデオをダウンロードするために、故人のソーシャルネットワーキングアカウントへのアクセスを要求すると仮定する。そのような要求は、ブロック615で評価に合格することができる。ブロック630において、ソーシャルメディアアカウントから公開されている写真及びビデオ、友人のリストなどの情報は、個別のレビューに合格することができる。対照的に、非公開情報、保存された投稿又はコンテンツ、故人の非公開の会話などのデータは除外することができる。
【0107】
更に別の例として、親戚が違法な活動に従事していたかどうかを決定するために、ある人が故人の親戚のソーシャルネットワーキングアカウントへのアクセスを要求すると仮定する。ブロック615において、そのような要求は、意図がアクセスルールを満たしていないために否認され得る(例えば、それは人類を向上させないか、又はデータ主体に害を及ぼす可能性がある)。
【0108】
別の例として、セカンドオピニオンを得るために個人が家族の診断情報を取得したいと仮定する。そのような要求は、ブロック615で評価に合格することができる。ブロック630では、診断に関係する検査結果、遺伝的素因、症状などのデータが評価に合格することができるが、診断に関係のない情報(血液型など)などのデータは除外される。ブロック650では、患者名、医師名、病院のアイデンティティ又は場所などの情報を除外することができ、その一方で、関連する検査結果などのデータはアクセスルールに合格する。
【0109】
図7は、本明細書に開示されるいくつかの実施形態による、データアクセス制御及び通知を強化するためのグラフィカルユーザインタフェース(GUI)705を示す。図示の実施形態では、GUI 705は、一連のデータ要素710A~Jを、各データ要素710について、データ要素が共有されている(又は共有可能である)かどうかの表示と共に含む。図示の実施形態では、GUI 705はスライディングインジケータを使用し、ここで、1つの位置は、共有されないブロックされたデータ要素/データに対応し(例えば、スライダーの左端)、1つは、特定の要求に応じてケースバイケースで時々又は制限的に共有されるデータに対応し(例えば、スライダーの中央)、1つの位置は、常に又は自由に共有されるデータに対応する(例えば、スライダーの右端)。いくつかの実施形態では、データ要素710はそれぞれ、色分け(例えば、赤、黄、及び緑)などの他の視覚補助に関連付けられている。
【0110】
いくつかの実施形態では、ユーザは、GUI 705を使用して、分析サーバに設定又は選択を提供することができる。例えば、ユーザは、1つの要素が共有された(又は選択的に共有されている)が、それをむしろ常にロックされているようにすることを指定できる。或いは、ユーザは、1つのデータ要素がブロックされたが、それを(少なくとも選択的に)共有できるようにしたいことを示すことができる。いくつかの実施形態では、このユーザフィードバックを使用して、アクセス決定を行うために使用されるモデルを繰り返し精緻化することができる。
【0111】
図8は、本明細書に開示されるいくつかの実施形態による、1つ又は複数の機械学習モデルを使用してデータアクセスを自動的に制御するための方法800を示す流れ図である。方法800は、ブロック805から開始し、ここで、分析サーバは、第1のユーザから、第2のユーザに関係するデータの第1の要求を受信する。ブロック810で、分析サーバは、1つ又は複数のトレーニングされた機械学習モデルの第1のセットを使用して第1の要求を処理することによって、第1の要求が1つ又は複数のデータアクセスルールを満たしているかどうかを自動的に決定する。次に、方法800は、ブロック815に進み、ここで、第1の要求が1つ又は複数のデータアクセスルールを満たしていると決定すると、分析サーバは、第1の要求に基づいて第1の複数のデータ要素を自動的に取得する。ブロック820で、分析サーバは、1つ又は複数のトレーニングされた機械学習モデルの第2のセットを使用して第1の複数のデータ要素のそれぞれを処理することによって、第1の複数のデータ要素のそれぞれが1つ又は複数のデータアクセスルールを満たしているかどうかを自動的に決定する。更に、第1の複数のデータ要素からのデータ要素の第1のセットの各データ要素が1つ又は複数のデータアクセスルールを個別に満たしていると決定すると、分析サーバは、ブロック825で1つ又は複数のトレーニングされた機械学習モデルの第3のセットを使用してデータ要素の第1のセットを処理することによって、データ要素の第1のセットが集合的に1つ又は複数のデータアクセスルールを満たしているかどうかを決定する。ブロック830で、データ要素の第1のセットが1つ又は複数のデータアクセスルールを満たしていると決定すると、分析サーバは、データ要素の第1のセットを含むカスタムレポートを生成する。
【0112】
図9は、本明細書に開示されるいくつかの実施形態による、1つ又は複数の機械学習モデルをトレーニングしてデータアクセス可能性を制御するための方法900を示す流れ図である。方法900は、ブロック905で開始し、ここで、トレーニングサーバは、履歴アクセスレコードのセットから第1のトレーニングデータセットを生成し、第1のトレーニングデータセット内のそれぞれのアクセスレコードは、データのそれぞれの要求に対応し、それぞれの要求が1つ又は複数のデータアクセスルールを満たしているかどうかを識別する情報を含む。ブロック910で、トレーニングサーバは、データレコードのセットから第2のトレーニングデータセットを生成し、第2のトレーニングデータセットのそれぞれのデータレコードは、それぞれのデータ要素に対応し、それぞれのデータ要素が1つ又は複数のデータアクセスルールを満たしているかどうかを識別する情報を含む。加えて、ブロック915で、トレーニングサーバは、履歴アクセスレコードのセットから第3のトレーニングデータセットを生成し、第3のトレーニングデータセットのそれぞれのアクセスレコードは、集約されたデータ要素のそれぞれのセットに対応し、集約されたデータ要素のそれぞれのセットが1つ又は複数のデータアクセスルールを満たしているかどうかを識別する情報を含む。次に、方法900は、ブロック920に進み、ここで、トレーニングサーバは、第1、第2、及び第3のトレーニングデータセットに基づいて1つ又は複数の機械学習モデルをトレーニングして、データの要求を許可すべきかどうかを識別する出力を生成する。次に、ブロック925で、トレーニングサーバは、1つ又は複数の機械学習モデルを1つ又は複数のコンピューティングシステムに展開する。
【0113】
(機械学習モデルをトレーニング及び使用してデータアクセスを制御するためのシステム例)
図10は、本明細書に開示されるいくつかの実施形態による、機械学習モデルをトレーニング及び使用してデータアクセスを制御するように構成されたコンピューティングデバイス1000を示すブロック図である。例えば、コンピューティングデバイス1000は、
図1に示される分析サーバ110及び/又はトレーニングサーバ135のうちの1つ又は複数を含み得る。コンピューティングデバイス1000は、
図2~9を参照して説明された方法及び技術など、本明細書に開示された様々な技術を実行するように構成され得る。
【0114】
示されるように、コンピューティングデバイス1000は、中央処理ユニット(CPU)1005、様々な入出力デバイス1035(例えば、キーボード、ディスプレイ、マウスデバイス、ペン入力など)のコンピューティングデバイス1000への接続を可能にし得る1つ又は複数の入出力デバイスインタフェース1020、コンピューティングデバイス1000がそれを通して1つ又は複数のネットワーク(ローカルネットワーク、イントラネット、インターネット、又は互いに通信可能に接続されたコンピューティングデバイスの任意の他のグループを含み得る)に接続され得るネットワークインタフェース1025、メモリ1010、ストレージ1015、及び相互接続1030を含む。
【0115】
CPU 1005は、メモリ1010に格納されたプログラミング命令を取得して実行してもよい。同様に、CPU 1005は、メモリ1010に存在するアプリケーションデータを取得して格納してもよい。相互接続1030は、CPU 1005、入出力デバイスインタフェース1020、ネットワークインタフェース1025、メモリ1010、及びストレージ1015の間で、プログラミング命令及びアプリケーションデータを送信する。
【0116】
CPU 1005は、単一のCPU、複数のCPU、複数の処理コアを有する単一のCPUなどを表すために含まれている。
【0117】
メモリ1010は、ランダムアクセスメモリなどの揮発性メモリ、又は、不揮発性ランダムアクセスメモリ、若しくは相変化ランダムアクセスメモリなどの不揮発性メモリを表す。示されるように、メモリ1010は、データ共有コンポーネント115、カスタムレポートジェネレータ120、トレーニングデータジェネレータ140、及びモデルトレーナ145を含む。
【0118】
データ共有コンポーネント115は、一般に、要求及びデータ要素を評価して、それらを共有すべきかどうか(例えば、要求元エンティティにアクセスを許可すべきかどうか)を決定するように構成される。実施形態では、データ共有コンポーネント115は、倫理的で許容可能なデータセキュリティ及びアクセス実施を定義するアクセスルールのセットに部分的に基づいてこれを行う。いくつかの実施形態では、データ共有コンポーネント115は、履歴アクセスレコード150でトレーニングされた機械学習モデルを利用する。
【0119】
カスタムレポートジェネレータ120は、一般に、データ共有コンポーネント115によって返された決定に基づいてデータレポートを生成する。すなわち、カスタムレポートジェネレータ120は、共有のために(個別に及び集合的に)承認された任意のデータ要素を含むレポートを生成する。いくつかの実施形態では、除外された任意のデータについて、カスタムレポートジェネレータ120は、要素が満たすことができなかったルールに関する表示を含むことができる(例えば、データ要素を不合格として分類した特定のモデルに基づく)。
【0120】
トレーニングデータジェネレータ140は、一般に、履歴アクセスレコードからトレーニングデータセットを生成する。トレーニングデータセットの各レコードは、(対応する履歴要求又はデータ要素の)入力特徴のセット、並びにターゲット出力ラベル(例えば、履歴要求又はデータ要素がアクセスルールを満たしたかどうか)を示す。
【0121】
モデルトレーナ145は、一般に、トレーニングデータセットを使用して、トレーニングされたモデル1050のセットをトレーニングし、これは、データ共有コンポーネント115によってデータアクセス決定を推進するために使用される。
【0122】
(追加的考慮事項)
前述の説明は、当業者が本明細書に記載の様々な実施形態を実践できるようにするために提供されている。これらの実施形態に対する様々な修正は、当業者には容易に明らかであり、本明細書で定義する一般的な原理は、他の実施形態に適用され得る。例えば、本開示の範囲から逸脱することなく、議論された要素の機能及び配置に変更を加えることができる。様々な例では、必要に応じて、様々な手順又はコンポーネントを省略、置換、又は追加できる。また、いくつかの例に関して説明された特徴は、いくつかの他の例で組み合わせることができる。例えば、本明細書に記載の任意の数の態様を使用して、装置を実装することができ、又は方法を実施することができる。更に、本開示の範囲は、本明細書に記載の本開示の様々な態様に加えて、又はそれ以外の他の構造、機能、又は構造及び機能を使用して実施されるそのような装置又は方法を網羅することを意図している。本明細書に開示される開示の任意の態様は、特許請求の範囲の1つ又は複数の要素によって具体化され得ることを理解されたい。
【0123】
本明細書で使用される場合、項目のリスト「の少なくとも1つ」を指す語句は、単一の要素を含む、それらの項目の任意の組み合わせを指す。例として、「a、b、又はcの少なくとも1つ」は、a、b、c、a-b、a-c、b-c、及びa-b-c、並びに複数の同じ要素の任意の組み合わせ(例えば、a-a、a-a-a、a-a-b、a-a-c、a-b-b、a-c-c、b-b、b-b-b、b-b-c、c-c、並びにc-c-c又はa、b、及びcの他の任意の順序)を網羅することが意図される。
【0124】
本明細書で使用される場合、「決定する(determining)」という用語は、多種多様な作用を包含する。例えば、「決定する」は、算出する、計算する、処理する、導出する、調査する、検索する(例えば、テーブル、データベース、又は別のデータ構造で検索する)、確認するなどを含み得る。また、「決定する」は、受信する(例えば、情報を受信する)、アクセスする(例えば、メモリ内のデータにアクセスする)などを含み得る。また、「決定する」は、解明する、選択する、選ぶ、定めるなどを含み得る。
【0125】
本明細書に開示される方法は、方法を達成するための1つ又は複数のステップ又は作用を含む。方法ステップ及び/又は作用は、特許請求の範囲から逸脱することなく、互いに交換可能であり得る。換言すれば、ステップ又は作用の具体的な順序の指定がない限り、具体的なステップ及び/又は作用の順序及び/又は使用は、特許請求の範囲から逸脱することなく変更され得る。更に、上記の方法の様々な操作は、対応する機能を実行することができる任意の適切な手段によって実行され得る。これらの手段は、回路、特定用途向け集積回路(ASIC)、又はプロセッサを含むがこれらに限定されない、様々なハードウェア及び/又はソフトウェアコンポーネント及び/又はモジュールを含み得る。一般に、図に示されている操作がある場合、それらの操作には、同様の番号が付けられた対応する同等の手段と機能のコンポーネントが含まれ得る。
【0126】
本開示に関連して記載されている種々の図示する論理ブロック、モジュール及び回路は汎用プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)若しくは他のプログラマブルロジックデバイス(PLD)、個別ゲート若しくはトランジスタロジック、個別ハードウェアコンポーネント、又は本明細書において記載されている機能を実行するように設計されているいかなるそれらの任意の組み合わせでも、実装することができるか又は実行することができる。汎用プロセッサはマイクロプロセッサであってもよいが、代替として、プロセッサは、任意の市販のプロセッサ、コントローラ、マイクロコントローラ、又はステートマシンであってもよい。プロセッサはまた、コンピューティングデバイスの組み合わせ、例えば、DSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、DSPコアと組み合わせた1つ又は複数のマイクロプロセッサ、又は任意の他のそのような構成として実装され得る。
【0127】
処理システムは、バスアーキテクチャで実装することができる。バスには、処理システムの特定の用途と全体的な設計上の制約に応じて、任意の数の相互接続するバスとブリッジを含めることができる。バスは、とりわけ、プロセッサ、機械可読媒体、及び入出力デバイスを含む様々な回路を相互にリンクすることができる。ユーザインタフェース(例えば、キーパッド、ディスプレイ、マウス、ジョイスティックなど)もバスに接続できる。バスはまた、タイミングソース、周辺機器、電圧レギュレータ、電力管理回路など、当技術分野でよく知られている他の様々な回路をリンクすることができ、したがって、これ以上説明しない。プロセッサは、1つ又は複数の汎用及び/又は特殊目的のプロセッサで実装することができる。例としては、マイクロプロセッサ、マイクロコントローラ、DSPプロセッサ、及びソフトウェアを実行できるその他の回路が含まれる。当業者は、特定の用途及びシステム全体に課せられる全体的な設計上の制約に応じて、処理システムについて説明された機能をどのように実装するのが最善であるかを認識するであろう。
【0128】
ソフトウェアに実装されている場合、機能は、コンピュータ可読媒体上に1つ又は複数の命令又はコードとして保存又は送信されてもよい。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、又はハードウェア記述言語などと呼ばれるかどうかにかかわらず、命令、データ、又はそれらの任意の組み合わせを意味するように広く解釈されるものとする。コンピュータ可読媒体には、コンピュータ記憶媒体と、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体などの通信媒体の両方が含まれる。プロセッサは、コンピュータ可読記憶媒体に格納されたソフトウェアモジュールの実行を含む、バス及び一般的な処理の管理を担当することができる。コンピュータ可読記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合することができる。代替的には、記憶媒体はプロセッサに統合することができる。例として、コンピュータ可読媒体は、伝送線路、データによって変調された搬送波、及び/又は無線ノードとは別にその上に記憶された命令を備えたコンピュータ可読記憶媒体を含み得、これらは全て、プロセッサによってバスインタフェースを介してアクセスされ得る。或いは、又は更に、コンピュータ可読媒体又はその任意の部分は、キャッシュ及び/又は一般的なレジスタファイルを伴い得る場合など、プロセッサに統合され得る。機械可読記憶媒体の例には、例として、RAM(ランダムアクセスメモリ)、フラッシュメモリ、ROM(読み取り専用メモリ)、PROM(プログラム可能読み取り専用メモリ)、EPROM(消去可能なプログラム可能読み取り専用メモリ)、EEPROM(電気的消去可能なプログラム可能読み取り専用メモリ)、レジスタ、磁気ディスク、光ディスク、ハードドライブ、又は任意のその他の適切な記憶媒体、或いはそれらの任意の組み合わせが含まれ得る。機械可読媒体は、コンピュータプログラム製品に具体化することができる。
【0129】
ソフトウェアモジュールは、単一の命令又は多くの命令を含み得、いくつかの異なるコードセグメントにわたって、異なるプログラム間で、且つ複数の記憶媒体にわたって分散され得る。コンピュータ可読媒体は、いくつかのソフトウェアモジュールを含み得る。ソフトウェアモジュールは、プロセッサなどの装置によって実行されると処理システムに様々な機能を実行させる命令を含む。ソフトウェアモジュールは、送信モジュール及び受信モジュールを含み得る。各ソフトウェアモジュールは、単一のストレージデバイスに常駐する場合もあれば、又は複数のストレージデバイスにわたって分散する場合もある。例として、トリガーイベントが発生したときにソフトウェアモジュールをハードドライブからRAMにロードすることができる。ソフトウェアモジュールの実行中に、プロセッサはアクセス速度を上げるために命令のいくつかをキャッシュにロードすることができる。次に、1つ又は複数のキャッシュラインを汎用レジスタファイルにロードして、プロセッサで実行することができる。ソフトウェアモジュールの機能に言及するとき、そのような機能は、そのソフトウェアモジュールからの命令を実行するときにプロセッサによって実装されることが理解されよう。
【0130】
以下の特許請求の範囲は、本明細書に示す実施形態に限定されることが意図されるものではなく、特許請求の範囲の文言に一致する全範囲が認められるべきである。特許請求の範囲において、単数形での要素への言及は、具体的にそのような定めがない限り、「1つ及び1つのみ(one and only one)」を意味することを意図するものではなく、むしろ「1つ又は複数(one or more)」を意味するものである。具体的に別段の定めがない限り、「いくつかの(some)」という用語は、1つ又は複数を指す。特許請求の範囲のいかなる要素も、要素が「するための手段(means for)」という語句を使用して明示的に列挙されない限り、米国特許法第112条(f)の規定に基づいて解釈されるべきではなく、又は方法請求項の場合には、要素は「ためのステップ(step for)」という語句を使用して列挙される。当業者に知られている又は後に知られることになる、本開示全体を通して説明した様々な態様の要素に対する全ての構造的及び機能的均等物は、本明細書に参照により明示的に組み込まれ、特許請求の範囲に包含されることが意図される。その上、本明細書に開示したものは、そのような開示が特許請求の範囲に明示的に列挙されているか否かにかかわらず公衆に献呈されることが意図されるものではない。
態様(1)によれば、1つ又は複数の機械学習モデルを使用してデータアクセスを自動的に制御する方法であって、
第1のユーザから、第2のユーザに関係するデータの第1の要求を受信することと、
1つ又は複数のトレーニングされた機械学習モデルの第1のセットを使用して前記第1の要求を処理することによって、前記第1の要求が1つ又は複数のデータアクセスルールを満たしているかどうかを自動的に決定することと、
前記第1の要求が前記1つ又は複数のデータアクセスルールを満たしていると決定すると、前記第1の要求に基づいて第1の複数のデータ要素を自動的に取得することと、
1つ又は複数のトレーニングされた機械学習モデルの第2のセットを個別に使用して前記第1の複数のデータ要素のそれぞれを処理することによって、前記第1の複数のデータ要素のそれぞれが前記1つ又は複数のデータアクセスルールを満たしているかどうかを自動的に決定することと、
前記第1の複数のデータ要素からのデータ要素の第1のセットの各データ要素が前記1つ又は複数のデータアクセスルールを個別に満たしていると決定すると、1つ又は複数のトレーニングされた機械学習モデルの第3のセットを使用してデータ要素の前記第1のセットを処理することによって、データ要素の前記第1のセットが集合的に前記1つ又は複数のデータアクセスルールを満たしているかどうかを決定することと、
データ要素の前記第1のセットが前記1つ又は複数のデータアクセスルールを満たしていると決定すると、データ要素の前記第1のセットを含むカスタムレポートを生成することと、
を含む、方法である。
態様(2)によれば、第2の要求を受信することと、
1つ又は複数のトレーニングされた機械学習モデルの前記第1のセットを使用して前記第2の要求を処理することによって、前記第2の要求が前記1つ又は複数のデータアクセスルールを満たしているかどうかを決定することと、
前記第2の要求が前記1つ又は複数のデータアクセスルールを満たしていないと決定すると、前記第2の要求のデータを取得することを控えることと、
を更に含む。
態様(3)によれば、前記第1の複数のデータ要素からのデータ要素の第2のセットが前記1つ又は複数のデータアクセスルールを満たしていないと決定すると、データ要素の前記第2のセットを提供することを控えること、
を更に含む。
態様(4)によれば、第2の要求を受信することと、
前記第2の要求に基づいて第2の複数のデータ要素を自動的に取得することと、
1つ又は複数のトレーニングされた機械学習モデルの前記第2のセットを使用して前記第2の複数のデータ要素のそれぞれを処理することによって、前記第2の複数のデータ要素からのデータ要素の第2のセットが前記1つ又は複数のデータアクセスルールを満たしていることを自動的に決定することと、
1つ又は複数のトレーニングされた機械学習モデルの前記第3のセットを使用してデータ要素の前記第2のセットを処理することによって、データ要素の前記第2のセットが前記1つ又は複数のデータアクセスルールを集合的に満たしているかどうかを決定することと、
データ要素の前記第2のセットが前記1つ又は複数のデータアクセスルールを集合的に満たしていないと決定すると、データ要素の前記第2のセットからの少なくとも1つのデータ要素を提供することを控えることと、
を更に含む。
態様(5)によれば、前記第2のユーザに、データ要素の前記第1のセットが前記第1のユーザによってアクセスされたという通知を送信すること、
を更に含む。
態様(6)によれば、第2の要求を受信することと、
前記第2の要求が前記1つ又は複数のデータアクセスルールを満たしていないと決定することと、
前記第2の要求が否認された理由を指定するカスタムレポートを生成することと、
を更に含む。
態様(7)によれば、1つ又は複数の機械学習モデルをトレーニングしてデータアクセス可能性を制御する方法であって、
履歴アクセスレコードのセットから第1のトレーニングデータセットを生成することであって、前記第1のトレーニングデータセット内のそれぞれのアクセスレコードは、データのそれぞれの要求に対応し、前記それぞれの要求が1つ又は複数のデータアクセスルールを満たしているかどうか、を識別する情報を含む、生成することと、
データレコードのセットから第2のトレーニングデータセットを生成することであって、前記第2のトレーニングデータセットのそれぞれのデータレコードは、それぞれのデータ要素に対応し、前記それぞれのデータ要素が前記1つ又は複数のデータアクセスルールを満たしているかどうか、を識別する情報を含む、生成することと、
履歴アクセスレコードの前記セットから第3のトレーニングデータセットを生成することであって、前記第3のトレーニングデータセットのそれぞれのアクセスレコードは、集約されたデータ要素のそれぞれのセットに対応し、集約されたデータ要素の前記それぞれのセットが前記1つ又は複数のデータアクセスルールを満たしているかどうか、を識別する情報を含む、生成することと、
前記第1のトレーニングデータセット、前記第2のトレーニングデータセット、及び前記第3のトレーニングデータセットに基づいて前記1つ又は複数の機械学習モデルをトレーニングして、データの要求を許可する必要があるかどうかを識別する出力を生成することと、
前記1つ又は複数の機械学習モデルを1つ又は複数のコンピューティングシステムに展開することと、
を含む方法である。
態様(8)によれば、前記第1のトレーニングデータセット、前記第2のトレーニングデータセット、及び前記第3のトレーニングデータセットに基づいて前記1つ又は複数の機械学習モデルをトレーニングすることが、
前記第1のトレーニングデータセットに基づいて、前記1つ又は複数の機械学習モデルの第1のセットをトレーニングすることと、
前記第2のトレーニングデータセットに基づいて、前記1つ又は複数の機械学習モデルの第2のセットをトレーニングすることと、
前記第3のトレーニングデータセットに基づいて、前記1つ又は複数の機械学習モデルの第3のセットをトレーニングすることと、
を含む。
態様(9)によれば、前記1つ又は複数のデータアクセスルールが、
(i)第1のルールと、
(ii)第2のルールと、
(iii)第3のルールと、
を含む。
態様(10)によれば、前記1つ又は複数の機械学習モデルの前記第1のセットをトレーニングすることは、
前記第1のトレーニングデータセットと前記第1のルールとに基づいて第1の機械学習モデルをトレーニングすることと、
前記第1のトレーニングデータセットと前記第2のルールとに基づいて第2の機械学習モデルをトレーニングすることと、
前記第1のトレーニングデータセットと前記第3のルールとに基づいて第3の機械学習モデルをトレーニングすることと、
を含み、
前記1つ又は複数の機械学習モデルの前記第2のセットをトレーニングすることは、
記第2のトレーニングデータセットと前記第1のルールとに基づいて第4の機械学習モデルをトレーニングすることと、
前記第2のトレーニングデータセットと前記第2のルールとに基づいて第5の機械学習モデルをトレーニングすることと、
前記第2のトレーニングデータセットと前記第3のルールとに基づいて第6の機械学習モデルをトレーニングすることと、
を含み、
前記1つ又は複数の機械学習モデルの前記第3のセットをトレーニングすることは、
前記第3のトレーニングデータセットと前記第1のルールとに基づいて第7の機械学習モデルをトレーニングすることと、
前記第3のトレーニングデータセットと前記第2のルールとに基づいて第8の機械学習モデルをトレーニングすることと、
前記第3のトレーニングデータセットと前記第3のルールとに基づいて第9の機械学習モデルをトレーニングすることと、
を含む。
態様(11)によれば、前記第1のルールが、データにアクセスできるのはそうすることで人類を向上させるであろう場合のみであることを指定し、
前記第2のルールが、データにアクセスできるのは前記データの意図された使用が正当である場合のみであることを指定し、
前記第3のルールが、データにアクセスできるのはデータが保護されたままの場合のみであることを指定している。
態様(12)によれば、前記第1のトレーニングデータセット内のそれぞれのアクセスレコードは、
前記それぞれの要求の目的と、
前記それぞれの要求に関連する1つ又は複数のデータ要素と、
を識別する情報を更に含む。
態様(13)によれば、前記第2のトレーニングデータセット内のそれぞれのデータレコードは、
前記それぞれのデータ要素の1つ又は複数の特性
を識別する情報を更に含む。
態様(14)によれば、前記第2のトレーニングデータセット内のそれぞれのデータレコードは、
集約されたデータ要素の前記それぞれのセット内の各データ要素のソースのデータプロファイル
を識別する情報を更に含む。
態様(15)によれば、前記第3のトレーニングデータセット内のそれぞれのデータレコードは、
前記それぞれのデータ要素のソースのデータプロファイル
を識別する情報を更に含む。