본문 바로가기

728x90

분류 전체보기

(430)
Intro to Data Centric AI 흔히 모델의 성능을 높이려고 하면 많은 model centric 기법들을 적용하는걸 떠올리기 쉽다. 하지만 data-centric기법만으로 코드를 수정하지 않고 모델의 성능을 높일 수 있다. 훨씬 효율적으로 큰 폭의 향상도 가능하다. 실제로 AI 프로젝트를 진행하면 데이터에 관한 일에 소요되는 시간이 훨씬 많다. 실제로 구글에서 공개한 Hidden Technical Debt in Machine Learning Systems라는 논문을 보면 정말 많은 시간과 자원이 데이터와 모델 서빙을 위한 작업에 소요됨을 알 수 있다. 이는 결국 데이터에 대한 중요성이 매우 크다는 말의 다른 표현이기도 하다. 1. Data-flywheel 그럼 현업에서는 데이터를 어떻게 수집하는가? data-flywheel이란 기업이 ..
Data Centric AI -Data Augmentation 모델의 구조를 바꾸지 않고 오로지 학습 데이터를 가공하는 것만으로 모델의 성능을 끌어올릴 수 있다. Generation Model (GPT3, T5, ChatGPT, GPT-4 등)을 통한 Synthetic Data 생성 Data Augmentation Data sampling negative sampling Data Quality Control Data labeling error detection, Data Cleaning, Data Filtering 1. Data augmentation - simple ways 기초적인 증강으로 가장 쉽게 떠올릴 수 있는건 label을 유지하면서 text를 살짝 바꿔보는 것이다. 1) paraphrasing 원문의 의미를 최대한 유지하면서 변형하는 것이다. - Wor..
Boostcamp AI - week12, 13 그동안은 모델에 대한 공부를 많이 했다. 이번주는 data를 중심으로 데이터 수집, 저장, 관리, 분석에 대해 배워본다. 앞으로의 AI에서 중요하다고 점쳐질 몇 가지 키워드를 정리해본다. - Scaling Law : 모델이 커질수록 loss도 잘 떨어지고 결국 성능이 좋아진다. - Chinchilla : 거대 LLM보다 크기는 훨씬 작은데 훨씬 더 많은 데이터로 학습했더니 성능이 GPT-3보다 좋았다. - LLaMA : Chinchilla보다 모델 크기를 훨씬 줄였다. open source데이터만으로 학습시켰는데 reasoning이나 common sense에서 훨씬 좋은 성능을 보였다. - ALBERT : 크기만 키운 Vanila Transformer가 더 좋은데? 모델보다 데이터가 더 중요한거 아니냐?..
Positional Encoding Transformer - Multi-Head attention 1. Multi-head attention self-attention을 유연하게 더 확장한 multihead attention에 대해 알아본다. 그림에서 보면 중첩된 블럭들이 보인다. self-attention에서는 한번 Q, K, V쌍이 만들어지고 attention 블럭을 한번 jsdysw.tistory.com LLM들의 약점으로 손꼽히는 것 중 하나는 long sequence를 잘 처리하지 못한다는 것이다. 이에 따라 positional encoding에 대한 연구들도 많이 이루어지고 있고 mamba는 아예 transformer구조 자체를 바꾸려는 시도도 하고 있다. 지난 시간 간략히 알아본 positional encoding에 대해 더 ..
Multi-modal - LXMERT, ViLBERT, Dall-e 지금까지는 텍스트로부터만 모델이 언어를 배우도록 했다. 사람이 언어를 학습할 때 시각, 음성, 텍스트가 복합적으로 작용하는 것 처럼 모델도 이미지, 음성 등의 데이터를 함께 학습하도록 하려는 연구도 많이 진행되고 있다. 1. LXMERT cross-modal resoning language model 그림을 자세히 보면 자연어를 embedding한 정보와 이미지가 embedding된 정보간의 교환이 보인다. 2. ViLBERT bert와 구조는 똑같다. 다만 [SEP] 토큰 앞에는 자연어 토큰을 넣고 뒤에는 이미지에 대한 벡터를 넣어주었다. 영화의 포스터와 text를 보고 어떤 장르의 영화인가 분류하도록 하였다. multi-modal training이 적용된 모델이 더 좋은 성능을 보였다고 한다. 3. ..
Controllable LM - Plug and Play LM(PPLM) 대화형 language model이 등장하면서 모델에게도 인간과 같은 윤리성을 주입할 수 없을까? 하는 연구들 중 하나를 소개한다. 생성모델은 확률에 기반해 결과물을 완성시킨다. 만약 모델이 긍정적인 답변들을 만들어내길 원한다면 미리 긍정적인 예제들을 bag of word에 저장한다. 우리의 목적은 내가 원하는 긍정 단어들의 확률이 최대가 되도록 하는 것이다. LM이 chicken tastes ok를 뱉어내려고 할 때 bow에 있는 delicious가 나오길 원한다면 delicious의 확률을 높이도록 이전 latent vector의 값을 수정하는 것이다. 이런 방식으로 기쁨 bag of word, 놀람 bag of word 를 만들어서 여러 감정들을 모델에게 중첩시켜서 주입시킬 수 있다.
XLNet, RoBERTa, BART, T5, Meena 1. XLNet BERT에서는 sequence의 최대 길이 제한이 있었다. XLNet은 위 그림처럼 relative positional encoding을 적용함으로써 입력 sequence 길이 제한이 사라졌다. GPT는 현재 상태에서 다음 단어만을 예측하는 일방향으로만 학습이 된다. 위 그림처럼 발 -> 없는 -> 말이 -> 천리, 이런식으로 말이다. XLNet은 이와 달리 Permutation language modeling방식을 사용해 학습한다. 문장이 주어지면 토큰들의 모든 조합을 생성하고 그 섞인 모든 문장에 대해 다음 단어를 예측하도록 학습한다. [없는, 발, 말이, 천리, 간다] 로 섞인 문장에 대해 없는 -> 발 -> 말이 -> 천리 -> 간다 순으로 예측하도록 학습하는 것이다. 실제로 이런..
GPT-3/GPT-4 and Latest Trend 2 1. AutoPrompt few shot, one-shot learning이 반드시 도움이 되는 것은 아니다. 오히려 성능을 저하시키는 prompt를 만드는 경우도 생긴다. 우리는 그 원인을 알기도 매우 어렵고 prompt 내 단어 하나의 차이로도 성능이 달라진다. 그래서 prompt를 어떻게 만들어야 할까?에 대한 연구가 발전되고 있다. 이미 학습이 완료된 언어 모델을 다시 fine-tuning하지 않고 autoprompt만으로 성능을 높일 수 있다. sentimental analysis를 예로 들어 autoprompt의 원리를 이해해보자. "a real joy"라는 분류를 해야하는 문장이 주어졌다고 하자. 우리가 하려는 것은 이 input 문장 뒤에 prompt를 붙여서 새로운 input을 만들어 감..

728x90