無人タクシーに乗るためのマニュアル、Waymoは乗客を乗せて自動運転車の実証実験を開始 (1/2)

November 22nd, 2017

Waymoは開発している自動運転車を無人タクシーとして運行することを発表した。ドライバーが搭乗しない完全自動運転車が市街地を走行する。無人タクシーを利用できる時代が到来した。無人タクシーが移動手段となるが、どう利用すればいいのか分からない。少し気が早いが、自分の街にWaymoがやってきた時に備え、無人タクシー利用手順をマニュアルとして纏める。また、Waymo無人タクシーに乗って大丈夫なのか安全性を評価する。

出典: Waymo

無人タクシーの運行が始まる

Waymoは2017年11月、自動運転車に乗客を乗せ公道で運行すると発表した。運転席にドライバーが乗らない無人タクシーが市街地を運行する。この実証試験は「Early Ride Program」と呼ばれ、Phoenix (アリゾナ州) とそれに隣接する地域で展開される。このプログラムは2017年4月に開始されたが、今月からセーフティドライバーが搭乗しない無人タクシーとして運行される。

Waymo無人タクシー利用法】

スマホアプリで無人タクシーに乗る

車両は「Chrysler Pacific Hybrid」 ミニバンを改造したものが使われる (上の写真)。利用者はスマホアプリを使って無人タクシーを利用する。Uberを使うときと同じ要領で、現在地と目的地を入力して配車をリクエストする。

クルマに搭乗する

クルマが到着すると利用者は後部座席に座ることとなる。セイフティドライバーやエンジニアは搭乗しないため、運転席と助手席は空席となる。ただし当面の間、セイフティドライバーは最後部座席に搭乗し、運行を監視するとしている。

車内に設置されている機器

車内にはクルマを利用するための機器が設置されている。座席の前にはディスプレイ (In-Car Display) が備え付けられている (下の写真)。ディスプレイにはクルマの走行状態が表示される。

天井部分には操作ボタンが設置されている (下の写真、最上部)。ボタンは四つあり、右から「Start Ride (発進)」ボタン、「Pull Over (非常停止)」ボタン、「Lock/Unlock (ドアの施錠・開錠) 」ボタン、「Help (オペレータとの通話)」ボタンとなる。シートベルトを締め、ドアをロックして、Start Rideボタンを押すとクルマが発進する。

出典: Waymo

ディスプレイに運行状態を表示

走行中は座席前のディスプレイに運行状態が表示される。画面にマップが表示され、現在地がアイコンで示され、走行ルートが実線で表示される。周囲のオブジェクト (他の車両や自転車など) も表示される。クルマは何を見て、どのような判断を下したかが分かり、安心して運転を任せることができる。この他に、到着予定時間と経過時間なども表示される。

クルマの運行状態を監視室でモニター

Waymoはドライバー無しで走行するが、クルマの運行状態は監視室 (Waymo Operations Center) で遠隔モニターされている。非常事態が発生すると、乗客は「Pull Over」ボタンを押してクルマを停める。「Help」ボタンを押すとWaymo監視室に繋がり、専任スタッフと通話できる。またスマホアプリからも通話できる。クルマの運行状態は監視室で人間がモニターしており、安心感が格段に向上する。

料金はアプリに課金される

クルマは全行程を自動で走行し、目的地に着いたらそこで停止し、乗客は降車する。料金は利用者のアプリに課金される。ただし、Early Ride Programでは料金は無料となっている。利用者はコメントなどをアプリに投稿できる。この手順もUberと同じで戸惑うことはない。

Waymo無人タクシーはどこを走れるか】

Phoenixで運行する

当初Waymo無人タクシーは運行できる範囲が限られている。現在はPhoenixを中心に運行している。ここは砂漠地帯に作られた街で、天気は良く、雨や雪はほとんど降らない。比較的新しい街で、道路は整備され、自転車や歩行者は少ない。自動運転車にとって走りやすい環境である。

アリゾナ州はハイテク企業を誘致

アリゾナ州知事のDoug Duceyは州知事令 (Executive Order) に署名し、自動運転車の運行を認可した。アリゾナ州は規制を緩和して、ハイテク企業の誘致を進めている。アリゾナ州は地理的な条件だでなく、法令面でも自動運転車にとって走りやすい場所である。(カリフォルニア州は2018年から自動運転車の走行を認める予定。)

Waymoが走れる地域

Waymoはクルマが走れる地域を「Operational Design Domain (ODD)」と定義する。クルマは、地形、道路の種別、気候、昼間・夜間、法令などの条件により、走れる場所が決まる。これら条件を満たす場所がODDとなる。(ODDは携帯電話の圏内に相当する。) 下の写真はそのイメージで、青色で示された部分がODDで、Waymoはこの地域だけを走ることができる。シェイドの部分は整備中の地域で、準備が整い次第走れるようになる。

出典: Waymo

走行できる気象条件

WaymoはODD域内を運行していても、走行できない事象が発生すると、安全に停止するよう設計されている。この状態をMinimum Risk Conditionと呼ぶ。

走行できない事象とは、吹雪や激しい雨などである。例えば、激しい夕立に出会うと、クルマは安全な場所で停止する。この事象が終わると (夕立が止むと) 、クルマは再び運行を始める。

夕立で止まるクルマは商品とは言えず、Waymoは雨や雪が降っても走行できるよう、アルゴリズムの教育を続けている。雨の中の走行試験はワシントン州で、雪の中の走行試験はミシガン州で進めている (下の写真)。

