dl

🖥️ Deep Learning

[DL] Quantization(양자화), LoRA & QLoRA

이번에는 Quantization(양자화), LoRA & QLoRA에 데하여 한번 알아보겠습니다.Quantization(양자화)? Quantization(양자화)는 딥러닝 모델의 메모리 사용량과 계산 효율성을 향상시키기 위한 기술로, 고정 소수점(fixed-point) 숫자 표현을 사용하여 모델의 가중치와 활성화 값을 표현하는 방식입니다. 이는 훈련된 모델의 정확성을 최대한 유지하면서도 성능을 개선하는 것을 목표로 합니다.Quantization(양자화)의 필요성딥러닝에서 Quantization(양자화)가 필요한 이유에 데하여 한번 알아보겠습니다.메모리 절감: 모델 파라미터의 크기를 줄여 메모리 사용량을 절감합니다.연산 속도 향상: 고정 소수점 연산은 부동 소수점 연산보다 빠르기 때문에 추론 속도가 빨라집니..

🖥️ Deep Learning

[DL] Model Distillation (모델 증류)

이번에는 Model Distillation (모델 증류)에 관한 내용에 데하여 한번 설명해 보도록 하겠습니다.What is Model Distillation (모델 증류)? 모델 증류는 딥러닝에서 큰 모델의 지식을 작은 모델로 전달하여, 작은 모델이 큰 모델의 성능을 최대한 모방하도록 하는 기법입니다.이 방법은 큰 모델(교사 모델, Teacher Model)이 복잡한 패턴과 지식을 이미 학습한 상태에서, 그 지식을 작은 모델(학생 모델, Student Model)에 전달하여 더 효율적인 모델을 만드는 것을 목표로 합니다. Model Distillation (모델 증류)의 필요성그러면 Model Distillation (모델 증류)가 필요한 이유는 무엇일까요?자원 효율성: 대형 모델은 높은 성능을 보이지만..

🖥️ Deep Learning

[DL] Finetuning (파인튜닝)

이번에는 Fine-Tuning (파인튜닝)에 데하여 한번 알아보겠습니다. 파인튜닝(Finetuning)은 딥러닝과 LLM 모두에서 널리 사용되는 방법론으로, 이미 사전 학습된 모델을 특정 작업에 맞게 추가 학습시키는 과정을 의미합니다. 파인튜닝은 기본적으로 동일한 원리를 공유합니다. Fine-Tuning?  Fine-Tuning(파인튜닝)은 사전 학습(Pre-training)된 모델을 특정한 작업에 맞게 추가로 학습하는 과정입니다.사전 학습 단계에서는 모델이 일반적인 패턴을 학습하고, 파인튜닝 단계에서는 이 모델을 특정한 목적에 맞춰 최적화합니다.이미 사전 학습을 통해 학습된 모델의 일반적인 지식을 활용하여, 새로운 작업이나 데이터셋에 빠르게 적응하는 것이 목표입니다.Pre-Training vs Fine..

👀 Computer Vision

[CV] Object Detection & Segmentation을 위한 패키지 & CUDA 소개

Object Detection & Segmentation을 위한 다양한 패키지들Object Detection & Segmentation을 위한 다양한 패키지들이 있습니다.Keras와 Tensorflow 기반의 다양한 오픈소스 패키지들쉬운 활용과 Customization 가능한 장점이 있습니다.다만 Object Detection 알고리즘 별로 서로 다른 패키지들을 적용해야 하는 단점이 있습니다.OpenCV 의 DNN(Deep Neural Network) 모듈간편하게 Object Detection Inference가 가능합니다.다만 학습이 불가능하며 주로 CPU 위주로 GPU 활용이 어렵다는 점이 있습니다.Tensorflow Object Detection API가장 많은 Detection 알고리즘에 적용이 ..

🖥️ Deep Learning

[DL] Transfer Learning - 전이 학습

Transfer Learning, 즉 전이 학습은 ML(머신 러닝)과 DL(딥러닝)에서 기존의 Pre-Training 된 모델을 새로운 작업에 재사용하는 기법입니다. 이 방법은 특히 대규모 데이터셋에서 학습된 모델을 작은 데이터셋에 적용할 때 유용합니다.전이 학습은 모델이 사전 학습한 지식을 새로운 문제에 적용하여 학습 속도를 높이고 성능을 향상시킬 수 있습니다.Transfer Learning (전이 학습)기존의 Neural Network(신경망)에서 최상위 부분을 새로 정의한 다음, 이 부분을 Training 시키는 것이 Transfer Learning (전이 학습) 이라고 합니다.이때 Neural Network(신경망)의 하위 부분은 이미 Training된 Neural Network(신경망)을 사용하..

