【オフライン】tinyML勉強会 (Chapter1-3)
イベント内容
はじめに
tinyMLをご存知でしょうか? 今非常にホットな話題として仮想通貨や自動運転などがありますが、tiny Machine Learningという分野がAIの分野でとても注目されはじめています。
いきさつ(長いので飛ばしてokです)
私自身、少し前までAIスタートアップ企業に在籍し、AIプロジェクトに身を投じてきました。そこで日々感じていたのは、学習をクラウド上の強いマシンで行うのは理解できるが、推論をCPU/GPUパワーリッチな汎用的かつそこそこ値段のするエッジデバイスで行うということが、プロジェクトの性質によってはコスト的(金額および消費電力の両方)にいかに非現実的であるか、ということでした。
例えば異音検知を行う場合、学習のプロセスはマイク→オーディオケーブル→オーディオインターフェース→エッジデバイス→WiFi→クラウド→モデル作成、などとなります。一方推論のプロセスはクラウド→WiFi→エッジデバイスにモデルをデプロイ→マイクからの音声で推論、などとなるわけですが、マイク、ケーブル、オーディオインターフェース、エッジデバイスを何セットも用意すると、それだけで途方もない金額になり、さらに大量のデータをネットワークに流すコスト、クラウドでの学習のコスト、などを加味すると、ビジネスとして成り立つのか怪しくなる気がしていました。
そんな中、去年の夏にEdge Impulseというアメリカのスタートアップが提供しているサービスを利用し、マイコン向けに小さな異音検知MLモデルをクラウドで作って数千円のマイコン(マイク付き)にデプロイしたことがありました。この時は人間のせきを検知させようと思ってやってみてうまく検出はできなかったのですが(以下の動画をご参照ください)、それでも大変な衝撃を受け、夜も眠れなくなりました。そこでEdge Impulseの使い方を日本語ドキュメントにまとめて社内に展開したところ、一部のAIリサーチャーからは同じように夜も眠れなくなったと言われました。
ST IoT Discovery Kit (STM32搭載マイコン)+Edge Impulseによるせき検出
動画はこちら
何がそんなに衝撃的だったかといえば、Edge Impulseのシステムが当時私が在籍していたスタートアップが構想&構築していた異音検知システムのクラウドサービスに酷似していたこともあるんですが、彼らは産業用PCや安価な例だとラズパイのようなものではなく、数千円、下手したら数百円のマイコン用に数kBのモデルをクラウドで作成してエッジにWiFi経由でデプロイする、そういうサービスをもう完成させていたことでした。
せめて推論は半導体マイク搭載の安いマイコンでできたらいいのになぁ。そう思っていたところに、プラットフォームサービスまで含めてもうやっているスタートアップがあった、それがEdge Impuseで、さすがシリコンバレーだなぁ、と感銘を受けたのでした。
tinyMLとは
安価なマイコンで機械学習(今は推論がメイン)を行う一連の取り組みがtinyMLです。モデルサイズは数kBと、普通の機械学習ではありえないほど小さいです。マイコンを使うメリットは、まず金銭コストがあります。安いので使い捨てや、そこらじゅうにばらまいたりするのも可能でしょう。次に消費電力です。1mW程度でも動くので、電池駆動で年単位で推論を行うデバイスを作ることも夢ではなくなります。あとは小型なので色々なモノに組み込める、さらには動いているプロセスが最小なのでシステムとして堅牢など、色々ありますね。
身近な例だと、「アレクサ」「Ok, google」や「Hey siri」はみんなtinyMLの推論によって実現されています。ご存知でしたか?
IoTとの関連
IoTは儲からない、というのが世の中の常識になって久しいですが、これはIoTのデバイスがそもそも高いし、それらはただセンサーデータを垂れ流すだけで推論はしない、もし推論できても高すぎて話にならない、そんなところだと思います。しかしIoTデバイスがマイコンを搭載したものになって安価になり、さらにtinyMLによって推論までできる超低消費電力&小型のスマートIoTデバイス化したらどうでしょうか? 今とは景色が全く異なってくると思います。
tinyML勉強会
さて、こんなtinyMLですが、勉強会がないので作ることにしました。しばらくは英語のドキュメントをワイワイ読む勉強会になると思います。というのも日本語のドキュメントがまだないのです。英語でも、WikipediaにはtinyMLのページは現時点でまだありません。最新の技術に触れるには英語が必須だと思うので、英語の勉強にもなってちょうどいいかと思います。
英語の質問も大歓迎ですので、一緒にtinyMLを勉強をしていきましょう!
勉強会の内容
tinyMLの入門とも言える以下の本がオライリーから出ています。まずはこの本を使って、初心者の方も対象に、13回のSessionに分けて勉強会ができればと思います。
TinyML Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers
なお、最初の6章は無料で公開されています。
https://tinymlbook.files.wordpress.com/2020/01/tflite_micro_preview.pdf
Chapter | Title | Page From | Page To | Total Pages | Session | Pages / Session |
---|---|---|---|---|---|---|
1 | Introduction | 1 | 4 | 4 | 1 | 27 |
2 | Getting Started | 5 | 9 | 5 | 1 | 27 |
3 | Getting Up to Speed on Machine Learning | 11 | 28 | 18 | 1 | 27 |
4 | The “Hello World” of TinyML: Building and Training a Model | 29 | 66 | 38 | 2 | 38 |
5 | The “Hello World” of TinyML: Building an Application | 67 | 94 | 28 | 3 | 28 |
6 | The “Hello World” of TinyML: Deploying to Microcontrollers | 95 | 126 | 32 | 4 | 32 |
7 | Wake-Word Detection: Building an Application | 127 | 180 | 54 | 5 | 54 |
8 | Wake-Word Detection: Training a Model | 181 | 220 | 40 | 6 | 40 |
9 | Person Detection: Building an Application | 221 | 258 | 38 | 7 | 38 |
10 | Person Detection: Training a Model | 259 | 278 | 20 | 8 | 20 |
11 | Magic Wand: Building an Application | 279 | 328 | 50 | 9 | 50 |
12 | Magic Wand: Training a Model | 329 | 354 | 26 | 10 | 26 |
13 | TensorFlow Lite for Microcontrollers | 355 | 392 | 38 | 11 | 38 |
14 | Designing Your Own TinyML Applications | 393 | 400 | 8 | 12 | 44 |
15 | Optimizing Latency | 401 | 414 | 14 | 12 | 44 |
16 | Optimizing Energy Usage | 415 | 422 | 8 | 12 | 44 |
17 | Optimizing Model and Binary Size | 423 | 436 | 14 | 12 | 44 |
18 | Debugging | 437 | 446 | 10 | 13 | 27 |
19 | Porting Models from TensorFlow to TensorFlow Lite | 447 | 452 | 6 | 13 | 27 |
20 | Privacy, Security, and Deployment | 453 | 460 | 8 | 13 | 27 |
21 | Learning More | 461 | 463 | 3 | 13 | 27 |
初回は
勉強会の初回は上記の本のChapter1から3をカバーしたいと思います。勉強会では分からないところを質問しあったり(英語と内容ふくめ)、ディスカッションすることを目的にしたいので、事前に対象の章の予習をお願いします。
Chapter | Title | Page From | Page To | Total Pages | Session | Pages / Session |
---|---|---|---|---|---|---|
1 | Introduction | 1 | 4 | 4 | 1 | 27 |
2 | Getting Started | 5 | 9 | 5 | 1 | 27 |
3 | Getting Up to Speed on Machine Learning | 11 | 28 | 18 | 1 | 27 |
時間が余れば、tinyOLという最新の手法の論文を読もうかと思っています。
TinyOL: TinyML with Online-Learning on Microcontrollers
対象となる方
- オフラインで勉強会に参加したい方
- tinyMLに興味のある方
参加費
- 1,000円(お菓子、飲み物、場所代)
オフライン開催場所
Akihabaraハッカースペース
詳細はお申し込み確定後ご連絡いたしますが、JR秋葉原駅から徒歩5分のコワーキングスペースです。
COVID-19対策
- ソーシャル・ディスタンシングの観点から90x180cmのデスクに2名、対角線上にお座りいただき、距離は1.5mとなります。
- デスクは2つ、部屋の広さは14畳です。
- 換気
タイムスケジュール
順番と内容は変わる可能性があります。
時間 | 内容 | 備考 |
---|---|---|
13:50 | 開場 | |
14:00 - 17:00 | 勉強会 |
スタッフ
Steve
AWS認定ソリューションアーキテクト。米国の大学・大学院卒。博士課程での研究内容はFORTRANプログラムを使ったタンパク質X線構造解析。新卒で日本電子株式会社(JEOL、電子顕微鏡メーカー)入社後、電子顕微鏡や核磁気共鳴装置、質量分析計の販促、中国駐在、IT企画等を経験。その後まい泉創業者の小出千代子氏のもとで住み込みとんかつ修行、オーランドのフライトスクール、世界一周旅行、Javaプログラミングスクール、ピザベンチャー立ち上げ、SIerを経て株式会社安川電機入社。ITおよび新規事業企画(ベンチャー投資)を担当したのち、音声AIのHmcomm株式会社入社。2017年5月にIoTラボを、2018年6月に品川ハッカースペースを立ち上げ。趣味は海外旅行と家電ハック。
お問い合わせ先
support@iotlab.me
050-7128-6590
注意事項
※ 掲載タイミングや更新頻度によっては、情報提供元ページの内容と差異が発生しますので予めご了承ください。
※ 最新情報の確認や参加申込手続き、イベントに関するお問い合わせ等は情報提供元ページにてお願いします。
新規会員登録
このイベントに申し込むには会員登録が必要です。
アカウント登録済みの方はログインしてください。
※ ソーシャルアカウントで登録するとログインが簡単に行えます。
※ 連携したソーシャルアカウントは、会員登録完了後にいつでも変更できます。