私と主成分分析と独立成分分析

データマイニング・ビッグデータなるものが流行っている.
多くの顧客情報や取得したセンサデータやログを対象にして,
何らかの数理的な仕組みを使って有用な知見を導き出すことである.

この「数理的な仕組み」の部分は,学生時代にPRML(Pattern Recognition and Machine Learning)を読んでいたこともあり,
読めばサクッと頭のなかに入ってくる.
特に主成分分析や独立成分分析は面白かったと記憶している.


主成分分析と私
主成分分析は,高次元データを低次元データで表現するために分散が最大になるような軸を見つけ出して整理するといった手法.
固有値固有ベクトルの数理的な問題に落とし込めるエレガントさがあったと記憶している.

学生時代は,グー・チョキ・パーの手の形をした膨大な画像を仕分ける課題が与えられたのが主成分分析と出会ったきっかけだったのだが,その数学的な美しさに感動していた.

数学的に美しいものは実装も容易で,画像のパターン認識くらいであれば,2次元画像をベクトル化して,定式化された式にぶっこんで学習フィルタを設計するだけ.
京大は研究費が結構貰えるありがたい環境だったので,MATLABが必ず与えられていた.
MATLABで書くと100行もいかなかったと記憶している.
# 今思うとこれがものすごくゆとり脳をつくる元凶だった
# C++で最適化するくらいのスピード狂にでもなっていれば優れたソフトウェアエンジニアになれていたと思う.

独立成分分析と私
あれは研究室選びをしていた学部三回生の頃だった.
あの頃は不景気だったこともあり,「就職できる」研究室選びを主眼においていた実につまらない学生だった.
バイオは就職できないし,機械系はドカタだし...なんて本当に失礼なことを考えていた.
そこで出会ったのが音声信号処理の研究室.
そこでは二人の話者が同時に喋った音声を分離する,「音源分離」という技術を見せてもらった,これが非常に面白い.
混ざった音声を分ける仕組みがどういうものなのか知りたくて知りたくて震えた.
聞いてみると独立成分分析という理論が使われている模様.
独立なサンプルの平均はガウス分布に近づくといった性質を逆手に取ることで,独立な信号に仕分ける仕組み.
# いまだによくわかっていない
「これがあればみんな聖徳太子になれるやん!」なんてことを言っていたのを思い出します.大学に来てくれた独立成分分析の権威 aapo hyvärinenさんの本を掲載しておく.多分日本語版だとこれが一番詳しくて正しい.



いろいろ思い出していくとやはり高度な数学的な香りがするお遊びが好きなようで,
数値解析・信号処理熱が再燃してきました.
修士課程のときに参加したICASSP(信号処理の世界的な学会)では,
音声認識やら雑音除去の研究論文発表をGoogle,Microsoft, IBMがこぞってやっていました.
ハイテク企業の彼らに少しでも近づきたいので私も個人的に研究活動をスタートしなければならん気が勝手にしてきたのでPCに環境セットアップする!

学生の時みたいに高価なMATLAB様は使えませんので,無料で何かできないか探したところ,見つけました.

無料でデータマイニングできちゃう,そうPythonならね
私はMBAでおしゃれにデータマイニングしたいので,
Mac上のVirtualbox仮想環境でUbuntuいれてリンクにある手順でセットアップしました.

コメント

このブログの人気の投稿

Callback関数を知らん人がまず理解すべきことのまとめ。

C言語でBluetoothスタックを叩きたい人のBluetooth開発入門その1

C++プログラミング入門(1) // 倉庫番プログラムの実装