# PyKoSpacing
- 띄어쓰기가 되어있지 않은 문장을 띄어쓰기를 ㅎ나 문장으로 변호나해주는 패키지
- 성능 괜찮음
# Py-Hanspell
- 네이버 한글 맞춤법 검사기를 바탕으로 만들어진 패키지
- 띄어쓰기 또한 보장
# SOYNLP
- 품사 태깅, 단어 토큰화 등을 지원하는 단어 토크나이저
- 비지도 학습으로 단어 토큰화
- 데이터에 자주 등장하는 단어들을 단어로 분석
- 텍스트 데이터에서 특정 문자 시퀀스가 함께 자주 등장하는 빈도가 높고 앞뒤로 조사 또는 완전히 다른 단어가 등장하는 것을 고려해서 해당 문자 시퀀스를 형태소라고 판단하는 단어 토크나이저
- 내부적으로 응집 확률과 브랜칭 엔트로피를 활용한 단어 점수 표로 동작
- 응집 확률(cohesion probability)
- 내부 문자열이 얼마나 응집하여 자주 등장하는지 판단하는 척도
- 문자열을 문자 단위로 분리하여 내부 문자열을 만드는 과정에서 오니쪽부터 순서대로 문자를 추가하면서 각 문자열이 주어졌을때 다음 문자가 나올 확률을 계산하여 누적곱을 한 값
- 값이 높을수록 전체 코퍼스에서 해당 문자열 시퀀스는 하나의 단어로 등장할 확률 높음
- 브랜칭 엔트로피(branching entropy)
- 확률 분포의 엔트로피값
- 주어진 문자열에서 얼마나 다음 문자가 등장할 수 있는지 판단하는 척도
- 값은 하나의 완성된 단어에 가까워질수록 문ㅁ개으로 인해 점점 정확히 예측할 수 있게 되면서 점점 줄어듦
- 하나의 단어가 끝나면 그 경계 부분부터 다시 브랜칭 엔트로피 값이 증가하게 됨
- 조사나 다른 단어가 들어오는 다양한 경우가 있기때문
- 응집 확률(cohesion probability)
- SOYNLP를 이용하여 반복되는 문자 정제 가능
ex) ㅋㅋㅋㅋ,ㅋㅋ,ㅋㅋㅋ와 같은 경우를 모두 다른 단어로 처리하는 것은 불필요하므로 하나로 정규화시켜줌
# Customized KoNLPy
- 사용자 사전을 추가한 형태소 분석기
- Customized KoNLPy는 사용자 사전 추가가 쉬운 패키지를 사용
'딥러닝' 카테고리의 다른 글
[개념] Bag-of-Words, Naive Bayes Classifier (0) | 2023.02.09 |
---|---|
[개념] 딥러닝 학습 방법 이해하기 (0) | 2023.01.31 |
[개념] 어간 추출(Stemming) 및 표제어 추출(Lemmatization) (0) | 2023.01.22 |
[개념] 토큰화(Tokenization) (0) | 2023.01.20 |
[개념] 문서 단어 행렬(Document-Term Matrix, DTM) (0) | 2023.01.20 |