본문 바로가기
AIML 분야/Vision Transformer

[연구노트] CNN 안쓰는 3D Transformer를 만들어봤음 (for video action recognition)

by 포숑은 맛있어 2021. 2. 14.
반응형

잘 되었다면 아마 이 글을 안쓰고 논문으로 썼겠지. 음.

ViT 기반에다가 나름의 아이디어를 추가한거기 때문에 구현은 딱히 별거 없었음.

물론 추가 아이디어로 계획해놨던게 있고, 이걸로 개선이 있을 것으로 보이지만 초기 실험결과가 너무 슬펐기 때문에 실험을 더 하진 않을 것 같음. GPU가 모자라.

+ pretrained model을 직접 만드는 게 얼마나 끔찍한(?) 일인지 저번 연구로 알게되어서, 당분간 아키텍쳐를 직접 만드는 짓은 하지 않을 것 같다. 특히 비디오 데이터셋에서!

 

 

결과.

  • 내 실험에서는 CNN 아예 안씀.
    최근에 temporal GAP를 transformer로 대체한 연구는 있었는데, CNN을 아예 안쓴 연구는 아직까지 안보임.
  • 학습이 안 되지는 않음. 분명히 성능은 오르고 있다. SVW validation accuracy 50%정도 이후로는 안돌려봤음.
  • Pretraining 안했음. 남는 GPU가 없음!
  • UCF101, SVW dataset에서 실험해봤음.
    이번에 논문 제출했던 코드기반으로 3d transformer 모델만 추가한거라서 CNN 모델과의 비교는 확실함.
  • 연산 자체는 생각보다는 막 느리진 않음.
  • 수렴이 늦는다. 너무너무 늦음. 무슨 500 에폭이 돌았는데 training accuracy가 수렴을 안함?
  • learning rate을 올려버리면 아예 학습이 안되기때문에 낮춰놨는데 (대신 scheduler는 SGDR 씀)
    수렴이 느려서 학습이 되고 있는건지 그냥 이게 한계인지 알수가 없음.
    근데 수렴이 아직 덜된거라고 보는 게 맞는 것 같음. 찔끔찔끔 오름.
  • 그러니까 걍 CNN을 쓰자. CNN이 있는데 굳이 왜...?

 

더 만지진 않을 것 같아서 그냥 깃허브에 대충 올려놓을까 생각중임. 아니면 레딧에 물어볼까?

어떻게 해야 잘나올지 궁금하니까 누가 연구 좀 해줘...

반응형

댓글