初めてのフィジカルAi。Huggingface の LeRobot の ACT model で学ぶ。#3
LeRobot ACT model で、モーション分割 Datasets で、学習を行う!! 第2段!!
初めてのフィジカルAi。Huggingface の LeRobot の ACT model で学ぶ。#2 の続きです。
今回は、本当に、オリジナルの データ・セット lerobot/svla_so101_pickplace を、各エピソードを、複数モーションに分割して学習させてみました。
初めに、Demo にて確認します。
$ export PYTHONPATH=$PYTHONPATH:/home/your-id/local/git-download/lerobot/src <-- git clone した場所の src
$ lerobot-dataset-viz --repo-id lerobot/svla_so101_pickplace --episode-index 0
外置きのカメラが、2台あるみたい。observation.images.up と observation.images.side
なので、 class ACT は、2 images inputs にしないといけない。
この、Detasets は、FPS:30[hz] なので、これも、train.ipynb に反映させないといかん!!
1. Datsets: lerobot/svla_so101_pickplace を、3 モーションに区分けして、 3 Datasets ファイルにする。
$ make_3motions_data.py
本来のこの3分割の目的は、motion1、motion2、motion3 に分割したあと、学習が弱い部分の motion? を、新たなデータから加えて、
motion1、motion2、motion3、montion1b の様に、組み合わせて学習させるのが、本来の目的じゃ。!!
2. train
train.ipynb を、lerobot/svla_so101_pickplace に合うように、
input、output を修正して、
jupyter notebook で、train させます。
1 epoch のデータ数が、ちょっと少ないので、10 epochs 程、学習が必要です。
8 batch で、
Steps 13400 | Loss: 0.167124 | LR: 0.000003
Model saved! (Step Best Loss: 0.1671)
Loss: 0.11 辺りになれば、良いとおもいますだ!
3. inference
今回は、シュミレーションが対応していないので、最終的な確認は、
実機になります。
おんちゃんは、残念ながら、実機を持っていないので、対応 python Script を作って、ここで終了です。
lerobot ACT train サンプルにつている、
act_using_example.py と、今までシミュレーションで使った、Act_check_sim_cui.py を合体させれば、出来上がり。
一応、実機を使うつもりで、
feetech-servo-sdk パッケージを追加する。
$ cd /home/your-id/local/git-download/lerobot
$ python -m pip install -e ".[feetech]"
$ python Act_check_real_robot.py
だれか、実際動かしてみて、問題があれば、フィードバックして、頂ければ幸いです。
by nishi 2026.5.25
github に上げて置きます。
tosa-no-onchan/lerobot-my/SO101