人工知能(AI)への2019年の投資額(欧州全域)は前年比49%増になる見込みだという。IDCのCustomer Insight & Analysisで上級リサーチアナリストを務めるアンドレア・ミノン氏は次のように話す。「Sephora、ASOS、Zaraといった多くの小売企業やNatWest(National Westminster Bank)、HSBCなどの銀行は、既にAIのメリットを実感している。来店者数と収益の増加、コスト削減、パーソナライズされたより快適な顧客体験などがその例だ」

CPUベースのコンピュータアーキテクチャは、機械学習タスクには適さないというのが業界共通の認識だ。現状では、GPUが機械学習の実行に必要なパフォーマンスを提供している。
だがWebを利用する大手企業はさらに高いレベルのパフォーマンスを必要とし、AIの処理を加速するカスタムアクセラレーションハードウェアを開発しつつある。Financial Timesが2019年2月に報じたFacebookの動向によると、Facebookは機械学習向けに独自チップを開発しているという。
2016年、GoogleはTPU(Tensor Processing Unit)というASIC(Application Specific Integrated Circuit:特定用途向け集積回路)を公開した。機械学習に特化したチップで、DNN(Deep Neural Network)深層学習フレームワーク「TensorFlow」に最適化されている。
当時、Googleの卓越したハードウェアエンジニアだったノーマン・ジョアッピ氏は次のように述べている。「当社のデータセンターはTPUを既に1年以上運用しおり、1ワット当たりの機械学習パフォーマンスが桁違いに優れていることが分かっている。これは約7年後の未来(ムーアの法則の第三世代)の技術にほぼ匹敵する」
TPUは「Google Cloud Platform」(GCP)で利用できる。最上位バージョンの「v2-512 Cloud TPU v2 Pod」は現在αテスト中で、使用料はPodスライス/時間当たり384ドルだ(訳注)。
訳注:Googleの「Colaboratory」で(若干制限はあるが)GPUとTPUを無料で使うことができる。Colaboratoryは不定期に仕様が変更されておりGPUやTPUの詳細も公表されていないが、2019年4月末時点のGPUは「NVIDIA Tesla T4」(nvidia-smiコマンドで確認可能)。
ASICは特定アプリケーションの実行専用に設計する。TPUの場合はTensorFlow DNNモジュールがこれに当たる。そのため極めて高額になり、用途も限定される。「Microsoft Azure」はFPGA(Field Programmable Gate Array)を使ってアクセラレーションを提供している(訳注)。Microsoftによると、FPGAはASICに近いパフォーマンスを実現するという。
「FPGAは新しいロジックの実装や再構成が可能になる。ハードウェアアクセラレーションを利用する機械学習アーキテクチャを当社は『Brainwave』と呼んでいる。これはIntelのFPGAをベースに『データサイエンティストや開発者がリアルタイムAI演算を高速化できる』ようにしている」(Microsoft談)
GPU による速度向上
機械学習を高速化しようと考える多くの組織の出発点となるのは、ほぼ間違いなく GPU だ。
NVIDIA によると、AI アプリケーション向けにDNN を学習させるのに GPU は非常に適しているという。
「ニューラルネットワークは多数の同一ニューロンで作成される。そのため本質的に並列性が高い。GPU は並列処理に対応しており、CPU 単独での学習よりも必然的に大幅な高速化を実現する」(NVIDIA 談)MathWorks で並列コンピューティングツールのシニアエンジニアリングマネジャー兼プリンシパルアーキテクトを務めるジョス・マーティ
ン氏は次のように話す。「GPU やそれによる高速演算が登場しなければ、この分野の躍進は見られなかっただろう。AI 開発と GPU コンピューティングは密接に関係しながら互いの成長を後押ししている」
GPU はここ数年の進歩により、「混合精度アルゴリズム」がサポートされるようになったと同氏は話す。
機 械 学 習 向 け の GPU は 、 Amazon Web Services(AWS)の「Amazon EC2 P3」など、クラウドで簡単にアクセスできる。Amazon EC2 P3 は最大 8 個の「NVIDIA Tesla V100」と最大100Gbps のネットワークを 1 時間当たり 31.22 ドルで提供する。
当然、機械学習が処理するデータはクラウドに配置する必要がある。規制やサイズによってデータをクラウドに置けない場合は、自社独自の機械学習アクセラレーターを構築することになる。