Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ロボット事業における機械学習エンジニアという仕事について/What does a Machin...
Search
alegonz
March 04, 2019
Technology
8
2.6k
ロボット事業における機械学習エンジニアという仕事について/What does a Machine Learning Engineer do at a robot company?
2019年3月4日開催「白金鉱業 Meetup Vol.6」(
https://brainpad-meetup.connpass.com/event/119149/
) での発表資料
alegonz
March 04, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
Кто отправит outbox? Валентин Удальцов, автор канала Пых
lamodatech
0
330
5min GuardDuty Extended Threat Detection EKS
takakuni
0
110
Microsoft Build 2025 技術/製品動向 for Microsoft Startup Tech Community
torumakabe
2
250
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
420
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
390
Agentic DevOps時代の生存戦略
kkamegawa
1
1.3k
OpenHands🤲にContributeしてみた
kotauchisunsun
1
400
Definition of Done
kawaguti
PRO
6
480
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.2k
mrubyと micro-ROSが繋ぐロボットの世界
kishima
2
120
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
4
640
地図も、未来も、オープンに。 〜OSGeo.JPとFOSS4Gのご紹介〜
wata909
0
100
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Balancing Empowerment & Direction
lara
1
360
The Cult of Friendly URLs
andyhume
79
6.5k
Visualization
eitanlees
146
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
41
7.3k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
700
Bash Introduction
62gerente
614
210k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
Docker and Python
trallard
44
3.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Transcript
ロボット事業における 機械学習エンジニアという仕事について 白金鉱業 Meetup Vol. 6 Alejandro Gonzalez 2019/3/4
自己紹介
自己紹介 ⛊ 名前:Alejandro González (ゴンザレス アレハンドロ) ⛊ 出身地:ベネズエラ ⛊ 履歴
◥ 2011 ~ 2014年:修士 @ 長岡技術科学大学 ◥ 2014 ~ 2017年:データサイエンティスト @ 株式会社ブレインパッド ◥ 2018 ~ 現在:ソフトウェアエンジニア @ GROOVE X株式会社 ⛊ Likes: 寿司、ラム酒、夏、ボクシング ⛊ Dislikes: ネバネバ系、アイスコーヒー、冬、団体スポーツ alegonz
本日のTalk ⛊ 家庭用ロボット事業において、機械学習を活用した製品 を開発するにあたって、どのようなチャレンジがあるの か、機械学習エンジニアがどんな役割を持っているかな どについて話します。 ⛊ LOVOTという新世代家庭用ロボットの観点から語ります。 ◥ なお、機密情報のため、
LOVOT技術の詳細について話せないので、ご了承ください。 ⛊ また、元データサインティストの観点からも語ります。
LOVOTとは
LOVOTとは ⛊ これ Image credit: GROOVE X, Inc.
LOVOTとは Image credit: GROOVE X, Inc. www.stickpng.com www.walmart.com ⛊ 公式サイトより
「テクノロジーで追求したのは、効 率や便利さではなく、抱いた時の心 地よさや、愛くるしいしぐさ、憎め ないキャラクター。」 ⛊ 生命感がある ⛊ 周りを認識できる ⛊ 反応力がある ⛊ 表現力がある
家族型ロボット LOVOT [らぼっと] | ”LOVE STORY” https://youtu.be/gWMMdJb_5mI
LOVOTとは 50以上のセンサー ⛊ 半天球カメラ ⛊ 深度カメラ ⛊ 温度カメラ ⛊ 半天球マイクアレイ
⛊ 全身をカバーするタッチ センサー ⛊ IMUs ⛊ 障害物センサー ⛊ 温度センサー ⛊ 気圧センサー ⛊ 照度センサー ⛊ などなど
LOVOTの魅力を実現するために、 認識機能が必要
⛊ 単に言うと、LOVOTに感覚を与えること ⛊ 様々なセンサーの生信号を処理して、意味のある信号と して上位レイヤに伝える 認識 センサー (HW) 基盤 (FW/SW)
認識 (SW) ビヘイビア (KW)
認識機能を実現するために機械学習を活用 機械学習エンジニアが活躍
様々な認識領域 ⛊ 画像認識 ◥ 顔認識・顔識別・顔登録 ◥ 一般物体認識 ◥ トラッキング ⛊
音声認識 ◥ キーワード認識 ◥ DoA ◥ 音源分離 ⛊ タッチ認識 ◥ 触られる・撫でられる ◥ 抱っこ ◥ 叩かれる ⛊ Navigation & SLAM ◥ 自律マッピング ◥ 自己位置推定 ◥ セーフティ
機械学習エンジニアとは ⛊ 機械学習を利用可能とする役割 ◥ 製品でデプロイできる機械学習アルゴリズムを開発 ◥ また、その開発を支えるインフラも開発 ⛊ 自身の見解や意見であり、 GROOVE
X株式会社の公式見解や意見表明を代表するものではない
機械学習エンジニアの仕事?
アルゴリズム開発 Doing more with less
アルゴリズム開発 精度 Precision Recall etc CPU負荷 メモリ容量 負荷が大きいほど、 • 他の機能に悪影響
• バッテリが減る • 温度が上がる 反応速度 Reactivity(反応力)に 不可欠 汎用性 機体と環境にわたって性能が一 緒 保守性 パラメータの数、構造の複雑さ によって、デバッギングしやす さ、メンテナンスしやすさが変 わる 使用性 • 学習データが測りやすい構造 • 信号を足しやすい構造 • ビヘイビアを開発するのに意 味の有る形を出す 気を付けないといけないこと
⛊ アルゴリズム選択 ◥ 種類 ⁃ Hand-crafted rules ⁃ Traditional machine
learning • Including sensor fusion (e.g. Kalman Filter) ⁃ Deep Learning アルゴリズム開発
アルゴリズム開発 アルゴリズ ム種類 精度 (見込み) CPU負荷 反応速度 汎用性 保守性 使用性
実装 スピード データ 要求 拡張性 (変数追加) Hand-craft ed rules ✕ • • ✕ • • ✕ • Traditiona l machine learning ▲ ▲ ▲ データ 次第 ▲ ▲ • ▲ Deep Learning • ✕ ✕ データ 次第 ✕ ✕ • ✕ ※ 相対的にだいたいこんな感じっていう比較 アルゴリズムの各種類のメリット・デメリット ただ、画像認識や音声認識は間違い なくDeep Learningがベスト 牛 刀 割 鶏 順
⛊ アルゴリズム選択 ◥ 学習パラダイム ⁃ Offline • 出荷前にモデルを固定する ⁃ Online
• 出荷後に動的に学習していく ⁃ Hybrid アルゴリズム開発 ⁃ Supervised ⁃ Unsupervised
アルゴリズム開発 ⛊ アルゴリズム実行環境 ◥ LOVOT ⁃ Main PC ⁃ Sub
PC ◥ ネスト(エッジ) ◥ クラウドがあまり 利用できない ⁃ Reactivity↓ Image credit: GROOVE X, Inc.
⛊ 前処理! ◥ AKA データクレンジング、正規化 ◥ 機械学習アルゴリズムにクリティカル ⁃ Garbage in,
garbage out といったところで… アルゴリズム開発
そもそもハードウェアから 妥当な信号が上がっているか?
ハードウェア評価 Garbage in, garbage out
ハードウェア評価 ⛊ 信号のクオリティーは、 どこまでHWで工夫できるか、 どこからSWで工夫できるか?のトレードオフがある ⛊ センサー信号のクオリティーを評価する指標の開発 ◥ SNR, 期待誤判定率、など
⛊ また、評価のためのツールも開発 ◥ 生産組立用の評価仕組みを含め
アルゴリズムの方針と 信号の仕様が決まったら…
データ収集 データがない!データを作る!
⛊ LOVOTに特有なデータを収集する必要 ◥ 魚眼カメラの画像 ◥ 子供の音声 ◥ タッチと抱っこの信号 ◥ etc
⛊ 実験を設計してデータを収集する ⛊ もちろん、転移学習も可能な限り活用する データ収集
データ収集 ⛊ ラベルデータも必要 ◥ アルゴリズム評価に不可欠 ⛊ どうやってラベリングする?色んな方法でやっています: ◥ 自分で手動でラベリングする ◥
アウトソーシングする ◥ 自動化する ⁃ 例:画像のクロマキ撮影(Augmentation的に)
データ収集とラベリングをするのに、 何らかのインフラが必要
インフラ構築 データを作るものを作る!
インフラ構築 ⛊ スムーズに楽にデータ収集できるようなツールも開発 ◥ データ収集ツール ◥ アノテーションツール ◥ 可視化ツール ⛊
デバッギングのために、Logging仕組みも必要 ⛊ CIで精度評価をトラッキングしていく
ソフトウェア開発 Develop a deployable software
ソフトウェア開発 ⛊ Version control ◥ Codeだけではない! ◥ Data, Annotations, Metadataも
⛊ Continuous integration ⛊ Tests ⛊ Documentation ⛊ Licensesを注意!
日々に活用しているソフト
コミュニケーション&プロジェクト管理 Collaboration with multidisciplinary teams
コミュニケーション 37 各Featureの開発に多種多様なメンバーが関わっている コミュニケーションは重要! 認識機 能の開 発 HW 服 評価
HW メカ HW エレ KW ビヘイ ビア SW 認識 FW SW 基盤
プロジェクト管理 ⛊ 要件定義 ◥ PO、各チーム、協力会社と協働しながら ⛊ 開発ベンダー選定・折衝・共同開発 ⛊ 予算計画 ⛊
他社進捗管理
サマリー ⛊ アルゴリズム開発 ◥ 「精度、CPU負荷、反応速度、汎用性、保守性、使用性」を重視しながら、最低限のアルゴ リズムで最高のパフォーマンスを追求 ⛊ ハードウェア評価 ◥ 妥当な信号を実現するために、
HW開発を支える評価指標と評価ツールを開発 ⛊ データ収集 ◥ アルゴリズム学習のために、 LOVOTに特有なデータを収集 ⛊ インフラ構築 ◥ データ収集に必要なツールとプロセスを開発 ⛊ ソフトウェア開発 ◥ 製品にデプロイ可能な SWに必要なpracticesを重視 ⛊ コミュニケーション&プロジェクト管理 ◥ 多種多様なチームと他社と協働し、認識機能を開発
終わり。 ご清聴ありがとうございます