作業ログ · 教師 · 蹴り · RunPod

まだ記事になっていません · 掲載先: ラボノート

教師:蹴り

著者 ヤム トニー(Tony Yum) · 2026年10月26–27日

学習コスト 約$31.08学習ラン12回、マシン22台、約31.4マシン時間

最初の蹴りで、すべて10月25日にジムで撮った私のモーションキャプチャ(Muay Thai 03、take_01、スマートフォン2台)から作りました。プレビューから選んだのは、3 s の右ローキック、11 s の左ローキック、22 s の右ミドルキック、27 s の左ミドルキック、そして約 33 s と 40 s の2つのハイキックです。蹴りはそれぞれ独立した技として学習させ、互いに混ぜないようにしたいと考えました。唯一の例外は左ミドルキックで、高さの違う私の2つの左ミドルキックを、狙う高さに応じて混ぜています。どれも少し上、下、左、右を狙いますが、前後は狙いません。「それほど広い範囲は必要ない。」左の蹴りはスイッチキックです。跳んで足を入れ替え、蹴り、また入れ替えて戻ります。技についてはローキック、ミドルキック、ハイキックのページにあります。

ラン

ラン元内容結果マシン時間、コスト
lowkickR1distill4-131.1M太ももへの右ローキック223.2M:空中 6/30、バッグ 0/30。私のレビュー待ち2.6 h、$2.36
lowkickL1distill4-131.1M左(スイッチ)ローキック224.6M:空中 30/30、バッグ 0/30。私のレビュー待ち2.6 h、$2.35
midkickR1distill4-131.1Mボディへの右ミドルキック223.5M:空中 30/30、バッグ 0/30。私のレビュー待ち2.6 h、$2.35
midkickL1distill4-131.1M左(スイッチ)ミドルキック、2つの高さ228.9M:空中 29/30、バッグ 0/30(26–35 cm 手前で止まる)。私のレビュー待ち2.6 h、$2.35
highkickR1midkickR1-223.5M頭部への右ハイキック209.7M:バッグと、空中の頭より下では当たる。私のレビュー待ち2.6 h、$2.28
highkickL1midkickL1-228.9M頭部への左(スイッチ)ハイキック199.9M:ほとんどの狙いでバッグ 5/6、空中の頭の高さでは命中なし。私のレビュー待ち2.6 h、$2.28
lowkickR2lowkickR1-223.2Mバッグを標的の位置に、蹴りのあとの横曲げなし286.1M を採用:空中 0/30、バッグ 12/302.6 h、$3.15
lowkickL2lowkickL1-224.6M同上227.4M を採用:空中 30/30、バッグ 30/302.6 h、$2.35
midkickR2midkickR1-223.5M同上221.9M を採用:空中 23/30、バッグ 27/302.6 h、$2.35
midkickL2midkickL1-228.9M同上275.4M を採用:空中 18/30、バッグ 5/302.6 h、$3.15
highkickR2highkickR1-209.7M当たる前に蹴りの高さを出す273.2M を採用:空中 35/36、バッグでは足首が頭の高さ2.6 h、$3.05
highkickL2highkickL1-199.9M同上271.2M を採用:空中 30/36、バッグでは足首が頭の高さ2.6 h、$3.06

1回目:ローキックとミドルキック

4つは10月26日 07:49–07:51 UTC から RunPod の RTX 4090($0.89/h。5090 は空きがありませんでした)で並行して学習させ、上限の2.5時間、それぞれ約 223–229 M ステップまで進めました。どれも生徒 distill4-131.1M からウォームスタートし、蹴りそのもの以外のすべてについては distill4 を教師にしました。distill4 は一度も蹴ったことがありません。私の Windows PC から、ssh を使わず S3 だけを通してポッドを追う新しいモードで起動しました。最初の試行はどれも約8分で止まりました。PC からの S3 ダウンロードが拒否されたためです。これを直して4つを再起動しました(それぞれ約$0.08、コストに含めています)。蹴りは足首で採点し、バッグに当たるのはすねと足です。

