ゲームを使った機械学習の研究の歴史と、予想されるこれからの事例

三宅陽一郎氏(以下、三宅):(スライドを示して)先ほどの森川さんの言葉を使わせていただくと、このマップがゲームを使った機械学習の研究の歴史なんですね。「Teo Feng」はマイクロソフトさんの研究です。実はゲームで最初に強化学習の研究をしたのがマイクロソフトリサーチさんなんです。

これは偉大な仕事で、なんと2003年(に作られたもの)です。もちろん普通の強化学習ですが、前にゲームでやったのが実はあって、そのあとの『Forzamotor Sports』の強化学習もマイクロソフトリサーチさんの商品です。

実はゲームにおける機械学習の歴史は、マイクロソフトさんから始まっているんですね。そのあとがいないんです。誰も後を継がなくなる。

(一同笑)

それで結局、いわゆる古典的な強化学習を追う人がいなかったんです。それでAlphaGOがDQNという方法ですごいAIを(開発)して、みんな「あー、使えるんだ」みたいな。でもそのあともゲーム開発者がやった仕事は実はすごく少ないんですね。

逆にゲーム業界の外でいろいろな研究が進んでいました。これはちょっと残念なことではあるんですが、逆に言うと「みんなゲームを使ってゲーム開発会社のために研究してくれたのね」と。そうは思っていない人もいるわけですが。

(一同笑)

そういう見方もできる。だから、逆に今の日本が使える知見がゲーム業界の外に溜まって、ゲーム以外の他の業界で、自然言語処理からアクションゲームからeスポーツの動画的なゲームまでいろいろ使って研究されていて。

その蓄積はすごいものがあって、それを先ほどアカデミズム(なところ)からゲーム産業に持ってくるのは課題でもあるんですね。

でも、気が付くとゲーム産業以外でゲームにおける機械学習がすごく盛り上がっている。当のゲーム産業の真ん中では「機械学習の部分のあれを製品に組み込むのは無理だね」ということをやっていたという歴史が今はあって。だからこれをEAさんとか研究者がいるから近づけているのだけど、さすがにまだタイトルにまでは届いていない。

さすがに2022年はいくつかPCゲームでディープラーニングの導入例が出てくる。どうしても学習はゲーム内でできないかもしれないけど、学習済みの推論部分だけを使うという例は出てくるんじゃないかなとは思いますね。

桑野範久氏(以下、桑野):ありがとうございます。

なぜ『Sea of Thieves』では初期からのQA導入に成功していたのか

桑野:けっこう時間があっという間に過ぎて……。もっといろいろ聞きたいんですけれども。せっかくなので、会場にいる方からもし質問があれば。なければこちらでいろいろ質問しちゃいます。

質問者1:ありがとうございます。先ほどのお話の中で「初期にQAの資金を導入するのが大事、だけど難しい」という話がありました。下田さんがお話しされていた『Sea of Thieves』だと、初期からの導入に成功していた。実際にそれがどのような側面で行われたのか、具体的なものとかがあれば教えていただきたいです。

下田:『Sea of Thieves』の例ですか? そうですね。やはりフルスクラッチでゲームを作り上げていたので、そのチームが他にコードのテストをきちんとコミットごとにできるようというのを最初から組み込んでいました。あとは『Sea of Thieves』はUnrealです。

例えば「コードだけじゃなく、アクターとしてがちゃんと行動ができるように」みたいなテストをさまざまなところで組み込んでいって、ちゃんとモノが日々更新されていく。開発されていく中でも破綻がないように(すること)をきちんとやれるようにしていったというのが『Sea of Thieves』の例です。

質問者1:そうすると、QAエンジニアの方が開発内でテストをした?

下田:そうですね。(スライドの中に)URLがありませんでしたが、あの方のビデオを見てもらうと、やはり開発者と近くにいる必要がある(とわかります)。開発者にちゃんと「こういう良いことがあったと」フィードバックをして、開発者からもフィードバック(をもらう)。

お互いにフィードバックをして日々やっていくのが重要だなと。開発者の近くで話を聞いてちゃんと実装をしてみるとか、テストの計画を考えるのが重要だというのは(そのビデオの中で)語られているかなと思います。 

彼が(ビデオの中で)6つのポイントを挙げていましたが、「上層部の支援が大切だ」というのも6つのうちの1つに入れていました。やはり現場に行ってもなかなか動かないので、上層部からの後押しは大事だということは6つのポイントの中にありました。

質問者1:わかりました。ありがとうございます。

