世間話
世の中色々なデータの変換があるんだけど、彼らは何でこんなことしてんの?ということが書かれていない場合が多い。
意味がわからん。する必要ないでしょ。と考える人のための読み物。
背後にある物語
同じデータを別の表現にすることは、大きな目的がある。
例えば、ある画像の情報量を半分にしたい場合、どうする?
これは困ります。右半分が見れないから。ところが、 以下のような情報量の削減方法があります。
こっちの方が良いでしょう。細部は潰れたりしていますが全体はそこそこ同じですから。
どうやってやったの?
ここからが今日の本題です。
同じデータを別の表現に変換することで、以下のことが可能となります。
- データ圧縮
- 次元削減
- データ分解
- ノイズ除去
- データ解析
- フィルタ
- 近似
より具体的に説明します。上の例では、
$$ (画像データ) = フーリエ変換 => (周波数成分) \cdot (周波数強度)$$
ここで、(周波数強度)は重要度としてみなしても良いでしょうから、小さい強度を0にしたら圧縮できるでしょう。
そうやって圧縮したものが上の画像です。
画像データでなくて音声データであればMP3ファイルになります。
低周波数の強度を上げるとローパスフィルターになります。
ここで重要なのが、この考え方自体は、フーリエ変換でなく別の変換であってもよい訳です。
- データを削減していれば、データ圧縮、次元削減と見ることもできる
- データを成分毎に分解しているためデータ分解と見ることもできる
- 削減したデータが細部やノイズであればノイズ除去と見ることもできる
- 求めているデータに対して近づけるようなデータ加工をすると近似と見ることもできる
- データ加工に利用していればフィルタと見ることもできる
すべては以下のような形式であれば可能なので、この3つはほぼ同じで呼び方が変わるのは人間の都合で実体はほぼ同じものでしょう。
以下は、実例ですが、書き方を似せて書いているので完璧に正しくはありません。
雑な理解を目指しているため、このようなファンタジーが混じります。ご了承ください。
- 特異値分解 : $X =U \Sigma V^{*}$
- テンソル分解 : $X =UV^T$
- タッカー分解 : $X =UCV$
- 主成分分析 :$ X=U \Sigma W^T $
- フーリエ変換 :$ X=AW$
かなり似ているのがわかるかと思います。$U$などの記号の意味はそれぞれの方法によって違いますし、データ形式が行列であるとかテンソルであるとかは違いますが、大まかな全体の形式的な部分がかなり似ています。
そのため、これを利用した技術の方向性も似たようなものになるでしょう。
実際、データ圧縮やノイズ除去などは似ていますしね。
まとめ
今回、かなり雑多な話をまとめましたが、こういう技術の勉強をしていて方向性を見失った時に参考にしていただければと思います。