養鮭場

豚の逆は鮭

GANGAN行こうぜ

この記事はTCU-CTRL場外乱闘 Advent Calendar 2018の19日目の記事です.

前日はぱらな君が担当してくれています.

para7note.hatenablog.com

担当を知るために担当が好きな本を読む行動力,文庫本を遠ざけてた人種なので素直に敬服しました.自分も写真とベースとラクロスを始められるのだろうか.

 

目次

 

投稿背景 

近年,画像分類だけでなく様々な分野でDeep Learningが優秀な成績を修めており注目が集まっている.Deep Learningとは,ここから先は自分の目で確かめてほしい.
昨今よっDL!な空気で色んなものが手をつけられ始めててもうDLは焼け野原である.辛い.
GoogleNvidiaが指パッチンするだけでどれだけの研究が塵芥と化すのか,もうやめてくれ.

研究として扱ってるとヒーヒー言うが,じゃあ実際使われてるかと探すとそんな例がない.見つけてないだけかもしれない.たまにオタク向けな変態技術投稿を見て冷や汗をかくが,arXivで論文見つけたときほどではない.
ではどんなことが今可能となっているのか,今回は論文を読んでて内容が触れやすいものを紹介していきます.この後少し書きますが,前提としてGenerative Adversarial Nets(GAN)の知識が必要です.
どれも仕組みはざっくばらんに紹介しますので,気になったら調べてみてください.
論文は全部英語なので最悪論文に掲載されている図だけ見ても面白いです。
21日目に投稿のはいじあさん,添削お願いします.

 

Generative Adversarial Nets (GAN)

論文はこちら

[1406.2661] Generative Adversarial Networks

 

いっぱい資料があれば,それを習って似た感じのものが作れそうっという感じのモデル.資料だけで正解を教える講師は必要ないので,ただ資料を集めるだけでいい.詳しく書くと確率分布のお話になるので割愛.
これまでのNerual Networkのモデルと違うのは2つのネットワーク,GeneratorとDiscriminatorを使うところです.例として多く上げられるのは偽札業者(Generator)と警察(Discriminator)のお話.偽札業者は本物と見分けがつかないような偽札を作りたい,警察は偽札と本物を正しく見分けたい.この2つを競わせ合うことで,どちらの精度もあげていくのがみそです.

今やGANが色々な分野に使われてきてます.論文の発表数も300本/月とかエグいことになってたのでGANを扱う研究したいひとは覚悟しておきましょう.今月はじめから投稿日までarXivだけでも90本は出てました.

 

CartoonGAN

論文はこちら

CartoonGAN:Generative Adversarial Networks for Photo Cartoonization

論文を紹介してるQiitaはこちら

qiita.com

 

 

実写写真から漫画風の絵に変えるモデル.
論文では宮﨑駿,新海誠風と色々な例があります.漫画風と言っても例であるのはアニメタッチ.写真を絵画タッチに変換するモデルはありましたが,それは写実的なものが成果を出していました.しかしアニメタッチにはどれも上手く変換できていませんでした.その理由として

  • いわゆる二次元絵はエッジが鮮明(線画)
  • 色合いが滑らか(グラデーションや塗りつぶし)
  • 物体の抽象化

がありました.そこで3つの工夫があります.

 

1つはDiscriminatorに判別させる画像の種類です.
Generatorの変換画像にエッジを際立たせるため,わざと訓練データであるアニメタッチの画像をぼかします.ぼかすことでエッジが無くなった画像を偽物と識別させることで,Discriminatorが本物と識別するものにはエッジがあるのだとGeneratorに学習させてるようです.

 

2つ目にVGGを使った損失関数があります.
写真から絵を起こしたとしても,その意味合いは変わりません.林檎を模写してもその画がさすのは林檎だということです.この意味合いを保つためにVGGを使います.
VGGは画像分類で優れた結果を出すだけでなく,そのアーキテクチャが簡単なもので扱いやすい点あります.また画像分類だけでなく画像特徴量を抽出するのにも優れているため特徴量抽出器としても用途があります.この特徴量抽出器として変換前の写真画像と,変換後の画像からVGGを通して出力された特徴量で画像同士の意味合いが変わってないかを調べます.

 

