

YAML

```
---
title: "Two-Stream Adaptive Graph Convolutional Networks for Skeleton-Based Action Recognition"
title_ru: "Двухпотоковые адаптивные графовые сверточные сети для распознавания действий по скелету (2s-AGCN)"
authors: [Shi, Zhang, Cheng, Lu]
year: 2019
venue: "CVPR"
venue_tier: "A*"
doi: "10.1109/CVPR.2019.01230"
tags: [skeleton_gcn, motion_representation, biomech]
relevance_to_smartrep: 3
params: "~6.9M (сумма двух потоков)"
flops: "~32.4 GFLOPs (сумма двух потоков)"
---
```

# Двухпотоковые адаптивные графовые сверточные сети для распознавания действий по скелету

## TL;DR (≤3 предложения)

Статья предлагает развитие архитектуры ST-GCN за счет введения адаптивной топологии графа (устраняется зависимость от жестко заданного анатомического скелета) и использования двухпотоковой архитектуры (координаты суставов + векторы костей). Модель выучивает скрытые связи между пространственно удаленными, но функционально связанными суставами (например, кистями рук при хлопке). Метод значительно улучшил результаты на бенчмарках NTU-RGB+D и Kinetics, установив новый SOTA для 2019 года.

## Проблема

Существующие модели (например, базовая ST-GCN) опираются на фиксированный, эвристически заданный граф человеческого скелета. Это ограничивает способность сети моделировать действия, где активно взаимодействуют суставы, находящиеся далеко друг от друга в анатомическом графе. Кроме того, использование только 3D-координат суставов (first-order information) игнорирует важную структурную информацию о длине и направлении костей (second-order information).

## Гипотеза / вклад

- **Адаптивный граф:** Предложен механизм, позволяющий топологии графа обучаться end-to-end вместе с весами сверток, адаптируясь под конкретные выборки (data-dependent) и глобальные паттерны действий.
    
- **Двухпотоковая архитектура (Two-Stream):** Одновременное использование потока суставов (Joint Stream) и потока костей (Bone Stream) с последующим слиянием предсказаний (late fusion) дает существенный прирост в точности распознавания.
    
- Достижение новых SOTA результатов на NTU-RGB+D и Kinetics.
    

## Метод (Temporal Modeling)

Архитектура состоит из двух независимых потоков ST-GCN подобных сетей, выходы которых суммируются перед финальным Softmax.

1. **Как кодируется пространственная информация (spatial)?**
    
    Вместо фиксированной матрицы смежности используется сумма трех матриц: $A + B + C$.
    
    - $A$ — физическая анатомическая матрица (как в ST-GCN).
        
    - $B$ — глобальная обучаемая матрица (выучивает общие неявные связи для всего датасета).
        
    - $C$ — data-dependent матрица внимания, вычисляемая "на лету" через скалярное произведение (dot-product) признаков суставов текущего кадра (оценивает, насколько сильно два узла связаны в _конкретном_ движении).
        
2. **Как моделируется время (temporal: GCN, Attention, 1D/3D Conv, SSM)?**
    
    Как и в ST-GCN, время моделируется через применение стандартных 1D сверток (1D Conv) с окном $K_t \times 1$ вдоль временной оси $T$ после каждой пространственной графовой свертки.
    
3. **Как объединяются признаки?**
    
    Используется позднее слияние (Late Fusion). Два потока обучаются отдельно. На этапе инференса логиты (софтмакс скоры) от потока суставов и потока костей просто складываются.
    

## Вычислительная сложность и Edge-потенциал

Из-за двухпотоковой структуры модель фактически удваивает требования к вычислениям по сравнению с базовой ST-GCN (~6.9M параметров и ~32.4 GFLOPs на клип). Вычисление матрицы $C$ через self-attention добавляет небольшие накладные расходы. В текущем виде (без дистилляции двух потоков в один или квантизации) модель является **тяжелой** для запуска на маломощных edge-устройствах с высокой частотой кадров.

## Датасеты и метрики

|**Датасет**|**Домен (Спорт/Общее)**|**Метрика (Top-1)**|**Результат модели**|
|---|---|---|---|
|NTU RGB+D 60|Общее|Cross-Subject|88.5%|
|NTU RGB+D 60|Общее|Cross-View|95.1%|
|Kinetics-Skeleton|Общее|Top-1 / Top-5|36.1% / 58.7%|

## Сравнение с SOTA

2s-AGCN значительно превосходит ST-GCN (на +7% по метрике Cross-Subject на NTU RGB+D). Улучшение достигается в первую очередь за счет потока костей и способности адаптивного графа захватывать взаимодействия удаленных суставов (что критично для классов, где ST-GCN ошибалась, например, "чтение", "написание").

## Ограничения / слабости

- **Избыточность вычислений:** Позднее слияние двух тяжелых потоков неоптимально. Признаки суставов и костей могли бы обогащать друг друга на ранних этапах, что снизило бы общее число параметров.
    
- **Отсутствие временного внимания:** Модель фокусируется на улучшении пространственного графа, но использует базовые 1D свертки для времени. Она не умеет выделять наиболее важные кадры в длинной последовательности.
    

## Релевантность SmartRep

Идея **адаптивного графа** крайне релевантна. В силовых упражнениях биомеханическая правильность часто определяется взаимным положением не связанных напрямую суставов (например, сохранение вертикальной линии "штанга (кисть) - середина стопы" в становой тяге). Обучаемая матрица смежности (или механизм внимания между суставами) может помочь модели выучить эти геометрические соотношения автоматически, без ручного прописывания эвристик. Введение вектора костей также полезно для оценки углов сгибания.

## Gap для нас

- **Модель слишком тяжелая:** Двухпотоковая архитектура удваивает GFLOPs. Отсутствует механизм единого легковесного бэкбона (дистилляция двух потоков в edge-модель не рассматривается).
    
- **Игнорируется сегментация специфичных силовых фаз:** 2s-AGCN работает только в парадигме классификации целого обрезанного видеоклипа (action recognition).
    
- **Нет оценки техники:** Модель не отличает "верное" выполнение от "неверного" (не решает задачу AQA), а также не считает повторения (отсутствует рекуррентная логика или счетчик пиков).
    

## Ссылки на связанные статьи в литобзоре

- Базовый метод: [[ST-GCN]]
    
- Дальнейшее развитие топологии графа: [[CTR-GCN]]
    
- Временные трансформеры для подобных задач: [[VideoMAE]], [[PoseConv3D]]
    

## Код / данные

- Repo: [https://github.com/lshiwjx/2s-AGCN](https://github.com/lshiwjx/2s-AGCN)
    
- Pretrained: Да
    
- Отношение к нашим данным: Работает с 2D или 3D позами (берет последовательность координат $X, Y$ и confidence-скоры). Идеально подходит как надстройка над любым 2D pose estimator (YOLO-Pose, RTMPose).
    

## Цитата (BibTeX)

Code snippet

```
@inproceedings{shi2019two,
  title={Two-stream adaptive graph convolutional networks for skeleton-based action recognition},
  author={Shi, Lei and Zhang, Yifan and Cheng, Jian and Lu, Hanqing},
  booktitle={Proceedings of the IEEE/CVF conference on computer vision and pattern recognition},
  pages={12026--12035},
  year={2019}
}
```