일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- R
- CSS
- EC2
- 벡터
- 자기지도학습
- 클러스터링기법
- 함수
- HTML
- 정수인코딩
- 인덱스
- Ajax
- 매일영어습관
- Ajax프레임워크
- Mac konlpy
- Filter
- 질의확장
- DOM
- 유의수준
- 파이썬
- 노트list
- 프로토콜
- 명령어
- NLP
- 노마쌤
- DOMAPI
- JS
- 신뢰구간
- 웹폰트
- 행렬
- 노마쌤과 즐거운 영어 습관
- Today
- Total
채니의 개발일기
NLP - 토큰화 본문
토큰화
- 토큰화 : 기계에서 어느 구간까지 문장이고, 단어인지 알려주는 것이다
- 자연어 처리 (NLP) 분야에서 중요한 전처리 단계 중 하나로, 텍스트를 작은 단위로 나누는 과정을 의미
- 단어 토큰화(토큰의 단위가 단어일 경우), 문장토큰화(토큰의 단위가 문장일 경우)
- 단어 토큰화(Treebank Word Tokenizer)
- 주로 NLTK(Natural Language Toolkit) 라이브러리에서 제공되며, 영어 텍스트를 토큰화하는 데 사용된다.
- Penn Treebank Tokenization은 영어 텍스트를 토큰으로 나눌 때 일반적으로 사용되는 규칙 중 하나로, 구두점, 줄 바꿈, 대소문자 등을 기반으로 단어를 분리한다.
- 구두점 처리: 구두점을 단어의 일부로 고려하며, 문장 부호, 쉼표, 마침표, 물음표 등을 올바르게 처리한다
- 대소문자 유지: 기본적으로 대문자와 소문자를 구별하여 토큰화를 수행한다
- 줄 바꿈 처리: 문단이나 문장이 줄 바꿈으로 나누어져 있는 경우에도 이를 고려하여 토큰화한다
import nltk
from nltk.tokenize import TreebankWordTokenizer
text = "This is an example sentence. It shows how Treebank Word Tokenizer works."
tokenizer = TreebankWordTokenizer()
tokens = tokenizer.tokenize(text)
print(tokens)
->['This', 'is', 'an', 'example', 'sentence.', 'It', 'shows', 'how', 'Treebank', 'Word', 'Tokenizer', 'works', '.']
- 영어 문장 토큰화(Sentence Tokenization)
import nltk
from nltk.tokenize import sent_tokenize
text = "안녕하세요. 자연어 처리의 문장 토큰화 예시를 보여드립니다. NLTK를 사용합니다."
# 문장 토큰화 수행
sentences = sent_tokenize(text)
# 결과 출력
for sentence in sentences:
print(sentence)
->This is an example sentence.
It shows how Treebank Word Tokenizer works.
- 한국어 문장 토큰화(Sentence Tokenization)
: 문장 토크나이저 'KSS"
import kss
text = "안녕하세요. kss 라이브러리를 사용한 한국어 문장 분리 예시입니다. 텍스트를 문장 단위로 분리합니다."
# 문장 분리 수행
sentences = kss.split_sentences(text)
# 결과 출력
for sentence in sentences:
print(sentence)
-> 안녕하세요.
ss 라이브러리를 사용한 한국어 문장 분리 예시입니다.
텍스트를 문장 단위로 분리합니다.
- 한국어의 토큰화
- 한국어 특징은 교착어이다. 교착어란 실질적인 의미를 가진 어간에 조사나, 어미와 같은 문법 형태소들이 결합하여 문법적인 기능이 부여되는 언어이다.
- 교착어인 한국어 특성으로 인해 한국어 토크나이저로 형태서 분석기를 사용하는것이 보편적이다.
형태소분석기
출처: https://iostream.tistory.com/144
- mecab의 연산속도가 가장빠르고 분석 성능도 준수하여 선호도가 높다
- khaii는 가장 최근에 나온 분석기로 딥러닝 기반 형태소 분석기이다
- Komoran은 오탈자에 강건한다
- Soynlp는 학습 기반으로 복합명사를 잘 추출해낼 수 있다.
'인공지능 > 자연어처리' 카테고리의 다른 글
단어 벡터화(Vectorization) (1) | 2023.10.09 |
---|---|
NLP - 정수인코딩, 패딩, OOV (1) | 2023.10.08 |
맥북에서 konlpy다운로드 (1) | 2023.10.08 |
형태소 분석기 : kakao/khaiii 설치 (0) | 2023.10.03 |
NLP란? (1) | 2023.09.28 |