出典: Waymo

道路交通法に準拠

Waymoは道路交通法に従って運行する。道路法規が変わると、それにあわせてソフトウェアを更新する。米国では州により道路交通法が異なるため、Waymoは運行する州の法令に従う。例えば、自転車レーンのある交差点で右折するルールは、カリフォルニア州とテキサス州で異なる。Waymoはこれらの違いをアルゴリズムに盛り込んでいる。更に、Waymoは法令だけでなく、その地域独特の慣習や運転スタイルも取り入れている。

【もし事故を起こしたら】

車両の信頼性

Waymoはドライバーなしで走行するため、車両の信頼性を強化している。クルマの主要システムは二重化され、故障しても、もう一方のシステムで走行を続ける。コンピュータ、ブレーキ、ステアリング、バッテリーなどが二重化されている。

ソフトウェアはドライバーに代わりシステムを常時監視する。ソフトウェアが問題を検出すると、クルマを一旦停車したり、運用を中止する措置を取る。

走行中にデータを収集

クルマは走行中に運行に関するデータを収集する。運行中に遭遇した様々な状況を記録し、それらを解析する。これにより定常的にアルゴリズムを改良し、ソフトウェアが更新される。事故などの問題が発生した際は、記録したデータが原因究明に役立つ。

個人のプライバシーが侵害される事態が起こるとは考えにくいが、搭乗者はクルマの運行が記録されていることを認識しておく必要がある。

事故に遭遇すると

クルマが事故に遭遇すると、ソフトウェアが衝突を検知し、安全に停止する設計となっている。更に、クルマは監視室に問題を連絡する手順となる。

連絡を受けた専任スタッフは、警察や消防と連絡を取り、事故対応 (Post-Crash Procedures) に当たる。更に、その地域のWaymoスタッフが現場に急行する。搭乗者はWaymo車内に設置してあるHelpボタンを押し、専任スタッフと通話することができる。

事故原因の解析

Waymoは収集したデータを解析し、事故の原因を究明する。カメラで撮影されたビデオや、センサーが収集したデータが使われ、事故を引き起こした原因を究明する。Waymoに問題があるときはソフトウェアがアップデートされる。車両ハードウェアは修理され、試験走行を実施し、安全を確認してから運行に戻される。

事故を防ぐためのアルゴリズム

Waymoは事故を防ぐため、また、事故になっても被害を最小にするためのアルゴリズムを搭載している。米国運輸省 (NHTSA) は、国内で発生した交通事故を分析し、事故原因やその頻度を一般に公開している。事故の殆どが、追突事故、交差点内での事故、道路から逸脱した事故、車線変更での事故で発生している。Waymoはこれら四つのシナリオを対象に、事故を防ぐアルゴリズムを開発した。

アルゴリズムの公開と検証

自動運転車ではTrolley Problem (トロッコ問題) が常に話題になるが、Waymoは被害を最小限にするアルゴリズムの詳細は公表していない。(Trolley Problemとは、事故の被害を最小限にするために、特定の人物を犠牲にすることは道義的か、という思考実験。) Waymoを含め自動運転車ベンダーは、事故回避アルゴリズムを公開し、公の機関で検証することが求められる。

Waymo無人タクシーの運転技能】

自動運転車に必要な運転技能

人間が自動車学校で、運転に必要な技能を学ぶように、Waymoも必要な運転技能を学ぶ必要がある。NHTSAは自動運転車に必要な運転機能を「Behavioral Competencies」として28の項目を定義している。自動運転車として運行するためには、これらの機能を搭載していることが求められる。更に、Waymoは独自に必要な機能を定義し、それらを実装している。Waymoは両者を合わせたドライブテクニックを搭載した車両となっている。

NHTSAが定めている自動運転機能

NHTSAが定義する機能は、自動運転の基本操作である。制限速度標識を認識し、これに従う機能を持つことが求められる。フリーウェーで高速で走行車線に行流できることや、緊急車両を検知し、適切な措置を取ることも規定している。

緊急車両の認識とアクション

Waymoは車両の点滅するライトやサイレンを認識し、その意味 (消防車であること) を理解する (下の写真)。これに従いWaymoは、道を譲ったり、路肩に停止する機能を持っている。更にWaymoは、路上の警察官や消防士を認識し、手信号による指示に従うことができる。(一般人が手信号で指示しても、Waymoはこれに従うことはない。)

出典: Waymo

スピード違反で警察に捕まったら

自動運転車が道路交通法違反などで、警察官に停止を命じられる事態への対応も必要になる。Waymoは運行する地域の警察との連携を密にし、無人タクシーへの応対方法などを警察官に教育している。Waymoはドライバー無しで走行できることや、非常事態における連絡方法について説明した。無人タクシーが営業運転を始めると、その地域の警察や消防などとの連携が、極めて重要となる。

Waymoが独自に定めた自動運転機能

Waymoは独自に自動運転に必要な機能を定め、これを実装している。Waymoはスクールバスを認識し、その地域の法令に従い、停止などの措置を取る。Waymoは路上の自転車や動物を検知し、必要な措置を取る。自転車であれば、通常より広めに間隔をとり、また、動物を認識すると、それを避ける動作をする。クルマが運転テクニックをどこまでマスターしているかで、自動運転車の安全性が決まる。これが自動運転車の差別化の要因となる。

(2/2へ続く)

Generative Adversarial Networks (GAN) とは何か、どんなブレークスルーが期待でき如何なる危険性があるか

November 10th, 2017

