전체 글 썸네일형 리스트형 Pytorch를 TensorRT로 변환하기 위한 환경 설정 1. Introduction TensorRT는 학습된 딥러닝 모델을 최적화하여 NVIDIA GPU 상에서 추론하는 속도를 수십 ~ 수십배까지 향상시켜주는 모델 최적화 엔진입니다. 지원하는 프레임워크는 pytorch, tensorflow, keras, onnx 등이 있습니다. 여러 프레임워크에서 직접적인 TensorRT 변환을 지원하고 있지만 다소 제약이 있으며, 대신 onnx로의 변환은 대부분의 프레임워크에서 더 나은 지원을 해주고 있으며 onnx로 변환한 모델은 다시 TensorRT로 변환이 가능합니다. 저희는 대부분의 연구/개발을 pytorch로 하기 때문에 pytorch을 onnx로 변환하고 이를 TensorRT로 추론하는 방법을 선택하였습니다. 이번 글에서는 TensorRT로 변환했을 때 속도가 .. 더보기 Horovod 모듈 사용하여 Pytorch Multi GPU 학습 효율적으로 하기 1. Introduction 기본적으로 Pytorch를 이용하여 학습을 가속하기 위해서는 다수의 GPU를 활용해야 합니다. 이전 글에서 기술한 것처럼 다수의 GPU를 사용할 수 있는 방법을 Pytorch 자체에서 DistributedDataParallel이라는 모듈로 제공하고 있습니다. 하지만 해당 글에서 볼 수 있듯이 고려해야 할 사항들이 많습니다. 예를 들어 multiprocessing의 프로세스를 관리하는 것과 DataLoader에서 pin memory, shuffle 등을 고려해야 합니다. 하지만 Horovod라는 모듈을 이용하면 굉장히 간단한 코드 추가로 Multi GPU 학습이 가능합니다. 이 글에서는 Pytorch와 Horovod를 이용하여 다수의 GPU를 이용한 학습 방법을 소개합니다. 2.. 더보기 라벨 스무딩(Label smoothing), When Does Label Smoothing Help? $ \newcommand{\infdiv}{D\infdivx} \newcommand{\comz}{\mathcal{Z}} \newcommand{\vec}{\boldsymbol} $ 딥 러닝의 신뢰도를 개선하기 위한 모델 보정(calibration) 기법 소개 최근 다양한 분야에서 각광 받는 딥 러닝은 성능 면에서 매우 우수한 결과를 보여주고 있지만, 실제 애플리케이션에서 사용하기에는 신뢰성 측면에서 부족한 면이 있습니다. 대표적인 예로, 의료 영상에서 딥 러닝 모델을 사용해 질병 여부를 판단할 때 신뢰성에 대한 고려가 없다면 모델의 출력 결과인 예측 확률과 실제로 정답을 맞힐 확률이 일치하지 않는 문제가 있습니다. 다른 말로, 일반적인 딥 러닝 모델은 실제로 정답을 맞출 확률보다 자신이 예측한 결과를 과잉 .. 더보기 Real-world Super-resolution via Kernel Estimation and Noise Injection [paper], [code] *테스트 코드만 공개됨 Real-world 및 Blind Super-resolution (SR)에 관련된 논문으로 CVPR 2020 workshop (NTIRE 2020) 페이퍼입니다. 더불어 NTIRE 2020 real-world SR 챌린지에서 1위를 차지한 방법이기도 합니다. 여기서는 Real-world SR과 Blind SR에 대해서 간략히 알아보고 논문에서 제안한 방식을 알아보겠습니다. Introduction 일반적으로 기존의 SR 방법들은 low-resolution (LR), $I_{LR}$, 영상을 다음과 같이 high-resolution (HR), $I_{HR}$ 영상들로부터 구했습니다. $$ I_{LR} = I_{HR} \downarrow_s $$ 이를 통해 .. 더보기 Anomaly detection using one class neural networks (Raghavendra Chalapath, 2018) 이상 탐지(Anomaly Detection)는 정상 데이터들과 큰 차이를 갖는 이상치(Anomaly)를 탐지하는 문제로 최근 딥 러닝을 이용해 해결하려는 연구가 많이 진행되고 있습니다. 이상치는 정상적인 패턴에서 벗어나 예상되는 패턴을 따르지 않는 개체를 의미하며, 오류로 인해 야기되기도 하지만 알려지지 않은 새로운 발견을 찾아내는 근거가 되기도 합니다. 따라서 이상 탐지는 사이버 보안, 의학, 금융, 행동패턴, 자연과학 및 제조업 등 다양한 산업 분야에서 활용될 수 있으며 최근 놀라운 성능 향상을 이끈 딥 러닝과 결합해 탁월한 성과를 낼 것으로 기대되고 있습니다. 본 논문에서는 딥 러닝 모델을 통해 추출한 특징(deep learning features)과 전통적인 이상 탐기 기법인 One-Class S.. 더보기 CVPR 2020 동향 분석 **************** 목차 **************** 1. CVPR2020 Wordcloud 분석 2. CVPR2019 vs. CVPR2020 3. ICCV2019 vs. CVPR2020 4. 의견 *************************************** 1. Word cloud 분석 특정 산업과 기술의 트렌드를 파악하기 위한 방법 중 하나로 중요 저널/컨퍼런스에 발표된 논문의 제목들을 이용해 통계를 내는 방법이 있습니다. 이번 글에서는 CVPR 2020에 발표된 논문들을 통해 컴퓨터 비전 연구 관련 트렌드가 어떤지 살펴보도록 하겠습니다. 보다 직관적인 시각화를 위해 CVPR 2020 메인 섹션의 논문 제목을 이용해 Word cloud와 각 단어별 그래프를 만들어보았습니다. W.. 더보기 Publications ** Underline indicates the member of SI Analytics. ** Click 🌐 to link to the related page. Academic Papers Bidirectional Domain Mixup for Domain Adaptive Semantic Segmentation Daehan Kim, Minseok Seo, Kwanyong Park, Inkyu Shin, Sanghyun Woo, In-So Kweon, Dong-Geol Choi AAAI Conference on Artificial Intelligence (2023) Self-Pair: Synthesizing Changes from Single Source for Object Change Detection.. 더보기 Multi GPU with Pytorch (DistributedDataParallel) 1. Introduction 많은 연구자 및 개발자들이 관심을 갖는 주제 중 하나는 Deep Learning 모델을 빠르게 학습시키는 방법입니다. 일반적으로 Deep Learning 모델을 빠르게 학습시키는 방법에는 여러가지가 있습니다. 당연히 CPU가 아닌 GPU를, GPU가 아닌 TPU를 사용함으로써 학습 속도를 향상시킬 수 있습니다. 성능이 더 좋은 장비를 사용하는 것 또한 한 가지 방법이 될 수 있습니다. 당연히 GTX1050보다 GTX1080ti를 사용하는 것이 빠를 것입니다. 하지만 비용을 들여 더 좋은 장비를 구매하는 것에는 한계가 있습니다. 그래서 많은 Machine Learning Framework에서는 여러 대의 GPU를 이용하여 학습을 가속화하는 방법을 제공하고 있습니다. 이 글에서는.. 더보기 이전 1 2 3 4 다음