자연어처리
-
(15) 자연어처리_KLUE자연어처리 2023. 8. 2. 00:46
1. KLUE(한국어 자연어 이해 평가 데이터셋) 한국어 언어모델의 공정한 평가를 위한 목적으로 8개의 종류가 포함된 공개 데이터셋 뉴스 헤드라인 분류 문장 유사도 비교 자연어 추론 개체명 인식 관계 추출 형태소 및 의존 구문 분석 기계 독해 이해 대화 상태 추적 한국어 언어 모델의 공정한 성능 비교를 위해 평가 시스템을 구축 2. 학습 데이터 광범위한 주제와 다양한 스타일을 포괄하기 위해 다양한 출처에서 공개적으로 사용 가능한 한국어 말뭉치를 수집 약 62GB 크기의 최종 사전 학습 코퍼스 구축 MODU: 국립국어원에서 배포하는 한국어 말뭉치 모음 CC-100-Kor: CC-100은 CC-NET을 사용하여 대규모 다국어 웹 크롤링 코퍼스를 구축 나무위키: 나무위키는 한국어 궵 기반 백과사전으로, 위키백..
-
(14) DistilBERT를 활용한 MRC 실습자연어처리 2023. 8. 2. 00:40
1. MRC(Machine Reading Comprehension) 주어진 질문에 정확한 답변을 추출하는 자연어처리 작업 컴퓨터가 사람처럼 텍스트를 이해하고 추론하여 정보를 얻고 질문에 맞는 답변을 찾는 과정 !pip install -U transformers datasets scipy scikit-learn evaluate import datasets from datasets import load_dataset, ClassLabel import random import pandas as pd from IPython.display import display, HTML from transformers import AutoTokenizer, pipeline raw_datasets = load_dataset(..
-
(13) 자연어처리_BART를 활용한 요약 실습자연어처리 2023. 8. 2. 00:26
1. BART reference OpenAI에서 개발한 자연어처리 딥러닝 모델 중 하나 Transformer 아키텍처를 기반으로 양방향 인코더-디코더 구조를 가지고 있음 문장 요약, 번역, 텍스트 생성에 뛰어난 성능을 보여주는 모델 !pip install -U transformers datasets pytorch-lightning==1.5.10 streamlit==1.2.0 import torch from transformers import PreTrainedTokenizerFast from transformers import BartForConditionalGeneration tokenizer = PreTrainedTokenizerFast.from_pretrained('digit82/kobart-sum..
-
(12) 자연어처리 RoBERTa를 활용한 NLI실습자연어처리 2023. 8. 2. 00:24
from transformers import pipeline, AutoTokenizer classifier = pipeline( 'text-classification', model='Huffon/klue-roberta-base-nli', return_all_scores=True ) tokenizer = AutoTokenizer.from_pretrained('Huffon/klue-roberta-base-nli') tokenizer.sep_token classifier(f'나는 악기를 연주하는 것을 좋아해 {tokenizer.sep_token} 나는 음악을 듣고 연주하는 것이 싫어') classifier(f'여러 남성들이 축구를 하고 있어요. {tokenizer.sep_token} 남자들은 스포츠를 좋아해')
-
(11) 자연어처리_BERT를 활용한 단어 추론 실습자연어처리 2023. 8. 2. 00:22
허깅페이스 트랜스포머를 기반으로 다양한 모델과 학습 데이터, 학습 방법을 구현해 놓은 모듈 질의응답, 텍스트 분류, 텍스트 요약, 개체명 인식, 텍스트 생성, 번역, 언어 모델 !pip install transformers import torch from transformers import BertTokenizer, BertModel, BertForMaskedLM tokenizer = BertTokenizer.from_pretrained('klue/bert-base') text = '[CLS] 이순신은 누구입니까? [SEP] 16세기 말 조건의 명장이자 충무공이며 임진왜란 및 정유재란 당시 조선 수군을 지휘했던 제독이다. [SEP]' tokenized_text = tokenizer.tokenize(tex..
-
(10) 자연어처리_BERT자연어처리 2023. 8. 2. 00:15
1. BERT모델 2018년도 Google의 논문에서 처음 제안된 모델로, Transformer의 인코더 기반의 언어 모델 unlabeled data로 부터 pre-train을 진행한 후, 특정 downstream task에 fine-tining를 하는 모델 deep bidirectional을 더욱 강조하여 기존의 모델들과의 차별성을 강조 하나의 output layer만을 pre-trained BERT 모델에 추가하여 NLP의 다양한 주요 task(11개)에서 SOTA를달성 1-1. BERT 모델 개요 LM의 pre-training방법은 BERT 이전에도 많이 연구되고 있었고, 실제로 좋은 성능을 내고 있었음 특히 문장 단위의 task에서 두각을 보였는데, 이러한 여구들은 두 문장의 관계를 전체적으로 분..
-
(9)자연어처리_GPT자연어처리 2023. 8. 2. 00:09
GPT GPT 모델은 2018년 6월에 OpenAI가 논문에서 처음 제안 GPT도 unlabeled data로 부터 pre-train을 진행한 후, 이를 특정 downstram task(with labeled data)에 fine-tuning(transfer learning)을 하는 모델 Transformer의 decoder만 사용하는 구조! 1-1. GPT 모델의 특징 사전학습에는 대규모의 unlabeled data를 사용하는데 unlabeled data에서 단어 수준 이상의 정보를 얻는 것은 매우 힘듦 또한 어떤 방법이 유용한 텍스트 표현을 배우는데 효과적인지 불분명함 사전학습 이후에도, 어떤 방법이 fine-tuning에 가장 효과적인지 불분명 논문에서는 unsupervised pre-trainin..
-
(8) 자연어처리_트랜스포머자연어처리 2023. 8. 2. 00:08
1. 트랜스포머(Transformer) 2017년 구글이 발표한 논문 "Attention is all you need" 에서 발표된 모델 seq2seq의 구조인 인코더-디코더를 따르면서도, 어텐션(Attention)만으로 구현된 모델 RNN을 사용하지 않고, 인코더-디코더 구조를 설계하였음에도 번역 성능에서도 RNN보다 우수한 성능을 보여주었으며 2017년 이후 지금까지도 다양한 분야에서 사용되는 범용적인 모델 1-1.트랜스포머의 특징 인코더가 입력 문장의 정보를 벡터로 압축할 때 입력 문장의 정보가 일부 손실됨을 보정하기 위해 어텐션 메커니즘이 제안되었으며 실제로 seq2seq 모델에 attention을 사용한 구조는 어느정도 성능 향상을 가져옴(여전히 RNN의 구조적인 문제로 한계점은 있음) 기존 R..