Generative Adversarial Networks (GAN) とはGoogle Brain (AI研究部門) のIan Goodfellowが開発したニューラルネットワークで、その潜在能力に期待が高まり研究開発が進んでいる。GANは様々なバリエーションがあり多彩な機能を持っている。GANはDeep Learningが抱える問題を解決する糸口になると見られている。同時に、GANは大きな危険性を内在し注意を要する技法でもある。

出典: Karras et al. (2017)

DCGAN:現実そっくりのイメージをリアルに生成

GANはニューラルネットワークの技法で二つの対峙する (Adversarial) ネットワークがコンテンツ (イメージや音声など) を生成する。GANは技法の総称で多くのバリエーションがある。その代表がDCGAN (Deep Convolutional Generative Adversarial Networks) で、ネットワークが写真そっくりの偽のイメージを生成する。Nvidiaはニューラルネットワークでセレブ画像を生成する技術を公開した。画像は実在の人物ではなくアルゴリズムがセレブというコンセプトを理解して想像でリアルに描く。このネットワークがDCGANにあたる。

DCGANはセレブ以外に様々なオブジェクトを描くことができる。上の写真はDCGANが寝室を描いたものである。これらのイメージは写真ではなく、教育されたデータをもとにDCGANが寝室のあるべき姿を出力したものである。寝室にはベッドがあり、窓があり、テーブルがあり、ランプがあることを把握している。リアルな寝室であるがこれはDCGANが想像したもので、このような寝室は実在しない。DCGANは写真撮影したように架空のセレブやオブジェクトをリアルに描き出す。

DCGANのネットワーク構造

DCGANはGenerator (制作者) とDiscriminator (判定者) から構成される (下の写真)。GeneratorはDe-convolution Network (上段、パラメータから元のイメージを探す処理) で構成され、入力されたノイズ (ランダムなシグナル) からイメージ (例えば寝室) を生成する。

DiscriminatorはConvolution Network (下段、イメージをパラメータに凝縮する処理) で構成され、ここに偽造イメージ (Fake) 又は本物イメージ (Real) を入力する。Discriminatorは入力されたイメージを処理し、それがFakeかRealかを判定 (Logistic Regression) する。このプロセスでDiscriminatorが誤差逆伝播法 (Backpropagation) で教育され勾配 (Gradient、本物と偽物の差異) を得る。

この勾配をGeneratorに入力し本物そっくりの偽物を生成する技術を上げる。両者が揃って成長する仕組みで、このプロセスを何回も繰り返しDiscriminatorが見分けがつかないリアルなフェイクイメージ (先頭の写真) を生成する。

出典: Amazon

DCGANでイメージを演算する

Generatorはフェイクイメージを生成するだけでなく、生成したイメージを演算操作する機能を持っている。例えば、「眼鏡をかけた男性」ー「眼鏡をかけていない男性」+「眼鏡をかけていない女性」=「眼鏡をかけた女性」となる (下の写真)。演算の結果「眼鏡をかけた女性」が九つ生成される (右端) がその中央が求める解となる。その周囲八つのイメージから外挿 (Extrapolation) して中央のイメージが生成された。この技法を使うとイメージを操作して金髪の女性を黒髪の女性に変えることができる。

出典: Radford et al. (2016)

SRGAN:イメージ解像度をアップ

SRGAN (Super-Resolution Generative Adversarial Networks) とは低解像度のイメージを高解像度のイメージに変換する技法 (下の写真) である。右端がオリジナルイメージで、この解像度を様々な手法で上げる (このケースでは解像度を4倍にする)。多くの技法が使われており、bicubic (左端、二次元のExtrapolation) やSRResNet (左から二番目、Mean Squared Errorで最適化したDeep Residual Network) などがある。左から三番目がSRGANが生成したイメージ。物理的にはノイズ比 (peak signal-to-noise ratio) が高いが (ノイズが乗っているが) 見た目 (Structural SIMilarity) にはオリジナルに一番近い。この技法はImage Super-Resolution (SR) と呼ばれ、低解像度イメージを高解像度ディスプレイ (8Kモニターなど) に表示する技術として注目されている。

出典: Ledig et al. (2016)

StackGAN:テキストをイメージに変換

StackGAN (Stacked Generative Adversarial Networks) とは入力された言葉からイメージを生成する技法 (下の写真) を指す。例えば、「この鳥は青色に白色が混ざり短いくちばしを持つ」というテキストを入力すると、StackGANはこのイメージを生成する (下の写真、左側)。StackGANは二段階構成のネットワークで、Stage-Iは低解像度のイメージ (上段) を、Stage-IIで高解像度のイメージ (下段) を生成する。DCGANと同様に生成されたイメージは実在の鳥ではなくStackGANが想像で生成したもの。リアルそっくりのフェイクの鳥でこのような鳥は世の中に存在しない。言葉で意のままにフェイクイメージを生成できる技術で、応用範囲は広いものの不気味さを感じる技術でもある。

出典: Zhang et al. (2016)

D-GAN:写真から三次元モデルを生成

MITのAI研究チームは三次元モデルを生成するネットワーク3D-GAN (3D Generative Adversarial Networks) を公開した。例えば、家具の写真で教育すると3D-GANは家具を三次元で描くことができるようになる。ここではIkeaの家具の写真が使われ、それを3D-GANに入力するとその家具を3Dで描写する (下の写真、上段)。入力された写真は不完全なもので家具の全体像が見えていないが、3D-GANはこれを想像で補って3Dイメージを生成する。

