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

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

ラプラス変換、伝達関数、ボード線図までの流れ

2020-08-07 07:56:21 | Weblog
逆ラプラス変換も、わかったかも!?
https://blog.goo.ne.jp/xmldtp/e/4a814ff314100113dcc2dc9653f6e651

を書いた後から、まとめをさぼっていて、
何を書いたらいいか忘れそうなので、
流れをメモメモ




ラプラス変換
逆ラプラス変換←ここまで書いた

ばねダンパシステムとRLC回路
 →機械系と電気系のアナロジー

伝達関数
 微分方程式→ラプラス変換で整理→伝達関数(入力と出力の比)

基本要素の伝達関数
 PID:比例要素、微分要素、積分要素
 一次遅れ:時定数、整定時間、例:CR回路
 二次遅れ:固有周波数、減衰比→様々な応答
      例:ばねダンパシステム、RLC回路
 むだ時間

ブロック線図
 単一システム
 直列
 並列
 フィードバック

周波数伝達関数とボード線図
 Sにjwを代入
  →周波数特性
    →ボード線図
  →周波数応答の原理

ざっくり古典制御の流れ。


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

深層学習CNNでの画像分類の転移学習・カスタマイズ方法

2020-08-06 08:13:01 | AI・BigData
 前に、「学習・推論そして制御!クラウド+Edgeで実現する AI&ロボティクス技術を垣間見る」を聴いてきた!と書いたけど、そこで、CNNでの画像分類を既存のCNNネットワークを転移学習させて、自分が行いたい分類問題にカスタマイズする方法を言っていたので、メモっておく。




■CNN等は2種類の層に分けられる。

CNN等は、以下のような(ニューロの)多層構造になっている。
(以下の例はCNNで実装された画像分類のVGGのネットワーク図
https://www.abtosoftware.com/blog/kitchen-furniture-appliances-recognition-in-photos
より引用)

で、この図はいろんな層が積み重なっているけど、CNNは大きく分けてしまうと2つの層に分かれる

・一つは黒と青の繰り返し層。
 ここは「畳み込み」層で、画像のフィルタ処理をしている。
 最終的に、入力画像の特徴量を出している。

・もう一つはだいだい色の全結合層と最後のSOFT MAX層
 ここでは、畳み込み層で出て来た特徴量を自分の分類したいもの
 に対応づけている。
 この対応付けは全結合、つまりニューラルネットを多層に結合しているもの(多層パーセプトロンMLP)になっている(いや、分類できればMLPじゃなくてもいいんだけど、CNNではMLPを使っている)
 全結合層の入力は、畳み込み層の最後の層となる。出力は分類したいものの種類数になる(例、さる、いぬ、きじの3つに分けたかったら3つ、YES、NOにわけたかったら2つ)。このうち、どれを出力するかを決定するのがSOFT MAX層。

いろいろ層があるけど、この2つに分かれることが重要。




■転移学習させるときに、共通に使うのは畳み込み層

 VGGはコンテスト用にチューニングされたもので、自分の興味関心のあるものにあっていない。なので、VGGをもとに、自分の興味関心があるものにカスタマイズする必要があるとき、このとき、

・畳み込み層は特徴量をだしてくるフィルタなのでそのまま使える
 →篠山紀信用、自分用、とかカメラを独自にカスタマイズしてもいいけど、カメラはふつう、キヤノン EOS Kissとか、メーカーが作ったものを買ってくるよね。それと同じ感覚。フィルタ部分は、共通に使える。

・分類部分(全結合層とSOFTMAX)は自分の関心があるものに変える。
 分類したいもの、その数は違うのでカスタマイズする必要がある。
 具体的には、最終段の出力個数を分類する種類の数(上に書いた、3つとか2つとか)にして、この部分だけを学習させるように設定する。その後、自分のデータを読み込ませて、ここの部分だけをデータに基づいて機械学習させる。




■AI(CNN)の品質(評価すべき項目)とは

・まず、特徴量のところで、分類したいものがA,B、Cの3つあったとしたら、BとC、AとB、AとCで共通の特徴量(畳み込み最終段の値)になるものがないことを確認(担保)する。
 もし、同じになってしまうと、それは分類できない。(たとえばAと分類されるもの、Cと分類されるものの中に、おなじ特徴量になる入力(画像)データがあると、その画像はBに分類していいか、Cに分類していいかわからないので、ランダムにどちらかに分類されるけど、正しく分類はできない)