桑野:ありがとうございます。

参加者1:質問じゃなくて……。セッションもすごく勉強になったんですが、補足です。テストって、開発者側のメンバーが書いている。それ以外の開発の中のプログラマーもそういう細かいテストを開発中に書いていく取り組みをしている。

それを開発側でやってもらうためにどういう仕組みが必要なのか、どういうアプローチが必要か、どういうテストの書き方、コアみたいなものを広げて行くかまで、実はまるっとセッションの中に入っているんですね。なのでその話で興味を持った方は、普通にフリーで見えるかたちでGDC(Game Developers Conference)のサイトに載っているので見ていただけると。

桑野:ありがとうございます。GDC(Game Developers Conference)のサイトに……。いつの頃でしたっけ?

下田:2年ぐらい前ですね。

桑野:2021年。あれから2年経っている。ちなみに今の(話)がSea of Thievesが『Minecraft』でやっている話で、『Sea of Thieves』自体のアンリアルエンジンでやったテストの話はもうちょっと前のGDC、ヨーロッパでやったGDCであったりする。

桑野:ありがとうございます。非常に勉強になります。ありがとうございます。

ゲームのおもしろさをAIが判定することはできるようになるのか

桑野:他にも質問大丈夫ですか? 終わってからも随時質問は受け付けますので。じゃあ松木さんはなにか質問ありますか? 時間的にほぼ最後になりそうです。

松木晋祐氏(以下、松木):わかりました。そうですね。三宅さんに究極の質問なんですが、ゲームのおもしろさをAIが判定することはできそうというか、ありそうでしょうか?

三宅:2つあると思います。おもしろくないゲームを見つけることはできると思います。

松木:おぉー。

三宅:極論を言うと、「このゲームは2時間やっても1ステージもクリアできない」とか「これをAIにやらせても1,000回に1回ぐらいしかクリアできない」とか。欠点はわかりやすいと思います。

それ(おもしろくないゲーム)を潰していくことを見つけて、それをさらにAIがやってくれるんだけど、バランシングが崩れているとか、QAの中でもバランシングを検出するのは……。ゲームデザイナーはいっぱい試したいんですよね。

「このパラメーターを書いたらどうなるか」とか。本当にケミストリーみたいなもので、ゲームデザインの人って、100個のパラメーターがあっても執拗にずっと試し続ける。QAは溜まったもんじゃないですけど。

でも、崩れているか崩れていないかはAIのほうがやりやすいので、パッと押せば5分で1,000回やってくれる。

三宅:もう1つ、おもしろさがわかるのかというと、必要条件は満たせるのかなと思います。「このゲームは30秒でここまでいかないといけない」とか。でもAIはそうなっていないんですね。だから本当に十分なのかはなかなか難しいと思います。

ただ、先ほどお話ししたように、メタAIのところにおもしろさのエッセンスを溜めていくのはできるのかと(いう問題はある)。

そうすると、例えばおもしろいから序盤はゆっくり行って、どんどん(スピードが)上がっていく起承転結の転でなんかすごくボタンをワーッと押さないといけなくて、最後にゆっくりいくみたいなパターンは、メタAIからすると新人が来た時に「お前のゲームはそうなっていない」とか「おもしろさのパターンにはまっていないよ」と(いう評価になってしまう)。

それも実はおもしろいのかもしれないけど、評価付けはできる。それは100パーセント信頼する段階ではありませんが、ゲームデザインのおもしろさをAIの中にある程度パターン化して溜めることはおそらくできるかな。アンチパターンを溜めることはできないかなとは思いますね。

桑野:ありがとうございます。

三宅:続きですが、例えばそれで例えばゲームを100個作る。それで最初のQAで人間の評価をたくさん検出する。それを機械学習する。

つまり、このインプットで「人間がこう思っているよ」ということを学習させていくことは一応可能で。そのゲームに関しては人間の基準をAIが学習しているから。何を学習しているかはわからない。そういう点数付けをやっている。

「このAIに聞いてみてダメだったらダメです」みたいなやり方も多少あり得るかな。パズルゲームでそういうのをやっているAI研究はある。

桑野:ありがとうございます。つまらないゲームがわかるのはけっこう便利かもしれないですね。

三宅:デバッガーさんも一緒にいますからね。

桑野:ですよね(笑)。ありがとうございます。

AIの民主化の部分も徐々にしていかないといけない

桑野:せっかくなのでこのまま最後の質問なんですけど。

