분석시각화 대회 코드 공유 게시물은
내용 확인 후
좋아요(투표) 가능합니다.
Python 튜토리얼
Lv1 전처리 8/14 python 파이썬 형태소 분석기 - (2)
이번시간에는 형태소 분석기의 종류에 대해 알아보고 실습을 통해 어떤식으로 형태소를 분리해 주는지 차이점에 대해 알아보겠습니다. 형태소 분석기의 종류를 여러개 알아야 하는 이유는 각각의 텍스트마다 성능이 좋은 형태소 분석기는 다르기 때문입니다.👨🏫👨🏫
오늘 실습 할 형태소 분석기는 Okt, Komoran, Kkma 총 3개 입니다.
형태소 분석기를 이용해 형태소를 분석하는 방법은 다음과 같습니다.
순서에 맞게 실습을 진행해 보겠습니다.
-------------------------------------------------------------------------------------------------------------------------------------------------
# 라이브러리 설치
# Okt, Komoran, Kkma 은 모두 konlpy 라이브러리에서 불러올 수 있습니다.
!pip install konlpy
from konlpy.tag import Kkma, Komoran, Okt
# 형태소 분석기 정의
okt = Okt()
kkm = Kkma()
kom = Komoran()
#형태소를 분석할 텍스트 정의
text = '마음에 꽂힌 칼한자루 보다 마음에 꽂힌 꽃한송이가 더 아파서 잠이 오지 않는다'
# 형태소 분석기의 pos메소드를 이용해 형태소를 분석
kom.pos(text)
kkm.pos(text)
okt.pos(text,norm=True, stem=True)
[('마음', 'NNG'), ('에', 'JKB'), ('꽂히', 'VV'), ('ㄴ', 'ETM'), ('칼', 'NNG'), ('한자', 'NNP'),
('루', 'JKB'), ('보다', 'MAG'), ('마음', 'NNG'),('에', 'JKB'), ('꽂히', 'VV'), ('ㄴ', 'ETM'),
('꽃', 'NNG'), ('한송이', 'NNP'), ('가', 'JKS'), ('더', 'MAG'), ('아파서', 'NNP'), ('잠', 'NNG'),
('이', 'JKS'), ('오', 'VV'), ('지', 'EC'), ('않', 'VX'), ('는다', 'EC')]
[('마음', 'NNG'), ('에', 'JKM'), ('꽂히', 'VV'), ('ㄴ', 'ETD'), ('칼', 'NNG'), ('한자', 'NNG'), ('로', 'JKM'), ('보다', 'MAG'), ('마음', 'NNG'), ('에', 'JKM'), ('꽂히', 'VV'), ('ㄴ', 'ETD'), ('꽃', 'NNG'), ('한', 'MDN'), ('송이', 'NNG'), ('가', 'JKS'), ('더', 'MAG'), ('아프', 'VA'), ('아서', 'ECD'), ('잠', 'NNG'), ('이', 'JKS'), ('오', 'VV'), ('지', 'ECD'), ('않', 'VXV'), ('는', 'EPT'), ('다', 'EFN')]
[('마음', 'Noun'), ('에', 'Josa'), ('꽂히다', 'Verb'), ('칼', 'Noun'), ('한', 'Determiner'), ('자루', 'Noun'), ('보다', 'Verb'), ('마음', 'Noun'), ('에', 'Josa'), ('꽂히다', 'Verb'), ('꽃', 'Noun'),
('한송이', 'Noun'), ('가', 'Josa'), ('더', 'Noun'), ('아프다', 'Adjective'), ('잠', 'Noun'),
('이', 'Josa'), ('오지', 'Noun'), ('않다', 'Verb')]
-------------------------------------------------------------------------------------------------------------------------------------------------
분석 결과를 보았을 때, Kkma와 Komoran이 okt 보다 더 구체적으로 형태소에 따라 단어를 쪼개는 것을 알 수 있습니다.
또한 Okt는 stem=True, norm = True의 파라미터가 존재해서, 단어들을 알아서 정규화 해주고, 오타도 수정해주는 기능을 가지고 있습니다. 위예시에서 꽂힌 을 꽂히다 로 아파서 를 아프다 로 바꿨습니다.
이 처럼 여러개의 형태소 분석기를 사용해보고 본인의 데이터에 맞는 알맞는 형태소 분석기를 선정하시기 바랍니다.
다음 시간에는 청와대 청원 데이터를 형태소 분석 해보도록 하겠습니다.
감사합니다.
↩️ 오늘의 파이썬 리스트
#데이콘_101 #AI #머신러닝 #딥러닝 #파이썬 #파이선 #데이터분석 #데이터사이언티스트 #코랩 #Python #colab #kaggle #pandas #numpy #sckit-learn #konlpy #형태소분석기 #okt #kkma #komoran
✅
✅
✅
done
✅
✅
done
✅
✅
✅
데이콘(주) | 대표 김국진 | 699-81-01021
통신판매업 신고번호: 제 2021-서울영등포-1704호
서울특별시 영등포구 은행로 3 익스콘벤처타워 901호
이메일 dacon@dacon.io | 전화번호: 070-4102-0545
Copyright ⓒ DACON Inc. All rights reserved
✅