Python - 형태소 분석기 비교 (Komoran, Okt, Kkma)
1. 구글 환경
https://colab.research.google.com
2 형태소 파서 설치 (KoNLpy)
Komoran, Okt, Kkma 등의 형태소 파서를 사용 하기 위해서는 "konlpy" 패키지 설치를 해야 합니다.
KoNLPy는 한국어 형태소 파서 라이브러리 입니다.
노트북에 아래 코드를 입력 하고 실행하면 노트북에 설치가 됩니다.
!pip install konlpy
2.1 Komoran 형태소 파서 ( Korean Morphological Analyizer)
"코모란"은 Java로 구현된 한국어 형태소 파서로 공백이 포함된 형태로 단위로 분석이 가능합니다.
from konlpy.tag import Komoran 과 같이 설치된 모듈을 사용하여 코드를 실행합니다.
from konlpy.tag import Komoran
komoran = Komoran()
text = "파이썬이 좋은감요 좋아함요"
#형태소와 품사를 추출
pos = komoran.pos(text)
print ( pos)
# 명사만 추출
pos = komoran.nouns(text)
print ( pos)
# 형태소만 추출
pos = komoran.morphs(text)
print ( pos)
다음과 같은 결과가 나온다.
[('파이썬', 'NNP'), ('이', 'JKS'), ('좋', 'VA'), ('은', 'ETM'), ('감', 'NNG'), ('요', 'JX'), ('좋아하', 'VV'), ('ㅁ', 'ETN'), ('요', 'JX')]
['파이썬', '감']
['파이썬', '이', '좋', '은', '감', '요', '좋아하', 'ㅁ', '요']
2.2 Okt 형태소 파서 (Opensource korean text processor )
Okt는 간단한 형태소 파서로 띄어쓰기가된 문장을 빠르게 처리할 수 있습니다.
형태소 파서중 실행 속도가 가장 빠릅니다. "0초"
from konlpy.tag import Okt
okt = Okt()
text = "파이썬이 좋은감요 좋아함요"
#형태소와 품사를 추출
pos = okt.pos(text)
print ( pos)
# 명사만 추출
pos = okt.nouns(text)
print ( pos)
# 형태소만 추출
pos = okt.morphs(text)
print ( pos)
결과
[('파이썬', 'Noun'), ('이', 'Josa'), ('좋', 'Adjective'), ('은감', 'Noun'), ('요', 'Josa'), ('좋아함요', 'Adjective')]
['파이썬', '은감']
['파이썬', '이', '좋', '은감', '요', '좋아함요']
2.3 Kkma 형태소 파서 (꼬꼬마 형태소 파서)
Kkma는 서울대에서 자연어 처리를 위해 만든 형태소 파서로 "꼬꼬마"라고 합니다.
같은 내용을 실행 했지만 처리 속도가 가장 느립니다. "18초"
from konlpy.tag import Kkma
kkma = Kkma()
text = "파이썬이 좋은감요 좋아함요"
#형태소와 품사를 추출
pos = kkma.pos(text)
print ( pos)
# 명사만 추출
pos = kkma.nouns(text)
print ( pos)
# 형태소만 추출
pos = kkma.morphs(text)
print ( pos)
[('파이', 'NNG'), ('썰', 'VV'), ('ㄴ', 'ETD'), ('이', 'MDT'), ('좋', 'VA'), ('은', 'ETD'), ('감', 'NNG'), ('요', 'JX'), ('좋아하', 'VV'), ('ㅁ', 'ETN'), ('요', 'JX')]
['파이', '감']
['파이', '썰', 'ㄴ', '이', '좋', '은', '감', '요', '좋아하', 'ㅁ', '요']
'BigData' 카테고리의 다른 글
[SQLite] sqlite create table example (0) | 2022.08.04 |
---|---|
(표준)개인식별정보 와 비식별 ISO/IEC 20889 privacy framework (0) | 2022.06.24 |
데이터 메시 (Data mesh) 원칙과 전략 정리 (0) | 2022.04.30 |
[꿀팁] 쉽게 설명하는 데이터베이스 설계 (1) (0) | 2021.04.12 |
(꿀팁) Mysql에서 JSON 저장과 조회하기 (0) | 2021.01.03 |
Graph DB 와 RDBMS 트랜드 3부- 그래프 데이터베이스의 종류와 활용 (0) | 2020.11.11 |
Graph DB 와 RDBMS 트랜드 2부- 그래프 데이터베이스의 개념 (0) | 2020.11.10 |