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

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

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

特開2024-18985システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択)
<>
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図1
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図2
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図3
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図4
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図5
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図6
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図7
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図8
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図9
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図10
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図11
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図12
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図13
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図14
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図15
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図16
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図17
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図18
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図19
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図20
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図21
  • 特開-システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択) 図22
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024018985
(43)【公開日】2024-02-08
(54)【発明の名称】システム、コンピュータ実装方法、コンピュータプログラム(結合マップ比較を介した量子システム選択)
(51)【国際特許分類】
   G06N 10/00 20220101AFI20240201BHJP
   G06N 20/00 20190101ALI20240201BHJP
【FI】
G06N10/00
G06N20/00
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2023103328
(22)【出願日】2023-06-23
(31)【優先権主張番号】17/815,450
(32)【優先日】2022-07-27
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【弁理士】
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【弁理士】
【氏名又は名称】片岡 忠彦
(74)【復代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ジョン エス. ワーナー
(72)【発明者】
【氏名】ウラジミール ラストゥンコフ
(72)【発明者】
【氏名】フレデリック フランク フレザー
(57)【要約】
【課題】結合マップ比較を介した量子システム選択を促進するシステム/技法が提供される。
【解決手段】様々な実施形態において、システムは、量子機械学習(QML)モデルにアクセスし得る。様々な態様において、システムは、一組の量子コンピューティングシステムから、量子コンピューティングシステムの第1結合マップ及びQMLモデルがその上で訓練された第2結合マップの間の比較に基づいて、QMLモデルのための量子コンピューティングシステムを特定し得る。第2結合マップが第1結合マップとトポロジ的に一致する又は第1結合マップのサブグラフとトポロジ的に一致する場合、システムは、QMLモデルを量子コンピューティングシステム上で実行し得る。そうでなければ、システムは、QMLモデルを調整し得、したがって、調整されたQMLモデルを量子コンピューティングシステム上で実行し得る。
【選択図】図1
【特許請求の範囲】
【請求項1】
少なくとも1つの非一時的コンピュータ可読メモリに格納されたコンピュータ実行可能コンポーネントを実行する少なくとも1つのプロセッサを備えるシステムであって、前記コンピュータ実行可能コンポーネントは、
量子機械学習モデルにアクセスするように構成されているアクセスコンポーネント;
一組の量子コンピューティングシステムから、前記量子機械学習モデルのための量子コンピューティングシステムを、前記量子コンピューティングシステムの第1結合マップ及び前記量子機械学習モデルがその上で訓練された第2結合マップの間の比較に基づいて、特定するように構成されている選択コンポーネント;及び
前記量子機械学習モデル又は前記量子機械学習モデルの調整されたバージョンを前記量子コンピューティングシステム上で実行するように構成されている実行コンポーネント
を有する、システム。
【請求項2】
前記第1結合マップは、そのノードがそれぞれ前記量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ前記量子コンピューティングシステムの量子ビット間接続を表すグラフであり、前記第2結合マップは、そのノードがそれぞれ前記量子機械学習モデルがその上で訓練された別の量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ前記量子機械学習モデルがその上で訓練された前記別の量子コンピューティングシステムの量子ビット間接続を表すグラフであり、前記コンピュータ実行可能コンポーネントは更に、
サブグラフマッチングメトリックを計算することによって前記第1結合マップを前記第2結合マップと比較するように構成されているマップコンポーネント
を有する、請求項1に記載のシステム。
【請求項3】
前記サブグラフマッチングメトリックは、前記第1結合マップ及び前記第2結合マップの間のグロモフ・ハウスドルフ距離又はマンハッタン距離である、請求項2に記載のシステム。
【請求項4】
前記第2結合マップは、前記第1結合マップとトポロジ的に一致し又は前記第1結合マップのサブグラフとトポロジ的に一致し、前記実行コンポーネントは、前記量子機械学習モデルを前記量子コンピューティングシステム上で実行するように構成されている、請求項2に記載のシステム。
【請求項5】
前記第2結合マップは、前記第1結合マップとトポロジ的に一致せず且つ前記第1結合マップのいずれのサブグラフともトポロジ的に一致せず、前記アクセスコンポーネントは更に、前記量子機械学習モデルと関連付けられている一組の変数重要度スコアにアクセスするように構成されており、前記コンピュータ実行可能コンポーネントは更に、
前記一組の変数重要度スコアに基づいて、前記量子機械学習モデルを調整し、それによって、前記量子機械学習モデルの前記調整されたバージョンをもたらすように構成されている調整コンポーネント、ここで、前記実行コンポーネントは、前記量子機械学習モデルの前記調整されたバージョンを前記量子コンピューティングシステム上で実行するように構成されている
を有する、請求項2に記載のシステム。
【請求項6】
前記調整コンポーネントは、1又は複数のテストランによって、前記量子機械学習モデルの前記調整されたバージョンの正確性レベルを決定するように構成されている、請求項5に記載のシステム。
【請求項7】
前記調整コンポーネントは、変数重要度スコアが増大する順序で、前記量子機械学習モデルから少なくとも1つの論理量子ビット又は少なくとも1つの量子ゲートを反復的に除去することによって、前記量子機械学習モデルを調整するように構成されている、請求項5に記載のシステム。
【請求項8】
前記マップコンポーネント及び前記調整コンポーネントは、システムの可用性、量子ビットカウント、ノイズレベル、又はコヒーレンス時間に従って、前記一組の量子コンピューティングシステムの分析に優先順位をつけるように構成されている、請求項5から7のいずれか一項に記載のシステム。
【請求項9】
少なくとも1つのプロセッサに動作可能に連結されたデバイスによって、量子機械学習モデルにアクセスする段階;
前記デバイスによって、一組の量子コンピューティングシステムから、前記量子機械学習モデルのための量子コンピューティングシステムを、前記量子コンピューティングシステムの第1結合マップ及び前記量子機械学習モデルがその上で訓練された第2結合マップの間の比較に基づいて、特定する段階;及び
前記デバイスによって、前記量子機械学習モデル又は前記量子機械学習モデルの調整されたバージョンを前記量子コンピューティングシステム上で実行する段階
を備える、コンピュータ実装方法。
【請求項10】
前記第1結合マップは、そのノードがそれぞれ前記量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ前記量子コンピューティングシステムの量子ビット間接続を表すグラフであり、前記第2結合マップは、そのノードがそれぞれ前記量子機械学習モデルがその上で訓練された別の量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ前記量子機械学習モデルがその上で訓練された前記別の量子コンピューティングシステムの量子ビット間接続を表すグラフであり、
前記デバイスによって、サブグラフマッチングメトリックを計算することによって、前記第1結合マップ及び前記第2結合マップの間の前記比較を促進する段階
を更に備える、請求項9に記載のコンピュータ実装方法。
【請求項11】
前記サブグラフマッチングメトリックは、前記第1結合マップ及び前記第2結合マップの間のグロモフ・ハウスドルフ距離又はマンハッタン距離である、請求項10に記載のコンピュータ実装方法。
【請求項12】
前記第2結合マップは、前記第1結合マップとトポロジ的に一致し又は前記第1結合マップのサブグラフとトポロジ的に一致し、前記デバイスは、前記量子機械学習モデルを前記量子コンピューティングシステム上で実行するように構成されている、請求項10に記載のコンピュータ実装方法。
【請求項13】
前記第2結合マップは、前記第1結合マップとトポロジ的に一致せず且つ前記第1結合マップのいずれのサブグラフともトポロジ的に一致せず、
前記デバイスによって、前記量子機械学習モデルと関連付けられている一組の変数重要度スコアにアクセスする段階;及び
前記デバイスによって、前記一組の変数重要度スコアに基づいて、前記量子機械学習モデルを調整し、それによって、前記量子機械学習モデルの前記調整されたバージョンをもたらす段階、ここで、前記デバイスは、前記量子機械学習モデルの前記調整されたバージョンを前記量子コンピューティングシステム上で実行するように構成されている
を更に備える、請求項10に記載のコンピュータ実装方法。
【請求項14】
前記デバイスによって、1又は複数のテストランを介して、前記量子機械学習モデルの前記調整されたバージョンの正確性レベルを決定する段階
を更に備える、請求項13に記載のコンピュータ実装方法。
【請求項15】
前記量子機械学習モデルを調整する前記段階は、前記デバイスによって、変数重要度スコアが増大する順序で、前記量子機械学習モデルから少なくとも1つの論理量子ビット又は少なくとも1つの量子ゲートを反復的に除去する段階を有する、請求項13に記載のコンピュータ実装方法。
【請求項16】
前記デバイスは、システムの可用性、量子ビットカウント、ノイズレベル、又はコヒーレンス時間に従って、前記一組の量子コンピューティングシステムの分析に優先順位をつける、請求項13から15のいずれか一項に記載のコンピュータ実装方法。
【請求項17】
結合マップ比較を介して量子システム選択を促進するためのコンピュータプログラムであって、前記コンピュータプログラムは、プログラム命令を備え、前記プログラム命令は、少なくとも1つのプロセッサに、
量子機械学習モデル及び前記量子機械学習モデルと関連付けられている一組の変数重要度スコアにアクセスさせ;
一組の量子コンピューティングシステムから、前記量子機械学習モデルのための量子コンピューティングシステムを特定させ、ここで、前記量子コンピューティングシステムの第1結合マップは、前記量子機械学習モデルがその上で訓練された第2結合マップとトポロジ的に一致せず、前記第1結合マップのサブグラフは、前記量子機械学習モデルがその上で訓練された前記第2結合マップとトポロジ的に一致しない;
前記一組の変数重要度スコアに基づいて、前記量子機械学習モデルを調整させ、それによって、前記量子機械学習モデルの調整されたバージョンをもたらさせ;及び
前記量子機械学習モデルの前記調整されたバージョンを前記量子コンピューティングシステム上で実行させる
ように、前記少なくとも1つのプロセッサによって実行可能である、コンピュータプログラム。
【請求項18】
前記少なくとも1つのプロセッサは、変数重要度スコアが増大する順序で、前記量子機械学習モデルから少なくとも1つの論理量子ビット又は少なくとも1つの量子ゲートを反復的に除去することによって、前記量子機械学習モデルを調整するように構成されている、請求項17に記載のコンピュータプログラム。
【請求項19】
前記少なくとも1つのプロセッサは、ランダム順序で、前記量子機械学習モデルから少なくとも1つの論理量子ビット又は少なくとも1つの量子ゲートを反復的に除去することによって、前記量子機械学習モデルを調整するように構成されている、請求項17に記載のコンピュータプログラム。
【請求項20】
前記一組の変数重要度スコアは、前記量子機械学習モデルの単変量フィッシャースコア又は前記量子機械学習モデルのローカルスコープシャープレイ値に基づく、請求項17から19のいずれか一項に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、量子システムに関し、特に、結合マップ比較を介した量子システム選択を促進することに関する。
【背景技術】
【0002】
既に訓練された量子機械学習(quantum machine learning:「QML」)モデルが与えられる場合、量子コンピューティングシステムのグループから、所与のQMLモデルがその上で実行されるべきものを選択することが望ましい場合が多い。残念ながら、そのような選択を促進するための既存の技法は、多くの場合不適切な量子コンピューティングシステムを選択させる、過度に単純化したヒューリスティクスを利用する。
【発明の概要】
【発明が解決しようとする課題】
【0003】
したがって、これらの技術的問題のうちの1又は複数に対処し得るシステム及び/又は技法は、望ましくあり得る。
【課題を解決するための手段】
【0004】
以下では、本明細書で説明される1又は複数の実施形態の基本的理解を提供するための概要を提示する。この概要は、鍵となる要素又は重要な要素を特定するか、又は特定の実施形態のいかなる範囲又は特許請求の範囲のいかなる範囲も定めることを意図するものではない。その唯一の目的は、後に提示されるより詳細な説明への前置きとして簡略化された形態で概念を提示することである。本明細書で説明される1又は複数の実施形態において、結合マップ比較を介した量子システム選択を促進し得る、デバイス、システム、コンピュータ実装方法、装置及び/又はコンピュータプログラム製品が説明される。
【0005】
様々な実施形態によると、システムが提供され得る。様々な態様において、システムは、少なくとも1つの非一時的コンピュータ可読メモリに格納されたコンピュータ実行可能コンポーネントを実行し得る少なくとも1つのプロセッサを備え得る。様々な事例において、コンピュータ実行可能コンポーネントは、量子機械学習モデルにアクセスし得るアクセスコンポーネントを備え得る。様々な場合において、コンピュータ実行可能コンポーネントは更に、一組の量子コンピューティングシステムから、量子機械学習モデルのための量子コンピューティングシステムを、量子コンピューティングシステムの第1結合マップ及び量子機械学習モデルがその上で訓練された第2結合マップの間の比較に基づいて、特定し得る選択コンポーネントを備え得る。様々な態様において、コンピュータ実行可能コンポーネントは更に、量子機械学習モデル又は量子機械学習モデルの調整されたバージョンを量子コンピューティングシステム上で実行し得る実行コンポーネントを備え得る。量子機械学習モデルがその上で訓練された結合マップと候補の量子コンピュータの結合マップを比較することによって、そのようなシステムが量子システム選択を実行し得るので、そのようなシステムは、単なる量子ビットの数の比較等の過度に単純化したヒューリスティクスに依拠する技法とは対照的に、適切な量子システム選択を行うことの顕著に増加した可能性を示し得る。
【0006】
発明の概要において言及されたそのようなシステムの前述の実施形態のいずれかと組み合わせて使用されてよいそのようなシステムの1又は複数の他の実施形態において、第1結合マップは、そのノードがそれぞれ量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ量子コンピューティングシステムの量子ビット間接続を表すグラフであり得る。同様に、そのようなシステムの任意の好適な実施形態において、第2結合マップは、そのノードがそれぞれ量子機械学習モデルがその上で訓練された別の量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ量子機械学習モデルがその上で訓練された別の量子コンピューティングシステムの量子ビット間接続を表すグラフであり得る。更に、そのようなシステムの任意の好適な実施形態において、コンピュータ実行可能コンポーネントは更に、サブグラフマッチングメトリックを計算することによって、第1結合マップを第2結合マップと比較し得るマップコンポーネントを備え得る。更に、そのようなシステムの任意の好適な実施形態において、サブグラフマッチングメトリックは、第1結合マップ及び第2結合マップの間のグロモフ・ハウスドルフ距離であり得、及び/又は第1結合マップ及び第2結合マップの間のマンハッタン距離であり得る。再び、単なる量子ビットの数の比較等の過度に単純化したヒューリスティクスを介する代わりに、(例えば、具体的には、グロモフ・ハウスドルフ距離及び/又はマンハッタン距離の算出を介して促進され得るサブグラフマッチングを介して)結合マップ比較を介する量子システム選択を実行することによって、そのようなシステムは、量子機械学習モデルのための適切な量子コンピュータを選択する可能性がより高くあり得る。
【0007】
発明の概要において言及されたそのようなシステムの前述の実施形態のいずれかと組み合わせて使用されてよいそのようなシステムの1又は複数の他の実施形態において、第2結合マップは、第1結合マップとトポロジ的に一致し得又は第1結合マップのサブグラフとトポロジ的に一致し得、実行コンポーネントは、量子機械学習モデルを量子コンピューティングシステム上で実行し得る。結局、第2結合マップが第1結合マップとトポロジ的に一致する又は第1結合マップのサブグラフとトポロジ的に一致する場合、量子コンピューティングシステムは、量子機械学習モデルに適切な選ばれたものであると結論付けられ得る(例えば、量子機械学習モデルが量子コンピューティングシステム上で実行され得ると結論付けられ得る)。
【0008】
発明の概要において言及されたそのようなシステムの前述の実施形態のいずれかと組み合わせて使用されてよいそのようなシステムの1又は複数の他の実施形態において、第2結合マップは、第1結合マップとトポロジ的に一致することに失敗し得、任意の第1結合マップのいずれのサブグラフともトポロジ的に一致することに失敗し得る。そのような場合において、アクセスコンポーネントは、量子機械学習モデルと関連付けられている一組の変数重要度スコアにアクセスし得、コンピュータ実行可能コンポーネントは更に、一組の変数重要度スコアに基づいて、量子機械学習モデルを調整し、それによって、量子機械学習モデルの調整されたバージョンをもたらし得る調整コンポーネントを有し得る。そのようなシステムの任意の好適な実施形態において、調整コンポーネントは、変数重要度スコアが増大する順序で、量子機械学習モデルから少なくとも1つの論理量子ビット又は少なくとも1つの量子ゲートを反復的に除去することによって、量子機械学習モデルを調整し得る。これらの場合のいずれかにおいて、実行コンポーネントは、量子機械学習モデルの調整されたバージョンを量子コンピューティングシステム上で実行し得る。結局、第2結合マップが第1結合マップとトポロジ的に一致することに失敗し且つ第1結合マップのいずれか/あらゆるサブグラフとトポロジ的に一致することに失敗する場合、量子コンピューティングシステムが量子機械学習モデルに適切な選ばれたものでないと結論付けられ得る(例えば、量子機械学習モデルが量子コンピューティングシステム上で実行され得ないと結論付けられ得る)。なお、第1結合マップが少なくとも第2結合マップと同じ数の量子ビットを有する場合であっても、システムは、そのような結論を出し得る。対照的に、単なる量子ビットの数の比較等の過度に単純化したヒューリスティクス技法は、そのような場合において、量子コンピューティングシステムが量子機械学習モデルに適切であると誤って結論付けることになるであろう(例えば、量子機械学習モデルが量子コンピューティングシステム上で実行され得ると誤って結論付けることになるであろう)。
【0009】
発明の概要において言及されたそのようなシステムの前述の実施形態のいずれかと組み合わせて使用されてよいそのようなシステムの1又は複数の他の実施形態において、調整コンポーネントは、1又は複数のテストランによって、量子機械学習モデルの調整されたバージョンの正確性レベルを決定し得る。様々な場合において、そのような正確性レベルの演算は、遅延なしで(例えば、量子機械学習モデルの修正されていないバージョンに適切である量子コンピューティングシステムが利用可能になることを待機することなく)量子機械学習モデルを実行するのと引換えに、量子機械学習モデルがどの程度のパフォーマンスの低下を経験するのかを示すことに役立ち得る。
【0010】
発明の概要において言及されたそのようなシステムの前述の実施形態のいずれかと組み合わせて使用されてよいそのようなシステムの1又は複数の他の実施形態において、マップコンポーネント及び調整コンポーネントは、システムの可用性、量子ビットカウント、ノイズレベル、又はコヒーレンス時間に従って、一組の量子コンピューティングシステムの分析に優先順位をつけ得る。様々な場合において、そのような実施形態は、(例えば、本明細書で説明されるように、結合マップ比較を介して)最も有望な量子コンピューティングシステムが最初に分析され得ること、及び/又は最も有望でない量子コンピューティングシステムが最後に分析され得ることを確実にすることに役立ち得る。
【0011】
様々な態様において、上で説明されるシステムの任意の実施形態の任意の1つ及び/又は複数の組み合わせが実装され得る。
【0012】
様々な実施形態によると、コンピュータ実装方法が提供され得る。様々な態様において、コンピュータ実装方法は、少なくとも1つのプロセッサに動作可能に連結されたデバイスによって、量子機械学習モデルにアクセスする段階を備え得る。様々な事例において、コンピュータ実装方法は更に、デバイスによって、一組の量子コンピューティングシステムから、量子機械学習モデルのための量子コンピューティングシステムを、量子コンピューティングシステムの第1結合マップ及び量子機械学習モデルがその上で訓練された第2結合マップの間の比較に基づいて特定する段階を備え得る。様々な場合において、コンピュータ実装方法は更に、デバイスによって、量子機械学習モデル又は量子機械学習モデルの調整されたバージョンを量子コンピューティングシステム上で実行する段階を備え得る。量子機械学習モデルがその上で訓練された結合マップと候補の量子コンピュータの結合マップを比較することによって、そのようなコンピュータ実装方法が量子システム選択を実行し得るので、そのようなコンピュータ実装方法は、単なる量子ビットの数の比較等の過度に単純化したヒューリスティクスに依拠する技法とは対照的に、適切な量子システム選択を作成することの顕著に増大した可能性を示し得る。
【0013】
発明の概要において言及されたそのようなコンピュータ実装方法の前述の実施形態のいずれかと組み合わせて使用されてよいはそのようなコンピュータ実装方法の1又は複数の他の実施形態において、第1結合マップは、そのノードがそれぞれ量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ量子コンピューティングシステムの量子ビット間接続を表すグラフであり得る。同様にそのようなコンピュータ実装方法の任意の好適な実施形態において、第2結合マップは、そのノードがそれぞれ量子機械学習モデルがその上で訓練された別の量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ量子機械学習モデルがその上で訓練された別の量子コンピューティングシステムの量子ビット間接続を表すグラフであり得る。更に、任意の好適な実施形態において、そのようなコンピュータ実装方法は更に、デバイスによって、サブグラフマッチングメトリックを計算することによって、第1結合マップ及び第2結合マップの間の比較を促進する段階を備え得る。更に、そのようなコンピュータ実装方法の任意の好適な実施形態において、サブグラフマッチングメトリックは、第1結合マップ及び第2結合マップの間のグロモフ・ハウスドルフ距離であり得、及び/又は第1結合マップ及び第2結合マップの間のマンハッタン距離であり得る。再び、単なる量子ビットの数の比較等の過度に単純化したヒューリスティクスを介する代わりに、(例えば、具体的には、グロモフ・ハウスドルフ距離及び/又はマンハッタン距離の算出を介して促進され得るサブグラフマッチングを介して)結合マップ比較を介する量子システム選択を実行することによって、そのようなコンピュータ実装方法は、量子機械学習モデルのための適切な量子コンピュータを選択する可能性がより高くあり得る。
【0014】
概要において言及されたそのようなコンピュータ実装方法の前述の実施形態のいずれかと組み合わせて使用されてよいそのようなコンピュータ実装方法の1又は複数の他の実施形態において、第2結合マップは、第1結合マップとトポロジ的に一致し得又は第1結合マップのサブグラフとトポロジ的に一致し得、コンピュータ実装方法は更に、デバイスによって、量子機械学習モデルを量子コンピューティングシステム上で実行する段階を備え得る。結局、第2結合マップが第1結合マップとトポロジ的に一致する又は第1結合マップのサブグラフとトポロジ的に一致する場合、量子コンピューティングシステムは、量子機械学習モデルに適切な選ばれたものであると結論付けられ得る(例えば、量子機械学習モデルが量子コンピューティングシステム上で実行され得ると結論付けられ得る)。
【0015】
発明の概要において言及されたそのようなコンピュータ実装方法の前述の実施形態のいずれかと組み合わせて使用されてよいそのようなコンピュータ実装方法の1又は複数の他の実施形態において、第2結合マップは、第1結合マップとトポロジ的に一致することに失敗し得、任意の第1結合マップのいずれのサブグラフともトポロジ的に一致することに失敗し得る。そのような場合において、コンピュータ実装方法は更に、デバイスによって、量子機械学習モデルと関連付けられている一組の変数重要度スコアにアクセスする段階;及びデバイスによって、一組の変数重要度スコアに基づいて、量子機械学習モデルを調整し、それによって、量子機械学習モデルの調整されたバージョンをもたらす段階を備え得る。そのようなコンピュータ実装方法の任意の好適な実施形態において、量子機械学習モデルを調整する段階は、デバイスによって、変数重要度スコアが増大する順序で、量子機械学習モデルから少なくとも1つの論理量子ビット又は少なくとも1つの量子ゲートを反復的に除去する段階を有し得る。これらの場合のいずれかにおいて、デバイスは、量子機械学習モデルの調整されたバージョンを量子コンピューティングシステム上で実行し得る。結局、第2結合マップが第1結合マップとトポロジ的に一致することに失敗し且つ第1結合マップのいずれか/あらゆるサブグラフとトポロジ的に一致することに失敗する場合、量子コンピューティングシステムが量子機械学習モデルに適切な選ばれたものでないと結論付けられ得る(例えば、量子機械学習モデルが量子コンピューティングシステム上で実行され得ないと結論付けられ得る)。なお、コンピュータ実装方法は、第1結合マップが少なくとも第2結合マップと同じ数の量子ビットを有する場合であっても、システムは、そのような結論を出し得る。対照的に、単なる量子ビットの数の比較等の過度に単純化したヒューリスティクス技法は、そのような場合において、量子コンピューティングシステムが量子機械学習モデルに適切であると誤って結論付けることになるであろう(例えば、量子機械学習モデルが量子コンピューティングシステム上で実行され得ると誤って結論付けることになるであろう)。
【0016】
概要において言及されたそのようなコンピュータ実装方法の前述の実施形態のいずれかと組み合わせて使用されてよいそのようなコンピュータ実装方法の1又は複数の他の実施形態において、コンピュータ実装方法は更に、デバイスによって、1又は複数のテストランを介して、量子機械学習モデルの調整されたバージョンの正確性レベルを決定する段階を備え得る。様々な場合において、そのような正確性レベルの演算は、遅延なしで(例えば、量子機械学習モデルの修正されていないバージョンに適切である量子コンピューティングシステムが利用可能になることを待機することなく)量子機械学習モデルを実行するのと引換えに、量子機械学習モデルがどの程度のパフォーマンスの低下を経験するのかを示すことに役立ち得る。
【0017】
概要において言及されたそのようなコンピュータ実装方法の前述の実施形態のいずれかと組み合わせて使用されてよいそのようなコンピュータ実装方法の1又は複数の他の実施形態において、デバイスは、システムの可用性、量子ビットカウント、ノイズレベル、又はコヒーレンス時間に従って、一組の量子コンピューティングシステムの分析に優先順位をつけ得る。様々な場合において、そのような実施形態は、(例えば、結合マップ比較を介して)最も有望な量子コンピューティングシステムが最初に分析され得ること、及び/又は最も有望でない量子コンピューティングシステムが最後に分析され得ることを確実にすることに役立ち得る。
【0018】
様々な態様において、上で説明されるコンピュータ実装方法の任意の実施形態の任意の1つ及び/又は複数の組み合わせが実装され得る。
【0019】
様々な実施形態によると、結合マップ比較を介した量子システム選択を促進するためのコンピュータプログラム製品が提供され得る。様々な態様において、コンピュータプログラム製品は、プログラム命令が具現化された少なくとも1つの非一時的コンピュータ可読メモリを備え得、プログラム命令は、少なくとも1つのプロセッサに、様々なオペレーションを実行させるように、少なくとも1つのプロセッサによって実行可能であり得る。様々な事例において、そのようなオペレーションは、量子機械学習モデル及び量子機械学習モデルと関連付けられている一組の変数重要度スコアにアクセスする手順を有し得る。様々な場合において、そのようなオペレーションは更に、一組の量子コンピューティングシステムから、量子機械学習モデルのための量子コンピューティングシステムを特定さる手順を有し得、ここで、量子コンピューティングシステムの第1結合マップは、量子機械学習モデルがその上で訓練された第2結合マップとトポロジ的に一致せず、第1結合マップのサブグラフは、量子機械学習モデルがその上で訓練された第2結合マップとトポロジ的に一致しない。様々な態様において、そのようなオペレーションはまた更に、一組の変数重要度スコアに基づいて、量子機械学習モデルを調整させ、それによって、量子機械学習モデルの調整されたバージョンをもたらす手順を有し得る。様々な事例において、そのようなオペレーションはまた更に、量子機械学習モデルの調整されたバージョンを量子コンピューティングシステム上で実行する手順を有し得る。量子機械学習モデルがその上で訓練された結合マップと候補の量子コンピュータの結合マップを比較することによって、そのようなコンピュータプログラム製品が量子システム選択を実行し得るので、そのようなコンピュータプログラム製品は、単なる量子ビットの数の比較等の過度に単純化したヒューリスティクスに依拠する技法とは対照的に、適切な量子システム選択を作成することの顕著に増大した可能性を示し得る。
【0020】
概要において言及されたそのようなコンピュータプログラム製品の前述の実施形態のいずれかと組み合わせて使用されてよいそのようなコンピュータプログラム製品の1又は複数の他の実施形態において、少なくとも1つのプロセッサは、変数重要度スコアが増大する順序で、量子機械学習モデルから少なくとも1つの論理量子ビット又は少なくとも1つの量子ゲートを反復的に除去することによって、量子機械学習モデルを調整し得る。更にそのようなコンピュータプログラム製品の任意の好適な実施形態において、少なくとも1つのプロセッサは、ランダム順序で、量子機械学習モデルから少なくとも1つの論理量子ビット又は少なくとも1つの量子ゲートを反復的に除去することによって、量子機械学習モデルを調整し得る。更に、そのようなコンピュータプログラム製品の任意の好適な実施形態において、一組の変数重要度スコアは、量子機械学習モデルの単変量フィッシャースコア又は量子機械学習モデルのローカルスコープシャープレイ値に基づき得る。様々な場合において、そのような実施形態は、現時点で利用可能な量子コンピュータが量子機械学習モデルに適切でない状況に対処することに役立ち得る。すなわち、現時点で利用可能な量子コンピュータが量子機械学習モデルの修正されていない/調整されていないバージョンに適切でないかもしれないにもかかわらず、量子機械学習モデルを調整/修正すること及び量子機械学習モデルの調整された/修正されたバージョンを現時点で利用可能な量子コンピュータ上で実行することによって、少なくともいくつかの実行結果が提供/取得され得る。
【0021】
様々な態様において、上で説明されるコンピュータプログラム製品の任意の実施形態の任意の1つ及び/又は複数の組み合わせが実装され得る。
【図面の簡単な説明】
【0022】
図1】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する非限定的なシステムの例のブロック図を示す。
【0023】
図2】本明細書で説明される1又は複数の実施形態に係る、量子コンピューティングシステムヴォールトの非限定的なブロック図の例を示す。
【0024】
図3】本明細書で説明される1又は複数の実施形態に係る、量子機械学習モデル及び/又は変数重要度スコアの非限定的なブロック図の例を示す。
【0025】
図4】本明細書で説明される1又は複数の実施形態に係る、テストデータの非限定的なブロック図の例を示す。
【0026】
図5】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する、一組の結合マップ類似度スコアを含む非限定的なシステムの例のブロック図を示す。
【0027】
図6】本明細書で説明される1又は複数の実施形態に係る、一組の結合マップ類似度スコアがどのように生成され得るのかを示す非限定的なブロック図の例を示す。
図7】本明細書で説明される1又は複数の実施形態に係る、一組の結合マップ類似度スコアがどのように生成され得るのかを示す非限定的なブロック図の例を示す。
【0028】
図8】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する、一組の調整された量子機械学習モデル及び/又は一組の正確性レベルを含む非限定的なシステムの例のブロック図を示す。
【0029】
図9】本明細書で説明される1又は複数の実施形態に係る、一組の調整された量子機械学習モデルがどのように生成され得るのかを示す非限定的なブロック図の例を示す。
【0030】
図10】本明細書で説明される1又は複数の実施形態に係る、一組の正確性レベルがどのように生成され得るのかを示す非限定的なブロック図の例を示す。
【0031】
図11】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する、選択された量子コンピューティングシステムを含む非限定的なシステムの例のブロック図を示す。
【0032】
図12】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する、非限定的なコンピュータ実装方法の例のフロー図を示す。
図13】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する、非限定的なコンピュータ実装方法の例のフロー図を示す。
図14】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する、非限定的なコンピュータ実装方法の例のフロー図を示す。
図15】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する、非限定的なコンピュータ実装方法の例のフロー図を示す。
【0033】
図16】本明細書で説明される1又は複数の実施形態に係る、非限定的な実験結果の例のブロック図を示す。
図17】本明細書で説明される1又は複数の実施形態に係る、非限定的な実験結果の例のブロック図を示す。
図18】本明細書で説明される1又は複数の実施形態に係る、非限定的な実験結果の例のブロック図を示す。
【0034】
図19】本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進する、非限定的なコンピュータ実装方法の例のフロー図を示す。
【0035】
図20】本明細書で説明される1又は複数の実施形態が促進され得る非限定的な動作環境の例のブロック図を示す。
【0036】
図21】本明細書で説明される1又は複数の実施形態に係る、非限定的なクラウドコンピューティング環境の例を示す。
【0037】
図22】本明細書で説明される1又は複数の実施形態に係る、非限定的な抽象化モデル層の例を示す。
【発明を実施するための形態】
【0038】
以下の詳細な説明は単に例示であり、実施形態及び/又は実施形態の用途又は使用を制限することを意図するものではない。更に、前述の背景又は概要の章、又は、詳細な説明の章に提示される任意の明示的又は黙示的情報によって拘束される意図はない。
【0039】
次に、1又は複数の実施形態を、図面を参照して説明し、図面では、同様の参照符号は、全体を通して同様の要素を指すために使用される。以下の説明では、説明の目的で、多くの特定の詳細を、1又は複数の実施形態のより完全な理解を提供すべく記載する。しかし、様々な場合において、これらの具体的な詳細なしで、1又は複数の実施形態が実施され得ることは明らかである。
【0040】
量子コンピューティングシステムは、情報処理のために、量子ビット格子(例えば、1又は複数の量子基板上で製造され且つ任意の好適な接続トポロジを示す複数の超伝導量子ビット)を利用する任意の好適なデバイスであり得る。量子回路は、量子コンピューティングシステム上で実行され得る並列及び/又は直列の量子ゲートのシーケンスであり得る。量子ゲートは、量子ビットの状態を変化させる、変更する及び/あるいは影響し得る量子回路の基本的コンポーネントであり得る。いくつかの非限定的な例において、量子ゲートは、任意の好適なシングル量子ビットゲート(例えば、パウリXゲート、パウリYゲート、パウリZゲート、位相ゲート、回転ゲート)及び/又は任意の好適なエンタングリング/2量子ビットゲート(例えば、制御NOTゲート、制御位相ゲート)であり得る。量子機械学習(「QML」)モデルは、その内部パラメータ(例えば、QMLモデルにおける回転ゲートによって実装される回転の大きさ及び/又は方向)が反復的に訓練を通じて学習される、パラメータ化された量子回路であり得る。
【0041】
既に訓練され且つフィールドにおいて展開/実装されることが望ましいQMLモデルが与えられる場合、量子コンピューティングシステムのグループから、所与のQMLモデルがその上で実行されるべきものを選択することが望ましい場合が多い。そのような選択は、様々な理由のために望ましい場合がある。第1に、所与のQMLモデルがその上で訓練されたものと異なる量子コンピューティングシステム上で所与のQMLモデルを実行することは、所与のQMLモデルに準最適な結果をもたらさせ得る。実際に、いくつかの場合において、所与のQMLモデルは、所与のQMLモデルを訓練した量子コンピューティングシステムと異なり過ぎる量子コンピューティングシステム上では、全く実行され得ない。第2に、進行中の研究イニシアチブに起因して新しい量子コンピューティングアーキテクチャは、継続的に導入/開発されており、既存の量子コンピューティングアーキテクチャは、継続的に、コンシューマによって一時的に占有/利用され、修理/メンテナンスのために(例えば、量子ビットバーンアウトに起因して、量子ビット誤動作に起因して)一時的にリタイヤされ、及び/又は(例えば、陳腐化に起因して)永久的に使用停止になっている。追加的に、元々訓練において使用された量子コンピューティングシステム上で所与のQMLモデルを実行することは、介在するイベント(例えば、量子ビットバーンアウト、量子ビットエラー率の変化)がパフォーマンスに影響し得る事例において好ましいオペレーションではない場合がある。すなわち、所与のQMLモデルがその上で訓練された量子コンピューティングシステムは、所与のQMLモデルを展開/実装することが望ましい特定のフィールド/文脈において利用可能でないかもしれない。したがって、一組の量子コンピューティングシステムのうちどれが所与のQMLモデルに適切であるかを選択、決定、及び/あるいは特定することが望ましい場合がある。用語「適切」が本明細書において使用される場合、任意の好適な正確性の閾値レベルなしで、修正なしで、変化なしで、及び/あるいは元々訓練されている状態で、所与のQMLモデルが量子コンピューティングシステム上で実行されることが可能である場合に、量子コンピューティングシステムは、所与のQMLモデルに「適切」であると考えられ得る。
【0042】
残念ながら、そのような選択、決定、及び/又は特定を促進するための既存の技法は、多くの場合不適切な量子コンピューティングシステムを選択させる、過度に単純化したヒューリスティクスを利用する。例えば、多くの既存の技法は、量子ビットカウントのみを考慮する。すなわち、特定の量子コンピューティングシステムが所与のQMLモデルに適切であるかどうかを決定する場合、そのような既存の技法は、特定の量子コンピューティングシステム内に含まれた量子ビットの数を、所与のQMLモデルによって利用された(例えば、情報処理及び/又はエラー軽減目的のために所与のQMLモデルによって利用された)量子ビットの数と比較する。特定の量子コンピューティングシステム内に含まれた量子ビットの数が所与のQMLモデルによって利用された量子ビットの数よりも大きい又はそれに等しい場合、そのような既存の技法は、特定の量子コンピューティングシステムが所与のQMLモデルに適切であると結論付けるであろう。しかし、本明細書で説明される様々な実施形態の発明者が理解したように、量子ビットカウントに対するそのような依存は、不正確性に対して非常に脆弱である。
【0043】
したがって、これらの技術的問題のうちの1又は複数に対処し得るシステム及び/又は技法は、望ましい場合がある。
【0044】
本明細書で説明される様々な実施形態は、これらの技術的問題のうちの1又は複数に対処し得る。具体的には、本明細書で説明される様々な実施形態は、結合マップ比較を介した量子システム選択を促進し得るシステム及び/又は技法を提供し得る。上で言及されるように、量子システム選択を促進するための既存の技法は、量子ビットの総数の比較等の、過度に単純化したヒューリスティクスに依拠する。特に、量子コンピューティングシステム及びQMLモデルが与えられる場合、量子コンピューティングシステム内に含まれた量子ビットの総数がQMLモデルによって利用された量子ビットの総数よりも大きい又はそれに等しい場合に、そのような既存の技法は、量子コンピューティングシステムがQMLモデルに適切であると決定する(例えば、QMLモデルが量子コンピューティングシステム上で十分な正確性をもって実行され得ると結論付け得る)。しかし、本発明者は、そのような既存の技法は、量子ビット接続トポロジを無視するので、そのような既存の技法は、多くの場合、不適切/不適当な量子コンピューティングシステムを選択する(例えば、多くの場合、十分な正確性をもってQMLモデルがその上で実行可能でない量子コンピューティングシステムを選択する)と理解する。実際に、本発明者が理解したように、2つの量子コンピューティングシステムは、異なる接続トポロジを有し得、これは、互いに同じ量子ビットの総数を有するにもかかわらず、それら2つの量子コンピューティングシステムが必ずしも互いに同じ量子回路をサポートし得ないことを意味する。
【0045】
非限定的な例として、量子コンピュータAの第1量子ビットが量子コンピュータAの第2量子ビットに連結され、且つ量子コンピュータAの第2量子ビットが量子コンピュータAの第3量子ビットに連結されている、量子コンピュータAが3つの量子ビットを有すると考える。更に、量子コンピュータBもまた3つの量子ビットを有すると考える。しかし、量子コンピュータBの第1量子ビットが量子コンピュータBの第2量子ビットに連結されていると仮定すると、量子コンピュータBの第2量子ビットは、量子コンピュータBの第3量子ビットに連結されており、且つ量子コンピュータBの第3量子ビットは、量子コンピュータBの第1量子ビットに連結されている。そのような場合において、量子コンピュータA及び量子コンピュータBの両方は、それらそれぞれの第1及び第2量子ビットの間のエンタグルメントをサポートし得、量子コンピュータA及び量子コンピュータBの両方は、それらそれぞれの第2及び第3量子ビットの間のエンタグルメントをサポートし得る。しかし、量子コンピュータBは更に、その第1及び第3量子ビットの間のエンタグルメントをサポートし得、一方で、量子コンピュータAは、その第1及び第3量子ビットの間のエンタグルメントをサポートし得ない。したがって、量子コンピュータA及び量子コンピュータBが互いに同じ量子ビットの総数を有するにもかかわらず(例えば、量子コンピュータA内に含まれた量子ビットの総数がQMLモデルによって利用された量子ビットの総数よりも大きい又はそれに等しいにもかかわらず)、量子コンピュータB上で訓練された3量子ビットQMLモデルは、量子コンピュータA上で実行可能でないかもしれない。言い換えれば、量子コンピュータA及び量子コンピュータBの両方がそれぞれ3つの量子ビットを有し得るとしても、且つQMLモデルが3つの量子ビットを利用し得るとしても、QMLモデルは、量子コンピュータB上で実装可能であるけれども量子コンピュータA上では実装可能でないエンタングリングゲートを含み得る。
【0046】
量子ビットの総数のみを考慮するそのような過度に単純化したヒューリスティクスの代わりに、本発明者は、事前訓練されたQMLモデルが与えられる場合、そのような改善された技法が結合マップ(例えば、接続トポロジ)比較を活用する、量子コンピューティングシステムを選択するための改善された技法を案出した。より具体的には、特定のQMLモデル及び特定の量子コンピューティングシステムが与えられる場合、本発明者は、特定のQMLモデルが特定の量子コンピューティングシステム上で実行可能であるか否かは、特定の量子コンピューティングシステムの結合マップ(例えば、接続トポロジ)を特定のQMLモデルがその上で訓練された量子コンピューティングシステムの結合マップ(例えば、接続トポロジ)と比較することによって正確に/精度よく決定され得ると理解した。特定の量子コンピューティングシステムの結合マップ又はその任意のサブグラフが、特定のQMLモデルがその上で訓練された量子コンピューティングシステムの結合マップとトポロジ的に一致(例えば、同じ量子ビット接続性を有する)する場合、特定のQMLモデルが特定の量子コンピューティングシステム上で実行可能であることが推測され得る。対照的に、特定の量子コンピューティングシステムの結合マップ及びそのあらゆるサブグラフが、特定のQMLモデルがその上で訓練された量子コンピューティングシステムの結合マップとトポロジ的に一致することに失敗した(例えば、同じ量子ビット接続性を有しない)場合、特定のQMLモデルが特定の量子コンピューティングシステム上で正確に実行可能でないことが代わりに推測され得る。そのような後者の場合において、本明細書に更に説明されるように、特定の量子コンピューティングシステム上で実行可能になるまで、特定のQMLモデルは、様々な態様において、反復的に緩和/調整され得る。
【0047】
本明細書で説明される様々な実施形態は、結合マップ比較を介した量子システム選択を電子的に促進し得るコンピュータ化されたツール(例えば、コンピュータ実行可能ハードウェア及び/又はコンピュータ実行可能ソフトウェアの任意の好適な組み合わせ)であると考えられ得る。様々な態様において、そのようなコンピュータ化されたツールは、アクセスコンポーネント、マップコンポーネント、調整コンポーネント、選択コンポーネント、及び/又は実行コンポーネントを備え得る。
【0048】
様々な実施形態において、量子コンピューティングシステムヴォールト(vault)が存在してよい。様々な態様において、量子コンピューティングシステムヴォールトは、有形のハードウェアベースの量子コンピューティングシステムの任意の好適な集中型及び/又は非集中型の集合体であり得、その各々は、対応する結合マップを有し得る及び/あるいはそれと関連付けられ得る。様々な他の態様において、量子コンピューティングシステムヴォールトは、様々な量子コンピューティングシステムに関係する電子情報(例えば、メタデータ)を格納する任意の好適な集中型及び/又は非集中型データベースを含み得る。任意の場合において、上で言及されるように、量子コンピューティングシステムは、情報処理のための任意の好適な数の任意の好適なタイプの量子ビット(例えば、トランスモン量子ビット等の超伝導量子ビット)を利用する任意の好適なデバイスであり得る。
【0049】
様々な態様において、量子コンピューティングシステムヴォールト内の各量子コンピューティングシステムは、対応する結合マップを有し得る及び/あるいはそれと関連付けられ得る。様々な事例において、量子コンピューティングシステムに対応する結合マップは、量子コンピューティングシステムの量子ビットがどの程度互いに集合的に連結されているのかを示及び/あるいは表すグラフデータ構造(例えば、頂点及びエッジを有する)であり得る。すなわち、結合マップは、量子コンピューティングシステムの接続トポロジを示している及び/又は表していると考えられ得る。より具体的には、結合マップは、複数の頂点及び/又は複数のエッジを有し得、結合マップ内の各固有の頂点は、量子コンピューティングシステム内の固有の量子ビットを表し及び/又はそれに対応し得、結合マップ内の各固有のエッジは、結合マップの2つの頂点の間にあり得、及び/又は結合マップの各固有のエッジは、量子コンピューティングシステム内の固有の量子ビット間接続を表し及び/又はそれに対応し得る。いくつかの場合において、結合マップは、重み付けされていない場合がある。他の場合において、しかし、結合マップは、量子コンピューティングシステムに関係する任意の好適な基準によって重み付けされ得る。例えば、結合マップの頂点及び/又はエッジは、量子ビットの遷移周波数及び/又は量子コンピューティングシステム内のカプラに従って、重み付けされ得る。いくつかの非限定的な例として、結合マップの頂点及び/又はエッジは、量子ビットのデコヒーレンス時間及び/又は量子コンピューティングシステム内のカプラ;量子ビットの緩和時間及び/又は量子コンピューティングシステム内のカプラ;量子ビットのノイズレベル及び/又は量子コンピューティングシステム内のカプラ;量子ビットのエラー率及び/又は量子コンピューティングシステム内のカプラ;量子ビットのフィデリティ及び/又は量子コンピューティングシステム内のカプラ;及び/又は量子ビットのエンタグルメント強度及び/又は量子コンピューティングシステム内のカプラに従って重み付けされ得る。
【0050】
様々な態様において、既に訓練が行われたQMLモデルが存在し得る。様々な事例において、QMLモデルは、任意の好適な数の論理量子ビットを含み得、及び/又はそのような論理量子ビット上で直列及び/又は並列で動作し得る、任意の好適な数の任意の好適なタイプの量子ゲートを更に含み得る。
【0051】
様々な場合において、QMLモデルは、訓練結合マップに対応及び/あるいは関連付けられ得る。様々な態様において、訓練結合マップは、複数の頂点及び/又は複数のエッジを有するグラフデータ構造であり得、訓練結合マップ内の各固有の頂点は、QMLモデルがその上で訓練された特定の量子コンピューティングシステム内の固有の量子ビットを表し及び/又はそれに対応し得、訓練結合マップ内の各固有のエッジは、訓練結合マップの2つの頂点の間にあり得、及び/又は訓練結合マップ内の各固有のエッジは、QMLモデルがその上で訓練された特定の量子コンピューティングシステム内の固有の量子ビット間接続を表し及び/又はそれに対応し得る。上記のように、訓練結合マップは、いくつかの場合において、重み付けされていない場合があり、及び/又は他の場合において、(例えば、遷移周波数、デコヒーレンス時間、緩和時間、エラー率、ノイズレベル、フィデリティ、及び/又はエンタグルメント強度に従って)重み付けされている場合がある。
【0052】
様々な事例において、QMLモデルは更に、一組の変数重要度スコアに対応し及び/あるいは関連付けされ得る。様々な場合において、上で言及されるように、QMLモデルは、一組の論理量子ビット上で動作する一組の量子ゲートを含んでいると考えられ得る。様々な態様において、一組の変数重要度スコアは、それぞれQMLモデルの一組の量子ゲートに対応する一組のゲートスコアを含み得、及び/又はそれぞれQMLモデルの一組の論理量子ビットに対応する一組の量子ビットスコアを更に含み得る。様々な事例において、各ゲートスコアは、その大きさがQMLモデルの機能性に関する対応する量子ゲートの重要度の相対的レベルを示す及び/又は表す実数値のスカラであり得る。同様に、様々な場合において、各量子ビットスコアは、その大きさがQMLモデルの機能性に関する対応する論理量子ビットの重要度の相対的レベルを示す及び/又は表す実数値のスカラであり得る。非限定的な例として、より低いゲートスコア有する量子ゲートは、QMLモデルの機能性/運用性に対して重要度がより低いと考えられ得、その一方で、より高いゲートスコアを有する量子ゲートは、QMLモデルの機能性/運用性にとって重要度がより高いと考えられ得る。同様に別の非限定的な例として、より低い量子ビットスコア有する論理量子ビットは、QMLモデルの機能性/運用性に対して重要度がより低いと考えられ得、その一方で、より高い量子ビットスコアを有する論理量子ビットは、QMLモデルの機能性/運用性にとって重要度がより高いと考えられ得る。様々な場合において、一組の変数重要度スコアは、QMLモデルの単変量フィッシャースコア、QMLモデルのローカルスコープシャープレイ値、及び/又はQMLモデルの入力変数に関するQMLモデルの学習可能パラメータの標準に等しい、これから生成され、これから導出して、及び/あるいはそれに基づき得る。
【0053】
様々な態様において、QMLモデルは更に、テストデータに対応及び/あるいは関連付けられ得る。様々な事例において、テストデータは、一組の入力量子状態及び/又はそれぞれ対応する一組の出力量子状態を含み得る。様々な場合において、各入力量子状態は、2の次元を有するベクトルであり得、ここで、gは、QMLモデルによって、利用される論理量子ビットの数を表す任意の好適な正の整数であり得る。様々な態様において、各出力量子状態は、2の次元を有するベクトルであり得、ここで、hは、h≦gであるような任意の好適な正の整数であり得る。様々な事例において、一組の出力量子状態は、それぞれ一組の入力量子状態に対応するとして知られる及び/あるいはみなされるグラウンドトゥルースであると考えられ得る。
【0054】
様々な実施形態において、コンピュータ化されたツールのアクセスコンポーネントは、任意の好適な有線及び/又はワイヤレス電気接続を介して、量子コンピューティングシステムヴォールトに電子的にアクセスし得る。様々な態様において、アクセスコンポーネントは、更に、QMLモデル、訓練結合マップ、一組の変数重要度スコア、及び/又はテストデータにアクセスする、及び/あるいはそれを任意の好適なソースから受け取り得る、読み出し得る及び/又はインポートし得る。例えば、アクセスコンポーネントは、アクセスコンポーネントからリモート及び/又はローカルのいずれかで、QMLモデル、訓練結合マップ、一組の変数重要度スコア、及び/又はテストデータを、任意の好適な集中型及び/又は非集中型データベース(例えば、グラフデータベース、関係データベース、ハイブリッドデータベース)から電子的に読み出し得る及び/又はインポートし得る。様々な他の事例において、アクセスコンポーネントは、QMLモデル、訓練結合マップ、一組の変数重要度スコア、及び/又はテストデータを、任意の他の好適なコンピューティングデバイス及び/又はコンピューティングデバイスから、電子的に読み出し得る及び/又はインポートし得る。例えば、ラップトップコンピュータ、デスクトップコンピュータ、又はスマートフォン等のユーザデバイスは、QMLモデル、訓練結合マップ、一組の変数重要度スコア、及び/又はテストデータをアクセスコンポーネントに提供/伝送し得る。任意の場合において、アクセスコンポーネントは、量子コンピューティングシステムヴォールト、QMLモデル、訓練結合マップ、一組の変数重要度スコア、及び/又はテストデータに電子的にアクセスし得、それにより、コンピュータ化されたツールの他のコンポーネントは、量子コンピューティングシステムヴォールト、QMLモデル、訓練結合マップ、一組の変数重要度スコア、及び/又はテストデータと電子的に相互作用(例えば、読み、書き、編集、操作)し得る。
【0055】
様々な実施形態において、コンピュータ化されたツールのマップコンポーネントは、量子コンピューティングシステムヴォールトからの結合マップを訓練結合マップと比較することに基づいて、一組の結合マップ類似度スコアを電子的に生成し得る。特に、ヴォールト内の任意の所与の量子コンピューティングシステムについて、マップコンポーネントは、その所与の量子コンピューティングシステムのための類似度スコアを計算し得る。様々な態様において、類似度スコアは、その大きさが、その所与の量子コンピューティングシステムの特定の結合マップが訓練結合マップに対してどの程度類似する及び/又はどの程度似ていないかを説明、示す、及び/あるいは伝える実数値のスカラであり得る。
【0056】
様々な事例において、所与の量子コンピューティングシステムの特定の結合マップ及び訓練結合マップの両方がグラフであり得るので、マップコンポーネントは、特定の結合マップ及び訓練結合マップの間の任意の好適なサブグラフマッチングメトリックを計算することによって類似度スコアを生成し得る。様々な事例において、サブグラフマッチングメトリックは、2つのグラフを入力として取り得、その値/大きさがそれら2つの入力されたグラフがどの程度遠く離れているか(例えば、どの程度異なるか)を表し得るスカラを出力として生成し得るグラフ理論からの任意の好適な関数及び/又はアルゴリズムであり得る。非限定的な例として、サブグラフマッチングメトリックは、グロモフ・ハウスドルフ距離であり得る。別の非限定的な例として、サブグラフマッチングメトリックは、マンハッタン距離であり得る。更に別の非限定的な例として、サブグラフマッチングメトリックは、グラフ編集距離であり得る。更に別の非限定的な例として、サブグラフマッチングメトリックは、Min/Max類似度尺度であり得る。
【0057】
任意の場合において、マップコンポーネントは、所与の量子コンピューティングシステムの特定の結合マップ及び訓練結合マップの間の少なくとも1つサブグラフマッチングメトリックを計算し得、マップコンポーネントは、そのような少なくとも1つのサブグラフマッチングメトリックに基づいて、類似度スコアを算出し得る。いくつかの事例において、類似度スコアは、特定の結合マップ及び訓練結合マップの間のサブグラフマッチングメトリックに等しくあり得る。そのような場合において、特定の結合マップ及び訓練結合マップの間の類似度の程度は、類似度スコアの値/大きさが増加するにつれて減少し得る。他の事例において、類似度スコアは、特定の結合マップ及び訓練結合マップの間の1又は複数のサブグラフマッチングメトリックの任意の好適な数学的関数であり得る。例えば、類似度スコアは、サブグラフマッチングメトリックの逆数に基づき得、それにより、特定の結合マップ及び訓練結合マップの間の類似度の程度は、類似度スコアの値/大きさが増加するにつれて増加し得る。任意の場合において、類似度スコアは、特定の結合マップが訓練結合マップと比較されて、どの程度類似するのか及び/又はどの程度似ていないのかを示され得る。
【0058】
様々な態様において、トポロジカルな一致を示す及び/あるいは画定し得る任意の好適な閾値類似度スコアが存在し得る。非限定的な例として、閾値類似度スコアは、最小限の及び/又は最小化されたサブグラフマッチングメトリックに対応し得る(例えば、閾値類似度スコアは、ゼロのグロモフ・ハウスドルフ距離を示す何らかの類似度スコア値に等しくあり得、ゼロのマンハッタン距離を示す何らかの類似度スコア値に等しくあり得、及び/又はゼロのグラフ編集距離を示す何らかの類似度スコア値に等しくあり得る)。別の非限定的な例として、閾値類似度スコアは、任意の最小限でない及び/又は最小化されていないサブグラフマッチングメトリックに対応し得る(例えば、閾値類似度スコアは、任意の事前決定された非ゼロのグロモフ・ハウスドルフ距離を示す何らかの類似度スコア値に等しくあり得、任意の事前決定された非ゼロのマンハッタン距離を示す何らかの類似度スコア値に等しくあり得、及び/又は任意の事前決定された非ゼロのグラフ編集距離を示す何らかの類似度スコア値に等しくあり得る)。
【0059】
任意の場合において、類似度スコアが閾値類似度スコアを満たす場合、マップコンポーネントは、(i)特定の結合マップが訓練結合マップとトポロジ的に一致する;又は(ii)特定の結合マップの少なくとも1つのサブグラフが訓練結合マップにトポロジ的に一致すると結論付け得る。対照的に、類似度スコアが閾値類似度スコアを満たすことに失敗する場合、マップコンポーネントは、(iii)特定の結合マップが訓練結合マップとトポロジ的に一致しない;又は(iv)特定の結合マップのサブグラフが訓練結合マップとトポロジ的に一致しないと結論付け得る。
【0060】
閾値類似度スコアは、最小限の/最小化されたサブグラフマッチングメトリックを示すと仮定する。そのような場合において、特定の結合マップが訓練結合マップとトポロジ的に一致する場合、これは、特定の結合マップが訓練結合マップと同じ/同一の配置及び/又は量子ビット及び量子ビット間接続のプロパティを有することを意味し得る。更に、そのような場合において、特定の結合マップのサブグラフが訓練結合マップとトポロジ的に一致する場合、これは、そのようなサブグラフが訓練結合マップと同じ/同一の配置及び/又は量子ビット及び量子ビット間接続のプロパティを有することを意味し得る(例えば、特定の結合マップが訓練結合マップを含むと考えられ得る)。
【0061】
代わりに、閾値類似度スコアが最小限でない/最小化されていないサブグラフマッチングメトリックを示すと仮定する。そのような場合において、特定の結合マップが訓練結合マップとトポロジ的に一致する場合、これは、特定の結合マップが訓練結合マップと十分に類似するが必ずしも同一でない配置及び/又は量子ビット及び量子ビット間接続のプロパティを有することを意味し得る。更に、そのような場合において、特定の結合マップのサブグラフが訓練結合マップとトポロジ的に一致する場合、これは、そのようなサブグラフが訓練結合マップと十分に類似するが必ずしも同一でない配置及び/又は量子ビット及び量子ビット間接続のプロパティを有することを意味し得る。
【0062】
任意の場合において、特定の結合マップの類似度スコアが閾値類似度スコアを満たす場合(例えば、特定の結合マップ又はそのサブグラフが訓練結合マップとトポロジ的に一致する場合)、QMLモデルは、変化なしで、修正なしで、及び/あるいは元々訓練されている状態で、所与の量子コンピューティングシステム上で実行可能であると考えられ得る(例えば、特定の結合マップは、訓練結合マップと同一及び/又は十分に類似すると考えられ得る)。
【0063】
閾値類似度スコアは、最小限の/最小化されたサブグラフマッチングメトリックを示すと再び仮定する。そのような場合において、特定の結合マップが訓練結合マップとトポロジ的に一致しない場合、これは、特定の結合マップが訓練結合マップと同じ/同一の配置及び/又は量子ビット及び量子ビット間接続のプロパティを有さないことを意味し得る。更に、そのような場合において、特定の結合マップのサブグラフが訓練結合マップとトポロジ的に一致しない場合、これは、特定の結合マップのサブグラフが訓練結合マップと同じ/同一の配置及び/又は量子ビット及び量子ビット間接続のプロパティを有さないことを意味し得る。
【0064】
代わりに、閾値類似度スコアが最小限でない/最小化されていないサブグラフマッチングメトリックを示すと仮定する。そのような場合において、特定の結合マップが訓練結合マップとトポロジ的に一致しない場合、これは、特定の結合マップが訓練結合マップと十分に類似する配置及び/又は量子ビット及び量子ビット間接続のプロパティを有さないことを意味し得る。更に、そのような場合において、特定の結合マップのサブグラフが訓練結合マップとトポロジ的に一致しない場合、これは、そのようなサブグラフが訓練結合マップと十分に類似する配置及び/又は量子ビット及び量子ビット間接続のプロパティを有さないことを意味し得る。
【0065】
任意の場合において、特定の結合マップの類似度スコアが閾値類似度スコアを満たすことに失敗する場合(例えば、特定の結合マップ及びそのあらゆるサブグラフが訓練結合マップとトポロジ的に一致することに失敗する場合)、QMLモデルは、変化なしで、修正なしで、及び/あるいは元々訓練されている状態で、所与の量子コンピューティングシステム上で実行可能でないと考えられ得る(例えば、特定の結合マップは、訓練結合マップと異なり過ぎると考えられ得る)。
【0066】
様々な態様において、マップコンポーネントは、上述されるように、各結合マップについて、それゆえ、量子コンピューティングシステムヴォールトにある各量子コンピューティングシステムについて、類似度スコアを計算し得る。いくつかの事例において、マップコンポーネントは、任意の好適な優先順位の順序に従って、量子コンピューティングシステムヴォールト内の結合マップの各々を反復処理し得る。例えば、いくつかの場合において、マップコンポーネントは、ランダム順序において、量子コンピューティングシステムヴォールトの結合マップを反復処理し得る。別の例として、いくつかの場合において、マップコンポーネントは、システムの可用性の順序で、量子コンピューティングシステムヴォールトの結合マップを反復処理し得る(例えば、現時点で占有されていて、現時点で利用不可であり、及び/又は現時点でより長いキュー時間を有するヴォールト内の量子コンピューティングシステムがより遅くマップコンポーネントによって分析され得、その一方で、現時点で占有されておらず、現時点で利用可能であり、及び/又は現時点でより短いキュー時間を有するヴォールト内の量子コンピューティングシステムがより早くマップコンポーネントによって分析され得る)。更に別の例として、いくつかの場合において、マップコンポーネントは、量子ビットカウントの順序で量子コンピューティングシステムヴォールトの結合マップを反復処理し得る(例えば、より高い量子ビットの数を有するヴォールト内の量子コンピューティングシステムがより早くマップコンポーネントによって分析され得、その一方で、より低い量子ビットの数を有するヴォールト内の量子コンピューティングシステムがより遅くマップコンポーネントによって分析され得る)。更に別の例として、いくつかの場合において、マップコンポーネントは、ノイズレベル、エラー率、及び/又はコヒーレンス時間の順序で量子コンピューティングシステムヴォールトの結合マップを反復処理し得る(例えば、より高いノイズレベル、より高いエラー率、及び/又はより低いコヒーレンス時間を有する、ヴォールト内の量子コンピューティングシステムがより遅くマップコンポーネントによって分析され得、その一方で、より低いノイズレベル、より低いエラー率、及び/又はより高いコヒーレンス時間を有するヴォールト内の量子コンピューティングシステムがより早くマップコンポーネントによって分析され得る)。
【0067】
様々な実施形態において、ヴォールト内の任意の量子コンピューティングシステムが、閾値類似度スコアを満たす類似度スコアに対応する場合(例えば、任意の量子コンピューティングシステムが、訓練結合マップとトポロジ的に一致する、又はトポロジ的に一致するサブグラフを含む結合マップを有する場合)であれば、コンピュータ化されたツールの選択コンポーネントは、QMLモデルに適切である量子コンピューティングシステムを電子的に選択し得る。実際に、そのような量子コンピューティングシステムは、QMLモデルによって、利用される全ての量子ゲートをサポートすることが可能であることを保証され得る。1つより多くのそのような量子コンピューティングシステムが存在する場合であれば、選択コンポーネントは、任意の好適な優先順位の順序に従って、そのような1つより多くの量子コンピューティングシステムの中から選択し得る(例えば、利用可能である、及び/又はそのような量子コンピューティングシステムのうち最も低いキュー時間を有するものどれでも選択し得、そのような量子コンピューティングシステムのうち最も長いコヒーレンス時間及び/又は最も小さいノイズ/エラーレベルを有するものどれでも選択し得、そのような量子コンピューティングシステムのうち最も低い金銭的価格に関連付けられるものどれでも選択し得る)。
【0068】
そのような場合において、コンピュータ化されたツールの実行コンポーネントは、電子メッセージを電子的に生成し、任意の好適なコンピューティングデバイスに伝送し、及び/又は任意の好適なコンピュータスクリーン上に視覚的にディスプレイ/レンダリングし得、ここで、電子メッセージは、選択された量子コンピューティングシステムがQMLモデルに適切であることを示し得る。いくつかの事例において、アクセスコンポーネントは更に、ユーザ提供の量子状態初期化にアクセスし得、実行コンポーネントは、ユーザ提供の量子状態初期化を用いて選択された量子コンピューティングシステムを初期化し;初期化された選択された量子コンピューティングシステム上でQMLモデルを実行し、それによって結果として生じる量子状態をもたらし;及び/又は結果として生じる量子状態を任意の好適なコンピュータスクリーン上にディスプレイし及び/又は任意の好適なコンピューティングデバイスに伝送し得る。
【0069】
様々な実施形態において、その一方で、ヴォールト内の量子コンピューティングシステムが、閾値類似度スコアを満たす類似度スコアに対応しない場合(例えば、任意の量子コンピューティングシステムが、訓練結合マップとトポロジ的に一致する、又はトポロジ的に一致するサブグラフを含む結合マップを有しない場合)であれば、コンピュータ化されたツールの調整コンポーネントは、QMLモデルの一組の調整されたバージョンを電子的に生成し得る。実際に、そのような場合において、ヴォールト内の量子コンピューティングシステムのいずれも、QMLモデルによって、利用される全ての量子ゲートをサポートすることが可能であり得ない。したがって、ヴォールト内の各所与の量子コンピューティングシステムについて、調整コンポーネントは、所与の量子コンピューティングシステム上で実行可能である1又は複数のQMLモデルの調整されたバージョンを生成し得る。すなわち、QMLモデルは、調整され得、その結果、所与の量子コンピューティングシステムは、そのような1又は複数のQMLモデルの調整されたバージョンによって利用される全ての論理量子ビット及び/又は全ての量子ゲートをサポートし得る。
【0070】
様々な事例において、本明細書で説明されるように、調整コンポーネントは、QMLモデルのコピーを作成し、変数重要度スコアが増大する順序で及び/又はランダム順序で、QMLモデルのコピーから、論理量子ビット及び/又は量子ゲートを反復的に除去及び/又は置換することによって、QMLモデルの調整されたバージョンを生成し得る。
【0071】
例えば、QMLモデルが、任意の好適な正の整数a及びbについて、合計b個の論理量子ビット上で集合的に動作する合計a個の量子ゲートを有すると仮定する。そのような場合において、一組の変数重要度スコアは、QMLモデルのa個の量子ゲートにそれぞれ(例えば、1対1の方法で)対応する合計a個のゲートスコアを含み得、更に、QMLモデルのb個の論理量子ビットにそれぞれ対応する(例えば、1対1の方法で)合計b個の量子ビットスコアを含み得る。
【0072】
様々な態様において、ヴォールト内の任意の特定の量子コンピューティングシステムについて、調整コンポーネントは、QMLモデルをコピー/複製し得、そのようなコピー/複製から、a個の量子ゲートのうち最も低い/及び最も小さいゲートスコアを有するものどれでも除去/削除し得る。そのような除去の後、その現在修正中のコピー/複製は、a個の量子ゲートの代わりに、合計a-1個の量子ゲートを有し得る(例えば、ここで、a-1>0)。
【0073】
様々な事例において、調整コンポーネントは、その現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能であるか否かをチェックし得る。すなわち、調整コンポーネントは、そのコピー/複製内の残っている量子ゲートの全てが特定の量子コンピューティングシステム上でサポート/実装され得るか否かをチェックし得る。
【0074】
非限定的な例として、調整コンポーネントは、現在修正中のコピー/複製を特定の量子コンピューティングシステム上で実行することを試みることによって、そのようなチェックを促進し得る。そのような試みられた実行が失敗する場合(例えば、そのような試みられた実行に応じて、特定の量子コンピューティングシステムが、1又は複数のコンパイルエラー及び/又は1又は複数のランタイムエラーを返した場合)、調整コンポーネントは、現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能でないと結論付け得る。対照的に、そのような試みられた実行が成功する場合(例えば、そのような試みられた実行に応じて、特定の量子コンピューティングシステムが、1又は複数のコンパイルエラー及び/又は1又は複数のランタイムエラーを返さない場合)、調整コンポーネントは、代わりに、現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能であると結論付け得る。
【0075】
別の非限定的な例として、訓練結合マップを相応に修正/調整すること;及び現在修正中の訓練結合マップ及び特定の量子コンピューティングシステムの結合マップの間の新しい類似度スコアを計算することによって、調整コンポーネントは、そのようなチェックを促進し得る。
【0076】
例えば、上で言及されるように、調整コンポーネントは、最小得点の量子ゲートを除去することによって、QMLモデルの現在修正中のコピー/複製を作成し得る。そのような最小得点の量子ゲートが、訓練結合マップ内の特定の量子ビット上で動作するシングル量子ビットゲートであると仮定する。現在修正中のコピー/複製内に残っている量子ゲートが特定の量子ビット上で動作しない場合もあり得る。すなわち、最小得点の量子ゲートの除去は、QMLモデルの現在修正中のコピー/複製によって使用されないその特定の量子ビットをレンダリングし得る。したがって、様々な態様において、調整コンポーネントは、訓練結合マップから特定の量子ビットを除去し得、それによって、修正された訓練結合マップをもたらす。
【0077】
別の例として、最小得点の量子ゲートが代わりに、訓練結合マップ内の特定の量子ビット間接続によって共に結合された2つの特定の量子ビット上で動作するエンタングリングゲートであると仮定する。調整コンポーネントがそのような最小得点の量子ゲートをQMLモデルから除去した後、現在修正中のコピー/複製内の残っている量子ゲートが特定の量子ビット間接続を利用しない場合もあり得る。すなわち、最小得点の量子ゲートの除去は、QMLモデルの現在修正中のコピー/複製によって使用されないその特定の量子ビット間接続をレンダリングし得る。したがって、様々な態様において、調整コンポーネントは、特定の量子ビット間接続を訓練結合マップから除去し得、それによって修正された訓練結合マップをもたらす。
【0078】
そのような場合のいずれかにおいて、調整コンポーネントは、(例えば、もはやQMLモデルの現在修正中のコピー/複製によって使用されない量子ビット及び/又は量子ビット間接続を除去することによって)修正された訓練結合マップを生成し得、マップコンポーネントは、上述されるように、修正された訓練結合マップ及び特定の量子コンピューティングシステムの結合マップの間の新しい類似度スコアを計算し得る。そのような新しい類似度スコアが閾値類似度スコアを満たす場合であれば、調整コンポーネントは、QMLモデルの現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能であると結論付け得る。対照的に、そのような新しい類似度スコアが閾値類似度スコアを満たすことに失敗する場合であれば、調整コンポーネントは、QMLモデルの現在修正中のコピー/複製が特定の量子コンピューティングデバイス上でまだ実行可能でないと結論付け得る。
【0079】
任意の場合において、調整コンポーネントは、QMLモデルの現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能であるか否かをチェックし得る。現在修正中のコピー/複製がまだ特定の量子コンピューティングシステム上で実行可能でない場合、調整コンポーネントは、現在修正中のコピー/複製から、残っているa-1個の量子ゲートのうち現在最も低い/最も小さいゲートスコアを有するものどれでも除去/削除し得、それによって、現在修正中のコピー/複製がa-2個の量子ゲートを有するようにする(例えば、ここで、a-2>0である)。
【0080】
このように、調整コンポーネントは、QMLモデルを複製すること;及びその複製の何らかの残るものが特定の量子コンピューティングシステム上で実行可能であるようになるまで、ゲートスコアの順序で複製から量子ゲートを反復的に除去/破棄することによって、特定の量子コンピューティングシステムに対応するQMLモデルの調整されたバージョンを生成し得る。
【0081】
別の例として、例えば、任意の好適な正の整数a及びbについて、QMLモデルが、合計b個の論理量子ビット上で集合的に動作する合計a個の量子ゲートを有すると再び仮定する。上で言及されるように、一組の変数重要度スコアは、QMLモデルのa個の量子ゲートにそれぞれ(例えば、1対1の方法で)対応する合計a個のゲートスコアを含み得、更に、QMLモデルのb個の論理量子ビットにそれぞれ対応する(例えば、1対1の方法で)合計b個の量子ビットスコアをそれゆえ含み得る。
【0082】
様々な態様において、ヴォールト内の任意の特定の量子コンピューティングシステムについて、調整コンポーネントは、QMLモデルをコピー/複製し得、そのようなコピー/複製から、b個の論理量子ビットのうち最も低い/及び最も小さい量子ビットスコアを有するものどれでも除去/削除し得る。すなわち、調整コンポーネントは、そのようなコピー/複製から、最小得点の論理量子ビット上で動作するあらゆる量子ゲートを除去/削除し得る。最小得点の論理量子ビットのそのような除去の後(例えば、最小得点の論理量子ビット上で動作する全ての量子ゲートのそのような除去の後)、そのコピー/複製は、a個よりも少ない量子ゲートを有し、b個の論理量子ビットの代わりに合計b-1個の論理量子ビット(例えば、b-1>0である)を有すると考えられ得る。
【0083】
様々な事例において、調整コンポーネントは、その現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能であるか否かをチェックし得る。すなわち、調整コンポーネントは、その現在修正中のコピー/複製内の残っている量子ゲート及び/又は論理量子ビットの全てが特定の量子コンピューティングシステム上でサポート/実装され得るか否かをチェックし得る。
【0084】
上で言及されるように、調整コンポーネントは、いくつかの場合において、現在修正中のコピー/複製を特定の量子コンピューティングシステム上で実行することを試みることによって、そのようなチェックを促進し得る。そのような試みられた実行が失敗する場合(例えば、そのような試みられた実行に応じて、特定の量子コンピューティングシステムが、1又は複数のコンパイルエラー及び/又は1又は複数のランタイムエラーを返した場合)、調整コンポーネントは、現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能でないと結論付け得る。対照的に、そのような試みられた実行が成功する場合(例えば、そのような試みられた実行に応じて、特定の量子コンピューティングシステムが、1又は複数のコンパイルエラー及び/又は1又は複数のランタイムエラーを返さない場合)、調整コンポーネントは、代わりに、現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能であると結論付け得る。
【0085】
上でも言及されるように、他の場合において、訓練結合マップを相応に修正/調整すること;及び現在修正中の訓練結合マップ及び特定の量子コンピューティングシステムの結合マップの間の新しい類似度スコアを計算することによって、調整コンポーネントは、そのようなチェックを促進し得る。
【0086】
再び、上で説明されるように、調整コンポーネントは、最小得点の論理量子ビットを除去することによって(例えば、最小得点の論理量子ビット上で動作する全ての量子ゲートを除去することによって)、QMLモデルの現在修正中のコピー/複製を作成し得る。そのような最小得点の論理量子ビットが訓練結合マップの1又は複数の特定の量子ビットによって実装されると仮定する(例えば、エラー軽減は、シングル論理量子ビットを実装するために複数の物理量子ビットを必要とし得る)。したがって、様々な態様において、調整コンポーネントは、それら1又は複数の特定の量子ビット(及びそれらの対応する量子ビット間接続)を訓練結合マップから除去し得、それによって訓練結合マップの修正されたバージョンをもたらす。それゆえ、マップコンポーネントは、上述されるような、訓練結合マップの修正されたバージョン及び特定の量子コンピューティングシステムの結合マップの間の新しい類似度スコアを計算し得る。そのような新しい類似度スコアが閾値類似度スコアを満たす場合であれば、調整コンポーネントは、QMLモデルの現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能であると結論付け得る。対照的に、そのような新しい類似度スコアが閾値類似度スコアを満たすことに失敗する場合であれば、調整コンポーネントは、QMLモデルの現在修正中のコピー/複製が特定の量子コンピューティングシステム上でまだ実行可能でないと結論付け得る。
【0087】
任意の場合において、調整コンポーネントは、QMLモデルの現在修正中のコピー/複製が特定の量子コンピューティングシステム上で実行可能であるか否かをチェックし得る。その現在修正中のコピー/複製がまだ特定の量子コンピューティングシステム上で実行可能でない場合、調整コンポーネントは、コピー/複製から、残っているb-1個の論理量子ビットのうち現在最も低い/最も小さい量子ビットスコアを有するものどれでも除去/削除し得(例えば、新しい最小得点の論理量子ビット上で動作するあらゆる量子ゲートを除去/削除し得)それによって現在修正中のコピー/複製がb-2個の論理量子ビットを有するようにする(例えば、ここで、b-2>0である)。
【0088】
このように、調整コンポーネントは、QMLモデルを複製すること;及び複製の何らかの残るものが特定の量子コンピューティングシステム上で実行可能であるようになるまで、量子ビットスコアの順序で複製から論理量子ビットを反復的に除去/破棄することによって、特定の量子コンピューティングシステムに対応するQMLモデルの調整されたバージョンを生成し得る。
【0089】
調整コンポーネントに関係する上記の例は、非限定的である。様々な実施形態において、調整コンポーネントは、変数重要度スコアが増大する順序で、一度に(例えば、各反復において)1又は複数の量子ゲート及び/又は1又は複数の論理量子ビットをQMLモデルから除去することによって、QMLモデルの調整された/修正されたバージョンを作成し得る。様々な他の実施形態において、調整コンポーネントは、ランダム順序で、一度に(例えば、各反復において)1又は複数の量子ゲート及び/又は1又は複数の論理量子ビットをQMLモデルから除去することによって、QMLモデルの調整された/修正されたバージョンを作成し得る。
【0090】
任意の場合において、マップコンポーネントによってコンピューティングされた類似度スコアのいずれもが閾値類似度スコアを満たさない場合、調整コンポーネントは、量子コンピューティングシステムヴォールト内の各量子コンピューティングシステムのための1又は複数のQMLモデルの調整されたバージョンを生成し得、それによって、それぞれヴォールト内の量子コンピューティングシステムに対応するQMLモデルの一組の調整されたバージョンをもたらす。
【0091】
様々な実施形態において、調整コンポーネントは更に、QMLモデルの一組の調整されたバージョンに基づいて、及び/又はテストデータに基づいて、一組の正確性レベルを電子的に生成し得る。より具体的には、上で言及されるように、テストデータは、一組の入力量子状態及びそれぞれ対応する一組の出力量子状態を含み得、ここでは、出力量子状態が、入力量子状態に対するそれぞれのグラウンドトゥルースであると考えられ得る。更に、上で言及されるように、QMLモデルの各調整されたバージョンは、ヴォールト内の量子コンピューティングシステムに対応する(例えば、これ上で実行可能である)と考えられ得る。
【0092】
したがって、様々な態様において、QMLモデルの各調整されたバージョンについて、調整コンポーネントは、(1)QMLモデルの調整されたバージョンに対応する(例えば、実行することが可能であるとしてチェックされた)量子コンピューティングシステムを特定し;(2)テストデータから入力量子状態及び対応する出力量子状態を選択し;(3)選択された入力量子状態を用いて、特定された量子コンピューティングシステムを初期化し;(4)QMLモデルの調整されたバージョンを特定された及び初期化された量子コンピューティングシステム上で実行し、それによって結果として生じる量子状態をもたらし;(5)結果として生じる量子状態及び選択された出力量子状態の間の差分を計算し;(6)テストデータの全てが使用されるまで、(2)~(5)を繰り返し、それによって一組の計算された差分をもたらし;及び/又は(7)一組の計算された差分に基づいて、QMLモデルの調整されたバージョンに対する正確性スコア(例えば、実数値のスカラ)を計算し得る。正確性スコアは、そのような一組の計算された差分の任意の好適な関数であり得る。非限定的な例として、正確性スコアは、一組の計算された差分の平均値(例えば、中間値)の逆数に基づき得、それにより、正確性スコアの値/大きさは、一組の計算された差分の平均値が減少するにつれて増加し得る。
【0093】
このように、調整コンポーネントは、QMLモデルの各調整されたバージョンに対する正確性スコアを算出し得る。
【0094】
様々な実施形態において、最も高い及び/又は最良の正確性スコアを有するQMLモデルの調整されたバージョンが存在し得、及び様々な態様において、コンピュータ化されたツールの選択コンポーネントは、そのような最も正確なQMLモデルの調整されたバージョンに対応する(例えば、それを実行することが可能であるとしてチェックされた)量子コンピューティングシステムどれでも電子的に選択し得る。2又はそれより多くのQMLモデルの調整されたバージョンが最も高い/最良の正確性スコアを有する場合であれば、選択コンポーネントは、そのような2又はそれより多くのQMLモデルの調整されたバージョンに対応する量子コンピューティングシステムを電子的に特定し得、任意の好適な優先順位の順序に従って、そのような量子コンピューティングシステムの中から選択し得る(例えば、そのような量子コンピューティングシステムのうち利用可能であり及び/又は最も低いキュー時間を有するものどれでも選択し得、そのような量子コンピューティングシステムのうち最も長いコヒーレンス時間及び/又は最も小さいノイズ/エラーレベルを有するものどれでも選択し得る)。
【0095】
そのような場合において、コンピュータ化されたツールの実行コンポーネントは、電子メッセージを電子的に生成し、任意の好適なコンピューティングデバイスに伝送し、及び/又は任意の好適なコンピュータスクリーン上に視覚的にディスプレイ/レンダリングし得、ここで、電子メッセージは、ヴォールト内の量子コンピューティングシステムのいずれもQMLモデル(例えば、QMLモデルの元の変更されていないバージョン)に適切でないことを示し得る。しかし、様々な態様において、電子メッセージは更に、選択された量子コンピューティングシステムが、最も高い/最良の正確性スコアを有するQMLモデルの調整されたバージョンに適切であることを示し得る。
【0096】
いくつかの事例において、アクセスコンポーネントは更に、QMLモデルによって、分析されることが望ましいユーザ提供の量子状態初期化にアクセスし得る。様々な場合において、実行コンポーネントは、ユーザ提供の量子状態初期化を用いて選択された量子コンピューティングシステムを初期化し;初期化された選択された量子コンピューティングシステム上で、最も高い/最良の正確性スコアを有するQMLモデルの調整されたバージョンを実行し、それによって結果として生じる量子状態をもたらし;及び/又は結果として生じる量子状態を任意の好適なコンピュータスクリーン上にディスプレイし及び/又は任意の好適なコンピューティングデバイスに伝送し得る。
【0097】
したがって、本明細書で説明される様々な実施形態は、一組の量子コンピューティングシステムからのどの1つが所与のQMLモデルに最も適切であるかを特定/決定し得るコンピュータ化されたツールであると考えられ得る。本明細書で説明されるように、そのようなコンピュータ化されたツールは、一組の量子コンピューティングシステムの結合マップを所与のQMLモデルがその上で訓練された特定の結合マップとそれぞれ比較することによるそのような特定/決定を促進し得る。様々な事例において、トポロジ的に一致する結合マップが見つけられない場合であっても、コンピュータ化されたツールは、様々な一組の量子コンピューティングシステム上で実行可能であるQMLモデルの様々な調整された/緩和されたバージョンを生成し得、コンピュータ化されたツールは、そのような調整された/緩和されたバージョンのうちどれが最も正確であるのか(例えば、どの調整された/緩和されたバージョンが十分に高いパフォーマンスを示すのか)を特定/決定し得る。
【0098】
本明細書で説明される様々な実施形態は、ハードウェア及び/又はソフトウェアを使用して、本質的に高度に技術的であり(例えば、結合マップ比較を介した量子システム選択を促進すること)、抽象的でなく、人間によって精神的な活動のセットとして実行されることができない問題を解決するために利用され得る。更に、実行されるプロセスのいくつかは、専用コンピュータ(例えば、量子機械学習モデルを実行/実装し得る量子コンピュータ)によって実行され得る。様々な態様において、本明細書で説明される様々な実施形態に関連付けられたいくつかの定義されたタスクは、少なくとも1つのプロセッサに動作可能に連結されたデバイスによって量子機械学習モデルにアクセスすること;デバイスによって、一組の量子コンピューティングシステムから、量子機械学習モデルのための量子コンピューティングシステムを、量子コンピューティングシステムの第1結合マップ及び量子機械学習モデルがその上で訓練された第2結合マップの間の比較に基づいて、特定すること;及び/又はデバイスによって、量子機械学習モデル又は量子機械学習モデルの調整されたバージョンを量子コンピューティングシステム上で実行することを備え得る。様々な事例において、そのような定義されたタスクは更に、デバイスによって、第1結合マップとトポロジ的に一致せず且つ第1結合マップのいずれのサブグラフともトポロジ的に一致しない第2結合マップを決定すること;デバイスによって、量子機械学習モデルと関連付けられている一組の変数重要度スコアにアクセスすること;及び/又はデバイスによって、一組の変数重要度スコアに基づいて、量子機械学習モデルを調整し、それによって、量子機械学習モデルの調整されたバージョンをもたらすこと、ここで、デバイスは、量子機械学習モデルの調整されたバージョンを量子コンピューティングシステム上で実行するように構成されている、を備え得る。
【0099】
人間の精神もペン及び紙を有する人間も、QMLモデル及び一組の量子コンピュータに電子的にアクセスし、(例えば、サブグラフマッチングメトリックの演算を介して)量子コンピュータの結合マップを、QMLモデルがその上で訓練された特定の結合マップと電子的に比較し;(例えば、変数重要度スコアの順序で、QMLモデルから量子ゲート及び/又は論理量子ビットを除去することによって)QMLモデルを電子的に調整し、量子コンピュータのうちの1つの上でQMLモデルの調整されたバージョンを電子的に実行することができない。代わりに、そのような定義されたタスクは、コンピュータ技術と本来的に且つ密接に関連付けられており、コンピューティング環境の外部で実装され得ない。結局、量子コンピュータは、情報を処理するための物理量子ビット(例えば、トランスモン等の超伝導量子ビット)を利用するコンピューティングハードウェアの専門的なピースである。物理量子ビットは、人間の精神によって又はペン及び紙を有する人間によって実装され得ない。更に、QMLモデルは、量子コンピュータ上で実行され得且つその内部パラメータが訓練を通じて反復的に学習され得る量子ゲートのシーケンスであり得る。人間の精神もペン及び紙を有する人間も、物理量子ビット上で量子回路を実行することができない。したがって、QMLモデルがその上で訓練された結合マップと量子コンピュータの結合マップを比較し得る、QMLモデルから量子ゲート及び/又は論理量子ビットを除去し得る、及び/又は量子コンピュータ上でQMLモデルを実行し得るコンピュータ化されたツールは、本来コンピュータ化されており、且つコンピュータなしでの任意の実用的な、実践可能な、又は合理的な方法で実装され得ない。
【0100】
様々な事例において、本明細書で説明される1又は複数の実施形態は、本明細書で説明された教示を実際の適用に統合し得る。上で言及されるように、所与のQMLモデルの実行のための量子コンピューティングシステムを選択するための既存の技法は、量子ビットの総数等の、過度に単純化したヒューリスティクスに依拠する。上で説明されるように、そのような過度に単純化したヒューリスティクスは、不適切な量子コンピューティングシステムを選択する傾向がある(例えば、許容可能な態様において所与のQMLモデルを実行し得ない量子コンピュータを選択する傾向がある)。この重要な技術的問題に対処するために、本発明者は結合マップ比較に基づいて量子コンピューティングシステムを選択するための技法を案出した。より具体的には、そのような技法は、(例えば、サブグラフマッチングメトリックを介して、)QMLモデルがその上で訓練された特定の結合マップと量子コンピューティングシステムの結合マップを比較することを備え得る。量子コンピューティングシステムが、結合マップ又はそのサブグラフが所与のQMLモデルがその上で訓練された特定の結合マップとトポロジ的に一致するように見られる場合、そのような量子コンピューティングシステムは、QMLモデルに適切である(例えば、そのような量子コンピューティングシステムが、QMLモデルに含まれるエンタングリングゲートをサポートし得る)と考えられ得る。対照的に、その結合マップ又はそのサブグラフが所与のQMLモデルがその上で訓練された特定の結合マップとトポロジ的に一致する量子コンピューティングシステムが存在しない場合、そのような技法は更に、(例えば、変数重要度スコアの順序でQMLモデルから量子ゲート及び/又は論理量子ビットを反復的に除去/削除することによって、)量子コンピューティングシステムのそれぞれの上で実行可能である、QMLモデルの様々な調整された/緩和されたバージョンを作成すること、及びテストランを行って、そのような調整された/緩和されたバージョンのうちどれが最も正確であるか(例えば、最も不正確でないか)を特定/決定することを備え得る。したがって、本明細書で説明される技法は、一組の量子コンピューティングシステムのうちどれの上で所与のQMLモデル(及び/又は所与のQMLモデルの調整された/緩和されたバージョン)が実行されるべきなのかを特定し得る。そのような技法は、結合マップ比較を活用し得るので、そのような技法は、過度に単純化したヒューリスティクスに依拠する技法あるいは試行錯誤の技法に依拠する既存の技法とは対照的に、不適切な量子コンピューティングシステムを特定する可能性がはるかに少なくあり得る。これは、量子システムの分野における具体的及び有形の技術的改善である。少なくともこれらの理由により、本明細書で説明される様々な実施形態は、コンピュータの有用で実用的な適用を確実に構成する。
【0101】
図面及び本明細書における開示は、様々な実施形態の非限定的な例を説明することが認識されたい。更に、図面が必ずしも縮尺に従って描画されていないことが認識されたい。
【0102】
図1は、本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進し得る非限定的なシステム100の例のブロック図を示す。示されるように、量子コンピューティング選択システム102は、任意の好適な有線及び/又はワイヤレス電気接続を介して、量子コンピューティングシステムヴォールト104に、量子機械学習モデル106(以降「QMLモデル106」)に、訓練結合マップ108に、一組の変数重要度スコア110に、及び/又はテストデータ112に電子的に統合され得る。
【0103】
様々な実施形態において、量子コンピューティングシステムヴォールト104は、任意の好適な量子コンピューティングシステムの、集中型及び/又は非集中型の集合体、集中型及び/又は非集中型の一組、集中型及び/又は非集中型のグループ、集中型及び/又は非集中型の倉庫、及び/又は集中型及び/又は非集中型のウェアハウスであり得る。様々な他の実施形態において、量子コンピューティングシステムヴォールト104は、様々な量子コンピューティングシステムに関係する及び/又はそれを説明する電子情報(例えば、メタデータ)を格納する任意の好適な集中型及び/又は非集中型データベースであり得る。任意の場合において、量子コンピューティングシステムヴォールト104内の各量子コンピューティングシステムは、それぞれの結合マップに対応し得る。これは更に、図2に関して説明される。
【0104】
図2は、本明細書で説明される1又は複数の実施形態に係る、量子コンピューティングシステムヴォールト104の非限定的なブロック図200の例を示す。示されるように、量子コンピューティングシステムヴォールト104は、様々な態様において、一組の量子コンピューティングシステム202及び/又は一組の結合マップ204を含み得る。
【0105】
様々な事例において、一組の量子コンピューティングシステム202は、任意の好適な正の整数nについて、n個の量子コンピューティングシステム:量子コンピューティングシステム202(1)から量子コンピューティングシステム202(n)までを含み得る。様々な場合において、一組の量子コンピューティングシステム202の各々は、任意の好適な量子コンピューティングアーキテクチャ及び/又は量子コンピューティング構造を示し得る。例えば、量子コンピューティングシステム202(1)は、任意の好適な数の任意の好適なタイプの量子ビット(例えば、トランスモン等の超伝導量子ビット)を有し得、そのような量子ビットは、任意の好適な微細加工及び/又はナノ加工技法(例えば、フォトリソグラフィー、堆積、エッチング、ダブルアングル蒸着)に従って製造され得、及び/又はそのような量子ビットは、任意の好適な方法/配置/トポロジにおいて共に接続/結合され得る。別の例として、量子コンピューティングシステム202(n)は、同様に、任意の好適な数の任意の好適なタイプの量子ビットを有し得、そのような量子ビットは、任意の好適な微細加工及び/又はナノ加工技法に従って製造され得、及び/又はそのような量子ビットは、任意の好適な方法/配置/トポロジにおいて共に接続/結合され得る。様々な場合において、一組の量子コンピューティングシステム202のうち異なるものは、互いに同じ及び/又は異なる数/タイプの量子ビットを有し得、互いに同じ及び/又は異なる製造技法に従って製造され得、及び/又は互いに同じ及び/又は異なる接続トポロジを示し得る。
【0106】
様々な態様において、一組の結合マップ204は、一組の量子コンピューティングシステム202にそれぞれ(例えば、1対1の方法で)対応し得る。したがって、一組の量子コンピューティングシステム202がn個の量子コンピューティングシステムを含み得るため、一組の結合マップ204は、n個の結合マップ:結合マップ204(1)から結合マップ204(n)までを含み得る。様々な事例において、一組の結合マップ204の各々は、一組の量子コンピューティングシステム202のうちそれぞれ対応する1つの接続トポロジを表す及び/又は説明するグラフデータ構造であり得る。例えば、結合マップ204(1)は、量子コンピューティングシステム202(1)に対応し得る。すなわち、結合マップ204(1)は、頂点及びエッジを含むグラフデータ構造であり得、そのような頂点の各々は、量子コンピューティングシステム202(1)内の量子ビットのうちそれぞれ対応する1つを表し得、及び/又はそのようなエッジの各々は、量子コンピューティングシステム202(1)内のそれぞれ対応する量子ビット間接続を表し得る。いくつかの場合において、結合マップ204(1)は、重み付けされていないグラフデータ構造であり得る。しかし、他の場合において、結合マップ204(1)は、重み付けされたグラフデータ構造であり得る。実際に、そのような場合において、結合マップ204(1)の頂点及び/又はエッジは、量子ビットの任意の好適なプロパティ及び/又は属性及び/又は量子コンピューティングシステム202(1)の量子ビット間接続に従って重み付けされ得る。重み付けのために使用され得るプロパティ/属性の非限定的な例は、量子コンピューティングシステム202(1)内の量子ビットの遷移周波数、量子コンピューティングシステム202(1)内の量子ビットのデコヒーレンス時間、量子コンピューティングシステム202(1)内の量子ビットの緩和時間、量子コンピューティングシステム202(1)内の量子ビットのノイズレベル、量子コンピューティングシステム202(1)内の量子ビットのエラー率、量子コンピューティングシステム202(1)内の量子ビットのフィデリティ、及び/又は量子コンピューティングシステム202(1)内のカプラのエンタグルメント強度を含み得る。
【0107】
別の例として、結合マップ204(n)は、量子コンピューティングシステム202(n)に対応し得る。よって、結合マップ204(n)は、頂点及びエッジを含むグラフデータ構造であり得、そのような頂点の各々は、量子コンピューティングシステム202(n)内の量子ビットのうちそれぞれ対応する1つを表し得、及び/又はそのようなエッジの各々は、量子コンピューティングシステム202(n)内のそれぞれ対応する量子ビット間接続を表し得る。まさに上記のように、いくつかの場合において、結合マップ204(n)は、重み付けされていないグラフデータ構造であり得る。しかし、他の場合において結合マップ204(n)は、重み付けされたグラフデータ構造であり得る。上で言及されるように、そのような場合において、結合マップ204(n)の頂点及び/又はエッジは、量子ビットの任意の好適なプロパティ及び/又は属性及び/又は量子コンピューティングシステム202(n)の量子ビット間接続に従って重み付けされ得る。重み付けのために使用され得るそのようなプロパティ/属性の非限定的な例は、量子コンピューティングシステム202(n)内の量子ビットの遷移周波数、量子コンピューティングシステム202(n)内の量子ビットのデコヒーレンス時間、量子コンピューティングシステム202(n)内の量子ビットの緩和時間、量子コンピューティングシステム202(n)内の量子ビットのノイズレベル、量子コンピューティングシステム202(n)内の量子ビットのエラー率、量子コンピューティングシステム202(n)内の量子ビットのフィデリティ、及び/又は量子コンピューティングシステム202(n)内のカプラのエンタグルメント強度を含み得る。
【0108】
図1に戻って参照すると、様々な実施形態において、QMLモデル106は、任意の好適な数の量子ビット(例えば、論理量子ビット)上で集合的に動作する直列及び/又は並列の量子ゲートの任意の好適なシーケンスで構成される、任意の好適なパラメータ化された量子回路であり得る。様々な態様において、QMLモデル106の内部パラメータは、機械学習(例えば、教師あり及び/又は教師なし訓練)のための任意の好適な訓練プロセスを通じて反復的に取得され得る。様々な態様において、QMLモデル106は、量子コンピューティングシステムヴォールト104内にあっても及び/又はなくてもよい任意の好適な量子コンピューティングシステム上で訓練され得る。いくつかの場合において、QMLモデル106を訓練した量子コンピューティングシステムは、量子コンピューティングシステムヴォールト104内にあり得るが、そのような量子コンピューティングシステムは、利用不可であり得る(例えば、コンシューマによって占有され得及び/又は量子ビットバーンアウトに起因して一時的にオフラインであり得る)。
【0109】
様々な事例において、訓練結合マップ108は、QMLモデル106がその上で訓練されたその特定の量子コンピューティングシステムの接続トポロジを表す及び/又は説明するグラフデータ構造であり得る。すなわち、訓練結合マップ108は、頂点及びエッジを含むグラフデータ構造であり得、そのような頂点の各々は、QMLモデル106がその上で訓練された特定の量子コンピューティングシステム内の量子ビットのうちそれぞれ対応する1つを表し得、及び/又はそのようなエッジの各々は、QMLモデル106がその上で訓練された特定の量子コンピューティングシステム内のそれぞれ対応する量子ビット間接続を表し得る。まさに上記のように、訓練結合マップ108は、いくつかの場合において、重み付けされていないグラフデータ構造であり得る。他の場合において、訓練結合マップ108は、重み付けされたグラフデータ構造であり得る。すなわち、訓練結合マップ108の頂点及び/又はエッジは、量子ビットの任意の好適なプロパティ、属性、及び/又はパラメータ及び/又はQMLモデル106がその上で訓練された特定の量子コンピューティングシステムの量子ビット間接続に従って重み付けされ得る。そのようなプロパティ、属性、及び/又はパラメータの非限定的な例は、遷移周波数、デコヒーレンス時間、緩和時間、ノイズレベル、エラー率、フィデリティ、及び/又はエンタグルメント強度を含み得る。
【0110】
様々な実施形態において、一組の変数重要度スコア110は、一組の実数値のスカラであり得、一組の実数値のスカラの各々は、QMLモデル106によって、利用される量子ゲート及び/又は論理量子ビットの重要度の相対的レベルを表す及び/又は説明し得る。これは更に、図3に関して説明される。
【0111】
図3は、本明細書で説明される1又は複数の実施形態に係る、QMLモデル106及び/又は一組の変数重要度スコア110の非限定的なブロック図300の例を示す。
【0112】
様々な実施形態において、示されるように、QMLモデル106は、一組の論理量子ビット302及び/又は一組の量子ゲート304を含み得る。様々な態様において、一組の論理量子ビット302は、任意の好適な正の整数mについて、m個の量子ビット:論理量子ビット302(1)から論理量子ビット302(m)までを含み得る。様々な事例において、これは、QMLモデル106が2の次元を有する量子状態で動作するように構成されていてよいことを意味し得る。様々な場合において、一組の量子ゲート304は、任意の好適な正の整数lについて、l個のゲート:量子ゲート304(1)から量子ゲート304(l)までを含み得る。様々な態様において、上で言及されるように、量子ゲートは、任意の好適なシングル量子ビットの量子ゲート及び/又は任意の好適な2量子ビットの量子ゲートであり得る。そのような量子ゲートの非限定的な例は、パウリXゲート、パウリYゲート、パウリZゲート、位相ゲート、アダマールゲート、制御NOTゲート、制御位相ゲート、制御Zゲート、及び/又は回転ゲートを含み得る。任意の場合において、一組の量子ゲート304は、一組の論理量子ビット302上で集合的に動作するために、任意の好適な方法で(例えば、互いに直列及び/又は並列で)配置され得る。
【0113】
様々な態様において、示されるように、一組の変数重要度スコア110は、一組の量子ビットスコア306及び/又は一組のゲートスコア308を含み得る。様々な事例において、一組の量子ビットスコア306は、一組の論理量子ビット302にそれぞれ(例えば、1対1の方法で)対応し得る。したがって、一組の論理量子ビット302がm個の量子ビットを含み得るため、一組の量子ビットスコア306は、m個のスコア:量子ビットスコア306(1)から量子ビットスコア306(m)までを含み得る。様々な場合において、一組の量子ビットスコア306の各々は、その大きさがQMLモデル106の機能性及び/又は運用性に対する一組の論理量子ビット302のうちそれぞれ対応する1つの重要度の相対的レベルを表す及び/又は示す実数値のスカラであり得る。例えば、量子ビットスコア306(1)は、論理量子ビット302(1)に対応し得、これは、量子ビットスコア306(1)が、その値が、QMLモデル106の機能性/運用性を促進するために一組の論理量子ビット302内の他の論理量子ビットと相対的に論理量子ビット302(1)がどの程度重要であるか及び/又はどの程度重要でないかを示す実数値のスカラであり得ることを意味する(例えば、量子ビットスコア306(1)のより高い値は、論理量子ビット302(1)がQMLモデル106にとって重要度がより高いことを示し得、その一方で、量子ビットスコア306(1)のより低い値は、論理量子ビット302(1)がQMLモデル106にとって重要度がより低いことを示し得る)。別の例として、量子ビットスコア306(m)は、論理量子ビット302(m)に対応し得、これは、量子ビットスコア306(m)が、その値が、QMLモデル106の機能性/運用性を促進するために一組の論理量子ビット302内の他の論理量子ビットと相対的に論理量子ビット302(m)がどの程度重要であるか及び/又はどの程度重要でないかを示す実数値のスカラであり得ることを意味する(例えば、量子ビットスコア306(m)のより高い値は、論理量子ビット302(m)がQMLモデル106にとって重要度がより高いことを示し得、その一方で、量子ビットスコア306(m)のより低い値は、論理量子ビット302(m)がQMLモデル106にとって重要度がより低いことを示し得る)。
【0114】
同様に、様々な態様において、一組のゲートスコア308は、一組の量子ゲート304とそれぞれ(例えば、1対1の方法で)対応し得る。よって、一組の量子ゲート304がl個のゲートを含み得るため、一組のゲートスコア308は、l個のスコア:ゲートスコア308(1)からゲートスコア308(l)までを含み得る。様々な事例において、一組のゲートスコア308の各々は、その大きさがQMLモデル106の機能性及び/又は運用性に対する一組の量子ゲート304のうちそれぞれ対応する1つの重要度の相対的レベルを表す及び/又は示す実数値のスカラであり得る。例えば、ゲートスコア308(1)は、量子ゲート304(1)に対応し得、これは、ゲートスコア308(1)が、その値が、QMLモデル106の機能性/運用性を促進するために一組の量子ゲート304内の他の量子ゲートと相対的に量子ゲート304(1)がどの程度重要であるか及び/又はどの程度重要でないかを示す実数値のスカラであり得ることを意味する(例えば、ゲートスコア308(1)のより高い値は、量子ゲート304(1)がQMLモデル106にとって重要度がより高いことを示し得、その一方で、ゲートスコア308(1)のより低い値は、量子ゲート304(1)がQMLモデル106にとって重要度がより低いことを示し得る)。別の例として、ゲートスコア308(l)は、量子ゲート304(l)に対応し得、これは、ゲートスコア308(l)が、その値が、QMLモデル106の機能性/運用性を促進するために一組の量子ゲート304内の他の量子ゲートと相対的に量子ゲート304(l)がどの程度重要であるか及び/又はどの程度重要でないかを示す実数値のスカラであり得ることを意味する(例えば、ゲートスコア308(l)のより高い値は、量子ゲート304(l)がQMLモデル106にとって重要度がより高いことを示し得、その一方で、ゲートスコア308(l)のより低い値は、量子ゲート304(l)がQMLモデル106にとって重要度がより低いことを示し得る)。
【0115】
様々な実施形態において、一組の変数重要度スコア110は、任意の好適な量子回路分析技法を介して生成され得る。非限定的な例として、単変量フィッシャースコアは、QMLモデル106について計算され得、一組の変数重要度スコア110は、そのような単変量フィッシャースコアに等しくあり得る及び/あるいは基づき得る。別の非限定的な例として、ローカルスコープシャープレイ値は、QMLモデル106について計算され得、一組の変数重要度スコア110は、そのようなローカルスコープシャープレイ値に等しくあり得る及び/あるいは基づき得る。更に別の非限定的な例として、QMLモデル106の入力変数に関するQMLモデル106の学習可能パラメータの標準が計算され得、一組の変数重要度スコア110は、そのような標準に等しくあり得る及び/あるいは基づき得る。
【0116】
図1に戻って参照すると、様々な実施形態において、テストデータ112は、様々な入力された量子状態及び様々なそれぞれ対応する出力された量子状態を表していると考えられ得る。これは更に、図4に関して説明される。
【0117】
図4は、本明細書で説明される1又は複数の実施形態に係る、テストデータ112の非限定的なブロック図400の例を示す。
【0118】
示されるように、テストデータ112は、一組の入力された量子状態402及び/又は一組の出力された量子状態404を含み得る。様々な態様において、一組の入力された量子状態402は、任意の好適な正の整数kについて、k個の量子状態:入力された量子状態402(1)から入力された量子状態402(k)までを含み得る。様々な事例において、一組の出力された量子状態404は、一組の入力された量子状態402にそれぞれ(例えば、1対1の方法で)対応し得る。したがって、一組の入力された量子状態402がk個の量子状態を含み得るため、一組の出力された量子状態404は、同様に、k個の量子状態:出力された量子状態404(1)から出力された量子状態404(k)までを含み得る。様々な場合において、一組の入力された量子状態402の各々及び/又は一組の出力された量子状態404の各々は、2の次元を有するベクトルであり得る。様々な態様において、一組の出力された量子状態404は、一組の入力された量子状態402に対応するとして知られる及び/あるいはみなされるグラウンドトゥルースであると考えられ得る。例えば、出力された量子状態404(1)は、入力された量子状態402(1)に対応するとして知られる/みなされるグラウンドトゥルースであり得る。同様に出力された量子状態404(k)は、入力された量子状態402(k)に対応するとして知られる/みなされるグラウンドトゥルースであり得る。
【0119】
本明細書における開示は、主に、一組の入力された量子状態402の各々が一組の出力された量子状態404の各々と同じサイズ/次元を有する様々な実施形態を説明するが、これは、例示及び/又は説明を容易にするための単なる非限定的な例である。様々な態様において、出力された量子状態は、対応する入力された量子状態と比べて異なるサイズ/次元を有し得る。例えば、いくつかの場合において、入力された量子状態402(1)は、2の次元を有し得、出力された量子状態404(1)は、2の次元を有し得る、ここで、q≠m(例えば、q<m)である。すなわち、QMLモデル106が生成するように構成されている出力は、いくつかの場合において、QMLモデル106が受け取るように構成されている入力と比べて異なるサイズ/次元を有し得る。
【0120】
図1に戻って参照すると、量子コンピューティングシステムヴォールト104からのどの量子コンピューティングシステムがQMLモデル106に適切であるかを決定することが望ましい場合がある。本明細書で説明されるように、量子コンピューティング選択システム102は、訓練結合マップ108、一組の変数重要度スコア110、及び/又はテストデータ112に基づいて、そのような決定を促進し得る。
【0121】
様々な実施形態において、量子コンピューティング選択システム102は、プロセッサ114(例えば、コンピュータ処理ユニット、マイクロプロセッサ)及びプロセッサ114に動作可能に接続及び/又は連結された非一時的コンピュータ可読メモリ116を備え得る。メモリ116は、プロセッサ114による実行時に、プロセッサ114及び/又は量子コンピューティング選択システム102の他のコンポーネント(例えば、アクセスコンポーネント118、マップコンポーネント120、調整コンポーネント122、選択コンポーネント124、及び/又は実行コンポーネント126)に1又は複数の動作を実行させ得るコンピュータ実行可能命令を格納し得る。様々な実施形態において、メモリ116は、コンピュータ実行可能コンポーネント(例えば、アクセスコンポーネント118、マップコンポーネント120、調整コンポーネント122、選択コンポーネント124、及び/又は実行コンポーネント126)を格納し得、プロセッサ114は、コンピュータ実行可能コンポーネントを実行し得る。
【0122】
様々な実施形態において、量子コンピューティング選択システム102は、アクセスコンポーネント118を備え得る。様々な態様において、アクセスコンポーネント118は、任意の好適な方法で、量子コンピューティングシステムヴォールト104に電子的にアクセスし得、それにより、量子コンピューティング選択システム102は、一組の量子コンピューティングシステム202を電子的に初期化、電子的にアクティブ化(例えば、パワーアップ)、電子的に非アクティブ化(例えば、パワーダウン)、及び/あるいは電子的に制御/アクセスし得る。更に、様々な事例において、アクセスコンポーネント118は、任意の好適なデータ構造から及び/又は任意の好適なコンピューティングデバイスから、QMLモデル106、訓練結合マップ108、一組の変数重要度スコア110、及び/又はテストデータ112を電子的に受け取る、読み出す、取得する、インポートし得る及び/あるいはアクセスし得る。例えば、ユーザデバイス(例えば、ユーザのラップトップコンピュータ、ユーザのデスクトップコンピュータ、及び/又はユーザのスマートフォン)は、QMLモデル106、訓練結合マップ108、一組の変数重要度スコア110、及び/又はテストデータ112をアクセスコンポーネント118に電子的に伝送し得る。任意の場合において、アクセスコンポーネント118は、量子コンピューティングシステムヴォールト104、QMLモデル106、訓練結合マップ108、一組の変数重要度スコア110、及び/又はテストデータ112に電子的にアクセスする(例えば、それからデータ及び/又はプログラム命令を送る及び/又は受け取る)ことができ、その結果、量子コンピューティング選択システム102の他のコンポーネントは、量子コンピューティングシステムヴォールト104、QMLモデル106、訓練結合マップ108、一組の変数重要度スコア110、及び/又はテストデータ112と電子的に相互作用し得る。
【0123】
様々な実施形態において、量子コンピューティング選択システム102は更に、マップコンポーネント120を備え得る。様々な態様において、本明細書で説明されるように、マップコンポーネント120は、量子コンピューティングシステムヴォールト104に基づいて及び/又は訓練結合マップ108に基づいて、一組の結合マップ類似度スコアを生成し得る。
【0124】
様々な実施形態において、量子コンピューティング選択システム102は更に、調整コンポーネント122を備え得る。様々な事例において、本明細書で説明されるように、調整コンポーネント122は、一組の結合マップ類似度スコアに基づいて、一組の変数重要度スコア110に基づいて、及び/又はテストデータ112に基づいて、QMLモデル106の一組の調整されたバージョンを生成し得る。
【0125】
様々な実施形態において、量子コンピューティング選択システム102は更に、選択コンポーネント124を備え得る。様々な場合において、本明細書で説明されるように、選択コンポーネント124は、一組の結合マップ類似度スコアに基づいて及び/又はQMLモデル106の一組の調整されたバージョンに基づいて、量子コンピューティングシステムヴォールト104から、QMLモデル106に適切である量子コンピューティングシステムを選択/特定し得る。
【0126】
様々な実施形態において、量子コンピューティング選択システム102は更に、実行コンポーネント126を備え得る。様々な態様において、本明細書で説明されるように、実行コンポーネント126は、QMLモデル106、及び/又はQMLモデル106の調整されたバージョンを、選択された量子コンピューティングシステム上で実行し得る。
【0127】
図5は、本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進し得る一組の結合マップ類似度スコアを含む非限定的なシステム500の例のブロック図を示す。示されるように、システム500は、いくつかの場合において、システム100と同じコンポーネントを備え得、更に、一組の結合マップ類似度スコア502を備え得る。
【0128】
様々な実施形態において、マップコンポーネント120は、量子コンピューティングシステムヴォールト104に基づいて及び/又は訓練結合マップ108に基づいて、一組の結合マップ類似度スコア502を電子的に生成し得る。様々な態様において、一組の結合マップ類似度スコア502は、訓練結合マップ108に関して、一組の結合マップ204のそれぞれがどの程度類似するのか及び/又はどの程度似ていないのかを示していると考えられ得る。これは更に、図6図7に関して説明される。
【0129】
図6図7は、本明細書で説明される1又は複数の実施形態に係る、一組の結合マップ類似度スコア502がどのように生成され得るのかを示す非限定的なブロック図600及び700の例を示す。
【0130】
様々な実施形態において、図6に示されるように、一組の結合マップ類似度スコア502は、一組の結合マップ204にそれぞれ(例えば、1対1の方法で)対応し得る。したがって、一組の結合マップ204がn個のマップを含み得るので、一組の結合マップ類似度スコア502は、n個のスコア;類似度スコア502(1)から類似度スコア502(n)までを含み得る。
【0131】
様々な態様において、マップコンポーネント120は、訓練結合マップ108を一組の結合マップ204のそれぞれと比較することによって、一組の結合マップ類似度スコア502を生成し得る。
【0132】
例えば、示されるように、類似度スコア502(1)は、結合マップ204(1)に対応し得る。したがって、マップコンポーネント120は、結合マップ204(1)を訓練結合マップ108と比較することによって、類似度スコア502(1)を計算し得る。より具体的には、類似度スコア502(1)は、その継続的に変動する及び/又は離散的に変動する大きさが、結合マップ204(1)が訓練結合マップ108とどの程度類似する及び/又はどの程度似ていないかを示す、表す、及び/あるいは伝え得る実数値のスカラであり得る。更により具体的には、マップコンポーネント120は、結合マップ204(1)及び訓練結合マップ108の間の任意の好適なサブグラフマッチングメトリックを計算することによって、類似度スコア502(1)を生成し得る。
【0133】
上で言及されるように、サブグラフマッチングメトリックは、グラフ理論からの任意の好適な機能及び/又は任意の好適なアルゴリズムであり得、その機能/アルゴリズムは、引数として、2つのグラフを取り得、互いに2つの入力されたグラフがどの程度遠く離れているかを表す(例えば、頂点及びエッジの配置が2つの入力されたグラフの間でどの程度異なるのかを表す、及び/又は頂点/エッジプロパティが2つの入力されたグラフの間でどの程度異なるのかを表す)スカラを結果として生成し得る。非限定的な例として、サブグラフマッチングメトリックは、グロモフ・ハウスドルフ距離であり得る。別の非限定的な例として、サブグラフマッチングメトリックは、マンハッタン距離であり得る。更に別の非限定的な例として、サブグラフマッチングメトリックは、グラフ編集距離であり得る。更に別の非限定的な例として、サブグラフマッチングメトリックは、Min/Max類似度尺度であり得る。様々な場合において、2つのグラフの間の類似度の程度は、そのような2つのグラフの間のサブグラフマッチングメトリックの大きさが増加するにつれて減少し得る(例えば、そのような増大したサブグラフマッチングメトリックは、2つのグラフの間のより長い距離を示し得、これは、より低い類似度及びより高い不同性を意味し得る)。
【0134】
それゆえ、様々な態様において、マップコンポーネント120は、結合マップ204(1)及び訓練結合マップ108の間のサブグラフマッチングメトリック(例えば、グロモフ・ハウスドルフ距離、マンハッタン距離、グラフ編集距離)を計算し得、マップコンポーネント120は、そのようなサブグラフマッチングメトリックに基づいて、類似度スコア502(1)を算出し得る。いくつかの事例において、類似度スコア502(1)は、サブグラフマッチングメトリックに等しくあり得る。そのような場合において、結合マップ204(1)及び訓練結合マップ108の間の類似度の程度は、類似度スコア502(1)の値/大きさが増加するにつれて減少し得る。他の事例において、類似度スコア502(1)は、サブグラフマッチングメトリックの任意の他の好適な数学的関数であり得る。例えば、類似度スコア502(1)は、サブグラフマッチングメトリックの逆数に基づき得る。そのような場合において、結合マップ204(1)及び訓練結合マップ108の間の類似度の程度は、類似度スコア502(1)の値/大きさが増加するにつれて増加し得る。任意の場合において、類似度スコア502(1)は、(量子ビットの配置、量子ビット間接続の配置、量子ビットのプロパティ/重み、及び/又は量子ビット間接続のプロパティ/重みの観点から)結合マップ204(1)が訓練結合マップ108と比較してどの程度類似するのか及び/又はどの程度似ていないのかを示し得る。
【0135】
図5に示される別の例として、類似度スコア502(n)は、結合マップ204(n)に対応し得る。したがって、マップコンポーネント120は、結合マップ204(n)を訓練結合マップ108と比較することによって、類似度スコア502(n)を計算し得る。まさに上記のように、類似度スコア502(n)は、その継続的に変動する及び/又は離散的に変動する大きさが、結合マップ204(n)が訓練結合マップ108とどの程度類似する及び/又はどの程度似ていないかを示す、表す、及び/あるいは伝え得る実数値のスカラであり得る。上述もされるように、マップコンポーネント120は、結合マップ204(n)及び訓練結合マップ108の間の任意の好適なサブグラフマッチングメトリック(例えば、グロモフ・ハウスドルフ距離、マンハッタン距離、グラフ編集距離、Min/Max類似度尺度)を計算することによって、類似度スコア502(n)を生成し得、マップコンポーネント120は、そのようなサブグラフマッチングメトリックに基づいて、類似度スコア502(n)を算出し得る。いくつかの事例において、類似度スコア502(n)は、サブグラフマッチングメトリックに等しくあり得る。そのような場合において、結合マップ204(n)及び訓練結合マップ108の間の類似度の程度は、類似度スコア502(n)の値/大きさが増加するにつれて減少し得る。他の事例において、類似度スコア502(n)は、サブグラフマッチングメトリックの任意の他の好適な数学的関数であり得る。例えば、類似度スコア502(n)は、サブグラフマッチングメトリックの逆数に基づき得る。そのような場合において、結合マップ204(n)及び訓練結合マップ108の間の類似度の程度は、類似度スコア502(n)の値/大きさが増加するにつれて増加し得る。任意の場合において、類似度スコア502(n)は、(量子ビットの配置、量子ビット間接続の配置、量子ビットのプロパティ/重み、及び/又は量子ビット間接続のプロパティ/重みの観点から)結合マップ204(n)が訓練結合マップ108と比較してどの程度類似するのか及び/又はどの程度似ていないのかを示し得る。
【0136】
図面において明示的に示されていないが、任意の好適な閾値類似度スコアが存在し得る。様々な態様において、閾値類似度スコアは、任意の2つの結合マップの間のトポロジカルな一致を示す及び/あるいは画定し得る。より具体的には、任意の2つの結合マップの間の類似度の程度が、そのような2つの結合マップの間のサブグラフマッチングメトリックが増加するにつれて減少し得るので、閾値類似度スコアは、最小限の及び/又は最小化されたサブグラフマッチングメトリックに対応する類似度スコアの何らかの値/大きさに等しくあり(及び/あるいはそれに基づき)得る。非限定的な例として、閾値類似度スコアは、ゼロのグロモフ・ハウスドルフ距離を示す何らかの類似度スコア値に等しくあり得る。別の非限定的な例として、閾値類似度スコアは、ゼロのマンハッタン距離を示す何らかの類似度スコア値に等しくあり得る。更に別の非限定的な例として、閾値類似度スコアは、ゼロのグラフ編集距離を示す何らかの類似度スコア値に等しくあり得る。しかし、これらは、単なる非限定的な例である。様々な他の場合において、閾値類似度スコアは、サブグラフマッチングメトリックの任意の好適な事前決定された値に対応する類似度スコアの何らかの値/大きさに等しくあり(及び/あるいはそれに基づき)得る。非限定的な例として、閾値類似度スコアは、任意の好適な、事前定義された、非ゼロのグロモフ・ハウスドルフ距離を示す何らかの類似度スコア値に等しくあり得る。別の非限定的な例として、閾値類似度スコアは、任意の好適な、事前定義された、非ゼロのマンハッタン距離を示す何らかの類似度スコア値に等しくあり得る。更に別の非限定的な例として、閾値類似度スコアは、任意の好適な、事前定義された、非ゼロのグラフ編集距離を示す何らかの類似度スコア値に等しくあり得る。
【0137】
これらの場合のいずれかにおいて、2つの結合マップの間の類似度スコアが閾値類似度スコアを満たす場合、(i)2つの結合マップが互いにトポロジ的に一致する;又は(ii)2つの結合マップのうち一方の少なくとも1つのサブグラフが2つの結合マップのうち他方とトポロジ的に一致すると結論付けられ得る。対照的に、2つの結合マップの間の類似度スコアが閾値類似度スコアを満たすことに失敗する場合、(iii)2つの結合マップが互いにトポロジ的に一致しない;及び(iv)2つの結合マップのいずれかのサブグラフが2つの結合マップのうち他方とトポロジ的に一致しないと結論付けられ得る。
【0138】
したがって、マップコンポーネント120は、一組の結合マップ204の各々のための類似度スコア(例えば、502の1つ)を計算し得、そのような類似度スコアは、閾値類似度スコアを満たす又は満たすことに失敗するのいずれかであり得る。例えば、類似度スコア502(1)が閾値類似度スコアを満たす場合、結合マップ204(1)が、訓練結合マップ108と同じ(又は十分に類似する)量子ビットの配置及び量子ビット間接続を有し、及び/又は同じ(又は十分に類似する)量子ビットプロパティ及び/又は量子ビット間接続プロパティを有すると結論付けられ得る。これは、QMLモデル106が、変化なしで、修正なしで、及び/あるいは元々訓練されている状態で、量子コンピューティングシステム202(1)上で正確に実行され得ることを意味し得る。すなわち、量子コンピューティングシステム202(1)は、QMLモデル106に適切であると考えられ得る。その一方で、類似度スコア502(1)が閾値類似度値を満たすことに失敗する場合、結合マップ204(1)が、訓練結合マップ108と同じ(又は十分に類似する)量子ビットの配置及び量子ビット間接続を有さず、及び/又は同じ(又は十分に類似する)量子ビットプロパティ及び量子ビット間接続プロパティを有さないと結論付けられ得る。これは、QMLモデル106が、変化なしで、修正なしで、及び/あるいは元々訓練されている状態で、量子コンピューティングシステム202(1)上で正確に実行され得ないことを意味し得る。すなわち、量子コンピューティングシステム202(1)は、QMLモデル106に不適切であると考えられ得る。
【0139】
別の例として、類似度スコア502(n)が閾値類似度値を満たす場合、結合マップ204(n)が、訓練結合マップ108と同じ(又は十分に類似する)量子ビットの配置及び量子ビット間接続を有し、及び/又は同じ(又は十分に類似する)量子ビットプロパティ及び量子ビット間接続プロパティを有すると結論付けられ得る。これは、QMLモデル106が、変化なしで、修正なしで、及び/あるいは元々訓練されている状態で、量子コンピューティングシステム202(n)上で正確に実行され得ることを意味し得る。すなわち、量子コンピューティングシステム202(n)は、QMLモデル106に適切であると考えられ得る。その一方で、類似度スコア502(n)が閾値類似度値を満たすことに失敗する場合、結合マップ204(n)が、訓練結合マップ108と同じ(又は十分に類似する)量子ビットの配置及び量子ビット間接続を有さず、及び/又は同じ(又は十分に類似する)量子ビットプロパティ及び量子ビット間接続プロパティを有さないと結論付けられ得る。これは、QMLモデル106が、変化なしで、修正なしで、及び/あるいは元々訓練されている状態で、量子コンピューティングシステム202(n)上で正確に実行され得ないことを意味し得る。すなわち、量子コンピューティングシステム202(n)は、QMLモデル106に不適切であると考えられ得る。
【0140】
図7は、そのような結合マップ比較を明確化することに役立つためのいくつかの非限定的な例を示す。図7に示されるように、4つの結合を有する5つの量子ビット(例えば、量子ビット706から量子ビット710まで)で構成された結合マップ701が存在し得、4つの結合を有する5つの量子ビット(例えば、量子ビット711から量子ビット715まで)で構成された結合マップ702が存在し得、23個の結合を有する20個の量子ビット(例えば、量子ビット716から量子ビット735まで)で構成された結合マップ703が存在し得、12個の結合を有する10個の量子ビット(例えば、量子ビット736から量子ビット745まで)で構成された結合マップ704が存在し得、及び/又は6つの結合を有する5つの量子ビット(例えば、量子ビット746から量子ビット750まで)で構成された結合マップ705が存在し得る。
【0141】
様々な態様において、類似度スコアが結合マップ701及び結合マップ702の間で計算される場合、そのような類似度スコアは、閾値類似度スコアを満たし得る。すなわち、結合マップ701及び結合マップ702の間で計算されたサブグラフマッチングメトリックは、結合マップ701のトポロジを結合マップ702のトポロジから分離する最小化された(例えば、ゼロの)距離を示し得る。それゆえ、(i)結合マップ701は、結合マップ702とトポロジ的に一致する;又は(ii)結合マップ701は、結合マップ702のサブグラフとトポロジ的に一致すると結論付けられ得る。図7の具体的で非限定的な例において、オプション(i)は、真であり得る(例えば、結合マップ701は、結合マップ702と同じ量子ビットの配置及び量子ビット間接続を有し得る)。
【0142】
様々な事例において、類似度スコアが結合マップ701及び結合マップ703の間で計算される場合、そのような類似度スコアもまた、閾値類似度スコアを満たし得る。すなわち、結合マップ701及び結合マップ703の間で計算されたサブグラフマッチングメトリックは、結合マップ701のトポロジを結合マップ703のトポロジから分離する最小化された(例えば、ゼロの)距離を示し得る。それゆえ、(i)結合マップ701は、結合マップ703とトポロジ的に一致する;又は(ii)結合マップ701は、結合マップ703のサブグラフとトポロジ的に一致すると結論付けられ得る。図7の具体的で非限定的な例において、オプション(ii)は、真であり得る(例えば、結合マップ701は、量子ビット716、717、718、722及び721によって与えられたサブグラフ等の、結合マップ703のサブグラフと同じ量子ビットの配置及び量子ビット間接続を有し得る)。
【0143】
様々な場合において、類似度スコアが結合マップ701及び結合マップ704の間で計算される場合、そのような類似度スコアもまた、閾値類似度スコアを満たし得る。すなわち、結合マップ701及び結合マップ704の間で計算されたサブグラフマッチングメトリックは、結合マップ701のトポロジを結合マップ704のトポロジから分離する最小化された(例えば、ゼロの)距離を示し得る。それゆえ(i)結合マップ701は、結合マップ704とトポロジ的に一致する;又は(ii)結合マップ701は、結合マップ704のサブグラフとトポロジ的に一致すると結論付けられ得る。図7の具体的で非限定的な例において、オプション(ii)は、真であり得る(例えば、結合マップ701は、量子ビット736、737、738、741及び742によって与えられたサブグラフ等の、結合マップ704のサブグラフと同じ量子ビットの配置及び量子ビット間接続を有し得る)。
【0144】
対照的に、類似度スコアが結合マップ701及び結合マップ705の間で計算される場合、そのような類似度スコアは、閾値類似度スコアを満たすことに失敗し得る。すなわち、結合マップ701及び結合マップ705の間で計算されたサブグラフマッチングメトリックは、結合マップ701のトポロジを結合マップ705のトポロジから分離する最小化されていない(例えば、非ゼロの)距離を示し得る。それゆえ、(iii)結合マップ701は、結合マップ705とトポロジ的に一致しない;又は(ii)結合マップ701は、結合マップ705のいずれのサブグラフともトポロジ的に一致しないと結論付けられ得る。
【0145】
任意の場合において、マップコンポーネント120は、量子コンピューティングシステムヴォールト104に基づいて及び/又は訓練結合マップ108に基づいて、一組の結合マップ類似度スコア502を生成し得る。なお、様々な場合において、一組の結合マップ類似度スコア502は、一組の量子コンピューティングシステム202にそれぞれ対応していると考えられ得る。例えば、類似度スコア502(1)は、結合マップ204(1)に対応し得、結合マップ204(1)は、量子コンピューティングシステム202(1)に対応し得る。同様に、類似度スコア502(n)は、結合マップ204(n)に対応し得、結合マップ204(n)は、量子コンピューティングシステム202(n)に対応し得る。
【0146】
本明細書における開示は、マップコンポーネント120が一組の量子コンピューティングシステム202の各々につき1つの類似度スコアを生成する様々な実施形態を主に説明するが、これは、例示/説明を容易にするための単なる非限定的な例である。様々な態様において、マップコンポーネント120は、一組の量子コンピューティングシステム202のうち1又は複数の量子コンピューティングシステムのための類似度スコアを生成することを避け得る。例えば、いくつかの事例において、マップコンポーネント120は、現時点で利用可能であり、現時点で実行されておらず、及び/あるいは現時点で占有されていない量子コンピューティングシステムのみのために類似度スコアを生成し得る。逆に、マップコンポーネント120は、現時点で利用不可であり、現時点で実行されており、及び/あるいは現時点で占有されている任意の量子コンピューティングシステムのための類似度スコアを生成することを避け得る。
【0147】
なお、いくつかの実施形態において量子コンピューティングシステムのいくつかの部分は、現時点で利用可能であり、現時点で実行されておらず、及び/あるいは現時点で占有されていないと考えられ得、量子コンピューティングシステムのいくつかの他の部分は、現時点で利用不可であり、現時点で実行されており、及び/あるいは現時点で占有されていると同時に考えられ得る。例えば、結合マップ703に対応する量子コンピューティングシステムを考える。したがって、そのような量子コンピューティングシステムは、20個の量子ビット及び23個の結合を有すると考えられ得る。その量子コンピューティングシステムの20個の量子ビットの第1サブセットが現時点で利用不可であり、現時点で実行されており、及び/あるいは現時点で占有されていると仮定し、更に、その量子コンピューティングシステムの20個の量子ビットの残りの部分が現時点で利用可能であり、現時点で実行されておらず、及び/あるいは現時点で占有されていないと仮定する。そのような場合において、マップコンポーネント120は、その量子コンピューティングシステムのための類似度スコアを計算する場合、量子コンピューティングシステムの第1サブセットを無視し得、量子コンピューティングシステムの残りの部分のみを考慮し得る。例えば、量子コンピューティングシステムの20個の量子ビットのうち7個が現時点で利用不可であり、その量子コンピューティングシステムの20個の量子ビットのうち残っている13個が現時点で利用可能であると仮定する。そのような場合において、結合マップ703のための類似度スコアを計算する場合、マップコンポーネント120は、現時点で利用不可である7個の量子ビットを無視/度外視し得る(及び/又はそれら7個の量子ビットの結合を無視/度外視し得る)。代わりに、結合マップ703のための類似度スコアを計算する場合、マップコンポーネント120は、現時点で利用可能である13個の量子ビットのみを考慮し得る(及び/又はそれら13個の量子ビットの結合を考慮し得る)。
【0148】
図8は、本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進し得る、一組の調整された量子機械学習モデル及び/又は一組の正確性レベルを備える非限定的なシステム800の例のブロック図を示す。示されるように、システム800は、いくつかの場合において、システム500と同じコンポーネントを備え得、更に、一組の調整された量子機械学習モデル802(以降「一組の調整されたQMLモデル802」)及び/又は一組の正確性レベル804を備え得る。
【0149】
様々な実施形態において、一組の結合マップ類似度スコア502のいずれも閾値類似度スコアを満たさないこと(例えば、QMLモデル106が一組の量子コンピューティングシステム202のいずれもの上で適切に実行可能でない場合)に応じて、調整コンポーネント122は、一組の変数重要度スコア110に基づいて及び/又はテストデータ112に基づいて、一組の調整されたQMLモデル802及び/又は一組の正確性レベル804を電子的に生成し得る。これは更に、図9図10に関して説明される。
【0150】
図9は、本明細書で説明される1又は複数の実施形態に係る、一組の調整されたQMLモデル802がどのように生成され得るのかを示す非限定的なブロック図900の例を示す。
【0151】
様々な実施形態において、示されるように、一組の結合マップ類似度スコア502の各々が閾値類似度スコアを満たすことに失敗する場合、調整コンポーネント122は、量子コンピューティングシステムヴォールト104内の各量子コンピューティングシステムのための1又は複数のQMLモデル106の調整されたバージョンを電子的に作成し得る。
【0152】
非限定的な例として、本明細書で説明されるように、調整コンポーネント122は、量子コンピューティングシステム202(1)上で実行可能である一組の調整されたモデル802(1)を生成し得る。様々な事例において、一組の調整されたモデル802(1)は、任意の好適な正の整数pについて、p個の調整されたQMLモデル:調整されたQMLモデル802(1)(1)から調整されたQMLモデル802(1)(p)までを含み得る。様々な態様において、そのようなp個の調整されたQMLモデルの各々は、量子コンピューティングシステム202(1)によってサポートされる及び/あるいはその上で実行可能されるQMLモデル106の調整、編集、操作、及び/又は緩和されたバージョンであると考えられ得る。
【0153】
いくつかの場合において、調整コンポーネント122は、以下の、非限定的な反復法の例を使用して一組の調整されたモデル802(1)のいずれかを生成し得る。
【0154】
まず、様々な態様において、調整コンポーネント122は、(A)QMLモデル106のコピーを作成し得る。
【0155】
次に、様々な事例において、調整コンポーネント122は、(B)そのようなコピーから、一組の量子ゲート304のうち残っている量子ゲートのうち最も低いゲートスコアを有するものどれでも、及び/又は一組の論理量子ビット302のうち残っている論理量子ビットのうち最も低い量子ビットスコアを有するものどれでも除去(例えば、削除)し得る。すなわち、動作(B)において、調整コンポーネント122は、変数重要度スコアが増大する順序で、QMLモデル106のコピーから、1又は複数の量子ゲート及び/又は1又は複数の論理量子ビットを除去し得る。しかし、これは、単なる非限定的な例である。他の実施形態において、調整コンポーネント122は、ランダム順序で、QMLモデル106のコピーから、1又は複数の量子ゲート及び/又は1又は複数の論理量子ビットを除去し得る。これらの場合のいずれかにおいて、調整コンポーネント122は、量子ゲート及び/又は論理量子ビットを除去/削除することによって、QMLモデル106の現在修正中のコピーを生成し得る。
【0156】
続いて、様々な場合において、調整コンポーネント122は、(C)そのような現在修正中のコピーが量子コンピューティングシステム202(1)上で実行可能であるかどうかをチェックし得る。QMLモデル106の現在修正中のコピーがまだ量子コンピューティングシステム202(1)上で実行可能でない場合、調整コンポーネント122は、動作(B)に戻り得る。その一方で、QMLモデル106の現在修正中のコピーが量子コンピューティングシステム202(1)上で実行可能である場合、調整コンポーネント122は、一組の調整されたモデル802(1)にQMLモデル106のそのような現在修正中のコピーを記録/ロギングし得る。
【0157】
様々な実施形態において、調整コンポーネント122は、任意の好適な技法によって、動作(c)において特定されたチェックを実行し得る(例えば、現在修正中のコピーが量子コンピューティングシステム202(1)上で実行可能であるかどうかをチェックし得る)。
【0158】
非限定的な例として、調整コンポーネント122は、QMLモデル106の現在修正中のコピーを量子コンピューティングシステム202(1)上で実行することを試みることによって、そのようなチェックを実行し得る。そのような試みられた実行が失敗する場合(例えば、そのような試みられた実行に応じて、量子コンピューティングシステム202(1)が少なくとも1つのコンパイルエラー及び/又は少なくとも1つのランタイムエラーを返す場合)、調整コンポーネント122は、QMLモデル106の現在修正中のコピーがまだ量子コンピューティングシステム202(1)上で実行可能でないと推測/決定し得る。その一方で、そのような試みられた実行が成功する場合(例えば、そのような試みられた実行に応じて、量子コンピューティングシステム202(1)が少なくとも1つのコンパイルエラー及び/又は少なくとも1つのランタイムエラーを返さない場合)、調整コンポーネント122は、代わりに、QMLモデル106の現在修正中のコピーが量子コンピューティングシステム202(1)上で実行可能であると推測/決定し得る。
【0159】
別の非限定的な例として、調整コンポーネント122は、QMLモデル106と相応に訓練結合マップ108を修正すること;及び結合マップ204(1)及びそのような訓練結合マップ108の修正されたバージョンの間の新しい類似度スコアを計算することによって、動作(C)において特定されたチェックを実行し得る。
【0160】
例えば、上で言及されるように、調整コンポーネント122は、動作(B)において、1又は複数の量子ゲート及び/又は1又は複数の論理量子ビットを除去することによって、QMLモデル106の現在修正中のコピーを作成し得る。様々な態様において、そのような量子ゲート及び/又は論理量子ビットの除去の後、QMLモデル106の現在修正されたバージョンによってもはや利用されない、訓練結合マップ108内の1又は複数の特定の量子ビット及び/又は1又は複数の特定の量子ビット間接続が存在する可能性があり得る。すなわち、QMLモデル106の現在修正されたバージョンの残っている量子ゲートのいずれもがその上で実行されない、訓練結合マップ108内の特定の量子ビット及び/又は特定の量子ビット間接続が存在し得る。更に言い換えれば、動作(B)におけるQMLモデル106からの量子ゲート及び/又は論理量子ビットの除去は、使用されない、訓練結合マップ108のそれらの特定の量子ビット及び/又はそれらの特定の量子ビット間接続をレンダリングし得る。したがって、様々な態様において、調整コンポーネント122は、訓練結合マップ108から、それらの特定の現在使用されていない量子ビット及び/又はそれらの特定の現在使用されていない量子ビット間接続を除去し得、それによって訓練結合マップ108の修正されたバージョンをもたらす。
【0161】
このように、調整コンポーネント122は、QMLモデル106の現在修正中のコピーと同等である訓練結合マップ108の修正されたバージョンを生成し得る。様々な態様において、マップコンポーネント120は、上述されるように、訓練結合マップ108の修正されたバージョン及び結合マップ204(1)の間の新しい類似度スコアを計算し得る。そのような新しい類似度スコアが閾値類似度スコアを満たす場合(例えば、訓練結合マップ108の修正されたバージョンが結合マップ204(1)とトポロジ的に一致する又は結合マップ204(1)の任意のサブグラフとトポロジ的に一致する場合)であれば、調整コンポーネント122は、QMLモデル106の現在修正中のコピーが量子コンピューティングシステム202(1)上で実行可能であると推測/決定し得る。対照的に、そのような新しい類似度スコアが閾値類似度スコアを満たすことに失敗する場合(例えば、訓練結合マップ108の修正されたバージョンが結合マップ204(1)とトポロジ的に一致しない及び結合マップ204(1)のあらゆるサブグラフとトポロジ的に一致しない場合)であれば、調整コンポーネント122は、代わりに、QMLモデル106の現在修正中のコピーがまだ量子コンピューティングシステム202(1)上で実行可能でないと結論付け得る。
【0162】
別の非限定的な例として、本明細書で説明されるように、調整コンポーネント122は、量子コンピューティングシステム202(n)上で実行可能である一組の調整されたモデル802(n)を生成し得る。様々な事例において、一組の調整されたモデル802(n)は、任意の好適な正の整数pについて、p個の調整されたQMLモデル:調整されたQMLモデル802(n)(1)から調整されたQMLモデル802(n)(p)までを含み得る。まさに上記のように、そのようなp個の調整されたQMLモデルの各々は、量子コンピューティングシステム202(n)によってサポートされる及び/あるいはその上で実行可能されるQMLモデル106の調整、編集、操作、及び/又は緩和されたバージョンであると考えられ得る。
【0163】
いくつかの場合において、上述されるのと同様に、調整コンポーネント122は、以下の非限定的な反復法の例を使用して一組の調整されたモデル802(n)のいずれかを生成し得る。
【0164】
まず、まさに上記のように、調整コンポーネント122は、(A)QMLモデル106のコピーを作成し得る。
【0165】
次に、まさに上記のように、調整コンポーネント122は、(B)変数重要度スコアが増大する順序で又はランダム順序のいずれかで、そのようなコピーから、1又は複数の量子ゲート及び/又は1又は複数の論理量子ビットを除去し得る。任意の場合において、調整コンポーネント122は、量子ゲート及び/又は論理量子ビットを除去/削除することによって、QMLモデル106の現在修正中のコピーを生成し得る。
【0166】
続いて、様々な場合において、調整コンポーネント122は、(C')そのような現在修正中のコピーが量子コンピューティングシステム202(n)上で実行可能であるかどうかをチェックし得る。QMLモデル106の現在修正中のコピーがまだ量子コンピューティングシステム202(n)上で実行可能でない場合、調整コンポーネント122は、動作(B)に戻り得る。その一方で、QMLモデル106の現在修正中のコピーが量子コンピューティングシステム202(n)上で実行可能である場合、調整コンポーネント122は、一組の調整されたモデル802(n)にQMLモデル106のそのような現在修正中のコピーを記録/ロギングし得る。
【0167】
上述されるのと同様に、調整コンポーネント122は、任意の好適な技法によって、動作(C')において特定されたチェックを実行し得る(例えば、現在修正中のコピーが量子コンピューティングシステム202(n)上で実行可能であるかどうかをチェックし得る)。非限定的な例として、調整コンポーネント122は、QMLモデル106の現在修正中のコピーを量子コンピューティングシステム202(n)上で実行することを試みることによって、そのようなチェックを実行し得る。別の非限定的な例として、調整コンポーネント122は、QMLモデル106と相応に訓練結合マップ108を修正すること(例えば、訓練結合マップ108から、QMLモデル106の調整されたバージョンによってもはや利用されない任意の量子ビット及び/又は量子ビット間接続を除去すること);及び結合マップ204(n)及びそのような訓練結合マップ108の修正されたバージョンの間の新しい類似度スコアを計算することによって、そのようなチェックを実行し得る。
【0168】
任意の場合において、調整コンポーネント122は、量子コンピューティングシステムヴォールト104内の量子コンピューティングシステムの各々のための1又は複数のQMLモデル106の調整されたバージョンを生成し得る。様々な態様において、調整されたQMLモデル802(1)(1)から調整されたQMLモデル802(n)(p)までは、一組の調整されたQMLモデル802として集合的に考えられ得る。
【0169】
図9は、一組の調整されたモデル802(n)を一組の調整されたモデル802(1)と同じ数のモデル(例えば、p)を有するものとして示すが、これは、例示を容易にするための単なる非限定的な例である。様々な態様において、一組の調整されたモデル802(n)は、一組の調整されたモデル802(1)と比べて異なる数のモデルを有し得る(例えば、異なる量子コンピューティングシステムが互いに同じ及び/又は異なる数の調整されたQMLモデルに対応し得る)。
【0170】
図10は、本明細書で説明される1又は複数の実施形態に係る、一組の正確性レベル804がどのように生成され得るかを示す非限定的なブロック図1000の例を示す。
【0171】
様々な実施形態において、一組の正確性レベル804は、一組の調整されたQMLモデル802にそれぞれ(例えば、1対1の方法で)対応する一組の実数値のスカラであり得る。すなわち、調整コンポーネント122は、一組の調整されたQMLモデル802の各々のための正確性レベルを計算及び/又は算出し得る。いくつかの場合において、調整コンポーネント122は、テストデータ112に基づいて、そのような正確性レベルを計算/算出し得る。
【0172】
例えば、正確性レベル804(1)(1)は、その大きさが、調整されたQMLモデル802(1)(1)がどの程度よく(例えば、どの程度正確に、どの程度精度よく)実行し得るかを示す/表す実数値のスカラであり得る。様々な態様において、調整コンポーネント122は、(I)テストデータ112から、入力された量子状態及び対応する出力された量子状態を選択すること;(II)選択された入力された量子状態を用いて量子コンピューティングシステム202(1)を初期化すること;(III)そのような初期化の後に、調整されたQMLモデル802(1)(1)を量子コンピューティングシステム202(1)上で実行し、それにより調整されたQMLモデル802(1)(1)が結果として生じる量子状態を生成すること;(IV)結果として生じる量子状態及び選択された出力された量子状態の間の差分を計算すること;(V)テストデータ112内の入力された量子状態及び出力された量子状態のk個のペア全てについて(I)~(IV)を繰り返し、それによって合計k個の計算された差分をもたらすこと;及び/又は(VI)そのようなk個の計算された差分に基づいて正確性レベル804(1)(1)を算出することによって、正確性レベル804(1)(1)を計算し得る。様々な場合において、正確性レベル804(1)(1)は、そのようなk個の計算された差分の平均値/中間値に等しくあり得る及び/あるいは基づき得る。様々な態様において、(I)~(IV)は、テストデータ112を使用した、量子コンピューティングシステム202(1)上での調整されたQMLモデル802(1)(1)のテストランを実行することであると考えられ得、及び/又は(I)~(V)は、テストデータ112を使用した、量子コンピューティングシステム202(1)上での調整されたQMLモデル802(1)(1)のk個のテストランを実行することであると考えられ得る。
【0173】
別の例として、正確性レベル804(1)(p)は、その大きさが、調整されたQMLモデル802(1)(p)がどの程度よく(例えば、どの程度正確に、どの程度精度よく)実行し得るかを示す/表す実数値のスカラであり得る。まさに上記と同様に、調整コンポーネント122は、テストデータ112を使用して、量子コンピューティングシステム202(1)上で調整されたQMLモデル802(1)(p)のk個のテストランを行い、それによって一組のk個の計算された差分をもたらすこと;及びそのようなk個の計算された差分に基づいて、正確性レベル804(1)(p)を算出することによって、正確性レベル804(1)(p)を計算し得る。様々な場合において、正確性レベル804(1)(1)から正確性レベル804(1)(p)までは、一組の正確性レベル804(1)と称され得る。
【0174】
更に別の例として、正確性レベル804(n)(1)は、その大きさが、調整されたQMLモデル802(n)(1)がどの程度よく(例えば、どの程度正確に、どの程度精度よく)実行し得るかを示す/表す実数値のスカラであり得る。まさに上記と同様に、調整コンポーネント122は、テストデータ112を使用して、量子コンピューティングシステム202(n)上で調整されたQMLモデル802(n)(1)のk個のテストランを行い、それによって一組のk個の計算された差分をもたらすこと;及びそのようなk個の計算された差分に基づいて、正確性レベル804(n)(1)を算出することによって、正確性レベル804(n)(1)を計算し得る。
【0175】
更に別の例として、正確性レベル804(n)(p)は、その大きさが、調整されたQMLモデル802(n)(p)がどの程度よく(例えば、どの程度正確に、どの程度精度よく)実行し得るかを示す/表す実数値のスカラであり得る。まさに上記と同様に、調整コンポーネント122は、テストデータ112を使用して、量子コンピューティングシステム202(n)上で調整されたQMLモデル802(n)(p)のk個のテストランを行い、それによって一組のk個の計算された差分をもたらすこと;及びそのようなk個の計算された差分に基づいて、正確性レベル804(n)(p)を算出することによって、正確性レベル804(n)(p)を計算し得る。様々な場合において、正確性レベル804(n)(1)から正確性レベル804(n)(p)までは、一組の正確性レベル804(n)と称され得る。
【0176】
様々な態様において、正確性スコアは、占有されていない/利用可能である量子コンピューティングシステム上で算出され得、及び/又はその正確性スコアは、占有された/利用不可の量子コンピューティングシステム上で算出され得ない(例えば、テストランは、現時点で占有されている量子コンピューティングシステム上で実装/実行され得ない)。
【0177】
任意の場合において、調整コンポーネント122は、テストデータ112を活用して、QMLモデルの各調整されたバージョン106のための正確性スコアを算出し得る。
【0178】
図11は、本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進し得る選択された量子コンピューティングシステムを備える非限定的なシステム1100の例のブロック図を示す。示されるように、システム1100は、いくつかの場合において、システム800と同じコンポーネントを備え得、更に、選択された量子コンピューティングシステム1102を備え得る。
【0179】
様々な実施形態において、選択コンポーネント124は、一組の結合マップ類似度スコア502に基づいて及び/又は一組の正確性レベル804に基づいて、一組の量子コンピューティングシステム202の1つをQMLモデル106に適切であるとして(及び/又はQMLモデル106の調整されたバージョンに適切であるとして)電子的に選択、選出、及び/又は特定し得る。任意の場合において、そのような選択された、選出された、及び/又は特定された量子コンピューティングシステムは、選択された量子コンピューティングシステム1102と称され得る。
【0180】
非限定的な例として、選択された量子コンピューティングシステム1102は、一組の量子コンピューティングシステム202のうち閾値類似度スコアを満たす結合マップ類似度スコアを有するものどれでもよい。1つより多くのそのような量子コンピューティングシステムが存在する場合であれば、選択コンポーネント124は、そのような1つより多くの量子コンピューティングシステムの中から、任意の好適な優先順位の順序に従って選択/選出し得る。例えば、選択された量子コンピューティングシステム1102は、そのような1つより多くの量子コンピューティングシステムのうち現時点で利用可能である、現時点で占有されていない、及び/又は最も低いキュー時間を有するものどれでもよい。他の場合において、選択された量子コンピューティングシステム1102は、そのような1つより多くの量子コンピューティングシステムのうち最も小さい数の量子ビットを有するものどれでもよい。更に他の場合において、選択された量子コンピューティングシステム1102は、そのような1つより多くの量子コンピューティングシステムのうち最も高い量子ビットフィデリティ、最も高い量子ビットコヒーレンス時間、最も低い量子ビットノイズレベル、及び/又は最も低い量子ビットエラー率に関連付けられたものどれでもよい。更に他の場合において、選択された量子コンピューティングシステム1102は、そのような1つより多くの量子コンピューティングシステムのうち最も低い、最も安価な、及び/又は最も高価でない金銭的コスト(例えば、量子コンピューティングシステムを使用/占有するのに1時間当たり最も小さい金銭的価格)に関連付けられたものどれでもよい。
【0181】
様々な実施形態において、実行コンポーネント126は、電子メッセージを電子的に生成し得及び/又はそれを(例えば、不図示の任意の好適なコンピューティングデバイスに)伝送し得、そのような電子メッセージは、選択された量子コンピューティングシステム1102がQMLモデル106に適切であることを示し得る。すなわち、電子メッセージは、QMLモデル106が選択された量子コンピューティングシステム1102上で正確に実行可能であること及び/あるいはそれによってサポートされることを示し得る。いくつかの場合において、電子メッセージは更に、選択された量子コンピューティングシステム1102に関係する任意の他の好適な情報(例えば、選択された量子コンピューティングシステム1102に関連付けられたキュー時間;選択された量子コンピューティングシステム1102に関連付けられた量子ビットノイズレベル;選択された量子コンピューティングシステム1102に関連付けられた量子ビットフィデリティ)を示し得る。
【0182】
様々な他の実施形態において、実行コンポーネント126は、選択された量子コンピューティングシステム1102上でQMLモデル106を電子的に実行し得る。より具体的には、実行コンポーネント126は、任意の好適なユーザ提供の量子状態初期化を用いて選択された量子コンピューティングシステム1102を初期化し;及び/又はそのような初期化の後、選択された量子コンピューティングシステム1102上でQMLモデル106を実行し、それによって結果として生じる量子状態をもたらし得る。いくつかの場合において、実行コンポーネント126は、結果として生じる量子状態を任意の他の好適なコンピューティングデバイスと電子的に共有し得る。
【0183】
別の非限定的な例として、一組の結合マップ類似度スコア502のいずれもが閾値類似度スコアを満たさない場合、選択コンポーネント124は、一組の調整されたQMLモデル802のうちどれが最も高い/最良の正確性レベルを有するかを特定し得、選択された量子コンピューティングシステム1102は、一組の量子コンピューティングシステム202のうちそのようなQMLモデル106の調整されたバージョンに対応する(例えば、実行することが可能であるとして調整コンポーネント122によってチェックされた)ものどれでもよい。まさに上記のように、1つより多くのそのような量子コンピューティングシステムが存在する場合であれば、選択コンポーネント124は、任意の好適な優先順位の順序に従って(例えば、可用性及び/又はキュー時間に従って、量子ビットフィデリティに従って、量子ビットノイズレベルに従って、及び/又は量子ビットエラー率に従って)そのような1つより多くの量子コンピューティングシステムの中から選択/選出し得る。
【0184】
様々な実施形態において、実行コンポーネント126は、電子メッセージを電子的に生成し得及び/又はそれを(例えば、不図示の任意の好適なコンピューティングデバイスに)伝送し得、そのような電子メッセージは、一組の量子コンピューティングシステム202のいずれもがQMLモデル106(例えば、QMLモデル106の元の、変更されていないバージョン)に適切でないことを示し得る。様々な態様において、しかし、電子メッセージは更に、選択された量子コンピューティングシステム1102が最も高い/最良の正確性レベルを有するQMLモデル106の調整されたバージョンに適切であることを示し得る。まさに上記のように、電子メッセージは更に、選択された量子コンピューティングシステム1102に関係する任意の他の好適な情報(例えば、選択された量子コンピューティングシステム1102に関連付けられたキュー時間;選択された量子コンピューティングシステム1102に関連付けられた量子ビットノイズレベル;選択された量子コンピューティングシステム1102に関連付けられた量子ビットフィデリティ)を示し得る。
【0185】
更に他の場合において、電子メッセージは、代わりに、そのような一組の量子コンピューティングシステム202、そのような複数の量子コンピューティングシステムに対応する複数の調整されたQMLモデル、及び/又はそのような複数の調整されたQMLモデルの正確性レベルのうち複数を示し得る。例えば、実行コンポーネント126は、様々な態様において、一組の量子コンピューティングシステム202から、(任意の好適な正の整数x<nについての)x個の量子コンピューティングシステムを特定し得る。様々な態様において、そのようなx個の量子コンピューティングシステムのいくつかは、QMLモデル106自体に(例えば、QMLモデル106の元の、変更されていないバージョンに)対応し得、そのようなx個の量子コンピューティングシステムのうち他のものは、QMLモデル106の異なる調整されたバージョンに(例えば、トップの及び/又は最も正確なQMLモデル106の調整されたバージョンに)に対応し得る。そのような場合において、そのようなx個の量子コンピューティングシステムの正確性レベル(及び/又はコヒーレンス時間、エラー率、ノイズレベル、及び/又は金銭的コスト等の任意の他の情報)は、実行コンポーネント126によって伝送され、レンダリングされ、及び/又は伝えられ得る。
【0186】
様々な他の実施形態において、実行コンポーネント126は、選択された量子コンピューティングシステム1102上で、選択された量子コンピューティングシステム1102に対応するQMLモデルの調整されたバージョンどれでも電子的に実行し得る。すなわち、まさに上記のように、実行コンポーネント126は、任意の好適なユーザ提供の量子状態初期化を用いて選択された量子コンピューティングシステム1102を初期化し;及び/又は、そのような初期化の後、選択された量子コンピューティングシステム1102上でQMLモデル106の調整されたバージョンを実行し、それによって結果として生じる量子状態をもたらし得る。再び、いくつかの場合において、実行コンポーネント126は、結果として生じる量子状態を任意の他の好適なコンピューティングデバイスと電子的に共有し得る。
【0187】
図12図15は、本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進し得る、非限定的なコンピュータ実装方法1200、1300、1400及び1500の例のフロー図を示す。様々な場合において、量子コンピューティング選択システム102は、コンピュータ実装方法1200、1300、1400及び/又は1500を促進し得る。
【0188】
第1に、図12を考える。様々な実施形態において、動作1202は、プロセッサに動作可能に連結されたデバイスによって(例えば、118を介して)、QMLモデル(例えば、106)、QMLモデルに関連付けられた訓練結合マップ(例えば、108)、QMLモデルに関連付けられた変数重要度スコア(例えば、110)、及び/又はQMLモデルに関連付けられたテストデータ(例えば、112)にアクセスする段階を有し得る。いくつかの場合において、上で言及されるように、訓練結合マップは、QMLモデルがその上で訓練された特定の量子コンピューティングシステムの接続性トポロジを示し得る。
【0189】
様々な態様において、動作1204は、デバイスによって(例えば、118を介して)一組の量子コンピューティングシステム(例えば、202)にアクセスする段階を有し得る。
【0190】
様々な事例において、動作1206は、デバイスによって(例えば、120を介して)、その一組のうち量子コンピューティングシステムのいずれかがまだ結合マップ類似度スコアを有さないかどうかを決定する段階を有し得る。そうでない場合(例えば、あらゆる量子コンピューティングシステムが既に結合マップ類似度スコアを有する場合)、コンピュータ実装方法1200は、コンピュータ実装方法1300の動作1302に進み得る。その一方で、そうである場合(例えば、少なくとも1つの量子コンピューティングシステムがまだ結合マップ類似度スコアを有さない場合)、コンピュータ実装方法1200は、動作1208に進み得る。
【0191】
様々な場合において、動作1208は、一組の量子コンピューティングシステムから、まだ結合マップ類似度スコアを有さない量子コンピューティングシステムを選択する段階を有し得る。様々な態様において、これは、任意の好適な選択の優先順位順序(例えば、可用性、キュー時間、量子ビットカウント、フィデリティ、ノイズレベル、エラー率)に基づき得る。
【0192】
様々な事例において、動作1210は、デバイスによって(例えば、120を介して)、選択された(例えば、1208において選択された)量子コンピューティングシステムの結合マップ(例えば、204の1つ)及び訓練結合マップの間の結合マップ類似度スコア(例えば、502の1つ)を計算する段階を有し得る。様々な場合において、これは、グロモフ・ハウスドルフ距離、マンハッタン距離、グラフ編集距離、及び/又はMin/Max類似度尺度等の任意の好適なサブグラフマッチングメトリックに基づき得る。示されるように、コンピュータ実装方法1200は、動作1206に戻り得る。
【0193】
なお、いくつかの場合において、デバイスは、その一組のうちの1又は複数の量子コンピューティングシステムのための、以前計算した1又は複数の結合マップ類似度スコアを有し得、そのような1又は複数の結合マップ類似度スコアは、コンピュータ化されたメモリに電子的に格納/記録されていてよい。そのような場合において、そのような以前算出された結合マップ類似度スコアは、デバイスによって、再計算される必要なく(例えば、デバイスは、そのような量子コンピューティングシステムのために動作1208~1210を反復処理する必要がなく)、再呼出し及び/又はクエリされ得る。しかし、所与の量子コンピューティングシステムが以前算出された結合マップ類似度スコアを有する場合であっても、所与の量子コンピューティングシステムがその以前の結合マップ類似度スコアが算出されてから変化していた/更新されていた場合(例えば、その所与の量子コンピューティングシステムの量子ビットの総数及び/又は量子ビットトポロジが変化していた/更新されていた場合、その所与の量子コンピューティングシステムの量子ビットプロパティ及び/又は量子ビット間接続プロパティが変化していた/更新されていた場合)、及び/又はその以前の結合マップ類似度スコアが算出されてから、QMLモデルが異なる量子コンピューティングシステム上で再訓練された場合、デバイスは、そのような所与の量子コンピューティングシステムのために結合マップ類似度スコアを再算出し得る(例えば、動作1208及び1210を反復処理し得る)。
【0194】
ここで、図13を考える。様々な実施形態において、動作1302は、デバイスによって(例えば、124を介して)、その一組のうちいずれかの量子コンピューティングシステムが閾値(例えば、上で説明した閾値類似度スコア)を満たす結合マップ類似度スコアを有するかどうかを決定する段階を有し得る。上で説明されるように、そのような閾値は、最小化された及び/あるいは事前定義されたサブグラフマッチングメトリックを示す何らかの類似度スコア値/大きさに等しくあり得る及び/あるいは基づき得る。閾値を満たす結合マップ類似度スコアがない場合、コンピュータ実装方法1300は、コンピュータ実装方法1400の動作1402に進み得る。その一方で、少なくとも1つの結合マップ類似度スコアが閾値を満たす場合、コンピュータ実装方法1300は、動作1304に進み得る。
【0195】
様々な態様において、動作1304は、デバイスによって(例えば、124を介して)、一組の量子コンピューティングシステムから、その結合マップ類似度スコアが閾値を満たす量子コンピューティングシステム(例えば、1102)を選択する段階を有し得る。様々な事例において、そのような選択は、1つより多くのそのような量子コンピューティングシステムが存在する場合、任意の好適な優先順位の順序に基づき(例えば、可用性、キュー時間、量子ビットカウント、フィデリティ、ノイズレベル、エラー率に基づき)得る。
【0196】
様々な場合において、動作1306は、デバイスによって(例えば、126を介して)、ユーザ提供の量子状態初期化が利用可能であるか及び/あるいは受け取られている/インポートされているかどうかを決定する段階を有し得る。そうでない場合、コンピュータ実装方法1300は、動作1310に進み得る。その一方で、そうである場合、コンピュータ実装方法1300は、動作1308に進み得る。
【0197】
様々な態様において、動作1308は、デバイスによって(例えば、126を介して)、ユーザ提供の量子状態初期化に基づいて、選択された(例えば、1304において選択された)量子コンピューティングシステム上でQMLモデルを実行する段階を有し得る。
【0198】
様々な事例において、動作1310は、デバイスによって(例えば、126を介して)、選択された(例えば、1304において選択された)量子コンピューティングシステムがQMLモデルに適切であることを示す電子メッセージを生成、伝送、及び/又はディスプレイする段階を有し得る。すなわち、電子メッセージは、QMLモデルが選択された量子コンピューティングシステム上で実行され得る及び/あるいはそれよってサポートされ得ることを示し得る。
【0199】
ここで、図14を考える。様々な実施形態において、動作1402は、デバイスによって(例えば、122を介して)、それのためにQMLモデルの調整されたバージョンがまだ作成及び/又は評価されていない量子コンピューティングシステムがその一組に存在するかどうかを決定する段階を有し得る。そうでない場合(例えば、QMLモデルの調整されたバージョンがその一組内のあらゆる量子コンピューティングシステムのために作成/評価されている場合)、コンピュータ実装方法1400は、コンピュータ実装方法1500の動作1502に進み得る。その一方で、そうである場合(例えば、それのためにQMLモデルの調整されたバージョンがまだ作成及び/又は評価されていない、少なくとも1つの量子コンピューティングシステムがその一組に存在する場合)、コンピュータ実装方法1400は、動作1404に進み得る。
【0200】
様々な態様において、動作1404は、デバイスによって(例えば、122を介して)、一組の量子コンピューティングシステムから、それためにQMLモデルの調整されたバージョンがまだ作成/評価されていない量子コンピューティングシステムを選択する段階を有し得る。様々な事例において、そのような選択は、任意の好適な優先順位の順序に基づき得る(例えば、結合マップ類似度スコアが減少する順序であり得る)。
【0201】
様々な事例において、動作1406は、デバイスによって(例えば、122を介して)、選択された(例えば、1404において選択された)量子コンピューティングシステム上で実行可能である1又は複数のQMLモデルの調整されたバージョン(例えば、一組の調整されたモデル802(n))を生成する段階を有し得る。様々な場合において、これは、変数重要度スコアが増大する順序で及び/又はランダム順序で、QMLモデルから論理量子ビット及び/又は量子ゲートを反復的に除去することによって、促進され得る。
【0202】
様々な態様において、動作1408は、デバイスによって(例えば、122を介して)、1又は複数のQMLモデルの調整されたバージョンの各々のための正確性レベル(例えば、一組の正確性レベル804(n))を計算する段階を有し得る。様々な場合において、これは、テストデータに従って、選択された(例えば、1404において選択された)量子コンピューティングシステム上で1又は複数のQMLモデルの調整されたバージョンの各々を実行することによって促進され得る。様々な場合において、示されるように、コンピュータ実装方法1400は、動作1402に戻り得る。
【0203】
なお、いくつかの場合において、デバイスは、その一組のうち任意の特定の量子コンピューティングシステムのための以前生成された1又は複数のQMLモデルの調整されたバージョンを有し得、そのような1又は複数の調整されたバージョンは、コンピュータ化されたメモリに電子的に格納/記録されていてよい。そのような場合において、そのような1又は複数の以前生成されたQMLモデルの調整されたバージョンは、デバイスによって、スクラッチから再生成される必要なく(例えば、デバイスがそのような量子コンピューティングシステムのために動作1404~1408を反復処理する必要なく)、再呼出し及び/又はクエリされ得る。しかし、所与の量子コンピューティングシステムが以前生成されたQMLモデルの調整されたバージョンに対応する場合であっても、所与の量子コンピューティングシステムがその以前のQMLモデルの調整されたバージョンが生成されてから変化した/更新された場合(例えば、その所与の量子コンピューティングシステムの量子ビットの総数及び/又は量子ビットトポロジが変化していた/更新されていた場合、及び/又はその所与の量子コンピューティングシステムの量子ビットプロパティ及び/又は量子ビット間接続プロパティが変化していた/更新されていた場合)、及び/又はその以前の調整されたバージョンが生成されてから、QMLモデルが異なる量子コンピューティングシステム上で再訓練された場合、デバイスは、そのような所与の量子コンピューティングシステムのためにQMLモデルの調整されたバージョンを再生成し得る(例えば、動作1404~1408を反復処理し得る)。
【0204】
ここで、コンピュータ実装方法1500を考える。様々な実施形態において、動作1502は、デバイスによって(例えば、124を介して)、最も高い及び/又は最良の正確性レベル(例えば、804の1つ)を有するQMLモデルの調整されたバージョン(例えば、802の1つ)を特定する段階を有し得る。様々な態様において、動作1502は更に、デバイスによって(例えば、124を介して)、一組の量子コンピューティングシステムから、特定されたQMLモデルの調整されたバージョンがそのために作成された量子コンピューティングシステム(例えば、1102)(例えば、特定されたQMLモデルの調整されたバージョンをサポート及び/又は実行し得る量子コンピューティングシステム)を特定する段階を有し得る。そのような特定/選択は、1つより多くのそのような量子コンピューティングシステムが存在する場合、任意の好適な優先順位の順序に基づき(例えば、可用性、キュー時間、量子ビットカウント、フィデリティ、ノイズレベル、エラー率に基づき)得る。
【0205】
様々な事例において、動作1504は、デバイスによって(例えば、126を介して)、ユーザ提供の量子状態初期化が利用可能であるか及び/あるいは受け取られている/インポートされているかどうかを決定する段階を有し得る。そうでない場合、コンピュータ実装方法1500は、動作1508に進み得る。その一方で、そうである場合、コンピュータ実装方法1500は、動作1506に進み得る。
【0206】
様々な態様において、動作1506は、デバイスによって(例えば、126を介して)、ユーザ提供の量子状態初期化に基づいて、特定されたQMLモデルの調整されたバージョンを特定された(例えば、1502において特定された)量子コンピューティングシステム上で実行する段階を有し得る。
【0207】
様々な事例において、動作1508は、デバイスによって(例えば、126を介して)、一組の量子コンピューティングシステムのいずれもがQMLモデルに適切でないことを示すが、特定された(例えば、1502において特定された)量子コンピューティングシステムが特定されたQMLモデルの調整されたバージョンに適切であることも示す電子メッセージを生成、伝送、及び/又はディスプレイする段階を有し得る。すなわち、電子メッセージは、特定されたQMLモデルの調整されたバージョンが特定された量子コンピューティングシステム上で実行され得る及び/あるいはサポートされ得ることを示し得る。
【0208】
図16図18は、本明細書で説明される1又は複数の実施形態に係る、非限定的な実験結果の例のブロック図1600、1700及び1800を示す。
【0209】
具体的には本発明者は、4つの入力特徴(例えば、sepal length(がく辺の長さ)、sepal width(がく辺の幅)、petal length(花弁の長さ)、petal width(花弁の幅))及び2つの出力クラス(例えば、versicolor(バージカラー)クラス及びvirginica(バージニカ)クラス)に伴う二項分類問題を考えた。様々な態様において、QMLモデルは、そのような二項分類問題を評価するために作成された。特に、図16の符号1602によって示される特徴マップが作られ、そのような特徴マップは、反転テストを介して、図16の符号1604によって示されるカーネル算出回路に変換された。様々な場合において、そのようなカーネル算出回路は、QMLモデルであると考えられ得る。様々な態様において、そのようなカーネル算出回路は、既知のテストデータセット上で実行され、カーネル算出回路は、97%の正確性スコアを達成した。
【0210】
様々な事例において、制御Zゲートは、図17の符号1702によって示されるように、特徴マップから除去された。そのような調整された特徴マップへの反転テストの適用は、図17の符号1704によって示されるカーネル算出回路をもたらした。そのようなカーネル算出回路は、97%の正確性スコアをもたらして、既知のテストデータセット上で実行された。
【0211】
様々な他の事例において、第2量子ビットは、図18の符号1802によって示されるように、特徴マップから除去された。そのような調整された特徴マップへの反転テストの適用は、図18の符号1804によって示されるカーネル算出回路をもたらした。そのようなカーネル算出回路は、62%の正確性スコアをもたらして、既知のテストデータセット上で実行された。
【0212】
これらの実験結果は、調整コンポーネント122の機能性/パフォーマンスを検証するのに役立つ。すなわち、本発明者は、QMLモデルがいくつかの量子ゲート及び/又はいくつかの論理量子ビットの除去の後においても依然として十分な正確性を示し得るように、QMLモデルのパラメータ設定には、非ゼロ量の冗長性が存在する場合が多いことを理解した。実際に、上記の非限定的な例において示されるように、制御Zゲートの除去は、QMLモデルの正確性に影響しなかった一方で、第2量子ビットの除去は、QMLモデルがランダムと比べてより良好な(例えば、コイントスより良好な)正確性を有することを依然として可能にする。この正確性スコアにつながった訓練及び実行は、シングル量子システム上で実行された。
【0213】
様々な場合において、ユーザは、これらの結果を提供され得、そのような調整されたモデルのうちどれを実行/実行するべきかを決定し得る。例えば、カーネル1604を訓練及び/又は実行するために使用された量子コンピュータが利用不可である場合があり得る。カーネル1704を実行することが可能な量子コンピュータもまた利用不可である場合が更にあり得る。しかし、カーネル1804を実行することが可能な量子コンピュータが利用可能である場合があり得る。そのような事例において、ユーザは、62%の正確性率がカーネル1804の実行を請け負うのに十分であるのか否かを決定し得る。ユーザの見解において62%が十分に高い場合(例えば、モデルが、高い正確性が最も重要ではない、重要度の低いフィールド/文脈に関与する場合がある)、ユーザは、利用可能な量子コンピュータ上でカーネル1804を現在実行することを決定す得る。その一方で、ユーザの見解において62%が十分に高くない場合(例えば、モデルが、高い正確性が最も重要である、重要度の高いフィールド/文脈に関与する場合がある)、ユーザは、カーネル1804を実行することを避けることを決定し得、代わりに、カーネル1604及び/又はカーネル1704を実行することが可能である量子コンピュータのために、キューにおいて待機することを選び得る。
【0214】
図19は、本明細書で説明される1又は複数の実施形態に係る、結合マップ比較を介した量子システム選択を促進し得る非限定的なコンピュータ実装方法1900の例のフロー図を示す。様々な場合において、量子コンピューティング選択システム102は、コンピュータ実装方法1900を促進し得る。
【0215】
様々な実施形態において、動作1902は、プロセッサに動作可能に連結されたデバイスによって(例えば、118を介して)、QMLモデル(例えば、106)にアクセスする段階を有し得る。
【0216】
様々な態様において、動作1904は、デバイスによって(例えば、124を介して)、一組の量子コンピューティングシステム(例えば、202)から、量子機械学習モデルのための量子コンピューティングシステム(例えば、1102)を、量子コンピューティングシステムの第1結合マップ(例えば、204の1つ)及び量子機械学習モデルがその上で訓練された第2結合マップ(例えば、108)間の比較に基づいて、特定する段階を有し得る。
【0217】
様々な事例において、動作1906は、デバイスによって(例えば、126を介して)、量子機械学習モデル又は量子機械学習モデルの調整されたバージョン(例えば、802の1つ)を量子コンピューティングシステム上で実行する段階を有し得る。
【0218】
図19において明示的に示されていないが、第1結合マップは、そのノードがそれぞれ量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ量子コンピューティングシステムの量子ビット間接続を表すグラフであり得、及び/又は第2結合マップは、そのノードがそれぞれ量子機械学習モデルがその上で訓練された別の量子コンピューティングシステムの量子ビットを表し且つそのエッジがそれぞれ量子機械学習モデルがその上で訓練された別の量子コンピューティングシステムの量子ビット間接続を表すグラフであり得る。更に、様々な場合において、コンピュータ実装方法1900は更に、デバイスによって(例えば、120を介して)、サブグラフマッチングメトリックの演算を介して、第1結合マップ及び第2結合マップ間の比較を促進する段階を有し得る。いくつかの場合において、サブグラフマッチングメトリックは、第1結合マップ及び第2結合マップの間のグロモフ・ハウスドルフ距離又はマンハッタン距離であり得る。
【0219】
図19において明示的に示されていないが、第2結合マップは、第1結合マップとトポロジ的に一致し得、又は第1結合マップのサブグラフとトポロジ的に一致し得る。そのような場合において、デバイスは、量子機械学習モデルを量子コンピューティングシステム上で実行するように構成されていてよい。
【0220】
図19において明示的に示されていないが、第2結合マップは、第1結合マップとトポロジ的に一致することに失敗し得、及び第1結合マップのあらゆる/任意のサブグラフとトポロジ的に一致することに失敗し得る。そのような場合において、コンピュータ実装方法1900は更に、デバイスによって(例えば、118を介して)、量子機械学習モデルと関連付けられている一組の変数重要度スコア(例えば、110)にアクセスする段階;及びデバイスによって(例えば、122を介して)、一組の変数重要度スコアに基づいて、量子機械学習モデルを調整し、それによって、量子機械学習モデルの調整されたバージョンをもたらす段階を備え得る。そのような場合において、デバイスは、量子機械学習モデルの調整されたバージョンを量子コンピューティングシステム上で実行するように構成されていてよい。図19において明示的に示されていないが、コンピュータ実装方法1900は更に、デバイスによって(例えば、122を介して)、1又は複数のテストランを介して(例えば、112に基づいて)、量子機械学習モデルの調整されたバージョンの正確性レベル(例えば、804の1つ)を決定する段階を備え得る。
【0221】
したがって、本明細書で説明される様々な実施形態は、結合マップ比較を介した量子システム選択を促進し得るコンピュータ化されたツールを含む。本明細書で説明されるように、そのようなコンピュータ化されたツールは、過度に単純化したヒューリスティクス及び又は試行錯誤の方法に依拠する既存の技法と比較して、QMLモデルが与えられる場合、適切な量子システムを選択/推奨する可能性がより高くあり得る。したがって、そのようなコンピュータ化されたツールは、量子コンピューティングシステムの分野における具体的で有形の技術的改善を確実に構成する。
【0222】
本明細書における開示は主に、パラメータ化された量子回路としてQMLモデル106の様々な実施形態を説明するが、これは、例示/説明を容易にするための単なる非限定的な例である。様々な実施形態において、QMLモデル106は、任意の他の好適な量子人工知能アーキテクチャを示し得る(例えば、量子ニューラルネットワークであり得る)。
【0223】
本明細書における開示は主に、量子ビットを利用する量子コンピューティングシステムに関係するものとして様々な実施形態を説明するが、これは、説明を容易にするための単なる非限定的な例である。様々な実施形態において、本明細書で説明された教示は、量子ビット、量子トリット、及び/又は任意の好適な形態の量子ビットを含む任意の好適な量子コンピューティングシステムに適用され得る。
【0224】
本明細書における開示は主に、一組の結合マップ204を訓練結合マップ108と比較するものとしてマップコンポーネント120の様々な実施形態を説明するが、これは、例示/説明を容易にするための単なる非限定的な例である。上で言及されるように、調整コンポーネント122は、様々な態様において、QMLモデル106の1又は複数の調整された/緩和されたバージョンを生成し得る。いくつかの事例において、QMLモデル106の任意の所与の調整された/緩和されたバージョンのために、調整コンポーネント122は、訓練結合マップ108の調整された/緩和されたバージョンをそれに対応して及び/又は相応に生成し得る。例えば、調整コンポーネント122が、QMLモデル106をコピーすること及びそのようなコピーから特定の論理量子ビット除去/削除することによって、QMLモデル106の調整された/緩和されたバージョンを生成すると仮定する。そのような場合において、調整コンポーネント122は、訓練結合マップ108を複製すること及び特定の論理量子ビットに対応する(例えば、それを実装する)その複製における1又は複数の物理量子ビットを除去/削除/無視することによって、訓練結合マップ108の調整された/緩和されたバージョンを生成し得る。このようにQMLモデル106を調整/緩和することは、訓練結合マップ108を縮小すること(例えば、マップコンポーネント120によって一組の結合マップ204と比較される結合マップを縮小すること)であると考えられ得る。
【0225】
本明細書における開示は主に、において内の量子コンピューティングシステムにつき1つの結合マップ類似度スコアを生成するものとして様々な実施形態を説明するが、量子コンピューティングシステムヴォールト104は、例示/説明を容易にするための単なる非限定的な例である。様々な態様において、マップコンポーネント120は、量子コンピューティングシステムヴォールト104内の任意の所与の量子コンピューティングシステムのための1つより多くの結合マップ類似度スコアを生成し得る。例えば、いくつかの場合において、マップコンポーネント120は、任意の所与の量子コンピューティングシステムの結合マップの各サブグラフのための結合マップ類似度スコアを生成し得る。例えば、結合マップ703に対応する量子コンピューティングシステムを再び考える。様々な態様において、量子ビット716、717、718、721及び722によって与えられる第1サブグラフは、結合マップ701とトポロジ的に一致していると考えられ得る。それゆえ、結合マップ703は、第1サブグラフに対応する第1類似度スコアを有すると考えられ得る。更に、量子ビット728、729、730、734及び735によって与えられる第2サブグラフはまた、結合マップ701とトポロジ的に一致していると考えれ得る。よって、結合マップ703は、第2サブグラフに対応する第2類似度スコアを有すると考えられ得る。いくつかの場合において、その第2サブグラフは、第1サブグラフと比べて、より良好なコヒーレンス時間、より低いエラー率、及び/又はより低いノイズレベルを有し得る。したがって、そのような場合において、第2類似度スコアは、第1類似度スコアと比べて、より高い及び/又はより良好であり得る。任意の場合において、マップコンポーネント120は、様々な態様において、量子コンピューティングシステムヴォールト104内の任意の所与の量子コンピューティングシステムのための1つより多くの類似度スコアを生成し得る。
【0226】
本明細書における開示は主に、調整コンポーネント122が、テストデータ112に基づいて、一組の調整されたQMLモデル802を実際に実行することによって、一組の正確性レベル804を生成する様々な実施形態を説明するが、これは、単なる非限定的な例である。様々な実施形態において、調整コンポーネント122は、一組の調整されたQMLモデル802を実際に実行することを避け得る。代わりに、そのような場合において、調整コンポーネント122は、任意の好適な予測モデル(例えば、ニューラルネットワーク等の古典的な機械学習モデル)を利用して、一組の正確性レベル804を予測/推測し得る。様々な場合において、そのような予測モデルは、任意の好適な方法(例えば、教師あり訓練、教師なし訓練、強化学習)で訓練され得る。
【0227】
本明細書における開示は、主題のイノベーションの様々な実施形態の非限定的な例を説明する。説明及び/又は説明を容易にするために、本明細書における開示の様々な部分が、主題のイノベーションの様々な実施形態を議論する場合に「それぞれ(each)」という用語を利用する。「それぞれ」という用語のそのような使用は、非限定的な例である。すなわち、本明細書における開示が、いくつかの特定のオブジェクト及び/又はコンポーネントの「それぞれ」に適用される記載を提供する場合、これは、主題のイノベーションの様々な実施形態の非限定的な例であると理解されるべきであり、更に、主題のイノベーションの様々な他の実施形態において、その特定のオブジェクト及び/又はコンポーネントの「それぞれ」よりも少ないものにそのような記載が適用される場合もあり得ることが理解されるべきである。
【0228】
本明細書で説明される様々な実施形態のための追加の文脈を提供すべく、図20及び以下の議論は、本明細書で説明される実施形態の様々な実施形態が実装され得る好適なコンピューティング環境2000を簡潔に一般的に説明することを意図する。実施形態は、1又は複数のコンピュータを実行し得るコンピュータ実行可能命令の一般的な文脈において上述されてきたが、当業者は、実施形態がまた、他のプログラムモジュールとの組み合わせで及び/又はハードウェア及びソフトウェアの組み合わせとしても実装され得ることを認識するであろう。
【0229】
概して、プログラムモジュールは、特定のタスクを実行する、又は、特定の抽象データタイプを実装する、ルーチン、プログラム、コンポーネント、データ構造等を含む。更に、当業者は、その各々が1又は複数の関連付けられたデバイスに動作可能に連結されていてよい、シングルプロセッサ又はマルチプロセッサコンピュータシステム、ミニコンピュータ、メインフレームコンピュータ、モノのインターネット(IoT)デバイス、分散コンピューティングシステム、並びにパーソナルコンピュータ、ハンドヘルドコンピューティングデバイス、及びマイクロプロセッサベースの又はプログラマブルコンシューマエレクトロニクス等を含む、他のコンピュータシステム構成を用いて、発明の方法が実施され得ると認識されるであろう。
【0230】
本明細書における実施形態のうち示された実施形態はまた、特定のタスクが通信ネットワークを通じてリンクされたリモート処理デバイスによって実行される分散型コンピューティング環境において実施され得る。分散型コンピューティング環境において、プログラムモジュールは、ローカル及びリモート両方のメモリストレージデバイスに位置し得る。
【0231】
コンピューティングデバイスは典型的には、その2つの用語が以下のように互いに異なるように本明細書で使用される、コンピュータ可読記憶媒体、機械可読記憶媒体、及び/又は通信媒体を含み得る様々な媒体を含む。コンピュータ可読記憶媒体、又は、機械可読記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な記憶媒体であり得、揮発性及び不揮発性媒体、取り外し可能又は非取り外し可能媒体の両方を含む。限定ではなく例として、コンピュータ可読記憶媒体又は機械可読記憶媒体は、コンピュータ可読又は機械可読命令、プログラムモジュール構造化データ又は非構造化データ等の情報の格納のために、任意の方法又は技術に関連して実装され得る。
【0232】
コンピュータ可読記憶媒体は、限定されないが、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、フラッシュメモリ又は他のメモリ技術、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイディスク(BD)又は他の光学ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気ストレージデバイス、ソリッドステートドライブ又は他のソリッドステートストレージデバイス、又は望ましい情報を格納するために使用され得る他の有形及び/又は非一時的媒体を含み得る。これに関して、本明細書における「有形」又は「非一時的」という用語は、ストレージ、メモリ又はコンピュータ可読媒体に対して適用される場合、一時的な信号自体を修飾子として伝搬しているのみであるものを除外することを理解されるべきであり、一時的な信号自体を伝搬しているのみでない全ての標準的なストレージ、メモリ又はコンピュータ可読媒体に対する権利を放棄しない。
【0233】
コンピュータ可読記憶媒体は、媒体によって格納された情報に関する様々な動作のために、例えば、アクセス要求、クエリ、又は他のデータ取得プロトコルを介して、1又は複数のローカルコンピューティングデバイス又はリモートコンピューティングデバイスによってアクセスされ得る。
【0234】
通信媒体は、典型的には、コンピュータ可読命令、データ構造、プログラムモジュール、又は他の構造化又は非構造化データを、変調されたデータ信号、例えば、搬送波又は他の輸送機構等のデータ信号において具現化し、任意の情報送達、又は輸送媒体を含む。「変調されたデータ信号」という用語又は信号は、その特徴的なセットのうちの1又は複数を有する、又は、1又は複数の信号において情報を符号化するような方式で変更された信号を指す。限定ではなく例として、通信媒体は、有線ネットワーク又は直接的な有線接続のような有線媒体、及び、アコースティック、RF、赤外線及び他のワイヤレス媒体のようなワイヤレス媒体を含む。
【0235】
再び図20を参照して、本明細書で説明される態様の様々な実施形態を実装するための例示的な環境2000は、コンピュータ2002、処理ユニット2004を含むコンピュータ2002、システムメモリ2006、及びシステムバス2008を含む。システムバス2008は、限定されないがシステムメモリ2006を含むシステムコンポーネントを処理ユニット2004に結合する。処理ユニット2004は、商業上入手可能な様々なプロセッサのいずれかであり得る。デュアルマイクロプロセッサ及び他のマルチプロセッサアーキテクチャはまた、処理ユニット2004として利用され得る。
【0236】
システムバス2008は、様々な商業上入手可能なバスアーキテクチャのいずれかを使用する(メモリコントローラを有する又は有さない)メモリバス、ペリフェラルバス、及びローカルバスに更に相互接続し得るいくつかのタイプのバス構造のうちのいずれかであり得る。システムメモリ2006は、ROM2010及びRAM2012を含む。ベーシックインプット/アウトプットシステム(basic input/output system:BIOS)は、ROM等の不揮発性メモリ、消去可能プログラマブルリードオンリメモリ(EPROM)、EEPROMに格納され得、このBIOSは、起動時等の、コンピュータ2002内の要素間で情報を伝達するのに役立つ基本ルーチンを含む。RAM2012はまた、データをキャッシュするためのスタティックRAM等の高速RAMを含み得る。
【0237】
コンピュータ2002は更に、内部ハードディスクドライブ(HDD)2014(例えば、EIDE、SATA)、1又は複数の外部ストレージデバイス2016(例えば、磁気フロッピディスクドライブ(FDD)2016、メモリスティック又はフラッシュドライブリーダ、メモリカードリーダ等)及び、例えば、ソリッドステートドライブ、CD‐ROMディスク、DVD、BD等といったディスク2022から読み又は書き得る、光学ディスクドライブ等のドライブ2020を含む。代替的に、ソリッドステートドライブが関与する場合は、ディスク2022は、分離しない限り、含まれないであろう。内部HDD2014がコンピュータ2002内に位置するように示されているが、内部HDD2014はまた、好適なシャシ(不図示)における外部使用のために構成され得る。追加的に、環境2000において図示していないが、ソリッドステートドライブ(SSD)は、HDD2014に加えて又はそれの代わりに使用され得る。HDD2014、外部ストレージデバイス2016、及びドライブ2020は、HDDインタフェース2024によって、システムバス2008、外部ストレージインタフェース2026、及びドライブインタフェース2028にそれぞれ接続され得る。外部ドライブ実装のためのインタフェース2024は、ユニバーサルシリアルバス(USB)及び米国電気電子学会(Institute of Electrical and Electronics Engineers:IEEE)1394インタフェース技術の少なくとも1つ又は両方を含み得る。他の外部ドライブ接続技術は、本明細書で説明される実施形態の構想内にある。
【0238】
ドライブ及びその関連するコンピュータ可読記憶媒体は、データ、データ構造、コンピュータ実行可能命令等の不揮発性ストレージを提供する。コンピュータ2002については、ドライブ及び記憶媒体は、好適なデジタルフォーマットの任意のデータのストレージに対応する。上でのコンピュータ可読記憶媒体の説明は、ストレージデバイスのそれぞれのタイプを指すが、現在存在するものであっても又は将来開発されるものであっても、コンピュータによって可読である記憶媒体の他のタイプもまた、動作環境の例において使用され得ること、更に、任意のそのような記憶媒体が、本明細書で説明される方法を実行するためのコンピュータ実行可能命令を含み得ることが、当業者によって認識されるべきである。
【0239】
オペレーティングシステム2030、1又は複数のアプリケーションプログラム2032、他のプログラムモジュール2034、及びプログラムデータ2036を含む、いくつかのプログラムモジュールは、ドライブ及びRAM2012に格納され得る。オペレーティングシステム、アプリケーション、モジュール、及び/又はデータの全て又は一部はまた、RAM2012においてキャッシュされ得る。本明細書で説明されるシステム及び方法は様々な商業上入手可能なオペレーティングシステム又はオペレーティングシステムの組み合わせを利用して実装され得る。
【0240】
コンピュータ2002は任意選択的に、エミュレーション技術を含み得る。例えば、ハイパーバイザ(不図示)又は他の中間物は、オペレーティングシステム2030のためのハードウェア環境をエミュレートし得、エミュレートされたハードウェアは任意選択的に、図20に示されるハードウェアとは異なり得る。そのような実施形態において、オペレーティングシステム2030は、コンピュータ2002においてホストされた複数の仮想マシン(VM)のうち1つのVMを備え得る。更に、オペレーティングシステム2030は、アプリケーション2032のためのJava(登録商標)ランタイム環境、又は、NETフレームワーク等のランタイム環境を提供し得る。ランタイム環境は、アプリケーション2032が、ランタイム環境を含む任意のオペレーティングシステムを実行することを可能にする一貫した実行環境である。同様に、オペレーティングシステム2030は、コンテナをサポートし得、アプリケーション2032は、例えば、コード、ランタイム、システムツール、システムライブラリ、及びアプリケーションのための設定を含むソフトウェアの、軽量で、スタンドアロンで、実行可能なパッケージであるコンテナの形態であり得る。
【0241】
更に、コンピュータ2002は、トラステッドプロセッシングモジュール(trusted processing module:TPM)等のセキュリティモジュールに対応し得る。例えばTPMを用いて、ブートコンポーネントは、時間的に次のブートコンポーネントをハッシュし、次のブートコンポーネントをロードする前に、安全性が保証されている値に対する結果の一致のために待機する。このプロセスは、例えば、アプリケーション実行レベルにおいて又はオペレーティングシステム(OS)カーネルレベルにおいて適用されるコンピュータ2002のコード実行スタックにおける任意の層において生じ得、それによってコード実行の任意のレベルにおいてセキュリティを可能にする。
【0242】
ユーザは、1又は複数の有線/ワイヤレス入力デバイス、例えば、キーボード2038、タッチスクリーン2040、及びマウス2042のようなポインティングデバイスを通じてコンピュータ2002にコマンド及び情報を入れ得る。他の入力デバイス(不図示)は、マイクロフォン、赤外線(IR)リモート制御、無線周波数(RF)リモート制御、又は他のリモート制御、ジョイスティック、仮想現実コントローラ及び/又は仮想現実ヘッドセット、ゲームパッド、スタイラスペン、例えば、カメラ等のイメージ入力デバイス、ジェスチャセンサ入力デバイス、視覚動作センサ入力デバイス、感情又は顔検出デバイス、又はバイオメトリック入力デバイス等、例えば、指紋又は虹彩スキャナを含み得る。これら及び他の入力デバイスは、多くの場合、システムバス2008に連結され得る入力デバイスインタフェース2044を通じて処理ユニット2004に接続されているが、パラレルポート、IEEE1394シリアルポート、ゲームポート、USBポート、IRインタフェース、BLUETOOTH(登録商標)インタフェース等といった他のインタフェースによって接続され得る。
【0243】
モニタ2046又は他のタイプのディスプレイデバイスはまた、ビデオアダプタ2048等のインタフェースを介してシステムバス2008に接続され得る。モニタ2046に加えて、コンピュータは、典型的に、スピーカ、プリンタ等といった他の周辺出力デバイス(不図示)を含む。
【0244】
コンピュータ2002は、リモートコンピュータ2050等の1又は複数のリモートコンピュータに対する有線及び/又はワイヤレス通信を介した論理接続を使用して、ネットワーク化された環境において動作し得る。簡潔の目的のために、メモリ/ストレージデバイス2052のみが示されているが、リモートコンピュータ2050は、ワークステーション、サーバコンピュータ、ルータ、パーソナルコンピュータ、ポータブルコンピュータ、マイクロプロセッサベースのエンタテイメント機器、ピアデバイス又は他の一般的なネットワークノードであり得、典型的に、コンピュータ2002に関連して説明される要素の多く又は全てを含む。図示される論理接続は、ローカルエリアネットワーク(LAN)2054及び/又はより大きいネットワーク、例えばワイドエリアネットワーク(WAN)2056に対する有線/ワイヤレス接続を含む。そのようなLAN及びWANネットワーキング環境は、オフィス及び会社において一般的であり、イントラネット等の企業規模のコンピュータネットワークを促進し、企業規模のコンピュータネットワークの全ては、包括的通信ネットワーク、例えば、インターネットに接続し得る。
【0245】
LANネットワーキング環境において使用される場合、コンピュータ2002は、有線及び/又はワイヤレス通信ネットワークインタフェース又はアダプタ2058を通じてローカルネットワーク2054に接続され得る。アダプタ2058は、LAN2054への有線又はワイヤレス通信を促進し得、LAN2054はまた、ワイヤレスモードにおいてアダプタ2058と通信するためにその上に配設されたワイヤレスアクセスポイント(AP)を含み得る。
【0246】
WANネットワーキング環境において使用される場合、コンピュータ2002は、モデム2060を含み得るか、又はインターネットによってのような、WAN2056上の通信を確立するための他の手段を介してWAN2056上の通信サーバに接続され得る。内部又は外部の、有線又はワイヤレスのデバイスであってよいモデム2060は、入力デバイスインタフェース2044を介して、システムバス2008に接続され得る。ネットワーク化された環境において、コンピュータ2002又はその一部に関連して図示されるプログラムモジュールは、リモートメモリ/ストレージデバイス2052に格納されていてよい。例において示されるネットワーク接続及びコンピュータ間で通信リンクを確立する他の手段が使用され得ることを理解されたい。
【0247】
LAN又はWANネットワーキング環境のいずれかにおいて使用される場合、コンピュータ2002は、限定されないが、情報の格納又は処理の1又は複数の態様を提供するネットワーク仮想マシン等の上述された外部ストレージデバイス2016に加えて又はそれの代わりに、クラウドストレージシステム又は他のネットワークベースストレージシステムにアクセスし得る。概して、コンピュータ2002及びクラウドストレージシステムの間の接続が、例えば、アダプタ2058又はモデム2060によって、それぞれLAN2054又はWAN2056を介して確立され得る。コンピュータ2002を関連付けられたクラウドストレージシステムに接続すると、外部ストレージインタフェース2026は、アダプタ2058及び/又はモデム2060の補助を用いて、外部ストレージの他のタイプを管理するように、クラウドストレージシステムによって提供されたストレージを管理し得る。例えば、外部ストレージインタフェース2026は、それらソースがコンピュータ2002に物理的に接続されているかのように、クラウドストレージソースへのアクセスを提供するように構成されていてよい。
【0248】
コンピュータ2002は、例えば、プリンタ、スキャナ、デスクトップ及び/又はポータブルコンピュータ、ポータブルデータアシスタント、通信衛星、ワイヤレスで検出可能なタグ(例えば、キオスク、ニューススタンド、店舗の棚等)に関連付けられた任意の機器又は位置、及び電話のような、無ワイヤレス通信において動作可能に配設された任意のワイヤレスデバイス又はエンティティと通信するように動作可能であり得る。これは、ワイヤレスフィデリティ(Wireless Fidelity:Wi-Fi(登録商標))及びBLUETOOTH(登録商標)ワイヤレス技術を含み得る。それゆえ、通信は、従来のネットワークと同様に予め定義された構造であってよく、又は単純に、少なくとも2つのデバイスの間におけるアドホック通信であってよい。
【0249】
ここで図21を参照すると、例示的なクラウドコンピューティング環境2100が図示されている。示されるように、クラウドコンピューティング環境2100は、1又は複数のクラウドコンピューティングノード2102を備え、例えば、パーソナルデジタルアシスタント(PDA(登録商標))又は携帯電話2104、デスクトップコンピュータ2106、ラップトップコンピュータ2108、及び/又は自動車コンピュータシステム2110等の、クラウドコンシューマに使用されるローカルコンピューティングデバイスが、クラウドコンピューティングノード2102を用いて通信してよい。ノード2102は、互いに通信してよい。それらは、本明細書の上記で説明されるようなプライベート、コミュニティ、パブリック、又はハイブリッドクラウド、又はそれらの組み合わせ等の、1又は複数のネットワーク内で物理的に又は仮想的にグループ化されてよい(不図示)。これにより、クラウドコンピューティング環境2100は、クラウドコンシューマがローカルコンピューティングデバイス上でリソースを維持する必要がないサービスとして、インフラストラクチャ、プラットフォーム及び/又はソフトウェアを提供できる。図21に示されるコンピューティングデバイス2104-2110のタイプは、例示のみを意図するものであり、また、コンピューティングノード2102及びクラウドコンピューティング環境2100は、任意のタイプのネットワーク及び/又はネットワークアドレス指定可能な接続を通して(例えば、ウェブブラウザを使用して)、任意のタイプのコンピュータ化されたデバイスと通信し得ることが理解される。
【0250】
ここで図22を参照すると、クラウドコンピューティング環境2100(図21)によって提供される一組の機能抽象化層が示されている。本明細書で説明される他の実施形態において利用される同様の要素の繰り返しの説明は、簡潔さのために省略する。図22に示されたコンポーネント、層、及び機能が、例示のみを意図するものであり、本明細書で説明される実施形態がそれに限定されないことを、前もって理解されるべきである。図示のように、以下の各層及び対応する機能が提供される。
【0251】
ハードウェア及びソフトウェア層2202は、ハードウェア及びソフトウェアコンポーネントを含む。ハードウェアコンポーネントの例は、メインフレーム2204;RISC(縮小命令セットコンピュータ)アーキテクチャベースのサーバ2206;サーバ2208;ブレードサーバ2210;ストレージデバイス2212;及びネットワーク及びネットワーキングコンポーネント2214を含む。いくつかの実施形態において、ソフトウェアコンポーネントは、ネットワークアプリケーションサーバソフトウェア2216及びデータベースソフトウェア2218を備える。
【0252】
仮想化層2220は、仮想サーバ2222;仮想ストレージ2224;仮想プライベートネットワークを含む仮想ネットワーク2226;仮想アプリケーション及びオペレーティングシステム2228;及び仮想クライアント2230である、仮想エンティティの例が提供され得る抽象化層を提供する。
【0253】
1つの例において、管理層2232は、以下に説明する機能を提供してよい。リソースプロビジョニング2234は、クラウドコンピューティング環境内でタスクを実行するのに利用される、コンピューティングリソース及び他のリソースの動的な調達を提供する。計量及び価格設定2236は、クラウドコンピューティング環境内でリソースが利用されるときのコスト追跡、及びこれらのリソースの消費に対する請求又はインボイス作成を提供する。1つの例において、これらのリソースは、アプリケーションソフトウェアライセンスを含んでよい。セキュリティは、クラウドコンシューマ及びタスクに対する識別情報検証、並びに、データ及び他のリソースに対する保護を提供する。ユーザポータル2238は、コンシューマ及びシステム管理者に、クラウドコンピューティング環境へのアクセスを提供する。サービスレベル管理2240は、必要とされるサービスレベルが満たされるように、クラウドコンピューティングリソース割り当て及び管理を提供する。サービス水準合意(SLA)計画及び履行2242は、将来の要件がSLAに従って予想されるクラウドコンピューティングリソースの事前の取り決め及び調達を提供する。
【0254】
ワークロード層2244は、クラウドコンピューティング環境が利用され得る機能の例を提供する。この層から提供され得るワークロード及び機能の例は、マッピング及びナビゲーション2246;ソフトウェア開発及びライフサイクル管理2248;仮想クラスルーム教育配信2250;データ分析処理2252;トランザクション処理2254;及び差分プライベート連合学習処理2256を含む。本明細書で説明される様々な実施形態は、図21及び図22を参照して説明されるクラウドコンピューティング環境を利用して、本明細書で説明される様々な実施形態によって、1又は複数の差分プライベート連合学習処理を実行し得る。
【0255】
本発明は、統合の任意の可能な技術的詳細レベルにおけるシステム、方法、装置及び/又はコンピュータプログラム製品であり得る。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体(又は複数の媒体)を含み得る。コンピュータ可読記憶媒体は、命令実行デバイスが使用するための命令を保持及び格納できる有形のデバイスであり得る。コンピュータ可読記憶媒体は、限定されるものではないが、例えば、電子ストレージデバイス、磁気ストレージデバイス、光学ストレージデバイス、電磁ストレージデバイス、半導体ストレージデバイス、又は、上記の任意の好適な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な例の非包括的リストはまた、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスクリードオンリメモリ(CD‐ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピディスク、命令が記録されたパンチカード又は溝における凸構造等の機械的に符号化されたデバイス、及び、上記の任意の好適な組み合わせを含み得る。本明細書において使用されるコンピュータ可読記憶媒体は、無線又は他の自由に伝搬する電磁波、導波管又は他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバケーブルを通る光パルス)、又はワイヤを通じて伝送される電気信号等の、一時的な信号自体として解釈されるべきでない。
【0256】
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から、それぞれのコンピューティング/処理デバイスに、又はネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク及び/又はワイヤレスネットワークを介して、外部コンピュータ又は外部ストレージデバイスに、ダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ及び/又はエッジサーバを含むことができる。各コンピューティング/処理デバイス内のネットワークアダプタカード又はネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受け取り、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に格納するためのコンピュータ可読プログラム命令を転送する。本発明のオペレーションを実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、又は、Smalltalk(登録商標)、C++、又は同様のもの等のオブジェクト指向プログラミング言語、「C」プログラミング言語又は類似のプログラミング言語等の従来の手続き型プログラミング言語を含む1又は複数のプログラミング言語の任意の組み合わせで書かれたソースコード又はオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に、ユーザのコンピュータ上で部分的に、スタンドアロンのソフトウェアパッケージとして、ユーザのコンピュータ上で部分的かつリモートコンピュータ上で部分的に、又は、リモートコンピュータ又はサーバ上で全体的に実行し得る。後者のシナリオにおいて、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを通じてユーザのコンピュータに接続され得るか、又は、接続は、(例えば、インターネットサービスプロバイダを使用してインターネットを通じて)外部コンピュータに行われ得る。いくつかの実施形態において、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、又はプログラマブルロジックアレイ(PLA)を含む電子回路は、本発明の態様を実行するべく、コンピュータ可読プログラム命令の状態情報を利用して電子回路をパーソナライズすることにより、コンピュータ可読プログラム命令を実行し得る。
【0257】
本発明の態様は、本明細書において、本発明の実施形態による方法、装置(システム)、及び、コンピュータプログラム製品のフローチャート図及び/又はブロック図を参照して、説明されている。フローチャート図及び/又はブロック図の各ブロック、及びフローチャート図及び/又はブロック図のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装することができることが理解されよう。これらのコンピュータ可読プログラム命令は、機械を作成するために、汎用コンピュータ、専用コンピュータ、又は、他のプログラマブルデータ処理装置のプロセッサに提供され得る。それにより、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行する命令は、フローチャート及び/又はブロック図のブロック又は複数のブロックにおいて特定された機能/動作を実装するための手段を生成する。これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラマブルデータ処理装置、及び/又は他のデバイスに、特定の態様で機能するよう指示できるコンピュータ可読記憶媒体に格納され得、それにより、命令を格納したコンピュータ可読記憶媒体は、フローチャート及び/又はブロック図のブロック又は複数のブロックにおいて特定された機能/動作の態様を実装する命令を含む、製品を含む。コンピュータ可読プログラム命令は、コンピュータ上、他のプログラム可能な装置上、又は他のデバイス上で実行される命令が、フローチャート及び/又はブロック図のブロック又は複数のブロックにおいて特定された機能/動作を実装するように、コンピュータ実装プロセスを生成すべく、コンピュータ、他のプログラム可能なデータ処理装置、又は他のデバイスに読み込まれ、一連の操作可能な動作を、コンピュータ上、他のプログラム可能な装置上、又は他のデバイス上で実行させるものであることもできる。
【0258】
図面におけるフローチャート及びブロック図は、本発明の様々な実施形態によるシステム、方法、及びコンピュータプログラム製品の考えられる実装形態のアーキテクチャ、機能、及び動作を示している。これに関して、フローチャート又はブロック図における各ブロックは、指定された論理機能を実装するための1又は複数の実行可能命令を含む、モジュール、セグメント、又は、命令の一部を表し得る。いくつかの代替的な実装において、ブロックにおいて記載される機能は、図に記載された順序とは別の順序で生じ得る。例えば、実際に、連続して示される2つのブロックは、関与する機能性に応じて、実質的に同時に実行され得るか、又は、ブロックは場合によっては、逆の順序で実行されてよい。また、ブロック図及び/又はフローチャート図の各ブロック、及びブロック図及び/又はフローチャート図におけるブロックの組み合わせは、特定された機能又は動作を実行する又は専用ハードウェアとコンピュータ命令との組み合わせを実行する専用ハードウェアベースのシステムによって実装され得ることに留意されたい。
【0259】
主題は、1つのコンピュータ及び/又は複数のコンピュータの上で実行されるコンピュータプログラム製品のコンピュータ実行可能命令の一般的な文脈で上述されてきたが、当業者ならば、本開示が他のプログラムモジュールと組み合わせることもできること、又は組み合わせて実装できることを認識するであろう。概して、プログラムモジュールは、特定のタスクを実行及び/又は特定の抽象データタイプを実装する、ルーチン、プログラム、コンポーネント、及び/又はデータ構造を含む。更に、当業者であれば、本発明のコンピュータ実装方法は、シングルプロセッサ又はマルチプロセッサコンピュータシステム、ミニコンピューティングデバイス、メインフレームコンピュータ、並びにコンピュータ、ハンドヘルドコンピューティングデバイス(例えばPDA(登録商標)、電話)、マイクロプロセッサベース又はプログラマブルコンシューマ用又は産業用電子機器等を含む他のコンピュータシステム構成で実施され得ることを認識するであろう。示される態様は、通信ネットワークを通じてリンクされるリモート処理デバイスによってタスクが実行される分散型コンピューティング環境においても実施され得る。しかし、本開示の全てではないがいくつかの態様は、スタンドアロンのコンピュータで実施され得る。分散型コンピューティング環境において、プログラムモジュールは、ローカル及びリモート両方のメモリストレージデバイスに位置し得る。
【0260】
本願において使用される場合、「コンポーネント」、「システム」、「プラットフォーム」、「インタフェース」等の用語は、コンピュータ関連エンティティ、又は、1又は複数の固有の機能性を有する動作機械に関連するエンティティを指し得る、及び/又は、含み得る。本明細書に開示されるエンティティは、ハードウェア、ハードウェア及びソフトウェアの組み合わせ、ソフトウェア、又は実行中のソフトウェアのいずれかであり得る。例えば、コンポーネントは、プロセッサ上で実行するプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行のスレッド、プログラム、及び/又はコンピュータであり得るが、これらに限定されるものではない。例示として、サーバ上で実行されているアプリケーションとサーバの両方が、構成要素であってよい。1又は複数のコンポーネントは、実行のプロセス及び/又はスレッドの中に存在してよく、コンポーネントは、1つのコンピュータに局在するか、及び/又は2又はそれより多くのコンピュータの間で分散されるかであってよい。別の例において、それぞれのコンポーネントは、様々なデータ構造が格納された様々なコンピュータ可読媒体から実行し得る。コンポーネントは、1又は複数のデータパケット(例えば、ローカルシステム、分散システム、及び/又は信号を介する他のシステムとのインターネット等のネットワークにおける別のコンポーネントと相互作用する1つのコンポーネントからのデータ)を有する信号等に従って、ローカル及び/又はリモートのプロセスを介して通信し得る。別の例として、コンポーネントは、プロセッサによって実行されるソフトウェア又はファームウェアアプリケーションによって操作される電気又は電子回路によって操作される機械部品によって提供される固有の機能性を有する装置であり得る。そのような場合において、プロセッサは、装置の内部又は外部にあり得、ソフトウェア又はファームウェアアプリケーションの少なくとも一部を実行し得る。更に別の例として、コンポーネントは、機械部品を用いず電子コンポーネントを通じて固有の機能性を提供する装置であり得、当該電子コンポーネントは、電子コンポーネントの機能性を少なくとも部分的に提供するソフトウェア又はファームウェアを実行するためのプロセッサ又は他の手段を含み得る。ある態様において、コンポーネントは、例えばクラウドコンピューティングシステム内の仮想マシンを介して電子コンポーネントをエミュレートし得る。
【0261】
加えて、「又は」という用語は、排他的な「又は」ではなく、包括的な「又は」を意味することが意図されている。すなわち、別様に指定されない限り、又は、文脈から明らかでない限り、「XがA又はBを利用する」は、自然の包括的な入替えのいずれかを意味することが意図される。すなわち、XがAを用い、XがBを用い、又はXがA及びBの両方を用いる場合であれば、前述された複数の事例のいずれかの下、「XはA又はBを用いる」が満たされる。更に、本明細書及び添付の図面に使用される冠詞「a」及び「an」は一般に、単数形を対象としていることが別様に指定されない限り、又は文脈からそれが明らかではない限り、「1又は複数」を意味すると解釈されるべきである。本明細書において使用される場合、用語「例」及び/又は「例示的」は、例、事例、又は例示として機能することを意味するために利用される。疑義を回避するために、本明細書に開示される主題は、そのような例に限定されるものではない。加えて、「例」及び/又は「例示的」として本明細書で説明される任意の態様又は設計は、他の態様又は設計より好ましい、又は有利であると必ずしも解釈されるわけではなく、当業者に知られている同等の例示的な構造及び技法を除外する意図もない。
【0262】
本明細書において利用される「プロセッサ」という用語は、これらに限定されるものではないが、シングルコアプロセッサ、ソフトウェアマルチスレッド実行能力を有するシングルプロセッサ、マルチコアプロセッサ、ソフトウェアマルチスレッド実行能力を有するマルチコアプロセッサ、ハードウェアマルチスレッド技術を有するマルチコアプロセッサ、並列プラットフォーム、及び、分散共有メモリを有する並列プラットフォームを含む実質的に任意のコンピューティング処理ユニット又はデバイスを指し得る。追加的に、プロセッサとは、集積回路、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックコントローラ(PLC)、コンプレックスプログラマブルロジックデバイス(CPLD)、ディスクリートゲート又はトランジスタロジック、ディスクリートハードウェアコンポーネント、又は、本明細書で説明される機能を実行するために設計されたそれらの任意の組み合わせを指し得る。更に、プロセッサは、空間利用を最適化し、又は、ユーザ機器のパフォーマンスを強化するべく、これらに限定されるものではないが、分子及び量子ドットベースのトランジスタ、スイッチ、及びゲート等のナノスケールアーキテクチャを利用し得る。プロセッサはまた、コンピューティング処理ユニットの組み合わせとして実装され得る。本開示において、「格納」、「ストレージ」、「データ格納」、「データストレージ」、「データベース」及びコンポーネントのオペレーション及び機能性に関連する実質的に任意の他の情報ストレージコンポーネント等の用語は、「メモリ」又はメモリを含むコンポーネントにおいて具現化される「メモリコンポーネント」エンティティを指すために利用される。本明細書で説明されるメモリ及び/又はメモリコンポーネントは、揮発性メモリ又は不揮発性メモリのいずれかであり得るか、又は、揮発性及び不揮発性メモリの両方を含み得ることを認識されたい。限定ではなく例示として、不揮発性メモリは、リードオンリメモリ(ROM)、プログラマブルROM(PROM)、電気的プログラマブルROM(EPROM)、電気消去可能ROM(EEPROM)、フラッシュメモリ、又は、不揮発性ランダムアクセスメモリ(RAM)(例えば、強誘電体RAM(FeRAM))を含み得る。揮発性メモリは、例えば、外部キャッシュメモリとして動作し得るRAMを含み得る。限定ではなく例示として、RAMは、同期RAM(SRAM)、動的RAM(DRAM)、同期DRAM(SDRAM)、ダブルデータレートSDRAM(DDR SDRAM)、拡張SDRAM(ESDRAM)、Synchlink DRAM(SLDRAM)、ダイレクトRambus RAM(DRRAM)、ダイレクトRambus動的RAM(DRDRAM)、及びRambus動的RAM(RDRAM)等の多くの形式で利用可能である。追加的に、本明細書におけるシステム又はコンピュータ実装方法の開示されるメモリコンポーネントは、これら及び任意の他の好適なタイプのメモリを含むことが意図されるが、これらに限定されない。
【0263】
上述のものは、システム及びコンピュータ実装方法の例を含むに過ぎない。当然、本開示を説明する目的で、コンポーネント又はコンピュータ実装方法の想定されるあらゆる組み合わせを説明することは不可能であるが、当業者であれば、本開示の多くの更なる組み合わせ及び入替えが可能であることを認識し得る。更に、「含む」、「有する」、「備える」等の用語が詳細な説明、特許請求の範囲、添付書類、及び図面において使用される限り、そのような用語は、「備える」という用語が請求項において移行句として利用される場合に解釈されるのと同様の方式で包括的であることが意図される。
【0264】
様々な実施形態の説明は、例示の目的で提示され、包括的である、又は、開示される実施形態に限定される意図はない。説明した実施形態の範囲及び趣旨から逸脱することなく、多くの修正及び変形が、当業者には明らかであろう。本明細書で使用される用語は、実施形態の原理、実際の適用例、又は市場で見られる技術を超える技術的な改良を最もよく説明するように、又は本明細書で開示される実施形態を当業者が理解することが可能になるように選択されたものである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22