原文と比べた結果、この記事には多数の(または内容の大部分に影響ある)誤訳 があることが判明しています。情報の利用には注意してください。 正確な表現に改訳できる方を求めています。 (2023年6月 )
AIアクセラレータ (英 : AI accelerator )は、人工知能 (AI) アプリケーション、特に人工ニューラルネットワーク 、回帰型ニューラルネットワーク [ 1] 、マシンビジョン 、機械学習 を高速化するために設計された特殊なハードウェアアクセラレータ [ 2] またはコンピュータシステム[ 3] [ 4] の分類のひとつである。代表的なアプリケーションには、ロボット工学 、モノのインターネット (IoT)、その他のデータ集約型 またはセンサー駆動型のタスクのためのアルゴリズムが含まれる[ 5] 。それらは多くの場合、メニーコア 設計であり、一般的には低精度 算術演算、斬新なデータフロー・アーキテクチャ (英語版 ) 、またはインメモリ・コンピューティング (英語版 ) 機能に焦点を当てている[ 6] 。2018年現在、典型的なAI集積回路 チップには数十億 (英語版 ) 個のMOSFET トランジスタが含まれている[ 7] 。
このカテゴリのデバイスには、多くのベンダー固有の用語が存在しており、これはドミナント・デザイン (英語版 ) (支配的設計)のない新興技術 (英語版 ) である。
歴史
コンピュータシステム は、コ・プロセッサ と呼ばれる特殊なタスクのための専用アクセラレータでCPU を補完することが頻繁に行われていた。アプリケーション固有 の特筆すべきハードウェアユニット には、グラフィックス 用ビデオカード 、サウンドカード 、GPU 、DSP などがある。2010年代にディープラーニング や人工知能 のワークロード (作業負荷)が著しく増大するようになると、これらのタスクを高速化 するために、専用のハードウェアユニットが開発されたり、既存の製品を基にしてタスクに順応するよう改良されたりした。
初期の試み
早くも1993年には、DSP がニューラルネットワークのアクセラレータとして使用され、例えば光学文字認識 (OCR) ソフトウェアを高速化するために使用されていた[ 8] 。1990年代には、ニューラルネットワーク・シミュレーションを含む様々なアプリケーションを目的としたワークステーション用の並列ハイスループットシステムの開発も試みもあった[ 9] [ 10] [ 11] 。FPGA ベースのアクセラレータも1990年代に推論[ 12] とトレーニング[ 13] の両方のために最初に検討された。ANNAはヤン・ルカン によって開発されたニューラルネットCMOSアクセラレータである[ 14] 。
ヘテロジニアス・コンピューティング
ヘテロジニアス・コンピューティング (異種コンピューティング)とは、1つのシステム、あるいは1つのチップに、特定の種類のタスクに最適化された多数の特化型プロセッサを組み込むことを意味する。Cell B.E. マイクロプロセッサのようなアーキテクチャは[ 15] 、パックされた低精度算術演算 (packed low precision arithmetic) のサポート、データフロー ・アーキテクチャ、レイテンシよりも「スループット」を優先するなど、AIアクセラレータと大きく重複する特徴を持っている。Cellプロセッサはその後、AIを含む多くのタスク[ 16] [ 17] [ 18] に応用された[ 19] [ 20] [ 21] 。
2000年代 には、CPU は、動画やゲームのワークロードの高まりに牽引されて、SIMD ユニットのデータ幅を次第に拡張し、パックされた 低精度のデータ型 をサポートするようになった[ 22] 。
2020年代は、AIエンジンのCPUチップへの搭載という流れが起きている。AppleのAシリーズやMシリーズに搭載されているNeural Engine[ 23] [ 24] 、AMDのRyzen AI[ 25] [ 26] 、IntelのMeteor Lake 以降に統合されたNeural Processing Unit[ 27] [ 28] (NPU) など。
GPUの利用
Graphics Processing Unit (GPU) は、Direct3D やVulkan のような各種3DグラフィックスAPIによって標準化されたグラフィックスパイプライン を持ち、画像の操作や、局所的な画像特性の計算に特化したハードウェアである。プログラマブルシェーダー および統合型シェーダーアーキテクチャ の採用によりハードウェアレベルで汎用計算(GPGPU )への道が開け、さらにCUDA やOpenCL のようなソフトウェアプログラミング環境が整ったことで、GPUの持つ超並列処理性能の活用が進んだ。ニューラルネットワークと画像操作の数学的基礎は類似しており、行列を含む自明な並列性 (英語版 ) [ 注釈 1] のタスクであるため、GPUは機械学習タスクにますます使用されるようになってきている[ 30] [ 31] [ 32] 。2016年現在、GPUはAI作業で人気があり、自動運転車[ 33] などのデバイスでのトレーニング[ 34] と推論の両方でディープラーニングを促進する方向に進化し続けている。NVIDIA NVLink などのGPU開発者は、AIが恩恵を受けるような、データフローのワークロード分散のために追加の接続機能を開発している[ 35] 。GPUのAIアクセラレーションへの応用が進むにつれ、GPUメーカーは、ニューラルネットワーク に特化したハードウェア を組み込んで、これらのタスクをさらに高速化している[ 36] [ 37] 。Tensor Core (テンソルコア) は、ニューラルネットワークのトレーニングを高速化することを目的としている[ 36] 。
FPGAの利用
ディープラーニングのフレームワークはまだ進化の途上にあり、カスタムのハードウェアを設計するのは難しい。FPGA (Field-Programmable Gate Array)のような再構成可能なデバイス により、ハードウェア、フレームワーク、ソフトウェアを相互に進化 させることが容易になる[ 38] [ 12] [ 13] [ 39] 。
マイクロソフトは、FPGAチップを使って推論 [ 40] を高速化している。FPGAをAIアクセラレーションに適用することは、インテル がアルテラ を買収することを動機付け、サーバCPUにFPGAを統合することで、汎用的なタスクだけでなくAIも加速できるようにすることを目的としている[ 41] 。
AIアクセラレータ専用ASICの登場
AI関連のタスクでは、GPUとFPGAの方がCPUよりもはるかに優れた性能を発揮するが、ASIC (Application Specific Integrated Circuit) を介したより特殊な設計では[要出典 ] 、最大で10倍の効率性[ 42] [ 43] が得られる可能性がある。これらのアクセラレータは、最適化されたメモリ使用 (英語版 ) や[要出典 ] 、より低精度の算術演算 (英語版 ) を使用して計算を高速化し、計算のスループット を向上させるなどの戦略を採用している[ 44] [ 45] 。AIアクセラレーションで採用されている低精度浮動小数点 フォーマットには、半精度浮動小数点 フォーマットやbfloat16浮動小数点フォーマット (英語版 ) がある[ 46] [ 47] [ 48] [ 49] [ 50] [ 51] [ 52] 。FacebookやAmazon、Googleなどの企業が独自のAI ASICを設計している[ 53] [ 54] 。
インメモリ・コンピューティング・アーキテクチャ
2017年6月、IBM の研究者は、ヘテロジニアス・コンピューティング と大規模並列システム に一般化するアプローチを目的とした、時間的相関検出に適用されるインメモリ・コンピューティング (英語版 ) と相変化メモリ ・アレイに基づくフォン・ノイマン・アーキテクチャ とは対照的なアーキテクチャを発表した[ 55] 。2018年10月、IBMの研究者は、インメモリ処理に基づく、人間の脳のシナプスネットワークをモデルにしたアーキテクチャ (英語版 ) を発表し、ディープニューラルネットワーク を高速化した[ 56] 。このシステムは相変化メモリアレイに基づいている[ 57] 。
アナログ抵抗変化型メモリを用いたインメモリ・コンピューティング
2019年にミラノ工科大学の研究者は、1回の操作で数10ナノ秒で連立一次方程式を解く方法を発見した。彼らのアルゴリズムは、オームの法則とキルヒホッフの法則で行列-ベクトル乗算を1ステップで実行することにより、時間とエネルギーの高効率で実行するアナログ抵抗変化型メモリ を使用したインメモリ・コンピューティング (英語版 ) に基づいている。研究者らは、クロスポイント抵抗変化型メモリを備えたフィードバック回路が、一次方程式系、行列固有ベクトル、微分方程式などの代数的問題をわずか1ステップで解くことができることを示した。このようなアプローチは、従来のアルゴリズムと比較して計算時間を大幅に改善する[ 58] 。
原子レベル薄型半導体
2020年、Maregaらは、浮遊ゲート 電界効果トランジスタ (FGFET) をベースにしたロジックインメモリデバイスおよび回路を開発するための大面積アクティブチャネル材料を用いた実験を発表した[ 59] 。
このような原子的に薄い半導体 は、論理演算とデータ保存の両方に同じ基本的なデバイス構造を用いるエネルギー効率の高い機械学習 アプリケーションに有望と考えられている。著者らは、半導電性二硫化モリブデンなどの二次元材料を用いた[ 59] 。
命名法
2016年現在、この分野はまだ流動的であり、ベンダーは自社の設計とAPI がドミナント・デザイン (英語版 ) になることを期待して、「AIアクセラレータ」に相当するものについて独自のマーケティング用語を推薦している。これらのデバイス間の境界線についても、正確な形式についても合意はないが、いくつかの例は明らかにこの新しい空間を埋めることを目的としており、かなりの量の機能が重複している。
コンシューマー向けのグラフィックス・アクセラレータ が登場した過去の業界では、Direct3D が提示したモデルを実装した全体的なパイプラインに落ち着くまでに、さまざまな形式をとってきた「グラフィックスアクセラレータ」の総称として、最終的にはNVIDIAによる「GPU」[ 60] という独自の用語を採用した。
潜在的なアプリケーション
関連項目
脚注
注釈
^ 自明な並列性とは、同時に実行する複数のタスク間に依存関係がなく、完全に独立しているために労せず簡単に並列化できる性質のことで、trivial parallelization または embarrassingly parallel などと呼ばれる[ 29] 。
出典
^ "A Survey on Hardware Accelerators and Optimization Techniques for RNNs", JSA, 2020 PDF
^ “Intel unveils Movidius Compute Stick USB AI Accelerator ” (2017年7月21日). August 11, 2017時点のオリジナル よりアーカイブ。August 11, 2017 閲覧。
^ “Inspurs unveils GX4 AI Accelerator ” (2017年6月21日). 2020年7月23日 閲覧。
^ Wiggers, Kyle (November 6, 2019), Neural Magic raises $15 million to boost AI inferencing speed on off-the-shelf processors , オリジナル の2020-03-06時点におけるアーカイブ。, https://web.archive.org/web/20200306120524/https://venturebeat.com/2019/11/06/neural-magic-raises-15-million-to-boost-ai-training-speed-on-off-the-shelf-processors/ 2020年3月14日 閲覧。
^ “Google Developing AI Processors ”. 2020年7月23日 閲覧。 Google using its own AI accelerators.
^ "A Survey of ReRAM-based Architectures for Processing-in-memory and Neural Networks ", S. Mittal, Machine Learning and Knowledge Extraction, 2018
^ “13 Sextillion & Counting: The Long & Winding Road to the Most Frequently Manufactured Human Artifact in History ”. Computer History Museum (April 2, 2018). 28 July 2019 閲覧。
^ “convolutional neural network demo from 1993 featuring DSP32 accelerator ”. 2020年10月19日 閲覧。
^ “design of a connectionist network supercomputer ”. 2020年10月19日 閲覧。
^ “The end of general purpose computers (not) ”. 2020年7月23日 閲覧。 This presentation covers a past attempt at neural net accelerators, notes the similarity to the modern SLI GPGPU processor setup, and argues that general purpose vector accelerators are the way forward (in relation to RISC-V hwacha project. Argues that NN's are just dense and sparse matrices, one of several recurring algorithms)
^ Ramacher, U.; Raab, W.; Hachmann, J.A.U.; Beichter, J.; Bruls, N.; Wesseling, M.; Sicheneder, E.; Glass, J. et al. (1995). Proceedings of 9th International Parallel Processing Symposium . pp. 774–781. doi :10.1109/IPPS.1995.395862 . ISBN 978-0-8186-7074-9
^ a b “Space Efficient Neural Net Implementation ”. 2020年10月19日 閲覧。
^ a b Gschwind, M.; Salapura, V.; Maischberger, O. (1996). “A Generic Building Block for Hopfield Neural Networks with On-Chip Learning”. 1996 IEEE International Symposium on Circuits and Systems. Circuits and Systems Connecting the World. ISCAS 96 . pp. 49–52. doi :10.1109/ISCAS.1996.598474 . ISBN 0-7803-3073-0
^ “Application of the ANNA Neural Network Chip to High-Speed Character Recognition ”. 2020年10月19日 閲覧。
^ Gschwind, Michael; Hofstee, H. Peter; Flachs, Brian; Hopkins, Martin; Watanabe, Yukio; Yamazaki, Takeshi (2006). “Synergistic Processing in Cell's Multicore Architecture”. IEEE Micro 26 (2): 10–24. doi :10.1109/MM.2006.41 .
^ De Fabritiis, G. (2007). “Performance of Cell processor for biomolecular simulations”. Computer Physics Communications 176 (11–12): 660–664. arXiv :physics/0611201 . doi :10.1016/j.cpc.2007.02.107 .
^ Video Processing and Retrieval on Cell architecture .
^ Benthin, Carsten; Wald, Ingo; Scherbaum, Michael; Friedrich, Heiko (2006). 2006 IEEE Symposium on Interactive Ray Tracing . pp. 15–23. doi :10.1109/RT.2006.280210 . ISBN 978-1-4244-0693-7
^ Kwon, Bomjun; Choi, Taiho; Chung, Heejin; Kim, Geonho (2008). 2008 5th IEEE Consumer Communications and Networking Conference . pp. 1030–1034. doi :10.1109/ccnc08.2007.235 . ISBN 978-1-4244-1457-4
^ “Development of an artificial neural network on a heterogeneous multicore architecture to predict a successful weight loss in obese individuals ”. 2020年7月23日 閲覧。
^ Duan, Rubing; Strey, Alfred (2008). Euro-Par 2008 – Parallel Processing . Lecture Notes in Computer Science. 5168 . pp. 665–675. doi :10.1007/978-3-540-85451-7_71 . ISBN 978-3-540-85450-0
^ “Improving the performance of video with AVX ” (2012年2月8日). 2020年7月23日 閲覧。
^ “【後藤弘茂のWeekly海外ニュース】 iPhone Xの深層学習コア「Neural Engine」の方向性 ”. PC Watch . 株式会社インプレス (2017年10月20日). 2023年6月22日 閲覧。
^ Nast, Condé (2017年9月21日). “アップルが開発した「ニューラルエンジン」は、人工知能でiPhoneに革新をもたらす ”. WIRED.jp . 2023年6月22日 閲覧。
^ “x86初のAIプロセッサ「Ryzen AI」は何がスゴイのかAMDが説明 市場投入第1弾は「Razer Blade 14」 ”. ITmedia PC USER . 2023年6月22日 閲覧。
^ “Ryzen Pro 7000シリーズを発表、Ryzen AIはWindows 11で対応済み AMD CPUロードマップ (2/3) ”. ASCII.jp . ASCII. 2023年6月22日 閲覧。
^ “Intel新ロードマップを発表。Meteor Lake、Arrow Lake、Lunar Lakeへと進化 ”. PC Watch . 株式会社インプレス (2022年2月18日). 2023年6月22日 閲覧。
^ IntelのMeteor Lake搭載ノート、dGPUなしでStable Diffusionを高速処理 - PC Watch
^ 用語集 | iSUS
^ “microsoft research/pixel shaders/MNIST ”. 2020年10月19日 閲覧。
^ “How GPU came to be used for general computation ”. 2020年10月19日 閲覧。
^ “imagenet classification with deep convolutional neural networks ”. 2020年10月19日 閲覧。
^ “nvidia introduces supercomputer for self driving cars ” (2016年1月6日). 2020年7月23日 閲覧。
^ “nvidia driving the development of deep learning ” (2016年5月17日). 2020年7月23日 閲覧。
^ “how nvlink will enable faster easier multi GPU computing ” (2014年11月14日). 2020年7月23日 閲覧。
^ a b Harris, Mark (May 11, 2017). “CUDA 9 Features Revealed: Volta, Cooperative Groups and More ”. August 12, 2017 閲覧。
^ "A Survey on Optimized Implementation of Deep Learning Models on the NVIDIA Jetson Platform ", 2019
^ “Space Efficient Neural Net Implementation ”. 2020年7月23日 閲覧。
^ “FPGA Based Deep Learning Accelerators Take on ASICs ”. The Next Platform (2016年8月23日). 2016年9月7日 閲覧。
^ “Project Brainwave ” (英語). Microsoft Research . 2020年6月16日 閲覧。
^ "A Survey of FPGA-based Accelerators for Convolutional Neural Networks ", Mittal et al., NCAA, 2018
^ “Google boosts machine learning with its Tensor Processing Unit ” (2016年5月19日). 2016年9月13日 閲覧。
^ “Chip could bring deep learning to mobile devices ”. www.sciencedaily.com (2016年2月3日). 2016年9月13日 閲覧。
^ “Deep Learning with Limited Numerical Precision ”. 2020年7月23日 閲覧。
^ Rastegari, Mohammad; Ordonez, Vicente; Redmon, Joseph; Farhadi, Ali (2016). "XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks". arXiv :1603.05279 [cs.CV ]。
^ Khari Johnson (2018年5月23日). “Intel unveils Nervana Neural Net L-1000 for accelerated AI training ”. VentureBeat . 2018年5月23日 閲覧。 “...Intel will be extending bfloat16 support across our AI product lines, including Intel Xeon processors and Intel FPGAs.”
^ Michael Feldman (2018年5月23日). “Intel Lays Out New Roadmap for AI Portfolio ”. TOP500 Supercomputer Sites . 2018年5月23日 閲覧。 “Intel plans to support this format across all their AI products, including the Xeon and FPGA lines”
^ Lucian Armasu (2018年5月23日). “Intel To Launch Spring Crest, Its First Neural Network Processor, In 2019 ”. Tom's Hardware . 2018年5月23日 閲覧。 “Intel said that the NNP-L1000 would also support bfloat16, a numerical format that’s being adopted by all the ML industry players for neural networks. The company will also support bfloat16 in its FPGAs, Xeons, and other ML products. The Nervana NNP-L1000 is scheduled for release in 2019.”
^ “Available TensorFlow Ops | Cloud TPU | Google Cloud ”. Google Cloud . 2018年5月23日 閲覧。 “This page lists the TensorFlow Python APIs and graph operators available on Cloud TPU.”
^ Tensorflow Authors (2018年2月28日). “ResNet-50 using BFloat16 on TPU ”. Google . 2018年5月23日 閲覧。 [リンク切れ ]
^ Elmar Haußmann (2018年4月26日). “Comparing Google's TPUv2 against Nvidia's V100 on ResNet-50 ”. RiseML Blog . April 26, 2018時点のオリジナル よりアーカイブ。2018年5月23日 閲覧。 “For the Cloud TPU, Google recommended we use the bfloat16 implementation from the official TPU repository with TensorFlow 1.7.0. Both the TPU and GPU implementations make use of mixed-precision computation on the respective architecture and store most tensors with half-precision.”
^ Joshua V. Dillon; Ian Langmore; Dustin Tran; Eugene Brevdo; Srinivas Vasudevan; Dave Moore; Brian Patton; Alex Alemi; Matt Hoffman; Rif A. Saurous (28 November 2017). TensorFlow Distributions (Report). arXiv :1711.10604 . Bibcode :2017arXiv171110604D . Accessed 2018-05-23. All operations in TensorFlow Distributions are numerically stable across half, single, and double floating-point precisions (as TensorFlow dtypes: tf.bfloat16 (truncated floating point), tf.float16, tf.float32, tf.float64). Class constructors have a validate_args flag for numerical asserts
^ “Facebook has a new job posting calling for chip designers ”. 2020年10月19日 閲覧。
^ “Subscribe to read | Financial Times ”. www.ft.com . 2020年10月19日 閲覧。
^ Abu Sebastian; Tomas Tuma; Nikolaos Papandreou; Manuel Le Gallo; Lukas Kull; Thomas Parnell; Evangelos Eleftheriou (2017). “Temporal correlation detection using computational phase-change memory”. Nature Communications 8 . arXiv :1706.00511 . doi :10.1038/s41467-017-01481-9 . PMID 29062022 .
^ “A new brain-inspired architecture could improve how computers handle data and advance AI” . American Institute of Physics . (2018年10月3日). https://phys.org/news/2018-10-brain-inspired-architecture-advance-ai.html 2018年10月5日 閲覧。
^ Carlos Ríos; Nathan Youngblood; Zengguang Cheng; Manuel Le Gallo; Wolfram H.P. Pernice; C David Wright; Abu Sebastian; Harish Bhaskaran (2018). "In-memory computing on a photonic platform". arXiv :1801.06228 [cs.ET ]。
^ Zhong Sun; Giacomo Pedretti; Elia Ambrosi; Alessandro Bricalli; Wei Wang; Daniele Ielmini (2019). “Solving matrix equations in one step with cross-point resistive arrays”. Proceedings of the National Academy of Sciences 116 (10): 4123-4128.
^ a b Marega, Guilherme Migliato; Zhao, Yanfei; Avsar, Ahmet; Wang, Zhenyu; Tripati, Mukesh; Radenovic, Aleksandra; Kis, Anras (2020). “Logic-in-memory based on an atomically thin semiconductor”. Nature 587 (2): 72-77. doi :10.1038/s41586-020-2861-0 .
^ “NVIDIA launches the World's First Graphics Processing Unit, the GeForce 256 ”. 2020年10月19日 閲覧。
^ “Self-Driving Cars Technology & Solutions from NVIDIA Automotive ”. NVIDIA . 2020年10月19日 閲覧。
^ “design of a machine vision system for weed control ”. June 23, 2010時点のオリジナル よりアーカイブ。June 17, 2016 閲覧。
^ “qualcomm research brings server class machine learning to every data devices ” (October 2015). 2020年8月30日 閲覧。
^ “movidius powers worlds most intelligent drone ” (2016年3月16日). 2020年8月30日 閲覧。
外部リンク