3D-GANは3Dモデルイメージを演算操作できる (下の写真、下段)。例えば、「棚付きの低いテーブル」ー「棚無しの高いテーブル」+「高いテーブル」=「棚付きの高いテーブル」となる (一番下の事例)。これは3D-GANが学習した成果を可視化するために出力されたもの。GANは学習した成果をパラメータとしてネットワークに格納するが、これを直接見ることはできない。この研究の目的は隠れた領域 (Latent Spaceと呼ばれる) のパラメータを出力し3D-GANが学習するメカニズムを検証することにある。

出典: Wu et al. (2017)

CycleGAN:イメージのスタイルを変換

入力イメージのスタイルを別のスタイルに変換する手法は一般にStyle Transferと呼ばれる。イメージ間のスタイルをマッピングすることが目的でDeep Neural Networkが使われる。ネットワークが画家のスタイルを習得し、そのタッチで絵を描く技術が発表されている。例えば、写真を入力するとネットワークはそれをモネ・スタイルの油絵に変換する。しかし、画家の作品とその風景写真を対にしたデータは殆どなく、ネットワーク教育 (Paired Trainingと呼ばれる) が大きな課題となっている。

出典: Zhang et al. (2016)

これに対しCycleGAN (Cycle-Consistent Adversarial Networks) という方式では対になった教育データ (モネの油絵とその元になった風景写真など) は不要で、それぞれのデータを単独 (モネの油絵と任意の風景写真など) で使いネットワークを教育 (Unpaired Trainingと呼ばれる) できる。教育されたCycleGANは、例えば、モネの作品を入力するとそれを写真に変換する (上の写真、左側上段)。反対に、写真を入力するとモネの油絵に変換する (上の写真、左側下段)。また、シマウマの写真を馬の写真に、馬の写真をシマウマの写真に変換する (上の写真右側、object transfigurationと呼ばれる)。更に、富士山の夏の写真を入力すると、雪の積もった冬の富士山の写真に変換できる (season transferと呼ばれる)。CycleGANはネットワークが自律的に学習するアーキテクチャで教師無し学習 (Unsupervised Learning) につながる技法として期待されている。

DiscoGAN:イメージグループの属性を把握

人間は一つのグループ (例えばバッグ) と別のグループ (例えばシューズ) の関係を把握できる。ニューラルネットワークがこの関係を把握するためにはタグ付きのイメージを大量に入力してアルゴリズムを教育する必要がある。DiscoGANという技法はアルゴリズムが両者の関係を自律的に理解する。最初、DiscoGANに二つのグループのイメージ (例えばバッグとシューズ) をそれぞれ入力しそれぞれの属性を教える。イメージにはタグ (バッグとかシューズなどの名前) はついてないがアルゴリズムが両者の関係を把握する。

出典: Kim et al. (2017)

教育したDiscoGANに、例えば、バッグのイメージを入力するとシューズのイメージを生成する (上の写真)。青色のバッグからは青色のシューズを生成する (左端の事例)。これ以外に、男性の写真を入力すると女性のイメージを生成することもできる。DiscoGANも両者の関係 (バッグとシューズの関係など) を自律的に学習する。両者の関係を定義したデータ (Paired Data) は不要で、それぞれの属性のイメージ (バッグやシューズの写真集など) だけで教育できる。DiscoGANもネットワークが自律的に学習する構造で教師無し学習への道が開ける技法として注目されている。

GANがファッションデザイナー

GANは基礎研究だけでなくビジネスへの応用も始まっている。AmazonはGANを利用したファッション事業の構想を明らかにした。Amazonは自社の研究所Lab126でGANの開発を進めている。GANは流行りのファッションからそのスタイルを学習し、独自のファッションを生成する。GANがファッションデザイナーとなり、人間に代わって新しいデザインを創り出す。

ファッショントレンドはFacebookやInstagramなどに投稿されている写真から学習する。これらの写真をGANに入力すると、GANがトレンドを学び独自の洋服などをデザインする。また、AmazonはEcho Look (下の写真、カメラ付き小型版Echo) で利用者を撮影しファッションのアドバイスをするサービスを展開している。Echo Lookを通して利用者のファッションの好みを理解し、GANはその個人に特化したデザインを生成することが計画されている。GANが生成したデザインはオンデマンドで洋服に縫製され (On-Demand Clothing) 利用者に配送される仕組みとなる。

出典: Amazon

GANに注目が集まっている理由

このようにGANのバリエーションは数多く研究が幅広く進んでいる。GANに注目が集まっている理由はGANが現行Deep Learningが抱えている問題の多くを解決する切り札になる可能性があると期待されているからだ。特に、教師無し学習 (Unsupervised Learning) とタグ無しデータ (Unlabeled Data) 教育の分野で研究が大きく進む手掛かりになると見られている。上述のCycleGANやDiscoGANがこれらのヒントを示している。また、Nvidiaの研究チームはDCGANという技法で、写真撮影したように鮮明な架空のセレブイメージを生成したが、教育にはタグの付いていないセレブの写真が使われた。アルゴリズムが自律的に学ぶ技術が進化している。

GANの危険性も考慮する必要あり

FacebookのAI研究所所長のYan LeCunは「GANとその派生技術はここ10年におけるMachine Learning研究で最も優れた成果」であると高く評価している。一方、GANに寄せる期待が高まる中でその危険性も指摘されている。今までもフェイク写真が問題となってきたがGANの登場でその危険性が加速される。ニュースに掲載されている写真やビデオを信用できるかという問いが投げかけられている。(GANでフェイクビデオを生成できるのは数年先と見られている。) ソーシャルメディアに掲載されたイメージが証拠写真として使われることが多いが、これからは何が真実か分からない時代となる。AIがそうであるようにGANも諸刃の剣で、先進技術は生活を豊かにするとともに、使い方を間違えるとその危険性も甚大である。

