레플리
글 수 72

노가다 없는 텍스트 분석을 위한 한국어 NLP

조회 수 3902 추천 수 0 2018.04.26 15:54:50


Cohesion (Character n-gram)
• 단어의 점수(cohesion)를 아래처럼 구현해 봅니다
def cohesion(w):
return pow(count[w]/count[w[0]],
1/(len(w)-1...

 

https://www.slideshare.net/kimhyunjoonglovit/pycon2017-koreannlp

 

 

 

이전에 소개한 '한국어 채팅 데이터로 머신러닝하기'에서 사용된 cohesion tokenizer(결합 토크나이저)에 대해 자세히 설명한 슬라이드입니다. 토크나이저는 문장을 최소 의미 단위로 분리하는 역할을 합니다. 보통은 형태소분석기를 사용하는데 문제는 사전에 없는 단어가 있을 경우입니다.

 

강다니엘은 워너원의 멤버
-> 강+다니엘+은+워너+원+의+멤버

 

'강다니엘'과 '워너원'은 하나의 토큰으로 분리가 되어야 이후 자연어처리가 용이합니다. 이를 위해서는 사람이 일일이 새로운 단어를 형태소분석기의 사전에 추가해야합니다.

 

 

 

이런 노가다 작업을 cohesion 기법을 사용해서 자동으로 수행할 수 있다고 합니다. 텍스트로 구성된 코퍼스 데이터에서 통계적인 방법을 통해 단어를 구분하는 방법입니다.

 

워너원은 멋져
워너원의 멤버
워너원 좋아해
...

 

위의 문장에서 워너원+(은/의/좋) 처럼 '워너원'과 다음 글자가 나누어지는 것을 확률로 판단하는 것입니다. 정제된 문서가 아닌 일상 대화 위주의 문장이라면 이런 기법이 유용하게 사용될 것 같습니다.

 

 

 

아래 링크에서 소스 코드를 참조하실 수 있습니다.
-> https://github.com/lovit/soynlp

엮인글 :
List of Articles
제목 글쓴이 날짜 조회 수
파이썬과 커뮤니티와 한국어 오픈데이터 - KoNLPy의 탄생배경 깊은바다 2019-11-11 942
검색을 통해 지식그래프를 바로 생성하는 알고리즘 file 깊은바다 2019-08-02 3052
NLTK 개발자들이 직접 쓴 자연어처리 책의 공개 버전 깊은바다 2019-07-02 1259
WordPiece와 BPE(Byte Pair Encoding) 깊은바다 2019-06-17 4739
스마트 스피커에서의 음악 재생 발화 오류 교정 file 깊은바다 2019-03-28 407
한국어 MRC 연구를 위한 표준 데이터셋(KorQuAD) 소개 및 B2B를 위한 MRC 연구 사례 깊은바다 2019-03-10 967
메이템 가상비서 앱 자연어처리 모듈 개발 file [1] 깊은바다 2019-01-31 828
토론하는 인공지능 - IBM Project Debater file 깊은바다 2019-01-16 579
인공지능이 법률 문서를 검토한다면? 깊은바다 2019-01-09 795
TextRank 기법을 이용한 핵심 어구 추출 및 텍스트 요약 file 깊은바다 2018-12-28 3228
한국어 자연어처리 데이터셋 - KorQuAD 깊은바다 2018-12-21 4724
자연어 관련 데이터셋 사이트 - AI 오픈 이노베이션 허브 file 깊은바다 2018-12-03 1451
네이버 검색과 개인화 깊은바다 2018-11-20 619
NUGU Knowledge Base - 지식베이스 깊은바다 2018-11-10 1031
텍스트 분석을 자동으로 해주는 서비스 - KoALA 깊은바다 2018-10-31 2088