자연어 처리(NLP)16 HuggingFace를 활용하여 Text Classification task 수행하기 0. IntroductionHuggingFace는 빠르고 쉽게 데이터셋을 다운로드하고 모델을 만들 수 있게 도와줍니다. 또한 다양한 사람들이 사전학습한 모델을 다운로드 받아서 직접 실험해 볼 수 있습니다. 이번 포스트에서는 HuggingFace를 이용하여 가장 기본이라고도 볼 수 있는 Text Classification task를 수행해보고자 합니다.1. Data데이터는 HuggingFace에서 제공하는 'emotion dataset'을 사용합니다. emotion dataset은 train, validation, test dataset으로 구성되어 있으며, 각각의 데이터셋은 'text'와 'label'로 구성되어 있습니다. 이 데이터에서 예시를 하나 출력해보면 다음과 같이 text와 label이 dict.. 2024. 10. 10. Tokenizer : 기본적인 토큰화(Tokenization) 방법 0. Introduction기본적으로 언어를 입력받는 모델은 바로 텍스트(원시 문자열)를 입력받지 못합니다. 이는 시계열 데이터와 같이 숫자로 이루어진 데이터가 아니기 때문입니다. 따라서 우리는 모델에 텍스트를 입력하기 위해 원시 문자열을 숫자의 형태로 바꿔 줄 필요가 있습니다. 이때 원시 문자열을 숫자로 바꾸는 과정을 '임베딩(Embedding) 혹은 토큰화(Tokenization)' 이라고 합니다.(가끔은 인코딩(encoding)이라고 부르는 분들도 있습니다) 이번 포스트에서는 가장 기본적인 형태의 토큰화 방법에 대해 정리하고자 합니다. 1. 문자 토큰화(Character-based tokenization)가장 간단한 토큰화 방법은 각 문자를 1,2,3 과 같이 숫자로 바꿔서 모델에 입력하는 방법입니.. 2024. 9. 26. LLaMA: Open and Efficient Foundation Language Models 정리 1. Abstarct7B~65B 개의 Parameter로 구성된 LLM인 LLaMA를 공개함.누구나 사용할 수 있는 공개된 데이터셋을 이용하여 1T 개의 token으로 학습을 진행하였으며, 다양한 task에서 SOTA를 달성함.특히, LLaMA-13B 모델은 GPT-3(175B)와 비교하여 대부분의 benchmark 성능을 뛰어넘음.제시한 모델 중 가장 큰 모델인 LLaMA-65B은 Chinchilla-70B와 PaLM-540B와 경쟁력이 있음.2. Introduction엄청난 양의 텍스트로 학습된 Large Language Model(LLM)은 몇 개의 예제나 instruction으로부터 새로운 task를 수행하는 능력을 보여준다(Brown et al.,2020). 이러한 few-shot의 성질은 모델.. 2024. 6. 10. RoBERTa : A Robustly Optimized BERT Pretraining Approach 정리 및 이해 1. RoBERTa란? RoBERTa는 기존 BERT 모델의 성능을 더욱 높인 모델로써 BERT모델의 구조는 그대로 유지한 채 약간의 training objective와 hyperparameter를 수정하여 모델의 성능을 향상했습니다. RoBERTa 연구진들은 BERT 모델은 상당히 '덜' 훈련되었다고 언급하며 몇 가지 개선사항을 추가한 RoBERTa 모델을 제안하였습니다. We find that BERT was significantly undertrained and propose an improved recipe for training BERT models, which we call RoBERTa, that can match or exceed the performance of all of the pos.. 2024. 3. 7. BERT(Bidirectional Encoder Representations from Transformers) 개념 정리 및 이해 1. BERT란? BERT(Bidirectional Encoder Representation from Transformers)란, 2017년 구글에서 발표한 대규모 언어 모델(LLM)로 Transformer에서 영감을 받은 모델입니다. 기존 Transformer는 Encoder-Decoder구조로 되어있는 반면, BERT모델은 transformer의 encoder만을 활용한 모델입니다. transformer에서 encoder는 문장을 잠재 벡터로 표현해 주는 역할을 하고 있습니다. 그렇다면 BERT는 transformer의 encoder를 어떻게 활용하였을까요? BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.. 2024. 2. 17. WordPiece Tokenizer 이해 및 정리 1. 워드피스(WordPiece) Tokenizer란? 워드피스(WordPiece) Tokenizer는 Subword Tokenization의 일종으로써 주어진 텍스트를 하위단어(subword)로 쪼개는 방식입니다. 하나의 단어는 접두사 혹은 접미사가 붙어서 여러 형태로 변화할 수 있기 때문에 기존에 단어를 그대로 토큰화하는 방법보다는 유연하게 Out of Vocabulary(모델이 처음 보는 단어를 마주한 경우)에 대처할 수 있습니다. Subword tokenizer에는 여러 종류가 있지만, 이번 포스트에서는 BERT에서 사전학습에 사용한 것으로 유명한 WordPiece tokenizer에 대해 정리해보고자 합니다. 2. BPE Tokenizer와의 차이점? Wordpiece tokenizer의 토크화.. 2023. 12. 18. Byte Pair Encoding(BPE) tokenizer 정리 1. SubWord Tokenizer 일반적으로 토큰화(Tokenizer)는 의미를 가진 토큰(단어 등)으로 쪼개서 토큰을 만드는 작업을 말합니다. 토큰화의 목적은 텍스트를 모델이 이해할 수 있는 데이터로 만들어주는 것입니다. 텍스트를 토큰화하는 방법은 크게 3가지로 분류할 수 있습니다. 1. 단어 기반 토큰화(Word-based tokenization) 공백을 기준으로 토큰화하는 방법('나는 밥을 먹었다' -> '나는', '밥을', '먹었다') 매우 간단한 아이디어지만, 훈련에 사용하지 않은 새로운 단어에 대해 대처가 어려운 단점이 존재한다.(Out of Vocabulary) 2. 문자 기반 토큰화(Character-based tokenization) 텍스트의 구성요소인 문자 단위로 토큰화하는 방법('.. 2023. 12. 11. Khaiii 형태소 분석기 설치 및 사용방법 1. 개요 Khaiii 형태소 분석기는 카카오에서 공개한 형태소 분석기입니다. 기존 Konlpy에서 제공하는 형태소 분석기의 공통적인 특징은 사전과 규칙기반(명사/형용사 등등)으로 형태소를 분석해 주는 반면, khaiii는 데이터 기반 알고리즘을 이용해서 분석하였다고 합니다. 사용한 데이터의 양은 85만 문장과 천만 어절의 코퍼스를 이용하였습니다. khaiii가 데이터를 가지고 형태소 분석기를 만들 때 사용한 기계학습 알고리즘은 CNN(Convolution Neural Network)입니다. 대규모 언어 모델을 학습하기 위해서는 엄청난 양의 문장을 전처리 해야 하기 때문에 속도가 빠른 CNN을 사용한 것으로 보입니다. Khaiii는 어떤 단어의 주변단어의 갯수(Window size)와 임베딩 차원(Emb.. 2023. 11. 15. Positional encoding과 Relative position representation은 어떻게 동작하는가 Overview 이번 포스트에서는 Position encoding에 대해 정리합니다. 'Attention is all you need'에서 제시한 모델인 Transformer에서 사용된 Position encoding은 self-attention이 order independent하기 때문에 모델에게 input token간의 순서를 알려주기 위해 사용되었습니다. 이후 많은 연구에서 기존 position encoding과는 약간 다른 관점에서의 position encoding이 제안되었습니다. 우선, 기존 Transformer 모델에서 활용된 positional encoding의 필요성과 그 개념에 대해 간단히 살펴본 후, T5 저자들이 활용한 relative position encoding에 대해 정리하고.. 2023. 10. 11. 이전 1 2 다음