nlp

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] Attention - 어텐션

1. Attention Attention은 CS 및 ML에서 중요한 개념중 하나로 여겨집니다. Attention의 매커니즘은 주로 Sequence Data를 처리하거나 생성하는 모델에서 사용됩니다. -> Sequence 입력을 수행하는 머신러닝 학습 방법의 일종 Attention의 개념은 Decoder에서 출력을 예측하는 매시점(time step)마다, Encoder에서의 전체의 입력 문장을 다시 한번 참고하게 하는 기법입니다. 단, 전체 입력 문장을 전부 다 종일한 비율로 참고하는 것이 아니라, 해당 시점에서 예측해야 할 요소와 연관이 있는 입력 요소 부분을 Attention(집중)해서 보게 합니다. 이 방법이 문맥을 파악하는 핵심의 방법이며, 이러한 방식을 DL(딥러닝)모델에 적용한것이 'Attent..

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] Word Embedding - 워드 임베딩

1. Word Embedding? Word Embedding, 워드임베딩 이란? 텍스트 데이터를 수치형 벡터로 변환하는 방법입니다. 다른 의미로 말하면 Text내의 단어들을 컴퓨터가 이해할 수 있는 Vector의 형태로 변환하는것을 말합니다. 즉, 단어를 고차원 공간의 저차원 벡터로 변환하는 방법입니다. Word Embedding 과정을 거친 Vector는 단어의 의미(mean), 문맥(context), 유사성(similar) 등을 수치화 해서 표현할 수 있습니다. 워드 임베딩의 과정은 크게 보면 2가지의 방법으로 이루어집니다. 2. Word Embedding의 방법 Word Embedding의 방법은 크게 보면 2가지의 방법으로 이루어 진다고 했습니다. 하나는 Count기반 방법, 다른 하나는 예측 기..

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] Word2Vec, CBOW, Skip-Gram - 개념 & Model

1. What is Word2Vec? Word2Vec은 단어를 벡터로 변환하는데 사용되는 인기있는 알고리즘 입니다. 여기서 단어는 보통 'Token' 토큰 입니다. 이 알고리즘은 단어(Token)들 사이의 의미적 관계를 Vector 공간에 잘 표현할 수 있는 방법을 학습하는 비지도방식(Unsupervised learning)으로 설계한 알고리즘 입니다. 주변 단어들(문맥)을 통해서 각 단어들을 예측하거나, 반대로 각 단어들을 통해 주변의 단어들을 보고 예측하는 방식으로 작동합니다. 비유 하자면 이미지를 학습하듯, 단어를 Vector로 보고 학습합니다. 이렇게 Word2Vec은 단어들 사이의 의미적인 관계를 파악합니다. 그리고, 위의 그림에 있는 문장을 이용해 모델을 학습 시키기 위해서 각 단어(Token..

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] GRU Model - LSTM Model을 가볍게 만든 모델

1. GRU Model은 무엇일까? GRU (Gated Recurrent Unit)는 순환 신경망(RNN)의 한 종류로, 앞에서 설명한 LSTM(Long Short-Term Memory)모델의 단순화된 형태로 볼 수 있습니다. GRU Model은 LSTM Model과 비슷한 방식으로 작동하지만, 더 간단한 구조를 가지고 있습니다. LSTM Model의 장점을 유지하되, Gate(게이트)의 구조를 단순하게 만든 모델이 GRU Model 입니다. 또한 GRU, LSTM Model은 둘다 Long-Term Dependency(장기 의존성) 문제를 해결하기 위하여 만들어 졌습니다. LSTM Model을 설명한 글에서 설명했지만 LSTM Model은 "Cell State(셀 상태)"와 "Hidden state(숨..

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] LSTM - Long Short Term Memory Model

1. LSTM Model은 무엇일까?LSTM은 Long Short-Term Memory의 약자입니다. RNN - Recurrent Neural Network (순환 신경망)의 문제인 Long-Term Dependency (장기 의존성) 문제를 해결하기 위해 제안된 모델입니다.기존의 RNN(순환 신경망)모델은 시간 & 공간적 패턴을 학습하고 예측하는데 유용합니다. 그래서 순차적인 데이터를 처리하는데에는 강점이 있는 모델입니다.다만 Long-Term Dependency(장기 의존성) 문제가 있어서 긴 Sequence의 데이터를 처리하는데 어려움이 있습니다.Long-Term Dependency(장기 의존성)에 대한 설명은 아래의 글에 적혀있으니까 참고해주세요. [NLP] Vanilla RNN Model, Lo..

🖥️ Deep Learning

[DL] Gradient Vanishing, Exploding - 기울기 소실, 폭팔

