nlp 10

[AI/ML]어간추출

어간추출(Stemming)은 단어에서 활용(변화된 형태)을 제거하고 ‘어간(Stem, 단어의 뿌리 형태)’만 남기는 과정. 자연어 처리(NLP)에서 텍스트 전처리 단계로 자주 사용됨.1. 정의단어의 접사(접두사, 접미사)를 단순 규칙에 따라 잘라내서 기본형을 찾는 방법문법적으로 완벽하지 않을 수 있지만, 빠르고 단순하게 단어를 정규화예:“playing”, “played”, “plays” → “play”“studies”, “studying” → “studi” (완벽히 어근과 다를 수 있음)즉, 정확한 언어학적 원형은 아니더라도 단어 변형을 줄여서 차원을 축소하는 게 목적2. 원리대표적인 알고리즘: Porter Stemmer, Lancaster Stemmer접미사 규칙 적용 (e.g., -ing, -ed, ..

AI·ML/NLP 2026.01.22

[AI/ML]BART

BART(Bidirectional and Auto-Regressive Transformers)는 이름처럼 BERT(양방향 인코더) + GPT(자기회귀 디코더)의 장점을 합친 언어모델즉, 트랜스포머 인코더-디코더 구조를 활용한 Seq2Seq(Sequence-to-Sequence) 모델로, 텍스트 생성과 이해 모두 용이1. 이름에서 풀기Bidirectional → 인코더는 BERT처럼 양방향 문맥 이해Auto-Regressive → 디코더는 GPT처럼 자기회귀적으로 텍스트 생성Transformers → Transformer 구조 기반2. 원리BART는 노이즈를 넣은 입력 문장을 원래 문장으로 복원하는 방식(denoising autoencoder)으로 사전학습함.사전학습(Pre-training) 방식:입력 문..

AI·ML/NLP 2026.01.16

[AI/ML]BERT

BERT(Bidirectional Encoder Representations from Transformers)는 트랜스포머(Transformer) 인코더 구조를 기반으로 양방향 문맥을 학습한 언어모델GPT가 “다음 단어 예측(Autoregressive)” 방식이라면, BERT는 양방향 문맥 이해에 강점1. 이름에서 풀기Bidirectional → 문장의 앞뒤 문맥을 동시에 활용Encoder Representations → Transformer의 인코더 구조 사용from Transformers → Transformer 아키텍처 기반2. 원리BERT는 크게 두 가지 학습 기법을 사용해 사전학습함:Masked Language Model (MLM)◦ 입력 문장에서 일부 단어를 [MASK]로 가리고 → 그 단어를..

AI·ML/NLP 2026.01.14

[AI/ML]Multi-head attention

Multi-Head Attention은 트랜스포머(Transformer)에서 Self-Attention을 여러 번 병렬적으로 수행한 뒤 합치는 기법즉, 한 번의 Attention만 쓰는 게 아니라, 여러 “머리(Head)”가 서로 다른 관점에서 문맥을 해석하도록 하는 것 1. 정의Self-Attention은 단어들 간의 관계를 한 가지 방식(한 세트의 Q, K, V)으로만 학습Multi-Head Attention은 여러 세트의 Q, K, V를 만들어 병렬로 여러 관계를 학습최종적으로 결과를 합쳐 더 풍부한 표현을 만듦2. 수식각 Head에 대해:headᵢ = Attention(QWᵢ^Q, KWᵢ^K, VWᵢ^V)그 다음 병합:MultiHead(Q, K, V) = Concat(head₁, … , headₕ..

AI·ML/NLP 2026.01.13

[AI/ML]Self_Attention

1. 정의Self-Attention은 “자기 자신 포함, 문장의 모든 단어들과의 관계”를 계산하는 주의(attention) 메커니즘출력은 입력 단어의 문맥적 표현(Contextual Representation)2. 수식입력 단어 벡터를 Query(Q), Key(K), Value(V)로 변환유사도 계산:Attention(Q, K, V) = Softmax( QKᵀ / √dₖ ) VQKᵀ : Query와 Key의 내적 → 유사도Softmax : 확률적 가중치V : Value를 가중합즉, “어떤 단어가 다른 단어에 얼마나 주의할지” 계산 후,그 비율로 정보(Value)를 섞어줌 3. 비유비유로 생각하면:문장 “나는 사과를 먹었다”에서 “먹었다”라는 단어를 이해하려고 함Self-Attention은 “먹었다”가 무..

AI·ML/NLP 2026.01.12

[AI/ML]Box-Cox

Box-Cox 변환(Box-Cox Transformation)은 데이터의 분포를 정규분포(정규성)에 가깝게 만들기 위해 사용하는 통계적 변환 기법주로 회귀분석이나 분산분석 같은 정규성 가정이 필요한 분석에서 데이터 전처리 단계로 사용됨.1. 정의Box-Cox 변환은 아래와 같은 수식으로 정의됨: \begin{cases} \frac{y^\lambda - 1}{\lambda}, & \lambda \neq 0 \\ \ln(y), & \lambda = 0 \end{cases}y>0(양수 데이터만 가능)λ: 변환 계수(모수), 데이터를 가장 “정규성에 가깝게” 만드는 값을 선택즉, λ 값을 조정하면서 데이터 분포를 안정화 2. 목적정규성 확보: 데이터가 치우쳐 있으면 → 정규분포에 더 가깝게 변환분산 안정화: 분..

[AI/ML]Bag of words

Bag of Words(BoW)는 문서에서 단어의 등장 여부나 빈도를 단순히 세어 벡터로 표현하는 텍스트 표현 기법임. "순서"는 무시하고, "무엇이 얼마나 등장했는가"만 본다는 게 핵심1. 정의문장을 단어의 집합(bag)으로 보고, 각 단어가 몇 번 등장했는지를 기록문맥, 순서는 고려하지 않음 → 단어의 빈도(frequency) 정보만 반영예:문장1: "빅데이터 분석 공부"문장2: "데이터 분석 재미있다"→ 단어 사전(Vocabulary): {빅데이터, 분석, 공부, 데이터, 재미있다}문장1 → [1, 1, 1, 0, 0]문장2 → [0, 1, 0, 1, 1]2. 특징장점: 단순하고 빠름, 머신러닝 입력으로 사용하기 쉬움단점: 단어 순서·의미·문맥 정보 손실 → “나는 밥을 먹는다”와 “밥을 나는 먹는..

AI·ML/NLP 2025.12.27

[AI/ML]N-gram

N-gram은 문장에서 연속된 N개의 단어(또는 글자)를 하나의 묶음(토큰)으로 보는 언어 모델링 기법임. 자연어 처리(NLP)에서 텍스트를 단순하면서도 효과적으로 다루는 방법 중 하나1. 정의문장을 단어(Word) 또는 문자(Character) 단위로 잘라 연속된 N개 단위를 추출N=1 → Unigram, N=2 → Bigram, N=3 → Trigram …2. 원리 문장에서 "오늘 날씨가 정말 좋다"라는 문장이 있을 때: Unigram (1-gram): {오늘}, {날씨가}, {정말}, {좋다} Bigram (2-gram): {오늘 날씨가}, {날씨가 정말}, {정말 좋다} Trigram (3-gram): {오늘 날씨가 정말}, {날씨가 정말 좋다} 즉, 문맥을 N개 단..

AI·ML/NLP 2025.12.22

[AI/ML]POS-tagging

POS-tagging(Part-Of-Speech tagging, 품사 태깅)은 문장 속 각 단어의 품사(명사, 동사, 형용사 등)를 자동으로 식별하고 부착하는 작업임. 자연어 처리(NLP)에서 아주 기본이 되는 단계1. 정의입력: 문장 (예: "나는 밥을 먹는다")출력: 각 단어에 품사 태그 부여나/대명사(NP), 는/조사(JX), 밥/명사(NN), 을/조사(JKO), 먹는다/동사(VV+EF)즉, 문장을 형태소 단위로 잘라서 "이 단어는 어떤 역할을 하는가?"를 태그로 표시하는 것2. 동작 방식사전 기반: 단어 사전과 규칙에 따라 품사 부여통계 기반: HMM(Hidden Markov Model) 같은 확률 모델로 문맥 고려딥러닝 기반: RNN, LSTM, BERT 같은 신경망으로 품사 예측3. 비유비유로..

AI·ML/NLP 2025.12.17

[AI/ML]TF-IDF

1. 정의 TF (Term Frequency, 단어 빈도) 한 문서 안에서 특정 단어가 얼마나 자주 나오는가 예: “빅데이터 시험 준비” 문장에서 “시험”이 2번 나오면 TF=2 IDF (Inverse Document Frequency, 역문서 빈도) 그 단어가 전체 문서 집합에서 얼마나 희귀한가 흔한 단어일수록 중요도가 낮아지고, 드문 단어일수록 중요도가 올라감 예: “빅데이터”는 희귀 → IDF ↑, “그리고”는 흔함 → IDF ↓ TF-IDF = TF × IDF 문서 내에서 자주 나오고, 다른 문서에는 잘 안 나오는 단어일수록 가중치 ↑ N = 전체 문서 수df(t) = 단어 t가 등장한 문서 수3. 비유비유로 생각하면:“시..

AI·ML/NLP 2025.12.15