GPT 엔지니어어떤 프로그램을 만들지 지정하면, AI가 다시한번 개발 요건을 확인하고, 실제 개발 코드를 작성해줍니다.GPT 엔지니어는 코드 프롬프트를 기반으로 전체 코드 베이스를 생성하기 위해 쉽게 만들 수 있도록 하여, 상세하게 명시할수록 더욱 디테일한 코드를 작성하게 됩니다. 설치pip install gpt-engineerAPI 키 입력OpenAI API 토큰을 설정해야 하는데, 아래 방법 중 하나만 하면 됩니다.환경 변수 설정 (매번 설정하지 않도록 .bashrc나 .zshrc에 추가해도 됩니다.)export OPENAI_API_KEY=[your api key].env 파일프로젝트 파일내에 .env.template 의 사본을 만들어 .env 라고 이름을 지정합니다..env에 OPENAI_API_K..
TorchMetrics란?특징설치함수형 사용법모듈형 사용법새로운 Custom Metric 구현 방법Metric 내부 동작 GPU에서의 사용방법MetricCollection 사용방법Memory management참고자료 TorchMetrics란?TorchMetrics는 PyTorch 에서 사용할 수 있는 Metric 구현 라이브러리이다. 구현된 Metric은 100가지가 넘으며, 쉬운 API 구성으로 훈련 및 평가시 사용할 수 있다.특징PyTorch에서 사용 가능한 다양한 메트릭 함수 제공메트릭 컬렉션을 제공하여 여러 메트릭 함수를 한번에 사용 가능GPU를 사용하여 빠른 속도로 메트릭을 계산할 수 있음분산 학습 호환 및 자동 동기화 metrics 계산 시 배치 단위로 누적 연산이 가능함설치터미널에서 아래 ..

