본문으로 건너뛰기

버그 제보

이상한 점을 알려 주시면 고칠게요. 지금 보고 있는 페이지와 브라우저 정보가 함께 담겨요.

페이지:

AI & Data

자연어 처리 파이프라인: 전처리부터 언어 모델까지

작성 2026. 10. 31.추가
목차19개 항목
출처와 참고

팔만코딩경(42Seoul 커뮤니티 위키)의 「자연어 처리 소개」를 바탕으로 재구성한 노트다. TextRank 부분은 「TextRank 를 이용한 키워드 추출과 핵심 문장 추출」, 사전 학습 목표 비교는 스캐터랩 기술 블로그의 「꼼꼼하고 이해하기 쉬운 XLNet 논문 리뷰」를 바탕으로 보강했다. 「학습 이전의 방식: 규칙으로 문장 구조 읽기」, 「음성 인식과 음성 합성」 절은 CrashCourse의 「Crash Course Computer Science」 강의를 바탕으로 보강했다. 「과제 분류」, 「공부 순서」는 Team-Neighborhood의 「I want to study Data Science」 위키 「자연어 처리」 문서로, 한국어 데이터셋 표는 같은 위키의 「데이터」 문서로 보강했다. 언어 유형과 한국어의 어려움, 임베딩 층과 사전 학습 벡터, 퍼플렉서티는 김기현의 「Natural Language Processing with PyTorch」 공개 장, 비지도 토크나이저는 「(한국어) 텍스트 마이닝을 위한 튜토리얼」, 모델 계보의 연도는 「nlp-tutorial」로 보강했다.

자연어 처리란

자연어(natural language)는 사람이 일상에서 쓰는 언어다. 자연어 처리(Natural Language Processing, NLP)는 이 언어를 컴퓨터가 이해하고 만들어 내도록 가공하는 기술이다. 번역기, 음성 비서, 챗봇, 검색 추천, 그리고 ChatGPT·Claude 같은 대규모 언어 모델(LLM)이 모두 NLP의 산물이다.

응용쓰이는 기술
챗봇토큰화, 감성 분석, 개체명 인식(NER), 오타 정규화, 구문 분석
음성 비서음성 특징 추출, 음성 인식, 언어 모델, 의도 분류
번역기인코더-디코더, 어텐션, 트랜스포머
검색·추천키워드 추출, 문서 유사도, 임베딩 검색

과제 분류

NLP의 과제는 입력과 출력의 모양으로 묶으면 정리된다. LLM은 이 과제 대부분을 프롬프트 하나로 처리하지만, 데이터를 만들고 평가할 때는 여전히 이 구분을 쓴다.

묶음하는 일세부 과제
단어 표현(word representation)텍스트의 기본 단위인 단어를 숫자로 나타낸다BoW, TF-IDF, Word2Vec, GloVe, FastText, 문맥 임베딩(ELMo, BERT)
텍스트 분류(text classification)텍스트를 미리 정한 범주 하나로 나눈다감성 분석, 문서 분류, 의도 분류
구조·의미 분석(parsing)문장 구조와 의미를 분석해 정보를 뽑는다품사 태깅(POS), 개체명 인식(NER), 의미역 결정(SRL), 관계·정보 추출, 구성소·의존 구문 분석
중의성 해소(disambiguation)뜻이 여럿인 표현을 하나로 정한다단어 의미 중의성 해소(WSD), 상호 참조 해결(coreference)
언어 모델(language model)앞 단어들로 다음 단어의 확률 P(w_t ∣ w_1 … w_{t-1})을 예측한다번역은 원문 S를 조건으로 붙인 조건부 언어 모델 P(w_t ∣ w_1 … w_{t-1}, S)이다
시퀀스 변환(sequence transduction)입력 시퀀스를 다른 시퀀스로 바꾼다기계 번역, 대화 응답 생성, 요약, 바꿔 쓰기

품사 태깅·개체명 인식처럼 토큰마다 라벨을 붙이는 과제를 묶어 시퀀스 태깅(sequence tagging)이라 한다. 분류 다음 단계로 도전하기 좋은 과제다.

전체 흐름

NLP 모델을 만드는 과정은 머신 러닝 일반의 흐름과 같다. 딥러닝도 머신 러닝의 부분집합이기 때문이다.