AIがセレブを想像で描く、二つのAIが対峙して現実そっくりの偽物を生成

November 4th, 2017

Nvidiaの研究チームはニューラルネットワークがセレブ画像を生成する技術を公開した。画像は実在の人物ではなくAIがセレブというコンセプトを理解して想像で描いたもの。セレブの他に、寝室、鉢植、馬、ソファー、バスなどのオブジェクトを現実そっくりに描くことができる。この技術はGenerative Adversarial Network (GAN)と呼ばれいま一番注目を集めている研究テーマだ。

出典: Karras et al. (2017)

鮮明な偽物を生成する技術

この研究は論文「Progressive Growing of GANs for Improved Quality, Stability, and Variation」として公開された。この技法はGenerative Adversarial Network (GAN)と呼ばれ、写真撮影したように架空のセレブ (上の写真) やオブジェクトを描き出す。どこかで見かけた顔のように思えるがこれらは実在の人物ではない。GANが想像で描いたものでこれらのイメージをGoogleで検索しても該当する人物は見当たらない。このようにGANは写真撮影したように鮮明な偽物を生成する技術である。

GANはIan Goodfellowが論文「Generative Adversarial Nets」で発表し研究者の間で注目を集めた。GoodfellowはOpenAI (AI研究非営利団体、Elon Muskなどが設立) でこれを発表し、その後Googleに移籍し研究を続けている。

GANのネットワーク構造

GANはDeep Neural Networkの技法で二つの対峙するネットワークがコンテンツ (イメージや音声など) を生成する。GANは「Generator Network」と「Discriminator Network」から構成される (下の写真)。Generatorとは制作者を意味し、本物そっくりの偽のイメージを生成する (下の写真、上段)。Generatorにはノイズ (ランダムなシグナル) が入力され、ここから偽のイメージを生成する。Discriminatorとは判定者を意味し、入力されたデータが本物か偽物かを判定する (下の写真、右端)。DiscriminatorにはGeneratorが生成した偽のイメージ (Fake)、またはデータセットからの本物のイメージ (Real) が入力される。Discriminatorは入力データがFakeかRealかを判定する。

出典: Amazon

なぜリアルなイメージを生成できるのか

GoodfellowはGANを偽札づくりに例えて説明している。Generatorは犯罪者で巧妙な偽札を作る。一方、Discriminatorは警察官で紙幣を鑑定する。犯罪者は偽札を作るが警察官はそれを見破る。犯罪者はこれを教訓に次回はもっと巧妙な偽札を作る。警察官も同時に目利き技術を向上させこれを見破る。回を重ねるごとに偽札が巧妙になり、ついに警察官に見破られない精巧な偽札を作れるようになる。冒頭の写真のセレブ画像がこの偽札に相当する。GANはGeneratorとDiscriminatorが対峙して (Adversarial) 極めて巧妙な偽物を生成する技法と言える。

Nvidiaの研究成果

この分野で研究が進みGANは既に極めて巧妙な偽物を生成することができる。しかしGANの課題はアルゴリズムの教育で長時間の演算が必要になる。更に、アルゴリズムの挙動が安定しない点も課題となっている。このためNvidiaの研究チームは特殊なアーキテクチャ (下の写真) を開発しこの問題を解決した。

出典: Karras et al. (2017)

Nvidiaが開発したネットワーク

上のダイアグラムでGと記載されている部分 (上段) がGeneratorを示し、Dと記載されている部分(下段)がDiscriminatorを示す。Discriminatorには本物のセレブ写真(Reals) とGeneratorが生成した偽のイメージ (Fake) が入力され、本物か偽物かを判定する。このGANの特徴は教育初期段階では低解像度 (4×4) のネットワーク (左端) を使い、教育が進むにつれて徐々に解像度を上げる。最終的には高解像度 (1024×1024) のネットワーク (右端) を使い鮮明なイメージ (右端の写真) を生成する。NvidiaのGANは出来栄えを検証しながら徐々に解像度を上げる構造となっている。

生成するイメージの進化

下の写真はGANが生成したイメージを示している。GANの教育を始め4時間33分経過した時点では低解像度 (16×16) のイメージが生成され人物らしき形が現れた (上段)。1日と6時間経過した時点では中解像度 (64×64) のイメージで顔がはっきりした (中段)。5日と12時間経過した時点では高解像度 (256×256) で人物が滑らかに描かれているが細部はゆがんでいる (下段)。19日と4時間経過した時点で高解像度 (1024×1024) のリアルな人物イメージが完成した (冒頭の写真)。

出典: Karras et al. (2017)

教育のためのデータ

GANの教育にはセレブ写真のデータベース「Large-scale CelebFaces Attributes (CelebA) Dataset」が使われた。ここに登録されている3万枚のセレブ写真 (解像度は1024×1024) を使ってGANを教育した。GANは人の顔とは何かを学んだだけでなく、目や口や髭やアクセサリーなども学び、本物そっくりの架空のセレブを生成する。この技法の意義は写真と見分けがつかない高解像度のイメージを生成できる道筋を示したことにある。

イメージ生成にはコストがかかる

