Edited at

【即スマホで試せる】55の深層学習実装 on Google Seedbank - 画像分類から翻訳、音楽生成まで


PR: 2019年5月11日発刊の
図解速習DEEP LEARNINGで、こちらの内容を日本語訳・整理して実行いただけるようになりました!


TL;DR

Category
title
dataset
model

Image/Video
Classifying Handwritten Digits
MNIST
MLP

Fashion MNIST with tf.keras
FashionMNIST
MLP

Match images using DELF and TF-Hub
The Google-Landmarks dataset
DELF

TF-Hub Action Recognition Model
UCF101
I3D

DeepDream
ImageNet
inception5h

Compare GAN
CelebA HQ, LSUN Bedroom, CIFAR10
Various GANs

CycleGAN: Unpaired Image to Image Translation
-
CycleGAN

Sound/Music
NSynth
The NSynth Dataset
WaveNet-style AE

Audio Style Transfer
-
WaveNet decoder/NSynth encoder

Variational auto-encoder for music.
MIDI dataset(closed)
HLSTM/BLSTM VAE

Performance RNN
Yamaha e-Piano Competition dataset
LSTM

Piano Transcription
MAPS dataset
CNN+BLSTM

Text/Lang
Classify movie reviews using tf.keras
IMDB
Embedding+MLP

Text classifier with TF-Hub
Large Movie Review Dataset v1
Embedding+MLP

CharRNN
shakespeareの一編
LSTM

Generate Shakespeare using tf.keras
shakespeare dataset
LSTM

Neural Translation with Attention
Anki
seq2seq

Tensor2Tensor: Translate from English to German with a pre-trained model
-
tensor2tensor


実行手順


PCブラウザ


  • リンク先から Open Seed in Colab を押す

  • ソースコードは、セルを選択し 左上の再生ボタンを押す または Shift + Return で実行できる。


  • 基本GPUを利用により、コード実行時に早く進められる


    • メニューの ランタイム> ランタイムのタイプを変更 から、 ハードウェアアクセラレータGPU を選択




スマホブラウザ


  • iOS/AndroidいずれかのChromeでリンク先を開き、 Open Seed in Colab を押し、実行方法は同上


領域別のSeedリストと簡易解説


以降の画像は、特に注釈のない限り Seedbank から引用したものです



画像や動画 Image & Video

基本のMNISTから動画のコンテキスト推定までの分類、DeepDreamに始まりCycleGANなどメジャーなGANが動かせます。


分類 Classification


生成 Generative



  • DeepDream


    • 学習済みモデルを使い、自分の好きな画像でDeepDreamの再現できる





  • Compare GAN


    • GANのレビュー論文 "Are GANs Created Equal? A Large-Scale Study" paper (https://arxiv.org/abs/1711.10337) と、 "The GAN Landscape: Losses, Architectures, Regularization, and Normalization" (https://arxiv.org/abs/1807.04720) で使われた学習済みGANモデルを試し、比較できる



    • Run this cell and select which GAN module to use below セルを実行すると、下記のリストから選べる





  • CycleGAN: Unpaired Image to Image Translation


    • あの有名な馬動画がシマウマになってしまうCycleGANの実装と解説。MOOCsのKadenze提供





音や音楽 Sounds & Music

音は通常、音の波形で扱う。音楽は、音の波形を直接扱う場合と、系列(譜面、およびそれがデータ化されたMIDI等)で扱う場合がある。適用するアルゴリズムが異なる。


分類 Classification


  • なし


生成 Generative


波形



  • NSynth


    • TensorFlowのアート適用プロジェクト Magenta発の、シンセ用音合成ができるWaveNet autoencoder




  • Audio Style Transfer


    • 音のスタイル変換




系列


文章や言語 Text & Language

テキストは、言語によらず単語に分割、その特徴量ベクトル(embedding)を計算し、それらを平均する等して文や文章の特徴量ベクトルを計算。それを分類や生成に使う。


こちらの資料に詳しい [最新版] JSAI2018 チュートリアル「"深層学習時代の" ゼロから始める自然言語処理」



分類 Classification



  • Classify movie reviews using tf.keras



    • tf.keras利用。IMDBの5万reviewを、1:1でtrain/testに分け、positive/negativeの分類器を作る。 Embedding -> GlobalAveragePooling1D -> ReLu -> sigmoid というシンプルなNN




  • Text classifier with TF-Hub


    • TF-Hubテキストembeddingモジュールを使った感情分析。応用として転移学習も、問題点含め取り上げる




  • CharRNN


    • Karpathy氏の、文字レベルLSTMを使ったテキスト生成モデルに、シェイクスピアの文章を食わせて試してみる




生成 Generative


ツール/その他


教師なし Unsupervised


ドメイン共通


基本


NNの解釈性


まとめ


  • Colabいいよおじさんとしては、Colaboratory界隈のここ半年の発展は本当に面白い


関連

Colaboratoryって何、という方は下記をご参照ください