flowchart LR
  D["데이터셋 준비<br/>(말뭉치)"] --> P["전처리<br/>(토큰화·인코딩·패딩)"]
  P --> T["모델 학습<br/>(언어 모델)"]
  T --> E["평가<br/>(과적합 점검)"]
  E --> S["예측(서비스)<br/>(감성 분류, 번역, 생성 …)"]

학습 이전의 방식: 규칙으로 문장 구조 읽기

자연어는 프로그래밍 언어와 다르다. 프로그래밍 언어는 어휘가 작고 철자·문법이 하나라도 틀리면 컴파일되지 않지만, 자연어는 어휘가 방대하고, 한 단어에 뜻이 여럿이고, 말이 뭉개지거나 생략돼 모호하다. 가능한 문장이 사실상 무한해서 문장 사전을 줄 수도 없다. 그래서 초기 NLP는 문장을 작은 조각으로 분해하는 데서 시작했다.

단계하는 일예
품사(part of speech) 태깅단어마다 명사·동사·형용사 같은 종류를 붙인다영어 「leaves」는 명사(잎)도 동사(떠나다)도 된다. 사전만으로는 못 가린다
구 구조 규칙(phrase structure rule)언어의 문법을 규칙으로 적는다문장 → 명사구 + 동사구, 명사구 → 관사 + 명사 | 형용사 + 명사
구문 분석 트리(parse tree)규칙을 적용해 품사와 문장 구조를 함께 드러낸다무엇이 주어(명사 초점)이고 무엇을 했는지가 트리로 보인다

음성 검색 「가장 가까운 피자집 어디야」를 분석하면 질문 유형은 「어디」, 찾는 대상은 「피자집」, 기준은 「가장 가까운」이다. 「알람 2시 20분에 맞춰 줘」 같은 명령도 같은 방식으로 슬롯을 채운다. 언어를 레고처럼 조립 규칙으로 다루면 정형화된 질문과 명령은 잘 처리하지만, 규칙 밖의 표현(옛말투, 비유, 돌려 말하기)이 나오면 구문 분석이 실패하거나 의도를 놓친다.

같은 규칙은 문장 생성에도 쓴다. 개체와 개체 사이의 의미 있는 관계를 그래프로 저장한 지식 그래프(knowledge graph) 가 있으면, 「스릴러 ─가수→ 마이클 잭슨」, 「스릴러 ─발매→ 1982년」 같은 관계에서 「스릴러는 1982년에 나온 마이클 잭슨의 앨범이다」를 조립한다. 검색 결과 옆의 정보 상자가 이 방식이다.

구문 분석과 생성을 합치면 챗봇이 된다. 1960년대 MIT의 ELIZA는 상담가 역할을 하며 사용자 말에서 단어를 뽑아 되묻는 규칙 기반 챗봇이었다. 규칙 기반은 전문가가 「이런 말에는 이렇게 답한다」를 수백 개씩 써야 해서 유지가 어렵고 정교함에 한계가 있었다. 이후 실제 사람 대화 기록으로 학습하는 머신 러닝 방식을 거쳐, 지금은 LLM이 대화를 맡는다.

1. 데이터셋 준비

학습 재료가 되는 대량의 텍스트를 데이터셋 또는 말뭉치(corpus) 라 한다. 양만큼 중요한 것이 과제에 맞는 말뭉치를 고르는 일이다. 맞춤법 교정 모델이면 교정 말뭉치를, 대화 모델이면 일상 대화 말뭉치를 쓴다. 한국어는 국립국어원 「모두의 말뭉치」, AI Hub 공개 데이터, 커뮤니티가 정리한 한국어 데이터셋 목록 등에서 구할 수 있다. 공공 말뭉치는 이용 신청과 승인이 필요한 경우가 많다.

데이터과제특징
NSMC감성 분류네이버 영화 리뷰 20만 개(학습 15만, 테스트 5만), 긍정·부정 이진 레이블. 한국어 분류기의 첫 연습 데이터
KorQuAD기계 독해(질의응답)위키백과 문단과 질문, 답 구간. SQuAD의 한국어판
국립국어원 말뭉치형태소·구문·의미 분석, 언어 모델세종 말뭉치와 그 뒤를 이은 「모두의 말뭉치」를 언어정보나눔터에서 신청해 받는다
울산대 UCorpus, KAIST 코퍼스형태 분석·어휘 의미 분석대학 연구실이 구축한 품사·의미 태깅 말뭉치
위키백과 덤프, 나무위키 덤프사전 학습, 임베딩 학습레이블 없는 대량 원문. 마크업 정제가 먼저다

