딥러닝 16

LLM component(1): Residual Connection(작성중)

0. LLM workflow1)입력 인베딩 -> 2)트랜스포머 블록(멀티 헤드 어텐션, 피드포워드 네트워크, 잔차 연결 및 정규화) -> 3)출력 레이어 4) 출력 디코딩1. 정의Residual Connection은 신경망에서 발생하는 기울기 소실(vanishing gradient) 문제를 해결하기 위해 도입되었다.신경망의 특정 층에서 입력값을 출력값에 더해주는 방식인데, 어떤 변환을 수행한 F(X)에원래 입력값인 X를 더해 최종 출력을 만든다. Y = F(X) + X ## 트랜스포머 블록 구조 상 멀티 헤드 어텐션(출력)과 피드 포워드 네트워크(출력과 입력)에 적용import torchimport torch.nn as nnclass FeedForwardNetwork(nn.Module): def _..

스터디/AI 2025.03.05

할루시네이션(2): LLM-Check: Investigating Detection of Hallucinations in Large Language Models

Summary해당 논문은 할루시네이션 탐지 방법 중 모델 튜닝을 하지 않고 single response를 활용한 방법이다.출력 토큰 생성 시 attention map과 hidden_state, output prediction probabilities 값을 사용하여 불확실한 토큰(할루시네이션한 답변) 탐지에 집중하였다.(NuerIPS 2024, Sriramanan et al.)Contributions  1) Model inner states를 활용한 저비용 할루시네이션 탐지 방법 제안 2) 기존에 연구되어 오던 반복 샘플링 기반  할루시네이션 측정방법과 외부지식 활용방법 보다 우수함을 증명 Introduction저자는 LLM 할루시네이션 탐지 방법 중 uncertainty estimation 방법론에 집중..

스터디/논문 2025.02.13

할루시네이션(1): KNOWHALU: HALLUCINATION DETECTION VIA MULTI-FORM KNOWLEDGE BASED FACTUAL CHECKING

Background해당 논문은 할루시네이션 탐지 방법 중 프롬포트 기반 Method와 RAG를 적절하게 결합한 논문이다. (LLM 할루시네이션 문제 해결을 위해 모델 내부지식 또는 외부지식 개입으로 해결하려는 방법론을 결합하였다) Contributions  1) 구체적이지 않은 할루시네이션을 탐지하는 기법과 단계적 사실 확인기법(유사 COT와 RAG) 프레임워크 제안 2) 환각 탐지에 사용되는 쿼리를 공식화하여 World knowledge와의 관계를 탐구 3) 예측결과에 대한 단계별 검증으로 환각의 영향을 줄이고, 기존 SOTA 모델 대비 QA task의 좋은 성능 확보Introduction해당 논문의 저자는 LLM 할루시네이션 탐지를 위해 기존에 수행된 Response의 자기일관성 연구, LLM 히든 ..

스터디/논문 2025.01.26

Unlearning 리뷰(1): A PROBABILISTIC PERSPECTIVE ON UNLEARNING AND ALIGNMENT FOR LARGE LANGUAGE MODELS

Background해당 논문은 Unlearning 관련 방법과 평가지표에 대해 살펴보던 중선행연구의 잊힘의 정도를 파악하는 평가지표가 정성적으로 적합하지 않다 생각하여 찾아보게 되었다.  Contributions  1) 확률론적 관점에서 LLM 언러닝을 평가하는 프레임워크와 평가지표 제안 2) Greedy decoding 기반 점 추정은 결정론적 평가법에서 안전하다 생각하지만 데이터 누수 발생 가능 3) 다항샘플링 시 추출될 수 있는 정보들을 제대로 지우기 위해 엔트로피 최적화와 온도 스케일링 기법 제안Introduction해당 논문의 저자는 AI safety 관점에서 LLM에서의 최종 output 값을 평가하는 결정론적 평가기법을 지적한다.모델의 출력 분포가 아닌 단일값에 집중하는 것은 LLM 모델 공..

스터디/논문 2024.12.14

딥러닝 유틸(1) Tmux

1. Tmux란? 터미널 멀티플렉서로, 하나의 터미널 세션에서 여러 개의 창을 관리하고, 세션을 분리하거나 재접속하는 등 유용한 기능을 제공하는 tool을 의미한다-> 즉, 우리가 모델을 돌릴 때 사용하고 있는 컴퓨터에서 여러 작업 터미널 창을 만들어 주며, tmux에 넣은 작업은 실제 작업 종료 전 까진 중단되지 않는다(작동중인 컴퓨터 종료해도 무관) 2. Tmux 구성요소: 세션(여러 터미널 창을 그룹화), 윈도우(작업 공간), Pane(독립적인 터미널 창) 3. Tmux 설치conda install -c conda-forge tmux # conda# 우분투 기반 도커 컨테이너apt-get updateapt-get install -y tmux# macOSbrew install tmux 4. 명령어# ..

