効率的なスケルトンベースの人間の行動認識論文読解のためのセマンティクスガイド付きニューラルネットワーク

効率的なスケルトンベースの人間の行動認識のためのセマンティクス誘導ニューラル ネットワーク 論文読書メモ

スケルトンベースの人間の行動認識における
セマンティックガイド付きニューラル ネットワークの応用

まとめ

骨格ベースの人間の行動認識は、人間の骨格データを容易に取得できるため、大きな関心を集めています。近年、計算効率を考慮せずに、非常に深いフィードフォワード ニューラル ネットワークを使用して関節の 3D 座標をモデル化する傾向があります。この論文では、スケルトンベースのアクション認識のためのシンプルで効果的なセマンティックガイド付きニューラルネットワーク(SGN)を提案します。特徴表現を強化するために、ジョイントの高レベルのセマンティクス (ジョイント タイプとフレーム インデックス) をネットワークに明示的に導入します。さらに、同一フレーム内のジョイントの依存関係をモデル化するジョイントレベルのモジュールと、同一フレーム全体内のジョイントのフレーム間依存関係をモデル化するフレームレベルのモジュールの2つのモジュールを階層化し、ジョイント間の関係を利用します。この分野の研究を促進するために、強力なベースラインが提案されています。SGN は、NTU60、NTU120、SYSU データセットで最先端のパフォーマンスを実現します。モデルのサイズは、これまでのほとんどの作品に比べて一桁小さいです。ソース コードはコード アドレスにあります。

1 はじめに

人間の行動認識には、人間とコンピューターの対話やビデオ検索など、幅広い応用シナリオがあります [35、50、1]。スケルトンベースのアクション認識は、近年ますます関心を集めています。スケルトンは、人体の各関節が関節タイプ、フレーム インデックス、および 3 次元位置によって識別される、適切に構造化されたデータです。アクション認識にスケルトンを使用すると、いくつかの利点があります。まず、スケルトンは人体の高レベルの表現であり、人体のポーズと動作を抽象化します。生物学的に言えば、人間は外見情報が存在しない場合、関節の動きを観察するだけで行動カテゴリーを認識することができます。[17] 第二に、費用対効果の高い深度カメラ [61] と姿勢推定技術 [38、4、43] の進歩により、スケルトンの取得がはるかに容易になりました。第三に、RGB ビデオと比較して、スケルトン表現は視点や外観の変化に対して堅牢です。第 4 に、低次元表現により計算効率も高くなります。さらに、スケルトンベースのアクション認識は、RGB ベースのアクション認識を補完するものでもあります [42]。この研究では、スケルトンベースの動作認識に焦点を当てます。

図 1: NTU60 の精度とパラメータ数に関するさまざまな方法の比較 (CS 設定)。提案された SGN モデルは、一桁小さいモデル サイズで最高のパフォーマンスを実現します。

スケルトンベースのアクション認識では、スケルトンシーケンスの時空間進化をモデル化するためにディープラーニングが広く使用されています[11、47]。リカレント ニューラル ネットワーク (RNN) [7, 63, 36, 41, 57, 40]、畳み込みニューラル ネットワーク (CNN) [18, 58, 30, 51]、グラフ畳み込みネットワーク ( GCN)[54、40、44]。初期の頃、RNN/LSTM は、短期および長期の時間的ダイナミクスを利用するための最も人気のあるネットワークでした。最近、フィードフォワード (つまり、非再帰的) 畳み込みニューラル ネットワークを使用して、音声、言語 [34、10、53、48]、およびスケルトン [18、58、30、51] のシーケンスをモデル化する傾向があります。優れた特性を持っているからです。ほとんどのスケルトンベースの方法は、関節座標を 2D マップとして編成し、CNN 入力 (例: 224×224) に適合するようにマップのサイズを変更します (例: ResNet50 [12])。その行と列は、さまざまなタイプのジョイント フレーム インデックスに対応します。これらの方法 [18、58、30、51] では、長期的な依存関係と意味論的な情報が、深いネットワークの大きな受容領域によってキャプチャされることが期待されます。これは残酷に思え、多くの場合、モデルが非常に複雑になります。直観的には、意味論的な情報、つまり関節タイプとフレームインデックスは動作認識にとって非常に重要です。セマンティクスとダイナミクス (つまり 3D 座標) は、人間の関節の空間的および時間的な構成/構造を明らかにします。ご存知のとおり、座標は同じだがセマンティクスが異なる 2 つのジョイントは、まったく異なる情報を伝えます。たとえば、頭の上にあるジョイントの場合、そのジョイントが手のジョイントであれば挙手、足のジョイントであればキックなどになります。また、行動認識には時間情報も重要です。座る、立つという 2 つの動作を例に挙げると、フレームが表示される順序が異なるだけです。しかし、ほとんどの方法 [11、47] は意味情報の重要性を無視しており、それを十分に調査していません。
図2
図 2: 提案されたエンドツーエンドのセマンティック ガイド ニューラル ネットワーク (SGN) のフレームワーク。これは、ジョイントレベルのモジュールとフレームレベルのモジュールで構成されます。DRでは、関節の位置情報と速度情報を融合することで関節の動的表現を学習します。ジョイント レベルのモジュールとフレーム レベルのモジュールには、それぞれジョイント タイプとフレーム インデックスという 2 つのセマンティクスが含まれています。ジョイント レベル モジュール内のジョイントの依存関係をモデル化するには、3 つの GCN レイヤーを使用します。フレーム間の依存関係をモデル化するには、2 つの CNN レイヤーを使用します。

