전체 글

Red Hat의 심심한 블로그입니다.
Llava를 보면 text to text llm + ViT encoder 조합으로 VLM을 만들었다.그 과정을 MNIST 데이터를 통해 간단하게 따라 해보고자 한다. ViT Encoder는 논문 및 블로그&AI를 참고하여 구현하였으며,LLM은 구현하기에 제한이 많아 가벼운 네이버의 HyperClovaX SEED Text-Instruct 0.5B 모델을 사용. 오늘은 저번 포스팅에서 구현한 ViT Encoder를 LLM과 결합하고 학습 & 추론까지 진행하겠습니다. ※ ViT Encoder 구현 포스트 (저번 포스트) MNIST 데이터로 VLM 만들어보기 (Feat. HyperClovaX) - ViT EncoderLlava를 보면 text to text llm + ViT encoder 조합으로 VLM을 만..
Llava를 보면 text to text llm + ViT encoder 조합으로 VLM을 만들었다.그 과정을 MNIST 데이터를 통해 간단하게 따라해보고자 한다. ViT Encoder는 논문 및 블로그&AI를 참고하여 구현하였으며,LLM은 구현하기에 제한이 많아 가벼운 네이버의 HyperClovaX SEED Text-Instruct 0.5B 모델을 사용. 목표손글씨 데이터를 text-instruct 모델과 결합하여 텍스트만 input이 가능한 모델에 손글씨를 인식하도록 하고자 한다. 준비물MNISTLLM(HyperClovaX SEED Text-Instruct 0.5B)ViT EncoderViT Encoder를 구현하기 위해서는 아래 단계가 필요합니다. 1. 이미지를 토큰화 하는 임배딩 레이어2. 토큰..
Vision과 LLM이 결합된 VLM, 그 중 하나인 LLaVA에 대해 코드 수준으로 알아보려 한다.핵심 기능 하나씩 어떤 역할을 하는지 알아보자 오늘 알아볼 내용은 LLaVA의 Predict 과정입니다.알아보기 앞서, LLavA는 Vision을 담당하는 ViT모델 - CLIP 모델, Language를 담당하는 LLM으로 이루어져있습니다. 추론이 작동하는 방식은 다음 단계와 같습니다. 이미지를 Vision Model로 디지털 데이터화 (Feature)데이터를 이후에 같이 LLM에 넣을 언어 데이터 형식과 동일하게 변경 (Tensor)언어(프롬프트)를 LLM에 넣을 형식으로 변경 (Tensor)두 데이터를 하나로 묶음 (Linear)LLM에 입력 후 추론 & 결과 출력 이제 하나씩 보도록 하겠습니다.코드는..
Pytorch의 모델 가중치 파일을 Onnx로 변환하는 방법을 알아보자 Pytorch에서 Onnx 타입으로 변환하는건 여러 이유가 있습니다. 양자화다른 타입으로 변환등이 있습니다. 오늘은 YOLO의 가중치 파일(.pt)을 ONNX(.onnx)로 바꾸는 방법을 알아보겠습니다. Ultralytics YOLO는 이미 ONNX 로 변환하는 기능을 라이브러리에 포함하여 제공하고 있습니다.Ultralytics의 onnx변환 그리고 pytorch에서 제공하는 onnx 변환 방식 두가지 모두 실행하고 결과를 비교해보겠습니다. 1. Pytorch 모델 가중치 파일 준비from ultralytics import YOLOorigin_model = YOLO('yolo11n.pt')※ 나중에 검증을 빠르게 끝내기 위해서 가장 ..
Red-Hat
Red Hat의 심심한 블로그