본문 바로가기
FullStack/50. ML

[BOOK] 처음 배우는 딥러닝 챗봇 #1

by nakanara 2023. 1. 23.
반응형

처음 배우는 딥러닝 챗봇

조경래 지음
한빛미디어

  • 넘파이

넘파이(NumPy) 라이브러리는 C언어로 구현된, 빠른 배열 처리와 고성능 수치 계산을 지원, 주로 벡터 및 행렬 연산에 필요한 기능

  • 팬더스

팬더스(pandas)는 데이터 분석 및 처리를 위한 필수 라이브러리, 행과 열로 구성된 데이터 객체를 편리하게 관리할 수 있으며, 대용량 데이터 처리하는데 용이함

  • 맷플롯립

맷플롯립(matplotlib) 라이브러리는 데이터를 플롯이나 차트로 시각화할 수 있도록 도와주는 도구

토크나이징

문장을 토큰 단위로 정보를 나누는 작업을 토크나이징이라고 하며, 주로 텍스트 전처리 과정에서 사용, 토크나이징 과정에 따라 성능의 차이가 발생

  • KoNLPy(코엔엘파이)

기본적인 한국어 자연어 처리 파이썬 라이브러리, GPL v3

https://konlpy.org/ko/latest/

  • Kkma

Kkma는 서울대학교 IDS연구실에서 자연어 처리를 위해 개발 GPL v2
http://kkma.snu.ac.kr/documents/?doc=postag

  • Komoran

Komoran은 Shineware에서 자바로 개발한 한국어 형태소 분석기, Apache 라이선스 2.0
https://docs.komoran.kr/firststep/postypes.html

  • Okt
    Okt는 트위터에서 개발한 Twitter 한국어 처리기에서 파생된 오픈 소스 Apache 라이선스 2.0
    https://openkoreantext.org

 

  • 사용자 사전 구축

챗봇의 데이터 입력단은 인터넷 구어체와 관련이 있음, 일반적으로 챗봇 사용자들은 구어체나 문어체를 사용하지 않음,
기존의 많은 문장을 기반으로 학습하여 형태소 분석기 모델을 개발했기 때문에 새로운 형태의 단어와 문장은 인식률 저하의 원인

이를 해결하기 위해 새로운 단어를 추출해 적용하는 기술이 개발, Komoran이 다른 형태소 분석기에 비해 사전을 관리하는 방법이 편리

# 단어] Tab [품사]
엔엘피 Tab NNG
나는 내일, 어제의 너와 만난다 Tab NNG

# 주석
# 품사를 주지 않으면 NNP 고유명사로 인식

사용자 사전은 특수 파일에 작성

from konlpy.tag import Komoran

komoran = Komoran(userdic='./user_dic.tsv') // 사용자 정의 사전 
text = "우리 챗봇은 엔엘피를 좋아해."
pos = komoran.pos(text) // 품사 태그로 분석
print(pos)
반응형