1. 신경망의 학습 과정 신경망의 학습 과정은 크게 2가지가 있습니다. 순전파(Forward Pass), 역전파(Backward Pass)가 있습니다. 먼저 이 학습 과정에 데하여 설명을 해보도록 하겠습니다. Forward Pass (순전파) Forward Pass (순전파)는 input(입력) data가 신경망의 각층을 차례대로 통과하면서 최종 output 까지 도달하는 과정입니다. 이 과정은 input layer(입력층)에서 output layer(출력층)까지 순차적으로 이루어지며, 최종적으로 손실함수 (loss function)을 통해 예측값과 실제값의 차이를 계산합니다. 이 차이를 손실(loss) or 오차(Error)라고 합니다. 그리고 이 차이는 신경망의 성능을 측정하는 지표가 됩니다. 정리하..

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] Vanilla RNN Model, Long-Term Dependency - 장기 의존성 문제

1. 기본 RNN 모델 (Vanilla RNN Model)의 한계RNN부분을 설명한 글에서 기본 RNN Model을 알아보고 구현해 보았습니다.보통 RNN Model을 가장 단순한 형태의 RNN 이라고 하며 바닐라 RNN (Vanilla RNN)이라고 합니다.근데, Vanilla RNN 모델에 단점으로 인하여, 그 단점들을 극복하기 위한 다양한 RNN 변형 Model이 나왔습니다.대표적으로 LSTM, GRU 모델이 있는데, 일단 이번글에서는 LSTM Model에 대한 설명을 하고, 다음 글에서는 GRU Model에 대하여 설명을 하도록 하겠습니다.Vanilla RNN은 이전의 계산 결과에 의존하여 출력 결과를 만들어 냅니다.이러한 방식은 Vanilla RNN은 짧은 Sequence에는 효과가 있지만, 긴..

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] RNN (Recurrent Netural Network) - 순환신경망

1. RNN 이란?RNN은 Sequence data를 처리 하기 위한 신경망 구조 입니다.주로 자연어처리(NLP)를 포함한 여러 Sequence Modeling 작업에서 사용됩니다.특징으로는 시간적, 공간적 순서 관계에 의하여 Context를 가지는 특성이 있습니다.💡 exampleI want to have an apple이 'apple'에 한번 주목해 보겠습니다.이 apple이라는 단어는 문맥이 형성하는 주변의 단어들을 함께 살펴봐야 판단할 수 있습니다.2. RNN에 대하여RNN의 특징은 어떤것이 있을까요?RNN은 은닉층(hidden layer)의 node에서 활성화 함수(activation function)을 통해 나온 결과값을 출력층 방향으로 보내면서, hidden layer node의 다음 계산..

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] Seq2Seq, Encoder & Decoder

1..sequence-to-sequence 💡 트랜스포머(Transformer) 모델은 기계 번역(machine translation) 등 시퀀스-투-시퀀스(sequence-to-sequence) 과제를 수행하기 위한 모델입니다. sequence: 단어 같은 무언가의 나열을 의미합니다. 그러면 여기서 sequence-to-sequence는 특정 속성을 지닌 시퀀스를 다른 속성의 시퀀스로 변환하는 작업(Task) 입니다. 그리고 sequence-to-sequence는 RNN에서 many-to-many 모델을 사용하고 있는데, RNN은.. 추후에 설명하도록 하겠습니다. 💡 example 기계 번역: 어떤 언어(소스 언어, source language)의 단어 시퀀스를 다른 언어(대상 언어, target la..

📝 NLP (자연어처리)/📕 Natural Language Processing

[NLP] Pre-Trained Language Model - 미리 학습된 언어모델

Pre-Trained Language Model - 미리 학습된 언어모델 💡 언어 모델(Language Model) → 단어 시퀀스에 부여하는 모델 (단어 시퀀스를 입력받아 해당 시퀀스가 얼마나 그럴듯한지 확률을 출력으로 하는 모델) 문장에서 i번째로 등장하는 단어를 𝑤n 이렇게 표기하면 n번째로 등장하는 언어모델에 등장할 확률 (수식 1) ex) 난폭이라는 단어 등장후에 운전이라는 단어가 나타날 확률? → 조건부 확률 이라고 한다. 조건부 확률 표기시 결과가 되는 사건(운전)을 앞에, 조건이 되는 사건(난폭)은 뒤에 쓴다 조건이 되는 사건이 우변 분자의 일부, 그리고 우변 분모를 구성하고 있음을 볼 수 있음 = 이는 결과가 되는 사건(운전)은 조건이 되는 사건(난폭)의 영향을 받아 변한다는 개념을 내포..

Bigbread1129
'nlp' 태그의 글 목록 (2 Page)