👀 Computer Vision

[CV] OpenCV 영상처리 개요

OpenCV 영상 처리 개요한번 OpenCV의 영상처리 방법에 데하여 알아보겠습니다.OpenCV의 VideoCapture클래스는 동영상을 개별 Frame으로 하나씩 읽어(Read)들이는 기능을 제공합니다.VideoWriter는 VideoCapture로 읽어들인 개별 Frame을 동영상 파일로 Write를 수행합니다.VideoCapture.read() - 영상의 다음 Frame을 읽습니다.VideoWriter.write() - 영상의 Frame을 write 합니다.cap = cv2.VideoCapture(video_input_path)…………vid_writer = cv2.VideoWriter(video_output_path, …..)while True:hasFrame, img_frame = cap.read..

👀 Computer Vision

[CV] OpenCV 개요

Python 기반 주요 이미지 라이브러리크게 3가지가 있습니다.PIL (Python Image Library)주로 이미지 처리만을 위해 사용합니다.처리 성능이 상대적으로 느리다는 단점이 있습니다.Scikit-Image파이썬 기반의 전반적인 컴퓨터 비전 기능 입니다.사이파이(Scipy)에 기반하고 있습니다.OpenCV오픈소스 기반의 최고 인기 컴퓨터 비전 라이브러리 입니다.컴퓨터 비전 기능 일반화에 크게 기여 했다는 특징이 있습니다.(어려운 기능도 API 몇줄로 간단하게 구현이 가능합니다.)C++ 기반이나 Python도 지원합니다. (Java, C# 등 다양한 언어 지원) OpenCV 특징OpenCV (Open Source Computer Vision Library)는 컴퓨터 비전과 머신 러닝을 위한 오픈..

🖥️ Deep Learning

[DL] 대표적인 CNN Network - LeNet 5, AlexNet, ZFNet, VGGNet, GoogLeNet, ResNet

이번글에서는 다양한 CNN 네트워크에 데하여 알아보겠습니다. LeNet 5LeNet-5는 기본적인 CNN 아키텍처를 정의하며, 현재의 딥러닝의 기초가 되었습니다.주로 손글씨 숫자 인식(MNIST 데이터셋) 문제를 해결하기 위해 개발되었으며, 또한 현대 CNN의 기초를 마련한 모델로 여겨집니다.LeNet-5는 총 7개의 레이어(입력과 출력 포함)로 구성된 네트워크입니다.LeNet-5의 구조는 크게 두 부분으로 나눌 수 있습니다.Convolutional Neural Network (CNN)Fully Connected Network (FCN)각 레이어는 특정한 역할을 수행하며, Convolutional Neural Network(CNN - 합성곱 레이어)와 서브샘플링 레이어(Pooling Layer)를 교대로..

🖥️ Deep Learning

[DL] Convolution & Pooling Layer 구현해보기

이번에는 Convolution Layer, Pooling Layer를 한번 구현해 보겠습니다. Convolution & Pooling Layer 구현해보기4-Dimension Array (4차원 배열)Convolution Neural Network(CNN)에서 Layer 사이를 흐르는 데이터는 4차원입니다.예를 들어서 데이터의 형상이 (10, 1, 28, 28)이면?Height(높이): 28, Width(너비): 28, Channel(채널): 1개인 데이터가 10개라는 이야기 입니다.이를 Python으로 구현하면 아래의 코드와 같습니다.x = np.random.rand(10, 1, 28, 28) # 무작위로 데이터 생성x[0, 0] # 또는 x[0][0] 첫번째 데이터의 첫 채널 공간 데이터에 접근여기에..

🖥️ Deep Learning

[DL] Convolution Neural Network - CNN (합성곱 신경망), Convolution Layer, Pooling Layer

Convolutional Neural Network, CNN은 이미지 인식 & 음식 인식등 다양한 곳에서 사용됩니다.특히 이미지 인식 분야 에서 딥러닝을 활용한 기법은 거이 다 CNN을 기초로 합니다.CNN 전체 구조Convolution Layer(합성곱 계층)과 Pooling Layer(풀링 계층)이 이번에 새로 등장합니다.우리가 본 지금까지의 Neural Network(신경망)은 모든 Neuron과 연결되어 있었습니다.이를 Fully-Connected (FC) - 완전연결 이라고 하며, 완전히 연결된 Layer는 'Affine 계층' 이라는 이름으로 구현했습니다.만약 Affine 계층을 사용하면, Layer가 5개인 Fully-Connected Neural Network(FC 신경망)은 아래의 구림과..

Bigbread1129
'dl' 태그의 글 목록