Alleviating Over-segmentation Errors by Detecting Action Boundaries | ASRF | 논문 정리 | Action Segmentation

bolim·2022년 3월 4일
0

Paper

목록 보기
5/8

Alleviating Over-segmentation Errors by Detecting Action Boundaries

Author: AIST, Keio Univ., Yuchi Ishikawa
Reading date: February 26, 2022
Submitted date: July 14, 2020
Summary: ASRF
Type: Paper

Abstract & Introduction

ASRF - Action Segment Refinement Framework

모델은 long-term feature extractor와

2개의 branch( the Action Segmentation Branch (ASB) & the Boundary Regression Branch (BRB))로 구성되어있다.

Long-term feature extractor는 공유된 feature들을 넓은 temporal receptive field와 함께 2개의 branch에 제공한다.

ASB는 action classes를, BRB는 action boundary probabilities를 예측한다.

ASB에서 나온 output들을 BRB의 예측한 action바운더리를 이용하여 refine한다.

둘은 서로 보완해주는 관계로 action segmentation에서 조심해야할 over-segmentation error를 줄여준다.

  1. ASRF로 frame별 action classification하고 action boundary regression을 한다.
  2. action 변환인 smoothing하게 loss function을 정의한다.
  3. 3개의 데이터셋(50 Salads, GTEA, Breakfast dataset)에 SOTA 달성

Related Work

action segmentation 모델들의 흐름 등을 설명하였는데 이후 Action Proposal Generation에 대하여 나왔다.

이 분야는 생소해서 유의깊게보았다. 2가지 타입의 접근이 있는데 하나는 anchor-based와 anchor-free approaches이다.

이 논문 모델은 anchor-free approaches에서 영감을 받아 action boundary regression network를 추가적으로 사용하였다.

Our Proposed Method

  1. Long-term feature extractor

  2. 2 branched

    1. ASB : Action Segmentation Branch
    2. BRB : Boundary Regression Branch

    2개의 브랜치 모두 features를 입력으로 받고 frame-level action predictions, action boundary probabilities를 아웃풋으로 내보낸다.

Long-term Feature Extractor

목적 : action segments사이 long-term depedencies를 잡아내고 rich features를 추출하는 것

XRTDX^’ \in \mathbb{R}^{T*D^’}

dilated residual layer가 있는 TCN을 사용하였다. 그래야 full temporal resolution과 넓은 receptive field로 컨볼루션 연산을 할 수 있기 때문이다.

long-term depedencies를 잡아내고 이후 브랜치들에 공유되는 피처들을 추출한다.

논문에서는 각 0.5비율의 dropout layer가 붙고 64개의 필터가 있는 10 dilated residual layers, 그리고 dilation rate는 매번 residual conv마다 2배씩 늘어난다.

Action Segmentation Branch

목적 : frame-wise action classes C 를 예측하는 것

1D convolutional layer와 softmax를 사용한다. 그러나 여기서 over-segmentation error가 잘 발생하기 때문에 multi-stage architecture를 추가했다.

첫 레이어에서는 XX^’를 입력으로 받아 첫 predictions 결과를 내고 이후 레이어에서 이를 계속 refine하는 과정을 거친다.

이러한 구조는 over-segmentation 에러를 막으면서 temporal depedencies를 알아내고 action segments를 예측하기에 좋다.

논문에서는 각 stage는 커널 사이즈가 1, 64개의 필터를 가진 single temporal convolution, 10 dilated residual convolutions, 그리고 feature dimenstion을 action 클래스 크기까지 감소를 위한 다른 temporal convolution을 포함한다.

첫 prediction이후 stage는 3개

Boundary Regression Branch

몇몇 TCN들로 부터 action segmentation 성능을 좋게 만들수 있지만, 여전히 over-segmentation 문제가 남아있다.

목적 : action boundary probabilities 예측 (0 ~ 1)