2. 전처리

날것의 텍스트로 학습하면 성능이 떨어진다. 전처리는 텍스트를 모델이 먹기 좋은 숫자 배열로 바꾸는 과정이다.

단계하는 일예
토큰화(tokenization)문장을 의미 단위(토큰)로 자른다Don't → Do / n't
정제(cleaning)목적에 맞지 않는 노이즈 제거: 특수 문자, 희귀 단어, 관사대소문자 통일, 빈도 낮은 단어 삭제
정규화(normalization)형태가 다른 같은 단어를 하나로어간 추출, 표제어 추출
불용어 제거의미 기여가 적은 단어 제거the, a, 은/는
인코딩(encoding)토큰을 숫자로단어 사전 → 정수 ID
패딩(padding)길이가 다른 문장을 같은 길이로 맞춘다빈자리를 0으로 채우는 제로 패딩

토큰화와 한국어

영어는 띄어쓰기와 구두점으로 대부분 잘린다. 한국어는 조사·어미가 붙는 교착어라 형태소 분석이 필요하다.

언어 유형예문법 기능을 정하는 것
교착어한국어, 일본어, 몽골어어간에 붙는 접사. 「잡다」 하나에서 잡히다·잡히시다·잡혔겠더라처럼 형태가 수없이 파생된다
굴절어라틴어, 독일어, 러시아어단어 형태 자체의 변화
고립어영어, 중국어어순

접사가 역할을 정하므로 한국어는 어순이 비교적 자유롭다(「나는 밥을 먹으러 간다」를 「밥을 먹으러 간다 나는」으로 바꿔도 뜻이 같다). 주어가 자주 생략되고 띄어쓰기도 들쭉날쭉해서, 같은 단어가 여러 형태로 흩어지고 희소성 문제가 커진다. 사전 없이 말뭉치 통계(글자 조각의 응집도, 뒤에 오는 글자의 다양성)로 단어를 찾는 비지도 토크나이저(soynlp 등)는 신조어가 많은 데이터에 쓴다.

"화분에 예쁜 꽃이 피었다."
→ 화분(명사) / 에(조사) / 예쁘(어간) / ㄴ(어미) / 꽃(명사) / 이(조사) / 피(어간) / 었(어미) / 다(어미)

트랜스포머 계열 모델은 형태소 대신 서브워드(subword) 토큰화(BPE, WordPiece, SentencePiece)를 쓴다. 자주 나오는 글자 조각을 사전에 넣어, 처음 보는 단어도 조각의 조합으로 표현한다.

어간 추출과 표제어 추출

방식방법예
어간 추출(stemming)규칙으로 어미를 잘라 낸다. 품사를 모른다formalize → formal
표제어 추출(lemmatization)품사와 사전을 써서 기본형을 찾는다is, are → be / having → have

3. 텍스트를 숫자로 표현하기

표현방법한계
정수 인코딩빈도순 단어 사전을 만들고 단어마다 번호를 붙인다번호 크기에 의미가 없다
원-핫 인코딩사전 크기의 벡터에서 해당 번호 자리만 1차원이 사전 크기만큼 크고, 단어 간 유사도를 담지 못한다
BoW·TF-IDF문서를 단어 빈도 벡터로. TF-IDF는 흔한 단어의 가중치를 낮춘다어순과 문맥을 버린다
단어 임베딩(Word2Vec, GloVe)주변 단어로 학습한 밀집 벡터. 벡터가 가까우면 뜻도 가깝다단어마다 벡터가 하나라 동음이의어를 구분하지 못한다
문맥 임베딩(BERT, LLM)같은 단어도 문장에 따라 다른 벡터모델이 크고 계산 비용이 든다

TF-IDF는 문서 d에서 단어 t의 중요도를 이렇게 매긴다.

TF-IDF(d, t) = tf(d, t) × log( N / df(t) )
  tf(d, t): 문서 d에서 t가 나온 횟수
  df(t):    t가 나온 문서 수,  N: 전체 문서 수