既存の方法の前述の制限に対処するために、私たちはセマンティックガイド付きニューラル ネットワーク (SGN) を提案します。セマンティクスとダイナミクスを明示的に利用して、効率的なスケルトンベースのアクション認識を実現します。図 2 に一般的な枠組みを示します。スケルトン シーケンスのジョイント レベルおよびフレーム レベルの依存関係を順次探索することにより、階層ネットワークを構築します。関節レベルの依存関係をより適切にモデリングするために、ダイナミクスに加えて、関節タイプのセマンティクスを組み合わせる (例: 「頭」と「腰」)これにより、コンテンツ適応グラフの構築と、各フレーム内のジョイント間での効率的なメッセージの受け渡しが可能になります。フレームレベルの相関をより適切にモデル化するために、時間フレームインデックスのセマンティクスをネットワークに組み込みます。特に、同じフレーム内のジョイントのすべてのフィーチャに対して空間最大プーリング (SMP) 操作を実行して、フレームレベルのフィーチャ表現を取得します。埋め込まれたフレーム インデックス情報と組み合わせて、2 層の時間畳み込みニューラル ネットワークを使用して、分類のための特徴表現を学習します。さらに、高いパフォーマンスと効率を備えた堅牢なベースラインを開発します。意味情報の効率的な探索、階層モデリング、および強力なベースラインにより、私たちが提案する SGN は、より少ないパラメータで最先端のパフォーマンスを達成します。
私たちの 3 つの主な貢献を次のように要約します。

  1. 効率的なスケルトンベースのアクション認識のために、ジョイント セマンティクス (フレーム インデックスとジョイント タイプ) を明示的に調査することを提案します。以前の研究では、セマンティクスの重要性が無視され、アクション認識のために非常に複雑なディープネットワークに依存していました。
  2. 我々は、ジョイントレベルおよびフレームレベルの空間的および時間的相関を階層的に利用するための意味ガイド型ニューラルネットワーク(SGN)を提案します。
  3. 私たちは、これまでのほとんどの方法よりも堅牢な、軽量で強力なベースラインを開発します。この強力なベースラインが骨格ベースの行動認識の研究を促進することを願っています。

上記の技術貢献に基づいて、計算効率の高いスケルトンベースの高性能行動認識モデルを取得します。広範なアブレーション研究により、提案されたモデル設計の有効性が実証されています。3 つの最大のスケルトンベースのアクション認識ベンチマーク データセットでは、提案されたモデルは、モデル サイズが 1 桁小さいにもかかわらず、多くの競合アルゴリズムを常に上回っています (図 1 を参照)。

2.関連作品

スケルトンベースの行動認識は、近年ますます注目を集めています。ニューラル ネットワークを使用した最近の研究 [11] は、手作りの特徴を使用した従来の方法 [11、52、46、55、9] を大幅に上回っています。
リカレント ニューラル ネットワークに基づいています。 LSTM [14] や GRU [5] などのリカレント ニューラル ネットワークは、骨格シーケンスの時間的ダイナミクスをモデル化するために一般的に使用されます [7、36、63、41、57、59、60]。フレーム内のすべての関節の 3D 座標が、タイムスロットの入力ベクトルとして特定の順序で連結されます。これらは、どの次元がどのジョイントに属するかをネットワークに明示的に伝えません。他の RNN ベースの研究では、空間構造情報を理解できるようにするために、RNN に特別な構造を設計する傾向があります。Shahroudy らは、LSTM モジュールを、胴体、腕、脚の 5 つの体の部分に対応する 5 つのサブモジュールに分割しました [36]。Liu らは、時間領域と空間領域における関節のコンテキスト依存性を利用するための時空間 LSTM モデルを提案しました [27]。これにより、各ステップでさまざまな種類の関節に関する情報が提供されます。ある意味、それらはさまざまな関節を区別します。
** 畳み込みニューラル ネットワークに基づいています。**近年、音声および言語シーケンス モデリングの分野では、畳み込みニューラル ネットワークが精度と並列性の両方で優れていることが示されています [34、10、53、48、45]。同じことがスケルトンベースのアクション認識にも当てはまります [6、22、18、3]。これらの CNN ベースの研究では、スケルトン シーケンスをオブジェクトサイズのスケルトン マップに変換し、ResNet [12] などの一般的なネットワークを使用して時空間ダイナミクスを調査します。関節座標 (x、y、z) をピクセルの R、G、B チャネルとして扱うことにより、スケルトン シーケンスを画像に変換する作品もあります [6, 22]。Ke らは、スケルトン シーケンスを、選択された 4 つの基準関節 (つまり、左/右肩、左/右股関節) と他の関節の間の相対位置で表される 4 つの 2D 配列に変換しました [18]。スケルトンは、明確な高レベルのセマンティクス、つまりフレーム インデックスとジョイント タイプを備えた、適切に構造化されたデータです。ただし、CNN のカーネル/フィルターは変換不変 [32] であるため、そのような入力スケルトン マップからセマンティクスを直接認識することはできません。CNN は、ディープネットワークの大きな受容野を通じてこのセマンティクスを認識したいと考えていますが、これはあまり効果的ではありません。
グラフ畳み込みネットワークに基づいています。グラフ畳み込みネットワーク [21] は、構造化データを処理するための効果的な方法であることが証明されており、構造化スケルトン データのモデル化にも使用されています。ヤンら。時空間グラフ畳み込みネットワークを提案した [54]。各ジョイントをグラフのノードとして扱います。関節関係を表すエッジの存在は、事前の知識に基づいて人間によって事前に定義されます。事前定義されたグラフを強化するために、Tang et al. は、グラフの構築を改善するために物理的に切断されたジョイント ペアと接続されたジョイント ペアのエッジを定義しました [44]。SR-TSL モデル [40] は、人体の定義を利用するのではなく、データ駆動型アプローチを使用して各フレーム内の 5 つの人体の部分のグラフ エッジを学習することが提案されています。2 ストリーム GCN モデル [37] は、非ローカル ブロックに基づいてコンテンツ適応グラフを学習し、それを使用して GCN 層でメッセージを渡します。ただし、グラフ エッジや GCN のメッセージ パッシングの学習には情報セマンティクスが利用されないため、ネットワーク効率が低下します。
セマンティック情報の明示的な探索。セマンティクスの明示的な探索は、機械翻訳 [45] や画像認識 [62] などの他の分野でも活用されています。Ashishらは、機械翻訳タスクでシーケンスの順序を利用するために、シーケンス内のマーカーの位置を明示的にエンコードしています[45]。Zheng らは、グループの順序情報を保存するために、グループ インデックスを畳み込みチャネル表現にエンコードしています [62]。ただし、スケルトンベースのアクション認識では、ジョイント タイプとフレーム インデックスのセマンティクスは無視されますが、そのような情報は非常に重要です。私たちの研究では、空間的および時間的な身体構造に関する重要な情報を保存するために、関節タイプとフレーム インデックスを明示的にエンコードすることを提案します。この意味論を探求する最初の試みとして、これが関連する学術コミュニティでのさらなる調査と探索を促すことを期待しています。

