Programming

텍스트 분석 & NLP 핵심 요약 (완전 통합 정리)

Lucas.Kim 2026. 2. 14. 12:59
반응형

개요

텍스트 분석은 겉으로 보기엔 “문장 분석”처럼 보이지만, 실제로는 비정형 텍스트 데이터를 수치 벡터로 변환한 뒤 머신러닝을 적용하는 문제입니다.
즉, 핵심은 “언어를 숫자로 바꾸는 과정”에 있습니다.

이 글에서는 텍스트 분석의 전체 흐름부터 NLP의 목적까지,
시험 대비 + 실무 관점에서 한 번에 정리합니다.

1️⃣ 텍스트 분석의 전체 머신러닝 프로세스

텍스트 분석의 기본 구조는 다음과 같습니다.

텍스트 전처리
→ 피처 벡터화
→ 모델 학습
→ 예측
→ 평가

📌 핵심 개념

텍스트 분석 = 텍스트를 벡터로 변환한 뒤 기존 머신러닝을 적용하는 과정

기존 분류/회귀 모델은 숫자만 이해합니다.
따라서 벡터화가 핵심 관문입니다.

2️⃣ 텍스트 전처리 (Text Preprocessing)

텍스트 전처리는 “언어를 분석 가능한 형태로 정리하는 과정”입니다.

텍스트 클리닝

  • HTML 태그 제거
  • 특수문자 제거
  • 불필요한 기호 제거

예:

<p>I love this movie!!!</p>
→ I love this movie

토큰화 (Tokenization)

문장을 단어 단위로 분해하는 과정

"I love NLP"
→ ["I", "love", "NLP"]

📌 시험 핵심
토큰화 = 텍스트를 의미 있는 최소 단위로 분할

불용어 제거 (Stopword Removal)

the, is, and 처럼 자주 등장하지만 의미가 약한 단어 제거

왜 제거할까요?

→ 문서 구분에 도움이 되지 않기 때문입니다.

어근화 / 표제어 추출

  • playing → play
  • studies → study

의미 중심으로 통합하여 차원 축소 효과를 얻습니다.

(한글) 형태소 분석

한글은 띄어쓰기 기반 토큰화만으로는 부족합니다.

형태소 분석 = 단어 → 의미 최소 단위로 분해 + 품사 태깅

예:

먹었습니다
→ 먹/VV + 었/EP + 습니다/EF

📌 핵심 정의
형태소 분석 = 형태소 분해 + 품사 태깅

3️⃣ 피처 벡터화 (Feature Vectorization)

텍스트를 숫자 벡터로 변환하는 단계입니다.

Bag of Words (BoW)

문서 내 단어 등장 빈도만 사용합니다.

단어 순서? → 완전 무시
문맥? → 전혀 고려하지 않음

📌 근본적 한계

"I am happy"
"I am not happy"

BoW는 거의 동일하게 처리합니다.

→ 문맥을 이해하지 못합니다.

Count Vectorization

단어 등장 횟수를 그대로 벡터 값으로 사용합니다.

TF-IDF 

가장 중요합니다.

TF (Term Frequency)

문서 내 단어 빈도

IDF (Inverse Document Frequency)

전체 문서 중에서 얼마나 희귀한지

📌 핵심 원리

  • 자주 등장하지만 의미 없는 단어 → 가중치 ↓
  • 특정 문서를 잘 대표하는 단어 → 가중치 ↑

📌 시험 포인트
“특정 문서엔 자주 등장하고, 전체 문서에선 드문 단어에 높은 가중치” → TF-IDF

max_df 파라미터

너무 자주 등장하는 단어 자동 제거

예 : max_df = 0.95 → 전체 문서의 95% 이상 등장 단어 제거

자동 불용어 필터 역할을 합니다.

4️⃣ 텍스트 벡터의 특징: 희소 행렬 (Sparse Matrix)

텍스트 벡터는 대부분 0입니다.

왜?

문서마다 사용하는 단어 집합이 다르기 때문입니다.

예:

  • 문서 A는 단어 100개 사용
  • 전체 사전은 10,000개

→ 나머지 9,900개는 0

📌 시험 핵심
텍스트 벡터화 결과 = 희소 행렬

5️⃣ 문서 간 유사도 측정

코사인 유사도 (Cosine Similarity) ⭐

두 벡터의 “각도”로 유사도 측정

각도 0도 → 완전 유사
각도 90도 → 관련 없음

📌 핵심 문장
각도가 0에 가까울수록 문서가 유사합니다.

텍스트 분석에서 가장 많이 사용됩니다.

6️⃣ 텍스트 분석의 주요 활용 분야

텍스트 분류 ⭐

지도학습 기반

  • 스팸 / 정상
  • 긍정 / 부정
  • 뉴스 카테고리 분류

📌 시험 핵심
미리 정의된 레이블로 새로운 텍스트 예측 → 텍스트 분류


감성 분석

  • 지도학습 기반
  • 감성 사전 기반

리뷰 분석에서 많이 사용됩니다.


토픽 모델링 ⭐

비지도학습

문서 집합에서 숨겨진 주제(Topic) 발견

대표 알고리즘: LDA

📌 시험 핵심
문서 집합의 잠재 주제 발견 → 토픽 모델링


문서 군집화

비슷한 문서끼리 자동 그룹화

  • 뉴스 기사 자동 묶기
  • 논문 주제 자동 분류

7️⃣ NLP(자연어 처리)의 궁극적 목표

📌 NLP의 목적

인간의 언어를 컴퓨터가 이해하고 해석하도록 만드는 것

텍스트 분석 vs NLP 차이

구분 초점
텍스트 분석 예측 결과 중심
NLP 언어 구조·의미 이해 중심

📚 암기용 핵심 정리

  • BoW 한계 → 단어 순서 무시
  • TF-IDF → 문서 대표 단어 가중치
  • max_df → 너무 흔한 단어 제거
  • 텍스트 벡터 → 희소 행렬
  • 코사인 유사도 → 방향 기반 유사도
  • 텍스트 분류 → 지도학습
  • 토픽 모델링 → 비지도학습
  • 형태소 분석 → 의미 최소 단위 + 품사 태깅
  • NLP 목표 → 인간 언어 이해

🎯 마무리 정리

텍스트 분석의 본질은 다음 한 문장으로 정리됩니다.

텍스트 분석은 언어를 수치 벡터로 변환한 뒤, 머신러닝으로 패턴을 학습하는 과정입니다.

그리고 NLP의 본질은 다음입니다.

언어를 숫자로 바꾸는 것을 넘어서, 의미를 이해하려는 시도입니다.

이 두 영역은 겹치지만, 초점이 다릅니다.
시험에서는 “정의”가 중요하고, 실무에서는 “벡터화 전략”이 가장 중요합니다.

반응형