The Zen of Python
·
Python
1. The Zen of Python 소개Python에는 The Zen of Python이라는 철학이 있다. 이는 Python의 창시자인 Guido van Rossum의 의도와 Python 커뮤니티의 가치를 반영하여, Tim Peters가 작성한 철학적 지침이다. Python 코드를 작성할 때 지침이 되는 이 철학은 "더 나은 코드"를 위한 방향을 제시하며, Python이 단순하고 가독성 높은 언어로 자리 잡는 데 중요한 역할을 한다. 이를 확인하려면 Python 인터프리터에서 import this 명령어를 입력하면 된다.아래는 The Zen of Python에 나오는 19가지 원칙과 그 의미를 간략히 설명한 것이다.import thisprint(this)   2. The Zen of Python 의 1..
[02 Object Detection] - MMdetection train/val 학습 방법
·
딥러닝 (Deep Learning)/[08] - 프로젝트
지난 블로그에서는 MMDetection의 기본적인 설치와 사용 방법에 대해 다뤘습니다. 이번 포스트에서는 train/val 데이터를 나누고 학습을 진행하는 방법에 대해 알아보겠습니다. 특히, COCO 형식의 데이터셋을 사용해 객체 탐지 모델을 학습하는 방법을 중점적으로 설명하겠습니다. [02 Object Detection] - MMdetection 설치 및 기본사용법MMDetection이란?MMDetection은 OpenMMLab에서 개발한 오픈 소스 딥러닝 객체 탐지 라이브러리입니다. 다양한 최신 객체 탐지 알고리즘을 구현하고 있어, 연구 및 실험을 위한 최적의 환경을 제공합니다.ai-bt.tistory.com 1. 데이터셋 준비 및 Train/Val 분할  객체 탐지 모델을 학습할 때, 보통 학습 데..
[02 Object Detection] - MMdetection 설치 및 기본사용법
·
딥러닝 (Deep Learning)/[08] - 프로젝트
MMDetection이란?MMDetection은 OpenMMLab에서 개발한 오픈 소스 딥러닝 객체 탐지 라이브러리입니다. 다양한 최신 객체 탐지 알고리즘을 구현하고 있어, 연구 및 실험을 위한 최적의 환경을 제공합니다. 이 라이브러리는 COCO, VOC, ADE20K 등 다양한 데이터셋을 지원하며, 사용자 친화적인 API와 확장성이 뛰어난 구조로 되어 있습니다. MMDetection은 연구자와 개발자들이 효율적으로 딥러닝 모델을 구축하고 학습할 수 있도록 도와줍니다. 1. MMDetection 설치 과정 1) MMdection 클론하기MMDetection을 사용하기 위해서는 먼저 라이브러리를 설치해야 합니다. 설치 과정은 다음과 같습니다.우선, MMDetection의 소스 코드를 GitHub에서 클론해..
Faster R-CNN
·
딥러닝 (Deep Learning)/[05] - 논문 리뷰
Faster R-CNN 의 개념을 이해하기 전에 전에 블로그에서 설명했던 개념들을 먼저 간략하게 정리하고 설명하겠습니다. 1. Region Proposal (객체 후보 영역) Region Proposal은 이미지에서 객체가 있을 법한 위치를 미리 추출하는 단계입니다.초기 모델인 R-CNN은 이를 위해 Selective Search라는 기법을 사용했지만, Faster R-CNN에서는 이를 학습 가능한 네트워크인 Region Proposal Network (RPN)으로 대체합니다 2. RoI Pooling (Region of Interest Pooling)RoI Pooling은 Fast R-CNN에서 도입된 기법으로, 다양한 크기의 후보 영역(Region Proposals)을 고정된 크기의 벡터로 변환하는 ..
R-CNN, SPPNet, Fast R-CNN
·
딥러닝 (Deep Learning)/[05] - 논문 리뷰
1.  R-CNN R-CNN 의 경우는 아래의 논문리뷰에서 자세히 설명했습니다.아래 링크를 참고 부탁드립니다. https://ai-bt.tistory.com/entry/R-CNN-%EB%85%BC%EB%AC%B8-%EB%A6%AC%EB%B7%B0 R-CNN 논문 리뷰서론딥러닝의 발전과 함께 컴퓨터 비전 분야는 급격한 변화를 겪고 있습니다. 그중에서도 객체 탐지(Object Detection)는 이미지나 비디오에서 특정 객체를 찾아내고, 그 위치를 정확히 예측하는 중ai-bt.tistory.com 간략하게 R-CNN의 특징과 단점에 대해서 설명하겠습니다.1) 2000개의 Region을 각각 CNN 통과R-CNN은 객체 탐지에서 사용되는 기법으로, 이미지에서 Selective Search 알고리즘을 사용해 ..
Object Detection 정의와 Evaluation metric (평가지표)
·
딥러닝 (Deep Learning)/[06] - 평가 및 결과 분석
1. 이미지 탐지 종류1) Classification (분류)Classification은 가장 기본적인 이미지 처리 기법 중 하나입니다. 단어 그대로, 이미지를 특정 클래스 또는 카테고리로 분류하는 작업을 의미합니다. 주어진 이미지를 보고 이 이미지가 어떤 객체를 포함하고 있는지 결정하는 것이죠.   예시)개, 고양이, 자동차와 같은 여러 카테고리가 있을 때, 이미지 속에 어떤 것이 있는지 맞추는 작업입니다. 예를 들어, 강아지 사진을 넣으면 '개'라는 클래스로 분류하는 것이 Classification입니다. 특징)이미지를 전체적으로 보고 하나의 클래스만 예측비교적 간단한 문제를 해결하는 데 적합     2) Object Detection (객체 탐지)Object Detection은 한 단계 더 나아간 ..
Pytorch에서 Learning Rate(LR) 스케줄링 다양한 기법
·
딥러닝 (Deep Learning)/[04] - 학습 및 최적화
딥러닝 모델을 학습할 때, 학습률(Learning Rate)은 학습 성능에 큰 영향을 미칩니다. 학습률을 잘못 설정하면 학습이 너무 느리거나, 최적화 과정에서 손실함수가 발산할 수 있습니다. 이를 해결하기 위해 학습 중에 학습률 스케줄링 기법을 사용하여 학습률을 점진적으로 조절하는 방법이 있습니다.이번 포스팅에서는 8가지 대표적인 학습률 스케줄링 기법에 대해 설명합니다. 각 기법의 개념과 PyTorch에서 사용하는 방법을 함께 소개할게요. 1. StepLR 개념StepLR은 일정한 주기마다 학습률을 일정 비율로 감소시키는 방식입니다. 예를 들어, 매 10 에폭마다 학습률을 50%씩 줄이도록 설정할 수 있습니다. 학습 초기에는 큰 학습률로 빠르게 최적화하고, 후반부로 갈수록 더 작은 학습률로 세밀한 조정을..
[01 ImageNet Sketch] - Augmentation
·
딥러닝 (Deep Learning)/[08] - 프로젝트
스케치 이미지에 유효한 Augmentation이번 포스팅에서는 스케치 이미지 데이터셋을 학습할 때 사용한 다양한 Augmentation 기법들 중에서 성능에 유효했던 몇 가지를 공유하고자 합니다. 특히, 스케치 이미지의 특성에 맞춰 선명도와 밝기 조절을 통해 성능 개선을 이뤄낸 사례를 소개하겠습니다. 먼저, 사용했던 Augmentation 기법을 간단히 소개하면 아래와 같습니다.Unsharp Mask: 이미지를 선명하게 만드는 기법.RandomBrightnessContrast: 이미지의 밝기를 조절하는 기법.이 두 가지 Augmentation은 특히 스케치 이미지에서 효과적인 성능 향상을 보여줬습니다. 이제 각각의 방법을 좀 더 자세히 살펴보겠습니다. 아래 코드는 적용한 전체 코드 입니다.class Un..
[01 ImageNet Sketch] - Grad Cam
·
딥러닝 (Deep Learning)/[08] - 프로젝트
Grad-CAM을 활용한 이미지 분류 모델 시각화이번 포스팅에서는 Grad-CAM을 활용하여 이미지 분류 모델의 시각화를 구현한 사례를 소개합니다. Grad-CAM(Gradient-weighted Class Activation Mapping)은 신경망이 이미지를 분류할 때 주목한 부분을 시각화할 수 있는 방법입니다. 특히 복잡한 CNN(Convolutional Neural Network) 모델에서, 모델이 어떤 부분을 중점적으로 보았는지 확인할 수 있어 모델 해석에 큰 도움이 됩니다. Grad-CAM을 적용한 전체 코드 개요아래 코드에서는 ResNet101 모델을 사용하여 이미지 분류를 진행한 후, Grad-CAM을 통해 모델이 주목한 이미지 영역을 시각화하는 과정을 설명합니다. Augmentation이..