→ action class에 상관없이 시작과 끝인지 아닌지,

나중에 결과를 refine하는 과정에서 사용된다.

클래스를 알고 학습하는 방법보다 이렇게 클래스에 상관없이 진행하는 BRB는 taining data를 훨씬 적게 필요로하고 robustness를 향상시킨다.

Refining Action Segmentation Results

ASB로 부터 class결과 C를 action boundary probabilities PbP_b를 이용하여 refine한다.

  1. PbP_b로 부터 action boundaries(B0,1TB \in {0, 1}^T) 결정

  2. B를 frame-level prediction으로 정의한다.

    B : action boundary에 대한 prediction

Loss function

frame별 action 예측 결과와 action boundary 예측결과 이렇게 ASB, BRB에서 2개의 아웃풋이 나오기 때문에 loss도 2개에 대한 loss를 합한다.

L=Lasb+λLbrbL = L_{asb} + \lambda L_{brb}

논문에서는 GTEA에서는 λ\lambda를 0.2, 50 Salads와 Breakfast dataset에서는 0.1로 설정하였다.

Loss function for ASB

분류문제에서 자주 사용하는 cross-entropy loss를 사용한다.

Lce=1Ttlog(yt,c)L_{ce} = \frac{1}{T}\sum_t - log(y_{t,c})

그러나 이 방법은 temporal transtion에 대한 제재가 없기 때문에 over-segmentation을 막기에는 부족하다.

그래서 추가적은 Truncated Mean Squared Error(TMSE)를 사용하였다.

LTMSE=1TNt,cΔ~t,c2L_{TMSE} = \frac{1}{TN}\sum_{t,c}\tilde{\Delta}^2_{t,c}

Δ~t,c=(Δt,c:Δt,cγγ  :otherwise)\tilde{\Delta}_{t,c} = \binom{\Delta_{t,c}: \Delta_{t,c} \leq \gamma}{\gamma \; : otherwise}

Δt,c=logyt,clogyt1,c\Delta_{t,c} = |log \, y_{t,c} - log \, y_{t-1,c}|

T : video길이, N : 클래스 개수, γ\gamma : probabilities transition 에 대한 threshold

2개의 다른 Loss 함수.

  1. class weight에 대한 cross entropy loss Lce,cwL_{ce,cw} - action segment가 얼마나 자주 바뀌는지

    학습시키는 동안 imbalance하기 때문에 median frequency balancing(각 class별 가중치를 계산하여 class frequency의 median으로 나눈다.)을 사용한다. 이후 실험에서 Focal Loss와 비교한다.

  2. TMSE를 변형시킨 Gaussian Similarity-weighted TMSE(GS-TMSE) - TMSE는 프레임 사이 action probabilities transition을 smooth하기 위해 모든 프레임에 불이익을 준다. 그러나 이렇게 하면 실제로 바뀌어야할 부분에도 불이익을 준다.

    이 부분을 해결하기 위해 가우시안 커널을 추가한다.

    LGSTMSE=1TNt,cexp(xtxt122σ2)Δ~t,c2L_{GS-TMSE} = \frac{1}{TN}\sum_{t,c}exp(-\frac{||x_t-x_{t-1}||^2}{2\sigma ^2})\tilde{\Delta}_{t,c}^2

    xtx_t: frame t의 similarity 인덱스 , σ\sigma : 분산

    가우시안 커널은 프레임의 similarity를 기반으로 하기 때문에, 이 함수는 비슷한 weight인데 큰 차이가 있는 근접한 프레임에 불이익을 준다.

    논문에서는 σ=1.0\sigma =1.0으로 맞췄다.

ASB에서 각 prediction의 loss function →

Las=Lce+LGSTMSEL_{as} = L_{ce} + L_{GS-TMSE}

ASB에서 각 prediction loss의 평균 →

Lasb=1NasiLas,iL_{asb} = \frac{1}{N_{as}}\sum_{i}L_{as,i}