딥러닝 모델에서는 사전 학습한 word2vec 벡터를 꼭 입력으로 넣어야 하는 것은 아니다. 임베딩 층(embedding layer) 은 어휘 크기 × d 가중치 행렬이고, 원-핫 벡터를 곱하는 대신 단어 ID로 행을 찾아(lookup) 꺼낸다. 이 가중치는 분류·번역 같은 본 과제의 손실로 함께 학습되므로 과제에 맞는 임베딩이 나온다. 감성 분류에서 「행복」은 핵심 특징이지만 번역에서는 평범한 단어이듯, 좋은 임베딩은 과제마다 다르다. 사전 학습 벡터는 말뭉치가 아주 적을 때나, 기준 모델을 만든 뒤 성능을 더 끌어올릴 때 시도한다. 지금은 단어 벡터 대신 사전 학습 언어 모델 전체를 가져와 미세 조정한다.

벡터끼리의 비슷함은 코사인 유사도, 유클리드 거리, 자카드 유사도로 재고, 문자열 자체의 비슷함은 편집 거리(레벤슈타인 거리)로 잰다. 자세한 계산은 문자열·문서 유사도에 있다.

4. 언어 모델

언어 모델(language model)은 단어 나열이 나올 확률을 계산하는 모델이다. "나는 밥을 먹는다"가 "나는 밥을 먹힌다"보다 확률이 높다고 판단하고, 다음 단어를 예측한다.

세대모델핵심
통계 기반n-gram앞의 n−1개 단어만 보고 다음 단어 확률을 센다. 긴 문맥을 못 보고, 처음 보는 조합은 확률 0이 되는 희소성 문제가 있다
신경망 언어 모델NNLM(2003) → word2vec(2013), FastText(2016)NNLM은 단어를 밀집 벡터로 바꿔 다음 단어를 예측해, 처음 보는 조합에도 비슷한 단어의 확률을 나눠 준다. 그 부산물인 단어 벡터만 빠르게 학습하는 것이 word2vec, 글자 조각(subword)까지 쓰는 것이 FastText다
순환 신경망RNN, LSTM(1997), GRU문장을 시간 순서대로 읽으며 상태를 넘긴다. 길면 앞 정보가 흐려진다
어텐션seq2seq(2014) + 어텐션(2014)출력할 때 입력의 필요한 부분에 집중한다
트랜스포머Transformer(2017), BERT(인코더, 2018), GPT(디코더)셀프 어텐션으로 모든 단어 쌍의 관계를 병렬로 계산한다
대규모 언어 모델GPT·Claude·Gemini 계열거대한 트랜스포머를 방대한 텍스트로 사전 학습한 뒤, 지시 따르기·사람 선호에 맞게 추가 학습한다

사전 학습 목표: 자기회귀, 오토인코딩, 순열

트랜스포머를 사전 학습할 때 무엇을 맞히게 하느냐에 따라 모델의 성격이 갈린다.

목표대표방식한계
자기회귀(AR)GPT 계열앞 단어들만 보고 다음 단어를 맞힌다한 방향 문맥만 쓴다. 대신 생성에 그대로 쓸 수 있다
오토인코딩(AE)BERT일부 단어를 [MASK]로 가리고 양쪽 문맥으로 맞힌다미세 조정·실사용 입력에는 [MASK]가 없어 학습과 사용이 어긋난다. 가린 단어끼리는 서로 독립이라고 가정한다
순열 언어 모델XLNet단어를 예측하는 순서를 무작위로 섞어 자기회귀로 학습한다. 순서를 바꿔 가며 보면 결국 양쪽 문맥을 모두 쓰게 된다구현이 복잡하고 학습이 무겁다

XLNet은 순열 학습을 위해 같은 위치를 두 갈래로 표현한다. 내용 스트림은 그 단어의 내용까지 담고, 질의 스트림은 위치는 알지만 맞혀야 할 단어 내용은 모른 채 예측에 쓰인다. 모든 순서를 다 예측하면 수렴이 느려서 각 순서의 마지막 몇 단어만 예측한다(부분 예측). 긴 문맥은 Transformer-XL에서 가져온 세그먼트 재귀(앞 구간의 은닉 상태를 메모리로 재사용)와 상대 위치 인코딩(절대 위치 대신 단어 사이 거리로 어텐션)으로 다룬다.

이후 대규모 모델은 단순한 자기회귀 목표를 규모로 밀어붙이는 쪽으로 수렴했고, 분류·검색용 인코더는 BERT 계열의 마스크 언어 모델이 주로 쓰인다.

학습 없이 핵심어·핵심 문장 뽑기: TextRank

