전체 글
-
COLMATE : Contrastive Late Interaction and Masked Text for Document Retrieval논문리뷰 2026. 1. 18. 14:36
https://arxiv.org/pdf/2511.00903문제점 1) ColPali에서 사용하는 PaliGemma는 직접적으로 Visudal Token을 학습하지 않음. -> Visual token이 완벽히 align되지 않을 수 있음2) Supervised로 query-document를 학습하여 **out-of-domain**에 취약함3) image의 경우 late-interaction이 exactly matching 되지 않을 수 있음.제안 방법1) Masked OCR LM 학습법 추가 -> OCR을 random masking하고, 이걸 visual로만 맞추도록 학습추가2) making 한 부분에서 pseudo-query를 만듦. masking 한 이미지랑 contrastive learning 함..
-
0602- ROPE scaling사과나무심기 2024. 6. 2. 21:41
할로할로여전히 나는 회사일을 ..하고있다고 하지만뭐 사실은 평일에는 급급하게 회사 일을 쳐내고 있다면,지식적인 부분을조금씩 메꿔보는 주말이다. LLAMA에서 사용하는 position embedding 인 ROPE K,V에 대해서 cos, sin값으로 상대적 position embeding값을 구하는 방식 관련 코드class LlamaRotaryEmbedding(nn.Module): def __init__(self, dim, max_position_embeddings=2048, base=10000, device=None, scaling_factor=1.0): super().__init__() self.scaling_factor = scaling_factor ..
-
0526 - attention mask 내용 추가사과나무심기 2024. 5. 26. 23:12
https://life-of-h2i.tistory.com/117 에 내용 추가 0523 - attention maskattention mask 가 어떻게 작용하는지 간단히 확인 ok softmax가 0이 되서 padding 에 attention이 걸리지 않는건 이해가 된다.life-of-h2i.tistory.com attention mask 를 이야기하기 전에transformers 의 매우 간단한 이야기부터Q,K,V로 각 쿼리의 attention 을 정하는데, 여기서 Q*K(T) 가 의미하는 것은attention energy 라고 표현할 수 있다.각 토큰(단어)가 서로 어느정도의 attention을 갖고 있는지가 표현된다.*그래서 seq_len * seq_len값이 나옴. 암튼 여기에 V를 내적함으로써,..
-
0513 - Tokenizer (BPE)사과나무심기 2024. 5. 13. 23:15
일하다 모르는 개념들을 집에서 조금씩 다지는거? 매우 괜찮네 일할때는 듀데잇도 있고, 뭔가 원론적인 내용들을 머리에 잘 안들어오는데집에서 차분히 보니 쉽게 들어오는구만.(회사에서 애매하게 알고 있던것을 지금 공부한다는 말을 돌려돌려말한것임) 1. BPE (Bytepair Encoding)BPE는 사실 압축기법이다.가장 많이 반복되는 character-pair (2개)를 선택한다. ("aa")aaabdaaabac"aa"를 Z로 치환한다.ZabdZabacZ=aa그다음 자주나오는 character-pair를 선택한다. (ab)치환한다.ZYdZYacY=abZ=aa이걸 더이상 치환할게 없을 때까지 반복하는 로직이다.매우 간단하고, 직관적이다. 이걸 자연어처리에서 사용할때는 다음과 같다.Training data v..
-
0512 - python 상속에 대하여사과나무심기 2024. 5. 12. 22:29
파이썬을 거의 5-6년을 썼지만,아직도 애매-한 부분들이 있다.그중에 하나가 상속인데,오늘은 그걸 좀 싹- 정리해보려한다. 기본적인 파이썬 상속 예를 들어 Student가 Person class를 상속할 때,단순히 Class Student(Person)만 하면 된다. 1) super().__init__(name,age)Student의 super().__init__(name,age)를 통해 parent의 method 인 get_name를 사용할 수 있다.2) overriding만약 child클래스에 parent class와 같은 함수명이 있다면 (get_age) overriding이 된다.3) super()만약 overriding된 함수가 아닌 parent의 함수를 불러오고 싶다면, super()를 붙..
-
0511 - LLAVA 읽고 코드까지 뜯어보기사과나무심기 2024. 5. 11. 18:08
후.. VLM에 대한 업무를 한지 5개월..정신없이 실험 돌리고, 결과 보고 하느라정작 모델의 구조나 코드는 명확히 이해하지 않았다. 요오게 문제가 된게pytorch 모델을 tflite로 컨버팅을 해야하는데Vision Encoder , Language Decoder 를 따로 컨버팅하는건 되는데LLAVA를 통째로 컨버팅해야할때는 안되는 것..그렇다면 그것을 이어주는 mapper와 input transform 에서 문제가 있는데..어떻게 진행되는지 내가 알턱이 있나...그래서 한다.. LLAVA 기반 연구한지 5개월만에 뜯어보는 paper와 코드! 1) LLAVA 의 아키텍쳐LLaVA는 간단하다.Vision Encoder에서 나온 Feature(Xv) 를 Projection을 통해 Language Feat..
-
0505- Linear dependance , subspace사과나무심기 2024. 5. 5. 18:53
1) Vector Linear dependence, independence란?3개의 벡터의 선형결합이 있다고 하자.여기서 x1,x2,x3의 해가 유일하다면, vector(a1,a2,a3)는 linear dendence하고무수히 많다면, linear independece하다. 왜?Linear dependence는 다음과 같이 정의된다.벡터의 set이 있을때, 첫번째부터 하나씩 추가한다 해보자.이때, 벡터가 추가되더라도 span이 넓어지지 않는다면, 해당 vector집합은 Linear dependence 하다고 정의한다.즉, 추가된 벡터(Vj)는 이전 벡터의 선형결합으로 만들수 있다는 뜻. 다시 돌아가서 3개의 선형결합으로 가보자.좀더 쉽게 우항을 0으로 두었다. (p=3이라 생각하자) 위에서 정의한대로 x..