Patrick's 데이터 세상

Okt 사용자 사전 추가 본문

Deep Learning/개발 관련

Okt 사용자 사전 추가

patrick610 2022. 12. 1. 13:05
반응형
SMALL

 

 

 

import konlpy
konlpy.data.path

 

먼저 konlpy.data.path를 통해 자신의 pc에 konlpy가 설치된 경로를 찾는다.

나 같은 경우에는 m1 mac으로 '/Users/seonghwanpark/.pyenv/versions/3.8.15/envs/shpark/lib/python3.8/site-packages/konlpy/java'에 설치되었다.

 

 

 

import os

os.chdir('/Users/seonghwanpark/.pyenv/versions/3.8.15/envs/shpark/lib/python3.8/site-packages/konlpy/java')
os.getcwd() 


!jar xvf open-korean-text-2.1.0.jar

먼저 konlpy/java에 open-korean-text-2.1.0.jar 형태로 등록이 되어있는데 이걸 pip에서 설치 시 참조하는 것 같다.

이 jar파일을 풀어준다.

 

 

 

with open(f"/Users/seonghwanpark/.pyenv/versions/3.8.15/envs/shpark/lib/python3.8/site-packages/konlpy/java/org/openkoreantext/processor/util/noun/names.txt") as f:
    data = f.read()
    
print(data[:50])

name.txt 파일을 열어보면 기존에 정의된 사용자 사전을 볼 수 있다.

 

 

data += '순댓국\n순대국\n아이오아이\n패스트파이브\n'

새롭게 정의할 사용자 사전을 추가하고

 

 

 

with open("/Users/seonghwanpark/.pyenv/versions/3.8.15/envs/shpark/lib/python3.8/site-packages/konlpy/java/org/openkoreantext/processor/util/noun/names.txt", 'w') as f:
    f.write(data)
    
!jar cvf open-korean-text-2.1.0.jar org

수정된 name.txt를 다시 저장 후 jar를 압축한다.

 

 

 

from konlpy.tag import Okt

jvm_path = "/Library/Java/JavaVirtualMachines/zulu-15.jdk/Contents/Home/bin/java"
okt = Okt(jvmpath=jvm_path)
print(okt.pos("순대국 먹고 싶다."))
print(okt.pos("순댓국 먹고 싶다."))
print(okt.pos("패스트파이브에서 일을 합니다."))
print(okt.pos("아이오아이는 정말 이뻐요."))

konlpy를 다시 import 하여 사용하면 잘되는 걸 볼 수 있다!

 

 

 

반응형
LIST
Comments