下田:三宅さんに質問ですか? そうですね。AIとか機械学習、教科学習がゲームに使われ始めているというのはすごく感じます。僕はどちらかというとそれを見る側なので、みなさんが適用されたものが世に出てくるのをすごく楽しみにしているし、参加者のみなさまがこういうAIを実際にゲームに使い始めるのをワクワクして待っています。ぜひみなさん、いろいろ試してみてくださいと思いました。

桑野:ありがとうございます。

森川:そうですね。まったく違う領域の話ですが「不気味の谷」とよく言われるもの。人間に近づけば近づくほど、一瞬「気持ち悪い」と思われるように、もうゲームAIも本当に実用にすごく力を入れているところになると思うんですよ。だから最後に「その谷をどうやって渡るの?」という話をずっとしていたんですが、自分自身は30年以上どっぷりとAIの谷に落ちたままです。

(一同笑)

そこにいたんですが、QA AIもそうですが、それを真剣に考えられるまで来ていることを実感しているので。機械学習がゲームの中で真面目に語られて、実際に仕事として僕のところに届くレベルが始まった時代だなと思っていました。

桑野:森川さんありがとうございます。ではちょっと最後に三宅さんに締めていただきたいです。今の話を聞いていて、やはりこの2、3年でメチャクチャ進んだのかなと。実用化に向けていろいろなものが出てきたし、前回のお話から見てちょっとずつ進化しているんじゃないかなと。そこを乗り越えれば実際に僕らのツールになりますよね。使われ始めたAIエンジニアのサポートなしでも使えるようになっていく未来が見えてきた。

明らかに5年前よりかは進んだというのは今日のお話を受けて感じました。(みなさんも)そういう感じを受けるようになったと思うんですが、最後に三宅さんにさらにこれからどうなっていくか。1、2年の間にわりと使われるようになるのかとか、なにかあれば一言いただきたいと思います。

三宅:そうですね。AIがクオリティを出せるところと出せないところがあって。例えば今は2DのイメージがものすごいStable Diffusionとか、ああいうMidjourneyが出てて。2023年もおそらく3Dモデルの自動生成(が中心になると思います)。2021年の学会で一番ホットだったのは3Dモジュール生成なので。

2Dの自動生成もDiffusionモデルは2021年の秋ぐらいの論文があって、2023年の夏ぐらいにでたから、3Dモジュールの生成は2022年の暮れにすごい論文がいっぱい出てきて、実際に2023年の夏ぐらいにどんどんいろいろな3D生成モデル3D生成モデルバブルみたいな(ものが出てきて)。

ただ、(3D生成モデルバブルは)2Dイメージのクオリティほど高くないです。それはアニメーションを要するので、技術力が高すぎるから難しい。それでもいつ(出てくる)かといったら、それはそんなに先ではないですね。

言語生成はものすごく大きなデータが必要なので、なにか……。今GPT-3のあたりがあって。簡単に言うと、人間の創作活動を置き換えるのはまずあり得ない。ただ、そこを人間とAIが協調するというのはやはりあって。

QAのプロセスでもやはりAIと人間が協調するのは必要ですが、今のAIがエンジニアしか触れないのが欠点なんですね。でも御社(AIQVE ONE)はツールを作っているという話はすばらしいと思っている。一番重要なのは、これはAIと人間のインターフェイスなんです。

コンピューターも昔はコマンドを打ったりして(使うもので)、エンジニアしか触れなかったんですよ。でも基本的には誰でもピコピコやっている。AIもいずれ誰でもピコピコやるものになるんですが、(そのために)何が足りないかと言われたらインターフェイスで。

(インターフェイスがなくても)できるのはわかっているんです。できるのはわかっているけど、それをうまく使わせるツールとか、GUIとか、インターフェイス(が必要)。これまでのポチポチなインターフェイスじゃないかもしれない、新しい時代のAIと人間をつなぐインターフェイスが重要で。

それを作っていく必要があってQAのプロセスはエンジニアがやるわけじゃない。テストも専門の人がやるわけだから、誰でも使えるポチポチAIとか、そういうのを作るというのがこれから必要。要するに、AIの民主化の部分も徐々にしていかないといけないのかなと思います。

桑野:三宅さんありがとうございます。なんか弊社で作っているツールの次のフェーズが一致していたような気がするので、とても勇気づけられたし、うれしいなと思いました。ありがとうございます。

時間があっという間に過ぎてしまって、もう終わりの時間です。ということで、QA Tech Night vol.7はこれにて終了したいと思います。みなさま、ありがとうございます。