AI Engineering
Mediapipe (2) - custom segmentation model with mediapipe
1. Mediapipe custom model 적용 이전 글 (mediapipe 이해)와 같은 실험환경에서 글을 작성하니 참고 바랍니다. 이번 글에서는 custom하게 만들어놓은 tflite model로 mediapipe에 적용해보겠습니다. tflite model의 task는 portrait segmentation 이며 mac book의 camera를 통해 live로 portrait segementation을 목적으로 합니다. 이제 차근차근 한 Step씩 custom한 모델을 mediapipe에 어떻게 적용시키는 지 보시려면 아래부터 쭉 읽으시면 되시고 과정은 생략하고 빠르게 결과를 확인하고 싶으실 경우 밑에 Appendix 1.을 읽어보시면 됩니다. 1.1 portrait segmentation mod..
Docker/Kubernetes - (3) docker container 네트워크/로깅/제한
Enviroment: Ubuntu 18.04 1. Docker container 네트워크 Docker는 컨테이너에 내부 IP를 순차적으로 할당하며, IP는 컨테이터 재시작마다 변경될 수 있습니다. 컨테이너 내부의 IP는 외부와 연결될 수 있도록 Host에 veth(virtual eth)라는 네트워크 인터페이스를 자동으로 만들게 됩니다. 그렇다면 각 컨테이너 마다 veth를 생성하게 되고 docker0이라는 브리지를 통해 veth인터페이스와 바인딩되어 호스트의 eth0과 연결시켜줍니다. 실제로 Host에서 container생성후 다음과 같이 veth와 docker0를 확인가능합니다. 1.1 Docker network 기능 docker networ ls로 Docker에서 기본적으로 쓸수 있는 네트워크를 확인..
Docker/Kubernetes - (2) Docker image/container
Enviroment: Ubuntu 18.04 1. Docker image/container Docker Engine에서 사용하는 기본 단위가 container와 image이고 image는 container를 생성할때 필요한 요소입니다. 1.1 Docker image Docker image 특성 여러 개의 계층으로 된 바이너리 파일 컨테이너를 생성하고 실행할 때 읽기 전용으로 사용 도커 명령어로 image 다운 가능 Docker image 구성은 다음과 같습니다. 저장소 이미지가 저장된 장소를 의미하고 명시되지 않을경우 docker hub라는 공식 이미지 저장소에서 해당 이미지를 가져옵니다. 이미지 이름 가져올 이미지를 뜻하고 그에 대한 이름은 어떤 역할을 하는지를 나타냅니다. 태그 이미지의 버전 관리 혹..
Docker/Kubernetes - (1) Docker란?
Environment: Ubuntu 18.04 1. Docker란? Docker는 GO 언어로 작성되어 있으며 애플리케이션 deployment를 자동화하기 위한 도구입니다. 그럼 애플리케이션 자동화는 어떻게 하느냐? 바로 container를 통해 가능한데요. 컨테이너(container)는 docker engine으로부터 생성 가능하고 컨테이너에 여러 기능을 추가하여 application을 쉽게 사용가능하게 합니다. 정리하면, Docker Engine이 컨테이너를 생성 및 관리하는 주체가 될 것이며 컨테이너는 library, code, runtime 등 소프트웨어 및 애플리케이션을 구동시키는 하나의 서버처럼 작동합니다. Docker는 가상머신(환경)과 많이 비교되는 데요. 기존의 가상머신은 host Ope..
PyTorch MultiGPU (2) - Single-GPU vs Multi-GPU (DistributedDataParallel)
1. Introduction 모든 실험은 python 3.6, Pytorch 1.7.0 에서 진행되었음을 알려드립니다. 해당 글은 Pytorch에서 이전 글에서 말씀드린 Pytorch의 DistributedDataParallel에 대해 설명드립니다. 이전 글과 Experiment setting은 동일하니 궁금하시면 이전 글에서 참고 하십시오! 오늘 설명드릴 목차는 다음과 같습니다. DistributedDataParallel 이란? DistributedDataParallel 사용 방법 DistributedDataParallel 결과 비교 (with Single-GPU and DataParallel) 2. DistributedDataParallel (DDP) 이란? DataParallel(DP)과 비교했을 ..
PyTorch MultiGPU (1) - Single-GPU vs Multi-GPU (DataParallel)
1. Introduction 모든 실험은 python 3.6, Pytorch 1.7.0 에서 진행되었음을 알려드립니다. 해당 글은 Pytorch에서 Single-GPU와 Multi-GPU의 차이를 이해하고 직접 실험해 볼 수 있는 환경을 제공하기 위함을 알려드립니다. 오늘 설명드릴 목차는 다음과 같습니다. Experiment setting Single-GPU vs Multi-GPU (DataParallel) 기본 이해 Single-GPU vs Multi-GPU (DataParallel) 결과 비교 Multi-GPU (DataParallel) 의 문제점 2. Experiment Setting Single-GPU와 Multi-GPU의 차이에 대해 글로 설명을 드릴거지만 직접 코드를 돌려보면서 이해하시는 게 ..