機械学習によるレンダリングについて – はじめに

機械学習によるレンダリングについて – はじめに

フレドリック・ヘルツベルユです。出身はスウェーデンで、研究開発エンジニアとしてニューラルネットワークによるリアルタイムレンダリングへの応用や、GPUの効率的な活用方法について研究しています。

ニューラルネットワークベースのリアルタイム描画は、いまだ発展の黎明期にあります。つまり、大胆で思い切ったイノベーションの余地があるということです。このブログでは、その可能性を探求します。探求は下記の題を含めます。

❶ ニューラルネットワークとレンダリングのデータ依存性パターン
❷ GPUのSRAMと同期境界の構成
❸ 機械学習ベース・レンダリングの精度
❹ トランジスタとプロセッサの発展
❺ GPUの命令スケジューラ向けの最適化
❻ 教師データ生成とトレーニングの最適化


このアプローチに対して有利なトレンドがいくつかあります。初回はイントロダクションとしてこのトレンドを紹介します。


❶ 半導体のトレンド

  デナードスケーリングは大幅に低速化しており、クロック周波数の向上はほとんど止まっているものの、多くの人が思うほど、まだまだ終焉を迎えているわけではありません。集積密度の増加は完全にスケジュールどおりではありませんが、それほど外れているわけでもありません。(*1a)
  このバランスが変わったことによる最初の逃げ道は、マルチコアアーキテクチャの発達でした。次は、計算能力の過剰な向上です。メモリの待機のため、ほとんどのクロックサイクルがアイドル状態で消耗されます。この問題は、しばらくはSRAMキャッシュサイズの急激な増加によって、部分的に解消されてきました。
  しかし、それでもバランスの不均衡は止まりません。7nm(TSMC)から5nm(TSMC)で論理密度は80%向上しましたが、SRAMの向上は35%のみです。5nm(TSMC)から3nm(TSMC)では、論理密度は70%向上しますが、SRAMは20%にとどまります。計算能力はどんどん使える世界に向かっていますが、データはそうもいきません。(*1b)
  ニューラルネットワークは豊富な計算力を活用することが可能で、且つ非常に局所性の高いデータ依存性を持つことがよくあります。これはあまり普通のことではなく、好都合です。これにより、ニューラルネットワークは次世代の半導体デバイスに自然に適合します。
  現在のニューラルネットワークの実装では、この点を活かしきれていませんが、ピースはすべて揃っています。

❷ 業界文化的なトレンド

  他のプログラムでは、人が読んで理解できることが求められますが、AI プログラムのロジック(その重み行列)は、必ずしも理解可能であることが必須ではありません。このように、業界文化に一貫性がないおかげで、ニューラルネットワークは従来のプログラムよりも多くの利点があります。
  ニューラルネットワークの重みにより、学習および表現されるプログラムのロジックは、従来の単なるスパゲッティコードとは異なります。分岐がなく、ベクトル化されたマルチスレッドのスパゲッティコードです。ソフトウェアエンジニアにとって、このようなコードは冒涜的で禁止されています。同時に、究極のパフォーマンス最適化でもあります。
  社会認知の概念としてのAIは、期待をリセットするものであり、欧米における1950年代の楽観論への回帰、そして、かつて可能であるにもかかわらず臆病になり実現できなかった多くのことを、ようやく実現可能にするものです。(*2)

❸ アセットのトレンド

  エンジニアリングの歴史を紐解くと、その昔は多くの哲学の一つでしたが、明示的な分類と標準化によって歴史的に成功しました。ただし、このような思想による実践では、アセットの作成と活用においてスケーラビリティの課題も発生します。
  機械学習は、この点においてもっと柔軟になれる可能性があります。何百万もの部分的または規格外のアセットを、矛盾のない内部表現に統合するのです。このメリットは、ランタイムにも当てはまります。もはやデータストレージ(およびプログラムロジック)をきちんとラベル付けされた単位に分割することはなく、以前は仕方がなかった不要なデータ遅延を減らしたり削除したりすることができるのです。
  ハイスペックなハードウェアになるほど、より野心的なアセットの利用が可能になり、そうしたアセットを大量に製作し運用することは、相当のチャレンジになります。結局のところ、大量のアセットであれば、機械学習は他のテクノロジーより容易かもしれません。

❹ 投資トレンド

  生成モデルのピークパフォーマンスは、写真レベルのクオリティーです。問題は、生成モデルがリアルタイムレンダリングを十分に機能するためには、毎回、毎秒120枚のそのような画像を生成する必要がありますが、通常はそれほどの一貫性はありません。
  政府が出資する機械学習の学術機関は、私たちとは目標が若干異なります。私たちが求めるものは、彼らの求めるものではありません。このことは、彼らが構築するニューラルネットワークにも表れています。それでも、私たちの目標と彼らの目標は近づいてきています。
  世界の各国政府は、過去15年間で目覚ましく、そしておそらく前例のないほど、私たちに適合してきました。逆ではありません。ビデオゲーム業界と社会の間の標準化にまつわる権力争いで、私たちは勝ちました。彼らは私たちのGPUを使い、私たちにとっての基準に沿って構築します。(*3)
  この副次的影響として、私たちは彼らの研究成果をそのまま利用できます。これは、非常に価値があります。今後も、可能な限りこの基準から離れないようにした方が有利です。


私たちは、このすべてのトレンドの有利な点を手に入れています。設計の一部はさらに先へ進んでいます。
このブログの内容は、GPUハードウェア分析や機械学習アーキテクチャから実際のニューラルネットワークのトレーニングの最適化に至るまで、多岐にわたります。データ依存とメモリ遅延は、アーキテクチャ上の前提を見なおす根拠となります。一般的なケースは解決不可能なことが多いものの、世界を見れば、結局、特殊なケースで構成されているのです。

次回は【オンチップとオフチップの区別】をご紹介します。

※このブログは英文を和訳したものです。英語で書かれた原文はこちらからご参照いただけます。


(*1a) TSMC社によると、 2015年の20nm → 16nmは、関わる2つのノードの名前が示唆する内容にもかかわらず、明らかに最悪の状態で密度の向上は0%でした。20nmの電力の問題が解決されたため、16nmは極端に良好と認められたノードでした。

(*1b) 3D Stackingという技術によって状況がさらに変わります。コストが関係ない商品ならL3のSRAMはよく追加できますが、量産の製品ならそうでもないらしいです。

(*2) より高品質なツールやハードウェアへのアクセスも重要なファクターです。楽観主義については、主に技術的な進捗の速度自体に限定されています。AIの社会的影響に関する期待は、20世紀初頭のヨーロッパにおける懸念に沿っています。

(*3) この重大さに当時の科学者は気づいていました。「ビデオゲームは基本的に物理シミュレーションであるため、GPUが量子化学シミュレーションに適しているのは自然である」といったアーキテクチャの移行初期における解釈は、むしろ一般的でした。私たちがすでに彼らに適合しているため、彼らは私たちに適応できました。 

この記事をシェアする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です