・それがないのであれば、「学習(訓練)データとして入力した画像については」無限にノードが作れるのであれば必ず「訓練したデータの出力値」することができる
→これが「ニューラルネットワークの普遍性定理」
https://qiita.com/mochimochidog/items/ca04bf3df7071041561a

・ただ現実的には時間もノードも制限があるので、必ずしも学習データをすべて正しく学習できるわけではない→ここ、評価必要

・さらにもちろん、学習していないものが来れば、推論することになる。この推論するとき、おかしな値が出ないことも評価必要。




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

コロナ、第一波の状況と比べて第二波は違うというけど・・・

2020-08-05 08:15:18 | そのほか
そもそも第一波のときは、ある程度症状が進んだ人しか検査していない(検査できなかった・・・PCR施設も病床もなかったから)

・だから、軽症・無症状の人は検査していない人も多く、その人たちが第一波の患者の中にカウントされていないことが予想される

・軽症者の多くは若い人だろうから、若い人も多く第一波の患者の中にカウントされていないことが予想される




 つまり、第二波は第一波と違い、軽症者、若い人が多いというけど、それはたまたま第一波でカウントしてなかっただけの可能性高い。第二派の今、いろんな年齢の人が増えているが、このうちの高齢者の部分が第一波に対応していると考えるほうが自然だろう。




 そして、第一波のときはかなり厳しい休業要請をしたので感染者がおさまった。でも、それでも医療崩壊しそうだった。今は休業要請はそこまでしていない。ということは第一波よりも患者が増えて、医療崩壊すると考えるほうが、自然だと思う。

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

深層学習入り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でシェアする

そもそも、旅行中に発熱した場合、どうなるのだろうか?(泊まれない?病院に行く?)

2020-08-03 08:10:42 | そのほか
「質問の電話が200回」ホテルを疲弊させるGoToトラベルの本末転倒ぶりに以下の言葉が出てくるのだけれど・・(太字はそこから引用)

「全員検温」について、一般店舗と違い、宿泊機関は高熱のある人の宿泊を断れないと指摘。旅館業法には「明らかに見た目で伝染病と分かる場合以外の宿泊拒否は違反」と示されているとした上で、「厚労省もコロナ発生後、出発地や体調を理由に、受け入れを拒否するのは許さないと改めて通達した」とし、国交省からの指示との違いに困惑する。


そういえば、旅行先で熱が出たらどうなるのだろう。
(1)旅館業法に基づき、そのホテルにはいられる。そこで待機
(2)発熱した時点で旅行先の病院に入れられる。→軽症患者の場合、別のホテルに入れられる?
(3)強制送還
(1)、(2)、(3)のどれ?

※あとわからないのは、ツアー旅行の場合、
ツアーのだれかがコロナにかかった場合、そのツアーで行った人は、みんな濃厚接触者?




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

共同幻想論、聴いたけど、わかったかどうかは?

2020-08-02 18:33:11 | そのほか
100分de名著、「共同幻想論」の4回目、まとめてみた。こんな感じ



う~ん、共同幻想論、わかったかどうかが、わかってない(^^;)

つぎはもも、のんさん

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

自治体は休業要請、国はGoToキャンペーン、困るのは国民と旅行会社

2020-08-01 21:52:14 | そのほか
愛知知事、栄・錦地区に休業など要請へ 8月5〜24日
https://news.goo.ne.jp/article/asahi/politics/ASN815QBWN81OIPE017.html


都府県レベルで、休業要請してるのは、当然として、
国が足並み合わせないでGoToキャンペーンとかやってると、
結局、困るのは国民や旅行会社だよね。

GoToキャンペーンで旅行に行ったら、休業要請で飲食店がやっていなかったり、観光地が閉鎖したりしていると、せっかく旅行に行っても、消費できないから、地方は潤わないし、旅行した人も(お金は使わないけど、観光できないから)不満が残る・・・国民迷惑

・・・なんていう懸念があるから、旅行会社も旅行パッケージを販売しにくい・・・

どうして、こんな問題が起こっているのかというと、
GoToキャンペーンはコロナ収束後に行うといっていたのに、コロナ拡散中にやりだしたから。。。

・・というか、あまりに経済重視すぎだよなあ・・・

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