3. セマンティックガイド付きニューラルネットワーク

スケルトンシーケンスの場合、そのセマンティックを渡します。(ジョイントタイプとフレームインデックス)関節を識別し、そのダイナミクス (位置/3D 座標と速度) とともに表現します。セマンティクスがなければ、スケルトン データは重要な時空間構造を失います。ただし、以前の CNN ベースの研究 [18、6、58] では、通常、2D スケルトン マップ (たとえば、さまざまなタイプのジョイントに対応する行やフレーム インデックスに対応する列) でセマンティクスを暗黙的に隠すことによってセマンティクスを無視しています。我々は、スケルトンベースのアクション認識のためのセマンティックガイド付きニューラルネットワーク(SGN)を提案し、全体的なエンドツーエンドのフレームワークを図2に示します。これは、ジョイントレベルのモジュールとフレームレベルのモジュールで構成されます。このフレームワークの詳細については、次のサブセクションで説明します。
具体的には、骨シーケンスの場合、すべての関節を集合として表します
S = { X tk ∣ t = 1 , 2 , . . . t : k = 1 , 2 , 3 , . . . J } \mathbf S = \{ \ mathbf X_t^k |t= 1,2, ...t:k =1,2,3,...J\}S={ Xt∣t _=1 2 t:k=1 2 3 . . . J }
ここで、X tk \mathbf X_t^kバツt時刻 t におけるタイプ k の関節を示します。t はスケルトン列のフレーム番号を表し、J はフレーム内の人体の関節の総数を表します。与えられた時間 t に対して、k 関節X tk \mathbf X_t^kバツt、そのダイナミクスとセマンティクスによって識別できます。運動学は関節の 3 次元位置に関連しています。セマンティクスは、フレーム インデックス t とジョイント タイプ k を指します。

3.1 動的表現

