変化点検出ChangeFinderのインストール&動かしてみた①

こんばんは、ロードローラーです。

今日は変化点検出を試したので紹介します。

IoTでデータを取得できる場面は広がりました。特に多いのが正常/異常を検出したいといった取り組みですが、いずれも「What is 異常?」を定義できずに悩んでいるようです。

そんな状況で私が注目したのが変化点検出のChangeFinder。これは「具体的にはわからないけど何かしら変化があった。」という瞬間を検出をする処理です。閾値処理のように高周波な変化やノイズに反応しにくく、傾向の変化を捉えるので、サンプルデータを入手しにくく定義困難な異常の検出に向いています。

 

インストール方法

私が実行した環境はUbuntu14.04です。以下を実行すればOKです。

が、しかし、これだけでは動かないこともあります。だいたいこのあたりを追加すれば動きます。(うろ覚えでスイマセン。。。)

 

サンプルソースと実行結果

ガウス分布で疑似的にデータを作り出してChangeFinderするサンプルがよく公開されてます。ソースと実行結果は以下の通り。

赤色がデータ値、青色がChangeFinder結果。データ値(赤色)の高周波な変動には反応せず、元となるガウス分布が変化しときにChangeFinder(青色)が反応しているのがわかります。こういった「そもそものデータ発生源の傾向変化」は単純な閾値処理では検出できません。

 

手持ちのデータに適用してみた

これだけじゃ面白くないので適当に採取したデータにChangeFinderを実行してみました。csvファイルを読み込んで実行するようにpythonプログラムを少々変更しています。

対象データは、とある楽曲演奏時のdB値を加工したものです。イントロ⇒メロ⇒サビといった雰囲気の変化を「やかましさの傾向変化」でキャッチできないかなという実験です。

う~ん、微妙。。。07:00:00と22:00:00にサビで盛り上がる場面がくるのですが、捉えられているといえば捉えられてる・・・か??

ここから先はChangeFinderの3パラメータ調節が必要そうですね。このあたりはまた次回に調べてみます。

それではまた

クラウドの対義語「オンプレ」とは? ~その1~

こんにちは、ロードローラーです。今日は「オンプレ」について整理してみました。

普段からIoTやデータ分析に携わっている私ですが、あるとき「で?オンプレとクラウドとどっちが適切なの?」と質問されてΣ(゚д゚) エッ!?っとなった次第です。

まずは、オンプレの定義から確認しますね。

オンプレミス 【 on-premises 】 自社運用:
組織における情報システムの設置形態の分類。クラウドの普及に伴って対義語として広まった呼称がオンプレ。

想像ですが、一昔前はなんでもかんでもオンプレ型で運用していて、クラウドの登場によって皆がどんどんクラウド型に移行した。しかしその後、やはりクラウド型だけでなくオンプレ型も使いこなさなければならない事情が出てきたのだと思います。クラウドとオンプレをハイブリッドに使いこなすためのサービスも次々と登場しているくらいですからね。

そしておそらく、大きな理由は①セキュリティ②データ量の増大かと。。。IoTやセンシング技術の発展によってデータ量は膨大になりましたし、個人情報を含んだデリケートな情報も増えてますからね。

企業様は導入や拡張が容易なクラウドを活用したいものの、セキュリティ観点や従量課金制の料金モデルを背景にオンプレも使いこなさなければならない状態なのだと思います。

<クラウドとオンプレの比較>

クラウド型
・外部の事業者が用意した機材やソフトウェアを通信回線を経由して利用する
・遠隔地の機器との通信に伴う通信遅延や通信障害が発生する
・機密情報を他社の機器上に保管することになる
・提供される構成や機能でしか利用できない
・導入が用意
・初期費用が低い
・拡張しやすい

オンプレミス型
・自社に機器を設置してシステム運用する
・自社内の機器を利用するので通信遅延等の心配なし。
・機密情報を自社の機器上に保管できるので安心
・構成や機能を自由にカスタマイズ可能
・導入に時間がかかる
・初期費用が高くつきやすい
・拡張や変更に手間がかかる

とりあえず今日はここまで