티스토리 뷰

Making Convolutional Networks Shift-Invariant Again

 

https://richzhang.github.io/antialiased-cnns/

 

Making Convolutional Networks Shift-Invariant Again.

R. Zhang. In ICML 2019.

richzhang.github.io

 

 

 Video에 대해 detection 모델 추론시켜보면 프레임 단위로 큰 차이가 없는 거 같은데 객체가 살짝 이동했다고해서, 혹은 코덱에 의해 발생하는 약간의 열화에도 결과값에 대한 변화가 굉장히 큰 경우를 자주 보곤했다. 뭐 이론적으로 배울때는 CNN이 Pooling에서 어쩌구 저쩌구..., Strided Convolution에서 어쩌구 저쩌구... 하면서 이동에 Robust하다고 말은 하는데 실제로 Real world 데이터를 처리해보면 항상 그렇지는 않은 거 같다. 그래서, 이 논문 저 논문 찾아보다가 흥미로워 보이는 논문을 발견해서 기록해둠. Pooling 될때, Strided Conv 거칠때 적절한 시점에 anti-aliasing을 해주면 모델이 더 shift에 robust해지지 않을까 라는 게 아이디어로 받아들여진다. 컴퓨터 비전, 신호처리 배웠으면 사실 머리 속으로 생각은 해봤을법한 내용 같은데 역시나 누가 예~전에 이미 해봤었다. 역시 기초가 탄탄해야지 이런 방법을 떠올리겠구나 싶다.

 

Detection 모델에 downsampling 되는 레이어에 이 기법 한 번 적용해보고 싶어졌다. 해봐야겠다!

 

 

관련된 다른 연구도 한 개 더 첨부함

 

Impact of Aliasing on Generalization in Deep Convolutional Networks

 

 

 

claude 한테 요약해보라고 했는데 잘하는 거 같다. 애용해야지

 

 

결론은 stride 2 이상인 conv 레이어 쪽에서 low-pass 필터를 적용시켜주면 좋다는 게 결론이다. 무지성으로 모든 레이어(all layers)에 넣으면 성능이 저하된다. (Baseline 76.49 vs all layers) 커널 사이즈도 3x3 정도면 충분하다.

 

alaising 이 발생할 수 있는 layer 부근에 적용해보면 될 거 같다.

 

 

 

 

트랜스포머도 관련 연구가 있다.

 

https://proceedings.neurips.cc/paper/2021/file/2b3bf3eee2475e03885a110e9acaab61-Paper.pdf

 

앨리어싱 보니까 대학교때 신호 처리 과목에서 나이퀴스트 이론 배운 거 생각난다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함