3つ目にGeneratorの初期化があります.
GANは局所解に容易にはまるため,学習が不安定です.Mode Collapseと呼ばれる問題もあります.そこで学習の早期収束と局所解にはまるのを防ぐために,初期の学習はGeneratorだけで先程のVGGを使った損失関数のみで行います.この初期段階をはさむおかげでGenerator内で画像のencode,decodeが上手くなされ後のアニメタッチへの変換を効率よく学習していきます.

 

これら3つが大きくアニメタッチへの変換に貢献しています.ほかにもL1, L2正則化のこととか論文で書かれてますが割愛.まだ人物からの変換は上手くいかないそうなのでどうなるかが待ち遠しいです.変換が上手くいっただけでなく,従来の画風変換モデルよりメモリ消費量を抑えられ尚且学習時間も早いので院の研究が一つ消えました.研究無いよぉ.

 

WaveCycleGAN

論文はこちら

[1809.10288] WaveCycleGAN: Synthetic-to-natural speech waveform conversion using cycle-consistent adversarial networks

 デモはこちらから

デモページ

 

合成音声(ボイスロイドとか)を自然な発話音声に変換するモデル.

今まで音声を扱うモデルは波形から周波数特性だしてメルケプストラム導出してF0は別個で~っと遠回りしてようやくネットワークに入れてました.そのため元の波形から色々情報が抜け落ちてるため品質劣化がどうして起きてました.

しかしWaveCycleGANは波形をそのままネットワークにぶちこみます.音声波形といった時系列データを扱うのにLSTMといったモデルがありましたが,学習にかなり時間もメモリも喰います.
これを解決するために提案された,時系列データを畳み込み演算でそのまま扱えるGated Linear Unit(GLU)アーキテクチャに組み込まれてます.
また教師データ(ここだと合成音声から自然音声へと直されたものが)無しで変換を学習するモデルのCycleGANといったものが使われており雑多に合成音声と自然音声を集めるだけで学習可能です.

ボイスロイド動画投稿者でこれを再現して使って見てほしい.githubにソース上げて.

この著者が他にも声質変換とか手につけててまたも終わりが見えた.おやすみ

 

AI技術により超高精度な歌声合成 

ベタ打ちの歌詞付き楽譜を用意するだけで歌声が生成できるモデル(多分).
まだ論文は発表されてませんがつい先日公開された紹介とデモがこちら.

www.techno-speech.com

 

歌い方や声質といった癖を従来より再現しているらしい.らしい,っというのはデモを聞いた感じそういうのが前に出てるのはわかるが学習に使ったデータがはたして「IA」や「さとうささら」として作られた歌なのか,元のVoice Sourceである方の歌唱なのか不明瞭なのでなんとも言えない.ただ音の繋ぎを自力でやっている動画と比べるとかなり自然な歌声なのでボカロ曲投稿者が見たらどんな気持ちになるのだろうか.
2019年3月に開催される日本音響学会2019年春季研究発表会で発表されるので,論文が公開されたらまたここに書いていきたい.GANだと嬉しい.

 

終わりに 

本当はオタク長文記事を書こうかと思ったけど投稿日までに書き切れなさそうなのでゼミで読んでたものとかの紹介をしました.催事最後挨拶好侍になれ.上坂すみれさん,結名美月さん誕生日おめでとうございます.よくラジオである僕も誕生日なんですメールで祝われたい.鮭だけどチキンなのでメールとか出せないし認知されるの怖い.
ただでさえ研究が炎上してるのに書いてていいのかという気持ちはあるが実験が終わらないので許してほしい.DLは一回にかかる実験時間がものによっては一週間とかいくのでコードのチェックはちゃんとしましょう.GPUがn枚欲しい人生だった.

 

次はマキア君です.まってま~す.