본문 바로가기

728x90

분류 전체보기

(147)
AI 개론 _ OpenCV를 이용한 컴퓨터 비전3 + OpenCV를 이용한 객체 검출, 동영상 처리 실습 1차 이산함수 미분  영상과 1차 미분영상 1차 미분을 이용한 에지 검출 특징 검출 : Sobel edqe Sobel 필터 연산결과                                                                   dx                                                            dy 그래디언트 (Gradient) 실제 영상에서 구한 그래디언트 크기와 방향그레디언트 크기 : 픽셀  값의 차이 정도, 변화량그레디언트 방향 : 픽셀 값이 가장 급격하게 증가하는 방향 Canny edge Canny edge criteria canny edge Hough transform : 직선 검출    Hough transform: 직선 검출 ..
AI 개론 _ OpenCV를 이용한 컴퓨터 비전2 + OpenCV를 이용한 기하학적 변환 실습 영상 필터링 블러링 : 평균값 필터 가우시안 필터 Gaussian filtering 가우시안 필터 적용 결과 샤프닝 필터 구현 샤프닝 필터  양방향 필터 OpenCV Bitwise 기하학적 변환 Affine transform𝐿𝑖𝑛𝑒𝑎𝑟 𝑡𝑟𝑎𝑛𝑠𝑓𝑜𝑟𝑚휘어짐이 없고 평행한 선들은 평행을 유지하는 변환이동, 회전, 스케일 및 이들의 조합에 의한 변환 𝑥'  = 𝑎0𝑥 + 𝑎1𝑦 + 𝑎2, 𝑦'  = 𝑏0𝑥 + 𝑏1𝑦 + 𝑏2ℎ𝑜𝑚𝑜𝑔𝑒𝑛𝑒𝑜𝑢𝑠 𝑐𝑜𝑜𝑟𝑑𝑖𝑛𝑎𝑡𝑒 𝑠𝑦𝑠𝑡𝑒𝑚 사용 위치 이동 회전 이동 영상 확대전단 변환 (Shearing) WarpingNonlinear transform (rubber sheet..
AI 개론 _ OpenCV를 이용한 컴퓨터 비전 + opencv를 이용한 영상 정규화 실습 opencv를 이용한 컴퓨터 비전 computer vision Top project 2024기준Football player detefish detection in seavehicle detection tracking and countinpersonal protective equipment detection and monitoringvirtual gym using pose estimation 디지털 영상 처리 분류화소 점 처리 (point processing)화소 점의 원래 값이나 화소 점의 위치를 기반으로 화소 값 변경영역 처리 (area processing)화소의 원래 값과 이웃하는 화소의 값을 기반으로 화소값 변경기하학 처리 (geometric processing)화소들의 위치나 배열을 변화시킴프레임..
가상의 Function Calling 함수를 이용한 실습 pip install openai gradioimport osimport jsonimport pandas as pdfrom datetime import datetimefrom typing import Dict, List, Optional, Unionfrom openai import OpenAIimport gradio as gr# 샘플 데이터 (실제 구현에서는 DB나 API에서 가져올 것입니다)products_data = [    {"상품ID": "P001", "상품명": "프리미엄 강아지 간식 세트", "물류창고ID": "W02", "카테고리": "반려용품", "재고수량": 36, "가격": 32417, "입고일자": "2022-01-14"},    {"상품ID": "P002", "상품명": "고양이 캣..
Function Calling 에이전트 !pip -q install langchain openai tiktoken yfinance langchain_community langchain_openaiimport osos.environ["OPENAI_API_KEY"] = "본인 open api Key 값"Function Calling 함수 명세 예시 간단 예시Function Calling을 하기 위해서는 함수의 명세를 아래와 같은 형식으로 작성해야 합니다.functions = [   {       "name": "get_current_weather",       "description": "현재 날씨 정보 가져오기",       "parameters": {           "type": "object",           "properties":..
Function Calling 예시 - 행거 챗봇 예시 펑션 콜링을 학습하기 위해서 공부한 흔적입니다.아래 내용은 실제 Function Calling 이 아니라 Function Calling 이 왜 필요한가를 설명하는 예시 내용에 가깝다라고 생각하면 됩니다.사용자의 대화를 이해하고 (멀티턴 포함) 충족하는 함수의 호출 조건이 되면 LLM은 어떤 함수를 어떤 파라미터로 호출해야하는지 제안합니다.우리의 코드는 LLM이 함수 호출을 제안하는 순간 실제로 함수를 호출하면, 호출 결과를 LLM에게 전달하면 LLM은 호출 결과를 바탕으로 다시 답변하는 것 입니다.!pip install openai 1. 정보 수집import osos.environ['OPENAI_API_KEY'] =  "본인 openai Key 값"from openai import OpenAIclient..
여러 문서에서 찾아서 답변하는 챗봇 만들기 !pip install -q langchain langchain-openai openai tiktoken chromadb langchain-community!wget https://github.com/chatgpt-kr/chatgpt-api-tutorial/raw/main/ch05/data.zip!unzip dataArchive: data.zip inflating: 1.txt inflating: 10.txt inflating: 11.txt inflating: 12.txt inflating: 13.txt inflating: 14.tx..
LoRA Tuning LLM이 있을 때 모델 전체를 파인 튜닝하는 것은 Full Fine Tuning기존 LLM은 고정해두고 일부 파라미털르 추가하여 학습하는 것이 LoRA Tuning학습 시 LoRA Tuning 은 더 적은 리소스로 학습 가능하며 상황에 따라서 Full Fine Tuning 보다 성능이 우수함vLLM으로 Multi LoRA Serving 을 사용하면 하나의 LLM으로 다수의 모델 Serving 효과를 얻을 수 있음 LoRA TuningLoRA Tuning은 기존 LLM 파라미터는 고정하고, 아래의 그림에서 초록색 박스와 같이 A, B 행렬만 학습한다.파라미터 W(d x d)가 LLM이라고 한다면, LoRA Tuning은 W는 학습하지 않는다.LoRA Tuning은 행렬 A(d, r)과 행렬 B(r, d)를..
RAG를 위한 파인 튜닝 데이터셋 실습 EDA RAG를 위한 파인 튜닝 데이터셋 실습https://huggingface.co/datasets/iamjoon/klue-mrc-ko-rag-dataset iamjoon/klue-mrc-ko-rag-dataset · Datasets at Hugging Face[ "블리자드 엔터테인먼트(Blizzard Entertainment, Inc.)의 인기 디지털 카드 게임 하스스톤(Hearthstone®) e스포츠를 대표하는 세계 최고의 선수들 여덟 명이 챔피언의 전당에 이름을 올리기 위해 벌이는huggingface.copip install datasetsimport numpy as npimport matplotlib.pyplot as pltfrom datasets import load_datasetdataset = ..
Fine-tuning For RAG RAFT: Adapting Language Model to Domain Specific RAGUC Berkeley 논문사용자의 질문과 연관된 문서와 정답과 연관이 없는 문서를 섞어서 검색 결과로 가정하고 데이터셋을 구축이 때 연관이 없는 문서들을 negative documents라고 하며 학습에 도움을 주게 된다.이는 Fine-tuning 시 답변과 관련 없는 정보를 식별하는 능력을 향상시키기 때문이다. 파인 튜닝 전, 후 LLAMA2의 RAG 성능 차이는 매우 크게 나는 것을 볼 수 있음LLAMA2-7B를 파인 튜닝한 것이 GPT-3.5 에 RAG 를 한 것보다 성능이 더 좋음  원문을 인용하여 답변하게 하면 성능 Up원문을 인용해야 하므로 할루시네이션 억제일종의 Chain of Thought 프롬프트..
MultipleNegativesRankingLoss를 활용한 임베딩 파인 튜닝 MultipleNegativesRankingLoss는 문장 임베딩 모델을 파인 튜닝하는 데 매우 효과적인 손실 함수로. 이 방법에 대해 더 자세히 공부해 보겠습니다. 손실 함수(Loss function): 오차를 계산하는 함수로. AI를 학습할 때는 학습 중인 AI의 예측값과 실제 정답간의 오차를 계산해서 해당 오차를 줄이는 식으로 AI 모델을 학습합니다. 포지티브 샘플과 네거티브 샘플포지티브 샘플(Positive Sample): 의미적으로 관련이 있는 문장 쌍을 의미합니다.예: (문서1: "서울의 인구는?", 문서2: "서울의 인구는 약 970만 명입니다.")네거티브 샘플(Negative Sample): 의미적으로 관련이 없거나 관련성이 낮은 문장 쌍을 의미합니다.예: (문서1: "서울의 인구는?", ..
RAG 실습 이후 + LLM 추천 위에서 RAG 실습과, 서울 청년 정책 챗봇을 만들어보면서 관련 내용들을 학습했는데, 추가적으로 더 성장하기 위해서는 어떤것을을 학습해야할지 생각해 보았다. 멀티모달 RAG에이전트 RAG (멀티턴 Function Calling / ReACT Agent / Plan and Execute Agent / Corrective RAG 등)키워드 기반 검색 : BM-25 와 앙상블 리트리버 (바이인코더) 임베딩 파인튜닝 (+ 검색 성능 Metric (NDGC, MAP 등 ...))크로스인코더 임베딩 모델 파인튜닝을 이용한 ReRankingRAG 답변 성능 향상을 위한 LLM 파인 튜닝 (LLaMA, Qwen, Gemma) 위 모든 것들을 구현하기 위한 Langchain, LangGraph, Huggingface T..

728x90