인공지능

    [RAG] Knowledge Graph Prompting for Multi-Document Question Answering

    [RAG] Knowledge Graph Prompting for Multi-Document Question Answering

    https://arxiv.org/abs/2308.11730?source=post_page-----ab5c4006a429-------------------------------- Knowledge Graph Prompting for Multi-Document Question Answering The `pre-train, prompt, predict' paradigm of large language models (LLMs) has achieved remarkable success in open-domain question answering (OD-QA). However, few works explore this paradigm in the scenario of multi-document question an..

    [LLM] SELF-RAG: Learning to Retrieve, Generate and Critique through Self-reflect

    [LLM] SELF-RAG: Learning to Retrieve, Generate and Critique through Self-reflect

    ConceptLM을 이용해서 On-demand Retrieval을 할 수 있다.Reflection Token을 통해 generation의 quality와 attribution을 증진시킨다.ProblemExpense of runtime efficiencyRobustness to irrelevant contextLack of attributionHow to Solve Reflection Token이라는 Special Token을 사용해서 Retrieval이 필요한지 판단할 수 있게 하자.Retrieval Passage와 Generated Sentence에 대해서 Reflects를 하자.Reflection TokenRetrieve : 현재 문장을 보고 Retrieve과정이 필요한지 안한지에 대한 토큰이다.Is..

    [LLM] Seven Failure Points When Engineering a Retrieval AugmentedGeneration System

    [LLM] Seven Failure Points When Engineering a Retrieval AugmentedGeneration System

    RAG의 Failuer Points에 대해서 정리한 논문이 있어서 참고 겸 공부 겸 정리하고자 한다. https://arxiv.org/abs/2401.05856 Seven Failure Points When Engineering a Retrieval Augmented Generation System Software engineers are increasingly adding semantic search capabilities to applications using a strategy known as Retrieval Augmented Generation (RAG). A RAG system involves finding documents that semantically match a query and th..

    [LLM] Paged Attention

    [LLM] Paged Attention

    Background 1. Query, Key, Value Encoder에서의 의미 분석하고자 하는 단어(Query)를 그 외의 다른 단어들에 대한 문맥상의 의미(내용, 위치 정보등)를 나타내는 임베딩 값(Key)과 비교하면서 우리의 Query가 문장 내 다른 단어들의 Key값 얼마나 유사한지를 평가합니다. 그렇게 생성된 유사도 점수는 문장에서 각 단어들의 의미(Value)에 대한 가중치로 적용이 됩니다. 그렇게 유사도 점수를 Value에 적용하여 구해낸 값이 Attention Score입니다. 이는 우리가 분석하고자 하는 단어가 문맥상의 의미를 고려해서 어떤 의미인지 계산해내는 방법입니다. 이를 Encoder에서는 모든 단어들에 대해서 구하게 됨으로써 입력 시퀀스 내의 각 단어가 다른 단어와 어떻게 관..

    [LLM] Flash Attention

    [LLM] Flash Attention

    BackGround - GPU Kernel GPU의 커널은 GPU에서 실행되는 프로그램 또는 함수를 의미한다. 이들은 CUDA나 OpenCL과 같은 특수한 라이브러리등을 사용해서 병렬 처리와 GPU연산에 특화되게끔 프로그래밍 된다. - GPU의 메모리 구조와 기존의 Attention 연산 방식 GPU의 메모리 구조는 다음과 같다. GPU의 대부분 연산은 SRAM의 값에서 이뤄지고 CPU 연산의 DRAM의 역할을 GPU HBM이 한다고 생각할 수 있다. CPU RAM은 GPU입장에서는 다른 I/O작업이 필요하기 때문에 CPU의 SSD와 유사하다고 볼 수 있다. 기존 Attention 알고리즘에서 Query, Key, Value값들이 어떻게 메모리에서 load와 store가 되는지 알아보면 다음과 같은 순서..

    Off-Policy Deep Reinforcement Learning without Exploration 리뷰

    Off-Policy Deep Reinforcement Learning without Exploration 리뷰

    강화학습은 정말 매력적인 분야이다. 못 걷던 로봇을 걷게 하고, 로봇이 물체를 알아서 집게하고, 사람보다 게임을 더 잘하게 되고 심지어 자동차도 스스로 굴러가게 학습 시킬 수 있다. 그렇다면 이러한 강화학습이 지도학습에 비해서 널리 쓰이지 못하는 이유가 무엇일까? Sergey Levine 교수님의 설명을 빌리자면 “The fact that reinforcement learning algorithm provide a fundamentall online learning paradigm is also one of the biggest obastacles to their widespread adoption” 라는 것이다. 즉, 우리가 강화학습은 online learning의 성격이 강해서 이를 실제 환경에 적용..

    [강화학습] A2C

    [강화학습] A2C

    이번에 중간고사를 지나면서 시간이 상당히 오래되었지만 A2C에 대해 리뷰하려고 합니다. 먼저 앞에서 배웠던 DQN과 Policy gradient의 차이를 먼저 짚고 넘어가면 좋을거 같네요. 강화학습에서 최종 목표는 항상 Agent가 Reward를 최대한 많이 받도록 하는 것입니다. DQN은 여기서 Q-function, 즉, 행동가치함수를 추정해서 이를 통해 최대해 행동가치를 가질 수 있는 행동을 선택하도록 한다. 하지만 만약 우리의 action이 continuous하다면? 즉, 선택지가 너무 많아서 이를 가치함수의 가짓수로 나타내기 힘들다면 어떻게 해야할까? 물론 DQN과 AC계열의 차이는 이 한가지 문장으로 표현하기 어렵겠지만 제가 느끼기로는 이게 AC로 진입하게 되는 진입문을 잘 표현한 것 같습니다...

    Seq2Seq+Attention(TNT 생성 스터디 4주차 리뷰)

    Seq2Seq+Attention(TNT 생성 스터디 4주차 리뷰)

    이번 스터디는 다음과 같은 순서로 이어졌습니다. 1. NLP 복습 2. Seq2Seq 3. Attention 1. NLP복습 여기서 각각의 값들이 어떻게 계산되는 지 간단히 수식으로 생각해 보자면 다음과 같이 계산이 된다. 즉, 은닉층으로 부터 넘어온 값과 현재 인풋이 각각의 가중치와 곱해진 값을 편향과 더해서 다음 은닉층이 계산되고 이를 이용하여 결과 값을 만들게 된다. -임베딩 단어들은 기본적으로 수치형 데이터가 아니기 때문에 우리가 이를 이용하여 모델을 만들기 위해서는 이를 수치형으로 바꿔주는 과정이 필요하다. 원래는 이러한 경우 주로 O-H 인코딩을 많이 사용하였었지만 이를 이용하여 문제점이 두가지 정도 존재하는데 첫번째는 인풋이 너무 커진다는 것이다. 사전의 모든 단어들을 기반으로 O-H를 진해..