IoT・センサーデータの扱いは、素人Webディベロッパーにはシンドイよ
センサーの扱いは回路・信号処理をやっていない素人の私が信号処理を勉強しようと試みた話。 数学的背景や回路の話がシンドくて、概要をイメージできるようになった気分になっただけだけど、そのメモと感想。
しかし、センサーデータ解析も、ログ解析も、画像解析も、統計モデリングも機械学習も似て非なるものだなぁと再認識。 データ解析っていう一括りにしてはいかんよなー。
きっかけはhitoe SDK
hitoeのテクノロジーが入ったC3fitやhexoskinを見ていて、運動中に心拍取れるし、いいなー欲しいなーとちょっと思っていた。
C3fitのやつだと、まだ心拍しかサポートしていないっぽい感じだったし、生hitoeだったら何が取れるのかなーって hitoeトランスミッター SDKの開発者ページを見ていたが、 こんな文言が・・・
基本演算 生体情報に対して、RRIノイズ除去、RRI補間、周波数領域特徴量算出、時間領域特徴量算出を行います。
RRIノイズ除去??RRI補間?周波数領域特徴量算出?時間領域特徴量算出??
まったくピンとこないし、まったくわからない・・・。ひやぁっ!
昨今のIoTやら、ビッグデータやら、機械学習やらで賑わっている中で、 ログデータや観察データのいわゆる数値データ(?)の扱いはなんとなく分かっているが、 機械のセンサーデータや心拍・筋電など生体データの扱いは全然わからないなと再認識した。
前にセンサーデータを扱ってみようかと思った時に、時系列データ分析の知識だけではやりたいことが全然できないなーと思っていたので、これを機会ちょっと勉強してみようかなと思った。
この領域はなんていうのか・・・?信号処理?
まず、この領域がなんていうのか、知らなかったので、「センサーデータ」「生体データ」「RRI」などど色々とググっていたら、どうやら信号処理という領域らしい。ふむふむ。
信号処理を勉強していくが・・・
まず、基本からわかる 信号処理講義ノート をポチって、読んでみた。
しかし、電子回路の話や、フーリエ変換などの数学的な背景の話が全然わからない・・・。
なんとなくのウワベだけの部分しか把握できなかった・・・。
理論的な部分は今の私のレベルでは難しいので、理論的なものは置いておいて、手法・実践的なものが説明されているものはないかと悲しい気分で探していた。
昔買った、インターフェースを思い出した
Interface(インターフェース) 2015年 04 月号の生体センシング入門を昔衝動買いして、「よくわかんない」と本棚の奥にしまわれていたのを思い出した。
こちらの本も読んで、なんとなく、センシングから、フィルターをかけて、見たいものを解析するという流れが、わからないなりに掴めた。ローパスフィルタやハイパスフィルタ、移動平均フィルタなどのイメージもつかめた。
脳波はα波・β波など、おおまかな周波数がわかっている周期的な連続信号。筋電は随意運動で周波数がなく、「筋肉の出力パワーが大きい=筋電1本1本の総数が増えている」のであって、筋電1本1本の出力が大きくなっている訳ではないなど、解析する上で検討するべき特性が違うなど、信号処理でも解析する対象によって考えることが違うということも知れた(当たり前だけど)
なんとなく分かったけど・・・
- hitoeのSDKとかを使えば、フィルタとか解析した後の、欲しい値が手に入るから、その辺の部分は隠蔽してもらえているとは思うけど、どういう処理をしているのかを知れてよかった
- センサーデータとか、バックグラウンドの知識を持っていない気軽にIoTとかやっちゃいかんよなと
- やる場合には、信号処理の部分を一緒にやってくれる人がいたり、信号処理が必要ない形でのデータにする工夫が必要だったりするなと
- まだ自分でコード書いて解析してはいないので、どこかで自分でコード書いて信号処理でデータマイニングしようかと思う
- いつも他の分野を学ぶ時に思うことだけれども、0を1にするステップがわからないのがシンドイ
- なにから勉強をしていいのか分からないし、入門書でも難しいんだよー