AlphaTensorは、DeepMindによって開発された人工知能システムであり、強化学習を用いて効率的な行列乗算アルゴリズムを発見することを目的とする。2022年に発表され、このシステムはAlphaZeroに基づいており、行列乗算アルゴリズムの探索をTensorGameと呼ばれる一人用ゲームとして定式化した。
AlphaTensorは、より少ないスカラー乗算演算で行列を乗算する新しい方法を探索するために設計された。行列乗算は、線形代数、数値解析、科学計算、コンピュータグラフィックス、および機械学習における基本的な演算である。このシステムは、数千もの行列乗算アルゴリズムを発見し、その中には既知の人間設計の手法を再発見したものや、特定の行列サイズや数学的設定において既知の結果を改善したものも含まれる。
背景
行列乗算は、数値計算における基本的な演算の一つである。2つの正方行列を乗算する標準的なアルゴリズムは3次の時間複雑性を持つ一方、Strassenアルゴリズムなどのより高速なアルゴリズムは、より複雑な代数的分解を用いることで乗算演算の数を削減する。最適な行列乗算アルゴリズムを見つけることは、可能なテンソル分解の大きな空間を探索する必要があるため、困難である。
AlphaTensorは、アルゴリズム発見をTensorGameとして表現することでこの問題に取り組んだ。各手は行列乗算を表すテンソルを縮小する操作に対応する。ゲームの目標は、効率的な乗算アルゴリズムに対応する行列乗算テンソルの低ランク分解を見つけることである。
開発
AlphaTensorはDeepMindによって開発され、2022年10月にNature誌に掲載された論文で説明された。このシステムは、以前に囲碁、チェス、将棋などのゲームに適用されていたAlphaZeroで使用された強化学習アプローチに基づいていた。これらのゲームとは異なり、TensorGameは非常に大きな探索空間を含み、AlphaZeroスタイルの探索方法とニューラルネットワークアーキテクチャの変更が必要であった。
DeepMindは、公開されたGitHubリポジトリを通じて、ソースコードと発見されたアルゴリズムを公開した。
結果
AlphaTensorは、標準的な算術および有限体の両方で行列乗算アルゴリズムを発見した。広く報告された結果の一つは、2つの要素を持つ体上の4×4行列を47回の乗算演算で乗算する方法であり、この設定でStrassenのアルゴリズムを再帰的に適用した場合に必要な49回の演算を改善した。
このシステムはまた、特定のコンピュータハードウェアに最適化されたアルゴリズムも発見し、グラフィックス処理ユニットやテンソル処理ユニット向けに設計されたアルゴリズムも含まれる。DeepMindは、ハードウェア固有のアルゴリズムの一部が、テストされたハードウェアで一般的に使用されるアルゴリズムと比較して実用的な実行時間を改善したと述べた。
意義
AlphaTensorは、機械学習を既存のアルゴリズムの適用だけでなく、新しいアルゴリズムの発見を支援するために使用する例として説明された。この研究は、アルゴリズム発見、自動機械学習、プログラム合成、および計算複雑性理論、特に行列乗算の最適な複雑性を決定するという未解決問題に関するより広範な研究と関連していた。
AlphaTensorは後に、AlphaDevやAlphaEvolveなどのシステムと並んで、アルゴリズムおよび数学的発見のためのGoogle DeepMindシステムのより広範なグループの一部となった。
関連項目
参考文献
- DeepMind、'AlphaTensor'、2022年。
- Nature論文、2022年10月。
外部リンク
- 公式ウェブサイト
- GitHub上のalphatensor