特定のジョイントX tk \mathbf X_t^kに対してバツt、位置 pt を渡します。 k = ( xk , t , yt , k , zt , k ) T ∈ R 3 、 \mathbf p_{t,k} = (x_{k,t}, y_{t,k} , z_{t,k})^T \in \mathbb R^3,pt k=( ×k tyt kzt k)TR3、 は 3 次元座標系でそのダイナミクスを定義し、速度vt 、 k = pt 、 k − pt − 1 、 k v_{t,k} = p_{t,k} - p_{t-1, k }vt k=pt kpt 1 , k位置と速度を同じ高次元空間、つまり P t , k ~ ie,\widetilde{P_{t,k}}にエンコード/埋め込みます。私はe Pt k vt , k ~ \widetilde{v_{t,k}}vt k そして、 zt , k = pt , k ~ + vt , k ~ ∈ RC 1 ( 1 ) z_{t,k} = \widetilde{p_{t,k} } +\widetilde{v_ {t, を合計することでそれらを融合しますk}} \in \mathbb R^{C_1} (1)zt k=pt k +vt k RC1( 1 )ここでC 1 C_1C1ジョイント表現のサイズです。位置の埋め込みを例として、2 つの完全接続 (FC) 層を使用して位置pt 、 k p_{t,k} をエンコードします。pt kpt , k ~ = σ ( W 2 ( σ ( W 1 pt , k + b 1 ) ) + b 1 ) , ( 2 ) \widetilde{p_{t,k}} = \sigma (W_2(\sigma(W_ {1}p_{t,k} + b_1)) +b_1),(2)pt k =s ( W2( p ( W1pt k+b1) )+b1( 2 ) W 1 ∈RC 1 × 3 W_1\in \mathbb R^{C_1 \times 3}W1RC1× 3W 2 ∈ RC 1 × C 1 W_2\in \mathbb R^{C_1 \times C_1}W2RC1× C1は重み行列、b 1 b_1b1そしてb 2 b_2b2はバイアス ベクトルσ \sigmaσ はReLU 活性化関数 [33] を示します。同様に、速度埋め込みをvt , k ~ \widetilde{v_{t,k}}vt k

3.2 ジョイントレベルのモジュール

同じフレーム内のジョイントの相関関係を利用するジョイントレベルのモジュールを設計します。グラフ畳み込みネットワーク (GCN) を使用して、構造骨格データの相関関係を調査します。以前の GCN ベースの方法の中には、ジョイントをノードとして扱い、事前知識 [54] に基づいてグラフ接続 (エッジ) を事前に定義したり、コンテンツ適応グラフを学習したりするもの [37] があります。コンテンツ適応グラフも学習しますが、それとは異なり、ジョイント タイプのセマンティクスを GCN レイヤーに組み込んで、より効率的な学習を実現します。
2 つの側面からセマンティクスを最大限に活用することで、GCN レイヤーの機能を強化します。まず、ジョイント タイプのセマンティクスとダイナミクスを使用して、ノード内 (異なるジョイント) 間のグラフ接続を学習します。ジョイント タイプの情報は、適切な隣接行列 (つまり、ジョイント間の接続重み関係) を学習するのに役立ちます。2 つのソース ジョイント (足と手) と 1 つのターゲット ジョイントの頭部を例にとると、足と手のダイナミクスが同じであっても、足から頭への接続ウェイト値は手から頭への接続ウェイト値とは異なるはずです。 。第 2 に、ジョイント情報の一部として、ジョイント タイプのセマンティクスが GCN 層のメッセージ パッシング プロセスに参加します。
ワンホット ベクトルjk ∈ R d j_k \in\mathbb R^dを使用します。jRd は、 k 番目のジョイントのタイプ (k タイプとも呼ばれます) を表します。k 番目の次元は 1 で、他の次元はすべて 0 です。...の位置に似ています。k 番目のジョイント タイプの埋め込みをjk ~ ∈ R d \widetilde {j_k }\in\mathbb R^dj Rd .
骨格フレームワークの J ノードを考慮して、J ノード グラフを構築します。ジョイントのダイナミクスとセマンティクスを使用して、フレーム t でのジョイント タイプ k のジョイント表現タイプを次のように表します。zt = [ zt , k , jk ~ ] ∈ R 2 C 1 z_t = [z_{t,k},\widetilde { j_k }]\in \mathbb R^{2C_1}z=[ zt kj R2C _1このとき、フレーム t のすべての関節はZ t = ( zt , 1 ; . . ; zt , J ) ∈ RJ × 2 C 1 Z_t = (z_{t,1};...;z_{t, J })\in\mathbb R^{J\times 2C_1}Z=( zt 1;;zt j)RJ × 2C _1特急。
[49, 48, 37] と同様に、同じフレーム t 内の i 番目のジョイントから j 番目のジョイントまでのエッジ重みは、次のように埋め込み空間内の類似性/類似性によってモデル化されます。 S t ( i , j ) = θ ( zt , i ) T Φ ( zt , j ) ( 3 ) S_t (i,j) = \theta(z_{t,i})^T\Phi(z_{t,j})(3 )S(j )=z) (z_t j) ( 3 )

ここで、θ と φ は 2 つの変換関数を表し、それぞれ FC 層によって実装されます。つまりθ ( x ) = W 3 x + b 3 ∈ RC 2 \theta(x)=W_3x+b_3\in\mathbb R^C2θ ( x )=W3バツ+b3RC 2Φ ( x ) = W 4 x + b 4 ∈ RC 2 \Phi(x)=W_4x+b_4\in\mathbb R^{C_2}Φ ( × )=W4バツ+b4RC2
(3) に基づいて同じフレーム内のすべての関節ペアの類似性を計算すると、隣接行列S t ∈ J × J S_t\in\mathbb J\times\mathbb J が得られます。SJ×J. AtS t S_tS[45,48] のように SoftMax を使用して各行に対して正規化が実行され、ターゲット ノードに接続されているすべてのエッジ値の合計が 1 になります。正規化された隣接行列を Gt で表します。正規化された隣接行列を Gt で表します。ノード間のメッセージの受け渡しは、残差グラフ畳み込み層Y t = G t Z t W y 、 Y_t=G_tZ_tW_y を使用して実現されます。Y=GZWはい, Z t = Y t + Z t W z ( 4 ) Z_t=Y_t+Z_tW_z(4)Z=Y+ZWz( 4 )ここで、Wy と Wz は変換行列です。異なる時間枠では、重みマトリックスが共有されます。Z0t は出力です。同じ隣接行列 Gt を持つノード間でさらにメッセージを渡すために、複数の残差グラフ畳み込み層をスタックできることに注意してください。

3.3 フレームレベルのモジュール

フレーム間の相関を利用するフレームレベルのモジュールを設計します。ネットワークにフレームの順序を知らせるために、フレーム インデックスのセマンティクスを追加して、フレームの表現能力を強化します。
ワンホット ベクトルft ∈ R df f_t\in\mathbb R^{d_f}を使用します。fRdフレームインデックスを表します。式 (2) の位置エンコーディング (2) と同様です。フレーム インデックスの埋め込みをft ~ ∈ RC 3 \widetilde{f_t}\in\mathbb R^{C_3}として取得します。f RC3フレーム インデックスのセマンティクスと学習された特徴を使用して、フレーム t での関節タイプ k に対応する関節表現をzt 、 k ' = zt 、 k ' + ft ~ ∈ RC 3 z^{'}_{t, k}=z^{'}_{t,k}+\widetilde{f_t}\in\mathbb R^{C_3}zt k=zt k+f RC3,其中zt , k ′ = Z t ′ ( k , : ) z^{'}_{t,k}=Z^{'}_{t}(k,:)zt k=Zt( k ,:
フレーム内のすべてのジョイントの情報を結合するには、空間 MaxPooling レイヤーを適用してジョイント全体で情報を集約します。したがって、このシーケンスの特徴次元は T×1×C3 になります。2 つの CNN レイヤーを適用します。最初の CNN 層は、フレーム間の依存関係をモデル化するための時間畳み込み層です。第 2 層 CNN は、カーネル サイズ 1 の高次元空間にマッピングすることで、学習された特徴の表現能力を強化します。2 つの CNN 層の後、時間的最大化層を適用してすべてのフレームの情報を集約し、C4 次元のシーケンスレベルの特徴表現を取得します。次に、分類を実行するための Softmax と完全に接続された層があります。

4. 実験

4.1 データセット

NTU60 RGB+D データセット (NTU60) [36]このデータセットは、56880 個のスケルトン シーケンスの 3D アクション認識のために Kinect カメラによって収集されます。40 の異なる被験者によって実行される 60 のアクション クラスが含まれています。人間の各骨格は 25 個の関節と 3D 座標 (J=25) で表されます。複数の被験者 (CS) 設定 [36] では、40 人の被験者のうち半分がトレーニングに使用され、残りがテストに使用されます。クロスビュー (CV) 設定 [36] の場合、3 台のカメラのうち 2 台でキャプチャされたシーケンスがトレーニングに使用され、もう 1 台のカメラでキャプチャされたシーケンスがテストに使用されます。[36] に従って、CS および CV 設定の検証のためにトレーニング シーケンスの 10% をランダムに選択します。
NTU120 RGB+D データセット (NTU120) [25]このデータセットは NTU60 の拡張です。最大の 3D 骨認識データセットは RGB+114D です。これには、106 人の異なる被験者によって実行される 120 のアクション クラスが含まれています。学際的な (C 科目) 設定では、106 科目の半分がトレーニングに使用され、残りがテストに使用されます。クロスセット (C セット) 設定の場合、セットの半分はトレーニングに使用され、残りはテストに使用されます。
SYSU 3D ヒューマン コンピュータ インタラクション データセット (SYSU) [15]これには、40 人の異なる被験者が 12 のアクションを実行する 480 個のスケルトンのシーケンスが含まれています。人間の各骨格には 20 個の関節があります (J=20)。[15] と同じ評価プロトコルを使用します。複数の被験者 (CS) 設定では、被験者の半分がトレーニングに使用され、残りがテストに使用されます。同一被験者 (SS) 設定の場合、各アクティビティのサンプルの半分がトレーニングに使用され、残りのサンプルがテストに使用されます。30 分割相互検証を使用し、各設定の平均精度を示します [15]。

4.2 実装の詳細

ネットワーク設定:動的表現(DR.)を取得するために、各 FC 層のニューロンの数は 64 に設定されます。(つまり、C1=64)。FC 層の重みは、位置と速度の共有重みではないことに注意してください。ジョイント タイプをエンコードするには、両方の FC 層のニューロンの数は 64 に設定されます。フレーム インデックスをエンコードするために、2 つの FC 層のニューロンの数はそれぞれ 64 と 256 に設定されます。C3=256(3) の変換関数では、各 FC 層のニューロンの数は 256、つまり C2=256 に設定されますジョイントレベルのモジュールでは、3 つの GCN 層のニューロンの数をそれぞれ128、256、256に設定します。名声レベル モジュールの場合、CNN の最初の層のニューロンの数を時間次元に沿ってカーネル サイズ 3 で 256 に設定し、CNN の 2 番目の層のニューロンの数をカーネル サイズ 3 で 512 に設定します。 1 の値 (つまり、C4 = 512)。各 GCN または CNN 層の後で、バッチ正規化 [16] と ReLU 非線形活性化関数が使用されます。
トレーニング:すべての実験は、P100 GPU カードを使用して Pytorch プラットフォームで実行されます。初期学習率 0.001 の Adam(20) オプティマイザーを使用します。学習率は、60 段階、90 段階、110 段階でそれぞれ 10 分の 1 に減衰します。トレーニングは 120 エポックで終了します。0.0001 のウェイト減衰を使用します。NTU60、NTU120、SYSU データセットのバッチ サイズは、それぞれ 64、64、16 に設定されています。すべての実験ではラベル平滑化 [13] を使用し、平滑化係数を 0.1 に設定しました。分類のためのクロスエントロピー損失は、ネットワークのトレーニングに使用されます。
データ処理[57] と同様に、最初のフレームに基づくシーケンスレベルの変換は、初期位置に対して不変になるように実行されます。フレームに 2 人の人物が含まれている場合、各フレームに人間のスケルトンが含まれるようにして、フレームを 2 つのフレームに分割します。[27] に従って、トレーニング中に、スケルトン シーケンス全体を平均 20 のセグメントに分割し、各セグメントからフレームをランダムに選択して、20 フレームの新しいシーケンスを取得します。[2] と同様に、テスト中に、同様の方法で 5 つの新しいシーケンスをランダムに作成し、平均スコアを使用してクラスを予測します。
トレーニング中に、変化を表示する堅牢性を維持するために、シーケンス レベルで 3D スケルトンをある程度までランダムに回転させることによってデータの位置調整を実行します。NTU60 (CS 設定)、NTU120、および SYSU データセットの場合、[−17◦, 17◦] のシーケンスがあります。NTU60の見え方が大きく変わること(CV設定)を考慮して、[−30◦、30◦]に設定しました。

4.3 アブレーション実験

4.3.1 セマンティクスの有効性の活用

セマンティクスには、スケルトン シーケンスの重要な構造情報が含まれており、スケルトン ベースのアクション認識にとって非常に重要です。セマンティクス活用の有効性を実証するために、私たちのフレームワーク (図 2 を参照) を参照して、8 つのニューラル ネットワークを構築し、NTU60 データセットに対してさまざまな実験を行います。比較結果を表1に示す。以下では、JT はジョイント タイプのセマンティクスを示し、FI はフレーム インデックスのセマンティクスを示し、G はグラフ (隣接行列) の学習を示し、P は情報伝達を可能にするグラフ畳み込み演算を示します。T-Conv は、フレーム レベル モジュールの最初の CNN 層である時間畳み込み層を表します。ジョイントレベル (JL) モジュールとフレームレベル (FL) モジュールは、それぞれ 3 つの GCN レイヤーと 2 つの CNN レイヤーを使用します。w と w/o はそれぞれ「あり」と「なし」を意味します。ジョイントタイプの利用可能性を活用してください。ジョイント レベル モジュール (JL) でのジョイント タイプの有効性を検証するために 4 つの設計モデル (表 1 の行 1 ~ 4) を研究しました。4 つのモデルすべてに時間インデックスのセマンティクスは含まれていません。ここでは 1 つのモデルについて説明しますが、他の 3 つのモデルも同様に理解できます。
表1
表 1: NTU60 データセット上のジョイント レベル モジュール (JL) およびフレーム レベル モジュール (FL) における精度 (%) の観点からみたセマンティクス活用の有効性。JT はジョイント タイプを示し、FI はフレーム インデックスを示します。
JL(G w/o JT&P w/o JT)&FL」は、ジョイント タイプのセマンティクスがグラフ (G) (つまり G w/o JT) の学習にも使用されず、情報転送 (P) (つまり P) にも使用されないことを示します。 JT なし) によるグラフ畳み込み演算のスキームには、
次の 3 つの重要な観察結果があります。

  1. 骨格シーケンス グラフの学習では、ジョイント タイプのセマンティクスを導入することにより、CS およびCV 設定はそれぞれ、0.6% と 0.9% が良好です。直感的には、モデルがジョイントのタイプを認識していない場合、たとえセマンティクスが異なっていても、同じ座標を持つジョイントを区別することはできません。ジョイント タイプのセマンティクスにより、グラフ エッジの学習が容易になります。
  2. ジョイント タイプ情報により、GCN レイヤーでのメッセージ パッシングが容易になります。CS および CV 設定では、「JL(G w/o JT&P w/JT)&FL」が「JL(G w/o JT&P w/o JT)&FL」をそれぞれ 1.7% および 1.3% 上回りました。その理由は、GCN自体が関節の順序(種類)を知らないため、構造情報の高いスケルトンデータの特徴を学習することが困難であるためです。たとえば、メッセージ パッシング中に 2 つのジョイントの 3D 座標が同じであっても、足のジョイントと手首のジョイントからターゲット ジョイントへの情報は異なるはずです。ジョイントタイプ情報を導入することで、GCN の効率を向上させることができます。
  3. 学習グラフとメッセージ パッシングの両方にジョイント タイプのセマンティクスを使用する (「JL(G w JT & P w JT) & FL」) ことは、「JL(G w /o JT & P w JT) & FL」と比較してそれ以上の利点はありません。 ” 。Equ Yt=GtZtW で渡すメッセージの場合。(4) Gt に逆伝播される勾配は、ジョイント タイプ情報を含む Zt の影響も受けます。実際、類似性/類似性学習に関節タイプ情報を含めなくても、Gt は暗黙的に関節タイプ情報を知っています。

フレーム インデックスの活用の有効性:
フレーム レベル モジュール (FL) の効果に対するフレーム インデックスの影響を調べるために、2 つのモデル (表 1 の行 5 と 6) を調査します。「JL&FL (w/o T-Conv) w FI」は、フレーム インデックス セマンティクスを使用するモデルを示します。どちらのモデルにもジョイント タイプのセマンティクスが組み込まれています。
さらに、カーネル サイズ 3 で時間畳み込みを使用する場合のフレーム インデックスの影響を調査するために、2 つのモデル (表 1 の行 7 と 8) を調査します。「JL&FL(w T-Conv) w FI」は、フレーム インデックス セマンティクスを使用するモデルを示します。どちらのモデルにもジョイント タイプのセマンティクスが組み込まれています。
ここでは主に 2 つの観察結果があります。

  1. 時間畳み込みが無効な場合 (つまり、フィルター カーネル サイズが 3 ではなく 1)、CS および CV では、「JL&FL(w/o T-Conv) w FI」の方が「JL&FL(w/o T-Conv) w FI」よりも優れています。 「FI なし」の方が 1.0% と 0.9% 優れています。フレーム インデックス情報は、ネットワーク スケルトン シーケンスのフレーム順序を「伝える」ため、アクションの認識に役立ちます。
  2. フレームのインデックス付けにより、時間的な畳み込みが容易になります。CS および CV 設定では、「JL&FL(w T-Conv) w FI」は「JL&FL(w T-Conv) w/o FI」よりそれぞれ 0.3% および 0.4% 優れています。フレーム インデックスのセマンティクスによってもたらされる利点は、時間ループのないモデル (フィルター カーネル サイズ 1) の利点よりも小さくなります。主な理由は、時間畳み込み層により、より大きなカーネル サイズを通じてネットワークがスケルトン シーケンスのフレーム順序をある程度理解できるようになるためです。ただし、フレーム インデックス作成のセマンティクスをネットワークに明示的に「伝える」と、無視できるコストでパフォーマンスがさらに向上します。最終的なスキームとして「SGN」とも呼ばれる「JL&FL(w T-Conv) w FI」スキームを採用します。

要約すると、結合タイプ情報の明示的なモデリングは、GCN 層での隣接行列の学習とメッセージ パッシングに有益です。フレーム インデックス情報により、モデルはシーケンス順序情報を効果的に利用できます。

4.3.2 階層モデルの有効性

ジョイントレベルのモジュールとフレームレベルのモジュールでジョイントの相関関係を階層的にモデル化します。その有効性を実証するために、SGN を 2 つの異なるモデルと比較しました。その結果を表 2 に示します。

「SGN w G-GCN」は、空間最大プーリング層 (SMP) を削除し、組み合わせたセマンティクス (つまり、ジョイント タイプとフレーム インデックス) とダイナミクス (位置と速度) を使用する非階層スキームを示します。フレームごとにグラフを構築する代わりに、すべてのフレームのすべてのジョイントを含むグローバル適応グラフを構築し、すべてのジョイント間でメッセージを渡します。「SGN w/o SMP」は、スキーム「SGN」で空間 MaxPooling 層 (SMP) が削除されていることを意味し、次の 2 つの
観察結果が得られます。
ここに画像の説明を挿入
表 2: NTU60 データセットに関する階層モデルの精度 (%) (%)効果。

  1. GCN を使用して同じフレーム内でノードの依存関係をモデル化することは、すべてのフレームでノードの依存関係をモデル化するよりもはるかに効率的であり、「SGN w/o SMP」は CS 設定と CV 設定で「SGN w/G-GCN」よりも優れたパフォーマンスを発揮します。「1.0% および 0.6」 %。グローバル コンテンツ アダプティブ グラフの学習はより複雑で困難です。
  2. CS および CV 設定では、「SGN」は「SMP なしの SGN」よりもそれぞれ 0.7% および 0.6% 優れています。MaxPooing(SMP)によりフレーム内の全関節の情報を集約することで、そのフレームの代表的な(活性値が大きい)識別情報を抽出することができます。さらに、空間 MaxPooling レイヤーにより、その後の計算負荷が軽減されます。

4.3.3 強力なベースライン

以前の研究では通常、低次元のスケルトン シーケンスをモデル化するために重いネットワークが使用されていました [40、39、37、58]。私たちは、これまでの研究で非常に効果的であることが示されているいくつかの手法を開発し、他のほとんどの最先端の手法と同等のパフォーマンスを達成する軽量で強力なベースラインを確立します [40、57、54、8] 。これがスケルトンベースの行動認識分野における将来の研究の強固な基盤となることを願っています。このセクションでは、すべてのモデルがセマンティクスを使用するわけではありません。
まず基本的なベースライン (「ベースライン」) を構築します。パイプライン全体は図 2 のパイプラインと似ています。違いは 3 つあります。1) 速度、ジョイント タイプ、フレーム インデックス情報は使用されません。2) データ拡張 (DA) はトレーニング中に採用されませんでした (データ処理を参照)。3) Maxpooling の代わりに AveragePooling を使用します ([54, 37] など)。

