質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

624閲覧

モーションセンサーの機械学習について

macchosan

総合スコア11

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

1グッド

0クリップ

投稿2022/05/20 12:06

前提

機械学習初心者です。

実現したいこと

raspberry pi picoでモーションセンサーを使い上下の運動、左右の運動、回転の運動、跳ね上げの運動などもそれぞれ識別させたい。

試したこと

実際にx,y,zの加速度を使って自分の手のプログラムで書いてみましたが、誤動作が多くて使い物になりませんでした。

自分なりに調べたこと

自分なりに線形回帰、k最近傍法などを調べて機械学習の集類があるのは知っているのですが、今回はx軸、y軸、z軸がそれぞれ数十個以上の数値が必要でどうやって機械学習するのか分かりません。

質問内容

・どのような機械学習方法を使えばよいのか?
・その方法をする際にどのような前提知識が必要なのか?
・そもそもraspberry pi picoでできるのか?

退会済みユーザー👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2022/05/20 12:16

まずは現状のコードと、その解説を提示しよう
guest

回答2

0

ベストアンサー

上下の運動、左右の運動、回転の運動、跳ね上げの運動などもそれぞれ識別させたい。

等速直線運動であればある一点の加速度センサの値で何とかなりそうですが、実際には1秒の間にも多少はブレたり戻ったりしていると思います。斜めに動いだしどう判断するよ?みたいなこともあるかもしれません。

・どのような機械学習方法を使えばよいのか?

データの特性を考えると、ごく一瞬ではなく、ある程度の秒数(?)のデータが必要になると思います。

超シンプルに誤差がでかくても許容であれば、
「期間内の速度センサの値を全部足し算してXYZのどちらかにでかいか」で機械的に決める。

ちゃんとするなら、
「期間内の速度センサの値を時系列データを捌けるニューラルネットワークにつっこむ」で細かいことはTensorflowやPytorchに任せる。

スマートにいくなら、
加速度センサを使った人間の動作認識の先行技術を調べて、githubで公開してくれている気前の良い研究者を探す」で公開してくれたなにがしさんに感謝する。
※深層学習でなくても、ガラケーで動くような機械学習でも十分さばける可能性もあると思います。

・その方法をする際にどのような前提知識が必要なのか?

統計と機械との相性の良い言語=Pythonが使えると相当楽になると思います。ほかの言語でもできると思いますが、(例えばCのようなガチの言語でやろうとすると)すぐにやりたいこと以外に覚えることが山のように膨らむと思います。
機械学習の知識はあるに越したことはありませんが、分からなくても関数の使い方がわかれば、リファレンスのコードを魔改造するだけで大体行けると思います。

RasbperryPiでやろうとするのであれば、GPIOや電子工作をちょっとやったことがあるくらいの知識と、ブレッドボード、ブレッドボードやセンサにブスブスさせるような配線、のような物理的なものがあると良いです。分からなければ、「Lチカをやってみた」や「GPIOにセンサをつないだ」みたいな記事をQiitaで探すと良いと思います。
そこまで身構える必要はありません。

・そもそもraspberry pi picoでできるのか?

使ったことはありませんが、データ取得はできると思いますが、その先Pythonで苦労するような環境になりそうな気がします。たぶん機械学習のモジュールはつかえませんね、picoだと。C系の言語であれば超軽量にできるかもしれませんが、そこまでできる人であれば質問する時間を惜しんで自力で実装しそうなものです。

Pythonで深層学習を使うのであればRasbperryPi 3 B+やRPi4の方が安全です。ただし、深層学習の学習処理はGooglecolabでやることになると思います。
Pythonで機械学習をするのであればRasbperryPi ZEROでも十分と思います。
統計処理なしでMicropythonで実装するのであればRaspberyPi picoでいいと思います。

投稿2022/05/21 08:31

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

そもそも加速度センサを使うってところから間違いかと
この場合検出しなければいけないのは、各所の位置情報です

投稿2022/05/20 20:48

y_waiwai

総合スコア87719

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2022/05/21 11:07

加速度センサでモーションを検出している事例は多くあります。 何の説明もなしに位置情報と言えば多くの人は GPS を想像します。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問