자연어처리 공부
-
NLP에서 전이학습 transfer learning자연어처리 공부 2024. 1. 28. 18:13
자연어처리에서 전이학습에 대해서 알아보겠습니다. ▶︎ transfer learning 이란? → 학습된 모델(pretrained model)을 다른 관련 작업에 활용하는 머신 러닝 기법입니다. 공부를 할 때는 내가 가지고 있는 데이터를 가지고 해당 분야에서 유명한 딥러닝 모델을 쓰지만, 모델 성능과 학습 속도, 비용면에서 pretrained model을 사용하는 것이 좋습니다. 추가로 사전에 학습된 모델을 통해 나의 테스크에 더 맞게 파인튜닝해서 많이 사용합니다. ▶︎ pretrained model을 쓰는 이유? → 특히 자연어 처리, 이미지 인식, 음성 처리 분야에서 transfer learning을 많이 사용합니다. 그 이유는 해당 분야에서는 데이터의 양이 학습 성능을 좌우할 정도로 중요합니다. 레..
-
[ChatGPT] 왜 프롬프트 지니를 써야할까?자연어처리 공부 2024. 1. 9. 14:45
다들 ChatGPT 많이 쓰시죠? 저 또한 너무 유용하게 잘 활용하고 있습니다. 요즘 저의 생산성과 효율성을 책임지고 있습니다. 하지만 더 높은 생산성과 효율성을 원하신다면, 오늘 소개드릴 "프롬프트 지니"를 추천합니다. ChatGPT의 확장 프로그램인 프롬프트 지니는 한국어 질문을 영어로 바꿔주고, 영어 답변을 한국어로 번역해줍니다. 한국어로 써도 충분히 잘 되는 것 같은데 왜 영어로 해야하냐구요? 몇 가지 이유를 들어 쉽게 설명해드리겠습니다! 1. 우선 인공지능을 학습할 때는 많은 양의 데이터를 학습시킬수록 정확도가 올라갑니다. 인공지능은 학습 데이터를 통해 데이터의 특성과 패턴을 파악하는데 데이터가 많을수록 일반화도 잘되고 정확도가 올라갑니다. 우리도 10문제 풀고 시험보는거랑 100문제 풀고 시험..
-
[자연어처리] Transformer 쉽게 풀어서 정리해드립니다.자연어처리 공부 2024. 1. 5. 20:25
자연어처리에서 창의적인 아키텍처와 엄청난 학습량, 높은 성능으로 한 획을 그은 구글의 Transformer가 있습니다. Transformer 아키텍처는 "Attention Is All You Need" 논문에서 처음 소개되었습니다. 이 모델은 기존의 순환 신경망(RNN)이나 장단기 메모리(LSTM), 게이트 순환 유닛(GRU) 등의 기존의 순차적인 아키텍처를 사용하지 않고, Attention 메커니즘을 중심으로 구성되어 있습니다. "Attention Is All You Need. Concentration is All I Need, Also." 저는 이 모델을 이해하기 위해 많은 노력과 집중력을 필요했습니다. 그래서 "Attention Is All You Need. Concentration is All I..
-
[자연어처리] N-gram으로 아이오아이 너무너무너무 언어모델 학습하기. 다음에 올 가사 생성하기자연어처리 공부 2024. 1. 3. 00:01
▶︎ N-gram 이란? → N개의 단어를 묶어 독립된 피처로 생각하여 표현하는 방법 → N개의 연속된 단어 시퀀스를 파악하여 다음 단어를 예측하는 언어 모델입니다. → P(맛있다 | 빨간, 사과는) = n(빨간, 사과는, 맛있다) / n(빨간, 사과는) : "빨간", "사과는" 다음에 맛있다가 나올 확률은 "빨간", "사과는", "맛있다" 가 나온 횟수를 "빨간", "사과는" 이 나온 횟수로 나눈 조건부 확률 형태로 나타낼 수 있다 ▶︎ N-gram의 장점은? → 단어의 등장횟수를 카운트하는 BOW나 해당 문서에서 단어의 중요성을 수치화한 TF-IDF에서 할 수 없는 순서를 유지시킬 수 있으며, → 붙어 있을 때 또다른 의미를 갖는 단어들을 유지시킬 수 있으며 → 주변 단어들 간의 관계를 파악하여 ..
-
[자연어처리] Text-CNN 구현하기 (코드 위주)자연어처리 공부 2024. 1. 2. 12:43
▶︎ CNN(Convolutional Neural Network) 이란? → 이름에서 알 수 있듯이 합성곱(새로운 연산)을 활용한 신경망 딥러닝 모델입니다. → 필터가 상하좌우 이동하면서 데이터와 convolution을 하여 특징을 추출합니다. 일반적인 Dense layer보다 적은 수의 파라미터θ로 데이터의 주요 특징을 찾아낼 수 있습니다. → 필터를 이동시키면서 서로 다른 데이터의 특성을 추출하기 때문에 공간적(지역적, 위치적, 계층적) 패턴을 가지고 있는 이미지, 신호 데이터에 적합합니다. ▶︎ Text-CNN이란? → 용어 그대로 텍스트 데이터에 대한 CNN을 기반으로 하는 모델입니다. → 공간적(지역적, 위치적, 계층적) 특징을 잘 포착하는 CNN의 특징에서 영감을 받아 텍스트 모델에도 적용..
-
[자연어처리] 문자를 숫자로 변환하는 방법 (BOW, TF-IDF, Word-Embedding)자연어처리 공부 2024. 1. 2. 11:14
자연어처리가 정말 빠른 속도로 발전을 하고 있으며, 현재 기술은 사람인지 컴퓨터인지 구별이 어려운 만큼 다양한 분야와 일상 생활 전반에 걸쳐 스며들고 있습니다. 저 또한 ChatGPT로 공부하고 글을 쓰고 수정을 맡기기도 하며, 구글 검색을 활용하고 있습니다. 또한 프로그래밍 코드도 도움받고 에러도 잡아줍니다. 번역도 해주는 등 일상적인 환경에서 효율적이고 스마트한 혜택을 얻고 있습니다. 그 변화는 혁명적이고 놀랍습니다. 이제는 시도 쓰고 소설도 쓰고 그림도 그리며 다양한 분야에서 인간의 능력을 뛰어넘는 성과를 이루고 있습니다. 컴퓨터는 어떻게 문자를 인식해서 번역도 하고, 감정을 분석하고, 정보를 추출하여 요약을 해주고, 질의에 대답을 해주며, 문장 생성 등의 작업을 할 수 있는 걸까요? 자연어처리의 ..
-
[자연어처리] Word2Vec 의 모든 것자연어처리 공부 2023. 12. 26. 16:19
▶︎ Word2Vec 이란? → Neural Network를 활용하여 단어를 벡터화하는 구글에서 개발한 Word Embedding 방법 → 대규모의 텍스트 corpus에서, 비슷한 의미를 가진 단어들은 비슷한 벡터로 매핑되도록 학습됩니다. 문맥 정보가 중요할 때 사용됩니다. ▶︎ Word2Vec 의 핵심 아이디어 → 비슷한 문맥에서 나타나는 단어들은 비슷한 벡터로 표현되어야 한다 → 이를 통해 모델이 단어 간의 의미적 유사성을 캡처하고, 단어 간의 유사성을 계산할 수 있게 된다. 임베딩 된 간어의 내적이 코사인 유사도가 되도록 합니다. ▶︎ "Word2Vec 를 학습한다"는 의미는? → Word2Vec은 말씀드렸듯이 비슷한 의미를 지닌 단어는 비슷한 공간에 모이도록 만든 상대적인 위치 값입니다. ..
-
[자연어처리] 기계 번역 seq2seq Encoder-Decoder Model (2) Inference step자연어처리 공부 2023. 12. 26. 15:28
▶︎ 기계번역 seq2seq를 (1) train step, (2) Inference step 로 굳이 나눈 이유가 있나요? → train 디코딩 과정에서 이전 time step의 output을 input으로 사용하는 대신 실제 정답(ground truth)을 input으로 사용하는 teacher forcing을 사용합니다. inference할 때는 이전 time step의 output을 input으로 사용하는 text generation 기법을 사용해야 합니다. 그렇기 때문에 decoder model을 train 할 때와 inference 할 때 따로 만들어줘야 합니다. 1. time step의 output을 input으로 사용하는 decoder model을 만든다. # Decoder for infere..