2025/02 10

12. 사전 학습된 언어 모델(PML)

1. PML* PLM(Pre-trained Language Model)은 대량의 텍스트 데이터를 사전 학습하여 자연어 이해와 생성 능력을 갖춘 인공지능 모델입니다. * 대표적으로 BERT, GPT, T5 등이 있으며, 이들은 대규모 데이터에서 단어의 의미와 문맥을 학습한 후, 특정 작업(예: 문장 분류, 번역, 질의응답 등)에 맞게 추가 학습(Fine-tuning)하여 활용됩니다. * PLM은 문맥을 고려한 자연어 처리 능력이 뛰어나며, 다양한 언어 기반 AI 애플리케이션에서 핵심 기술로 사용됩니다.  1-1. BERT(Bidirectional Encoder Representations from Transformers)* BERT(Bidirectional Encoder Representations fro..

11. 트랜스포머

1. 트랜스포머(Transformer) * 트랜스포머(Transformer)는 2017년 구글 논문(Attention is all you need)에서 발표된 자연어 처리(NLP)와 다양한 시퀀스 학습 문제에서 뛰어난 성능을 보이는 신경망 아키텍처로, 어텐션 메커니즘을 활용하여 병렬 연산이 가능하고 장기 의존성을 효과적으로 처리할 수 있습니다. * 기존의 순환신경망(RNN)과 달리 순차적인 계산 없이 전체 입력 문장을 한 번에 처리하며, 특히 "셀프 어텐션(Self-Attention)"을 사용하여 문장 내 단어 간 관계를 동적으로 학습합니다. * 대표적인 트랜스포머 기반 모델로는 BERT, GPT, T5 등이 있으며, 머신 번역, 텍스트 생성, 문서 요약 등 다양한 AI 분야에서 널리 활용되고 있습니다...

10. 어텐션 메커니즘

1.어텐션 메커니즘* 기존의 RNN(Recurrent Neural Network)이나 LSTM(Long Short-Term Memory) 모델은 입력 데이터를 순차적으로 처리하기 때문에 긴 문장에서 중요한 정보를 잃어버리거나, 멀리 떨어진 단어 간의 관계를 잘 파악하지 못하는 문제가 있었습니다. * 어텐션은 입력 문장의 모든 단어를 한 번에 보고, 어떤 단어가 중요한지 가중치를 계산하여 집중하는 방법입니다.     * 예를 들어, "나는 오늘 학교에서 수학 시험을 봤다."라는 문장에서 "시험"이라는 단어가 가장 중요한 의미를 가진다고 가정합시다. 어텐션은 이 문장을 처리할 때 "시험"에 더 높은 가중치를 주고, 덜 중요한 단어에는 낮은 가중치를 주는 방식으로 학습합니다. 2. 어텐션 작동원리어텐션 메커니..

8. Seq2Seq

1. 자연어 이해(NLU)* 자연어 이해(NLU, Natural Language Understanding)는 기계가 인간의 언어를 의미적으로 해석하고 이해하는 기술을 의미합니다. * 이는 단순한 단어 분석을 넘어 문맥을 파악하고, 개체 인식(NER), 감성 분석, 의미적 유사성 판단, 문장 의도 분류 등 다양한 과업을 포함합니다. * NLU는 기계 학습과 딥러닝 기술을 활용하여 문장의 의미를 추론하며, 챗봇, 음성 비서, 기계 번역, 자동 요약 등의 응용 분야에서 중요한 역할을 합니다. 2. 자연어 생성(NLG)* 자연어 생성(NLG, Natural Language Generation)은 기계가 사람이 이해할 수 있는 자연스러운 텍스트를 생성하는 기술을 의미합니다. * 이는 데이터를 분석하고 적절한 문맥..

7. LSTM과 GRU

1. LSTM* LSTM(Long Short-Term Memory)은 RNN의 장기 의존성 문제를 해결하기 위해 고안된 모델입니다. * LSTM은 셀 상태(cell state)와 3개의 게이트(입력 게이트, 출력 게이트, 망각 게이트)를 사용하여 중요한 정보를 오랫동안 저장하고 불필요한 정보를 제거하는 구조를 갖추고 있습니다. * 망각 게이트는 이전 셀 상태에서 필요 없는 정보를 삭제하고, 입력 게이트는 새로운 정보를 저장하며, 출력 게이트는 최종 출력을 결정합니다. * 이러한 구조 덕분에 LSTM은 장기 시퀀스를 다루는 자연어 처리, 음성 인식, 시계열 예측 등의 다양한 분야에서 효과적으로 사용됩니다. * 하지만 구조가 복잡하여 계산량이 많고, 학습 시간이 오래 걸린다는 단점이 있습니다.     LST..

6-2. RNN 활용

1. 네이버 쇼핑의 긍정, 부정 RNN 활용 네이버 쇼핑의 후기 RNN 활용에 대해서 알아보겠습니다.* https://raw.githubusercontent.com/bab2min/corpus/master/sentiment/naver_shopping.txt 데이터 로드* 긍정, 부정 라벨링 (3점을 제거, 1, 2점(부정), 4, 5(긍정))* 임베딩* 데이터셋 만들기* 데이터로더 만들기* 간단한 RNN 모델 만들기* 학습 후 테스트 * "이 제품 정말 좋아요! 추천합니다." (긍정)예시 1)* https://raw.githubusercontent.com/bab2min/corpus/master/sentiment/naver_shopping.txt# 필요한 프로그램들 설치!pip install konlpy!..

6. RNN(Recurrent Neural Network, RNN)

1. RNN* 순환 신경망(Recurrent Neural Network, RNN)은 시퀀스 데이터(Sequence Data)를 처리하는 데 특화된 신경망 구조로, 이전 상태(hidden state)를 다음 시점(time step)으로 전달하여 시계열 데이터, 자연어 처리(NLP), 음성 인식 등에 활용됩니다. * 일반적인 인공 신경망(ANN)과 달리 RNN은 가변 길이의 입력을 다룰 수 있으며, 시퀀스 간의 의존성을 학습할 수 있습니다. * 그러나 일반적인 RNN은 장기 의존성(Long-Term Dependency) 문제로 인해 학습이 어려울 수 있으며, 이를 해결하기 위해 장단기 메모리(Long Short-Term Memory, LSTM)나 게이트 순환 유닛(Gated Recurrent Unit, GR..

5. CNN Text Classification

RNN을 보기 전에 CNN Text Classification을 알아보자. RNN은 CNN Text Classification을 먼저 구현해 본 후 보면 이해가 될 것이다. 1. CNN( "Convolutional Neural Networks)* CNN은 컴퓨터 비전 분야를 위해 개발되었으며, 대중적으로 사용되고 있는 가장 보편화된 이미지 처리 알고리즘입니다.* CNN(Convolutional Neural Network)을 사용하여 텍스트 데이터를 분류하는 방법을 의미합니다.* 원래 CNN은 이미지 처리에 특화된 모델이지만, 자연어 처리(NLP)에서도 강력한 성능을 발휘할 수 있어. 특히, 문장의 패턴을 학습하는 데 효과적이라서 감성 분석(Sentiment Analysis), 뉴스 카테고리 분류, 스팸 ..

4. 신경망 기반의 벡터화

1. 워드 임베딩* 워드 임베딩(Word Embedding)은 단어를 고차원의 희소 벡터로 표현하는 기존 방식(원-핫 인코딩) 대신, 단어의 의미를 저차원의 밀집 벡터(dense vector)로 변환하는 자연어 처리 기법입니다.* 이를 통해 단어 간 유사성과 관계를 벡터 공간에 효율적으로 나타낼 수 있으며, 벡터 간의 거리 또는 방향을 통해 단어의 문맥적 의미를 학습합니다.* 대표적인 워드 임베딩 알고리즘으로는 Embedding Layer, Word2Vec, GloVe, FastText 등이 있으며, 이를 사용하면 언어 모델이 문맥을 이해하거나 추론하는 데 필요한 기초적인 언어적 의미를 학습할 수 있습니다. ### 1-1. 랜덤 초기화 임베딩* 랜덤 초기화 임베딩은 모델 학습 초기 단계에서 임베딩 벡터를..

3. 벡터화

1. 벡터화* 벡터화는 텍스트 데이터를 숫자 형태로 변환하여 머신러닝 또는 딥러닝 모델에서 처리할 수 있도록 만드는 과정입니다. * 이를 위해 단어의 빈도를 기반으로 한 Bag-of-Words(BOW), TF-IDF와 같은 방법부터, 단어 간의 의미적 관계를 학습하는 Word Embedding(단어 임베딩), 문장의 문맥과 구조를 반영하는 Transformer 기반 임베딩(BERT, GPT) 등 다양한 기법이 사용됩니다. * 벡터화는 단어, 문장, 문서와 같은 텍스트 데이터의 특징을 수치적으로 표현하며, 단순히 단어의 빈도를 반영하거나 의미적 유사성을 학습하여 벡터 공간에서 단어 간 관계를 나타냅니다. * 데이터의 특성과 분석 목적에 따라 적절한 벡터화 기법을 선택하는 것이 중요합니다. 2. 원-핫 인코..