본문 바로가기

전체보기109

임베딩 1. 자연어의 특성¶자연어를 기계가 처리하도록 하기 위해서는 먼저 자연어를 기계가 이해할 수 있는 언어로 바꾸는 방법을 알아야 함토큰화 작업의 결과인 단어 사전을 기계가 이해할 수 있는 언어로 표현하는 과정이고, 단어 사전 내 단어 하나를 어떻게 표현할까의 문제로 볼 수 있음1-1. 단어의 유사성과 모호성¶단어의 의미는 유사성과 모호성을 가지고 있는데 단어는 겉으로 보이는 형태인 표제어안에 여러가지 의미를 담고 있음사람은 주변 정보에 따라 숨겨진 의미를 파악하고 이해할 수 있으나, 기계는 학습의 부재 또는 잘못된 데이터로 의미를 파악하지 못하는 경우가 많음한 가지 형태의 단어에 여러 의미가 포함되어 생기는 중의성 문제는 자연어 처리에서 매우 줌요동형어: 형태는 같으나 뜻이 서로 다른 단어(예: 배)다의어.. 2024. 7. 18.
문장 임베딩 1. 문장 임베딩¶2017년 이전의 임베딩 기법들은 대부분 단어 수준의 모델단어 수준 임베딩 기법은 자연어의 특성인 모호성, 동음이의어를 구분하기 어렵다는 한계가 있음2017년 이후에는 ELMo(Embeddings from Language Models)와 같은 모델이 발표되고 트랜스포머와 같은 언어 모델에서 문장 수준의 언어 모델링을 고려하면서 한계점들이 해결됨2. seq2seq 배경¶seq2seq 모델이 등장하기 전에 DNN(Deep Neural Network) 모델은 사물인식, 음성인식 등에서 꾸준히 성과를 내고 있었음(예: CNN, RNN, LSTM, GRU ...)모델 입/출력의 크기가 고정된다는 한계점이 존재했기 때문에 자연어처리와 같은 가변적인 길이의 입/출력을 처리하는 문제들을 제대로 해결할.. 2024. 7. 18.
CNN text classification import urllib.requestimport pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport torchimport torch.nn as nnimport torch.optim as optimimport torch.nn.functional as Ffrom copy import deepcopyfrom torch.utils.data import Dataset, DataLoaderfrom tqdm.auto import tqdmurllib.request.urlretrieve('https://raw.githubusercontent.com/e9t/nsmc/master/ratings_train.txt', filename='ratings_tra.. 2024. 7. 18.
자연어 처리 프로젝트 진행 순서 1. 문제 정의¶문제에 대한 솔루션이 있어야 하고, 명확하고 구체적 일수록 알맞는 자연어 처리 기술을 찾을 수 있음2. 데이터 수집 및 분석¶다양한 학습 데이터를 수집하기 위해 공개된 데이터셋, 유료 데이터셋, 웹 크롤링 등을 사용하여 수집https://paperswithcode.com/datasets?mod=texts&task=question-answering웹크롤링을 통해 데이터를 수집했다면EDA(탐색적 데이터 분석) 및 여러 분석 작업을 통해 데이터를 철저하게 검증해야 함레이블이 필요하다면 수집한 데이터에 레이블을 붙여야 함3. 데이터 전처리¶학습에 용이하게 데이터를 수정/보완하는 작업자연어 처리 진행 과정에서 데이터가 차지하는 비중이 매우 높기 때문에 데이터를 수집하고 전처리하는 과정이 매우 중요.. 2024. 7. 17.