GANで鮮明なイメージを生成するためには大規模な計算リソースを必要とする。この研究ではNVIDIA Tesla P100 GPU (4.7 Tlops) が使われた。前述の通りGANの教育には20日程度を要した。GANのネットワークが改良されたものの、高解像度のイメージを生成するには大量の処理時間が必要となる。更に、描き出す対象はセレブなどに限定され、GANは教育された分野しか描けない。GANの教育時間を如何に短縮するか、また、幅広い分野をカバーするには更なる研究が必要となる。

フェイクニュース

GANが描き出したイメージは写真撮影したセレブと言われても疑う余地はない。リアルそっくりのフェイクで本物かどうかの判定は人間にはできない。GANが架空の世界を想像でリアルに描き出したことに不気味さを感じる。ソーシャルメディアでフェイクニュースが問題となっているがGANの登場でフェイク写真が事態を複雑にする。インスタ映えする写真はGANで創るという時代はすぐそこまで来ている。

GANを研究する目的

GANは諸刃の剣で危険性があるものの、その技法に大きな期待が寄せられている。GANは現行のDeep Learningが抱えている問題の多くを解決する切り札になる可能性がある。現行アルゴリズムを教育するためには大量のタグ付きデータが必要で、これがAI開発の最大のネックとなっている。GANに注目が集まっている理由はUnsupervised Learning (教師無し学習) とUnlabeled Data (タグ無し教育データ) の分野での研究が大きく進む手掛かりになると見られているからである。今後この分野で大きなブレークスルーが起こるかもしれない、そんな予感がする研究テーマである。

DeepMindは最強の囲碁ソフト「AlphaGo Zero」を公開、人間の知識や教育データは不要!AIが自ら学習しシンギュラリティに近づく

October 23rd, 2017

DeepMindはAIが自律的に知識を習得する囲碁ソフト「AlphaGo Zero」を公開した。AlphaGo Zeroは人間の知識や教育データは不要で、AI同士の対戦で技量を上げる。AlphaGo Zeroは人間のような学習能力を身に付け、汎用人工知能への道筋を示した。シンギュラリティに一歩近づいたとも解釈できる。

出典: DeepMind

Tabula Rasa:ゼロから学ぶ

AlphaGo Zeroの技術詳細は科学雑誌Natureに「Mastering the game of Go without human knowledge」として公開された。DeepMindのAI研究最終目的は人間を超越する学習能力を持つアルゴリズムを開発することにある。ゼロの状態から知識を習得する手法は「Tabula Rasa (空白のページ)」とも呼ばれる。人間は生まれた時は空白の状態で、学習を通じ知識を増やし、判断するルールを獲得する。これと同様に、生成されたばかりのAIは空白であるが、自律学習を通じ知識やルールを学ぶアルゴリズムが最終ゴールとなる。AlphaGo Zeroは囲碁の領域でこれを達成し究極の目標に一歩近づいた。

DeepMindのマイルストーン

DeepMindは一貫してこの目標に向かってAI開発を進めている。2013年12月、AIがビデオゲームを見るだけでルールを学習し、人間を遥かに上回る技量でプレーするアルゴリズム (DQNと呼ばれる) を公開し世界を驚かせた。2015年10月、高度に複雑な技量を必要する囲碁で、AlphaGoが欧州チャンピオンFan Huiを破った。2016年3月、改良されたAlphaGoが世界最強の棋士Lee Sedolを破り再び世界に衝撃を与えた。

AIが自律的に学習

今回発表されたAlphaGo Zeroは上記のAlphaGoから機能が格段に進化した。AlphaGo Zeroは自分自身との対戦を通じ技量を習得していく。最初は初心者の状態でランダムにプレーするが、対戦を重ね技量を上げていく。この過程で人間がアルゴリズムを教育する必要はない。プロ棋士の棋譜などを入力する必要はなくAIが独自で学習する。AlphaGo ZeroはReinforcement Learning (強化学習、下の写真はその構造を示す) という技法を搭載しており、アルゴリズムが人間のように試行錯誤しながら囲碁を学んでいく。

出典: Stanford University

単一のネットワーク

アーキテクチャの観点からは、AlphaGo Zeroは単一のネットワークで構成され構造がシンプルになった。従来のAlphaGoは二つのネットワーク (policy network (次の一手を決定) とvalue network (局面を評価))で構成されていた。AlphaGo Zeroではこれらを一つにまとめ、単一ネットワークが次の手を探しその局面を評価する。また、AlphaGo Zeroは次の手を探すためにTree Searchという方式を使っている。

短期間で腕を上げた

AlphaGo Zeroはセルフプレイを通じてReinforcement Learningアルゴリズムを教育した。アルゴリズムは振動したり過去の対戦成果を忘れることなく順調に技量を増していった。下のグラフは教育に要した日数 (横軸) と技量 (縦軸) を示している。3日でAlphaGo Lee (Lee Sedolに勝ったバージョン) の性能を上回った。一方、AlphaGo Leeの教育には数か月を要した。21日でAlphaGo Master (世界チャンピオンKe Jieに勝ったバージョン) の性能を上回った。40日経過したところでAlphaGo Zeroは全てのバージョンの性能を凌駕した。

出典: DeepMind

人間の教育は不完全

AlphaGo Zeroは40日の教育で2900万回対戦し世界最高の性能に到達した。下のグラフはAlphaGoのそれぞれのバージョンの性能を示している。興味深いのはAlphaGo Masterとの性能比である。AlphaGo MasterはAlphaGo Zeroと同じネットワーク構成であるが、Masterは人間が教育したアルゴリズムである。このグラフは人間が教育すると技量が伸びないことを示している。つまり、人間が教育するよりAIが独自で学習するほうが技量が伸びることが証明された。人間の教育は不完全であることの立証ともなり、AIが自律学習することの必要性を示した結果となった。