表 3 は、強力なベースラインの構築に対する、採用した手法の影響を示しています。以下の 3 つの観察が得られます。1) データ拡張により、CV 設定のパフォーマンスが大幅に向上します。観察されたビューを拡張することにより、トレーニング中にいくつかの「見えない」ビューを「見る」ことが可能になります。2) 2 つのフロー ネットワーク (位置と速度の両方を使用) [40] が効果的であることが示されていますが、2 つの別個のネットワークではパラメーターの数が 2 倍になります。これら 2 種類の情報を初期段階 (入力) で融合し、ほんの少数の追加パラメーター (つまり 0.01M) だけで、パフォーマンスを大幅に向上させることができます。3) MaxPooling は AveragePooling よりもはるかに強力です。その理由は、MaxPooling が注意モジュールのように機能し、識別特徴の学習と選択を促進するためです。
ここに画像の説明を挿入
表 3: NTU60 データセットのパラメーターの精度 (%) と数に対する特定の手法の影響。

4.3.4 SMPの可視化

空間最大化プーリング (SMP) は、アテンション メカニズムと同様の役割を果たします。選択した関節を SMP を介して 3 つのアクション (拍手、蹴り、敬礼) として視覚化します (図 3)。応答のサイズは 256 で、各サイズは選択したジョイントに対応します。SMP が各ジョイントを選択した回数を数えます。選択された最初の 5 つのジョイントは大きな青い円で表示され、残りのジョイントは小さな青い円で表示されます。さまざまなアクションがさまざまな情報を提供するジョイントに対応していることがわかります。キックには左足が重要です。敬礼は左手のみですが、拍手は左右両方の手で行います。これは人間の認識と一致しています。
ここに画像の説明を挿入
図 3: 拍手、蹴り、敬礼の 3 つのアクションに対する空間 MaxPooling レイヤーの応答の視覚化。SMP によって選択された最初の 5 つのジョイントは、大きな青い円で描画されます。

