· 

Oracleのビッグデータ関連のセミナーに参加してみた

こんにちは!テリロジーのY.Tです。

先日、Oracle Big Data Jam Sessionという、ビッグデータ系サーバレス・サービスの技術情報の勉強会に参加

しました。定期的に開催されているのですが、今回のテーマは「次世代AI「GAN」による仮想現実の生成」であり、GANを利用し、OCIのData Science上で画像を生成していくデモが紹介されていました。

 

勉強会は終了後でもYoutubeでアーカイブが配信されており、いつでも見ることができます。

今回は勉強会のテーマであったGANについて、簡単にご紹介します。

 

目次

1.GANとは何か

2.GANを使ってできること

3.GANの仕組み

4.GANを使ってみる

1.GANとは何か

「Generative Adversarial Networks(敵対的生成ネットワーク)」の略で、機械学習の1つです。

機械学習は以下のように分類することができ、GANは教師なしの1つの手法になります。

・機械学習(教師あり):正解が分かっているデータをもとに学習し、正解がわかっていないデータを入力し予測する

・機械学習(教師なし):正解を与えずにデータのみ与える。特徴を分析しデータをグループ分けすることで学習する

・強化学習:行動に対しての結果毎に報酬を設定し、学習を強化していく

2.GANを使ってできること

GANを使ってできることの例は以下です。

・実在しないモデルやキャラクターの生成

・画像の変換

・モノクロの絵をカラーに変換

上記の他、勉強会では以下の活用事例も紹介されていました。

・ゲームに登場する物体や背景のシェーディング画像の生成

・CT 画像、MRI画像から骨格画像を生成

3.GANの仕組み

勉強会ではネットワークの計算処理についても詳しく説明されていましたが、ここでは端的にGANの仕組みについて

ご紹介していきます。GANは生成器(生成モデル)と識別器(識別モデル)を敵対させながら交互に学習させていく

方法です。具体的には以下のような仕組みで学習が進みます。

 

1.生成器がサンプルデータをもとにデータを作成する

2.識別機が本物か偽物か判別する→偽物と判断

3.生成器が本物と判別されるためにデータを作成する

2⇔3を繰り返し、本物と判断

4.識別機が本物と判断する基準を厳しくする

1へ戻り、1⇔4を繰り返していく

4.GANを使ってみる

実際にGANの改良版であるPGGANを使って、以下の手順でオリジナルアニメキャラクターを作ってみました。

 

1.訓練用の画像データ収集

2.訓練用の画像データサイズを編集

3.PGGANsのソースをGitからクローン

4.PGGANsの設定ファイルを編集(訓練用データの場所の指定など)

5.学習

 

学習開始から24時間半でだいぶ顔が出来上がってきました。

勉強会ではOCIの機械学習開発環境である「Oracle Cloud Infrastructure Data Science」が利用されていました。Scikit-Learn、TensorFlow、Keras、XGBoostなどの機械学習ライブラリが実装済みの環境で、複数ユーザーで共有することができます。

 

詳細は以下で紹介されています。

Oracle Cloud Infrastructure Data Science のエッセンスをクイックレビュー

まとめ

今回はOracle Big Data Jam Sessionのテーマをきっかけに、GANについて紹介しました。

定期的に開催されているため、次回以降も受講したいと思います。

最後までお読みいただき、ありがとうございました。🙇