본문 바로가기

728x90

분류 전체보기

(424)
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을 만들어 감..
BERT 복습 Self-Supervised Pre-training Model (GPT-1, BERT) self-attention block으로 구성된 encoder-decoder모델은 nlp의 다양한 분야에서 놀라운 성능을 보여주었다. pre-training model로 gpt-1, bert를 알아본다. 더 깊게 attention block을 쌓았다는 점을 제외하면 구조적으 jsdysw.tistory.com 지난 시간 BERT에 대해 알아본 것을 복습한다. 버트가 등장하기 전에는 이렇게 encoder-decoder 모델이 주를 이뤘다. 버트는 input에 [mask]로 일부를 가리고 복원할 수 있도록 학습되었다. transformer의 encoder 부분만을 떼왔다. sentence1과 sentence2를 [sep]로..
NLP task : Relation Extraction 1. Relation Extraction? 문장의 단어(Entity)에 대한 속성과 관계를 예측하는 문제이다. 언어모델이 어떤 정보가 담긴 sentence을 이해할 수 있다면 그 sentence에 담긴 임의의 두 단어들의 관계를 맞출 수 있을 것이다. sentence: 오라클(구 썬 마이크로시스템즈)에서 제공하는 자바 가상 머신 말고도 각 운영 체제 개발사가 제공하는 자바 가상 머신 및 오픈소스로 개발된 구형 버전의 온전한 자바 VM도 있으며, GNU의 GCJ나 아파치 소프트웨어 재단(ASF: Apache Software Foundation)의 하모니(Harmony)와 같은 아직은 완전하지 않지만 지속적인 오픈 소스 자바 가상 머신도 존재한다. subject_entity: 썬 마이크로시스템즈 object..
Boostcamp AI - week9, 10, 11 BERT에 대해 다시 한번 복습하고 BERT를 활용하여 단일 문장 분류, 두 문장 간 유사도 측정, 기계 독해 문제를 풀어보는 실습을 진행했다. - STS - chatbot - NER - POS tagging 이어서 GPT에 대해서 다시 한번 복습하고 GPT를 활용하여 생성모델 실습을 수행했다. - greedy/beam search (decoding strategy) - sampling (decoding strategy) - zero show & few shot - fine-tuning & chatbot tokenizer, pre-trained model 사용에 익숙해질만큼 많은 실습으로 3주를 채운 것 같다. 마지막으로 bert이후 최신 트렌드와 다양한 최신 모델들에 대해서 간단히 공부했다. 동시에 자..
Github Guide 1. Branch Strategy - git flow master/main branch는 CICD로 바로 test를 거치고 배포와 연동 될 수 있기 때문에 직접 push는 위험하다. develop branch가 현재 개발중인 branch이다. 여기서 브랜치를 파서 나의 작업(task, 해결해야 할 issue 등)을 진행한다. branch를 팔 때 branch이름에 prefix를 사용할 수 있다. feat(새 기능 개발), refactor, fix, docs등이 있다. release branch는 배포 직전 dev에서 따와서 QA를 진행하는 branch이다. 발견된 bug를 수정하고 dev에 지속적으로 merge해준다. test가 끝나면 master/main 으로 병합된다. hotfix branch는 ma..
Representation Learning & Self Supervised Learning 1. Representation Learning 인간의 기호(symbol) 발명은 많은 것을 가능하게 했다. 단순히 눈 앞에 보이는 것을 추상화 해서 그리는 것을 넘어, 소리를 기록할 수 있는 음계, 세상의 법칙을 설명하는 수학과 물리가 탄생했다. 화학식 체계는 직접 분자를 합성하지 않아도 어떤 물질이 탄생하는지 예측할 수 있도록 해준다. 실제로 경험하지 않아도 많은 것을 가상의 기호 체계 안에서 구현할 수 있게 된 셈이다. 인터넷이라는 기술이 등장하고 나서 가히 데이터의 시대가 펼쳐졌다. 지금은 음성, 자연어, 이미지를 주로 다루지만 그보다 훨씬 많은 양의 sensor데이터가 수집되고 저장되고 있다. 인간이 현상을 가상의 어떠한 symbol로 취하는 방식처럼 기계가 직접 데이터를 자기가 이해할 수 있는..
GPT-3 and Latest Trend 1. Scaling Law GPT의 발전 추세를 보면 모델의 크기를 키워서 LLM이 성능확보를 얻어가는 것 같다. layer를 많이 쌓아서 혹은 layer 하나에 들어가는 파라미터 수를 늘려서 와 같은 방식으로 모델의 크기를 키우고 있다. 실제로 openAI 연구진들이 모델의 크기를 키움에 따라 실험한 결과를 보면, 같은 성능을 얻는데 큰 모델이 훨씬 적은 학습 샘플을 요구하며 학습 속도도 더 빠름을 알 수 있다. 하지만 오른편 그래프를 보면 모델이 커짐에 따라 원하는 test loss를 달성하기 위해 GPU 연산량도 늘어남을 알 수 있다. 크기를 키운 모델이 달성할 수 있는 최적의 성능을 얻고 싶다면 그에 맞게 데이터의 양도 크게 키워야 한다. 이런 분석 결과(발견한 패턴)를 Scaling Law 라고..

728x90