4.3.5 SGN の複雑さ

SGN を 8 つの最先端のスケルトンベースのアクション認識方法と比較することで、SGN の複雑さについて説明します。図 1 に示すように、VA-RNN [58] はパラメータの数が最も少ないですが、精度は最悪です。VA-CNN [58] と 2s AGCN [37] は良好な精度を実現しますが、パラメーターの数が多すぎます。RNN、GCN、および CNN ベースの手法と比較して、私たちが提案する SGN は、より少ないパラメータでわずかに優れたパフォーマンスを達成するため、限られた計算能力を持つ多くの実用的なアプリケーションにとって SGN は魅力的です。
ここに画像の説明を挿入
図 1: NTU60 でのさまざまなメソッドの精度とパラメータ数の比較 (CS 設定)

提案された SGN モデルは、一桁小さいモデル サイズで最高のパフォーマンスを達成します。

4.4 最先端技術との比較

提案された SGN を、それぞれ表 4、表 5、表 6 で NTU60、NTU120、SYSU データセットに関する他の最先端の手法と比較します。「SGN w/o Sem.」は、セマンティックを使用しない強力なベースラインを示します。

表 4 に示すように、セマンティック導入 (Sem.) CS および CV 設定により、精度がそれぞれ 2.1% および 1.7% 向上しました。「ElAtt GRU」[59]と「Clips+CNN+MTLN」[18]は、それぞれ RNN ベースと CNN ベースの 2 つの代表的な方法です。CS 設定の場合、SGN は精度でそれぞれ 8.3% と 9.4% 優れています
ここに画像の説明を挿入
表 4: 精度 (%) による CS および CV 設定による NTU60 の性能比較