TextRank는 PageRank를 문서 안의 단어·문장 그래프에 적용한 비지도 추출 기법이다. 학습 데이터가 필요 없고 빠르며 도메인을 가리지 않는다.

PageRank는 "중요한 노드가 가리키는 노드가 중요하다"를 반복 계산한다. 점수의 일부(감쇠 계수 c, 보통 0.85)는 링크를 따라 흐르고, 나머지 1 − c는 모든 노드에 고르게 나눠 계산이 안정되게 한다. 수십 번 반복하면 점수가 수렴한다.

과제노드간선결과
핵심어 추출일정 빈도 이상의 단어(명사·동사·형용사 등 내용어만)정해진 창(window, 2~8단어) 안에 함께 나온 횟수점수 상위 단어
핵심 문장 추출문장두 문장의 유사도(공통 단어 수를 문장 길이의 로그 합으로 나눈 값, 또는 코사인 유사도). 임계값 아래 간선은 버려 계산을 줄인다점수 상위 문장 = 추출 요약
  • 무작위 이동 항을 노드마다 다르게 주면(personalized PageRank) 특정 위치의 문장이나 특정 단어를 선호하게 조정할 수 있다.
  • 한계: 원문 문장을 고를 뿐 바꿔 쓰지 못한다(추출 요약). 유사도 정의상 긴 문장·흔한 단어가 유리하고, 결과가 토큰화 품질에 좌우된다. 요약의 정답 자체가 모호해 평가가 어렵다.
  • 지금은 요약을 LLM에 맡기는 경우가 많지만, 비용 없이 빠르게 대량 문서의 키워드를 뽑거나 LLM 입력을 미리 줄일 때 여전히 쓸모 있다. 웹 문서 전체의 PageRank는 웹 검색엔진의 동작에 있다.

5. 평가와 예측

학습 데이터에서는 잘 맞는데 처음 보는 테스트 데이터에서 성능이 크게 떨어지면 과적합이다. 그래서 학습에 쓰지 않은 데이터로 따로 평가한다. 분류 과제는 정밀도·재현율·F1로, 생성 과제는 퍼플렉서티(perplexity)나 BLEU·사람 평가로 잰다.

퍼플렉서티(PPL) 는 언어 모델이 테스트 문장에 준 확률을 문장 길이로 정규화한 값이다.

PPL(w₁ … wₙ) = P(w₁ … wₙ)^(−1/n) = ( Π 1 / P(wᵢ | w₁ … wᵢ₋₁) )^(1/n)

긴 문장일수록 확률이 아주 작아지므로 n제곱근(기하평균)으로 길이 영향을 없앤다. 낮을수록 좋다. 공정한 6면 주사위의 PPL이 6이듯, PPL은 매 시점 모델이 헷갈려하는 평균 선택지 수로 읽는다. PPL의 로그는 단어당 교차 엔트로피와 같아서, 교차 엔트로피 손실을 줄이는 학습이 곧 PPL을 낮추는 학습이다. 토큰화 방식이 다르면 n이 달라지므로 같은 토크나이저끼리만 비교한다.

평가를 통과한 모델에 새 입력을 넣어 감성 분류·번역 같은 과제 결과를 얻는 것이 예측 단계다.

음성 인식과 음성 합성

말로 들어오는 입력은 먼저 글자로 바꿔야 위의 파이프라인에 들어간다. 이것이 음성 인식(speech recognition)이다.

파형에서 스펙트로그램으로

마이크가 잡은 소리는 진동판이 흔들린 크기를 시간 순으로 적은 파형(waveform) 이다. 「아」와 「이」의 파형은 다르지만 어디를 보고 「이건 이 소리다」라고 해야 할지 분명하지 않다. 그래서 고속 푸리에 변환(FFT) 으로 짧은 구간마다 어떤 주파수가 얼마나 센지 계산해 시간 축 위에 펼친 스펙트로그램(spectrogram) 으로 바꿔 본다(푸리에 변환). 오디오 장비의 이퀄라이저 막대를 시간 순으로 늘어놓은 그림이다.

