2017年11月27日CCライセンスまとめ1表示(BY)原作者のクレジット(氏名、著作物タイトルなど)を表示する。2非営利(NC)営利目的での利用をしない。3改変禁止(ND)元の作品を改変しない。4継承(SA)改変した場合、元の作品と同じライセンスで公開する実際はこれらの組み合わせでCCライセンスを設定します。IoT情報セキュリティ」を中心にまとめますSHODAN:モノのインターネット(IoT)デバイスを探す検索エンジン。企業のネットワーク管理者はこれらを利用して外部から脆弱性がないかどうか確認を出来る。CENSYS:SHODANと同じく、モノのインターネット(IoT)デバイスを探す検索エンジン。耐タンパー性:物理的にデバイスを盗まれたときに、内部のデータを解析困難にしていること。セキュアブート:デバイス電源投入時にデバイス内のソフトウェアが正規品であるかどうか検証してからソフト実行する仕組み。Firewallの略。WEBアプリにおいてHTTP通信等を解析して攻撃を検知・防御する。System)を対象として、その構築から運用・保守に渡ってサイバー攻撃から守るためのセキュリティ対策を実施し、システムを運用するもの。oneM2Mセキュリティ規格:サービス層におけるIoTプラットフォーム標準化を推進する団体。セキュリティ機能は共通サービスエンティティ(CSE)の1つとして提供される。IoTシステムのプロトタイピング開発」を中心にまとめますデータフォーマットの検討(CSV):データがコンパクトで処理が速い。シンプルなセンサデータであればCSVが適任。データフォーマットの検討(XML):トランザクション処理向き。処理時間がかかり、レコードが大きくなりがち。データフォーマットの検討(JSON):エスケープ処理に対応。CSVに比べるとレコードが若干大きめで処理速度も劣る。FabLab:3Dプリンタなどの先進的な工作機械を備えた市民工房。マイコンボード(Arduino):イタリアのマッシモ・バンジらによって開発されたマイコンボード。センサやアクチュエータなどを簡単接続できるため電子工作が手軽に可能。開発言語はJava以外にも独自言語が用意されている場合も多い。コンピュータ(RaspberryPi):英国のRaspberryPi財団が開発したコンピュータボード。OSを持っている点が特徴。モニタディスプレイやキーボードやLAN接続で廉価版PCとしても動く。Input/Output(汎用入出力)の略語。アナログ信号を入出力する場合はマイコン側でA/D変換やD/A変換がなされる。入力として動作した場合は電気回路のほかの部分からのデジタル信号を読み取る。出力として動作した場合は他デバイスの制御や信号の通知を行う。デジタル出力のセンサ値をマイコンに伝える入力や、マイコンの演算結果をLEDで表示したりする信号を出力したりする時などに利用。シリアル通信:送受信によるプログラム制御によって、伝送路上を一度に1ビットずつ逐次的にデータを送る。送受信に用いる信号線の数はUARTは2本、I2Cが3本、SPIが4本。電波強度RSSIの季節性:電波は水分によって減衰するので、秋や冬に電波が良く通っていても、春や夏には電波が届かなくなることがあるので要注意。IFTTT:「レシピ」と呼ばれる個人作成もしくは公に共有しているプロフィールを使って数あるWebサービス同士で連携することができるWebサービス。TwitterやFacebookなど人気サービスはほぼ網羅されている。myThings:ヤフーが提供するIFTTTに類似したサービス。IoTデバイス」を中心にまとめますパッシブセンサとアクティブセンサ:人体表面から出る赤外線を検知するような仕組みがパッシブセンサ。近赤外線ビームを投光して反射光を測定するような仕組みがアクティブセンサ。オフセット:入力がゼロにも関わらず、出力がゼロでない場合、その値をオフセットと呼ぶ。センサ感度:入力に対する出力の比率。感度が高いほど高解像度で値検出できる。CDsセル:光りが照射されると電流が流れやすくなる光導電効果を利用。フォトダイオード:光りが照射されると電圧・電流が発生する光起電力効果を利用。赤外線センサ:人体からは体温に相当する遠赤外線が出ており、これらを測定することで非接触に体温測定が可能。温度上昇を抵抗変化で検出する熱型や、センサ表面に発生する電化で検出する焦電型がある。PSD:2つの電極で測定される光電流の差から、光の照射された位置を検出する。サーミスタ:温度センサに用いられる。金属の酸化物を焼結した素材。温度上昇に伴って抵抗が減少する。熱電対:異種の金属が電気的に接続された回路では、両端に温度差があると熱起電力が生じるゼーベック効果を利用。白金測温体:温度上昇にあわせて抵抗も上昇(サーミスタと逆)。細く加工することで応答時間が早くなる。半導体温度センサ:半導体ダイオードの温度特性を用いたセンサ。小型でIC回路内に搭載可能。チップ内の温度検出に用いられる。ひずみゲージ:薄く張り付けた金属が延びたりすることで変化する抵抗値を検出する。微小な抵抗変化であるため、検出のためにホイートストンブリッジ回路(未知の抵抗値を測定できる回路、微小な変化も検出できる)が組み込まれる。ロードセル:力の大きさを電気に変換するセンサ。表面にひずみセンサが貼り付けられている。体重計や電子秤に用いられる。圧力センサ:金属ダイアフラムが圧力によって変形して、その変形をひずみゲージ等で検出することで圧力を測定する。気体や液体の圧力に加え、血圧の測定などにも用いられる。加速度センサ:重りをバネで支えた構造を持ち、取り付けたひずみゲージの抵抗変化や、電極間の静電容量の変化により動きを検出する。ジャイロセンサ:回転を検出するセンサ。船やロケットの制御、さらにはGPSでも用いられる。回転物体は外力が加わると一定の姿勢を維持しようとするので、その力を計測することで角速度を検出する。衛星測位システム:代表的なのがGPS.4つ以上のGPS用人工衛星の信号を受け取ることで高精度な測位が可能。超音波センサ:超音波の反射を利用して物体の位置を検出。ドップラー効果によって速度も検出可能。音波は空気中よりも液中の方が速く進む。医療に用いられる超音波画像などもある。磁気センサ:磁気の他にも、電流の非接触測定やモータ回転制御に用いられる。電流が流れている半導体に磁界を加えられると電圧が生じるというホール効果を用いたものや、磁界によって電流が流れにくくなる(抵抗が大きくなる)MR素子を利用したものなどがある。MR素子はホール素子に比べて高感度。化学センサ(水中のイオン検出):ガラスの内側と外側の水素イオン濃度の差により電圧が発生する効果を利用して水中のイオンを測定するセンサ。化学センサ(水中の酸素濃度):白金と銀などの対極を用いて酸化還元反応をさせる。このときに流れる電流が酸素濃度に比例する性質を利用。化学センサ(期待の成分を測定):酸化スズの表面にガスが付着すると伝導率が変化する性質を利用。ジルコニアは酸素イオンを透過させるため酸素濃度の検出に用いられる。バイオセンサ:特定の物質が特定の分子と反応する性質を利用して、反応を電気信号に変換して取りあ出す。検出対象には酸素、免疫、DNA、臭い、味などがある。アクチュエータ(DCモータ):直流電流によって回転するモーター。入力電圧によって直線的に回転スピードが増加する。アクチュエータ(ステッピングモータ):モータの軸が時計の秒針のように一定の角度ずつ動く。正確な位置決めの制御が可能。産業用ロボットに用いられたりする。アクチュエータ(ソレノイド):電磁石コイルの中に可動鉄心を収めた構造を持つ。コイルに電流を流すことで可動鉄心を直線的に動かす。電磁弁として水や油の流体を流したり止めたりするのに使われる。信号前処理(オペアンプ):センサからの信号はμAやmVといった微小単位のことが多い。センサの感度調節やお布施と調節のために、これをオペアンプによって増幅してやる。I2C:フィリップス社が提唱したシリアル通信の方式。2線式の同期シリアル通信インターフェース。SPI:モトローラ社が提案した同期シリアル通信インターフェース。周辺環境から微弱なエネルギーを求めて発電し、利用すること。画像センサ:感度を上げたい場合は大きな素子を用いる必要があるが、必然的にサイズが大きくなり高価にもなる。F値:レンズの絞りを最大に開いたときの明るさを、そのレンズのF値と呼ぶ。明るいレンズほど解像力がある一方で、焦点からずれた時のピンボケが大きくなる。MEMS:微小な電気要素と機械要素を一つの基板上に組み込んだセンサ、アクチュエータ等のデバイス/システム。同一平面にCMOSデバイスを組み込み可能だったりコスト効率に優れている表面マイクロマシニングと、高い感度と精度があるバルクマイクロマシニングがある。IoT用途には周辺回路を集積化できる表面マイクロマシニングが主流。IoT通信方式」を中心にまとめます高周波の電波のメリット:・情報伝送容量が大きい・アンテナが小さくなる高周波の電波のデメリット:・伝搬損失が大きい(周波数と距離2乗に比例)・障害物を回り込みにくい・ガラスなどの透過損失が大きい・伝送距離が比較的短いISMバンド:産業で容易に利用してもいい周波数帯。日本では2.4GHz(無線LAN、Bluetooth)や920MHzが広く利用されている。スター型:ゲートウェイは常に稼働している必要あり。ゲートウェイに複数センサが繋がるので、データが衝突しないように送信順番を制御する必要あり。中央集権なので信頼性の低いネットワークになる。ツリー型:階層構造によって多くのセンサをゲートウェイに接続可能。上位のノードにデータが集約されるため、一定のスペックが求められる。混信しないようにデータ送信純の制御や周波数帯域の使い分けが必要。メッシュ型:到達ルートが複数あるため信頼性の高いネットワークを構築可能。通信が混線しないように周波数を使い分ける必要あり。ノードが常に受信待機のため稼働していないといけないので電力面にデメリットあり。BLE通信可能距離はBluetoothよりも短い。低消費電力に特化させた通信。100mマルチホップが特徴。センサネットワーク形成に用いられる。RFID:無線通信機能を持ったタグ。電池内蔵で自らデータ送信するアクティブ型と、受信電波をエネルギー源として電波を返送するパッシブ型がある。4.48GHzで560Mbpsという高スペック。KIOSKでの広告等コンテンツ配信に用いられる。Z-Wave:1GHz以下で無線LANなどと混線することなくフルメッシュネットワークを形成する。あるACKを使わないことで低電力化、その代わりに1回の送信でランダム間隔に3回データ送信する。DustNetwork:「きれない無線」を目指したメッシュネットワーク。時間をスロット分割して、割り当てられたタイムスロットで送信させることにより衝突が発生しない。):携帯電話などと比較して、IoT機器はネットワーク接続の優先順位を下げる仕組み。報知情報:ネットワーク混雑時にIoTデバイスにアクセス不可な旨を報知情報として届ける仕組み。これによりIoTデバイスは接続要求すら出さないので回線制御信号までも控えることが出来る。IoT最適な標準化:無駄なスペックをひたすら省こうとする試み。NB-IoTと言われるように最小限の帯域しか割り当てず、最低限の通信速度しか持たせない。IoTとプロトコル(HTTP):暗号化やプロキシといったセキュリティ面で強いが、ヘッダ情報が大きいため無駄なデータ伝送が多くなる。IoTとプロトコル(CoAP):そんなHTTPの欠点を改良したものがCoAP。軽量版HTTPと思っておけばだいたいOK。IoTとプロトコル(MQTT):パブリッシャーとサブスクライバーという構成が特徴。トピックの一致をもってデータ送受信がなされる。HTTPなどよ比較してヘッダサイズが1/10以下。IoTとプロトコル(WebSocket):ベースはHTTPと似ているが、1度確立したセッションをそのまま維持し続ける点が特徴。TLSに対応しているためセキュリティにメリットがある。リアルタイム性も強い。プロトコルバインディング:アプリ層やトランスポート層などでプロトコルが異なる場合に、その差を吸収する仕組み。IoTデータ活用技術」を中心にまとめますHadoop大規模データの蓄積・分析を分散処理技術によって実現するフレームワークMapReduceデータを分類・仕分けするのがMap処理、仕分けされたデータごとに処理を施すのがReduce。CEP複合イベント処理。時系列に生み出されるデータを次々とリアルタイム処理する方式。NoSQL(Key/Value型)保存するデータをValueとして、ペアとなる一意のKeyを使ってValueの追加と呼出しを行うNoSQL(ドキュメント)JSON、XMLなどのフォーマットで記述されたデータを管理する。NoSQL(グラフ)データ間の関連性を管理可能。グラフ理論に基づくNoSQL。SNSなどの「ある人の友だちの友達」など互いの関連性を管理するときに利用されている。本日は移動サービスのクラウド化について述べます。結論だけ先に言うと同じ車両がユーザ要求に応じて異なる移動サービスを提供できる状態だと筆者は考えています。参考書籍はIPAより今夏発売されたAI白書(なんというパワーワード...!?)1移動サービスとは:バス、タクシー、電車といった移動を提供するサービス。2移動サービスの現状:サービスとハードウェアとが分かちがたく結びついている。バス車両はバスとしてのサービスに徹しており、タクシーのようには機能させない。タクシーがバスの代わりをすることもない。現在では、CPU、GPU、データベースなどのリソースを仮想化して、ネットワーク経由でサービス提供することを指す場合が多い。抽象度を上げると、ユーザ要求に応じて柔軟にハードウェアリソースを割り当ててサービス提供し、ユーザはどのハードウェアを使っているのかを意識することが無い。冒頭申し上げました通り、同じ車両がユーザ要求に応じて異なる移動サービスを提供できる状態だと筆者は考えています。現状では、1台のバス車両は同じルートを巡回するといった1つのサービスしか提供しておらず、ユーザが「私はコッチ方面に行きたい!」と要求してもサービス内容は変わりません。タクシーはユーザごとに行先を定めるので、そういう意味では要求に応じて異なるサービスを提供できているのかもしれません。ハードウェアリソース量と時空間の制約から、乗降場所と乗降時刻についてユーザ要求を満足したサービス提供をできているとは言い切れません。(平たく言うと近くにタクシーがなかなか見つからなかったり、タクシー到着までに時間がかかったりする。)<未達成の問題>:クラウドの特徴である「ユーザ要求に応じてハードウェアリソースを柔軟に割り当てる」という部分が最適化しきれていないこと。<移動サービスのクラウド化が目指す姿>:柔軟なハードウェアリソース割り当てによって乗降場所と乗降時刻についてユーザ要求を満足させること。そのためには需要予測に基づいた全体最適な配車管理が必要となる。1997年のアメリカ映画『メン・イン・ブラック』では、道路を走っている車にKが手を上げると、実はその車は無人で自家用車に即変身するというシーンがあった。あれは未来像としてとてもよくできている。・・・まとめると凄くフツーになってしまいましたね。ここで注意してほしいのは、近年流行っている「Uber」は自家用車をついでにタクシー代わりに有効活用しようという発想であり、事前予約を必要としている以上、全体最適を達成しているわけではないということ。~データ欠損と選択バイアス~突然だが、アンケート調査はまんべんなく人々の声を集められるか?実際に日本国民全員にアンケートするのは現実的ではない。よって、このようなときは全体となる母集団から一部を抜き出した標本調査を行う。簡単に言えばランダムに数人抜き出せば全体の縮小版になるので、人々の意思をまずまず反映できるだろうということだ。実際はそううまくいかない。アンケートは万能ではない。某国の大統領選挙を思い出してほしい。あの過激で問題発言の多い候補者Tに誰が投票するかと言われていたし、事前調査ではもう一方の候補者Hが優勢だったのに、蓋を開ければ勝者は候補者Tであった。?これは、候補者Hを支持する人はアンケート調査に素直に「私は候補者Hを支持します」と回答するのに対して、候補者Tを支持する人はアンケート調査に素直に「候補者Tを支持しています」と言いにくく、無回答としたり「候補者Hを支持する」と嘘をついたりしたからだ。特定の選択肢について選びにくい事情がある場合、アンケート調査は実態と離れてしまう。選択肢にバイスがかかっていて機会が均等ではないのだ。面白いのは、機会均等性が保たれていない上記のような状況では、標本数(アンケートした人数)が多いほど誤りが多くなることもある。(※一般には標本酢が多いほど母集団の特性を正確に反映できる)調査方法によるバイアス応えにくい選択肢があるのならば、完全匿名のインターネットで調査するのはどうだろうか。この場合は調査方法によるバイアスに注意が必要だ。現代ではその影響はだいぶ少ないかもしれないが、インターネットでアンケート調査をすると、対象が「インターネットの操作に慣れている人々」に限定されてしまい、これがバイアスとなりかねない。東京で街頭調査をしても関東人の意見の酒豪であり、関西人の意見は反映されない。なると日本人の相違とは若干遠ざかってしまうのだ。興味によるバイアス選択肢をいくら用意しても、興味が無いことには回答しようがない。サッカーを見たことが無い人に「どのチームが好きですか?」と尋ねても、だいたい無回答になってしまい、さらにはランダムな回答すらされることがある。これでは、ランダムに起因したノイズデータや、データ欠損が起こってしまう。興味がある人だけ回答してくださいとすればうまくいくだろうか?そうではない。その場合はサッカーに興味がある人だけに調査対象が偏ってしまい、標本にバイアスがかかってしまう。おわりにデータのノイズや欠損は、統計的手法をしばしば困難にする。ディープラーニングやデータマイニングによる価値が注目されているが、そのためには品質高いデータが必要だということだ。対応こちらはIoTシステム検定の推薦図書。私は深層学習やってる傍らIoT技術者でもあるので一応読んでおきました。試験対策を意識して知識をまとめていきます。Machine(マシーン・ツー・マシーン)の省。機器間の通信や、機器間で通信するデバイスを意味する。oneM2M:IoTやM2Mに共通性を持たせようと取り組む団体、および、団体による国際規格。Entity)の3つのレイヤーによるアーキテクチャを定義した。Entity):アプリケーション管理、セッション管理、セキュリティなどM2Mデバイスに共有の機能を提供する。Node):M2Mデバイス。CSEを搭載しているもの。Node):M2Mデバイス。消費電力などの観点からCSEを組み込めないもの。Processing:複合イベント処理):IoTで収集されるストリームデータに対し、ローカルで分析して条件合致したら「特定のイベントが発生した」と判断してアクションを実行する処理。サーバに格納する前にエッジ端末で即時処理するシステムを想像すればわかりやすい。VM上で働くアプリケーションの動的追加や実行を管理するためのミドルウエア。リモートから動的にJavaモジュールを追加・更新できるのが特徴で、1つの機能アプリケーションを「バンドル」と呼ぶ単位で管理する。IoTデバイスに対してOSGiフレームワーク上で、バンドル単位のアプリケーションのインストールとアンインストールをすることで管理する。IoT):IoTでの利用を想定した無線通信方式として既存のLTEを拡張したもの。約200kHzという狭い帯域幅で通信をして、専有帯域幅が狭いため既存ネットワークと併存しやすい。BluetoothやZigBeeなどのこと。No-SQL私はいつも逆に覚えてしまうのだが、データが膨大、一度書き込んだデータの更新はめったにしない、データ定義の拡張性、データベースの拡張性、書き込み処理の速さ、といった観点からIoTではRDBMSではなくNo-SQLが推奨されている。京都の某メーカーにて機械学習・IoT・ビッグデータを扱う。