논문을 무작정 읽어대서는 별 도움이 안 될지도 모른다. 이것은 단순히 논문을 읽는 스킬을 길러야 한다는 것이 아니다. 그보다는 이 논문을 바라보는 관점이 중요하다(from1:이 내용에 관점까지 모두 포함되어 있다). 모델보다 데이터가 훨씬 중요하다(from3)는 것은 다들 알고 있을테다. 우리는 우리 태스크에 딱 맞는 모델을 발굴해내는 사람이 아니다(참고1). 인공지능 모델 관련 논문을 읽을 때는 데이터를 다루는 방법을 배운다고 생각해야 한다(참고2). 마찬가지로, 인공지능 모델을 구현할 때에도(from2) 모델이 데이터를 더 잘 바라볼 수 있게 도와주는 연산들을 추가하기 위해 노력한다는 관점으로 바라보아야 한다(from5:그것이 데이터과학의 본질이다). 성능을 높일 때(from4)도 마찬가지이다. 그런데 이때 이들을 적용하려면 수식은 모르더라도 그 수식에 담긴 의미들을 온전히 이해하고 있어야 한다.
sigmoid 를 왜 쓸까? 그냥 단순히 모델 코드를 본다고 해서 뭐가 달라지지 않는다. 코드를 볼 때 뭔가 파라미터를 변경하려면 왜 이런 것들을 사용했는지 컨셉은 알아야 뭔가를 바꾸어 볼 것 같다. backbone 은 신체를 범용적으로 강화시키는 헬스라고 생각해 보자. 그럼 neck 은 상대방을 탐색하는 과정이고, head 는 실제 권투 대회에 나가서 상대와 싸우는 기술이다. 이때 neck 의 마지막 레이어에 relu 가 아니라 sigmoid 를 쓰는 것은, 더이상 head 로 정보를 보낼 때 버릴 피처들이 없다고 생각하기 때문이다.(참고3,참고5)
21:10, 왜 이것이 좋은 아이디어인가? 좋은 질문이다. 우리가 원하는 것은 segmentation 을 수행할 때 우리의 prediction 이 특히 경계 부분에서 작은 디테일도 살릴 수 있을 만큼 완벽했으면 좋겠다는 것이다. 하지만 max pooling 을 이용하면 receptive field 내부의 어디에서 왔는지를 모르기 때문에, 한편으로는 공간적인 정보를 잃어버리는 것이 된다. 그래서 이렇게 정보를 반영해 주는 것이 손실된 공간 정보 중 일부를 보존하는 데 도움이 될 수 있다고 생각할 수 있다.(참고4)
parse me : 언젠가 이 글에 쓰이면 좋을 것 같은 재료들.
- Text Detection 의 경우 BackBone Model을통해 Feature Extraction에서 얻는 정보량 보다 Neck, Head Operation 에서 얻는 정보량이 중요하다. 따라서 Backbone Model로 연산량이 많은 Transformer (E.g, Swin Transformer, Vision in Transformer) 과 연산량이 적은 ResNet50을 비교하는 경우 성능의 차이가 없다. 따라서 Backbone Model 은 ResNet50을 선택했다. 문자영역을 찾고 Resolution, Orientation을 기존의 Object Detection 에 강건한 Segmentation 기반의 모델인 FAST 를 사용했다. 특히 FAST 는 기존 Text Detector 의 성능과 추론속도 문제를 해결하기 위해 CPU 기반의 Hand Craft Post Processing 과 Neural Architecture Search 기법을 도입하여 보다 빠르고 강건하게 문자영역을 추출 할 수 있다. 추출된 문자영역은 Transformer 를 활용하여 문자인식을 수행했다.
from : 과거의 어떤 생각이 이 생각을 만들었는가?
- 2_1_3_2_1.1____2. [info] title: 학술논문을 효율적으로 읽는 방법
- 앞의 글에서는 학술논문 전반을 읽는 방법에 대해서 이야기했다. 이 글은 그중에서도 특히 인공지능 논문을 읽을 때 가져야 하는 태도를 이야기한다.
- ba2.3.9. title:
모델이 한방에 잘 작동하지 않는 것은 너무 당연한 일임을 인정하라. 개발을 잘개 쪼개 오류를 고립시킬 수 있는 모델 디버깅 및 모델 개발 전략을 수립해야 한다.
- ba2.4.4.1. title:
머신러닝 문제는 일관된 레이블의 데이터, 최고의 품질을 보증하는 것이 중요하다. 그 무엇이든 하기 전에 직접 최고의 레이블링을 해 보아라.
- ‣
- ‣
supplementary : 어떤 새로운 생각이 이 문서에 작성된 생각을 뒷받침하는가?
None
opposite : 어떤 새로운 생각이 이 문서에 작성된 생각과 대조되는가?
None