반응형

전체 글 38

NMS (non-maximun-suppression)

1. 서론 객체인식 모델 논문을 읽으면서 자주 쓰이는 용어 NMS를 다뤄보고자 한다. 2. NMS(non-maximun-suppression) 객체를 인식할 때 경우 아래 사진과 같이 한 객체를 여러 번 찾는 경우가 자주 생긴다. 같은 객체를 찾았다고 판단되는 가장 box 중에서 신뢰도(confidence)가 높은 box만 남기고 나머지 box를 제거하는 것을 NMS(비 최대 억제)라고 한다. 같은 객체라고 판단하는 방법은 IOU가 일정 수준을 넘긴 경우 넘긴 경우 같은 객체라고 판단하게 된다. 일반적으로 0.5를 넘긴 경우 같은 객체라고 하는 경우가 많다. NMS를 실행하고 난 결과는 아래 사진과 같이 한 객체에 한 개의 box만 남게 된다.

CIFAR-10 CNN으로 학습하기 [Pytorch]

1. 서론 이번 글에서 이미지를 torch.nn.conv2d를 사용하여 CNN 모델을 구현하여 학습하는 코드를 작성해보려 한다. 2. CIFAR-10 우선 CIFAR-10 dataset은 32 * 32 픽셀의 컬러 이미지로 50000개는 학습 데이터 10000개는 테스트 데이터로 구성되었으며 10개의 클래스로 labeling 되어있다. 3. 코드 3.1 import package import ssl import torch import torch.nn as nn from torchvision import transforms, datasets ssl 모듈은 CIFAR10이 urllib 오류로 다운이 안될 때 해결하기 위해 추가한 모듈이다. 3.2 CIFAR-10 다운 및 데이터셋 구성 BATCH_SIZE =..

Pytorch 2022.05.12

YOLOv5 커스텀 데이터 학습하기

1. 서론 이번 글에서는 커스텀 데이터를 사용하는 가이드를 작성해보도록 하겠다. https://jeo96.tistory.com/entry/YOLOv5-%EC%84%A4%EC%B9%98-Pycharm YOLOv5 설치 [Pycharm] 1. 서론 대학원에 입학하고 벌써 1년동안 YOLOv5로 연구하고 논문을 쓰니 약간 정이든 느낌이 든다. 처음에 설치환경 구성하기 쉬워서 사용하였지만 나름 다른 모델에 뒤쳐지지 않는 모델중 하나 jeo96.tistory.com 2. 본론 2.1 커스텀 데이터 구성 2.1.1 파일 이미지 1장과 txt 파일 1개가 쌍을 이루어야 하며 파일 이름은 이미지 이름과 레이블 이름이 같아야 하고 레이블은 txt 파일로 구성해야 한다. 2.1.2 label 포맷 yolov5의 학습 데이..

YOLOv5 설치 [Pycharm]

1. 서론 대학원에 입학하고 벌써 1년 동안 YOLOv5로 연구하고 논문을 쓰니 약간 정이든 느낌이 든다. 처음에 설치환경 구성하기 쉬워서 사용하였지만 나름 다른 모델에 뒤처지지 않는 모델 중 하나인 것 같다. 2. 본론 python은 www.python.org에서 python을 다운로드한 환경으로 가정하고 설명을 진행하겠다. 필자는 Anaconda사용에 익숙하지 않고 Pycharm에 익숙하다. 2.1 설치 구글에 yolov5 검색 후 깃허브 접속 git을 설치하여 cmd로 설치하는 방법과 zip 파일을 다운로드하여서 설치하는 방법이 있다. 초보자를 기준으로 zip 파일로 다운로드하는 경우로 설명하겠다. 파일을 다운로드하고 압축 해제한다. 폴더를 우클릭하여 PyCharm으로 연다. 우클릭으로 PyChar..

미니 배치(mini batch) [pytorch]

