はじめに
私の研究テーマは 画像処理 です。
画像処理の世界についてつらつらと書き連ねていきます。
ここでは上辺のお話が多めですので、具体的な実装のお話はそれぞれのリンク先をご参照ください。
画像処理
画像処理とは、読んで字のごとく画像をいじるという作業です。画像処理にもいろいろとありますが、代表的なものとして 分類 と 変形 が挙げられるかと思います。
分類
分類とは、機械学習の一つの目標であるといえます。画像処理における分類は、画像に何が写っているか を検出することを目標にしています。
例えば、こんな画像をコンピュータに渡して、リンゴ と答えさせるようなことをします。
教師あり学習
画像の 分類 タスクには、教師あり学習 の方法がよく用いられます。
教師あり学習とは、学習用データとして大量の入出力ペアのデータを用意し、入力と出力の傾向をコンピュータに覚えさせるという方法です。学習用データの出力部分をとくに、教師 とよびます。
学習の際によく用いられるのが、ニューラルネットワーク や 線形モデル です。
ニューラルネットワーク
ニューラルネットワークの形はこのようなものです。(実際はもっと矢印と丸が多い)
一番左が入力層、一番右が出力層とよばれます。真ん中の層は隠れ層とよばれます。
ここでは、入力が3次元データ、出力が2次元データとなっています。
次元とは、データの何種類あるかというイメージで問題ないと思います。
入力の3次元データ(チョコの量、チョコの甘さ、色)に対して、2次元の出力(きのこ or たけのこ)を求めるようなものです。
詳しくはここにまとめています。
変形
大雑把にいうと画像をいじる、ということです。画像の欠損した部分を修正したり、ノイズを除去することが目標です。
見ての通り、リンゴに欠けている部分がありますね。
これを
こうするのが 変形 です。
※変形という言い方は正確でないかもしれませんが、このような作業をコンピュータにさせると想像していただければありがたいです。
教師なし学習
画像の 変形 タスクには、教師なし学習 の方法が用いられます。
教師あり学習の方法は、学習用データして入力と出力( 教師 )のペアデータを用いて学習します。
対して教師なし学習は、学習用データとして入力データのみで学習を行います。
私の研究は主にこの分野です。
オートエンコーダ
オートエンコーダとは、ニューラルネットワークをつかってデータの特徴を抽出する方法です。
オートエンコーダは、エンコーダ と デコーダ からなります。
エンコーダ とは、データの特徴を抽出して次元を削減します。特徴の抽出という意味では、分類の処理と似ています。( 例:画像⇒何が写っているか )
デコーダ とは、抽出されたデータの特徴をもとに、データを復元します。( 例:何が写っているか⇒画像 )
このような処理を行うことで、ノイズ除去などの画像修復ができます。
研究内容
ここからは少しだけ研究内容のお話をします。
現在はノイズ除去を発展させるために、ボルツマンマシン の研究を行っています。
やっていることとしては、機械学習 + 統計学 のようなものです。
ボルツマンマシンといってもそれほど内容は変わりません。
ニューラルネットワークは、 入力⇒出力 のように一方通行でしたが、ボルツマンマシンはそのような向きがなくなります。その程度の違いです。
このような形で数式を羅列していますが、実装には至っていません。
当面の目標はボルツマンマシンの実装です。