프로젝트 및 실습/Pytorch (Computer Vision) 5

[Computer Vision] HRNet에 대해 알아보자

Human Pose Estimation에 대한 프로젝트를 진행하려다보니 자연스럽게 HRNet이라는 CNN 아키텍처를 사용하게 되었습니다. 물론 코드야 그냥 깃에서 가져와서 돌리면 되는거지만, 어떤 구조인지는 한 번 알아보고 싶어 조금이나마 공부를 해보게 되었습니다. 컴퓨터 비전의 CNN 아키텍처들은 AlexNET으로부터 시작해 GoogLeNET, VGG NET, ResNET, DenseNET 등을 거치면서 발전해왔습니다. 그리고 이들을 잇는 모델로 2019년 HRNet이 등장했습니다. 대부분의 CNN 아키텍처들의 경우 High Resolution에서 Low Resolution으로 점점 해상도를 줄여나가는 방식이라면, HRNet은 High Resolution을 유지한 채로 병렬적으로 Low Resoluti..

[Pytorch] 분류기 뉴럴 네트워크 개발 일기 (2) - 모델 성능 향상

지난 번 초기 모델들에서 외투를 상의와 제대로 구별 못하는 문제점이 나타났다. 이번 글에서는 이 문제점을 고치는 과정을 작성해보려고 한다. 1. 데이터 불균형 문제 개선을 위한 데이터 증폭 첫번째로 시도해 본 방법은 데이터 불균형 문제 개선. 훈련 집합에 외투의 데이터가 4984개, 상의의 데이터가 20218개로 크게 차이가 난다는 점을 개선하고자 한 것이다. 가장 먼저 해 본 것은 훈련 집합의 모든 외투 사진에 대해 3개의 변형 이미지를 생성해 본 것. 이 방법을 통해 외투 사진을 19936개로 늘려서 상의의 데이터와 비슷한 수준으로 증폭시켰다. 결과는? 위의 사진은 VGG 11의 결과를 나타낸 것이다. 외투에 대해서는 정확도가 높아졌지만, 상의에 대한 정확도가 떨어지며, 전체적인 정확도는 유사하게 유..

[Pytorch] 분류기 뉴럴 네트워크 개발 일기 (1) - 모델 생성

1. 환경 세팅 어떤 프로젝트든 환경 세팅에 가장 많은 시간이 들어가는 것 같다. 이번에도 GPU 호환 문제, Nvidia Driver 연결 오류, CUDA 버전 문제 등 각종 오류들을 이겨내고 겨우겨우 환경 세팅에 성공했다. 2. 데이터 구성 필자가 수행할 프로젝트는 모자, 외투, 상의, 하의, 신발 등 총 5개 클래스의 이미지를 분류하는 분류기를 만드는 것이다. 데이터 구성은 다음과 같다. 여기서 캐치할 수 있는 부분은 첫째, 상의의 데이터가 다른 모든 데이터의 합 보다 많다는 점. 둘째, 신발과 특히 모자에 대한 데이터가 부족하다는 점. 그리고 데이터를 실제로 열어보면 외투와 상의의 모양이 비슷해 과연 잘 구분을 해 낼 수 있을지에 대한 의문도 존재했다. 3. 데이터 전처리 데이터를 살펴보면 모든 ..

[Pytorch] Ubuntu 20.04에 Jupyter Notebook 설치 및 서버 컴퓨터에 원격 실행

이 글은 이미 Nvidia Driver, Cuda, Anaconda, Pytorch가 설치되어 있다는 가정 하에 진행됩니다. 혹시 아직 설치 안 하신 분이 계신다면 아래의 링크를 참고하시면 됩니다. https://jooona.tistory.com/140 [Pytorch] Ubuntu 20.04에서 환경 세팅 Ubuntu 20.04에서 GPU 모드로 Pytorch를 이용하기 위해 Nvidia driver와 Cuda, Pytorch 등 필요한 프로그램들을 설치하는 방법을 알아보겠습니다. - Nvidia Driver 설치 sudo lspci -v | less sudo ubuntu-dri.. jooona.tistory.com 우선 가상환경을 활성화 한 뒤에 jupyter notebook을 설치합니다. jupyt..

[Pytorch] Ubuntu 20.04에서 Pytorch 사용을 위한 환경 세팅

Ubuntu 20.04에서 GPU 모드로 Pytorch를 이용하기 위해 Nvidia driver와 Cuda, Pytorch 등 필요한 프로그램들을 설치하는 방법을 알아보겠습니다. - Nvidia Driver 설치 sudo lspci -v | less sudo ubuntu-drivers devices 위의 명령어들로 자신의 환경에 맞는 Nvidia Driver를 검색할 수 있습니다. 제가 사용하고 있는 GPU는 RTX 3090이고, nvidia-driver-460가 recommanded되어 있네요 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update sudo apt-get install nvidia-driver-460 sudo reboot 위의..