728x90 ๋ฐ์ํ All Post105 LLM์ ๋ชจ๋ ๊ฒ 1 [RAG-Retrieval Augmented Generation] 1. RAG - Retrieval Augmented Generation : ๊ฒ์ ์ฆ๊ฐ ์์ฑ : ์๋ก์ด ์ง์์ ๊ดํ ํ ์คํธ ๋ฐ์ดํฐ ์์ค๋ฅผ Embeddingํด์ Vector stores์ ์ ์ฅํ๊ณ , ํ๋กฌํํธ ๊ตฌ์ฑ์ ์งํํ ๋ ์ธ๋ถ ๋ฐ์ดํฐ ์์ค๋ก๋ถํฐ ๊ฐ์ ธ์จ ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ํจ๊ป ์ด์ฉํด์ ํ๋กฌํํธ๋ฅผ ๊ตฌ์ฑํ ๋ค LLM์ผ๋ก๋ถํฐ ๋ต๋ณ์ ์ป์ด๋ธ๋ค. ์ฌ์ฉ์ ์ง๋ฌธ ์ง๋ฌธ ์๋ฒ ๋ฉ ๋ฐ ๋ด ๋ฐ์ดํฐ๋ ์๋ฒ ๋ฉ ์งํ ์ดํ, ๋ฒกํฐ DB(์ ์ฅ์)์ ์๋ฒ ๋ฉ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ ์ง๋ฌธ์ ์ด์ฉํด ์ ์ฅํด๋์ DB ์ ์ฅ์์์ ๊ฒ์ ์ง์ ํ๋กฌํํธ ๊ตฌ์ฑ + ์ง๋ฌธ(query ์ฌ์์ฑ) + ๊ฒ์ ๊ฒฐ๊ณผ n๊ฐ > ์ธ์ด๋ชจ๋ธ GPT์๊ฒ ์ ๊ณต ์ธ์ด ๋ชจ๋ธ์ด ๋ต๋ณ ์์ฑ ๋ต๋ณ ์ถ๋ ฅ 2-2) ์๋ฒ ๋ฉ ๋ชจ๋ธ : AI๊ฐ ์ฌ๋์ ์ธ์ด๋ฅผ ์ดํดํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ผ๋ก ์ซ์๋ก ๋ณํ ํด์ฃผ๋ AI.. 2024. 3. 5. [Transformer] train.py, dataset.py, config.py, Mask ๊ตฌํํ๊ธฐ - 2 (Pytorch) ์ง๋ ์๊ฐ์ ์ด์ด, ์ค๋์ ๋๋จธ์ง train.py, config.py, dataset.py ํ์ผ์ ๊ตฌํํ๋ค. https://www.youtube.com/watch?v=ISNdQcPhsts ์ด ๋ถ ์ฝ๋๋ฅผ ๋ฐํ์ผ๋ก ๊ตฌํํ์์ต๋๋ค. 1. Dataset.py ๊ตฌํ 1-1. Bilingual Dataset ์ฌ์ฉํ ๋ฐ์ดํฐ์ ์ Hugging Face์์ ์ ๊ณตํ๋ opus_books Dataset์ ํ์ฉํ์๋ค. https://huggingface.co/datasets/opus_books/viewer/en-it opus_books · Datasets at Hugging Face { "en": "Nor could I pass unnoticed the suggestion of the bleak shores of Laplan.. 2024. 2. 21. [Transformer] ์ํคํ ์ฒ ๊ตฌํํ๊ธฐ - 1 (Pytorch) Transformer๋ ๋ ผ๋ฌธ์ผ๋ก๋ง ์ฝ์ด๋ดค์ง, ์ฝ๋๋ก ๋ฏ์ด๋ณด๋ ๊ฒ์ ์ฒ์์ด๋ค. ๋ ผ๋ฌธ ์ ์๋ค์ ์ ๋ง ์ฒ์ฌ๊ฐ ๋ง๋ ๊ฒ ๊ฐ๋ค. ์ ํ๋ธ๋ฅผ ์ฐธ๊ณ ํด์ ์ฝ๋๋ฅผ ๊ตฌํํ์์ผ๋ฉฐ, ์ด๋ฒ ํฌ์คํ ์ ์ค๋ก์ง ์ํคํ ์ฒ์๋ง ์ด์ ์ ๋ง์ท๋ค. ๋ฐ์ดํฐ ๋ถ๋ถ์ ๋ค์์ฃผ์ ์ฌ๋ฆด ์์ . 1. Input Embedding ๊ตฌํํ๊ธฐ import torch import torch.nn as nn import math #Input embedding class InputEmbeddings(nn.Module): #d ์ฐจ์ ์ค์ , vocab size ์ค์ (์ผ๋ง๋ ๋ง์ ๋จ์ด ๋ฃ์๊ฑด์ง) def __init__(self,d_model : int, vocab_size : int): super().__init__() self.d_model = d_model self... 2024. 2. 17. [UNet] copy and crop ์ฝ๋ ๊ตฌํ ๋ฐ ์ํคํ ์ฒ ๊ตฌํํ๊ธฐ (Pytorch) ๋ค๋ฅธ ๋ธ๋ก๊ทธ๋ค์์๋ padding์ 2๋ก ๋ง์ถฐ์, ๋ฐ๋ก copy and crop์ ํ์ง ์์์ง๋ง, ํด๋น ๋ ผ๋ฌธ์ ๊ทธ๋ฆผ์ ๋ณด๊ณ ์ฌํํ๊ธฐ ์ํด padding=0์ผ๋ก ์ค์ ํด์ ๋ณธ ์ํคํ ์ฒ๋ฅผ ์๋ก ๊ตฌ์ถํ์๋ค. import torch.nn as nn import torch.nn.functional as F import torch import os import numpy as np from torchvision import transforms #https://sd118687.tistory.com/8 (Mirroring extrapolate) class UNet(nn.Module): #copy and crop ํจ์ ์ ์ #batch_size, channels, height, width def copy_and_crop(.. 2024. 2. 8. TOBIG's [์ฌ์ธตํ์ต] ์ 5์ฅ ๊ธฐ๊ณ ํ์ต์ ๊ธฐ์ด 5.1 ํ์ต ์๊ณ ๋ฆฌ์ฆ 5.1.1 ๊ณผ์ T - ๊ธฐ๊ณํ์ต์ ๊ณผ์ ๋ ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ๊ณ ํ์ต ์์คํ ์ด ๊ฒฌ๋ณธ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ ์์ ํ๋ ํํ๋ก ์ ์๋๋ค. ์ฌ๊ธฐ์ ๊ฒฌ๋ณธ์ด๋ ๊ธฐ๊ณ ํ์ต ์์คํ ์ ์ฒ๋ฆฌ ๋์์ธ ์ด๋ค ๋ฌผ์ฒด๋ ์ฌ๊ฑด์ผ๋ก๋ถํฐ ์ ๋์ ์ผ๋ก ์ธก์ ํ ํน์ง(feature๋ค์ ์งํฉ)์ ์๋ฏธํ๋ค. ์๋ฅผ ๋ค์ด ๊ฒฌ๋ณธ ๋์งํธ ์ด๋ฏธ์ง์ ํน์ง๋ค์ ์ด๋ฏธ์ง๋ฅผ ๊ตฌ์ฑํ๋ ํฝ์ ๊ฐ์ด๋ค. ๋ค์์ ๊ฐ์ฅ ํํ ๊ธฐ๊ณ ํ์ต ๊ณผ์ ๋ช ๊ฐ์ง์ด๋ค. 1. ๋ถ๋ฅ 2. ๊ฒฐ์ธก ์ ๋ ฅ์ด ์๋ ์๋ฃ์ ๋ถ๋ฅ : ์ ๋ ฅ ๋ฒกํฐ์ ๋ชจ๋ ์ธก๋๊ฐ ํญ์ ๋ณด์ฅ์ด ์์ ๋๋ ๋ถ๋ฅ๊ฐ ๋ ์ด๋ ค์์ง๋ค. ๋ฐ๋ผ์, ๋ชจ๋ ๊ด๋ จ ๋ณ์์ ๊ดํ ํ๋ฅ ๋ถํฌ๋ฅผ ํ์ตํ๊ณ , ๊ฒฐ์ธก๊ฐ๋ค์ ์ฃผ๋ณํํด์ ๋ถ๋ฅ ๋ฌธ์ ๋ฅผ ํ๊ธฐ๋ ํ๋ค. 3. ํ๊ท 4. ์ ์ฌ(์ฎ๊ฒจ์ฐ๊ธฐ) : ํด๋น ์ข ๋ฅ์ ๊ณผ์ ์์ ๊ธฐ๊ณ ํ์ต ์์คํ ์ ๋น๊ต์ ๊ตฌ์กฐ์ ์ด.. 2024. 2. 2. [TOBIG's] ์ฌ์ธตํ์ต - ์ 4์ฅ ์์น๊ณ์ฐ ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ๊ณ ํ์ต ์๊ณ ๋ฆฌ์ฆ์๋ ๋๋์ ์์น ๊ณ์ฐ์ด ํ์ํ๋ค. ์ด๋ค ๋ฐ๋ณต์ ์ธ ๊ณผ์ ์ ํตํด ์ ๋ต์ ์ถ์ ๊ฐ์ ๊ณ์ ๊ฐฑ์ ํจ์ผ๋ก์จ ๋ฌธ์ ๋ฅผ ํ์ง๋ง, ์ ํํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฐ์ง ๋์งํธ ์ปดํจํฐ๋ ์ค์๋ฅผ ์ ํํ๊ฒ ํํํ ์ ์๊ธฐ์ ์ฝ๊ฐ์ ํ๊ณ๊ฐ ์กด์ฌํ๋ค. 4.1 ๋์นจ๊ณผ ์๋๋์นจ - ์๋๋์นจ(underflow) : 0์ ๊ฐ๊น์ด ์๊ฐ ๋ฐ์ฌ๋ฆผ ๋๋ฌธ๋ฐ ์ ํํ 0์ด ๋๋ ๊ฒ์ ๋งํ๋ค. - ๋์นจ(overflow) : ํฌ๊ธฐ๊ฐ ํฐ ์๊ฐ ๋ฌดํ๋ ํน์ ๋ง์ด๋์ค ๋ฌดํ๋๋ก ๊ทผ์ฌ๋๋ ๊ฒ์ ๋งํ๋ค. -> ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ฐ ์ฐ์ด๋ ํจ์๊ฐ ๋ฐ๋ก ์ํํธ๋งฅ์ค ํจ์์ด๋ค. ๋ฉํฐ๋์ด ๋ถํฌ๋ฅผ ๋ฐ๋ฅด๋ ํ๋ฅ ๋ค์ ์์ธกํ๋๋ฐ ํํ ์ฌ์ฉ๋๋ค. 4.2 ๋์ ์กฐ๊ฑดํ - ์กฐ๊ฑดํ : ์ ๋ ฅ์ ์์ ๋ณํ์ ๋ํด ํจ์๊ฐ ์ผ๋ง๋ ๊ธํ๊ฒ ๋ณํ๋์ง๋ฅผ ๋ปํ๋ ์ฉ์ด์ด๋ค. ๊ณผํ ๊ณ์ฐ์.. 2024. 2. 2. ์ด์ 1 2 3 4 5 ยทยทยท 18 ๋ค์ 728x90 ๋ฐ์ํ