量子機械学習モデルを構築するための Google の新しいフレームワーク、TensorFlow Quantum を探索する

量子機械学習モデルを構築するための Google の新しいフレームワーク、TensorFlow Quantum を探索する

[[319936]]

[51CTO.com クイック翻訳] 量子コンピューティングと人工知能 (AI) の交差点は、技術開発の歴史全体の中で最も魅力的なトレンドの 1 つになると予想されています。量子コンピューティングの出現により、既存のコンピューティングパラダイムのほぼすべてを再考する必要が生じる可能性があり、AI も例外ではありません。しかし、量子コンピュータの計算能力は、今日ではまだ実用的ではない AI の多くの側面を高速化することも期待されています。 AI と量子コンピューティングを融合するための第一歩は、量子アーキテクチャ上で実行できるように機械学習モデルを再考することです。最近、Google は量子機械学習モデルを構築するためのフレームワーク TensorFlow Quantum をオープンソース化しました。

TensorFlow Quantum の中心的なコンセプトは、TensorFlow プログラミング モデルで量子アルゴリズムと機械学習プログラムを織り交ぜることです。 Google はこのアプローチを量子機械学習と呼んでおり、Google Cirq などの最近の量子コンピューティング フレームワークを使用してこれを実装することができます。

量子機械学習

量子コンピューティングと AI に関して言えば、私たちが答えなければならない最初の質問は、AI が新しい量子アーキテクチャからどのように恩恵を受けることができるかということです。量子機械学習 (QML) は、量子特性を最大限に活用できる機械学習モデルの総称です。 QML の最初のアプリケーションは、従来の機械学習モデルをリファクタリングして、量子ビットの数に応じて劇的に拡張される状態空間で高速な線形代数を実行できるようにすることに重点が置かれています。しかし、量子ハードウェアの発展により、量子ハードウェアの計算能力が向上したため、QML の展望は広がり、徐々に経験的に研究できるヒューリスティックな方法へと発展してきました。このプロセスは、GPU の登場により機械学習がディープラーニング パラダイムへと進化するようになった方法に似ています。

TensorFlow Quantum のコンテキストでは、QML は次の 2 つの部分として定義できます。

a. 量子データセット

b. ハイブリッド量子モデル

量子データセット

量子データとは、自然または人工の量子システムで発生するデータのソースです。これは量子力学の実験からの古典的なデータである場合もあれば、量子デバイスによって直接生成され、アルゴリズムに入力として送られるデータである場合もあります。以下に説明する理由により、「量子データ」に対するハイブリッド量子-古典機械学習アプリケーションは、純粋な古典機械学習よりも量子的な利点を提供できるという証拠がいくつかあります。量子データは重ね合わせやエンタングルメントの現象を示し、その結果、結合確率分布が生じ、それを表現または保存するには指数関数的に膨大な量の従来のコンピューティング リソースが必要になる場合があります。

ハイブリッド量子モデル

機械学習がトレーニング データセットからモデルを一般化できるのと同様に、QML は量子データセットから量子モデルを一般化できます。しかし、量子プロセッサはまだ小さくノイズが多いため、量子モデルは量子プロセッサのみを使用して量子データを一般化することはできません。ハイブリッド量子モデルは、量子コンピュータが古典コンピュータと共生し、ハードウェア アクセラレータとして最も有用となるシナリオを提案します。このモデルは、CPU、GPU、TPU にわたる異種コンピューティングをすでにサポートしているため、TensorFlow に適しています。

サーク

ハイブリッド量子モデルを構築するための最初のステップは、量子演算を活用できるようにすることです。これを実現するために、TensorFlow Quantum は、近い将来に実現されるデバイス上で量子回路を呼び出すためのオープンソース フレームワークである Cirq に依存しています。 Cirq には、量子ビット、ゲート、回路、測定演算子など、量子計算を指定するために必要な基本構造が含まれています。 Cirq の背後にあるアイデアは、量子アプリケーション ソフトウェアの基本的な構成要素を抽象化するシンプルなプログラミング モデルを提供することです。最新バージョンには、次の主要な構成要素が含まれています。

  • 回路: Cirq では、回路は量子回路の最も基本的な形式を表します。 Cirq 回路は、ある抽象的な時間間隔中に量子ビットに対して実行される操作で構成されるモーメントの集合として表されます。
  • スケジュールとデバイス: スケジュールは、ゲートのタイミングと期間に関するより詳細な情報を含む量子回路の別の形式です。概念的には、スケジュールは ScheduledOperations のセットと、スケジュールが実行される機器の説明で構成されます。
  • ゲート: Cirq では、ゲートは量子ビットのコレクションに対する操作を抽象化します。
  • シミュレーター: Cirq には、回路とスケジュールを実行するために使用できる Python シミュレーターが含まれています。シミュレータ アーキテクチャは複数のスレッドと CPU にわたって拡張できるため、かなり複雑な回路を実行できます。

TensorFlow 量子

TensorFlow Quantum (TFQ) は、QML アプリケーションを構築するためのフレームワークです。 TFQ を使用すると、機械学習の研究者は、量子データセット、量子モデル、および古典的な制御パラメータを単一の計算グラフ内のテンソルとして構築できます。

