ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

深層学習入りArduinoIDEが使える4000円弱のボードMixduinoの話を聞いてきた!

2020-08-04 08:20:36 | ネットワーク
8月1日に

学習・推論そして制御! クラウド+Edgeで実現する AI&ロボティクス技術を垣間見る
https://algyan.connpass.com/event/183331/


を聴いたのでメモメモ
※表題の件は、後半の「汎用人工知能で自動ロボットバトルの実現」で出てきます。
 このエントリの最後に(話にはなかったけど)詳しく書いておきました。




■ご挨拶
・注意点

■1.まずは基礎からスタート!JetBotではじめるAI学習への道

・自己紹介
・JetBotきっと紹介
 「簡単に作れます」→人間には個性と能力差がある
 完成品味気ない
 動かないものはつまらない
 簡単に。何度でも

・簡単ポイントその1「車体」
 カメラ端子あります
 ほかにも工夫色々

・AI自動運転カー JetBotとは
 自動運転カーのイメージ
  →JetBotはラインとレースカーのほう

 カメラ→Nano→
 ラインセンサーの代わりにAI(推論)
 ラインセンサー代わりのAI推論
 標準的→AlexNetを使っている
  障害物の存在確率
  分類:4096を2個にする

  障害物あり
  障害物なし

 画像をランダムに補正
 pretrained=True 事前学習された結果を読み込んで再利用する

 最適化 SGDを利用(確率的勾配降下法 モメンタム法)
   →ランダムに選んだ値で最適化、極小値から脱出しやすくする
     勾配を移動平均によって計算

 学習の実行
  訓練用データで学習
  評価用データで評価
  結果が良ければ保存

・障害物判定と制御
 制御はとてもシンプル
  前にモノがない→直進
  あれば→左回転

・画像の取り組み
  GStreamer OpenCV
  GStreamerがクラウド連携のカギ
    →DeepStreamSDK

・推論用モデル
  Get-nvinfer
  Gst-nvmsgconv
  Gst-nvmsgbroker
  各プロトコル(Protocol アダプター)

・まとめ
・ふろく、せんでん

■ディープラーニングで実現する自動走行ロボットの仕組み
・AI RC Carについて
・模倣による自動運転
・自動運転の仕組み

・AI RC Carについて
 Level2相当の走行
 求められるもの
  ハード(機構・IoT)
  AI&CV&制御
  パイロット適正

 ハードウェア構成
 2つのPWM信号でラジコンハードウェアを制御
 I2C接続
 ラジコン用プロポ→JetSon経由

 リファレンスハードウェア
  DonkeyCar

1.教示データの収集
2.AIの学習(カメラとハンドル、アクセル)
3.推論走行

・今日の本題
 シンプルな構成のAI
 EndtoendLine
  ドンキーカーと一緒

・AI RC CARのAI
  入力
  畳み込み層→画像の特徴的な部分を抽出
  全結合層 →特徴から結果を求める
  ステアリング・アクセル

・AIの学習とは
 お手本との誤差を最小化するパラメータを求める

・全結合層
・畳み込み層:画像の翌朝を抽出
  マックスプーリング:位置ずれ吸収
・誤差を計算する:目的関数
  MSE:平均二乗誤差
  クロスエントロピー誤差
・パラメーター調整
  最急降下法で誤差が小さくなるように
   SGD
   Adam
   RMSProp
・論よりRUN
・目指せバーチャルレース
・まとめ
 AIを使ってレベル2
 単純なCNNで模倣学習
 ハンズオンで体験

■ここだけ抑える!ROSの勘所
・自己紹介
・ロボットと言えば
  ルンバ、ペッパー君・・・

 必要なこと
  処理能力
  膨大なデータ
  複雑な制御
  品質要求
  多品種少量生産

 ロボット開発の進め方→開発の高速化のため
  モジュールの再生産性の促進
  プロセス間通信の効率的な管理
  サービスの向上に注力したい
 →統一化された開発フレームワークによる設計開発

・ROS
  plumbing
tools
  capabilities
  Ecosystem

・plumbing
 出版購読型
  ROSノード:ロボットシステムを構成する機能単位
  基本は出版購読型

・tools
 いろいろ提供
  rqt QTベースのデバックフレームワーク
  gazebi:3D物理シミュレーション
  rviz:可視化ツール
 など

・capabilities
 既存資産パッケージ
 コンポーネント指向開発

・Ecosystem
 オンラインのコミュニティ
 オフラインは最近できないけどある

・ROS準拠のロボット
 大量に出ている
 ドローンとか、宇宙探査も
 コンポーネント単位でも(ボード、センサー、モーター)

・れきし
 2010 1stリリース
 2015 ROS2

・ROSのユースケース変化
 はじめ:ヒューマンロボットインタラクション→研究用途
 リアルなロボットへ
   組み込み、不安定なネットワーク

・ROS2
 DDSを採用→いろんなベンダが採用

・QOSコントロール
 通信経路の品質

・ROS2は商用展開できる
 →AIBOの中に入っている

・おまけ
 http://aka.ms/ros
→windowsでROSが使える

Q&A
Q:モデルいりますか
A:トランジスタ技術の特集で、モデルの作り方でてます
 ぜひ見てください

Q:ROS1から2は
A:移植大変。ただAPIかきかえならそれほどでも。。

Q:Python3使える?
A:つかえる

■汎用人工知能で自動ロボットバトルの実現
・対戦ゲームができるレベルの汎用AIを作りたい
 汎用人工知能を作る

・どのようやるか
 だれでも研究開発に参加できるようにしたい
 1.安価なロボットの開発
 2.コンテナ技術を活用したソフトウェア基盤の開発

・基盤を整備した上で、人工知能の研究に集中
 強化学習の発展

1.ロボットの開発
 ロボットの制御にはROSを利用する
 とにかくSLAM(自己位置推定)とナビゲーション機能
 が利用できればいい
・PythonでAPIをラッピング
 ROSを知らなくても使えるように

 モーターユニットを作った

 I2CでCPUから制御可能

・ロボットきっとの開発
 タミヤの楽しい工作シリーズ

・Mixduinoはおもしろそうです
・深層学習アクセラレーター付きで4000円弱

2.ソフトウェア技術
・Docker使った
・Dockerとは
 コンテナの一種
 一種の仮想計算機(ビルド後が配れる)
・MAGI
 ROSとAIのプログラムをDocker化

・まとめ
 ロボットと開発基盤を作りました

■雑談
・汎用人工知能
・ロボットに役割分担→自動行動
・OpenAIでかくれんぼ




■(話にはなかったけど)Maixduinoの話。

スイッチサイエンスで買える。

Sipeed Maixduino
https://www.switch-science.com/catalog/5707/


tiny yoroが入っているから、何が、どこにいるかをカメラ画像から判断できる。
人の顔を四角くかこんだりするやつ。

Mobilenetは
MobileNet(v1,v2,v3)を簡単に解説してみた
https://qiita.com/omiita/items/77dadd5a7b16a104df83

にあるようにCNN(画像判別)

tensor flowはお好きに使えますね!

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする