Cygames Research研究日誌 #19 ~ゲーム業界で活用されている深層学習技術(前編)~

サイマガ読者のみなさま、こんにちは。
Cygames Research所長の倉林 修一です。Cygames Researchとは、最高のコンテンツを生み出すためにサイゲームスが設立した基礎技術研究所で、この連載記事では、当研究所での研究成果や活動をご紹介しています。

おかげさまで前回の「誰でも実践できる最高のプレゼン技法」は大変ご好評をいただいたようで、テンプレートのプレゼンファイルにも数多くのアクセスがありました。読者のみなさまのお役に立ったようであれば大変うれしく思います。ご紹介した4つの型は、極めてシンプルでありながら高い汎用性を持ちますので、これを足掛かりに色々なデザインに挑戦していくことも良いでしょう。また、プレゼンが上手くなると、プレゼンのチャンスがたくさん舞い込むようになります。どんな仕事でも場数をこなすほど上手くなりますので、最初のきっかけとなる成功を掴み取ることが大切です。ぜひ、4つの型でみなさまの成功を掴み取ってください。

さて、先月は柔らかい内容の記事でしたので、今月は硬派に、産業界、特にゲーム業界で注目すべき深層学習技術についてお話ししたいと思います。深層学習(Deep Learning)は昨今のAIブームの中心的な技術であり、膨大な研究開発投資が行われている分野です。深層学習に関連する研究プロジェクトの数も多く、世界最大の計算機科学に関する国際学会であるACM(Association for Computing Machinery)のデジタルライブラリで、”Deep Learning”というキーワードで検索すると、30万件以上の論文がヒットします。他にもarXivという査読前の論文を公開するサービスもあるため、毎日数十件の論文が新たに出版されている状況です。

この百花繚乱の状況は、Web小説の異世界転生ジャンルのようなもので、深層学習という大きなジャンルの下に数多くのサブジャンルがあります。例えば、CNN, RNN, LSTM, Transformer, GPT-J, GAN, StyleGAN, OpenAI Five, NeRFなどなど、数多くの深層学習モデルがあり、AIをゲームに活用するためには、どのモデルにフォーカスして研究開発を進めるべきか、適切な判断が求められるのです。

これはいわば、「異世界転生」というメジャーなジャンルの中に、無双系、生産系、復讐系、スローライフ系、などなど、さまざまなサブジャンルが存在しているようなものなのです。しかも、異世界転生モノと同じように深層学習の研究にも「最近の流行」があり、さらに「廃れたと思っていた異世界転生の過去作品がアニメ化で一気にリバイバル」と似たような「ちょっとした工夫で過去の深層学習モデルが最先端に返り咲く」という現象もよく起きます。まさに、深層学習は異世界転生ジャンルなのです。

深層学習はブラックボックスではない

一昔前は、深層学習はなぜ上手くいくのかわからない「ブラックボックス」と揶揄されることもありましたが、昨今では深層学習の原理の解析も進み、なぜディープなのか、なぜ膨大なパラメーター数が必要なのか、という問いへの答えが揃いつつあります。例えば、下記の文献では、深層学習を深層(ディープ)たらしめている層の深さ、すなわち、ニューラルネットワークの層を増やすことが、他の機械学習の方式との比較において、深層学習の理論的な優位性に繋がっていることを明らかにしています。

  • 今泉 允聡, 深層学習の原理解析:汎化誤差の側面から, 日本統計学会誌, 2020-2021, 50 巻, 2 号, p. 257-283, 公開日 2021/03/05, Online ISSN 2189-1478, Print ISSN 0389-5602, https://doi.org/10.11329/jjssj.50.257.

これは、浅い層(前半の層)が、特徴空間を部分空間の分割することや次元の選択を行い、深い層(後半の層)が実際の関数に近似するパラメーターの学習を行っているという直感的な理解に繋がります。すなわち、複雑な関数(単純な滑らかな関数ではなく、非連続的な滑らかな関数)の学習を、多層化による分割統治(divide and conquer)する技術が深層学習だと言える可能性が示唆されているのです。

さらには、人工知能に関する世界トップクラスの国際会議である NeurIPS 2021でOutstanding Paper Awardを受賞した下記の論文では、学習データの次元数とモデルのパラメーター数の関係を数理的に解析しています。深層学習はもはやブラックボックスではなく、その詳細が理論的に明らかになりつつあるのです。

どんな学術分野でも同じですが、理論的背景がしっかりしてくると、「鉄板」と呼べるような優れたアプローチが増えてきます。異世界転生ジャンルでいえば、「とりあえず冒険者ギルドがあると物語を展開しやすい」というようなものです。便利ですよね、冒険者ギルド。私はいまだに冒険者ギルドの資金源を理解できていませんが。今回は、そのような「鉄板」と呼べる深層学習/機械学習のモデルを4つご紹介します。

2022年に活用すべき深層学習技術は4つ