出典: DeepMind

プロセッサ構成

AlphaGo Zeroはアーキテクチャがシンプルになり計算量が大幅に減少した。AlphaGo Zeroは4台のTPU (tensor processing units) を使いシングルコピーで稼働する。これに対し、AlphaGo Leeは48台のTPUを使い複数コピーを稼働させていた。AlphaGo Zeroは機能が向上したことに加え、効率的に稼働するシステムとなった。TPUとはGoogleが開発した機械学習に特化したプロセッサで、ASIC (専用回路を持つ半導体チップ) でTensorFlow向けに最適化されている。

定石を次ぎ次に発見

AlphaGo Zeroは教育の過程で囲碁の「定石」を次々に発見した。定石とは最善とされる決まった打ち方で、人間が数千年かけて生み出してきた。AlphaGo Zeroはこれら定石を72時間の教育で発見た。更に、AlphaGo Zeroは人間がまだ生み出していない「定石」を発見した。新しい定石は人間の試合では使われていないが、AlphaGo Zeroはこの定石を対戦の中で頻繁に利用し技量を上げた。

Reinforcement Learningの改良

AlphaGo ZeroはReinforcement Learningアルゴリズムが大きな成果をもたらすことを実証した。DeepMindが開発したReinforcement Learningは人間をはるかに上回る技能を獲得し、更に、人間が教育する必要はないことを証明した。人類は数千年かけて囲碁の知識を獲得したが、Reinforcement Learningは数日でこれを習得し、更に、人間が到達していない新たな知識をも獲得した。

汎用AIの開発が始まる

AlphaGo Zeroの最大の功績は自律的に学習する能力を獲得したことにあり、汎用的なAI (General AI) へ道が大きく開けた。汎用的なAIとは狭義のAI (Narrow AI) に対比して使われ、AIが特定タスクだけでなく広範にタスクを実行できる能力を指す。AlphaGo ZeroのケースではAIが囲碁をプレーするだけでなく、科学研究のタスクを実行することが次のステップとなる。ルールが明確でゴールが設定されている分野でAlphaGo Zeroの技法を展開する研究が始まった。

新薬開発などに応用

短期的には、DeepMindはAlphaGo Zeroを新薬開発に不可欠な技術であるProtein Foldingに応用する。Protein Foldingとはタンパク質が特定の立体形状に折りたたまれる現象を指す。ポリペプチド (polypeptide) がコイル状の形態から重なり合って三次元の形状を構成するプロセスで、このメカニズムを解明することが新薬開発につながる。しかしProtein Foldingに関するデータは限られており機械学習の手法では解決できない。このためReinforcement Learningの手法ででこれを解明することに期待が寄せられている。

自らルールを学ぶAIが次の目標

長期的には量子化学 (Quantum Chemistry)、新素材の開発、ロボティックスへの応用が期待される。Reinforcement Learningを実社会に適用するためにはアルゴリズムが自らルールを学習する技能が必要になる。DQNがテレビゲームを見るだけでルールを学んだように、AlphaGo Zeroが自らルールを学ぶ能力が求められる。DeepMindはこの目標に向かって開発を進めていることを明らかにしている。AlphaGo Zeroの次はもっとインテリジェントなAIが登場することになる。

GoogleのAIスマホ「Pixel 2」は世界最高水準のカメラ、Deep Learningが鮮やかな画像を生成する

October 6th, 2017

Googleは2017年10月4日、第二世代のAIスマホ「Pixel 2」(下の写真、左側) と「Pixel 2 XL」(下の写真、右側) を発表した。Pixel 2はカメラ性能が大きく進化し、ベンチマークで世界最高位をマークした。高い評価を受けた理由はDeep Learning技法の強化で、AIが高品質の画像を生成する。

出典: Google

AIで構成されるスマートフォン

Pixel 2は音声アシスタント「Google Assistant」、ビジュアル検索機能「Google Lens」、及びイメージ生成技法「Computing Photography」とAI機能をフルに実装している。Pixel 2はイメージ生成機能が格段に強化され、世界最高のスマホカメラと評価されている。カメラの世界標準ベンチマーク「DxOMark」でPixel 2は98ポイントと評価されトップとなった。前モデルのPixelは89ポイントで、Pixel 2のカメラ性能が大きく向上したことが分かる。

人物写真専用モード「Portrait Mode」

Pixel 2は人物を撮影するための機能「Portrait Mode」を導入した。これは人物をシャープに、また、背景をぼかして撮影する機能である (下の写真)。一眼レフカメラでは望遠レンズの絞りを開き被写界深度を浅くして撮影する。Apple iPhone 8では搭載されている二つのカメラで被写体と背景を3Dで捉えてこれを表現する。これに対しPixel 2は一つのカメラでPortrait Modeの撮影ができる。撮影されたイメージをMachine Learningの手法で解析しPortrait Modeに変換する。

出典: Google

特殊なセンサーを搭載

Pixel 2はメインカメラ (12.2MP, f/1.8) に「Dual-Pixel Sensor」という特殊なイメージセンサーを搭載している。撮影した写真はこのセンサーで二つに分解される。右と左の二つのカメラで撮影したように、二枚のイメージとして把握する。つまり、左右二台のカメラで撮影したように、イメージを3Dで捉えることができる。

