20190607-aigirl-column-thum

こんな方におすすめの記事です

  • GraphCNNについて最新情報を知りたい!
  • AI最先端の分析手法を知りたい!
  • 手っ取り早く最新AI論文のトレンドを押さえたい!

この論文紹介記事で得られる知見

  • 非画像データにCNNを応用する手法を知ることができる
  • 相関係数を用いたC-GraphCNNよりも有用なDistance GraphCNN(D-GraphCNN)という手法を知ることができる

この記事を読み終えるのに必要な時間

10分

JSAI2018で発表されたAI論文をご紹介

こんにちは、マクニカAIリサーチセンターのMakkyです。AI女子部員としても活動しています!
東北で育った私にはツライ、暑い夏の時期がやってきました。今年は暑さに負けず、何事にも熱く活動していくことが目標です。

AI女子部2回目のテックブログとなる今回は、JSAI2018で採択された論文の中から、「D-GCNN(Distance Graph Convolution Neural Network)」についてご紹介いたします。

JSAI(人工知能学会)って何?

本記事でご紹介するAI論文は、「特徴グラフを用いた汎用型CNN深層学習手法の開発」というタイトルの論文です。この論文はJSAI 2018(人工知能学会2018)で発表されたものになります。
JSAIは日本で行われるAI学会で、以前テックブログでも簡単にご紹介いたしました。

AI学会で発表される論文はAIトレンドの情報源で、新しい手法を知る上でも大変貴重な存在になります。ぜひ以前のテックブログもチェックしてみてください!
テックブログ:AIの最先端は論文で学ぶまた、今年のJSAI2019に弊社のリサーチャー2名が参加します。JSAIの様子をテックブログで公開する予定なので、こちらも是非お楽しみに!

本記事でご紹介するAI論文は、「特徴グラフを用いた汎用型CNN深層学習手法の開発」というタイトルの論文です。この論文はJSAI 2018(人工知能学会2018)で発表されたものになります。
JSAIは日本で行われるAI学会で、以前テックブログでも簡単にご紹介いたしました。

AI学会で発表される論文はAIトレンドの情報源で、新しい手法を知る上でも大変貴重な存在になります。ぜひ以前のテックブログもチェックしてみてください!
テックブログ:AIの最先端は論文で学ぶ
また、今年のJSAI2019に弊社のリサーチャー2名が参加します。JSAIの様子をテックブログで公開する予定なので、こちらも是非お楽しみに!

非画像データにCNNを用いる「GraphCNN」

それでは早速、論文内容についてご紹介します!まずはGraphCNNの今までの全体像に軽く触れていきたいと思います。

今回ご紹介する論文のテーマは「CNNの応用手法」

GraphCNNの元となっているCNN(Convolutional Neural Network?畳み込みニューラルネットワーク)についてご存知でしょうか?
CNNは層を深く持つニューラルネットワークで、画像分野でよく利用されます。
昨今の大量に蓄積されたデータを有用なものとするためには、大規模で、かつ複雑なデータセットを理解する必要があります。 CNNはその有効な手段として注目されており、今回のAI論文をピックアップした根本の理由です。

CNNは非画像データに適応するのが難しい

CNNは先ほども述べましたが、主に画像分野で多く利用されてきた手法です。
というのも、画像データの要素の順番には意味があり、その意味がある要素の順番をCNNは特徴として捉えて分析するからです。
では、csvのような非画像データはどうでしょうか?非画像データは列順を入れ替えてもデータの持つ意味は変わりません。そのため、変化するグラフ構造を持つデータに適応することはできないのが現状でした。

Correlation GraphCNN(C-GraphCNN)

しかし最近、従来の考えを覆す手法が報告されました。「非画像データの順番にも意味を持たせればCNNが使える!」という発想の逆転から生まれた "GraphCNN(Graph Convolution Neural Network)" です。

その名の通り、グラフ構造に対して畳み込み演算を実行したニューラルネットワークです。ここで言う「グラフ構造」とは、円グラフのようなモノではなく、下図のような何かと何かが繋がっているようなネットワーク構造のことを表します。

