Edge TPUを用いて,自作データセットによるClassifierの再学習(転移学習)を試してみた. Edge TPUでは,サーバで分類モデルを再学習する代わりに,ImprintingEngine APIを使用してEdge TPU上で転移学習を実行することができる. Edge TPUのImprintingEngine APIはCVPR2018で提案されたLow-shot learning with imprinted weights [1]を用いて転移学習を実現する. この手法は,再学習の際にbackwardが必要ないため,Edge TPU上で高速に再学習を実行することが出来る. Low-shot learning with imprinted weights Edge TPU APIのインストール $ wget http://storage.googleapis.com/cloud-i
この記事について Google Coral Edge TPU USB Acceleratorの動作を解析します。 前回は、データ入出力に注目して解析を行いました。 今回は、Operationやモデル構造がパフォーマンスに与える影響を調べます。 前回の解析結果で、入出力データ量がパフォーマンスに与える影響が大きいことが分かったので、その影響を受けないようなモデルを作って解析を行います。 また、解析用のモデルだけだとつまらないので、最後にはMobileNet, MobileNetV2, Mobilenet SSDのパフォーマンス測定を、いくつかの条件下で実施しました。 お願いと注意 基本的には実際に動かして確認した結果をベースに書いています。 が、考察や推測の部分は完全に僕の考えです。そのため、間違えや誤解を与えてしまうところがあるかもしれません。 その際には、ぜひご指摘いただけると嬉しいです
想定する読者 Jetson AGX Orin ユーザー 画像認識、機械学習系の関心を持っている人 すでに移植済みのモジュールがあれば、さっさとデモを動かしたい人 URLS https://github.com/dusty-nv/ https://github.com/dusty-nv/jetson-containers これらの用途に対するdocker imageを得ることができます。 使用しているJetsonでのJetPacKのバージョン(もしくはL4Tのバージョン)にあうdisk imageを取得すれば、利用するアプリケーションの立ち上げがしやすくなります。 https://github.com/dusty-nv/jetson-inference 図に示してある種類の画像認識タスクを実行することができます。 https://github.com/NVIDIA-AI-IOT https:
「AI・人工知能EXPO 2020 【秋】」の「ギリア」ブースにて、「Stable Baselines」 と「Raspberry Pi」によるホッケーロボットの強化学習を展示しました。 Webカメラの映像を入力として使って、「Raspberry Pi」上で「Stable Baselines」による推論を行い、ロボットアームの操作して、ホッケーロボットの対戦を実現させています。 今回は、「Stable Baselines」と「Raspberry Pi」によるホッケーロボットの強化学習の作成の流れを紹介します。 【ステップ1】 ロボットアームとホッケー台の選定はじめに、ロボットアームをいろいろ試してみて、KHRシリーズで有名な近藤科学の「KXR-A5」を選びましました。ホッケーするのに十分なサーボ速度、長時間動く耐久性、1台38,000円という値段の安さが決め手になりました。
各マシンのCPU型番やメモリ容量などが表示されますので、評価したいマシンを選んでください。 実行時には先頭にあるID(例:idc001sk1)を使ってマシンを指定します。 性能評価 エッジデバイス上で性能評価を行うためには、実行したい内容をスクリプトとして用意する必要があります。 今回は予め用意した下記のスクリプトを使用します。 このスクリプトは、モデルと実行デバイスをいくつかの組み合わせで実行しています。 モデルは通常のモデルと量子化済みのモデルの2種類、実行デバイスはCPU、GPU(iGPU)、AUTOの3種類の中から組み合わせて実行します。 AUTOはCPUとGPU両方を組み合わせて実行するモードです。 benchmark.sh #!/bin/sh #PBS -v VENV_PATH #PBS -j oe cd $PBS_O_WORKDIR source ${VENV_PATH}/b
これはfairseq+sentencepieceで翻訳モデルを作成する実験中の備忘録です。 環境はNVIDIA Jetson AGX Xavier 16GBを使用しています。 先日OpenNMTを試したのですがハイパーパラメータを設定すると途端にうまく動きません。 どうも実装側に問題があるようで、諦めてfairseqを触ることにしました。 fairseqもバージョンによっては動かないことがあり、0.12.2ではトレーニングはできるがジェネレートに失敗する。 0.10.2は動かない。0.10.0はトレーニングとジェネレートの両方で動きました。 これはPythonのバージョンを調整するなりで何とかなりそうですが一旦動くバージョンもありましたので0.10.0を触っていくことにします。 現在は勉強を兼ねて幾らか大きめの学習データでトレーニングを試しています。 ちなみに現在の進捗状況ですが、1エポッ
初めに サイボウズ・ラボの光成です。 DNN(deep neural network : 深層学習)といえばGPUや専用プロセッサを使うのが主流です。 しかしIntelはCPUで高速にDNNをするためのライブラリ MKL-DNN を提供しています。 MKL-DNNはIntelの最新CPUに対応したオープンソースソフトウェアなのでコードを見ると勉強になります。 ここではMKL-DNNで使われているテクニックをいくつか紹介します。 概要 MKL-DNNの紹介 Xbyakの紹介 呼び出し規約 圧縮displacement ReLU exp 内積 vpdpbusd キャッシュコントロール 想定読者 C++11とx64 CPUのアセンブリ言語の知識をある程度仮定します。 機械学習についてはその知識がなくても最適化手法が理解できるよう、最小限の説明をします。 MKL-DNNの特長 まずMKL-DNNの
深層学習が著しく発展し、今まで人間にしかできないと思われていたことができるようになってきました。そのおかげで、今まで機械学習と縁が薄かった分野でも、機械学習を使った研究がしたいという声が上がるようになっています。 前々回は、それを裏付けるように非情報系の学生さんが機械学習を使った研究をしたいという応募がサイボウズ・ラボユースに増えているという話、前回はいままで機械学習や深層学習に縁のなかった人が何から勉強したらいいかという話を書きました。 今回はその続き、研究に必要な実験用 PC 環境をどのように準備したらいいかというお話です。 深層学習の実験をするには、十分な性能の GPU を積んだ PC が必要です。 今どきの機械学習関連の研究室では、院生有志がメンテナンスしている GPU のクラスタがあって、それを使わせてもらえることが期待できます。自分用の PC を手配する場合も、研究テーマに適し
この記事について 深層強化学習を利用してAI RC Carの走行を学習させるソフトウェアをGithub上で公開しています。learnign_racerと命名しました。2020年4月29日の時点でのバージョンはv1.0.0です。この記事ではこのソフトウェアについて紹介していきます。 github.com なお、NVIDIAのJetson Community Projectsのページでも紹介されています。 developer.nvidia.com learning_racerの概要 このソフトウェアは10分から15分程度の学習時間で、コースに沿って走行する方法を獲得することができます。従来のAI RC Carでは人間のお手本操作をDNNに覚えこませる手法が一般的です1。ですが、本手法は教師なし学習の手法である強化学習をベースとしているため、教師データとなる人間のお手本操作は必要ありません。さら
前回掲載したディープラーニングを応用した筋電義手の記事を予想外に多くの方にご覧いただき、非常に驚いています。こうやって皆さんに反応をもらえると非常に励みになりますね、本当にありがとうございます! 今回は開発した筋電動作推定システムを簡易的なロボットアームに適用することで、低コストの筋電義手を作成したので報告させていただきます。(といっても、快適に使用するには程遠いですが、、、、) また、前回の記事でいただいたコメントに対する捕捉情報についても述べていきたいと思います。 実際の動作とコストについて メカ・エレキ・ソフト設計 補足情報 今後について 実際の動作とコストについて 実際に動いているときの動画です。 前回の記事と同様に、手を握った時・反った時・屈曲した時・無造作時の4種類の筋電位パターンをディープラーニングを用いて分類し、分類結果に応じてロボットアームを動かしています。 ディープラー
この記事は、Kyoto University Advent Calendar 2020の13日目の記事です。 12日目の記事はれおまるさんの「ワインに惹き込まれた経緯とそのススメ」でした。臨場感溢れる表現でワインと出会った衝撃と魅力を語られていたのが印象的で読み応えのある記事でした。 この記事で触れているプロジェクトの詳細は以下をご覧ください。 自己紹介 lzpelと申します、工学部地球工学科というところの学生です。地盤や土木構造物などの勉強をしています。他の登録者、Twitterで有名(?)な人々なのに文章力低い自分が参戦していいのだろうかと戦々恐々です。今回はコロナで怠け者になったけど電子工作と機械学習で改善できたよという話を書きます。 外出自粛 コロナで春から大学の授業形態が変わりオンライン授業が続いています。そこで映像授業に積極的に参加して各自学習するのがあるべき姿ですがカメラオフ
こんにちは,次世代システム研究室のS.T.です。普段はHadoopネタを書いていますが,今回はテーマをがらっと変えて,FPGAネタです。 「FPGAに機械学習の推論部分を実装し高速に処理を行う」という技術は耳にしたことがありましたが,漠然としたイメージがあるだけで実際にどのように実装していくのかということは知りませんでした。調べてみると,高位合成を用いた手法(1)や,学術研究として開発されたアクセラレータとしてのアーキテクチャ(2)は存在するようですが,シンプルなサンプルコードの形で存在するものはないようです。 もちろん「ソフトウェアエンジニアやデータサイエンティストが作成したモデルを高位合成でFPGAに落とし込みアクセラレータとして使用する」というユースケースを考えれば納得がいきますし,応用できる範囲もHDLで直接実装するより広くなると思います。 しかし,「低コスト小規模なローエンドFP
はじめに 現在DNN(Deep Neural Network)の実装において、FPGAの活用はしばし議論の対象になっています。もちろんDNN分野全体からするとニッチな部類に入るとは考えますが、FPGAベンダーはここに非常に力を入れており、作成したネットワークのデプロイ先としてFPGAが選択しやすくなるような各種のソリューションが用意され始めており、日々進化しています。 ここでのFPGAのメリットは、低消費電力であったり、コストであったりします。DNNの実行にはクラウドであっても電力というランニングコストは馬鹿になりませんし、エッジコンピューティング、特にバッテリー駆動のモバイル分野においては電力は極めて重要です。またイニシャルコストの重要性はどちらも同じでしょう。 ここでFPGAベンダーはこぞって、「GPUと同じように開発できます」をキャッチフレーズに、GPUを使って研究開発をしている多く
はじめに リコーのYuuki_Sです。 弊社ではRICOH THETAという全周囲360度撮れるカメラを出しています。 RICOH THETA VやTHETA Z1は、OSにAndroidを採用しており、Androidアプリを作る感覚でTHETAをカスタマイズすることもでき、そのカスタマイズ機能を「プラグイン」と呼んでいます。(詳細は本記事の末尾を参照)。 上述の通りTHETAは、カメラでありながらAndroid端末でもあるため、単体で撮影し機械学習の処理をかけて出力することが可能です。 以前、@KA-2さんがTHETAプラグインで連続フレームにTensorFlow Liteの物体認識をかける記事を掲載しましたが、今回はセマンティックセグメンテーションを実施する方法を記載しようと思います。 本記事を参考にすることで、セグメンテーション結果をライブプレビューに反映したり、 下図の様に人物と背
背景 仕事をしているとき、業務に関係ない情報を閲覧していることって誰でもありますよね? そんなときに背後にボスが忍び寄っていると気まずい思いをします。もちろん急いで画面を切り替えれば良いのですが、そういう動作は逆に怪しまれることになりますし、集中しているときは気がつかないこともあります。そこで怪しまれずに画面を切り替えるために、ボスが近づいてきたことを自動的に認識して画面を隠すシステムを作ってみました。 具体的にはKerasを用いてボスの顔を機械学習し、カメラを用いて近づいてきたことを認識して画面を切り替えています。 ミッション ミッションはボスが近づいてきたら自動的に画面を切り替えることです。 状況は以下のような感じです。 ボスの席から私の席まではだいたい6,7mくらいです。ボスが席をたってから、4,5秒で私の席に到達します。したがって、この間に画面を隠す必要があるわけです。時間的余裕は
TFUG KANSAI Meetup 2019 (2019/9/28) の発表資料です。PowerPoint 資料は https://onedrive.live.com/view.aspx?cid=5bfb28e03f325ed5&page=view&resid=5bfb28e03f325ed5!648669&parId=5bfb28e03f325ed5!648668&app=PowerPoint Read less
実験工作系有名YouTuberのマーク・ローバーさんの新作は、実用的で面白く、機械学習がどんなものかを野球ファンに強く印象づけるような動画です。野球のコーチが出すブロックサインを、機械学習を使って当ててしまおうという企画。 まずは子供の野球を使って単純なサインを当てるのですが(02:00)、これはサインと盗塁したかどうかを3通り入力しただけで当てられるようになってしまいます。この時点では、帽子と左耳を連続で触った時だけが盗塁の指示でした。 動画は04:00 あたりから機械学習の簡単な紹介をし、06:00 からは、50人の草コーチに尋ねたブロックサインの作り方を説明します。 ほとんどのコーチが、あらかじめ決めておいた場所=インディケーターを触った後にどこを触るかで、盗塁を伝えていることから、機械学習を使うまでもなく、90%の盗塁サインは見破れるとなりました。 残りの10% を見破るものとして
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く