ゲートは翌朝 PC で実行しました。6つのシードで、中央と ±10 cm の4つの狙いを、空中とバッグで試します。

空中の命中空中:標的からのずれ、速度バッグ蹴ったあとの腰
lowkickR1-223.2M6/303–8 cm、2.6–4.1 m/s(遅い)0/30、5–11 cm ずれ最大35°回り、約2°に戻る
lowkickL1-224.6M30/304–7 cm、6.8–7.6 m/s0/30、2–6 cm ずれだが当たる手前で減速72–82°回り、2–4°に戻る
midkickR1-223.5M30/304–6 cm、5.9–7.5 m/s0/30、6.5–12 cm ずれ43–56°回り、3–8°に戻る
midkickL1-228.9M29/301.5–8 cm、4.1–5.3 m/s0/30、26–35 cm 足りない42–65°回り、1–5°に戻る

どれも転倒せず、蹴ったあとに足を踏み出すこともなく、押下と押しを加えるバランステストでも転倒しませんでした。右ローキックは届きますが、鋭さがありません。バッグに当たった蹴りは一つもありませんでした。

ハイキック

10月27日、私はハイキックにゴーサインを出しました。狙いは対戦相手の頭部(1.56 m)と、その左右と下の点で、上は決して狙いません。「それより上を蹴る必要はない。」狙いは下に 15 cm、左右にそれぞれ 10 cm です。蹴りが当たるときには、もう一方のグローブを耳に移します。私のキャプチャではすねの最高点が 1.42 m(右)と 1.47 m(左)なので、頭部に届くように腰を最大 16 cm 上げています。1回目の動画を見たあとで作った専用の環境を使い、バッグは標的の位置に置き、2回目(下記)の横曲げの項も入れました。ミドルキックからウォームスタートし、10月27日 01:19 UTC から RTX 4090 2台で上限の2.5時間まで学習させました。

最後に、最終チェックポイントと学習ログが 0 バイトのファイルとしてポッドから落ちてきたので、それぞれ最後のスナップショット(209.7 M と 199.9 M)を使いました。これらは PC にあるだけで、まだ S3 にはありません。ゲートの結果は次のとおりです。

  • highkickR1-209.7M: 空中では頭部に 6回中5回、その 15 cm 下に 6/6、左右に 2–3/6。バッグでは頭部に 2/6、低い列に 6/6、左右に 1/6。ずれは 4–12 cm。転倒なし、踏み出しなし。空中では腰が最大 127–139° まで回り、最後は 16–21° ずれて終わります。
  • highkickL1-199.9M: 空中では頭部とその左右に 0/6、15 cm 下に 4/6。バッグでは右下(2/6)以外のすべての狙いで 5/6、ずれは 1–12 cm。6つのシードのうち1つがどの列でも転倒します。

2回目の準備

1回目の動画を見て、ローキックとミドルキックが外れる理由がわかりました。「緑の点が完全にバッグの外にあるんだから、当然バッグには当たらない……緑の点を、蹴りに応じた適切な高さで、完全にバッグの内側に置こう。」こうも言いました。「蹴ったあとにファイターがバランスを崩して、体を左右に曲げている。これはあってはいけない。参照モーションではうまくバランスを取っていた。」戻りの途中で、胸が私の参照モーションとは逆向きに 14–35° 曲がっていたのです。4つの蹴りすべてに2つの変更を加えました。

  • バッグを標的の位置に。 バッグは、その軸が標的を通るように吊るし、標的は表面から 17 cm 内側、その蹴り自身のインパクトの高さにあります。以前は標的がすねの前側、バッグの外にありました。
  • 横曲げなし。 当たってから蹴りの終わりまで、胸と骨盤の横曲げが参照モーションと一致することに対する報酬の項(重み 2.0、8° のガウス関数)を加えました。

lowkickR2、lowkickL2、midkickR2、midkickL2 はそれぞれ1回目の蹴りからウォームスタートし、ほかの設定は同じです。RunPod($1.19/h の RTX 5090 2台と $0.89/h の RTX 4090 2台)で上限の2.5時間まで学習させました。10月28日のゲートの結果です。