개념뜻
포먼트(formant)성대·입·혀 모양이 만드는 공명 때문에 스펙트럼에서 밝게 솟는 주파수 띠. 모음마다 배치가 달라 모음을 구별하는 단서가 된다
음소(phoneme)단어를 이루는 소리 조각. 영어는 약 44개다. 인식기는 음소별 모양을 알고 패턴을 맞춘다
언어 모델 결합억양·잘못된 발음 때문에 음향만으로는 헷갈린다. 「she was」 뒤에는 명사보다 형용사가 흔하다는 통계로 「happy」와 「harpy」 중 「happy」를 고른다

음소를 맞춘 뒤 단어 경계와 문장 시작·끝을 가려 글자로 옮긴다. 언어 모델을 붙이는 이유는 위 「4. 언어 모델」 절의 n-gram과 같다. 단어 나열의 확률이 음향의 모호함을 메운다.

규칙에서 종단 간 신경망으로

시기흐름
1952벨 연구소의 「오드리(Audrey)」가 천천히 말한 숫자 열 개를 알아들었다
1970년대DARPA 지원으로 카네기 멜런의 Harpy가 처음 1,000단어를 넘겼지만, 실제 말보다 열 배 넘게 느렸다
1980~90년대컴퓨터가 빨라져 연속 음성의 실시간 인식이 가능해졌고, 손으로 쓴 규칙에서 데이터로 학습하는 통계 모델로 옮겨 갔다
2010년대~심층 신경망이 음향 모델을 맡으며 정확도가 크게 올랐다. 지금은 파형이나 스펙트로그램을 넣으면 글자가 바로 나오는 종단 간(end-to-end) 모델(예: OpenAI Whisper)이 주류다

음성 합성

음성 합성(speech synthesis, TTS)은 인식을 거꾸로 하는 일이다. 글을 음소로 쪼개 소리를 이어 붙이는 초기 방식은 음소 사이가 어색하게 끊겨 로봇 같은 소리가 났다. 지금은 신경망이 파형을 직접 만들어(2016년 WaveNet 이후) 억양과 감정까지 사람과 구별하기 어려운 수준이다.

음성 인터페이스가 널리 쓰일수록 학습 데이터가 쌓여 정확도가 오르고, 정확해질수록 더 많이 쓰이는 데이터 선순환이 음성 기술 발전의 동력이었다.

공부 순서

선수 지식은 확률론, 선형대수, 최적화다. 그 위에서 아래 순서로 직접 만들어 보며 올라간다.

  1. 리스트 다루기: 텍스트는 단어·음절·자소의 시퀀스다. 파이썬 리스트의 인덱싱·선택·매핑이 손에 익을 때까지 연습한다.
  2. 머신 러닝 기초: 지도 학습이 낯설면 머신 러닝 기초부터 본다.
  3. BoW + 로지스틱 회귀 분류기: (텍스트, 카테고리) 쌍 데이터를 전처리해 가장 단순한 분류기를 만든다.
  4. 단어 표현: 희소 벡터와 분산 표현(단어 벡터)의 차이를 공부하고, 단어 벡터로 딥러닝 분류기를 만든다.
  5. 관심 과제 하나 깊이: 시퀀스 태깅, 요약, 번역 중 하나를 골라 논문을 읽고 구현한다. 지금은 사전 학습 모델(BERT 계열, 오픈 LLM)을 미세 조정하는 것이 출발점이다.
  6. 안 될 때 고치기: 모델이 생각대로 동작하지 않을 때 원인을 찾고 해결책을 적용해 보는 경험이 실력을 만든다.

정리

  • NLP 모델은 데이터셋 → 전처리 → 학습 → 평가 → 예측 순서로 만든다.
  • 전처리는 토큰화·정제·정규화·인코딩·패딩이고, 한국어는 형태소 분석이나 서브워드 토큰화가 필요하다.
  • 텍스트 표현은 원-핫·TF-IDF 같은 희소 벡터에서 임베딩·문맥 임베딩 같은 밀집 벡터로 발전했다.
  • 언어 모델은 n-gram → RNN → 트랜스포머 → LLM으로 이어지며 긴 문맥을 다루는 능력이 커졌다.
  • 좋은 NLP 모델의 출발점은 과제에 맞는 말뭉치와 깨끗한 전처리다.

관련 노트: 문자열·문서 유사도: 편집 거리와 코사인 유사도, 분류 모델 성능 평가 지표, 머신 러닝 기초: 네 단계 추상화, LLM은 무엇을 하고 왜 작동하나, 서비스용 텍스트 분류 모델 만들기

원본 기록9

댓글

GitHub 계정으로 댓글을 남길 수 있어요.