전체 글

전체 글

반응형

    [NVIDIA] TensorRT inference 코드 및 예제 (feat. yolov7)

    이전의 TensorRT plugin 사용하는 방법을 설명드렸는데요. TRT모델로 inference하는 코드에 대한 설명이 부족하고 저도 잘 이해하지 못한 부분이 있어 이번 글에서 설명드립니다. 0. Inference용 모델 및 개발 환경 Inference를 위해 사용한 모델은 YOLOv7 모델입니다. 모델은 yolov7.trt 다운가능하며 input의 shape은 (1,3,640,640)로 설정하였으며 output은 총 4개로 나뉘면 각각 num_detections(detection된 object개수), nmsed_boxes(object의 bounding box 좌표), nmsed_scores(object의 confidence score), nmsed_classes(object의 class)입니다. ou..

    [NVIDIA] TensorRT plugin 사용 및 예제 (feat. yolov7)

    1. TensorRT Plugin이란? TensorRT는 C++ library이고 nvidia GPUs와 deep learning accelerator를 제공함으로써 뛰어난 performance를 제공합니다. 그래서 nvidia GPU가 장착된 서버를 쓰신다면 TensorRT(.trt)모델로 변환하여 inference하는 것이 효과적입니다. 추가로 TensorRT에서는 plugin기능을 제공하는데요. Plugin을 사용하여 model의 추가적인 연산(preprocess, postprocess)를 C++, cuda programming 으로 대체할 수 있어서 (1) 코드의 간결화 (2) 연산속도의 효율의 장점이 있습니다. 대표적인 예시로 대부분의 AI개발자분들은 detection model의 NMS(Non..

    YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors 논문 리뷰

    오늘은 현시점에서 YOLO계열 중 가장 성능이 좋은 YOLOv7 논문 리뷰해보겠습니다. 1. Introduction 논문 제목을 보았을 때 가장 먼저 눈에 띄는 것은 "bag-of-freebies"일텐데요. 이게 무엇이냐!? bag-of-freebies란? inference시에 추가적인 cost비용 없이 네트워크의 성능을 향상하기 위한 방법 (e.g. reparameterization, data augmentation, bbox regression, label smoothing) 그래서 저자들은 inference cost를 증가시키지 않는 training optimization 방법들을 제안하여 성능을 올리는 것을 목적으로 합니다.(해당 optimization은 cost가 들 수 있음) 그래서 해당 방..

    [NVIDIA] DeepStream 이해 및 설명

    1. DeepStream이란? Deepstream은 SDK형태로 제공하며 Vision AI application과 service를 쉽고 빠르게 개발할 수 있게 해줍니다. 그리고 DeepStream은 multi-platform, scaleablity를 제공하며 on-premise, on-edge, cloud환경 모두에서 deploy가능합니다. Multi-platform: window, mac, linux 등의 다양한 플랫폼을 의미 Scaleability: 유저수나 트래픽이 많아져도 application이 잘 작동함을 의미 흠... 여기까지 들었을때는 그래서 DeepStream이 먼지 모르시겠죠? 쉽게 설명을 위해 NVIDIA 세계관(?)의 End-to-END AI Development는 아래와 같습니다. ..

    VMAF score 란?

    해당 글은 Netflix의 VMAF post를 참고 및 번역하였으며 VMAF의 이해와 사용 방법에 대해 적어보려 합니다. 목차는 다음과 같습니다. 목차 Video Quality Metric이란? 기존의 Video Quality Metric 방법들과 문제점 VMAF란? VMAF의 사용 방법 1. Video Quality Metric 이란? 우리는 .png, .jpg와.mp4와 같은 이미지/비디오 파일을 많이 봐왔을 것입니다. 해당 확장자를 가진 파일들은 원본 이미지/비디오 파일을 의미하는 것이 아닌 encoding된 파일을 의미합니다. 원본 파일의 모든 픽셀값을 그대로 local/cloud storage에 저장하는 것은 용량에 부하가 크기 때문에 해당 문제를 해결하기 위해 encoding이라는 압축방법을 ..

    [Torch2TFLite] Torch 모델 TFLite 변환 (feat. yolov5)

    AI 개발자라면 가장 많이 사용하는 framework는 Torch이나 TensorFlow일것입니다. 저는 Torch을 조금 더 주력으로 사용합니다. (대부분 연구자 분들도 Torch를 사용하시겠죠) 하지만 Torch 모델은 Arm cpu를 사용하는 device에서는 최적화되지않아 inference 속도가 다소 느립니다. 그래서 Torch모델을 Arm cpu 연산에 최적화된 TFLite 모델로 변환시키는 방법에 대해 말씀드리도록 하겠습니다. Torch모델을 TFLite로 변환시키는 과정은 다음과 같습니다. Torch 모델 → ONNX 모델 ONNX 모델 → OpenVINO 모델 OpenVINO모델 → TFLite 모델 Torch모델은 detection 모델 중 하나인 yolov5를 사용하겠습니다. 위의 과..

    [MobileOne] An Improved One millisecond Mobile Backbone 논문 리뷰

    2022년 6월 Apple에서 mobile friendly한 모델을 제안하는 논문인 An Improved One millisecond Mobile Backbone 을 리뷰해보도록 하겠습니다. 1. Introduction 저자들은 실제 mobile에서 latency(inference speed)를 최적화시키는 것을 목표로 하고 있으며 기존의 논문들이 제안했던 mobile-friendly하다는 모델들에 대해 아래와 같은 단점을 지적하였습니다. FLOPs와 parameter수가 (상대적으로) 작다고 하여 실제 latency가 빠르지 않음 skip-connection과 branching은 많은 memory access cost를 발생시키므로 latency가 최적화되지 않음 그래서 저자들은 (1) mobile d..

반응형