NasN_{as}: ASB에서 predictions 수 ( 논문 프레임워크에서는 4 )

Loss Function for BRB

Lbl=1Tt=1T(wpytlogpt+(1yt)log(1pt))L_{bl} = \frac {1}{T}\sum^{T}_{t=1}(w_py_t * log \, p_t + (1 - y_t) * log(1 - p_t))

yy,pty_y, p_t : frame t에 대한 ground truth, action boundary probability

  • action boundary의 프레임 수들이 다른 것들보다 매우 작기 때문에 wpw_p 양수 샘플들에 가중치를 둔다.
  • 양의 데이터 점 비율을 계산하고 이것의 역수를 가중치로 사용

그리고 ASB처럼 평균 →

Lbrb=1NbriLbl,iL_{brb} = \frac{1}{N_{br}}\sum_iL_{bl,i}

Experiments

Evaluation Metrics for action segmentation

  • frame-wise accuracy
  • segmental edit distance
    • Sedit(G,P)S_{edit}(G,P)
    • G(ground truth)와 P(predicted segments)사이의 차이 측정
  • segmental F1 score
    • class 별 평균낸다.
    • 분류 예측이 맞았는지(조건 : threshold보다 더 큰 IoU)
    • temporal shift와 상관 없음

Evaluation Metrics for Boundary Regression

  • action boundary regression
    • semantic segmentation의 boundary F1 score 참고
    • BgtB_{gt}: boundary인지 아닌지
    • PbP_b : 예측된 바운더리 확률 맵
    • BpredB_{pred} : frame별 예측(Pb,tP_{b,t}가 threshold를 넘고 local maximum)

  • I[]I[*] : indicator function
  • d()d(*) : L1 distance
  • 논문에서는 θb:5,  θp:0.5\theta_b : 5, \; \theta_p : 0.5로 설정

BF(BoundaryF1metric)=2PrecisionRecallPrecision+RecallBF(Boundary F1 metric) = \frac{2 * Precision * Recall}{Precision + Recall}

Learning Scheme

  • Adam optimizer - lr : 0.0005, bs:1
  • nested cross-validation

Comparing ASRF with the state-of-the-art

(d)에서 잘못된 예측값을 확인할 수 있는데

이는 ASB에서부터 잘못된 segment로 나오면 완전히 다른 segment로 재할당할 수 없다는 것을 보여주기도 한다.


Effect of our refining paradigm

BRB이외의 다른 postprocessing methods

  • Relabeling - 특정 시간 span이 θt\theta_t보다 짧으면 이전 segment로 relabel
  • Smoothing - 1D 가우시안 필터를 사이즈 K인 커널로 action probabilities smoothing
  • Similarity - frame별 유사도를 기반으로 예측된 action boundaries를 refinement, 이전 ASB loss에서도 유사성 측정했으며, 유사성이 local minimum인 action boundary

논문에서는 smoothing 방식은 ASRF보다 영향력이 적고, Similarity는 부정적인 영향을 끼치며, relabeling은 다른 두 방법들 보다는 좋지만 하이퍼파라미터 θt\theta_t의 영향을 많이 받기 때문에 ASRF 방식이 다른 방법들보다 우수하다고 한다.

Comparision with segment-level classifier

single TCN vs ASRF

Ablation Study

Effect of the number of stages

  • 각 네트워크 stage는 10 dilated convolutions & 2 convolutions (BRB와 같은)

3 stages가 가장 좋았다. 이상 넘어가면 오버피팅(특히 50 Salads dataset에서)

  • BRB의 precision이 낮아도 overdetected boundaries는 refinement를 여전히 잘 돕는다. 낮은 precision은 사람의 annotation과 action boundary의 모호함으로 인해 정밀하게 action boundary를 예측하기 어렵기 때문에 낮게 나온다.
profile
나는야 호기심 많은 느림보🤖

0개의 댓글