世の中、機械学習によって、”何でもできてしまう”という勢いですが、さてどうでしょうか?機械学習について、いろいろ考えてみました。機械学習は大きく統計的機械学習とニューラルネットワークのような深層学習に大別されます。統計的な機械学習で、最も有名で性能も良いと思っているのは、サポートベクターマシン(SVM)です。これは特徴量を高次元の空間上で分類して、その境界を定義する方法です。数学の裏付けもありますので、安定して判別基準を生成してくれます。また、判別モデルはシンプルなので、特徴量の数が多くても判別処理は早く、実用のシステムとしては有用な技術です。次にニューラルネットワークをはじめとする深層学習ですが、こちらは、数学的にというよりは、いろいろな手法が提案されていますので、やや行き当たりばったりの感じがします。ただ、設計手法が確立していないためか、人の予想を上回る判別モデルができたり、自己のネットワークの再構築を適時行って行き、当初の性能を上回るシステムに到達する可能性もあります。このページでは、深層学習の設計について、もやもやしていることが多いので、設計手法について述べて行きたいと思います。
画像の認識と並行して音の認識の流れを、考えてみます。写真などの認識においてHOGなどの特徴抽出は、画像の濃淡の流れを見ています。具体的には、画像を細かく分割して、色情報を削除して白黒の濃淡の方向毎に分けて行きます。この作業はちょうど、漫画に変換する際の、線分の抽出にあたる作業です。次に漫画調になったら、さらに簡単にして、線図にします。人の顔なら、髪、眉、目、鼻、口、耳、顔の輪郭ですね。このあたりであれば、まだ誰の顔なのか程度に使えます。さらに画像を簡単図にすると、目と鼻と口です。もしかすると、目と口だけでも人の顔に見えるかもうしれません。このように一枚の英の中の大量のデータを、単純な線図または簡略図にして、これをフィルターにして、元の画像の中で一致する具合を見ます。音の場合も同様で、いろいろな楽器の音が組み合わさっていますが、人は鼻歌にするときには主旋律のみをもって、音を認識しますし、鼻歌にまで落とすと使われる周波数も限定的です。最終的には、少数の周波数の時間的な変動によって、音を表現することができます。
音の入り口である耳について、説明します。耳を機械としますと周波数毎の時系列なレベルを計測する装置になります。