IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インターナショナル・ビジネス・マシーンズ・コーポレーションの特許一覧

特表2023-553676分散台帳を使用する説明可能な機械学習モデル結果の提供
<>
  • 特表-分散台帳を使用する説明可能な機械学習モデル結果の提供 図1
  • 特表-分散台帳を使用する説明可能な機械学習モデル結果の提供 図2
  • 特表-分散台帳を使用する説明可能な機械学習モデル結果の提供 図3
  • 特表-分散台帳を使用する説明可能な機械学習モデル結果の提供 図4
  • 特表-分散台帳を使用する説明可能な機械学習モデル結果の提供 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-25
(54)【発明の名称】分散台帳を使用する説明可能な機械学習モデル結果の提供
(51)【国際特許分類】
   G06N 5/045 20230101AFI20231218BHJP
   G06N 20/00 20190101ALI20231218BHJP
【FI】
G06N5/045
G06N20/00
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023536415
(86)(22)【出願日】2021-11-16
(85)【翻訳文提出日】2023-06-15
(86)【国際出願番号】 CN2021130936
(87)【国際公開番号】W WO2022127474
(87)【国際公開日】2022-06-23
(31)【優先権主張番号】17/126,091
(32)【優先日】2020-12-18
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【弁理士】
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【弁理士】
【氏名又は名称】片岡 忠彦
(72)【発明者】
【氏名】シュクツェパニク、グルズゴーツ、ピオトル
(72)【発明者】
【氏名】パルス、ルーカス、ヤコブ
(72)【発明者】
【氏名】パテル、クーシャル エス
(72)【発明者】
【氏名】パテル、サーベシュ エス
(57)【要約】
機械学習(ML)モデルのための入力データを受信することと、MLモデルを使用して入力データを処理し、初期結果を生じることと、第1のブロックを分散台帳に追加することであって、ブロックが、入力データ、初期結果、MLモデル・データ構造、およびMLモデルのための訓練データへのリンクを含み、訓練データが先行分散台帳ブロックに存在する、追加することと、初期結果を含む出力を提供することとによって、再現可能な機械学習モデル結果を提供すること。
【特許請求の範囲】
【請求項1】
再現可能な機械学習(ML)モデル結果を提供するためのコンピュータ実装方法であって、前記方法が、
1つまたは複数のコンピュータ・プロセッサによって、MLモデルのための入力データを受信することと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記MLモデルを使用して前記入力データを処理し、初期結果を生じることと、
前記1つまたは複数のコンピュータ・プロセッサによって、第1のブロックを分散台帳に追加することであって、前記第1のブロックが、前記入力データ、前記初期結果、MLモデル・データ構造、および前記MLモデルのための訓練データへのリンクを含み、前記訓練データが先行分散台帳ブロックに存在する、前記追加することと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記初期結果を含む出力を提供することと
を含む、コンピュータ実装方法。
【請求項2】
前記1つまたは複数のコンピュータ・プロセッサによって、前記入力データに関する結果検証要求を受信することと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記入力データ、前記初期結果、および前記MLモデル・データ構造を前記第1のブロックから検索することと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記MLモデル・データ構造を使用して前記入力データを処理し、検証結果を生じることと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記初期結果および前記検証結果を出力として提供することと
をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記1つまたは複数のコンピュータ・プロセッサによって、MLモデル説明を出力として提供すること
をさらに含む、請求項2に記載のコンピュータ実装方法。
【請求項4】
前記1つまたは複数のコンピュータ・プロセッサによって、MLモデル説明を出力として提供すること
をさらに含み、前記第1のブロックが、前記MLモデル説明をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項5】
前記第1のブロックが、MLモデル・バージョン・ラベルをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項6】
前記1つまたは複数のコンピュータ・プロセッサによって、前記入力データおよび結果を使用して前記MLモデルを更新し、新規MLモデル・バージョンを生じることと、
前記1つまたは複数のコンピュータ・プロセッサによって、第2のブロックを前記分散台帳に追加することであって、前記第2のブロックが、前記新規MLモデル・バージョンに関連付けられたラベル、前記入力データ、前記初期結果、新規MLモデル・データ構造、および先行バージョンMLモデルのための訓練データへのリンクを含む、前記追加することと
をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項7】
前記1つまたは複数のコンピュータ・プロセッサによって、前記第1のブロックと前記入力データに関連付けられたユーザとを分散台帳エントリを通じてリンクすることであって、前記分散台帳エントリによって前記ユーザが前記初期結果の検証を要求することができる、前記リンクすることをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項8】
再現可能な機械学習(ML)モデル結果を提供するためのコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品は、1つまたは複数のコンピュータ可読記憶装置と、前記1つまたは複数のコンピュータ可読記憶装置にまとめて記憶されたプログラム命令とを含み、前記記憶されたプログラム命令が、
MLモデルのための入力データを受信するためのプログラム命令と、
前記MLモデルを使用して前記入力データを処理し、初期結果を生じるためのプログラム命令と、
第1のブロックを分散台帳に追加するためのプログラム命令であって、前記第1のブロックが、前記入力データ、前記初期結果、MLモデル・データ構造、および前記MLモデルのための訓練データへのリンクを含み、前記訓練データが先行分散台帳ブロックに存在する、前記追加するためのプログラム命令と、
前記初期結果を含む出力を提供するためのプログラム命令と
を含む、コンピュータ・プログラム製品。
【請求項9】
前記記憶されたプログラム命令が、
前記入力データに関する結果検証要求を受信するためのプログラム命令と、
前記入力データ、前記初期結果、および前記MLモデル・データ構造を前記第1のブロックから検索するためのプログラム命令と、
前記MLモデルを使用して前記入力データを処理し、検証結果を生じるためのプログラム命令と、
前記初期結果および前記検証結果を出力として提供するためのプログラム命令と
をさらに含む、請求項8に記載のコンピュータ・プログラム製品。
【請求項10】
前記記憶されたプログラム命令が、
MLモデル説明を出力として提供するためのプログラム命令
をさらに含む、請求項9に記載のコンピュータ・プログラム製品。
【請求項11】
前記記憶されたプログラム命令が、
MLモデル説明を出力として提供するためのプログラム命令
をさらに含み、前記第1のブロックが、前記MLモデル説明をさらに含む、請求項8に記載のコンピュータ・プログラム製品。
【請求項12】
前記第1のブロックが、MLモデル・バージョン・ラベルをさらに含む、請求項8に記載のコンピュータ・プログラム製品。
【請求項13】
前記記憶されたプログラム命令が、
前記入力データおよび結果を使用して前記MLモデルを更新し、新規MLモデル・バージョンを生じるためのプログラム命令と
第2のブロックを前記分散台帳に追加するためのプログラム命令であって、前記第2のブロックが、前記新規MLモデル・バージョン、前記入力データ、前記初期結果、新規MLモデル・データ構造、および先行バージョンMLモデルのための訓練データへのリンクを含む、前記追加するためのプログラム命令と
をさらに含む、請求項8に記載のコンピュータ・プログラム製品。
【請求項14】
前記記憶されたプログラム命令が、前記第1のブロックと前記入力データに関連付けられたユーザとを分散台帳エントリを通じてリンクするためのプログラム命令であって、前記分散台帳エントリによって前記ユーザが前記初期結果の検証を要求することができる、前記リンクするためのプログラム命令をさらに含む、請求項8に記載のコンピュータ・プログラム製品。
【請求項15】
再現可能な機械学習(ML)モデル結果を提供するためのコンピュータ・システムであって、前記コンピュータ・システムが、
1つまたは複数のコンピュータ・プロセッサと、
1つまたは複数のコンピュータ可読記憶装置と、
前記1つまたは複数のコンピュータ・プロセッサによる実行のために、前記1つまたは複数のコンピュータ可読記憶装置に記憶されたプログラム命令であり、前記記憶されたプログラム命令が、
MLモデルのための入力データを受信するためのプログラム命令と、
前記MLモデルを使用して前記入力データを処理し、初期結果を生じるためのプログラム命令と、
第1のブロックを分散台帳に追加するためのプログラム命令であって、前記第1のブロックが、前記入力データ、前記初期結果、MLモデル・データ構造、および前記MLモデルのための訓練データへのリンクを含み、前記訓練データが先行分散台帳ブロックに存在する、前記追加するためのプログラム命令と、
前記初期結果を含む出力を提供するためのプログラム命令と
を含む、前記記憶されたプログラム命令と
を含む、コンピュータ・システム。
【請求項16】
前記記憶されたプログラム命令が、
前記入力データに関する結果検証要求を受信するためのプログラム命令と、
前記入力データ、前記初期結果、および前記MLモデル・データ構造を前記第1のブロックから検索するためのプログラム命令と、
前記MLモデルを使用して前記入力データを処理し、検証結果を生じるためのプログラム命令と、
前記初期結果および前記検証結果を出力として提供するためのプログラム命令と
をさらに含む、請求項15に記載のコンピュータ・システム。
【請求項17】
前記記憶されたプログラム命令が、
MLモデル説明を出力として提供するためのプログラム命令
をさらに含む、請求項16に記載のコンピュータ・システム。
【請求項18】
前記記憶されたプログラム命令が、
MLモデル説明を出力として提供するためのプログラム命令
をさらに含み、前記第1のブロックが、前記MLモデル説明をさらに含む、請求項15に記載のコンピュータ・システム。
【請求項19】
前記記憶されたプログラム命令が、
前記入力データおよび結果を使用して前記MLモデルを更新し、新規MLモデル・バージョンを生じるためのプログラム命令と
第2のブロックを前記分散台帳に追加するためのプログラム命令であって、前記第2のブロックが、前記新規MLモデル・バージョン、前記入力データ、前記初期結果、新規MLモデル・データ構造、および先行バージョンMLモデルのための訓練データへのリンクを含む、前記追加するためのプログラム命令と
をさらに含む、請求項15に記載のコンピュータ・システム。
【請求項20】
前記記憶されたプログラム命令が、前記第1のブロックと前記入力データに関連付けられたユーザとを分散台帳エントリを通じてリンクするためのプログラム命令であって、前記分散台帳エントリによって前記ユーザが前記初期結果の検証を要求することができる、前記リンクするためのプログラム命令をさらに含む、請求項15に記載のコンピュータ・システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般的に説明可能な機械学習モデル結果を提供することに関する。本開示は特に、機械学習モデルの成熟に伴う説明可能な機械学習モデル結果を提供することに関する。
【背景技術】
【0002】
機械は高知能になっている。これらの機械は、スマートなやり方で、無形インターフェース(自然言語で人間とコミュニケーションを取ることができるコグニティブなデバイス)を通じて人間にサービスするだけではなく、有形インターフェース(ロボットまたは他の有形インターフェース)を通じても、人間にサービスする。コグニティブなインターフェースは、機械知能を持っており、入力データを処理する能力を有し、他のデバイスと通信するより好適な処理のためのリソースから追加的な情報を得ることもできる。
【0003】
深層学習および遺伝的アルゴリズムなどの現代の複雑な人工知能(AI)技術は、性質として不透明である。AIシステムは、訓練コーパスに積極的に依存してそこから学習し、より自然なやり方で判断する。この絶え間ない学習は、より関連性のある学習および履歴に基づいて、AIシステムのパフォーマンスを日々改善する。時には、機械学習(ML)モデルの複雑さに起因して、AIシステムは望ましくない分類パスウェイを学習する。これらの望ましくない分類パスウェイは、AI結果の解釈可能性問題を招く。
【0004】
ブラック・ボックスタイプのMLモデルでは、AIが特定の決定に到達した理由を、ステークホルダは説明することができない。したがって、AIシステムによって生成された情報および結果を正当化するデータは、ほとんどない。説明可能なAI(XAI:Explainable AI)とは、モデルの結果を説明することができ、人間のエキスパートによって理解され得るような、人工知能技術(AI)の応用における方法および技術を称する。XAIは、MLモデル結果の説明可能性および解釈可能性を与える。XAIモデルは、多くのメタデータを生成して手作業で検証可能な必要な説明およびエビデンスを提供し、エンド・ユーザにMLモデル結果に望ましい信頼レベルを与える。XAIは、各入力要素がモデル予測の最終結果にどれだけ寄与したかを説明するスコアを与える。これは「Safe AI」の概念をサポートするもので、それにより、人間はAIのMLモデルの内部で何が決定されているかを知ることができる。そのような説明を与えないMLモデルは、事業に致命的な決定には適用できない場合がある。
【0005】
典型的なMLモデルでは、出力または出力のセットを生成する主要なコントリビュータは、モデルを訓練するために使用されるコーパスである。モデルがデータを処理すると、モデルは結果を生成して、結果に関連付けられたメタデータ・マッパ・オブジェクトを訓練コーパスに付加する。これらのメタデータ・マッパ・オブジェクトは、出力の第1のセットの生成中に導出された情報を含む。MLモデルが多くを学習するにつれ、現在および以前のランの副生成物として生成された訓練コーパスへのメタデータのバックフィルにより、MLモデルはさらに成熟する。
【0006】
MLモデルが日々成熟することは、MLモデルの進化するインデックスを使用して導出されたMLモデルによって生成される出力に影響を及ぼす。結果として、MLモデルの成熟に基づいて、同一セットの入力データが、異なる時点では異なる出力を生成する可能性がある。さらには、成熟するモデルにおける変化のため、一定期間の後、MLモデルからの出力を遡って検証または説明する手段がない場合がある。
【0007】
例として、いったんMLモデルが成熟してその状態が変わってしまうと、そのモデルからの以前の結果がどのように差別禁止規定を満たしているかを、検証して説明することができるメカニズムは存在しない。MLモデルの動的な状態は、モデルの訓練コーパスの進化に基づいて変化する。したがって、MLモデル決定が適切なやり方で保存されない場合、時間が経過してしまうと、その決定を監査する術が存在しない。さらには、かなりの時間が経つと、多重検証を行うことができる方法が存在しない。試験検証証拠の一部としてMLモデルの中間的な結果を保存するメカニズムはあるが、共通の訓練コーパスを使用する複数のMLモデルが存在し、この複数のMLモデルがそれぞれ複数の中間結果データを生成する場合には、モデル結果および訓練コーパス・セットのサイズは管理不可能となる。
【発明の概要】
【0008】
本開示の1つまたは複数の実施形態の基本的な理解を与えるための概要を、以下に提示する。この概要は、主要もしくは重要な要素を特定すること、または特定の実施形態のいかなる範囲もしくは特許請求のいかなる範囲をも詳述することを意図されていない。その唯一の目的は、後に提示されるより詳細な説明への導入部として簡素化された形式で概念を提示することである。本明細書において説明される1つまたは複数の実施形態では、デバイス、システム、コンピュータ実装方法、装置、またはコンピュータ・プログラム製品あるいはその組合せによって、説明可能で再現可能な機械学習モデル結果を提供することが可能となる。
【0009】
本発明の態様は、機械学習モデルのための入力データを受信することと、機械学習モデルを使用して入力データを処理し、初期結果を生じることと、第1のブロックを分散台帳に追加することであって、ブロックが、入力データ、初期結果、MLモデル・データ構造、およびMLモデルのための訓練データへのリンクを含み、訓練データが先行分散台帳ブロックに存在する、追加することと、初期結果を含む出力を提供することとによって、再現可能な機械学習モデル結果を提供することに関連付けられた、方法、システム、およびコンピュータ可読媒体を開示する。この方法は、MLモデル変革の分散した不変な追跡を提供し、過去のMLモデル結果の監査および検証を可能にする。
【0010】
本発明の態様は、機械学習モデルのための入力データを受信することと、機械学習モデルを使用して入力データを処理し、初期結果を生じることと、第1のブロックを分散台帳に追加することであって、ブロックが、入力データ、初期結果、MLモデル・データ構造、およびMLモデルのための訓練データへのリンクを含み、訓練データが先行分散台帳ブロックに存在する、追加することと、入力データに関する結果検証要求を受信することと、入力データおよびMLモデル・データ構造を第1のブロックから検索することと、MLモデル・データ構造を使用して入力データを処理し、検証結果を生じることと、初期結果および検証結果を含む出力を提供することとによって、再現可能な機械学習モデル結果を提供することに関連付けられた、方法、システム、およびコンピュータ可読媒体を開示する。この方法は、MLモデル変革の分散した不変な追跡を提供し、過去のMLモデル結果の監査および検証を可能にする。
【0011】
本発明の態様は、機械学習モデルのための入力データを受信することと、機械学習モデルを使用して入力データを処理し、初期結果を生じることと、初期結果に関連付けられたMLモデル説明を判定することと、第1のブロックを分散台帳に追加することであって、ブロックが、入力データ、初期結果、MLモデル説明、MLモデル・データ構造、およびMLモデルのための訓練データへのリンクを含み、訓練データが先行分散台帳ブロックに存在する、追加することと、初期結果およびMLモデル説明を含む出力を提供することとによって、再現可能な機械学習モデル結果を提供することに関連付けられた、方法、システム、およびコンピュータ可読媒体を開示する。この方法は、MLモデル変革の分散した不変な追跡を提供し、過去のMLモデル結果の説明、監査および検証を可能にする。
【0012】
本発明の態様は、機械学習モデルのための入力データを受信することと、機械学習モデルを使用して入力データを処理し、初期結果を生じることと、第1のブロックを分散台帳に追加することであって、ブロックが、入力データ、初期結果、MLモデル・データ構造、およびMLモデルのための訓練データへのリンクを含み、訓練データが先行分散台帳ブロックに存在する、追加することと、初期結果を含む出力を提供することと、入力データおよび結果を使用してMLモデルを更新することと、新規MLモデル・バージョンを生じることと、第2のブロックを分散台帳に追加することであって、第2のブロックが、新規MLモデル・バージョンに関連付けられたラベル、入力データ、初期結果、MLモデル・データ構造、および先行バージョンMLモデルのための訓練データへのリンクを含む、追加することとによって、再現可能な機械学習モデル結果を提供することに関連付けられた、方法、システム、およびコンピュータ可読媒体を開示する。この方法は、MLモデル変革の分散した不変な追跡を提供し、過去のMLモデル結果の監査および検証を可能にする。
【0013】
添付の図面における本開示の一部の実施形態のさらに詳細な説明を通じて、本開示の上記および他の目的、特徴、および利点が、より明らかとなろう。本開示の実施形態では、同一の符号は一般的に同一のコンポーネントを指す。
【図面の簡単な説明】
【0014】
図1】本発明の実施形態による、コンピューティング環境の概略図である。
図2】本発明の実施形態による、動作可能なシーケンスを描いたフローチャートである。
図3】本発明の実施形態による、データ・フローの概略図である。
図4】本発明の実施形態による、クラウド・コンピューティング環境の図である。
図5】本発明の実施形態による、抽象的なモデル・レイヤの図である。
【発明を実施するための形態】
【0015】
本開示の実施形態が図示された添付の図面を参照して、いくつかの実施形態を、より詳細に説明する。しかしながら、本開示は様々な様式で実装することが可能であり、したがって本明細書において開示される実施形態に限定されるものと解釈されてはならない。
【0016】
開示される実施形態は、機械学習モデル結果の説明可能性および再現性の問題に対処する。実施形態は、モデルの以前の実装中に作られた結果の再生成を可能にし、時間ベースのMLモデル出力を検証するメカニズムを提供する。開示される実施形態は、中間コンポーネントの1つとしてブロックチェーン台帳を含む。MLモデルに関連付けられた静的および動的なコンピューティング・プラットフォームなどの様々なエンティティから入力データを受信した後、開示される実施形態は、ブロックチェーン台帳上にブロックを作成し、台帳内の既存のブロックとの適当なリンクを生成する。開示される実施形態は、ブロックチェーン台帳に支援されるプロデューサ-消費者アーキテクチャを含み、この場合、MLモデル計算に関与するエンティティがブロックチェーン・ステークホルダである。
【0017】
問題および入力情報の所与のセットについて、MLモデル出力を計算する時点では、実装におけるプロデューサ・エンジンは分散台帳上にブロックを作成し、MLモデルをPRODUCTION信号で更新する。これに応答して、MLモデル中の実装された消費者デーモン・メカニズムは、関連付けられた訓練コーパス・データ、または以前のMLモデル・バージョンおよびノード重み付けを台帳から収集し、訓練されたMLモデルが入力データに適用される。消費者は、計算に関与する個々のステークホルダを明確に理解している。台帳およびMLモデルに関連付けられた消費者デーモンは、中間結果を台帳に書き込む。多くのMLモデルは、複数の中間データ構造が生成され台帳にポストされるパス指向アーキテクチャを実装する。
【0018】
実施形態では、MLモデルは、中間結果のために台帳アーキテクチャ上にブロックを作成し、すべての関与者-ステークホルダをタグ付けし、現在のMLバージョンに関連付けられたデータおよび現在の入力に関連付けられた出力を保存する。入力されたステークホルダ・データは、消費者処理のために台帳に直接書き込まれるが、訓練コーパス・データは、MLモデルの以前のランの間に作成された既存のブロックから収集される。訓練コーパスからフェッチする間、MLモデルはフラグまたはデータ場所リンク(タグ付けデータ)を、実際の訓練コーパス・データセットとともに収集する。開示される実施形態は、新規MLモデル・バージョンのデータ構造を作成し、MLモデル履歴が更新されつつオブジェクト内の古いリンクは保持される。この古い訓練コーパスのタグ付けへのリンクの保持は、タグ付けコーパスへの逆方向トレーサビリティを与え、必要であれば、または要求された場合に、MLモデルの再作成を可能にする。
【0019】
成熟インデックスが変わった後にMLモデルが検証される必要があれば、開示される実施形態は、MLモデルの消費者インスタンスにおいてコグニティブ・システムの再現性をアクティブにする再現性の特殊なFLAGを利用する。MLモデルにおける消費者デーモンは、台帳上でタグ付けされた訓練コーパス・データを選択し、それにしたがって関連付けられた時間ベースのステークホルダ入力データを探索する。この入力データが収集されてしまうと、開示される実施形態は、データ構造をタグ付けする台帳を探索し、以前のランの実行の時間に基づいてリンクをトレースすることによって、訓練コーパスをフェッチする。消費者/ユーザおよびプロデューサのデーモンとは、開示される方法のユーティリティ・プログラム部分を称する。これらのユーティリティ・プログラム部分は、それぞれ消費者/ユーザおよびプロデューサのために、開示される方法アクティビティを遂行する。そのようなステップは、入力および出力に関連付けられた台帳エントリを生成/署名することと、関連台帳エントリを含むブロックを生成/署名することと、出力検証を要求することと、検証/監査を遂行するために必要なMLモデル・コンポーネントを検索および利用することとを含む。
【0020】
MLモデル結果、台帳における監査証跡、およびMLモデルの説明は、オリジナルの結果を出力するために使用されたのと全く同じ訓練コーパスおよびMLモデル・データ構造を使用して検証することができる。データ・モデルからのレポーティング/出力の各信頼レベルにおいて、開示される方法は、説明可能性モジュールを呼び出す。このモジュールは、ブロックチェーン上でブロックを作成して、関連する説明とともに、モデルの現在の状態を更新する。決定/出力を提供した後、使用されたデータ・ソース、使用されたMLモデルのデータ構造、MLモデル訓練コーパス、および途中の信頼説明などのすべての監査証跡が、その決定に対して作成される。開示される方法は、スマート・コントラクトまたは手作業の制御を使用してモデルをコース訂正し、そのような調整の監査証跡を作成する。
【0021】
実施形態では、システムの1つまたは複数のコンポーネントは、ハードウェアまたはソフトウェアあるいはその両方を利用して、性質として高度に技術的な問題を解決することができる(例えば、訓練された機械学習モデルを使用して入力データを処理すること、ブロックを分散台帳に追加することであって、ブロックが、入力データ、機械学習モデル・データ構造、中間モデル結果、モデル説明、および分散台帳内でのモデル訓練コーパス場所へのタグを含む、追加すること、モデル処理結果を提供すること、など)。これらの解決策は抽象的ではなく、例えば、再現可能で説明可能な機械学習モデル結果を容易にするために必要とされる処理能力に起因して、人間による一連の精神的な行為として実施することはできない。さらには、実施される処理の一部は、説明可能で再現可能な機械学習モデル結果に関する定義されたタスクを遂行するための特殊コンピュータによって実施されてもよい。例えば、特殊コンピュータは、関与するステークホルダなどから分散台帳全体でアクセス可能な、再現可能で説明可能な機械学習モデル結果に関するタスクを遂行するために利用することができる。
【0022】
実施形態では、AIデータ・ガバナンスおよび説明可能性のための方法は、入力データを受信する。入力データは、モデルの現在のノード重み付けおよび入力データの処理に基づいたpass-fail分類など、訓練された機械学習モデルの意図された使用に関する。ユーザは、ユーザ、データ、およびプロデューサをリンクするデジタル署名された台帳エントリとしてデータを入力する。台帳エントリは、ユーザのデジタル署名ならびにユーザおよびプロデューサの公開鍵を含む。実施形態では、プロデューサは、入力データをユーザから受信する。この実施形態では、プロデューサは、台帳エントリを作成して署名する。
【0023】
台帳エントリは、入力データ、ユーザの公開鍵、プロデューサの公開鍵、およびプロデューサのデジタル署名を含む。台帳エントリは、ユーザ、プロデューサ、またはユーザとプロデューサ両方についての識別情報データを含む場合がある。方法は、訓練されたモデルを使用して入力データを処理し、入力データのpassまたはfail分類などの結果を生じる。例として、単純な線形回帰モデルが、与えられるデータセットを入力として受信し、入力記録についての属性を含む出力を生成する。入力データおよびモデルからの出力は、ブロックチェーン・ユーザのコンセンサスによって認証され、後にブロックチェーンの新規ブロックに追加される、サブミットされた台帳エントリとしてともに捕捉される。サブミットされた台帳エントリを台帳およびブロックチェーンへ追加することに先立って、デジタル署名および利用可能な公開鍵を使用して、このエントリをコンセンサスベースで認証することは、台帳の整合性を保つ。
【0024】
入力データについて結果を判定した後、方法は、ブロックチェーンなどの分散台帳のための新規ブロックを作成する。ブロックチェーンは、関与者の身分が互いに分かっているプライベートな分散台帳であってもよいし、関与者の身分が隠された、よりパブリックな分散台帳であってもよい。ブロックチェーンは、オープン・ソースのHYPERLEDGERもしくはETHEREUMブロックチェーンの記述プラットフォーム、または他のブロックチェーン・プラットフォームを使用して作成してもよい。(注:「HYPERLEDGER」および「ETHEREUM」という用語は、世界中の様々な管轄域における商標権を対象とする場合があり、本明細書では単に、商標によって適切に命名された製品またはサービスに対し、そのような商標権が存在する可能性がある範囲で、それらへの言及として使用される。)
【0025】
各関与者は、識別情報(ID)、公開-プライベート鍵対、およびデジタル署名を有する。関与者のデジタル署名は、公開-プライベートの暗号鍵対に基づくことができる。idは、関与者の公開鍵を含む場合がある。idとデジタル署名との組合せを使用して、あらゆるトランザクションを認証することができる。実施形態では、各トランザクションは、トランザクションid、発信者id、ならびに発信者のプライベート鍵およびトランザクションidを使用してエンコードされた発信者のデジタル署名を伝える。次いで、発信者id、または発信者公開鍵を使用して、トランザクションの発信元を認証するデジタル署名からトランザクションidを復号化することができる。
【0026】
公開鍵-プライベート鍵の対を使用することによって、ユーザによって署名された入力データ台帳エントリおよびプロデューサによって署名されたMLモデル結果エントリなど、デジタル署名を使用して作成および署名された台帳へのエントリを、関与者が検証することができる。エントリは、発信者の身元の情報なしに検証することができる。実施形態では、各ブロックのサイズは所定である。所定のサイズ限度に到達すると、先行ブロックのハッシュを組み込む新規ブロックが作成される。この実施形態では、方法は、処理中に、各結果を伴う新規ブロックを作成する。方法は、中間結果ごとにブロックを、同様に処理の最終結果について1つのブロックを作成する。
【0027】
一実施形態では、方法は中間結果ごとに台帳エントリを作成し、最終結果を判定した後、1つの新規ブロックを作成する。作成されたブロックには、ユーザの識別情報、中間または最終あるいはその両方の結果、および結果を達成するために使用された機械学習モデルのバージョンまたはデータ構造(モデルに関するノード重み付けの現在の行列など)が含まれる。ブロックはまた、1つまたは複数のタグを含む。各タグは、機械学習モデルの現在のバージョンに関して、訓練コーパスとして使用されたデータの場所についての情報を与える。タグは、訓練コーパス・データが記憶された分散台帳の先行ブロックを指し示す。ブロックは、入力データを提供するユーザ・エンティティ、およびMLモデルを保有しユーザ・エンティティが関与する決定についての判定結果を利用するプロデューサ・エンティティなど、現在の結果のステークホルダ同士をリンクする1つまたは複数の台帳エントリをさらに含む。台帳エントリは、スマート・コントラクト・エントリを含む。スマート・コントラクトは、ユーザおよびプロデューサのそれぞれが、機械学習モデルの適切なバージョンを使用して、結果を検証および再現することを可能にする。実施形態では、スマート・コントラクトは、台帳の先行ブロックから検索したタグ付けされた訓練コーパス・データを使用して、機械学習モデルの再作成または再訓練を、さらに可能にする。スマート・コントラクトは、先行結果の検証を生成するために満足する必要のある条件を含む場合がある。そのような条件は、検証結果を生成するために、プロデューサおよびユーザのそれぞれからの合意を含む。
【0028】
方法は、ある実施形態では、少なくとも最終結果用に、いくつかの実施形態では、中間MLモデル結果ならびに最終結果ごとに、XAI説明を生成する。方法は、XAI方法論を使用してXAI説明を生成する。XAI説明は、判定結果に対する各入力データの相対的な重み付けについての情報を提供し、それによって入力データの各データが結果に与えた影響を説明する。例えば、nデータ点を含む入力データのセットの場合、XAI説明はnデータ点のそれぞれが結果に対して、ポジティブに、それともネガティブに寄与したかどうか、pass結果の場合、pass結果の判定に追加された各データ点がその判定を損なうものかどうかを示す。XAI説明は、最も高く重み付けされ最も影響を与えるものから、最も低く重み付けされ最も影響を与えないものまでの、nデータ点のセットの相対的な重み付けをさらに含む。この実施形態では、方法は、結果に対して作成されたブロック中にXAI説明データをさらに含む。
【0029】
実施形態では、それぞれ作成されたブロックは、台帳のすべての先行ブロックから導出されたハッシュ値を含む。この実施形態では、方法は、SHA-256などのハッシュ関数を使用して、先行ブロックからハッシュ値を生成する。この実施形態では、ブロックは、プロデューサのプライベート鍵ベースのデジタル署名を使用して署名される。ブロックのコンセンサス検証は、ユーザ、およびプロデューサの公開鍵を使用してデジタル署名を検証する他の関与者を通じて発生する。
【0030】
実施形態では、方法は、ユーザおよびプロデューサに、判定された結果を出力として提供する。方法は、ユーザおよびプロデューサに、結果判定トランザクションを記憶する台帳エントリおよびブロックのインジケーションをさらに提供する場合がある。
【0031】
時間をかけて、また多数の結果の生成を経て、MLモデル・ノード重み付けなどのデータ構造は、進化する。方法は、入力データおよび判定結果のそれぞれの組合せを追加して、そのモデル用の訓練コーパスを拡張する。訓練コーパスが拡張するにつれ、モデル・データ構造が進化し、モデルの新規バージョンが作成される。実施形態では、方法は、モデル・バージョン番号および関連するデータ構造に関する台帳エントリを含む、作成されたブロックとともに各新規バージョンを記憶する。エントリは、新規のデータ構造を導出するために使用される拡張された訓練コーパスへのタグをさらに含む。
【0032】
MLモデル・データ構造の進化または成熟の後、方法は、適当な台帳エントリならびに訓練コーパスおよびMLモデル・データ構造の進化を記憶するブロックを、ブロックチェーンに追加する。この追加に続いて、ユーザ、プロデューサ、または他のステークホルダは、先行結果を再現および検証するよう試みる場合がある。モデル・バージョンおよびデータ構造が進化してしまっているため、先行結果の再現には、現在のバージョンではなく最初に使用されたモデル・バージョンの使用を必要とする。ステークホルダは関連台帳エントリを通じて所望の結果に関連付けられているため、ユーザ、プロデューサ、または他の関連するステークホルダのいずれかは、結果の検証および再現を要求することができる。要求側のステークホルダは、自身のデジタル署名を用いて署名した要求をサブミットする。実施形態では、方法は、要求のデジタル署名を、ステークホルダの公開鍵を使用して検証する。
【0033】
署名を検証した後、方法は、検証要求に関するデータをブロックチェーンのブロックから検索する。方法は、検証要求を完了するために、関連するユーザ入力データ、モデル・バージョンおよびデータ構造、訓練コーパス・リンク、オリジナルの中間および最終結果、ならびに関連付けられるXAI説明を、適当なブロックから検索する。検証要求を完了することには、MLモデル・データ構造を使用して入力データを再処理することを含み、検証の中間および最終結果を生じる。次いで、方法は、オリジナルおよび検証の、中間および最終結果を比較する。実施形態では、方法は、オリジナルおよび検証のXAI説明同士をさらに比較する。方法は、オリジナルの入力データを、オリジナルのMLバージョンおよびデータ構造を使用して処理するため、オリジナルおよび検証の結果およびXAI説明は同一でなければならない。方法は、オリジナルおよび検証の結果を検証要求元に提供する。
【0034】
実施形態では、方法は、検索されたモデル・データ構造にしたがうモデルを使用して検索された入力データを処理し、検索されたMLモデルが同一の結果および同一の説明を判定することを確認する。実施形態では、方法は、タグを使用して訓練コーパス・データをさらに検索する。この実施形態では、方法は、訓練コーパスが、検索されたモデル・バージョンに関連付けられた検索されたMLモデル・データ構造を生じることを検証するために、検索された訓練コーパスを使用してMLモデルを再作成する。方法は、要求された結果検証の出力を、検証の要求元に提供する。実施形態では、方法は、要求および検証についての関連する出力ならびに検証の結果(結果は反復される、または検証の失敗結果は反復されない)をドキュメント化する台帳エントリを作成する。実施形態では、方法は、検証の要求の通知および要求された検証の出力を、結果に関連するすべてのステークホルダに提供する。この実施形態では、すべての方法ステップは、次の新規ブロックに組み込まれる、関連する台帳エントリ内に記憶される。
【0035】
開示される実施形態によって、pass-fail決定を行うための、または他の使用のための、MLモデルの使用に関連する規制要件を満足する手段として、MLモデル結果の監査、検証、および複製が可能となる。開示される実施形態は、MLモデル・データ構造を通じて初期結果を判定する際に使用されるMLモデルのレプリカを提供し、訓練を確かめるためにオリジナルのデータ・コーパスを使用してMLモデル・データ構造を再作成する手段を提供し、MLモデルの透明性に関する規制要件を満足するためにモデル決定のXAI説明を提供する。
【0036】
実施形態では、プロデューサはモデル結果の判定に手作業で介入し、例えばモデル判定をfailからpassに変える場合がある。そのような介入には、プロデューサからの介入用の適当なデジタル署名が必要である。この実施形態では、方法は、プロデューサの公開鍵を使用してデジタル署名を検証し、要求された変更を行い、手作業での介入およびモデルのデータ構造に対するその効果を追跡する。方法は、この効果を、モデルの新規バージョンとして台帳エントリ内に記憶し、手作業の介入および結果の改変をドキュメント化する。方法は、介入に関連付けられた台帳エントリを捕捉する新規ブロックを作成する。方法は、モデルのこのバージョンのための、ならびにすべての後続のバージョンのための訓練コーパスの一部として、タグを手作業の結果に追加する。実施形態では、方法は、介入に関連付けられた台帳エントリにタグを追加する。
【0037】
実施形態では、方法は、手作業の介入結果および関連する入力データを使用してMLモデルを再訓練し、MLモデルの修正されたバージョンおよび関連する修正されたデータ構造を生成する。方法は、新規のMLバージョンをラベル付けし、効果的にラベル付けされた入力データ(入力データおよび手作業の介入結果)を含め、新規バージョン、データ構造、および訓練コーパスを記憶する。方法は、新規バージョン、入力データ、手作業の介入結果ラベル、バージョン・ラベル、手作業の介入のインジケーションなどを含む、新規台帳エントリおよび関連する新規ブロックを生成する。プロデューサは、新規ブロックを署名し、署名に基づくコンセンサス検証のためにそれをサブミットする。
【0038】
実施形態では、方法は、本方法のステークホルダが、入力データを提供し、監査または検証要求をサブミットするための、およびモデルからの出力データを受信するための、1つまたは複数のアプリケーション・プログラム・インターフェース(API)を含む。APIは、台帳ならびにモデルおよび訓練コーパスを使用して構築された状態機械に、ステークホルダをリンクする。APIは、ユーザ入力データおよびプロデューサ直接/手作業の介入データのパスウェイを、状態機械に提供する。APIは、モデル結果を記憶して、先行ブロックにおけるモデル訓練コーパス・データ場所をタグ付けする、新規台帳エントリおよび新規ブロックの生成のための手段を提供する。APIは、ステークホルダをそれらの共通結果にリンクする、台帳エントリ・スマート・コントラクトの生成をさらに可能にする。
【0039】
図1は、開示される発明を実用化することに関連する例示のネットワーク・リソースの概略図である。本発明は、命令ストリームを処理する開示される要素のいずれかのプロセッサで実用化することができる。図面で示されるように、ネットワーク化されたクライアント・デバイス110は、サーバ・サブシステム102に無線接続する。クライアント・デバイス104は、サーバ・サブシステム102に、ネットワーク114を介して無線接続する。クライアント・デバイス104および110は、開示される実施形態に関連するアプリケーション・プログラム・インターフェース(図示せず)を、プログラムを実行するために十分な計算リソース(プロセッサ、メモリ、ネットワーク通信ハードウェア)とともに含む。
【0040】
実施形態では、クライアント・デバイス104および110は、開示されるシステムおよび方法に関連付けられるユーザおよびプロデューサを含む。ユーザおよびプロデューサは、ネットワーク114を介して接続され、入力データを提供し、MLモデルを使用して結果を生成し、ブロックを作成して検証し、それをブロックチェーンに追加する。
【0041】
図1に示されるように、サーバ・サブシステム102は、サーバ・コンピュータ150を含む。図1は、本発明の実施形態による、ネットワーク化されたコンピュータ・システム1000内のサーバ・コンピュータ150のコンポーネントのブロック図である。図1は、単に一実装形態の例示を与えるものであり、様々な実装形態が実装され得る環境に関して、いかなる限定も意味しないことを諒解されたい。描かれる環境には多くの修正が成され得る。
【0042】
サーバ・コンピュータ150は、プロセッサ154、メモリ158、永続的ストレージ170、通信ユニット152、入出力(I/O)インターフェース156、および通信ファブリック140を含む。通信ファブリック140は、キャッシュ162、メモリ158、永続的ストレージ170、通信ユニット152、および入出力(I/O)インターフェース156間の通信を実現する。通信ファブリック140は、プロセッサ(マイクロプロセッサ、通信およびネットワーク・プロセッサなど)、システム・メモリ、周辺デバイス、およびシステム内のあらゆる他のハードウェア・コンポーネント間で、データまたは制御情報あるいはその両方を通過させるように設計されたあらゆるアーキテクチャで実装することが可能である。例えば、通信ファブリック140は、1つまたは複数のバスを用いて実装することが可能である。
【0043】
メモリ158および永続的ストレージ170は、コンピュータ可読記憶媒体である。この実施形態では、メモリ158は、ランダム・アクセス・メモリ(RAM)160を含む。一般には、メモリ158は、あらゆる好適な揮発性または非揮発性のコンピュータ可読記憶媒体を含むことが可能である。キャッシュ162は、メモリ158から最近アクセスされたデータ、およびごく最近アクセスされたデータを保持することによって、プロセッサ154のパフォーマンスを向上させる高速のメモリである。
【0044】
本発明の実施形態を実用化するために使用されるプログラム命令およびデータ、例えばデータ・ガバナンスおよびXAIプログラム175は、キャッシュ162を介するサーバ・コンピュータ150の個々のプロセッサ154のうちの1つまたは複数による実行またはアクセスあるいはその両方のために、永続的ストレージ170に記憶される。この実施形態では、持続的ストレージ170は、磁気ハード・ディスク・ドライブを含む。磁気ハード・ディスク・ドライブの代替として、または加えて、永続的ストレージ170は、ソリッドステート・ハード・ドライブ、半導体ストレージ・デバイス、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM)、フラッシュ・メモリ、またはプログラム命令もしくはデジタル情報を記憶することができる、あらゆる他のコンピュータ可読記憶媒体を含むことが可能である。
【0045】
永続的ストレージ170によって使用される媒体はまた、リムーバブルであってもよい。例えば、リムーバブルなハード・ドライブを、永続的ストレージ170に使用してもよい。他の例としては、光学および磁気ディスク、サム・ドライブ、ならびに、永続的ストレージ170の一部でもある別のコンピュータ可読記憶媒体への移動のためにドライブに挿入されるスマート・カードが挙げられる。
【0046】
通信ユニット152は、これらの例では、クライアント・コンピューティング・デバイス104および110のリソースを含む、他のデータ処理システムまたはデバイスとの通信用に設けられる。これらの例では、通信ユニット152は、1つまたは複数のネットワーク・インターフェース・カードを含む。通信ユニット152は、物理的通信リンク、無線通信リンクのいずれかまたはその両方の使用により、通信を提供してもよい。ソフトウェア配信プログラム、ならびに本発明の実装に使用される他のプログラムおよびデータは、通信ユニット152を通じてサーバ・コンピュータ150の永続的ストレージ170にダウンロードすることができる。
【0047】
I/Oインターフェース156により、サーバ・コンピュータ150に接続され得る他のデバイスとのデータの入力および出力が可能となる。例えば、I/Oインターフェース156は、キーボード、キーパッド、タッチ・スクリーン、マイクロフォン、デジタル・カメラ、または何らかの他の好適な入力デバイスあるいはその組合せなど、外部デバイス190への接続を提供する。外部デバイス190はまた、例えばサム・ドライブ、ポータブルの光学または磁気ディスク、およびメモリ・カードなどの、ポータブルのコンピュータ可読記憶媒体を含むことが可能である。本発明の実施形態を実用化するために使用されるソフトウェアおよびデータ、例えばサーバ・コンピュータ150上のデータ・ガバナンスおよびXAIプログラム175は、そのようなポータブルのコンピュータ可読記憶媒体に記憶することが可能であり、I/Oインターフェース156を介して永続的ストレージ170にロードすることが可能である。I/Oインターフェース156はまた、ディスプレイ180に接続する。
【0048】
ディスプレイ180は、データをユーザに表示するメカニズムを実現し、例えばコンピュータ・モニタであってもよい。ディスプレイ180はまた、タブレット・コンピュータのディスプレイなど、タッチ・スクリーンとして機能することもできる。
【0049】
図2は、本開示の実用化に関連する例示のアクティビティを図示するフローチャート200である。プログラムの開始後、ブロック210においてXAIデータ・ガバナンス・プログラム175は、入力データを受信する。入力データは、ユーザおよびプロデューサなどのステークホルダから、APIを通じてプログラムに渡されてもよい。入力データは、データ・プロバイダによってデジタル署名され、関連するトランザクションまでのすべてのステークホルダについての公開鍵を含む、台帳エントリとして渡されてもよい。
【0050】
ブロック220では、XAIデータ・ガバナンス・プログラム175の方法は、台帳エントリからの入力データを、訓練されたMLモデルを使用して処理する。MLモデルは、データの訓練コーパスを使用したモデルの訓練の間に導出されたデータ構造を含む。MLモデルは、モデル・バージョン・インジケータを含む。入力データを処理することにより、ユーザとプロデューサとの間で基礎となるトランザクションに関連付けられる1つまたは複数のpass-fail結果など、入力データに関連付けられた1つまたは複数の結果を生じる。結果は、最終結果およびMLモデルによる入力データの処理中に生成されたあらゆる中間結果のXAI説明を含む。XAI説明によって、人間は、モデルにより出力として与えられた結果を解釈および説明することができるようになる。実施形態では、XAI結果は、結果を判定する際に使用された入力データの相対的な重み付けを含む。
【0051】
ブロック230では、XAIデータ・ガバナンス・プログラム175の方法は、台帳エントリを分散台帳に加える。台帳エントリは、処理イベントまでのステークホルダの識別情報、ならびにステークホルダが結果にアクセスするために、または結果の監査もしくは他の検証を要求するために必要な条件を説明するスマート・コントラクト条項を含む。追加的な台帳エントリは、入力データを含む元の台帳エントリ、ならびにMLモデル・バージョン・インジケータを含むエントリを含み、MLモデル・データ構造およびタグは、MLモデルの基礎となる訓練コーパスおよび訓練コーパス・データが存在する分散台帳ブロックチェーンのブロックを識別する。方法は、ブロックチェーンのための新規ブロックをさらに生成する。新規ブロックは、新規台帳エントリ、ならびにブロックチェーンの先行ブロックのハッシュを含む。プロデューサは、プロデューサのプライベート鍵を使用して導出したデジタル署名を使用して新規ブロックに署名する。方法は、ステークホルダによるブロックのコンセンサス検証の後、新規ブロックを追加する。ステークホルダは、プロデューサの公開鍵を使用して新規ブロックを検証し、新規ブロックのデジタル署名を検証する。
【0052】
方法は、入力データおよび関連結果をMLモデルの訓練コーパスに追加し、補正された訓練コーパスを使用してMLモデルを再訓練する。方法は、MLモデルの新規バージョンおよびMLモデル・データ構造の新規バージョンを確認し、追加的な訓練コーパス・データを全体の訓練コーパスの一部としてタグ付けする。
【0053】
ブロック240では、XAIデータ・ガバナンス・プログラム175の方法は、直接的なpass-failタイプの結果を含む処理の結果を、これらの結果のXAI説明に加え、提供する。方法は、元の台帳エントリ内で識別されるユーザ、プロデューサ、および他のステークホルダのあらゆる組合せに結果を提供することができる。
【0054】
ブロック250では、XAIデータ・ガバナンス・プログラム175の方法は、先行結果または入力データに関連付けられた検証または監査の要求を受信する。要求は、入力データについて台帳エントリ・スマート・コントラクトで説明される検証を要求する要件を満たす。方法は、検証要求元の署名を検証し、検証または監査要求の完了に進む。
【0055】
ブロック260では、XAIデータ・ガバナンス・プログラム175の方法は、入力データ、オリジナルの結果、XAI説明、MLモデル・バージョンおよび関連付けられたMLデータ構造、ならびにMLモデル・バージョンの訓練データセット場所タグを、関連台帳エントリまたは以前に追加されたブロックのエントリから検索する。ブロック270では、方法は、検索されたデータ構造に基づいてMLバージョンを使用して入力データを処理し、新規の中間および最終結果、ならびにこれら新規の結果についてのXAI説明を判定する。
【0056】
ブロック280では、方法は、オリジナルの結果およびXAI説明、ならびに新規の結果およびXAI説明を含む検証の結果を、検証の要求元に、場合によってはトランザクションまでのすべての他のステークホルダに、提供する。オリジナルおよび新規の結果両方を提供することによって、検証要求元による、結果の2つのセットの比較が可能となる。オリジナルおよび新規の結果についてのXAI説明結果を提供することによって、結果の判定に使用される入力データの重み付けの監査が可能となる。
【0057】
図3は、本発明の実施形態によるデータ・フローの概略図300である。図面で示されるように、入力データは、ユーザ302からプロデューサ306へ、分散台帳状態機械320に向けて、デジタル署名された台帳エントリ325としてフローする。図1のXAIデータ・ガバナンス・プログラム175の方法は、台帳エントリ325をMLモデル330に渡す。MLモデル330は、台帳エントリ325入力データを処理して、入力データについての分類を含む結果(passまたはfailなど)を返し、同様にすべての中間および最終MLモデル結果についてのXAI説明を返す。出力結果、および出力に関連付けられたステークホルダ(ユーザ302、プロデューサ306など)同士のリンクは、結果のXAI説明とともに台帳エントリ327にドキュメント化される。スマート・コントラクト台帳エントリ329は、ステークホルダが結果および説明にアクセスする条件、ならびにステークホルダによる結果の検証または監査を要求するための条件を説明する。MLモデル330は、結果およびXAI説明を出力として、APIを通じて、ユーザ302およびプロデューサ306を含むトランザクション・ステークホルダに提供する。
【0058】
XAIデータ・ガバナンス・プログラム175の方法は、分散台帳ブロックチェーンのための新規ブロック340を作成し、プロデューサのデジタル署名を使用して新規ブロックを署名する。新規ブロックは、元の台帳エントリ、結果台帳エントリ、MLモデル・データ構造およびバージョン・ラベル、ならびにスマート・コントラクト台帳エントリを含む。新規ブロックは、ブロックチェーンに追加され、プロデューサの公開鍵を使用してブロックチェーン・ステークホルダのコンセンサスによって検証される。
【0059】
XAIデータ・ガバナンス・プログラム175の方法は、入力データおよび関連付けられた結果を訓練コーパスに付加し、付加された訓練コーパス・データセットを使用してデータ構造が改版された新規モデル・バージョンを、訓練/生成する。新規バージョン、改版されたMLモデル・データ構造、および追加の訓練セット・タグを示す台帳エントリが生成され、これらの台帳エントリを記憶するさらに別の新規ブロック350が生成される。モデル330は、先行結果の検証の必要に応じて、ブロック340および350において捕捉されたブロック台帳エントリ325、327、329を読み取る。
【0060】
開示される実施形態の実装は、ローカルまたはネットワーク化された計算リソースを利用することができる。実施形態では、ローカル・リソースは、エッジ・クラウドまたはクラウド・リソースに接続し、そのような接続を通じて利用可能な追加的な計算リソースを活用する。
【0061】
本開示はクラウド・コンピューティングについての詳細な説明を含むが、本明細書で述べられる教示の実装形態はクラウド・コンピューティング環境に限定されないことを理解されたい。むしろ本発明の実施形態は、現在既知の、または後に開発されるあらゆる他のタイプのコンピューティング環境と併せて実装することができる。
【0062】
クラウド・コンピューティングは、構成可能なコンピューティング・リソースの共有プール(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想機械、およびサービス)への便利でオン・デマンドのネットワーク・アクセスを可能とするためのサービス提供のモデルであり、最小限の管理努力で、またはサービスのプロバイダとの対話で迅速にプロビジョニングおよびリリースすることができる。このクラウド・モデルは、少なくとも5つの特徴、少なくとも3つのサービス・モデル、および少なくとも4つの展開モデルを含むことができる。
【0063】
特徴は以下のとおりである:
【0064】
オン・デマンドのセルフサービス:クラウド消費者は、サービスのプロバイダとの人間対話を要求することなく必要に応じて自動的に、サーバ時間およびネットワーク・ストレージなどのコンピューティング機能を一方的にプロビジョニングすることができる。
【0065】
幅広いネットワーク・アクセス:機能はネットワーク上で利用可能であり、異質なシン・クライアントまたはシック・クライアントのプラットフォーム(例えば、携帯電話、ラップトップ、およびPDA)による使用を促進する標準的なメカニズムを通じてアクセスされる。
【0066】
リソースのプール:プロバイダのコンピューティング・リソースは、マルチテナントのモデルを使用して複数の消費者にサービス提供するためにプールされ、異なる物理的および仮想的なリソースが需要に応じて動的に割り当ておよび再割り当てされる。消費者が提供されるリソースの正確な場所についての制御または情報を一般的に持たない点で、場所の独立性の意味があるが、より高い抽象レベルにおいて場所(例えば、国、州、またはデータセンタ)を特定できることもある。
【0067】
迅速な拡張性:機能は迅速かつ拡張可能にプロビジョニングすることができ、いくつかの場合において、自動的に、素早くスケール・アウトされ、迅速にリリースされて素早くスケール・インされる。消費者にとって、プロビジョニングのために利用可能な機能は、しばしば無制限に見え、いつでもいくらでも購入することができる。
【0068】
サービスの計測:クラウド・システムは、サービスのタイプ(例えば、ストレージ、処理、帯域幅、およびアクティブなユーザ・アカウント)に適当な何らかの抽象レベルにおいて計測機能を活用することによりリソースの使用を自動的に制御し、最適化する。リソースの使用は、監視、制御、および報告することができ、利用されるサービスのプロバイダおよび消費者の両方にとって透明性を与えている。
【0069】
サービス・モデルは以下のとおりである:
【0070】
サービスとしてのソフトウェア(Software as a Service(SaaS)):消費者に提供される機能は、クラウド・インフラストラクチャで実行中のプロバイダのアプリケーションを使用することである。アプリケーションは、ウェブ・ブラウザなどのシン・クライアント・インターフェース(例えば、ウェブ・ベースの電子メール)を通じて様々なクライアント・デバイスからアクセス可能である。消費者は、ネットワーク、サーバ、オペレーティング・システム、ストレージ、またはさらには個々のアプリケーション機能を含む基礎となるクラウド・インフラストラクチャを管理または制御することはなく、例外として限定されたユーザ固有アプリケーションの構成設定が可能である。
【0071】
サービスとしてのプラットフォーム(Platform as a Service(PaaS)):消費者に提供される機能は、プロバイダによってサポートされるプログラミング言語およびツールを使用して作成された、消費者作成の、または既成のアプリケーションをクラウド・インフラストラクチャに展開することである。消費者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む基礎となるクラウド・インフラストラクチャの管理または制御をしないが、展開されたアプリケーション、および場合によっては環境構成をホストするアプリケーションについての制御を有する。
【0072】
サービスとしてのインフラストラクチャ(Infrastructure as a Service(IaaS)):消費者に提供される機能は、任意のソフトウェアを消費者が展開および実行することができる処理、ストレージ、ネットワーク、および他の基本的なコンピューティング・リソースをプロビジョニングすることであり、これにはオペレーティング・システムおよびアプリケーションが含まれ得る。消費者は、基礎となるクラウド・インフラストラクチャの管理または制御をしないが、オペレーティング・システム、ストレージ、展開されたアプリケーションの制御、および場合によっては選択ネットワーキング・コンポーネント(例えば、ホスト・ファイヤウォール)の限定された制御を有する。
【0073】
展開モデルは以下のとおりである:
【0074】
プライベート・クラウド:クラウド・インフラストラクチャは、ある組織のためだけに運用される。その組織またはサード・パーティによって管理され得、オンプレミスまたはオフプレミスで存在することができる。
【0075】
コミュニティ・クラウド:クラウド・インフラストラクチャは、いくつかの組織によって共有され、共有される事案(例えば、ミッション、セキュリティ要件、ポリシ、およびコンプライアンス懸案事項)を有する特定のコミュニティをサポートする。その組織またはサード・パーティによって管理され得、オンプレミスまたはオフプレミスで存在することができる。
【0076】
パブリック・クラウド:クラウド・インフラストラクチャは、一般公衆または大規模な業界団体に対して利用可能とされ、クラウド・サービスを販売する組織によって所有される。
【0077】
ハイブリッド・クラウド:クラウド・インフラストラクチャは、一意なエンティティのままである2つ以上のクラウド(プライベート、コミュニティ、またはパブリック)を組み合わせたものであるが、データおよびアプリケーションのポータビリティを可能にする標準化された、または専有的な技術(例えば、クラウド間でロード・バランシングを行うためのクラウド・バースト)によって結合される。
【0078】
クラウド・コンピューティング環境は、ステートレス性、低い結合性、モジュール性、および意味論的な相互運用性に焦点をあてたサービス指向である。クラウド・コンピューティングの中心は、相互接続されたノードのネットワークを含むインフラストラクチャである。
【0079】
次に図4を参照すると、例示的なクラウド・コンピューティング環境50が描かれている。示されるように、クラウド・コンピューティング環境50は、例えば、携帯情報端末(PDA)または携帯電話54A、デスクトップ・コンピュータ54B、ラップトップ・コンピュータ54C、または自動車コンピュータ・システム54Nあるいはその組合せなど、クラウドの消費者によって使用されるローカルのコンピューティング・デバイスと通信することができる1つまたは複数のクラウド・コンピューティング・ノード10を含む。ノード10は互いに通信することができる。これらは、本明細書において上述したようなプライベート、コミュニティ、パブリック、もしくはハイブリッドのクラウド、またはそれらの組合せなど、1つまたは複数のネットワークにおいて、物理的または仮想的にグループ化することができる(図示せず)。これにより、クラウド・コンピューティング環境50は、クラウドの消費者がローカルのコンピューティング・デバイスでリソースを維持する必要のない、インフラストラクチャ、プラットフォーム、またはソフトウェアあるいはその組合せをサービスとして提供することができる。図4に示されるコンピューティング・デバイス54A~Nのタイプは、単に例示的であることを意図されており、コンピューティング・ノード10およびクラウド・コンピューティング環境50は、あらゆるタイプのネットワーク上またはネットワーク・アドレス可能接続で(例えば、ウェブ・ブラウザを使用して)あるいはその両方で、あらゆるタイプのコンピュータ化されたデバイスと通信することができることが理解されよう。
【0080】
次に図5を参照すると、クラウド・コンピューティング環境50(図4)によって提供される機能的な抽象化レイヤのセットが示されている。図5に示されるコンポーネント、レイヤ、および機能は、単に例示的であることを意図されており、本発明の実施形態はそれに限定されないことがまず理解されるべきである。描かれるように、以下のレイヤおよび対応する機能が提供される。
【0081】
ハードウェアおよびソフトウェア・レイヤ60は、ハードウェアおよびソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例として、以下が挙げられる:メインフレーム61、RISC(縮小命令セット・コンピュータ)アーキテクチャ・ベースのサーバ62、サーバ63、ブレード・サーバ64、ストレージ・デバイス65、ならびにネットワークおよびネットワーキング・コンポーネント66。いくつかの実施形態において、ソフトウェア・コンポーネントとしては、ネットワーク・アプリケーション・サーバ・ソフトウェア67、およびデータベース・ソフトウェア68が挙げられる。
【0082】
仮想化レイヤ70は、仮想エンティティの以下の例が提供され得る抽象化レイヤを提供する:仮想サーバ71、仮想ストレージ72、仮想プライベート・ネットワークを含む仮想ネットワーク73、仮想アプリケーションおよびオペレーティング・システム74、ならびに仮想クライアント75。
【0083】
一例において、管理レイヤ80は以下で説明される機能を提供することができる。リソース・プロビジョニング81は、コンピューティング・リソースおよびクラウド・コンピューティング環境内でタスクを実施するために利用される他のリソースの動的な調達を提供する。計測および課金82は、クラウド・コンピューティング環境内でリソースが利用される際のコスト追跡、およびこれらのリソースの消費についての課金または請求書発行を提供する。一例において、これらのリソースはアプリケーション・ソフトウェア・ライセンスを含む場合がある。セキュリティは、クラウド消費者およびタスクについての識別情報の検証、ならびにデータおよび他のリソースについての保護を与える。ユーザ・ポータル83は、クラウド・コンピューティング環境へのアクセスを消費者およびシステム管理者に提供する。サービス水準管理84は、要求されるサービス水準が満たされるように、クラウド・コンピューティング・リソースの割り当ておよび管理を提供する。サービス水準合意(SLA)計画および遂行85は、SLAにしたがって将来的な要求が予期されるクラウド・コンピューティング・リソースについての事前申し合わせ、およびクラウド・コンピューティング・リソースの調達を提供する。
【0084】
ワークロード・レイヤ90は、クラウド・コンピューティング環境が利用され得る機能性の例を提供する。このレイヤからもたらされ得るワークロードおよび機能の例として以下が挙げられる:マッピングおよびナビゲーション91、ソフトウェア開発およびライフサイクル管理92、仮想授業教育配信93、データ分析処理94、トランザクション処理95、およびデータ・ガバナンスおよびXAIプログラム175。
【0085】
本発明は、統合のあらゆる可能な技術的詳細レベルにおける、システム、方法、またはコンピュータ・プログラム製品あるいはその組合せであってもよい。本発明は、命令ストリームを処理するあらゆるシステムにおいて、単一または並列に、有益に実用化することができる。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体を含むことができる。
【0086】
コンピュータ可読記憶媒体は、命令実行デバイスによる使用のための命令を保持および記憶することができる有形のデバイスであり得る。コンピュータ可読記憶媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイスまたは前述のあらゆる好適な組合せであってもよいが、それに限定はしない。コンピュータ可読記憶媒体のより具体的な例の非網羅的な列挙としては、以下が挙げられる:ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュ・メモリ)、静的ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピ・ディスク、命令が記録されたパンチカードまたは溝に刻まれた構造などの機械的にエンコードされたデバイス、および前述のあらゆる好適な組合せ。本明細書において使用される場合、コンピュータ可読記憶媒体またはコンピュータ可読記憶装置は、電波もしくは他の自由に伝搬する電磁波、導波路もしくは他の伝送媒体を介して伝搬する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、または電線を介して伝送される電気的信号など、一過性の信号そのものであると解釈されてはならない。
【0087】
本明細書において説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から、個別のコンピューティング/処理デバイスに、あるいは、例えばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークもしくは無線ネットワークまたはその組合せなどのネットワークを介して、外部のコンピュータまたは外部のストレージ・デバイスに、ダウンロードすることができる。ネットワークは、銅の伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイヤウォール、スイッチ、ゲートウェイ・コンピュータまたはエッジ・サーバあるいはその組合せを含むことができる。それぞれのコンピューティング/処理デバイスのネットワーク・アダプタ・カードまたはネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、個別のコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するためにコンピュータ可読プログラム命令を転送する。
【0088】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用の設定データ、あるいはスモールトーク(R)、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語などの手続き型プログラミング言語もしくは類似するプログラミング言語、を含む1つまたは複数のプログラミング言語のあらゆる組合せで記述された、ソース・コードまたはオブジェクト・コードのいずれかであってもよい。コンピュータ可読プログラム命令は、すべてユーザのコンピュータ上で、一部はユーザのコンピュータ上でスタンドアロンのソフトウェア・パッケージとして、一部はユーザのコンピュータ上で一部はリモートのコンピュータ上で、またはすべてリモートのコンピュータ上もしくはサーバ上で、実行することができる。後者のシナリオでは、リモートのコンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)を含むあらゆるタイプのネットワークを介してユーザのコンピュータに接続することができ、または接続は(例えば、インターネット・サービス・プロバイダを使用するインターネットを介して)外部のコンピュータに対してなされてもよい。一部の実施形態において、例えば、プログラマブル論理回路、フィールドプログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル論理アレイ(PLA)を含む電子回路は、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行して電子回路を個別化することができる。
【0089】
本発明の態様は、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照しながら本明細書において説明される。フローチャート図またはブロック図あるいはその両方のそれぞれのブロック、およびフローチャート図またはブロック図あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装され得ることを理解されよう。
【0090】
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラマブル・データ処理装置のプロセッサを介して実行する命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/作用を実装する手段を作成すべく、汎用コンピュータ、特殊目的コンピュータ、または他のプログラマブル・データ処理装置のプロセッサに提供されて機械を作るものであってよい。これらのコンピュータ可読プログラム命令はまた、命令をまとめて記憶して有するコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作の態様を実装する命令を含む製造物品を備えるべく、コンピュータ可読記憶媒体に記憶され、コンピュータ、プログラマブル・データ処理装置、または他のデバイスあるいはその組合せに特定のやり方で機能するように指示するものであってもよい。
【0091】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブル装置、または他のデバイスで実行する命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/作用を実装するように、コンピュータ実装プロセスを作るべく、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイス上にロードされ、コンピュータ、他のプログラマブル装置、または他のデバイス上で一連の動作ステップを実施させるものであってもよい。
【0092】
図面中のフローチャートおよびブロック図は、本発明の様々な実施形態にしたがって、システム、方法、およびコンピュータ・プログラム製品の可能な実装形態の、アーキテクチャ、機能性、および動作を図示している。この点において、フローチャートまたはブロック図のそれぞれのブロックは、指定される論理機能を実装するための1つまたは複数の実行可能な命令を含む、命令のモジュール、セグメント、または部分を表現することができる。一部の代替的な実装形態では、ブロックにおいて示した機能は図面で示した順とは異なって発生してもよい。例えば、連続して示される2つのブロックは、実際には実質的に同時に実行されてもよく、またはブロックは関与する機能性によっては、時に逆の順で実行されてもよい。ブロック図またはフローチャート図あるいはその両方のそれぞれのブロック、およびブロック図またはフローチャート図あるいはその両方のブロックの組合せは、指定される機能もしくは作用を実施する、または特殊目的ハードウェアとコンピュータ命令との組合せを実行する、特殊目的ハードウェア・ベースのシステムによって実装され得ることにも留意されたい。
【0093】
本明細書における、「ある実施形態」、「実施形態」、「例示の実施形態」などの参照は、説明される実施形態が、特定の特徴、構造、または特性を含むが、必ずしもすべての実施形態が、その特定の特徴、構造、または特性を含まない場合があることを示す。その上、そのような言い回しは、必ずしも同一の実施形態を指すものではない。さらには、特定の特徴、構造、または特性が、ある実施形態に関連して説明される場合、明示的に記述されているかどうかにかかわらず、他の実施形態に関連してそのような特徴、構造、または特性に影響を及ぼすことは当業者の知識の範囲内であることが示唆される。
【0094】
本明細書で使用される用語法は、単に特定の実施形態を説明しており、本発明を限定することを意図されていない。本明細書で使用される場合、コンテキストが明確にそうではないと指示しない限り、単数形「1つの(a)」、「1つの(an)」および「その(the)」は複数形も含むように意図されている。用語「を含む(comprise)」または「を含む(comprising)」あるいはその両方は、本明細書で使用される場合、述べられた特徴、整数、ステップ、動作、要素、またはコンポーネントあるいはその組合せの存在を特定するが、1つまたは複数の他の特徴、整数、ステップ、動作、要素、コンポーネントまたはそのグループあるいはその組合せの、存在または追加を排除しないことが、さらに理解されよう。
【0095】
例示を目的として本発明の様々な実施形態の説明を提示してきたが、網羅的であること、または開示された実施形態に限定することは意図されていない。本発明の範囲から逸脱することなく、多くの修正形態および変形形態が当業者にとって明らかとなろう。本明細書において使用される用語法は、実施形態の原理、実践的な用途もしくは市場で見られる技術より優れた技術的な改善を最良に説明するため、または当業者の他の者が本明細書において開示される実施形態を理解できるように選ばれたものである。
図1
図2
図3
図4
図5
【手続補正書】
【提出日】2023-12-04
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
再現可能な機械学習(ML)モデル結果を提供するためのコンピュータ実装方法であって、前記方法が、
1つまたは複数のコンピュータ・プロセッサによって、MLモデルのための入力データを受信することと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記MLモデルを使用して前記入力データを処理し、初期結果を生じることと、
前記1つまたは複数のコンピュータ・プロセッサによって、第1のブロックを分散台帳に追加することであって、前記第1のブロックが、前記入力データ、前記初期結果、MLモデル・データ構造、および前記MLモデルのための訓練データへのリンクを含み、前記訓練データが先行分散台帳ブロックに存在する、前記追加することと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記初期結果を含む出力を提供することと
を含む、コンピュータ実装方法。
【請求項2】
前記1つまたは複数のコンピュータ・プロセッサによって、前記入力データに関する結果検証要求を受信することと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記入力データ、前記初期結果、および前記MLモデル・データ構造を前記第1のブロックから検索することと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記MLモデル・データ構造を使用して前記入力データを処理し、検証結果を生じることと、
前記1つまたは複数のコンピュータ・プロセッサによって、前記初期結果および前記検証結果を出力として提供することと
をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記1つまたは複数のコンピュータ・プロセッサによって、MLモデル説明を出力として提供すること
をさらに含む、請求項2に記載のコンピュータ実装方法。
【請求項4】
前記1つまたは複数のコンピュータ・プロセッサによって、MLモデル説明を出力として提供すること
をさらに含み、前記第1のブロックが、前記MLモデル説明をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項5】
前記第1のブロックが、MLモデル・バージョン・ラベルをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項6】
前記1つまたは複数のコンピュータ・プロセッサによって、前記入力データおよび結果を使用して前記MLモデルを更新し、新規MLモデル・バージョンを生じることと、
前記1つまたは複数のコンピュータ・プロセッサによって、第2のブロックを前記分散台帳に追加することであって、前記第2のブロックが、前記新規MLモデル・バージョンに関連付けられたラベル、前記入力データ、前記初期結果、新規MLモデル・データ構造、および先行バージョンMLモデルのための訓練データへのリンクを含む、前記追加することと
をさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項7】
前記1つまたは複数のコンピュータ・プロセッサによって、前記第1のブロックと前記入力データに関連付けられたユーザとを分散台帳エントリを通じてリンクすることであって、前記分散台帳エントリによって前記ユーザが前記初期結果の検証を要求することができる、前記リンクすることをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項8】
再現可能な機械学習(ML)モデル結果を提供するためのコンピュータ・プログラムであって、
コンピュータに、
MLモデルのための入力データを受信するためのプログラム命令と、
前記MLモデルを使用して前記入力データを処理し、初期結果を生じるためのプログラム命令と、
第1のブロックを分散台帳に追加するためのプログラム命令であって、前記第1のブロックが、前記入力データ、前記初期結果、MLモデル・データ構造、および前記MLモデルのための訓練データへのリンクを含み、前記訓練データが先行分散台帳ブロックに存在する、前記追加するためのプログラム命令と、
前記初期結果を含む出力を提供するためのプログラム命令と
実行させる、コンピュータ・プログラム。
【請求項9】
前記コンピュータに、
前記入力データに関する結果検証要求を受信するためのプログラム命令と、
前記入力データ、前記初期結果、および前記MLモデル・データ構造を前記第1のブロックから検索するためのプログラム命令と、
前記MLモデルを使用して前記入力データを処理し、検証結果を生じるためのプログラム命令と、
前記初期結果および前記検証結果を出力として提供するためのプログラム命令と
をさらに実行させる、請求項8に記載のコンピュータ・プログラム。
【請求項10】
前記コンピュータに、
MLモデル説明を出力として提供するためのプログラム命令
をさらに実行させる、請求項9に記載のコンピュータ・プログラム。
【請求項11】
前記コンピュータに、
MLモデル説明を出力として提供するためのプログラム命令
をさらに実行させ、前記第1のブロックが、前記MLモデル説明をさらに含む、請求項8に記載のコンピュータ・プログラム。
【請求項12】
前記第1のブロックが、MLモデル・バージョン・ラベルをさらに含む、請求項8に記載のコンピュータ・プログラム。
【請求項13】
前記コンピュータに、
前記入力データおよび結果を使用して前記MLモデルを更新し、新規MLモデル・バージョンを生じるためのプログラム命令と
第2のブロックを前記分散台帳に追加するためのプログラム命令であって、前記第2のブロックが、前記新規MLモデル・バージョン、前記入力データ、前記初期結果、新規MLモデル・データ構造、および先行バージョンMLモデルのための訓練データへのリンクを含む、前記追加するためのプログラム命令と
をさらに実行させる、請求項8に記載のコンピュータ・プログラム。
【請求項14】
前記コンピュータに、前記第1のブロックと前記入力データに関連付けられたユーザとを分散台帳エントリを通じてリンクするためのプログラム命令であって、前記分散台帳エントリによって前記ユーザが前記初期結果の検証を要求することができる、前記リンクするためのプログラム命令をさらに実行させる、請求項8に記載のコンピュータ・プログラム。
【請求項15】
再現可能な機械学習(ML)モデル結果を提供するためのコンピュータ・システムであって、前記コンピュータ・システムが、
1つまたは複数のコンピュータ・プロセッサと、
1つまたは複数のコンピュータ可読記憶装置と、
前記1つまたは複数のコンピュータ・プロセッサによる実行のために、前記1つまたは複数のコンピュータ可読記憶装置に記憶されたプログラム命令であり、前記記憶されたプログラム命令が、
MLモデルのための入力データを受信するためのプログラム命令と、
前記MLモデルを使用して前記入力データを処理し、初期結果を生じるためのプログラム命令と、
第1のブロックを分散台帳に追加するためのプログラム命令であって、前記第1のブロックが、前記入力データ、前記初期結果、MLモデル・データ構造、および前記MLモデルのための訓練データへのリンクを含み、前記訓練データが先行分散台帳ブロックに存在する、前記追加するためのプログラム命令と、
前記初期結果を含む出力を提供するためのプログラム命令と
を含む、前記記憶されたプログラム命令と
を含む、コンピュータ・システム。
【請求項16】
前記記憶されたプログラム命令が、
前記入力データに関する結果検証要求を受信するためのプログラム命令と、
前記入力データ、前記初期結果、および前記MLモデル・データ構造を前記第1のブロックから検索するためのプログラム命令と、
前記MLモデルを使用して前記入力データを処理し、検証結果を生じるためのプログラム命令と、
前記初期結果および前記検証結果を出力として提供するためのプログラム命令と
をさらに含む、請求項15に記載のコンピュータ・システム。
【請求項17】
前記記憶されたプログラム命令が、
MLモデル説明を出力として提供するためのプログラム命令
をさらに含む、請求項16に記載のコンピュータ・システム。
【請求項18】
前記記憶されたプログラム命令が、
MLモデル説明を出力として提供するためのプログラム命令
をさらに含み、前記第1のブロックが、前記MLモデル説明をさらに含む、請求項15に記載のコンピュータ・システム。
【請求項19】
前記記憶されたプログラム命令が、
前記入力データおよび結果を使用して前記MLモデルを更新し、新規MLモデル・バージョンを生じるためのプログラム命令と
第2のブロックを前記分散台帳に追加するためのプログラム命令であって、前記第2のブロックが、前記新規MLモデル・バージョン、前記入力データ、前記初期結果、新規MLモデル・データ構造、および先行バージョンMLモデルのための訓練データへのリンクを含む、前記追加するためのプログラム命令と
をさらに含む、請求項15に記載のコンピュータ・システム。
【請求項20】
前記記憶されたプログラム命令が、前記第1のブロックと前記入力データに関連付けられたユーザとを分散台帳エントリを通じてリンクするためのプログラム命令であって、前記分散台帳エントリによって前記ユーザが前記初期結果の検証を要求することができる、前記リンクするためのプログラム命令をさらに含む、請求項15に記載のコンピュータ・システム。

【国際調査報告】