분류 전체보기

반응형

    Per-title Encoding 설명

    ※ 해당 블로그를 reference하였습니다. Per-title Encoding은 Netflix에서 제안한 video encoding방식입니다. 말 그대로 per-title encoding은 title에 따라 encoding을 다르게 하겠다라는 말입니다. 이는 video가 속한 title(category)에 따라 특성이 다르다는 것을 의미하며 title에 따라 encoding 압축율을 다르게 하겠다는 것입니다. 1. 기존의 Encoding 방식 Netflix에서는 2010년 후반부터 H.264/AVC를 사용하기 시작하면서 engineer들은 각 resolution에 따라 경험적으로 optimal한 bitrate를 찾는 데 수많은 실험을 하였습니다. Codec parameters(e.g. crf, QPs,..

    PyTorch training/inference 성능 최적화 (2/2)

    이전 글에서 Pytorch framework에서 성능 최적화하는 방법을 소개해드렸습니다. 이번 글에서는 설명드린 각 방법들이 얼마만큼 time cost 성능 최적화가 되는지 실험해보도록 하겠습니다. 실험 코드는 여기서 확인가능합니다. 실험해볼 최적화 방법 목록입니다. Data Loading 최적화 num worker 설정 pinned memory 사용 Data Operation 최적화 tensor.to(non_blocking=True) 사용 Training 최적화 Architecture design과 batch size를 8의 배수로 설정 Mixed Precision Training 사용 Optimizer로 weight를 update하기 전에 gradient을 None으로 설정 Gradient accum..

    PyTorch training/inference 성능 최적화 (1/2)

    오늘은 해당 블로그의 내용을 베이스로 하여 PyTorch framework에서 training/inference 성능 최적화를 하는 것을 목적으로 설명드릴 것입니다. 성능이라 함은 1. speed, 2. memory에 대한 성능을 뜻합니다. speed에 대한 성능이 좋다함은 training 및 inference time cost가 적다는 것이고 memory에 대한 성능이 좋다는 것은 training 및 inference에 사용되는 memory가 적다는 것입니다. 오늘 소개할 최적화 방법에 대한 목록은 다음과 같다. Data Loading 최적화 num worker 설정 pinned memory 사용 Data Operation 최적화 torch.Tensor 사용과 device 할당 CPU와 GPU간의 da..

    Mixed Precision Training 이해 및 설명

    1. Mixed Precision Training 이란? 대부분의 deep learning framework(e.g. PyTorch, TensorFlow)들은 모델을 training할 때 float32(FP32) data type을 사용하게 됩니다. 즉, 모델의 weight와 input data가 모두 FP32(32bit)의 data type을 가진다는 뜻입니다. 이와 다르게 Mixed-precision training은 single-precision(FP32)와 half-precision(FP16) format을 결합하여 사용하여 모델을 training하는 방식입니다. (FP16 data type은 FP32와 다르게 16bit만을 사용하게 됩니다.) Mixed-precision training방식을 통..

    전문연구요원 훈련소 준비물 및 후기

    저는 2022년 10월 7일자로 논산 훈련소를 들어가 10월 27일에 훈련소 수료를 마친 전문연구요원입니다. 오늘은 훈련소에서 겪은 일들과 그에 대한 꿀팁을 알려드릴려고 합니다! ※ 내용은 26연대를 기준으로 말씀드립니다. 준비물 훈련소의 생활관안에서 사회에서 사용하는 물품들을 사용할 수 있으므로 다음과 같은 준비물을 챙기시면 좋습니다. 참고로 챙겨간 물품을 입소시에 검사를 제대로 하지 않기때문에 물품은 너무 크지 않는 선에서 다 가져갈 수 있는것 같습니다. (제 생활관 동기중에는 담배를 가져왔는데 검사 시에 걸리지 않았습니다.) 세면 도구: 샴푸, 바디워시 또는 올인원 칫솔, 치약은 줍니다. 스킨, 로션 책, 논문 불침번동안이나 주말에 읽기 좋습니다. 물티슈 필기도구 이어플러그 텀블러 선크림 신분증 커..

    OpenVINO 뽀개기 (3) OpenVINO Quantization

    OpenVINO 모델을 optimization하기 위한 방법으로 Quantization에 대해 설명드립니다. 1. Quantization이란? 기존 Torch, ONNX model의 parameters(i.e. weights, bias)들은 각각이 float32로 표현되어 있습니다. Quantization은 float32의 data를 그 보다 낮은 bit(e.g. float16, int8)로 표현시켜 경량화시킵니다. 이렇게 함으로써 (1) inference time, (2) model size를 줄일 수 있다는 장점을 가집니다. 단점으로는 data의 정보손실이 발생하므로 Accuracy, mAP는 떨어지게 됩니다. 그럼, 다음과 같은 2가지 궁금증이 생기실 겁니다. 질문과 함께 답변드려볼게요. 몇 bit..

반응형