アーキテクチャの観点から見ると、TFQ は TensorFlow、Cirq、計算ハードウェアとの相互作用を抽象化するモデルを提供します。スタックの最上部は処理されるデータです。古典データは TensorFlow によって直接処理されます。TFQ は、量子回路と量子演算子で構成される量子データを処理する機能を追加します。スタックの次のレベルは、TensorFlow の Keras API です。 TFQ の中心的な理念は、コア TensorFlow (特に Keras モデルおよびオプティマイザー) とのネイティブ統合であるため、このレベルはスタックの全幅にわたります。 Keras モデルの抽象化の下には量子レイヤーと微分器があり、これを従来の TensorFlow レイヤーと接続すると、量子と古典のハイブリッド自動微分化が可能になります。量子層と微分化器の下で、TFQ はデータフロー グラフのインスタンスを作成する TensorFlow 演算子に依存します。

実行の観点から見ると、TFQ は次の手順に従って QML モデルをトレーニングおよび構築します。

1. 量子データセットを準備する: 量子データは、Cirq で記述された量子回路として指定されたテンソルとして読み込まれます。テンソルは TensorFlow によって量子コンピュータ上で実行され、量子データセットを生成します。

2. 量子ニューラル ネットワーク モデルを評価する: このステップでは、研究者は Cirq を使用して量子ニューラル ネットワークのプロトタイプを作成し、それを TensorFlow 計算グラフに埋め込むことができます。

3. サンプリングまたは平均化: このステップでは、ステップ 1 と 2 を含む複数の実行を平均化する方法を利用します。

4. 古典的なニューラル ネットワーク モデルを評価する: この手順では、古典的なディープ ニューラル ネットワークを使用して、前の手順で抽出されたメトリック間の相関関係を取得します。

5. コスト関数を評価する: 従来の機械学習モデルと同様に、TFQ はこのステップを使用してコスト関数を評価します。これは、量子データがラベル付けされている場合はモデルが分類タスクをどれだけ正確に実行するかに基づく可能性があり、タスクが監督されていない場合は他の基準に基づく可能性があります。

6. 勾配を評価してパラメータを更新する: コスト関数を評価した後、パイプライン内の自由パラメータは、コストを削減すると予想される方向に更新する必要があります。

TensorFlow と Cirq を組み合わせることで、TFQ はよりシンプルで使い慣れたプログラミング モデルや、多数の量子回路を同時にトレーニングして実行する機能など、豊富な機能セットを備えることができます。

量子コンピューティングと機械学習を組み合わせた取り組みはまだ初期段階にあります。もちろん、TFQ は量子学習と機械学習における最高の IP の一部を活用した、この分野における最も重要なマイルストーンの 1 つです。 TFQ の詳細については、プロジェクトの Web サイト (https://www.tensorflow.org/quantum) をご覧ください。

原題: 量子機械学習モデルを作成するための Google の新しいフレームワーク、TensorFlow Quantum の探索、著者: Jesus Rodriguez

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください]

<<:  シンプルな人工ニューラル ネットワークをゼロから構築する: 1 つの隠れ層

>>:  IoTドローンが都市を消毒する方法

ブログ    
ブログ    
ブログ    

推薦する

機械学習において統計がなぜそれほど重要なのか?

統計学と機械学習は密接に関連した2つの分野です。実際のところ、この 2 つの境界線は非常に曖昧になる...

ChatGPTの10の実用的なビジネスユースケース

ChatGPT のビジネスユースケースは数多く登場していますが、組織は自社の特定のニーズに最適なシナ...

ゼロサンプルに主眼が置かれています! ReSimAD: 自動運転で 3D ドメイン適応を実現するには?

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...

一貫性ハッシュアルゴリズムの図

[[380706]]この記事はWeChatパブリックアカウント「Full-Stack Cultiva...

...

Excelが変わりました! MicrosoftはPythonを搭載しているので、機械学習を直接行うことができます。

素晴らしいニュースです! Microsoft が Excel に Python を導入しました。 E...

中国科学院とアリババが開発したFF3Dでは、カスタムスタイルの3Dポートレートを作成するのにわずか3分しかかかりません。

3D ポートレート合成は、常に AIGC の注目を浴びている分野です。 NeRF と 3D 対応 ...

IBM、AI導入を加速しAIの透明性を向上するオープンプラットフォームを発表

[[247168]]最近、IBM は、AI アプリケーションがどのように意思決定を行うかを説明する際...

トヨタがAIを活用して融資判断をスピードアップする方法

[[431125]]自動車金融サービスの分野では、ディーラーと顧客が意思決定のスピードを追求していま...

...

ユニバーサルで説明可能なAIコンピューティングハードウェア設計は、EDAにおける次の革命的な技術となるでしょう。

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...

人工知能はどれくらい怖いのでしょうか?アメリカはAI兵器を開発し、イランの科学者は死亡した

[[358758]]人工知能はかつてはSF映画にしか登場しない言葉でした。しかし、通信、ビッグデータ...

...

機械学習の実践: Spark と Python を組み合わせるには?

Apache Sparkはビッグデータの処理や活用に最も広く使われているフレームワークの一つであり...

AI音声アシスタントの台頭:利便性とセキュリティのバランス

ChatGPT は私たちが知る限り最新の音声アシスタントです。 SiriやAlexaなどの企業は長年...