1. 서론 딥러닝에서 사용하는 학습 방법 중에 가장 많이 사용하는 미니 배치 사용법을 알아보도록 하겠다. 그림 1과 같이 6개의 데이터가 존재할 때 batch size를 2라고 하면 2개의 데이터의 에러를 구하고 평균을 내어 가중치를 갱신하며 이 방식은 데이터를 매우 많이 사용하는 딥러닝에서 자주 사용되기 때문에 필수이며 pytorch에서 mini batch를 사용하는 방법을 알아보도록 하겠다. 2. 본론 mini batch를 사용하기 위해서 텐서 데이터셋과 데이터 로더가 필요하다. from torch.utils.data import TensorDataset # 텐서데이터셋 from torch.utils.data import DataLoader # 데이터로더 이번 문제는 입력값의 출력을 제곱 값을 출력하..

Pytorch 2022.04.26

XOR 문제 딥러닝 모델 구현 (2) [Pytorch]

1. 서론 지난 글 XOR 문제 딥러닝 모델 구현 (1) [Pytorch]에서 input이 3개인 모델을 구현하였는데 이번엔 필요한 인풋 2개만 사용하여 은닉층의 최소 개수를 살펴보고자 한다. XOR 문제 딥러닝 모델 구현 (1) [Pytorch] 1. 서론 학부시절 딥러닝 첫걸음 책으로 딥러닝을 처음 접했다. 단층 신경망으로 풀 수 없는 XOR 문제를 심층 신경망으로 해결하는 코드가 교재에 matlab으로 구현되어있는데 이것을 Python의 Pytorch jeo96.tistory.com 2. 본론 지난 글에서 사용하였던 코드에서 입력 노드와 은닉 노드의 개수만 수정하였으며 모델 모양은 그림 1과 같다. 코드는 아래와 같으며 지난 코드에서 Linear의 숫자만 수정하였다. import torch devi..

Pytorch 2022.04.25

XOR 문제 딥러닝 모델 구현 (1) [Pytorch]

1. 서론 학부시절 딥러닝 첫걸음 책으로 딥러닝을 처음 접했다. 단층 신경망으로 풀 수 없는 XOR 문제를 심층 신경망으로 해결하는 코드가 교재에 matlab으로 구현되어있는데 이것을 Python의 Pytorch로 구현해 보았다. 2. 본론 input: [0, 0, 1], [0, 1, 1], [1, 0, 1], [1, 1, 1] output: [0], [1], [1], [0] 위와 같이 첫 번째와 두 번째 숫자가 같으면 0 다르면 1을 출력하는 모델을 구현하였다. 모델 모양은 그림 1과 같다. 3개의 입력을 받아 5개의 은닉 노드를 가지고 출력이 1개인 딥러닝 모델이다. 코드는 아래와 같다. import torch device = "cuda" if torch.cuda.is_available() else ..

Pytorch 2022.04.24

Pytorch, CUDA, cuDNN 설치 [windows 10]

1. 그래픽 카드 확인 1. 상태바에서 마우스 우클릭 2. 작업 관리자 클릭 3. 성능 클릭 4. GPU 클릭 GPU를 간단히 확인할 수 있다. 2. CUDA, cuDNN 설치 딥러닝 프레임워크에서 GPU를 사용하여 계산속도를 올리기 위해서는 NVIDIA GPU, NVIDIA 그래픽 드라이버, CUDA, cuDNN을 설치해야 한다. 그래픽 드라이버 설치는 어렵지 않음으로 패스 1. pytorch 홈페이지 접속 2. install 클릭 3. GPU와 호환되는 CUDA 버전을 확인해야 한다. 30 시리즈 이상은 CUDA 11 20 시리즈 아래는 10.2를 설치하면 웬만하면 호환된다. 필자는 3060ti이므로 CUDA 11.1을 설치 4. 구글에 cuda (버전) install 검색 후 홈페이지 접속 5. 아..

Pytorch 2022.04.22
반응형