今週は出張が重なったため、勉強の進み具合は少し。
waifu2x
Deep Learningを使用したアプリケーションとして、waifu2xというソフトがあることを知った。githubにてソースコードも公開されている、オープンソースプロジェクト。
waifu2xは、超解像・ノイズリダクションソフトで、Convolutional Neural Networkを利用して、入力画像の2倍のサイズを”復元”するというもの。トレーニング時に半分に縮小された画像を入力として、オリジナル(入力画像の2倍サイズ)画像(ターゲット)を出力するように学習させる。
超解像も機械学習の分野でできるなんて知らなかったので驚いた。Deep Learning のすごいところはこれまで経験を積んできたプロが行ってきた特徴抽出からパラメータ調整といったものを、自動でしてしまうところ。
今回の画質処理の例でいうと、今までの画質処理は明るさ・コントラスト・シャープネス・カラー、、、といった様々な”特徴”があり、それぞれに対して適切な画質補正を行っていた。しかし、Deep learningではこういった特徴抽出さえ機械が勝手に学習する。機械学習の実装者はコントラストやシャープネスといった概念を知ることなく、勝手に機械が画像に存在する特徴を抽出し、それを最適にするように学習・調整を行う。
これはとても怖いことだなと感じる。今まで何十年とかけて、その分野を磨いてきた専門家が、いきなりやってきた、画像処理に関しては無知の機械学習エンジニアが作ったソフトに勝てなくなるかもしれないという事だ。