Natural-Language-Processing
이 페이지는 2022년까지만 운영되었던 페이지입니다. 이전에 작성된 게시물들은 아카이브로 남아 있으나, 새로운 콘텐츠는 더 이상 추가되지 않습니다.
Papers
자연어처리 관련 paper들과 해당 논문 review입니다.
-
Sequence to Sequence Learning with Neural Networks(2014) : Review
-
Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation(2014) : Review
-
Visual Transformer(ViT) : An Image is Worth 16X16 Words: Transformers for Image Recognition at Scale(2020) : Review
-
BERT : Pre-training of Deep Bidirectional Transformers for Language Understanding(2019)
Tutorials
- bentrevett의 pytorch tutorial을 통해 학습한 내용입니다.
감정 분석 모델(Sentiment Analysis)
- Pytorch의 torchtext를 이용한 간단한 프로젝트입니다.
- torchtext의 인터넷 영화 데이터베이스(IMDb dataset)을 Recurrent Neural network(RNN)를 통해 학습시켜 영화의 review가 긍정적인 리뷰인지, 부정적인 리뷰인지를 판단합니다.
- 이 튜토리얼에서는 load data, create train/test/validation splits, build a vocabulary, create data iterators, define a model and implement the train/evaluate/test loop 를 배울 수 있습니다.
- 머신러닝 파이프라인을 간략하게나마 학습하기 위한 튜토리얼이므로 performance가 좋지 않습니다.
2 - 다양한 RNN architecture(LSTM, Bidirectional RNN, multilayer RNN 등)을 이용한 감정 분석 모델
- 1에서 구현한 workflow를 변형하여 정확도를 높인 모델입니다.
- 1과 마찬가지로 IMDB dataset을 이용하였습니다.
- computation 속도를 높이기 위해 Packed padded Sequence의 방식을 사용하였고, pre-trained word embeddings과 다양한 RNN model을 사용하여 performance를 향상시켰습니다.
- 이 model에서는 LSTM, bidirectional-RNN, multi-layer RNN 등을 공부할 수 있습니다.
3 - FastText model을 이용한 감정 분석 모델
- RNN을 사용하지 않고 Bag of Tricks for Efficient Text Classification 논문의 FastText model을 활용하여 computation speed를 향상시켰습니다.
- 2개의 layer(embedding layer와 linear layer)로 구현된 모델로, 2보다 더 간단하지만 속도는 빠르고 성능 또한 괜찮은 모델입니다.
- tutorial1, 2 마찬가지로 IMDB dataset을 이용하였습니다.
4 - Convolutional neural network을 이용한 문장 분류 모델
- 컴퓨터 비전 분야에서 자주 사용되는 네트워크인 Convolutional neural network(CNN)를 사용하여 감정 분석을 하였습니다.
- Convolutional Neural Networks for Sentence Classification paper의 model을 사용하였습니다.
5 - Convolutional neural network을 이용한 다중 클래스 분류 모델(pytorch)
- 이전까지의 tutorial에서는 이진 분류에 대해서 학습하였다면, tutorial5에서는 여러 개의 클래스를 가진 데이터세트에 대해 분류하는 법을 학습하였습니다.
- Convolutional Neural Network를 사용하여 model을 구현했습니다.
Seq2Seq Model
-
1 - Seq2Seq Model - Sequence to Sequence Learning with Neural Networks 논문 리뷰 및 코드 실습
- NMT 분야에 최초로 Seq2Seq model을 적용한 논문인 Sequence to Sequence Learning with Neural Networks paper의 모델을 간단하게 구현하였습니다.
- 이 notebook에서는 Encoder-Decoder 구조에 대해 학습할 수 있으며, 독일어를 영어로 번역하는 간단한 예제를 만들어볼 수 있습니다.
-
2 - Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation 논문 리뷰 및 코드 실습
- Seq2Seq model과 GRU model을 최초로 제안한 논문인 Sequence to Sequence Learning with Neural Networks paper의 모델을 간단하게 구현하였습니다.
-
3 - Transformer : Attention is All You Need 논문 분석 및 코드 실습
- 대표적인 nlp 모델인 Transformer 설명 및 코드 실습입니다.