佐藤さとる

佐藤さとる

梶研 [ST-GCN動いただけ]

2024年06月18日

ST-GCN動いただけ

出席率

スケジュール

短期的な予定

長期的な予定

目的

料理中の動作を mocopi を使ってセンシングする。

このデータから最終的に位置推定を行う。

目標

12月頃の WiNF に出たい

(10月末 論文完成)

進捗報告

エラー

ValueError: not enough values to unpack (expected 4, got 3)
4次元が欲しいのに3次元になってるよ

先週より近づいた

ValueError: not enough values to unpack (expected 4, got 2)
4次元が欲しいのに2次元になってるよ

データの形を出力: torch.Size([64, 27, 3])

サンプルのデータの形 torch.Size([64, 3, 80, 25])

サンプルのデータの構造

torch.Size([64, 3, 80, 25])

(3, 80, 25)
(次元数, フレーム数, 関節数)

64 は何者 → バッチサイズ

BATCH_SIZE = 64
data_loader['train'] = DataLoader(dataset=Feeder(...), batch_size=BATCH_SIZE)

特に改変していないのでそもそもの入力の形が間違えている可能性

サンプルの入力データ(npy)の形

(2000, 3, 80, 25)
(200, 3, 80, 25)

実際の入力データ(npy)の形

(21871, 27, 3)
(7248, 27, 3)

なんか次元が一つ足りない

(2000, 3, 80, 25)
(データ数, 次元数(座標), ???, 関節数)
学習データ数が2000(10クラス×200データ), 評価データ数が200(10クラス×20データ)あります.
(200, 3, 80, 25)

つまり、1動作ごとに配列なってた

<p style="font-size:10px">

(ラベル付けと動作の分割が簡単にできるアプリ欲しい)

</p>

データを取り直す

<p style="font-size:10px">

(何回伊達巻を作ればいいのだろうか)

</p>

その他細々修正

100 epoch 文動かす

# Epoch: 1 | Loss: 0.0337 | Accuracy: 19.7917
# Epoch: 2 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 3 | Loss: 0.0337 | Accuracy: 19.7917
# Epoch: 4 | Loss: 0.0337 | Accuracy: 19.7917
# Epoch: 5 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 6 | Loss: 0.0337 | Accuracy: 19.7917
# Epoch: 7 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 8 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 9 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 10 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 11 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 12 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 13 | Loss: 0.0335 | Accuracy: 19.7917
# Epoch: 14 | Loss: 0.0336 | Accuracy: 19.7917
# Epoch: 15 | Loss: 0.0335 | Accuracy: 19.7917
# Epoch: 16 | Loss: 0.0335 | Accuracy: 19.7917
# Epoch: 17 | Loss: 0.0335 | Accuracy: 19.7917
# Epoch: 18 | Loss: 0.0335 | Accuracy: 19.7917
# Epoch: 19 | Loss: 0.0335 | Accuracy: 19.7917
# Epoch: 20 | Loss: 0.0335 | Accuracy: 19.7917
# Epoch: 21 | Loss: 0.0335 | Accuracy: 17.7083
# Epoch: 22 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 23 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 24 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 25 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 26 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 27 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 28 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 29 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 30 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 31 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 32 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 33 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 34 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 35 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 36 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 37 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 38 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 39 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 40 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 41 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 42 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 43 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 44 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 45 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 46 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 47 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 48 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 49 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 50 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 51 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 52 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 53 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 54 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 55 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 56 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 57 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 58 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 59 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 60 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 61 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 62 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 63 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 64 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 65 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 66 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 67 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 68 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 69 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 70 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 71 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 72 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 73 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 74 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 75 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 76 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 77 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 78 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 79 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 80 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 81 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 82 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 83 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 84 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 85 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 86 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 87 | Loss: 0.0336 | Accuracy: 22.9167
# Epoch: 88 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 89 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 90 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 91 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 92 | Loss: 0.0336 | Accuracy: 22.9167
# Epoch: 93 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 94 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 95 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 96 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 97 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 98 | Loss: 0.0335 | Accuracy: 22.9167
# Epoch: 99 | Loss: 0.0334 | Accuracy: 22.9167
# Epoch: 100 | Loss: 0.0334 | Accuracy: 22.9167

全て 体を捻る 判定になった...

↓理想

image.png (32.1 kB)

問題点

データの分割が適当すぎた

window_size を小さくしてみた


# Test Accuracy: 24.000[%]

Use CUDA: False
# Epoch: 1 | Loss: 0.0325 | Accuracy: 19.0000
# Epoch: 2 | Loss: 0.0324 | Accuracy: 19.0000
# Epoch: 3 | Loss: 0.0324 | Accuracy: 19.0000
# Epoch: 4 | Loss: 0.0324 | Accuracy: 19.0000
# Epoch: 5 | Loss: 0.0324 | Accuracy: 19.0000
# Epoch: 6 | Loss: 0.0324 | Accuracy: 19.0000
# Epoch: 7 | Loss: 0.0323 | Accuracy: 19.0000
# Epoch: 8 | Loss: 0.0323 | Accuracy: 19.0000
# Epoch: 9 | Loss: 0.0323 | Accuracy: 19.0000
# Epoch: 10 | Loss: 0.0323 | Accuracy: 19.0000
# Epoch: 11 | Loss: 0.0322 | Accuracy: 19.0000
# Epoch: 12 | Loss: 0.0322 | Accuracy: 19.0000
# Epoch: 13 | Loss: 0.0322 | Accuracy: 19.0000
# Epoch: 14 | Loss: 0.0321 | Accuracy: 19.0000
# Epoch: 15 | Loss: 0.0321 | Accuracy: 19.0000
# Epoch: 16 | Loss: 0.0321 | Accuracy: 19.0000
# Epoch: 17 | Loss: 0.0321 | Accuracy: 24.0000
# Epoch: 18 | Loss: 0.0321 | Accuracy: 24.0000
# Epoch: 19 | Loss: 0.0321 | Accuracy: 24.0000
# Epoch: 20 | Loss: 0.0321 | Accuracy: 24.0000
# Epoch: 21 | Loss: 0.0320 | Accuracy: 24.0000
# Epoch: 22 | Loss: 0.0319 | Accuracy: 24.0000
# Epoch: 23 | Loss: 0.0320 | Accuracy: 24.0000
# Epoch: 24 | Loss: 0.0320 | Accuracy: 24.0000
# Epoch: 25 | Loss: 0.0319 | Accuracy: 24.0000
...
# Epoch: 97 | Loss: 0.0317 | Accuracy: 24.0000
# Epoch: 98 | Loss: 0.0319 | Accuracy: 24.0000
# Epoch: 99 | Loss: 0.0317 | Accuracy: 24.0000
# Epoch: 100 | Loss: 0.0317 | Accuracy: 24.0000
image.png (27.0 kB)

変わらず

そもそも骨格がミスってる可能性

gif で出せることを知ったので出してみた.

※ 体を曲げる運動

animation.gif (348.7 kB)

おかしい...

一度修正したがライブラリに変更した時点で紛れ込んだ可能性

進路関係

余談

コロナつらかった

IMG_6940.jpg (2.5 MB)

PC を触れない辛さを実感した