본문 바로가기

딥러닝/자연어(NLP)

BLEU Score의 소개와 계산하는 방법 (Python) Last Updated on July 23, 2021 Bilingual Evaluation Understudy (BLEU) 딥러닝의 발달로 텍스트를 생성하는 Generative Model은 챗봇, 문서 요약등 다양한 분야에서 사용되고 있습니다. Generated Sentence를 평가하는 방식은 크게 BLEU 방식과 ROUGE 방식이 있습니다. 여기서는 BLEU 와 이를 계산할 파이썬 라이브러리를 소개합니다. (TMI: BLEU 는 블류라고 읽어주시면 됩니다) Generative Model은 주로 Supervised Learning 방식으로 정답이 되는 Reference Sentence가 있습니다. 모델로부터 생성되는 문장을 Generated Sentence 그리고 비교하는 정답을 Reference Se.. 더보기
🧐 Sequence Labeling with Tagging 🧐 Tagging이란 무엇인가? 단어들은 문장 내에서 어떠한 역할을 지니고 있습니다. 이 역할을 선정하는 작업이 Tagging입니다. 여기서 역할이라고 한 것은, 문장의 구조(Part of Speech) 를 나타낼수도 있고, 아니면 현실에 있는 객체를 지칭하고 있는 경우(Name Entity)도 있습니다. Part of Speech : Noun, Verb, Adverb, ... (이과라서 나머지는 잘 모릅니다. ) Penn Treebank에는 45가지의 Tags가 있다는 이것도 버전마다 다르다고 합니다. Named Entity : 기본적으로 4가지 (사람, 위치, 기관, 지형)에 대한 Named Entity가 있지만, 시간, 돈과 같은 더욱 다양한 Named Entity가 있을 수 있습니다. 보통 Nam.. 더보기
NLP의 모든 분야 탐색 (Update 중) NLP Tasks Machine Translation Question Answering SQUAD 2.0 SQUAD 1.0 Language Modeling Text Classification Text Classification Topic Models Document Classification Sentence Classification Emotion Classification Sentiment Analysis Data Augmentaiton Text Generation Named Entity Recognition Text Summarization Extractive Summarization Abstractive Summarization Reading comprehension Relation Extraction 더보기
[Fairseq 1] Robert Pretrain 코드 돌리기 How to run pretraining code with fairseq 1. Download unlabeled dataset for pretraining. 먼저 데이터를 다운받습니다. train, valid로 나눠져 있는 데이터라면 아무 데이터나 상관없습니다. wget https://s3.amazonaws.com/research.metamind.io/wikitext/wikitext-103-raw-v1.zip unzip wikitext-103-raw-v1.zip 2. Encode text with GPT-2 BPE GPT-2의 Byte Pair Encoding을 진행합니다. mkdir -p gpt2_bpe wget -O gpt2_bpe/encoder.json https://dl.fbaipublicfile.. 더보기
[Paper Short Review] Do sequence-to-sequence VAEs learn global features of sentences [Paper Short Review] Do sequence-to-sequence VAEs learn global features of sentences Keypoints Questions and Answers Which model has it used? What is data? Dealing with posterior collapse. Contribution Experiments References [Paper Short Review] Do sequence-to-sequence VAEs learn global features of sentences Keypoints VAE architecture. Classification but uses quite intersting training step. It i.. 더보기
Text Summarization 분야 탐색 Text Summarization Text Summarization의 목표 Text Summarization의 세분화 Text Summarization🧾 Text Summarization은 문서에서 중요한 정보만을 선정하여 Summary를 만드는 테스크입니다. 최근 Transformer 아키텍쳐의 발명으로 Summarize의 성능은 크게 향상되었습니다. 여기서 더욱 발전하기 위해서, Text Summarization에 대하여 어떠한 연구들이 진행되었는지 알고 이를 바탕으로 중요하게 다뤄야 하는 부분을 알고자 합니다. 본 포스팅에서는 자연어처리(NLP)의 하위 테스크인 Text Summarization에 대한 기존 연구들을 정리하였습니다. Text Summarization의 목표🧾 주어진 문서에 대해서 단.. 더보기
Transformer와 인간의 뇌 구조 Transformer를 발전시키고자 노력한 것들이 뜻대로 되지 않아서, 조금 더 근본적으로 무엇을 연구하기 생각하게 되었다. Transformer가 인간 이상의 능력을 보여주는 것을 보며, 사람의 뇌와 트랜스포머를 비교하는 것이 연구에 도움이 될 거 같아서 비교를 해보고자 한다. 차이점 인간의 뇌는 다양한 층으로 이루어져있다. 가장 바깥쪽에 위치하며 다른 동물과 인간을 구분 짓는 결정적인 역할을 한 대뇌피질부터 그 속으로 내려간다면, 기억과 감정을 담당하는 부분, 그리고 더 밑으로 내려간다면, 파충류도 가지고 있는 본능을 나타내는 부분이 있다. 트랜스포머는 이중에서 제일 바깥쪽인 대뇌피질에 해당한다. 단어들의 상관관계를 연산하며, 원하는 정보를 세밀하게 찾아낸다. 차이점이라면, 트랜스포머의 구조는 일방적.. 더보기
Byte Pair Encoding 방법 Bype Pair Encoding How to encode 1. Learn - BPE operation 2. Encoding with Byte-Level Subwords References Bype Pair Encoding How to encode 1. Learn - BPE operation 1. 띄어씌기로 단어를 선정하고 캐릭터 레벨로 단어를 분리합니다. 현재 4개의 단어가 있으며, : 뒤의 숫자는 횟수를 나타냅니다. 'l o w ': 5 'l o w e r ': 2 'n e w e s t ': 6 'w i d e s t ': 3 2. 가장 많이 나오는 Pair를 찾고, 두 케릭터를 바꿔줍니다. best : ('e', 's') vocab : {'l o w ': 5, 'l o w e r ': 2, 'n .. 더보기