no image
[Paper Review] FCOS, Fully Convolutional One-Stage Object Detection
이번에 리뷰할 논문은 바로 FCOS: Fully Convolutional One-Stage Object Detection 입니다. 이 논문은 2019년에 나왔으며, Anchor box 기반 검출기 만큼의 정확도를 달성하는 Anchor Free 기반 검출기의 baseline이 되는 논문이기 때문에 리뷰하게 되었습니다! (사실 CornerNet이 먼저이긴 하지만, CornerNet은 더 복잡한 post-processing 절차가 필요하다고 하네요!) 기존 객체 검출(Object Detection) 분야에서 대장을 이루었던 YOLO v3를 비롯하여 RetinaNet, SSD, Faster R-CNN 등의 객체 검출기들은 Anchor box를 사용하는데 비해, FCOS는 One-stage Detector이기 때..
2022.03.30
no image
[Paper Review] ResNet strikes back: An improved training procedure in timm
저번에 페이스북에서 ResNet strikes back: An improved training procedure in timm 이라는 논문이 나왔다는 게시글을 보고 논문을 살펴보았습니다. 이 논문은 pytorch-image-models github (a.k.a timm)의 원작자인 Ross Wightman의 논문입니다. Ross-Wightman-github 에 들어가보니 소개글에 아래와 같이 적혀있었습니다. 개인적으로 깊이 감명 받았습니다. 🤩 Always learning, constantly curious. Building ML/AI systems, watching loss curves. 아무튼, 이 논문은 모델을 학습하는데 있어서 기본적이면서도 유용한 테크닉들이 잘 소개되어 있으며, 제안하는 학습방법..
2022.03.30
no image
[Pose Estimation] Google Research의 MoveNet API
Google Research에서 TensorFlow.js 로 경량화된 자세 추정 모델인 MoveNet의 API를 공개하였습니다. 랩탑 환경에서도 30FPS 이상 달성한다고 합니다. 참고로 이를 기반으로 홈트레이닝 분야에 적용을 한 국내 논문 "딥러닝 기반 영상처리 기법 및 표준 운동 프로그램을 활용한 비대면 온라인 홈트레이닝 어플리케이션 연구"도 있네요. MoveNet은 17개의 keypoint를 감지하는 모델이며, 정확도에 초점을 맞춘 Thunder 버전과 속도에 초점을 맞춘 Lightning 버전을 제공하고 있습니다. 또한 JS 모델과 TF모델 및 TFLite모델(+ float16, int8)들을 제공하고 있습니다. 서버 호출 없이도 TensorFlow.js를 사용하는 브라우저에서 모델을 실행할 수 ..
2022.02.24
no image
[Paper Review] The PASCAL Visual Object Classes (VOC) Challenge
커스텀 데이터 세트를 구축하다가 과연 이 문제에 대해서 오픈 데이터 세트를 만드는 사람들은 고민을 안했을까? 당연히 했겠지? 🤯 그럼 논문을 읽어보자 해서 급 읽게 된 논문 The PASCAL Visual Object Classes (VOC) 챌린지에 대한 리뷰입니다. VOC 데이터 세트는 Object Detection 분야에서 주로 사용이 되고 있고, 워낙 나온지 오래된 데이터 세트라서 논문 인용수가 13k 건 정도 되네요. 우선 PASCAL VOC(Visual Object Classes) 챌린지는 object category recognition 및 detection 의 벤치마크로 vision 및 machne learning 커뮤니티에 image 및 annotation의 standard evaluat..
2022.02.21
no image
[Paper Review] Detecting Twenty-thousand Classes using Image-level Supervision
안녕하세요. 오랜만에 논문 리뷰를 해봅니다. 논문 리뷰가 뜸했던 시기에 Facebook 사명이 Meta 로 바뀌었네요. 논문 저자 소속에 Meta AI 가 적혀진 논문은 이제서야 처음 보는 듯 합니다. 😊 나스닥에서는 메타플랫폼스라고 바뀐 것을 바로 확인 했었는데... 이번에 리뷰할 논문은 Meta AI 에서 발표한 "Detecting Twenty-thousand Classes using Image-level Supervision" 라는 논문입니다. Detic 이라고도 합니다. "Detic: A Detector with image classes that can use image-level labels to easily train detectors." Detic 방법은 한마디로 축약하자면 기존 GT lab..
2022.02.20
no image
[Object Detection] Object Detection 분야에서 신경망의 입력 해상도 값을 제한하는 이유 (e.g. ~ [1333,800] or ~ [1000, 600])
바보같은 질문일 수도 있지만... Object Detector를 개발하다가 문득 궁금한 점이 생겼다. Object Detection 구현들을 살펴보면 scale 값과 max size 값을 제한해두는 경우가 있다. 아래 예시는 FPN pytorch 구현의 res50-lg.yml 파일이며, scale 값은 800으로, max size 값은 1333으로 정해져있다. SCALES: [800] MAX_SIZE: 1333 EXP_DIR: res50-lg TRAIN: HAS_RPN: True IMS_PER_BATCH: 1 BBOX_NORMALIZE_TARGETS_PRECOMPUTED: True RPN_POSITIVE_OVERLAP: 0.7 RPN_BATCHSIZE: 256 PROPOSAL_METHOD: gt BG_T..
2021.08.13
no image
[Dataset] MS COCO 데이터를 쉽게 이용할 수 있는 FiftyOne 사용하기
MS COCO Dataset 홈페이지에 오랜만에 들어가봤는데, 새로운 것을 발견해서 포스팅하기로 했다. FiftyOne 공식 문서 : https://voxel51.com/docs/fiftyone/# FiftyOne — FiftyOne 0.11.2 documentation Contents voxel51.com FiftyOne Github : https://github.com/voxel51/fiftyone GitHub - voxel51/fiftyone: The open-source tool for building high-quality datasets and computer vision models The open-source tool for building high-quality datasets and c..
2021.08.10
no image
[Deep Learning] Gradient clipping 사용하여 loss nan 문제 방지하기
Gradient clipping 을 하는 이유는 한마디로 학습 중 Gradient Vanishing 또는 Exploding 이 발생하는 것을 방지하여 학습을 안정화 시키기 위함이다. 학습하고자 하는 모델이 RNN 이나 DNN 같은 강한 비선형 목적함수를 가지고 있을 경우에에 미분값은 매우 크거나 작아지는 경향이 있다. 이러한 결과는 여러개의 큰 가중치값을 곱할때 생기게 되는데, 이러한 가파른 지역에 다다르게되면, Backpropagation 과정에서의 Gradient Update Step 에서 파라미터들이 굉장히 크게 움직일 수 있다. 파라미터들이 크게 움직이게 되면 여태 진행했던 학습 Epoch 들이 무효화 될 수 있다. 즉 모델 학습 시 loss nan 문제를 겪을 수 있다. Gradient는 현재 ..
2021.08.10
[Object Detection ] What does mlvl mean?
mmdetection 모듈 쓰다가 mlvl 의 의미가 궁금해서 알아보았다. class mmdet.core.anchor.MlvlPointGenerator(strides, offset=0.5) multi-level (Mlvl) 이였다.... 주로 2D Points 기반 검출기의 Multi-level(Mlvl) Feature Map 을 위한 point 를 생성할 때 사용하며, Object Detection 분야에서 Anchor Free 스타일의 헤더(Header) 에서 주로 사용된다. def get_points(self, featmap_sizes, dtype, device, flatten=False): """Get points according to feature map sizes. Args: featmap_..
2021.07.28
no image
[Paper Review] Bottom-Up Human Pose Estimation Via Disentangled Keypoint Regression
Paper : https://arxiv.org/pdf/2104.02300.pdf Github : https://github.com/HRNet/DEKR HRNet/DEKR This is an official implementation of our CVPR 2021 paper "Bottom-Up Human Pose Estimation Via Disentangled Keypoint Regression" (https://arxiv.org/abs/2104.02300) - HRNet/DEKR github.com 오랜만에 읽고싶은 논문이 생겨서 이렇게 리뷰를 작성해본다. 논문은 그동안 가끔 읽었었는데 정리를 하는건 엄청 오랜만이라, pose estimation 카테고리에 쓸지, paper review 카테고리에서 쓸..
2021.06.23
no image
[Pose Estimation] NVIDIA TLT의 BodyPoseNet
NVIDIA Transfer Learning Toolkit(이하 TLT)에서 "BodyPoseNet" 과 함께 COCO 데이터를 사용하여 2D Pose Estimation 모델을 학습하고 INT8 등으로 최적화하는 방법에 대해 다루었다. 이는 기존 오픈 소스인 OpenPose 보다 AP가 8% 정도 떨어지지만 속도면에서는 아주 월등히 우수함을 보여준다. NVIDIA TLT에서 제공하는 BodyPoseNet은 VGG와 같은 백본 네트워크를 이용하여 confidence map 및 PAF를 이용하여 픽셀 단위 예측을 수행한 후 multi stage refinement (0 ~ N stages)로 구성된 구조를 사용하는 fully connected convolution 모델이며, 18개의 키포인트들을 예측한다...
2021.06.21
no image
[Deep Learning] 딥러닝에서 Synthetic Dataset 을 이용하여 학습하는 연구들
학습 데이터가 부족할 때 가상 세계에서 얻어진 데이터를 이용해 볼 수 있다. 즉 언리얼 엔진을 이용하여 만들어진 GTA 게임에서 Synthetic DataSet 을 생성하여 데이터를 보완 해 볼 수 있다. (GTA 게임 안해봄...) 찾아보니 관련 연구가 여러가지 있었는데 보통 Teacher-Student 형태의 학습 방식을 사용한다. 즉 대규모 데이터인 Synthetic Dataset을 이용하여 Teacher Net 을 구성하여 Pre-training 하고, Real Dataset 을 이용하여 Student Net 을 구성함으로써 fine-tuning 하는 방식이다. Synthetic Dataset 에는 보통 자율 주행 환경 (Car, Person Segmentation, ..) 데이터가 많았으며, 안..
2021.04.28