Machine Learningの手法で画像を生成

次に、このイメージをDeep Learningの手法で解析し被写体と背景を明確に区分けする。アルゴリズムは百万枚の写真を使い教育され様々なシーンに対応できる。アルゴリズムは前面と背景を区別できるようになり、カメラは人物のパーツ部分をシャープにフォーカスし、それ以外の部分はボケ(Bokeh)の効果を与える。人物だけでなくモノに対してもPortrait Modeで撮影できる。このモードを使うとプロカメラマンのように被写体が背景に浮き上がる写真を取ることができる。

自撮りでも使える

Portrait Modeはフロントカメラ (8MP, f/2.4) でも使うことができる。フロントカメラはDual-Pixel Sensorを搭載していないがDeep Learningの手法でPortrait Modeを生成する。アルゴリズムは画像の中で顔を認識し、顔に繋がっている身体パーツや髪などを把握する。つまり、アルゴリズムが人物の形状を認識しそこにフォーカスを当てる。このため、自撮り (Selfie) でPortrait Modeを使うことができる (下の写真、左側)。もし画面に顔が映っていなければPortrait Modeはオフとなる。

出典: Google

イメージを生成する機能「HDR+」

Pixel 2は暗い環境でも細部にわたり精密に表現できる (下の写真)。また、光のコントラストが厳しい状況でもバランスよくイメージを生成する。これは「HDR+」というイメージ合成手法により実現される。そもそも、HDR (High Dynamic Range) イメージングという手法は異なる露出の複数枚の写真を組み合わせて一枚の写真を生成する技術を指し、多くのスマホで幅広く使われている。これに対しHDR+は同じ露出の写真を多数枚組み合わせて一枚の写真を生成する手法である。

出典: Google

Computation Photography

Pixel 2はカメラアプリを開いた時から撮影を始め、シャッターが押されたポイントを撮りたいシーンと理解する。HDR+は数多くの写真を重ねるが、同じ露出で撮影するので暗い部分はノイズが乗る。しかし、暗い部分の写真を数多く重ね合わせることで数学的にノイズを減らす。この手法により、光の条件が厳しいところでも綺麗な写真が撮れ、また、Portrait Modeでは肌が滑らかに仕上がる。HRD+はアルゴリズムがイメージを生成する方式で「Computation Photography」とも呼ばれる。カメラはAIを含むソフトウエアが機能や性能を決定する。

高度な手ぶれ補正機構

Pixel 2のメインカメラはビデオや写真撮影向けに高度な手ぶれ補正機構を搭載している。これは「EIS (electrical image stabilization) 」と「OIS (optical image stabilization)」とMachine Learningで構成される。EISはハードウェア機能でセンサーが画像のブレを補正する。OISはソフトウェア機能でフレームごとのブレをアルゴリズムが補正する。Pixel 2はOISをジャイロと連携し手の物理的な振動を検知する。これらの情報をMachine Learningで解析し安定したイメージを生成する。具体的にはMachine Learningは撮影した各フレームから主要な動き(例えばオートバイの動き)を検知し、これに沿って撮影したフレームからブレを補正する。

ビジュアル検索機能「Google Lens」

Pixel 2はビジュアル検索機能「Google Lens」を搭載した。Google Lensとはカメラが捉えたオブジェクトに関する情報を画面に表示する機能である。Google LensはMachine Vision (画像認識機能) とMachine LearningとKnowledge Graph (知識データベース) で構成される。名所旧跡や本や音楽アルバムや映画などの情報を表示することができる。例えば、建物をGoogle Lensで見るとこれは1236年に建立された東福寺であることが分かる (一つ上の写真、右側)。

AIカメラ「Google Clips」

Googleは小型軽量のカメラ「Google Clips」 (下の写真) を発表した。これはハンズフリーカメラでClipsが自動でビデオを撮影する。Clipsをテーブルの上に立てて置いたり、椅子に挟んで使う。Clipsは興味あるシーンを認識し自動でシャッターを切る。また、専用アプリで利用者がシャッターボタンを押して撮影することもできる。

出典: Google

人物を識別する

Clipsはインテリジェントな機能を持ちAIが人物を識別する。このためClipsは親しい人物を中心に撮影する。また、Clipsは撮影のタイミングも自律的に判断する。被写体の動きが止まったタイミングを見て撮影を始める。また、被写体の一部が隠れているようなときは撮影しない。このため事前にClipsに家族関係者などを教えておく。また、Clipsを使うにつれ搭載されているMachine Learningは親しくしている人物を学びその人を中心に撮影するようになる。Clipsは屋内で家族やペットなどを撮影することを想定してデザインされている。

専用AIプロセッサを搭載

Clipsは専用AIプロセッサを内蔵している。このプロセッサはMovidius社の「Myriad 2」で、Computer Vision機能を司る。ここで人物の顔を認識しAI機能はデバイス上で実行される。この方式は「On-Device AI」と呼ばれる。クラウドと接続する必要はなく、顔情報をデバイスに格納し個人のプライバシーを守ることができる。

カメラとAIは相性がいい

Googleはハードウェア製品にAIをフルに実装し機能強化を推し進めている。Pixel 2ではAIがプロの写真家の役割を担い高品質なイメージを生成する。Clipsではもはや写真を撮影する行為は必要が無くAIが最適なシーンを撮影する。カメラはコンピュータとなり機能や特性はDeep Learningが決定する。カメラとAIは相性が良く技術革新が急速に進むことになる。