例えば「C-GraphCNN」という手法も、GraphCNNの一種です。
C-GraphCNNは「相関係数」を使用し、非画像データの順番に意味を持たせてCNNを適応させるという手法です。
相関係数は隣り合う変数間の関係を見る指標であるため、性質として並び替えることができません。つまり、C-GraphCNNは「順番に意味がある」相関係数を使用した手法ということになります。

このように説明を受けると画期的に見えるC-GraphCNNですが、課題もあります。
相関係数はデータ間の実際の距離を考慮しないため、データの関係性を表すのに最適とは言い切れないという問題です。

データ間の距離を用いたD-GraphCNN

今回ご紹介した論文ではC-GraphCNNの課題を元に、「距離行列」でCNNを適応する手法「Distance GraphCNN(D-GraphCNN)」を提案しています。
D-GraphCNNは、距離行列の作成に使用するアルゴリズムの違いから2種類あります。

■ Kernel GraphCNN

  距離行列の作成にガウシアンカーネルというアルゴリズムを使用

■ DBSCAN GraphCNN

  距離行列の作成にDBSCANというクラスタリングアルゴリズムを使用

D-GraphCNNは分析精度が高い

論文ではD-GraphCNNの有用性を確認するために2つのデータセットを用いて実験を行っています。 本ブログでは、実験の1つを例としてご紹介します。
以下は「The Boston Housing Dataset」という、物件の人口統計に関する12個の情報からボストンの住宅価格を予想する回帰問題を扱うデータセットでの実験結果です。

出典: "特徴グラフを用いた汎用型CNN深層学習手法の開発"
キャプション: 回帰問題における決定係数の推移

グラフの縦軸の決定係数は、1に近いほど分析の精度が高いことを示します。
実験結果のグラフから、確かにGraphCNN(C-GraphCNN / Kernel-GraphCNN / DBSCAN-GraphCNN)の有用性が伺えます。
特にD-GraphCNN(Kernel-GraphCNN / DBSCAN-GraphCNN)は高い精度であることがわかります。

GraphCNNは画像データ/強化学習に応用できるか?

D-GraphCNNは非画像データに有用なのは分かりましたが、果たして画像データにも使用できるのでしょうか?
D-GraphCNNを画像データに応用できるか、また、強化学習にも応用ができるかについても、論文内で実験結果を提示していました。

画像データにGraphCNNを応用する

論文内では、MNISTデータセットを用いて画像分類問題にチャレンジしています。MNISTは、手書き数字画像60,000枚と、テスト画像10,000枚を集めた、画像データセットです。
実際に、9つの層を持つCNN・C-GraphCNN・D-GraphCNNの手法を画像データの学習に使用した結果が下図になります。画像データの場合でもGraphCNNの正解率は90%を超えており、性能の高さを確認できます。

出典: "特徴グラフを用いた汎用型CNN深層学習手法の開発"
キャプション: 分類問題のおける正解率の推移

強化学習の応用にも使用できる

同じく強化学習についても、強化学習に使用するニューラルネットワークをGraphCNNに置き換えて性能をチェックしています。
実験の内容は、Open AI gymのCartPoleを利用したシミュレータ環境で、CartPoleというゲームスコア推移を見る、というものです。
下図はスコアの推移を示していますが、左側がニューラルネットワーク、右側がC-GraphCNNの結果になります。

出典: "特徴グラフを用いた汎用型CNN深層学習手法の開発"
キャプション: カートポールにおけるスコアの推移

グラフからC-GraphCNNは最高点に到達するのが早く、かつ最高点を維持する回数が多いことが分かります。このことから、正解率のスコア差が激しいという課題はありますが、GraphCNNは有効と考えられます。

まとめ

今回は、非画像データにCNNを応用する新しい手法「D-GraphCNN」が提唱された論文をご紹介しました。
テックブログではこれからもさまざまな分野における、最新のAI論文について取り上げていきます!
近々日本以外の最新論文もご紹介する予定なので、今後もAI女子部の活動をお楽しみに!

もし「AIについて相談してみたい」と思うことがあれば、マクニカのAI専門家組織、AI Research & Innovation Hubまでお気軽にお問合せください!