ここに画像の説明を挿入
表 5: CSubject および C-Setup 設定を使用した NTU120 の精度 (%) のパフォーマンス比較。

骨の構造情報をより詳しく調査します。いくつかの方法 [54、40] は、CNN と GCN、または LSTM と GCN を一緒に混合します。CS 設定に関しても、私たちが提案する SGN は精度において [54] と [40] をそれぞれ 5.5% と 4.2% 上回っています。図 1 に示すように、[37] および [58] と比較して、本論文で提案する SGN はパラメータ数が 10% しかないにもかかわらず、競合するパフォーマンスを達成しています。

表 5 および表 6 に示すように、提案された SGN は NTU120 および SYSU 上で最高の精度を達成します。NTU120 データセットは新しくリリースされたデータセットであり、[25] で報告された結果と比較します。セマンティック (sem) C-Subject および C-Setup 設定により、精度がそれぞれ 1.8% および 2.3% 向上します。
ここに画像の説明を挿入

5。結論

この研究では、高性能のスケルトンベースの人間の行動認識のための、シンプルかつ効果的なエンドツーエンドの意味論的に誘導されたニューラル ネットワークを提案します。高レベルのセマンティクス、つまりジョイント タイプとフレーム インデックスをネットワーク入力の一部として明示的に導入します。ジョイントの依存関係をモデル化するために、同じフレーム内のジョイントの依存関係をキャプチャするジョイント レベルのモジュールと、すべてのジョイントが全体として考慮されるフレーム間の依存関係をモデル化するフレーム レベルのモジュールを提案します。セマンティクスは、GCN と CNN の機能の向上に役立ちます。さらに、以前のほとんどの方法を上回る強力なベースラインを策定します。以前のいくつかの研究と比較して、私たちが提案するモデルのサイズは一桁小さく、3 つのベンチマーク データセットで最先端の結果が得られます。

おすすめ

転載: blog.csdn.net/qq_43679351/article/details/124837856