자주 쓰이는 딥러닝(1): 최대우도추정, 크로스엔트로피 로스

최대우도추정: 주어진 데이터셋을 기반으로 확률 모델(로그 우도함수 최대화 하는 파라미터) 추정*우도란? 주어진 파라미터하에서 데이터 X가 관측될 확률엔트로피: 불확성의 척도로, 정보량의 기대값KL-divergence: 확률분포 간 정보량의 차이로, P분포를 추정하는데 Q분포가 얼마나 적합한 지 측정크로스 엔트로피(KL + entropy P)1) 두 확률 분포 p와 q사이의 차이를 측정하는 방법2) 모델이 예측하는 확률 분포 q와 실제 데이터의 분포 p가 얼마나 유사한지 측정크로스 엔트로피 손실함수이진 분류 손실함수다중 클래스 분류

KLUE: Korean Language Understanding Evaluation

KLUE: 한국어 모델의 자연어 이해 능력을 평가하기 위한 데이터 세트. 업스테이지, 네이버 등 수많은 기업이 협업하여 제뉴스기사, 위키피디아, 위키백과, 발화 데이터셋, 에어비앤비 리뷰 등을 학습주요 내용: 8개의 TASK1. Topic Classification(TC)2. Semantic Textual Similarity(STS)3. Natural Language Inference(NLI)4. Named Entitiy Recognition(NER)5. Relation Extraction(RE)6. Depencency Parsing(DP)7. Machine Reading Comprehension(MRC)8. Dialogue State Tracking(DST)

스터디/논문 2024.07.16

NLP(1): 시스템 파이프라인

NLP: 자연어처리, Natural Language Processing컴퓨터가 인간의 언어를 이해하고 해석하는 분야. 텍스트분석, 번역, 감정 분석 등 다양한 APP에 활용분석 과정1. 텍스트 전처리(정규 표현식을 통한 텍스트 전처리, 토큰화, 표제어 추출 등)# 1-1 정규표헌식 전처리import re# [a-zA-Z]: 모든 알파벳, [0-9] 모든 숫자 [ㄱ-ㅎ가-힣]# re.sub(정규표현식, '', text)로 사용 '': 정규표현식에 없는 문자열을 공백 또는 ''으로 대체text = "Python hello world 시작해봅시다"re.sub('[^ㄱ-ㅎ가-힣]', '', text) # '시작해봅시다'이후 영어의 경우 nltk, 한국어의 경우 konlpy 패키지 등을 활용한다# 1-2 토큰화,..

카테고리 없음 2024.07.08

밑바닥부터 시작하는 딥러닝(2): RNN

1. 자연어처리 분야에서 주로 사용하는 알고리즘(I, H, O) 입력, 히든스테이트, 출력 시계열, 연속적인 데이터에 주로 사용-Many to one(Text classification), Many to Many(Poos tagging), One to Many(NLG)-과거 정보의 이용 여부를 두고, 양방향 RNN으로도 사용-연속된 시퀀스의 반복 시 장기 기억 손실 문제로 향후 LSTM, GRU 알고리즘 탄생 배경이 됨-모델의 과도한 복잡성 증가(fc layers, relu 등) 시 과적합으로 예측력이 떨어질 수 있음Ex1) Many to Oneclass SimpleRNN(nn.Module): def __init__(self, input_size, hidden_size, output_size): ..

밑바닥부터 시작하는 딥러닝(1): CNN

1. 영상처리 분야에서 주로 사용(N, C, H, W 형태) 배치수, 채널, 높이, 너비매우 빠르고 적은 가중치 파라미터를 보유, 데이터셋의 구성에 따라 자동으로 탐지해야 할 패턴을 추출-고차원 공간의 정보를 저차원에 매핑-맥스풀링과 패딩, 스트라이드 방식을 활용 -> 핵심 피쳐, 정보 손실을 막기 위해Ex1) CNNimport torchimport torch.nn as nnimport torchvisionimport torchvision.transforms as transformsimport torch.optim as optim# 기기 설정 (CPU 또는 GPU)device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')# 데이터 로딩 및..