본문 바로가기
728x90
반응형
SMALL

Visual Intelligence74

[Image Classification] VGGNet (cats-and-dogs) VGG16 케라스 API에서는 이 아키텍처의 구현물을 공식적으로 제공하며 tf.keras.application 패키지를 통해 접근할 수 있다. 이 패키지에는 그 외에도 잘 알려진 모델이 포함되어 있으며 각 모델에 대해 ‘사전에 훈련된’ 매개변수 (특정 데이터셋에서 사전에 훈련시키는 과정에서 저장해둔 매개변수)도 제공한다. 예를 들어, 다음 명령어로 VGG 네트워크를 인스턴스화할 수 있다. Vgg_net = tf.keras.applications.VGG16( Include_top = True, weights = ‘imagenet’, input_tensor = None, Input_shape = None, pooling = None, classes = 1000) 이 기본 인수를 사용해 케라스는 VGG-16 .. 2022. 9. 6.
[Image Classification] VGGNet VGGNet VGGNet은 옥스포드 대학의 연구팀에 의해 개발된 모델로써, 2014년 ILSVRC에서 준우승한 모델이다. 이 모델은 이전에 혁신적으로 평가받던 AlexNet이 나온지 2년만에 다시 한 번 오차율 면에서 큰 발전을 보여줬다. VGGNet의 original논문의 개요에서 밝히고 있듯이 이 연구의 핵심은 네트워크의 깊이를 깊게 만드는 것이 성능에 어떤 영향을 미치는지를 확인하고자 한 것이다.VGG연구팀은 깊이의 영향 만을 최대한 확인하고자 컨볼루션 필터 커널의 사이즈는 가장 작은 3x3으로 고정했다. VGG 연구팀은 original 논문에서 총 6개의 구조 (A, A-LRN, B, C, D, E)를 만들어 성능을 비교했다. 여러 구조를 만든 이유는 기본적으로 깊이의 따른 성능 변화를 비교하기 .. 2022. 9. 6.
[Image Classification] GoogleNet GoogleNet GoogLeNet은 2014년도 ILSVRC (ImageNet Large Sclae Visual Recognition Challenge)에서 우승한 CNN 네크워크이다. 정확하게 보면 GoogLeNet은 Inception이라는 개념의 네트워크들 중 하나이다. CNN의 성능 향상 기법 CNN의 성능을 향상시키기는 가장 직접적인 방식은 망의 크기를 늘리는 것이다. 망의 크기를 늘린다는 것은 단순하게 망의 레이어 수 (depth)를 늘리는 것 뿐만 아니라, 각 레이어에 있는 유닛의 수(width)도 늘리는 것을 의미한다. 특히, ImageNet과 같은 대용량 데이터를 이용한 학습의 경우 필수적이다. 깊은 망의 부작용 망이 깊어지면 성능이 높아지지만 2가지 중대한 문제가 발생한다. 망이 깊어질.. 2022. 9. 6.
[Image Classification] AlexNet AlexNet ILSVRC은 ImageNet Large Scale Visual Recognition Challenge의 약자로 이미지 인식 (image recognition) 경진대회이다. 2012년 CNN 기반 딥러닝 알고리즘 AlexNet이 우승을 차지한 이후에는 깊은 구조(deep architecture)를 가진 알고리즘들이 우승을 차지했다. 오늘날 사용하고 있는 딥러닝 구조들은 AlexNet에서 계승 되었다고 해도 과언이 아니다. 첫번째 딥러닝 모델로써, 처음 ReLU와 GPU를 사용했다. 또한, Overfitting을 줄이기 위해 Dropout, Data Augmentation 적용하였다. ZFNet ZFNet은 CNN의 구조를 결정하는 Hyperparameter를 어떻게 설정할 것인지는 매우 .. 2022. 9. 6.
[시각 지능] Roboflow Roboflow Roboflow는 개발자가 기술이나 경험에 관계없이 자신의 컴퓨터 비전 애플리케이션을 구축할 수 있도록 지원한다. 원시 이미지를 훈련된 맞춤형 컴퓨터 비전 모델로 변환하고 애플리케이션에서 사용하기 위해 배포하는 데 필요한 모든 도구를 제공한다. 현재 Roboflow는 객체 감지 및 분류 모델을 지원한다. https://public.roboflow.com/object-detection/mask-wearing/4에서 포맷을 YOLO v5 Pytorch로 다운로드하고 파일 이름을 Mask_Data.zip으로 변경한다. YOLOv5 설치 # Colab root dir ROOT_DIR = '/content' import os YOLOv5_ROOT_DIR = os.path.join(ROOT_DIR,.. 2022. 9. 4.
[Object Detection] YOLOv5 YOLOv5 YOLO는 'You only look once'의 약자로 이미지를 그리드 시스템으로 분할하는 객체 감지 알고리즘이다. 그리드의 각 셀은 자체 내에서 개체를 감지하는 역할을 한다. YOLO는 속도와 정확성으로 인해 가장 유명한 객체 감지 알고리즘 중 하나이다. YOLOv5🚀COCO 데이터 세트에서 사전 훈련된 객체 감지 아키텍처 및 모델이며, 수천 시간의 연구 및 개발을 통해 학습한 교훈과 모범 사례를 통합하여 미래 비전 AI 방법에 대한 Ultralytics 오픈 소스 연구가 있다. YOLOv4 출시 직후 Glenn Jocher는 Pytorch 프레임워크를 사용하여 YOLOv5를 도입했다. 오픈 소스 코드는 GitHub 에서 사용할 수 있다. YOLOv5 설치 구글 코랩에서 진행한다. %cd.. 2022. 9. 4.
[Object Detection] YOLO Inference YOLO Inference 입력 이미지를 7 x 7 그리드 셀로 나누며, 각각의 그리드 셀에 들어있는 2개의 bounding box 정보와 물체의 클래스 정보가 들어있는 7x7x (5+5+20) 데이터가 YOLO 예측 결과이다. 1st bounding box of a grid cell 2nd bounding box of a grid cell Class score class-specific confidence score 계산 YOLO에서는 동일한 객체에 대하여 많은 bounding box가 잡힐 수 있다. 98개 bbox 각각이 가지고 있는 class specific confidence score에 대해서 각 20개의 클래스에 대해 신뢰도가 가장 높은 bbox만 남기고 나머지 bbox를 없애는 NMS (n.. 2022. 9. 3.
[시각 지능] TPU (Tensor Processing Unit) TPU (Tensor Processing Unit) 구글에서 2016년 5월에 발표한 데이터 분석 및 딥러닝용 NPU를 모아놓은 하드웨어이다. 벡터/행렬연산의 병렬처리에 특화되어 있으며 넘사벽급의 전성비를 자랑한다. 비결은 8비트 정수 연산을 활용하는 것이다. 이는 NVIDIA등에서도 실현한적 있다. 차이점이라면, TPU는 모델의 실행뿐만 아니라 학습 과정에도 8비트 정수 연산을 활용할 것으로 추정된다는 것이다. (자세한 정보 공개가 없는 상황이라 정확하진 않지만) GPGPU에서 딥러닝에 필요한 것들만 남기고 나머질 다 빼버린 설계와 비슷하다는 추측도 있다. 성능 항목의 PCI-E 병목 문제를 생각하면 APU (정확히는 HSA)나 NVLINK에 가까운 구조를 포함하는 것일 수도 있다. NVIDIA의 경우.. 2022. 9. 3.
[Object Detection] labelimg labelimg LabelImg는 그래픽 이미지 주석 도구이다. Python으로 작성되었으며 그래픽 인터페이스에 Qt를 사용한다. 주석은 ImageNet에서 사용하는 형식인 PASCAL VOC 형식의 XML 파일로 저장된다. 또한, YOLO 및 CreateML 형식도 지원한다. 윈도우의 경우 https://github.com/heartexlabs/labelImg/releases/tag/v1.8.1에서 windows_v1.8.1.zip을 다운받는다. 압축 푼 후 디렉토리는 C: 또는 D: 바로 아래에 있어야 한다. 즉, D:/labelImg와 같이 위치해야 하며, 만약 D:/Test/labelImg 같이 임의의 디렉토리의 서브디렉토리면 실행이 되지 않는 경우가 많다. # 설치 pip3 install lab.. 2022. 9. 3.
[Object Detection] YOLO (You Only Look Once) YOLO (You Only Look Once) YOLO는 You Only Look Once 약어로써, 2015년 Joseph Redmon이 워싱턴 대학교에서 친구들과 함께 YOLO 아키텍처와 논문을 발표했다. 당시만 해도 two-shot-detection 방식인 Faster R-CNN (Region with CNN)가 가장 좋은 성능을 냈지만 실시간성이 굉장히 부족했다 (7 FPS 최대). 이때, one-shot-detection 방식으로 동작하는 YOLO가 등장하여 평균 45 FPS에서 실행되었으며 빠른 버전의 경우 최대 155 FPS을 기록했다. YOLO 아키텍처 YOLO 아키텍처는 feature extractor로써 Google LeNet+ 5개의 new layer를 사용하며, Flatten lay.. 2022. 9. 3.
728x90
반응형
LIST