개요Dice score는 IoU와 같이 두 개의 영역 A, B가 얼마나 겹쳐지는 지를 나타내는 지표이다. Segmentation과 같은 기술을 사용할 때, GT와 예측된 영역 Pred를 비교할 때 사용할 수 있다.Dice Coefficient(Score)공식아래와 같이 A와 B의 겹쳐지는 정도로 계산할 수 있다. Dice 공식이 IoU와 다른 점은 분모에 교집합 부분(TP)이 한 번 더 더해지고, 분자에도 이와 마찬가지로 교집합(TP)이 한 번 더 더해진다. IoU=A∩BA∪BIoU=\dfrac{A\cap B}{A\cup B}IoU=A∪BA∩B Dice=2∗∣A∩B∣∣A∣+∣B∣=2∗TP(TP+FP)+(TP+FN)Dice = \dfrac{2*|A\cap B|}{|A| + |B|}= \dfrac{2*T..
AnoGAN AnoGAN안녕하세요, 오늘 정리할 논문은 AnoGAN 입니다. 실제 논문 제목은 "Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery" 입니다.기존 일반 딥러닝 분류 모델에는 다음과 같은 문제가 있습니다.Anomaly에 대한 Annotation 수작업이 필요하다.정상/비정상 데이터에 대해서 비정상 데이터의 개수가 압도적으로 적다.e.g. 공장에서의 비정상 데이터, 특정 질병 데이터위의 문제를 해결하기 위해서 Unsupervised 방법으로 GAN 을 결합하였는데요, 비정상 데이터 없이 정상 데이터만 학습하는 방식입니다.학습방법아래 Fig.1 처럼 GAN 모델에는 Healthy..
[논문리뷰] SphereFace 설명 (Deep Hypershpere Embedding for Face Recognition)개요안녕하세요. 오늘은 얼굴 인식 관련 논문 중 2017년에 나온 SphereFace 논문에 대해 리뷰하겠습니다.우선 얼굴인식 모델의 목표를 알아야 하는데요, 아래 그림과 같이 Closed-set과 Open-set에 대해 이해해야 합니다.Closed-set은 Training Set과 Test Set의 분류해야 할 Class가 같은 것인데요, 예를 들어 강아지/고양이를 분류하는 Training set으로 학습했다면 Test set도 강아지/고양이로만 되어있습니다.반면에, Open-set은 강아지/고양이로 학습했지만 Test는 호랑이/사자를 분류하게 되는 경우입니다. 즉, 특정 cla..

IoU 설명, python 코드(Intersection over Union, object detection 평가방법)IoU란?Python 코드IoU란?IoU는 Intersection over Union의 약자로 보통 두 가지 물체의 위치(Bounding Box)가 얼마나 일치하는지를 수학적으로 나타내는 지표이다. 객체 인식같은 모델을 사용했을 때 실제 물체의 위치와 예측된 물체의 위치를 평가방법으로 사용할 수 있다.설명보다 아래 그림이 단번에 이해하기 쉽다.왼쪽 위 박스를 A, 오른쪽 아래 박스를 B라고 하면 아래와 같은 식이 된다. IoU=A∩BA∪BIoU=\dfrac{A\cap B}{A\cup B}IoU=A∪BA∩B Python 코드위의 공식처럼 두 개의 박스가 있을 때, iou값을 계산하는 코드..
[딥러닝] Albumentations으로 증강 쉽게하기(Augmentation-python)AlbmentationsAlbumentations는 이미지를 손쉽게 augmentation 해주는 python 라이브러리이다. 코드 몇 줄로 매우 쉽게 구현할 수 있다. 또한 다양한 영상변환 알고리즘을 제공하고 있고, 그 처리속도도 매우 빨라 딥러닝 전처리 용으로 유용하게 사용할 수 있다.1. 이미지샘플 이미지로 Pascal VOC 중 하나의 이미지를 사용했습니다. A.Compose() 안에 augmentation하고 싶은 함수가 들어있는 리스트를 입력하면 됩니다. 각 함수들에는 p라는 파라미터를 입력받게 되어있는데, probability의 약자로 해당 함수가 적용될 확률을 입력하면 됩니다. 1이라면 무조건 적용하..
[ML] Pycaret으로 ML모델 쉽게 만들기Pycaret이란?pycaret이란 AutoML을 하게 해주는 파이썬 라이브러리입니다. scikit-learn 패키지를 기반으로 하고 있으며 Classification, Regression, Clustering, Anomaly Detection 등등 다양한 모델을 지원합니다. 공식문서에 설명이 매우 잘 되어있고, 몇 줄의 코드로 쉽게 구현이 가능하여 유용하게 사용할 수 있을 것 같습니다.1. 데이터셋 준비, setuppycaret에서 제공하는 get_data 함수로 juice 데이터를 불러오겠습니다. 데이터를 불러오면 자동으로 .head() 를 실행해 5개의 row를 출력합니다.from pycaret.datasets import get_data dataset..

[딥러닝] 분류 모델의 성능평가 방법(Precision, Recall, Accuracy, F1Score, Confusion Matrix)Confusion Matrix 분류모델에서 아래와 같은 형태로 표현된 테이블True Positive : 정답은 True이고, 분류 결과도 True인 것 (정답)False Positive: 정답은 False이고, 분류 결과는 True인 것 (오답)False Negative: 정답은 True이고, 분류 결과는 False인 것 (오답)True Negative: 정답은 False이고, 분류 결과도 False인 것 (정답) Precision(정밀도)모델이 True라고 한 것 중에 실제 정답이 True인 것 (모델의 관점)위 confusion matrix에서 Precision=TP..
[딥러닝] Tensorflow에서 데이터로더 병렬처리 방법개요tensorflow에서 sequence 데이터로더를 사용하여 학습할 때, 데이터로더 처리 시간이 길어 gpu 사용률(Volatile GPU-Util)이 낮은 경우가 있다. gpu 사용률이 낮은건 다양한 이유가 있지만, 그 중 cpu 처리 속도가 느려 데이터를 로드하는 시간이 길어 학습 연산하는 gpu가 놀고 있는 경우도 있다. 이런 경우에는 학습 시간이 오래 걸리기 때문에, 데이터를 불러오는 시간을 줄여야 한다. 이 때, tensorflow에서 지원하는 OrderedEnqueuer를 사용하면 sequence를 병렬처리하여 시간을 단축시킬 수 있다.OrderedEnqueuer 사용법Sequence 데이터로더 생성Sequence를 상속받아 Data..
- Total
- Today
- Yesterday