ゲーム開発に応用しやすい深層学習/機械学習の方式として、当研究所では、①Transformer、②GAN、③NeRF、④ANNの4つに注目しています。まず今月は、①Transformerと②GANについてご紹介しましょう。

■異世界転生なら主人公クラスの汎用性「Transformer」

Transformerは元々、自然言語処理の分野で開発されたモデルですが、最近は画像処理、動画像処理などさまざまな分野で活用されています。端的には、文字列のようなシーケンスを別のシーケンスに変換するタスクに優れており、自動要約や機械翻訳のようなテキストの処理から、画像のセグメンテーション、動画像内の人間の動作理解など、一連の流れがあるデータの処理に優れた性能を発揮しています。最近は「とりあえずTransformerを適用してみたら良い結果が出た」というような雰囲気の論文も散見されるような気がしますが、それくらい汎用性の高いモデルです。「異世界に転生したらチートスキルが全部ディープラーニングだった」という小説を書くなら、主人公にはこのTransformerを持たせておくと良いでしょう。

Cygames Researchでは、ゲームのリプレイログを網羅的に学習し、「次の一手」を計算するAIの研究開発に用いています(図1)。ゲーム用AIの研究では、既存のリプレイログ、という人間による操作内容を記録したログの活用が鍵となりますが、Transformerは、このリプレイログの学習に極めて有効です。特に、パラメタ数を数億以上に拡大すれば、ゲーム内の状態空間をエンコードした学習も可能です。Hugging Face Transformers と呼ばれるOSSのライブラリを用いることで、誰でもすぐに使える点からも、オススメのモデルです。

▲図1. Transformerを用いたリプレイログの自動学習
  • 電子情報通信学会誌2021年8月号, ニュース解説, “クラウド上でのゲームアプリ仮想化・並列化によるAI全自動デバッグの実用化――約3,000人分のデバッグ作業を24時間365日稼動――,” Vol.104 No.8, pp.936-937, 発行日:2021/08/01, Online ISSN:2188-2355, Print ISSN:0913-5693, https://www.journal.ieice.org/summary.php?id=k104_8_936&year=2021&lang=J.

■異世界転生なら大人気になるはずの「GAN」

GANは、敵対的生成ネットワーク(Generative Adversarial Networks)と呼ばれるもので、ものすごくざっくり説明すると「何かによく似たデータを生成する」というタスクに向いているモデルです。異世界転生モノでも、スキルをコピーしたり吸収したりするチート能力は大人気ですよね。GANはそんな、「なんでもコピーできる」系の能力です。GANが異世界に転生すれば、不動の大人気を誇り、アニメ化もされるに違いありません。

Cygames ResearchはこのGAN研究に力を入れており、手書きのスケッチ画像から、自然の地形にそっくりな3Dマップを生成する研究を行っています(図2)。また、ゲーム用アセットの自動生成のみならず、ゲーム上で偶然性を実装するために「サイコロ」のように使われる「擬似乱数生成器」と呼ばれる複雑な関数を、GANで生成可能にする研究も行なっています(図3)。

  • Tong Wang and Shuichi Kurabayashi. “Sketch2Map: A Game Map Design Support System Allowing Quick Hand Sketch Prototyping,” In Proceedings of the 2020 IEEE Conference on Games (CoG), Online, 2020, pp. 596-599, doi:10.1109/CoG47356.2020.9231754.
▲図2. 手書きのスケッチ画像から3Dマップの自動生成
▲図3. 擬似乱数生成器の挙動を学習するGANの研究

GANは、Generator(生成ネットワーク)とDiscriminator(識別ネットワーク)の2つのネットワークを競争させ、Discriminatorは渡されたデータが生成されたものか、それともオリジナルのデータ化を識別することに特化したネットワークです。Generatorは、Discriminatorが見破れないように、より精度の高いデータを生成するネットワークです。

両者が競争をする(パラメタを変更しながら学習を進める)ことにより、あたかも本物にそっくりの(しかも本物とは異なる)データを生成することができます。ゲーム開発では、プロシージャル技術と呼ばれる、街、都市、ダンジョン、樹木などの環境の自動生成を行う技術が活用されています。Houdiniというソフトウェアがプロシージャルモデリングのツールとしてよく知られています。GANは、このようなゲーム用アセットの自動生成・半自動生成の鍵を握る技術です。GANはなかなか制御が難しい技術ではありますが、最近はGANの学習精度を安定化させる研究も進んできており、実用化に向けた改善が続いています。

終わりに

今月は、異世界転生ものになぞらえながら、深層学習技術/機械学習技術についてお話ししました。AI分野では数多くのモデルが提案されていますが、2022年の前半では、とりあえず、TransformerとGANの2つを押さえておけば、色々な学習にチャレンジできると思います。次回は、NeRFというコンピュータグラフィックスに適したモデルと、ANN(Approximate Nearest Neighbor)という深層学習ではないが極めて重要なアルゴリズムをご紹介します。お楽しみに。