# Physical Intelligence の π0.5 で靴下とゴミを取り分ける ― SO-101 の動画に見た LoRA と YOLO

- 記録: LOG443（考察記事）
- 公開: 2026/11/4
- 記事のページ: https://pixelstomotors.com/record/pi05-sock-garbage-lora-yolo-so101
- サイト: Pixels to Motors（ADAPT DESIGN / 島津 栄一） https://pixelstomotors.com/
- 要約: SO-101 のアームで π0.5 に靴下とゴミを取り分けさせた動画では、データの偏りを数えて埋め、YOLO の枠で目標を指し、言語モデルに LoRA を当てて50回ほぼ全部成功した。効いた手と mechArm への持ち帰りを整理した。

> AI が読むための記事の全文です（コード・実行ログを含む）。引用するときは上の「記事のページ」の住所を使ってください。

---

**SO-101 のロボットアームで Physical Intelligence の π0.5 に靴下とゴミを取り分けさせるとき、成功率を上げたのは3つの手だった。学習データの偏りを数えて埋めること、YOLO の枠で目標を画像の上で指すこと、言語モデルに LoRA を当てて指示の言葉を読めるようにすること。** walnut sensei（Weike Shi）さんの [YouTube 動画](https://www.youtube.com/watch?v=-7qtNagZCpY&t=49s) を Claude（Anthropic の AI）と読み解き、50回の試しでほぼ全部成功するまでに何をしたのかを整理しました。

この整理で、次の3つが手に入ります。

- 学習したロボットが違う物を取りに行くとき、原因をデータの偏り・目標の示し方・指示の言葉の読み方の3つに分けて見られる
- 小型のロボットアーム mechArm 270 で、π0.5 の動きを良くするために次に試す順番が決まった。最初のお手本の数え直しは、追加の費用がかからない
- 動きの合間の待ちを短くする手がかりが2つ見つかった（通信の設定と、π0.5 の動きのつなぎ方）。今の待ちの長さはまだ測っていないので、どれだけ縮むかはこれから測る

動画の題は The Next 9 です。最後の1割の失敗を、99%、99.9% と詰めていく話から始まります。家の床で、キャタピラの台に載った SO-101 のアームが、ゴミを拾えと言われているのに靴下へ手を伸ばす。前の回までの学習データは靴下80本・ゴミ50本で、迷うと靴下を取りに行く癖がついていました。ここから、データを揃え、画像に目印を足し、最後はモデルの中の言葉を読む部分に手を入れて直していきます。

いちばん効いて見えたのは、作者が自分の学習データを数えたところです。ゴミ用の100本のうち、靴下が見えていて手を出さない場面は7本しかなく、枠の付いた物をつかむ場面は70本ありました。ロボットは、何かあれば取りに行くと覚えていたわけです。

| 段階 | やったこと | 結果 |
|---|---|---|
| 前回 | 靴下80本・ゴミ50本で学習 | 迷うと靴下を取りに行く |
| 1 | 各タスク100本に揃え、ゲームパッドをやめてリーダーアームでお手本を集めた | 正しい物96%、引っ込める100%、何もない床で手を出さない100%（各30回）。関係ない物にはまだ手を出す |
| 2 | YOLO11n で目標に枠を描き、その画像を π0.5 に渡す | 関係ない物の問題はほぼ解決。もう片方のタスクの物だけがあると73%で手を出す |
| 3 | 枠の改良とデータ追加、DAgger（計260本） | その73%が0%に。両方の物があると約半分 |
| 4 | π0.5 の言語モデルに LoRA（ランク32） | 正しい物93%、つかむ精度の問題も解決 |
| 5 | LoRA と YOLO の枠の両方 | 50回でほぼ全部成功。別の部屋でも動いた |

これは実験の記録ではなく、他の人の動画を読み、対話しながら考えた記録です。数字は動画のスライドと字幕から拾ったもので、自分の手元では測っていません。

GPU を買うか借りるかの判断は、Runpod で π0.5 を実際に借りた GPU で学習させた費用をもとに、別のページにまとめています。

[ロボットAIの学習用GPU、買うか借りるか](https://pixelstomotors.com/gpu-buy-or-rent)


## 作業ログ ― Claude との対話を、そのまま残す

ここから下は、対話の全量です。ユーザーの発言を引用で、Claude の答えを本文で載せています。各節の頭の太字の一文は、その節で Claude が答えようとした問いです。何をするかを選んだやり取りと、記事化の段取りのやり取りは外しました。Claude の答えの中の太字は記事の太字の決まりに合わせて外し、答えの最後に付けた出典は記事の終わりの出典にまとめています。

動画は walnut sensei さんのものなので、画面写真は載せず、何が写っていたかを文で書いています。動画には英語の文字起こしがなく、YouTube の日本語の自動字幕と、スライドの数字から読み取りました。字幕は画面が小さく、全部は読めていません。

### この記事に出てくる言葉

| 言葉 | ふだんの言葉で言うと |
|---|---|
| [π0.5](https://www.physicalintelligence.company/blog/pi05)（パイレイテンゴ） | Physical Intelligence が作った、カメラの画像と言葉の指示からロボットの動きを出すモデル。約33億個の数値でできている |
| [SO-101](https://github.com/TheRobotStudio/SO-ARM100) | 3Dプリントの部品とサーボで組む、安価なロボットアーム。人が持って動かすリーダーアームと、それをまねて動くフォロワーアームの組で使う |
| [LeRobot](https://github.com/huggingface/lerobot) | Hugging Face が出している、ロボットの学習のための道具一式。お手本の記録・学習・動かすところまでをまとめて扱える |
| [Hugging Face](https://huggingface.co/) | AI のモデルとデータを置いて配るサービス。動画の作者もデータとモデルをここで公開している |
| リーダーアーム | 人が手で持って動かす方のアーム。動かした関節の角度を、そのままロボット側に送る |
| [YOLO](https://docs.ultralytics.com/) | 画像の中の何がどこにあるかを、四角い枠で返す検出のモデル。速く、小さな GPU でも動く。動画で使ったのは YOLO11n という一番小さい版 |
| [Grounding DINO](https://github.com/IDEA-Research/GroundingDINO) | 言葉で「靴下」と指示すると、画像の中の靴下に枠を付けてくれるモデル。YOLO を学習させる前の、枠の下書き作りに使った |
| DAgger | ロボットに実際にやらせ、間違えた所で人が手を出して直し、その直しをお手本に足していく学習のしかた |
| [LoRA](https://arxiv.org/abs/2106.09685) | 大きなモデルの元の数値は固めたまま、横に小さな部品を足して、その部品だけを学習するやり方。部品の太さをランクと呼ぶ |
| アクションエキスパート | π0.5 の中で、ロボットの関節の動きを出す部分。画像と言葉を読む部分（言語モデル）とは分かれている |
| mAP | 検出のモデルが、どれだけ正しく枠を付けられたかの点数。1に近いほど良い |

[図解: LOG443_distractor_board.html](https://pixelstomotors.com/embeds/LOG443_distractor_board.html)


## walnut sensei さんは、データ・目印・言葉の3つで成功率を上げた

> （walnut sensei さんの YouTube 動画 [The Next 9: Making My Robot Pick the Right Object (YOLO + LoRA)](https://www.youtube.com/watch?v=-7qtNagZCpY&t=49s) を流した画面の録画2本と、画面写真1枚と、動画の説明文を共有して。画面写真は、π0.5 がゴミのタスクで動いている場面に、ゴミを取ったのが60%、ゴミのつもりで靴下に動いたのが10%、靴下のつもりでゴミに動いたのが18%、靴下を取ったのが12%、という帯が重なったもの。説明文には、200本の揃えたお手本、TCP_NODELAY で制御が20Hzから29Hzに、YOLO の枠、260本と DAgger、LoRA（ランク32）、LoRA と YOLO で50回ほぼ完璧、と並んでいる。何をするかを聞かれて、mechArm に活かせる点の整理を選んで）
>
> 彼はどんなことをして成功率を上げましたか？分析してください。

**— 動画の作者は、何をして成功率を上げたのか。**

彼は失敗の原因を2つに切り分けて、順に潰しています。ひとつはデータの偏りで、もうひとつはモデルが指示の言葉（靴下かゴミか）をちゃんと読めていなかったことです。打った手の順番は、データを揃える → 画像に枠を描いて目標を指さす → 自分のデータを掘って穴を埋める → 言語モデルに LoRA を当てる、でした。

進み方と数字

| 段階 | やったこと | 結果 |
|---|---|---|
| 前回 | 靴下80本・ゴミ50本で学習 | 迷うと靴下を取りに行く |
| 1 | 各タスク100本に揃え、ゲームパッドをやめてリーダーアームでお手本を集めた | 正しい物96%、引っ込める100%、何もない床で手を出さない100%（各30回）。ただし関係ない物（日焼け止め・電池・学習にない物）にはまだ手を出す |
| 2 | YOLO11n で目標に枠を描き、その画像を π0.5 に渡す | 関係ない物の問題はほぼ解決。ただ、もう片方のタスクの物だけが置いてあると73%で手を出す |
| 3 | 枠の改良とデータ追加、DAgger（ロボットに実際にやらせ、間違えた所で人が直してお手本にする方法）（計260本） | その73%が0%になった。両方の物があると約半分 |
| 4 | π0.5 の言語モデルに LoRA（ランク32） | 正しい物93%、つかむ精度の問題も解決 |
| 5 | LoRA と YOLO 枠の両方 | 50回でほぼ全部成功。別の部屋でも動いた |

効いた手の中身

データの偏りに気づいたこと。本数が多い方のタスクに寄っていたので、まず本数を揃えました。それに加えて、お手本の種類も作り分けています。目標だけがある場面、目標と別の物がある場面、別の物だけがあって動かない場面、途中で引っ込める場面、手を伸ばしている間に人が目標を取り除く場面、の5種類です。

YOLO の枠で目標を指さしたこと。言葉で伝えるだけでなく、画像の中で、これを取れ、と指さすやり方です。YOLO は次の手順で自作しています。

- 録画を180フレームに1枚の割合で抜き出し、400枚あまりを用意した
- Grounding DINO に靴下・丸めた紙と指示して、下書きの枠を作らせた
- 枠は全部、人の目で確認して直した

検出の精度は mAP で0.84でした。

自分のデータを掘ったこと。ここが一番の見どころです。枠が出ていないのにモデルが靴下へ手を伸ばす理由を、学習データを数えて突き止めています。ゴミ用の100本のうち、靴下が見えていて動かない場面は7本しかなく、枠付きで何かをつかむ場面は70本ありました。結果としてモデルは、何かあれば取りに行く、と覚えていたわけです。直したのは次の点です。

- YOLO の信頼度のしきい値を25%から50%に上げた
- 枠の線を6pxから12pxに太くした
- もう片方のタスクの物が見えていて動かない場面を、タスクごとに20本足した
- DAgger を、タスクごとに10本足した

LoRA で言葉を読めるようにしたこと。それまでの微調整は、視覚と言葉を扱う部分を固定したまま、動きを出す部分（アクションエキスパート）だけを学習させていました。言語モデルに LoRA を当てたことで、指示ごとの違いを区別できるようになっています。

寄り道として、動きのカクつきを直したこと。

- 通信に TCP_NODELAY を設定し、制御の速さを20Hzから29Hzに上げた
- π0.5 は動きを50個ずつまとめて予測するので、次の予測を頼むタイミング（queue_threshold）と、古い動きと新しい動きを混ぜる幅（execution_horizon）を30/10から21/20に変えた。これで迷いのような止まりが減った
- 動きに EMA フィルタをかけた。αを0.5にすると揺れは38%まで減り、遅れは28ミリ秒で済む。0.3まで下げると揺れは21%になるが、遅れが88ミリ秒に伸びる

mechArm に持ち帰れること（優先順）

1. お手本の棚卸し。費用はかからず、すぐできます。mechArm の失敗は、ブロックを落とす、箱へ入れるとき腕が上がりきる前にぶつかる、の2つです。その場面をうまく切り抜けたお手本が何本あるかを数えてみる価値があります。彼の7本対70本のように、偏りがそのまま失敗の形になっている可能性があります。
2. 動きの合間の待ちの短縮。待ちが長いと感じていたところに直接効きそうです。クラウドの GPU と、アームの中の小さなコンピューター（Raspberry Pi）の間の通信が TCP なら、TCP_NODELAY は1行で試せます。π0.5 の予測を頼むタイミングと混ぜる幅の調整も同じ系統の話です。まず今の制御が何Hzで回っているかを測るところから始めるとよさそうです。
3. 巻き戻し補正は DAgger そのもの。彼はタスクごと10本でも効果を出しています。いま進めているゲームパッドでの補正の方向は、この動画からも裏付けが取れます。
4. ブロックに枠を描いて渡す。ブロックの位置にアームが行かない問題に効く可能性があります。画像認識の連載で検出は作ってきているので、その資産が使えます。枠は学習時にも推論時にも描く必要がありますが、既存の録画に後から描き足せるので、録り直しは要りません。
5. LoRA をどこに当てているかの確認。mechArm の学習済みモデルが動きの部分だけに当たっているのか、言語モデルまで含むのかを確かめておくとよいです。mechArm はタスクが1つなので、言葉を区別する必要は薄いです。ただ、彼はつかむ精度まで上がったと言っているので、試す価値はあります。

ほかに、彼もゲームパッドからリーダーアームに替えてお手本の質が上がったと話していました。SO-101 のリーダーアームが要るという前からの見立てを補強する材料です。

画面収録の字幕は小さくて全部は読めなかったので、上の内容は主に動画のスライドの数字から拾っています。最後に出てくる、まだ失敗する場面が何なのかは読み取れませんでした。


## ゲームパッドからリーダーアームに替えた理由は、動きの滑らかさだった

> ゲームパッドからリーダーアームに替えて
>
> これは何が原因だった？

**— お手本を集める道具をゲームパッドからリーダーアームに替えたのは、何が原因だったのか。**

動画の中で本人がはっきり言っているのは、結果の話だけです。ゲームパッドで遠隔操作するよりリーダーアームの方がフォロワーアームの動きが格段に滑らかで、データの質も大幅に上がった、データの質を重視するならこちらの方がはるかに良い、という内容でした。なぜゲームパッドだとだめだったのかという原因の説明は、字幕を見た範囲では出てきません。前回までの話として、Xbox のコントローラーでのデータ集めに苦労していたと書いた本人の投稿が映るだけです。

ここから先は推測です。原因は操作のしかたの違いにあると見ています。ゲームパッドは、ボタンやスティックで関節や手先を決まった速さで動かします。何本もの関節を同時に自然な加減で動かすのは難しく、動かしては止まり、また別の軸を動かす、という継ぎはぎの軌道になりがちです。リーダーアームは人が腕そのものを持って動かすので、全部の関節が同時に、加速も減速も人の手のまま連続して動きます。π0.5 のような模倣学習は、お手本の軌道の癖をそのまま覚えます。カクカクした操作で集めたデータからは、カクカクした迷いのある動きが出てくる、というのが筋の通る説明です。

もう一つ、彼は滑らかな軌道にするために録画前に何度も練習したとも言っています。道具を替えただけでなく、お手本を取る人の動きも揃えていたわけです。

mechArm に当てはめると、ゲームパッドで直した区間を学習データにする場合、その区間のぎこちなさも一緒に覚えさせることになります。いまの送り直し式は動きがぎこちないと感じていたはずなので、jog 方式（押している間、関節が一定の速さで動き続ける方式）に作り直す意味はここにもあります。補正の区間は短く収めて、前後の滑らかな動きにつなぐ形が理想です。


## LoRA はモデルではなく、大きなモデルを安く学習し直すやり方

> LoRAってなに？詳しく。モデルの一つみたいだけど

**— LoRA とは何か。モデルの一つなのか。**

LoRA はモデルではなく、大きなモデルを少ない費用で自分用に学習し直すための方法の名前です。正式には Low-Rank Adaptation で、日本語にすると低ランク適応になります。2021年に Microsoft の研究者が大規模言語モデル向けに発表しました。

何をしているか

π0.5 は約33億個の数値（重み）でできています。普通の微調整は、この33億個を全部書き換えます。そのため大きな GPU と長い時間が要り、元のモデルが持っていた知識が崩れることもあります。

LoRA は、元の重みには手を付けずに凍結します。その横に小さな行列 A と B を2つ足して、学習するのはこの小さな部分だけにします。式で書くと、元の出力 W₀x に、BAx を足すだけです。動画の LoRA の図にあった h = W₀x + BAx がこれです。

たとえば1024×1024の層には、約105万個の数値があります。ランク32の LoRA なら、A が1024×32、B が32×1024で、合わせて約6.5万個です。元の6%ほどを学習するだけで済みます。ランクは、この足し算部分の太さのことです。大きくすると表現できる変化が増え、そのぶん重くなります。

たとえるなら、分厚い教科書（元のモデル）には書き込まず、要所に付箋を貼って自分用にするやり方です。付箋を外せば元に戻ります。付箋を貼り替えれば、別の用途にも使い分けられます。

良いところと弱いところ

良いところは4つあります。

- 必要な GPU のメモリが少なく、学習が速い
- 保存するのは小さな付箋の部分だけなので、ファイルが小さい
- 元の知識が崩れにくい
- タスクごとに付箋を差し替えられる

弱いところは、全部を書き換える微調整より変えられる幅が狭いことです。それと、どの部分に付箋を貼るかで効き方が大きく変わります。

モデルの一つに見える理由

画像生成の世界では、LoRA のファイルが「このキャラの絵柄」「この画風」のように配布されています。それがモデルのように扱われているので、そう見えるのだと思います。実際の中身は、元のモデルに貼る付箋だけです。元のモデルがないと動きません。

動画で何が効いたのか

彼のそれまでの学習では、π0.5 のうち、視覚と言葉を読む部分（言語モデル）は凍結していました。学習していたのは、動きを出す部分だけです。そのため、靴下を取れとゴミを取れという指示の違いをうまく読み分けられませんでした。そこで言語モデルにランク32の LoRA を貼り、元の知識を壊さずに、言葉を読む部分も自分のタスク向けに少しだけ直しました。その結果、正しい物を選べるようになっています。

mechArm の学習済みモデルの名前（pi05-mecharm-trim-lora-v1）にも lora が入っているので、すでに LoRA で学習しているはずです。ただ、彼の話の肝は、どこに貼ったかです。mechArm の LoRA が動きの部分だけに貼られているのか、言語モデルにも貼られているのかは、学習の設定を見れば確かめられます。


## 物を見分けるなら YOLO、指示の言葉と物を結ぶなら LoRA

> LoRAはモノを識別するのに向いているの？

**— LoRA は、物を見分けるのに向いているのか。**

LoRA そのものは、物の識別に向いた仕組みではありません。どこに貼るか、何を学習させるかで効く中身が変わる、汎用の直し方です。

動画の例でも、LoRA で良くなったのは物を見分ける力ではなく、指示の言葉と物を結び付ける力の方でした。π0.5 はもともと大量の画像と言葉で学習しているので、靴下と丸めた紙を見分けること自体はできていたはずです。できていなかったのは、ゴミを取れと言われたら紙の方だ、という対応付けです。言語モデルに LoRA を貼ったことで、ここが彼のタスク向けに直りました。

物の識別そのものなら、YOLO のような検出器の方が向いています。

- 何がどこにあるかを枠で返すので、結果がはっきりしている
- 速く、小さな GPU でも動く
- 400枚ほどの画像で自作できる

彼の結果を見ても、役割は分かれています。LoRA だけのときは、日焼け止めや、もう片方のタスクの物でまだ少し迷っていました。YOLO の枠を足すと、そこも埋まっています。YOLO が、これ、と指さし、LoRA で指示を読めるようになったモデルがそれに従って動く、という組み合わせで最後の詰めができた形です。

mechArm に当てはめると、物はブロック1種類で、タスクも1つです。困っているのはブロックの位置にアームが行かないことで、識別の問題ではありません。なので、言語モデルに LoRA を貼っても大きな効果は見込みにくいです。効きそうなのは、ブロックに枠を描いて位置を指さすことと、位置のばらつきを含んだお手本を増やすことの方です。


## LoRA が効いたのは、指示の言葉でタスクを切り替えるところ

> できていなかったのは、ゴミを取れと言われたら紙の方だ、という対応付けです。言語モデルにLoRAを貼ったことで、ここが彼のタスク向けに直りました
>
> タスクの調整にLORAが有効だったということかな？

**— LoRA は、タスクの調整に有効だったということか。**

ほぼその通りです。もう少し正確に言うと、指示の言葉でタスクを切り替えることに LoRA が効いた、ということです。同じ腕、同じカメラで、靴下を取れならこっち、ゴミを取れならあっち、という2つのタスクの区別です。

この結果に説得力があるのは、データを変えずに比べているところです。字幕を見ると、LoRA は元の200本のお手本で学習しています。YOLO の枠も DAgger の追加分も入れていません。それでも正しい物を選ぶ割合が93%まで上がったので、効いたのは LoRA、つまり言語モデルを動かせるようにしたこと、と言えます。おまけとして、つかむ精度の問題も解決したと本人は言っています。

ただし、これは彼の1つの実験での話です。タスクが2つで、物の見た目もはっきり違う条件でした。タスクが増えたり、似た物どうしを言葉で区別したりする場面で同じように効くかは、まだ分かりません。

mechArm は今タスクが1つなので、この効き方が出る場面はまだありません。双腕や、複数の物を指示で選び分けるタスクに進んだときに効いてくる話です。


## 赤と青のブロックは、言葉で選ぶ力を試すいちばん簡単な入口

> 例えば簡単なのはブロックを赤と青を用意するといったことだけど、もっと複雑な環境を教え込むときに良さそうだね。

**— 赤と青のブロックのような選び分けから、もっと複雑な環境へどう進めるか。**

そうですね。赤と青のブロックは、言葉と物の対応付けを試す一番簡単な入口になります。複雑な環境ほど、LoRA で言語モデルまで直す意味が大きくなるはずです。

ただ、彼の動画で一番効いていたのは、LoRA より先に自分のデータを数えたことでした。靴下が見えていて動かない場面が7本しかなかった、という話です。環境が複雑になるほど、物の組み合わせや置き方のパターンが増えます。どの場面のお手本が足りないかを数えることが、もっと大事になります。LoRA は言葉を読む力を足しますが、見たことのない場面を補ってはくれません。

段階を踏むなら、難しさはだいたい次の順に上がります。

1. 赤と青のように、色で選ぶ。π0.5 はもともと色の言葉を知っているので通りやすい
2. 形や大きさで選ぶ。似た色の物どうしで区別させる
3. 左の、手前の、箱に近い方の、のように位置の関係で選ぶ
4. 赤を入れてから青、のように順番のある指示にする

赤と青で、言語モデルに LoRA を貼る場合と貼らない場合を同じデータで比べるだけでも、彼の実験を mechArm で確かめ直したことになります。手順を公開すれば、そのまま再現できる環境の一つになります。

この比べ方は、どこかのタイミングで試すことにしました。


## ねらい・変わったこと・見込める効果

動画から持ち帰った見方を、mechArm の π0.5 の学習に入れたときのことを、ここでまとめておきます。どれも見込みで、mechArm ではまだ試していません。

| | 中身 |
|---|---|
| ねらい | mechArm の π0.5 が失敗したとき、学習を回し直す前に、どこを直せばよいかを当てられるようにする |
| 変わったこと | 失敗を、データの偏り・目標の示し方・指示の言葉の読み方の3つに分けて見ることにした。次に試す順番を、お手本の数え直し・待ちの短縮・巻き戻しの補正・ブロックの枠・LoRA の当て先の確認、にした。言葉で物を選び分ける実験（赤と青のブロックで、言語モデルに LoRA を貼る・貼らないを比べる）を、試すことの一覧に入れた |
| 見込める効果 | お手本の数え直しは費用がかからず、学習を1回回す前に偏りが見つかれば、クラウドの GPU の時間を無駄にしない。待ちの短縮は、今の制御の速さを測ってから、TCP_NODELAY の前後で比べる |


## π0.5 に正しい物を取らせるのは、数えたデータと言葉を読む部分の学習

walnut sensei さんが靴下とゴミを取り分けられるようにした道のりは、モデルを大きくすることではありませんでした。まず学習データを揃え、目標を画像の上で指さし、それでも残る失敗を、自分のデータを数えて突き止めています。最後に効いた LoRA も、π0.5 の中の言葉を読む部分を、元の知識を壊さずに少しだけ直したものです。

LoRA は物を見分ける力を足すものではなく、指示の言葉と物を結び付ける力を直すものでした。物の位置や種類を見分けるのは YOLO のような検出器の方が向いていて、2つを組み合わせたときに50回ほぼ全部の成功になっています。

**学習したロボットの失敗は、データの数え直しで原因が見え、指示の言葉で選び分ける力は言語モデルの LoRA で足せる。**


## 出典

- [walnut sensei：The Next 9: Making My Robot Pick the Right Object (YOLO + LoRA)](https://www.youtube.com/watch?v=-7qtNagZCpY&t=49s)
- [walnut sensei のコード（WeikeShi0730/lerobot_on_track）](https://github.com/WeikeShi0730/lerobot_on_track)
- [walnut sensei のデータセット・モデル・YOLO の重み（Hugging Face）](https://huggingface.co/vicshi97)
- [Dream Machines：π0.5 の微調整の解説（動きのつなぎ方の図）](https://dream-machines.eu/blog/pi05-fine-tuning)
- [Hu ほか：LoRA: Low-Rank Adaptation of Large Language Models（2021）](https://arxiv.org/abs/2106.09685)
- [Physical Intelligence：π0.5](https://www.physicalintelligence.company/blog/pi05)
