전체 글 102

21 BLIP: Bootstrapping Language-Image Pre-training

1) Limitation of CLIPCLIP은 Data Scale을 매우 늘려(4억 개의 image-text pair) Contrasitive Learning 기반의 pre-training을 수행했고, Zero-shot image classification과 Zero-shot image-text retrieval 도 수행할 수 있게 되는 성과를 보여주었다. 그러나 이러한 CLIP에도 한계점이 존재한다. 크게 세 가지로 정리할 수 있다. 1️⃣ 첫째, CLIP은 Vision과 Language 모달리티 간의 상호작용이 약하다. 아래 CLIP의 아키텍처를 보면 모달리티 간 상호작용이 이루어지는 부분은 Text 임베딩과 이미지 임베딩의 코사인 유사도를 구하는 것이다. 독립적으로 각각의 모달리티에서 임베딩을 ..

카테고리 없음 2025.06.07

20. CLIP: Contrastive Language-Image Pre-training

1) MotivationNLP 분야에서 등장한 GPT-2, GPT-3 등 거대 언어 모델은 훈련된 적 없는 새로운 task도 해결하는 zero shot 능력을 보여주었다.Task-specific Fine-tuning 없이 zero-shot learning을 하는 것이다. 이러한 능력을 이미지 모델에서도 재현할 수 있을까?라는 배경에서 CLIP이 등장하였다.2) Pre-training Data: 4억개의 이미지 텍스트 쌍GPT가 zero shot을 수행할 수 있게 된 관건을 대규모 학습 데이터로 보고, 이미지 모델에서도 그에 걸맞는 규모를 적용했다.(GPT는 데이터의 양을 어마어마하게 늘려 zero-shot ability를 도출했다. BERT large의 학습 데이터 크기가 3억 정도인데, GPT-3는 1..

19강 Vision Language Pretraining

[ 1 ] Vision-language pretraining멀티모달에서도 BERT 같은 접근이 가능하다!이를 가능하게 만든 것은 대규모 vision-language 데이터셋의 등장이다. Conceptual Captions라는 데이터셋은 이미지와 캡션 쌍을 수작업 없이 웹에서 자동으로 수집하여 약 3,310,000 쌍의 대규모 데이터셋을 구축할 수 있었다. Conceptual Captions이 등장하기 전, 가장 규모가 컸던 MS-COCO 데이터셋이 약 120,000개의 이미지를 가지고 있었다. Conceptual Captions는 수작업이 필요하지 않은 데이터셋으로 구축되어 MS-COCO보다 무려 25배 이상 데이터셋 크기를 증가시켰다. 그렇다면 이 데이터를 어떤 모델로 학습시킬까? [ 2 ] VILBE..

[논문 리뷰] TALLRec: An Effective and Efficient Tuning Framework to Align Large Language Model with Recommendation

Bao, Keqin, et al. "Tallrec: An effective and efficient tuning framework to align large language model with recommendation." Proceedings of the 17th ACM Conference on Recommender Systems. 2023. Evaluating Quantized Large Language ModelsPost-training quantization (PTQ) has emerged as a promising technique to reduce the cost of large language models (LLMs). Specifically, PTQ can effectively mitiga..

카테고리 없음 2025.06.01

18강 Training Transformers

[ 1 ] Training TransformersTransformer는 상대적으로 약한 inductive bias* 를 가진 모델이다. 따라서 데이터로부터 더욱 유연하고, 더 좋은 representation을 학습할 수 있다. 그렇다면 Transformer 모델 학습에서 어떤 데이터를 사용하며 어떤 Loss Function을 사용할까? * (Inductive Bias란? 모델이 학습 전에 어떤 패턴이 데이터에 존재할 것이라고 미리 가정하는 것) Transformer는 본래 기계번역 task를 위해 개발되었고, Transformer Encoder(입력 문장) + Transformer Decoder(출력 문장) 구조이다. 번역 결과 문장이 정답과 얼마나 다른지를 측정하기 위해 Cross Entropy Los..

[EECS-498-007-598-005] 8. Image Captioning (3)

1. Drawback of Seq2Seq Architecture지난 시간 배웠던 Seq2Seq 아키텍처에서는 다음과 같은 문제가 있었다. 1. Encoder에서 Decoder로 넘겨주는 정보가 마지막 hidden state, 즉 하나의 임베딩 벡터 뿐이므로 문장이 길어질 수록 하나의 임베딩 벡터에 모든 정보를 다 잘 담기 어렵다는 문제가 발생한다. 이를 Information bottleneck 이라고 한다.2. 또한 Encoder와 Decoder 사이의 상호작용이 없다. 전달하는 것은 Encoder에서 Decoder로 넘기는 임베딩 벡터 하나 뿐이다. 이러한 문제를 해결하기 위해 등장한 후속 연구가 Attention Mechanism 이다. 2. Attention Mechanism in Machine..

CNN(Convolution Neural Network)이란

🌟 CNN(Convolution Neural Network, 합성곱 신경망)은 이미지 처리에 널리 사용되는 딥러닝 모델이다. Convolution Layer와 Pooling Layer를 반복적으로 거치며 이미지의 특징을 추출한 뒤, 이 특징들을 가지고 Fully Connected Layer에서 Classification을 수행한다.  ▶︎ CNN의 등장 배경 : FCN이 이미지 처리에 적합하지 않음기존 Fully Connected Layer로만 이루어진 Neural Network는 단일 1차원 벡터를 input으로 받고, hidden layer를 거쳐 output을 내놓는다. 하지만 정형데이터화 된 이미지는 'width * height * channel'의 배열이므로 기존 Neural Network에 ..

[Boj] 백준 C++ #12931 두 배 더하기

📍 문제 링크 : https://www.acmicpc.net/problem/12931 📍 알고리즘 분류 : 그리디 📍 문제 풀이반대로 생각하면 된다. 0으로 된 배열 A에서 시작하지 말고, 주어진 배열 B를 0으로 만드는 것이다.로직은 아래와 같다.while(모든 원소가 0일때까지){    for(배열 속 원소들을 하나씩 순회){        홀수일 경우 1을 빼주고, 연산횟수 카운트        0이면 0을 따로 카운트    }    for(배열 속 원소들을 하나씩 순회){        //남은 원소들은 모두 0 아니면 짝수이므로        원소를 2로 나누기    }    연산횟수 카운트++;}  📍 소스 코드#include #include using namespace std;int main..

Boj 2025.02.07

🍊 AWSx제주대 해커톤 참여 후기 | 감귤지도

2025년 1월 20일, 21일에 진행한 NXT Cloud 주관의 AWS x 제주대 해커톤에 참가하였다 학교에서 참여한 AWS 캠프를 통해 NXT Cloud에 대해 알게 되었고, 해당 회사에서 주최하는 제주도 해커톤이 비행기 값을 지원해준다길래 즉흥적으로 직전에 참여하게 되었다. 좋은 경험과 배움이 되었던 이 날의 해커톤을 글로 정리해두고자 한다 :)   출발할 땐 마음이 많이 무거웠다.. 공항을 그런 기분으로 간 것은 처음이다. ㅜㅠ. 공항에 온 사람들은 다들 들떠있어보이는데 나는 또 밤을 샐 생각에 ..🥲 (그 전날에도 해커톤을 했다)    해커톤 진행 장소인 제주대학교에 도착했다. 해커톤 개발 시작 전, 클라우드 사전 교육도 받았다.   이번 해커톤의 주제는 '제주도 산업 육성 및 활성화' 였다...

카테고리 없음 2025.01.31

[Boj] 백준 C++ #16948 데스 나이트

📍 문제 링크 : https://www.acmicpc.net/problem/16948 📍 알고리즘 분류 : BFS 📍 문제 풀이이 문제는 큐를 이용해서 BFS로 해결할 수 있다. (r,c)의 위치에서 이동할 수 있는 칸은 아래 그림과 같이 총 6개이다. 따라서 한 위치에 대해 이동할 수 있는 6개의 위치를 모두 탐색해주면 된다.체스판을 넘어가거나, 이미 방문한 위치가 아니면 큐에 넣어준다.이미 방문했다면, 지금 방문한 것은 최단 횟수의 방문이 아니라는 것이므로 고려해줄 필요가 없다. 모든 지점은 처음으로 방문했을 때가 최단 횟수의 방문이다. 위 과정을 큐가 빌 때까지, 혹은 목표 지점에 도달할 때까지 반복한다. 이 문제의 핵심 로직은 모든 지점은 처음으로 방문했을 때가 최단 횟수의 방문이라는 것이다..

Boj 2025.01.07