newChobo
[KD3 - 인공지능(AI) Ⅲ(NLP, 챗봇)]

[01] 토크나이징(Tokenizing)
   - 자연어는 수치 연산을 처리하는 컴퓨터는 이해 할 수 없음.
   - 문장을 이해 할 수 없음으로 최소 의미를 갖는 단어의 형태인 형태소로 분할해야하며 이렇게 분할된 단어를 토큰이라고함.
   - 토큰으로 분리하는 토크나이징은 언어의 문법을 알아야하며 이런 과정은 어렵기 때문에 각 언어를 지원하는 토크나이징 package를 이용함.
   - 한국어 토크나이징을 위해서 KoNLPy가 존재함.

 

kd_ml에 NLP 폴더(네추럴 랭귀지 ~~~)

 

~~~http://nulunggi.pe.kr/pds/read.jsp?pdsgrpno=520&pdsno=22846&grpno=&col=&word=&currentPage=0&visible=환경구축

 

tsv는 tab으로 구분된 파일

 

# 사용자 사전의 사용
from konlpy.tag import Komoran

# 형태소 분석기 객체 생성
komoran = Komoran(userdic='user_dic.tsv')
text = "슈룹 주문 하고싶어요"

morphs = komoran.morphs(text) # 형태소 추출
print('형태소 추출:', morphs)

# POS(Part-Of-Speech)
pos = komoran.pos(text)
print('형태소와 품사 태그 추출:', pos)

nouns = komoran.nouns(text)
print('명사만 추출:', nouns)

 

=>>

 

<code />
형태소 추출: ['슈룹', '주문', '하', '고', '싶', '어요'] 형태소와 품사 태그 추출: [('슈룹', 'NA'), ('주문', 'NNP'), ('하', 'VV'), ('고', 'EC'), ('싶', 'VX'), ('어요', 'EC')] 명사만 추출: ['주문']

 

===============

 

컴퓨터는 자연어를 숫자나 벡터(크기를 나타내는값, 방향성 ㅇ)로 변경해야 처리 가능해 자연어를 수치화

단순 배열:숫자->배열

벡터 배열 : 숫자->배열,문장->숫자->배열->긍정문장/부정문장->벡터

 

단어 100개면 벡터는 100차원? 출력도 100가지?

다중분류, 단어 많아지면 심한 메모리 낭비

 

 

 

 

 

뭔소리지?

 

 

profile

newChobo

@새로운뉴비

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!