空中の命中バッグの命中当たったあとの横曲げ
lowkickR2-286.1M0/30(標的には届くがそこで止まり、蹴り抜かない)12/304–8°
lowkickL2-227.4M30/3030/304–6°
midkickR2-221.9M23/30(腰が回りすぎる、115–127°)27/308–11°
midkickL2-275.4M18/305/30(高い狙いのみだが、今はバッグに届く)4–6°

どの蹴りもバッグに届くようになり、当たったあとの曲がりもずっと小さくなりました。転倒や踏み出しはありませんでした。4つを一緒に見て、私はこう言いました。「良さそうだね、採用にしておいて。」

ハイキック、2回目

1回目の動画で、「蹴りが高さに届く前にバッグに当たっているようだ」とわかりました。原因は3つありました。標的が回し蹴りの軌道から外れていたこと。バッグは足首がどこに当たっても押した分の報酬を払っていたので、バッグの列では 1.6 m の標的に対して足首の最高点が 1.1–1.3 m にとどまっていたこと。そして、バッグが脚の通り道を邪魔していたことです。highkickR2 と highkickL2 では、最後の 0.1 s の間に足首が入ってくる軌道に沿って命中を判定し、足首が標的どおりのときだけバッグの報酬を払い、最初は蹴りの60 %が当たるまですべての蹴りを空中で出すようにしました。1回目からウォームスタートし、distill4 を教師にして、RunPod の RTX 5090 2台($1.19/h)で2.5時間学習させました。

  • highkickR2-273.2M: 空中 35/36。バッグでは 1.64 に対して足首の最高点が 1.53–1.59 m(1回目:1.21–1.28)。
  • highkickL2-271.2M: 空中 30/36(1回目と同じく、6つのシードのうち1つが転倒)。バッグでは 1.65 に対して足首の最高点が 1.52–1.57 m(1回目:1.26–1.30)。

どちらもまだバッグへの命中は数えられていません。すねがバッグの表面を横切るだけで、ほとんど動かさないからです。それでも高さの問題は解決しました。私は「良さそうだね、採用と考えていい」と言いました。ハイキックは distill9 で生徒に組み込みました。ローキックとミドルキックは採用済みの教師で、まだ生徒には入っていません。

すべてのラン

kakuto-mlのラン記録から作成しています。各ランのマシン、課金された時間とコストです(EC2のランはランのログからの推定値です)。

ラン結果マシン時間コスト
midkickR2-2026102710月27日 · 右ミドルキック · 採用 midkickR2-221.9M採用22.6$2.35
lowkickL2-2026102710月27日 · 左ローキック · 採用 lowkickL2-227.4M採用22.6$2.35
midkickL2-2026102710月27日 · 左ミドルキック · 採用 midkickL2-275.4M採用12.6$3.15
lowkickR2-2026102710月27日 · 右ローキック · 採用 lowkickR2-286.1M採用12.6$3.15
highkickR2-2026102710月27日 · 右ハイキック · 採用 highkickR2-273.2M採用32.6$3.05
highkickL2-2026102710月27日 · 左ハイキック · 採用 highkickL2-271.2M採用12.6$3.06
highkickR1-2026102710月27日 · 右ハイキック · 採用 highkickR1-209.7M採用22.6$2.28
highkickL1-2026102710月27日 · 左ハイキック · 採用 highkickL1-199.9M採用22.6$2.28
lowkickR1-2026102610月26日 · 右ローキック · 採用 lowkickR1-223.2M採用22.6$2.36
lowkickL1-2026102610月26日 · 左ローキック · 採用 lowkickL1-224.6M採用22.6$2.35
midkickR1-2026102610月26日 · 右ミドルキック · 採用 midkickR1-223.5M採用22.6$2.35
midkickL1-2026102610月26日 · 左ミドルキック · 採用 midkickL1-228.9M採用22.6$2.35
学習ラン12回2231.4$31.08

← すべての作業ログ