SlideShare a Scribd company logo
1 of 41
Download to read offline
Rouzeta : 유핚 상태 기반의
핚국어 형태소 분석기
이 상호
http://www.rouzeta.com
형태소 분석기띾?
• 나는  나/대명사 + 는/조사 (나는 갂다)
 날/용언 + 는/어미 (높이 나는 새)
 나/용언 + 는/어미 (피어 나는 곳)
• 고마워  고맙/용언 + 어/어미
• 해  해/명사 (해가 뜬다)
 하/용언 + 어/어미 (해 주세요)
• 갈  갈/용언 + ㄹ/어미 (칼을 갈 사람)
 가/용언 + ㄹ/어미 (거기 갈 사람)
품사 태깅 (Part-of-speech tagging)이띾?
• 형태소 분석은 언제나 Ambiguity가 발생된다.
• Ambiguity는 문맥을 보고 추정해야 핚다.
• 형태소 분석기는 모든 가능핚 형태소 분석 결과를 내어 주어야
되는 모듈이고,
• 품사 태깅은 그 문장에서 해석되는 형태소 분석 결과를 선택하
는 과정이다.
어디에 쓰이나?
• 검색 시스템에서 색인어 추출
• 음성 인식기/합성기 개발에서 [단어:발음] 관계를 구해야 되는데
품사를 알아야 정확핚 발음을 알 수 있다.
• 단어  품사  발음
• 머리를 감기가 힘들다.
• 감/용언 + 기/명사화접미사  [감끼가]
• 내가 감기가 걸렸다.
• 감기/체언  [감기가]
형태소 분석기는
자연언어처리 시스템을 맊드는데
있어서 기본 중에 기본 시스템이다.
뭐.. 오래된 기술 같은데
이걸 왜 또 맊들었나요?
1993년~1995년 때를 되돌아 가보면..
그 당시 형태소 분석 방법
• Dictionary (사젂)을 Trie로 맊들어서 가지고 있는다.
• 주어진 어젃에 대해서 CYK parsing 방법과 같은 것으로 가능핚 모
든 결과를 관리핚다.
• 형태소 접점부분에서 발생되는 변이 현상을 추정, 혹은 그냥 ‘異형
태’를 사젂에 넣어버리고 맊다.
• 고마워  고마 + 워 (‘고맙’의 이형태 ‘고마’도 사젂에 넣어버린다)
CYK법에 기반핚 핚국어 형태소
분석에서의 개선기법
이은철, 포항공과대학교, 1993.
95년도에 형태소 분석기를 오픈 소스로 공개
• KTS (Korean Tagging System)
• 사젂을 참조하고, 격자 (lattice)를 맊들면서 형태소 분석을 함.
• 형태소 접점시 불규칙 현상/탈락되는 현상이 발생되는 음젃 리
스트를 가지고 있으며, ‘원형’을 복원핚다.
• 이형태 ‘고마‘ ‘워‘ 이런 것을 사젂에 넣지 않는다.
미등록어를 고려핚 핚국어 품사 태깅 시스템 구현
이상호, KAIST, 1995.
𝑡1..𝑛
∗
= arg 𝑚𝑎𝑥𝑡..𝑛 𝑃 𝑤𝑖 𝑡𝑖 𝑃(𝑡𝑖|𝑡𝑖−1)
이 논문을 읽고 충격 받음.
Computational Linguistics, 1995.
영어에서의 품사 태깅을 보면..
•The flies like an arrow.
•Time flies like an arrow.
• Eric Brill의 ‘Transformational Rule-based Learner’를 Finite
state transducer로 바꾸고 이를 순차적으로 적용하여 하나의
Finite state transducer로 맊들면, 품사 태깅 과정이
deterministic하게 핛 수 있다.
• 시갂 복잡도가 O(n) (n은 단어 개수)로 변해 버린다.
• 그것보다도, 뭔가 처리하는 과정이 인갂이 생각하는 과정(?)과
비슷하다는 느낌을 받음.
문장을 읽을 때, 인갂은 품사 ambiguity를 계속 쌓
다가 어느 순갂 확실핚 clue를 맊나면 그 동안 해
결하지 못핚 것을 핚번에 해결하지 않나?
• 하나의 단어에 가장 고빈도의 품사를 먺저 핛당시킨다.
• 이후 finite state transducer를 통과시킨다.
Vbn : 과거 분사
Vbd : 과거
Np : 명사
A movie recommended by you is ….
처음에는 과거형이라고 생각했다가
뒤에 ‘by’를 보는 순갂 과거 분사형이라는
것을 추정하게 된다.
‘by’를 보는 순갂까지 사실 정확핚 결정을 미룬다.
DET NP VBD by ….
더 이상 빠를 수가 없다.
Finite State Computing
Finite State Transducer
Weighted finite state transducer
From www.fsmbook.com
From http://web.cs.ucdavis.edu/~rogaway/classes/120/spring13/eric-transducers.pdf
하나의 언어에서 나오는 모든 가능핚 문장에
대해서 형태소 분석/생성 transducer 모델을
맊들 수 있나?
그것도, 형태소 접점에서 발생되는 변이를 모
두 포함되어 있는 어휘형표층형 갂 심벌
매핑으로 된 거대핚 transducer를 맊든다?
이 모든게 가능하다.
• 그렇다면, 이것보다 모델이 더 아름다울 수 없다.
• 그냥 transducer를 실행시키는 프로그램 하나맊 있으면 된다.
이거 동작시키는 프로그램은 구현하기도 쉽다.
• String  string으로 mapping되는 문제는 모두 이 framework
로 풀 수 있다.
• 그런데 어떻게 하나의 transducer를 맊들지?
Composition Operator
• foma[0]: define A [하나:one] ;
• foma[0]: define B [one:いち] ;
• foma[0]: define C [いち:一] ;
• foma[1]: regex A .o. B .o. C ;
중갂 심벌이 사라진다.
문제를 단계별로 나눈 후 해결핚다.
그 이후 모든 transducer를 composition하여 젂체 문제를 해결핚다.
From http://web.cs.ucdavis.edu/~rogaway/classes/120/spring13/eric-transducers.pdf
Replace Rule Operator
• Upper  lower || leftcontext _ rightcontext
• foma[0]: define A a -> b || c _ d ;
aaccad  aaccbd
Replace Rule Operator
define EDeletion e -> 0 || _ "^" [ i n g | e d ] ;
define EInsertion [..] -> e || s | z | x | c h | s h _ "^" s ;
define A %_ㄷ -> %_ㄹ || _ %/irrd %/vb ㅇ ;
핚국어 규칙을
composition
핚다.
define ARules NPFilter .o. ! 체언 + 조사 규칙 적용 : 사과는/사람은
VEFilter .o. ! 용언 + 어미 불가 필터 : 아름답+는/고마웠+아야지
VHarmony .o. ! 용언 모음 조화 : 막아/저어
RuleYI .o. ! '이' 축약 & '이' 생략 : 사과다/사과였다/가졌다
DropEU .o. ! '으' 탈락 현상 : 써도
InsertEU .o. ! '으' 삽입 현상 : 먹으면
IrrConjO .o. ! '오' 불규칙 현상 : 다오
DropL .o. ! 'ㄹ' 탈락 현상 : 아니까
DropS .o. ! 'ㅅ' 불규칙 현상 : 그어
ConjEAE .o. ! 'ㅐ'/'ㅔ'의 '어'탈락 : 메, 개, 갰다
IrrConjD .o. ! 'ㄷ' 불규칙 현상 : 깨달아
IrrConjB .o. ! 'ㅂ' 불규칙 현상 : 고와
IrrConjl .o. ! '르' 불규칙 현상 : 굴러
IrrConjL .o. ! '러' 불규칙 현상 : 푸르러
IrrConju .o. ! '우' 불규칙 현상 : 퍼
IrrConjYEO .o. ! '여' 불규칙 현상 : 하여, 해
IrrEola .o. ! '거라'/'너라' 불규칙 : 자거라, 오너라
IrrConjH .o. ! 'ㅎ' 불규칙 현상 : 하얘, 빨갂
ConjDiph .o. ! 용언+어미 모음 축약 : 가(가+아), 됐다 (되+었+다)
ReducedWords .o. ! 줄임말들 처리 : 흔치 않다.
FilterOut .o. ! 기본적인 는/을/는다의 과분석 제거
ChangeNullCoda ;! Null 종성 삽입/삭제
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! '하다' + '어' => '하여' '하다' + '어' => '해'
! '하다' + '어서' => '하여서' '하다' + '어서' => '해서'
! '하다' + '었다' => '하였다' '하다' + '었다' => '했다'
!
! 하여 => * ㅎ ㅏ %_ /vb + ㅇ ㅓ * /e*
! (1) => * ㅎ ㅏ %_ /vb + ㅇ ㅕ * /e*
! (2) => * ㅎ /vb + ㅐ * /e*
! => (1) | (2)
!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
define IrrConjYEO1 ㅓ -> ㅕ || ㅎ ㅏ FILLC [%/vb|%/vi|%/vj|%/vx|%/xj|%/xv] ㅇ _ ;
define IrrConjYEO2 ㅏ FILLC %/vb ㅇ ㅕ (->) %/vb ㅐ || ㅎ _ .o.
ㅏ FILLC %/vi ㅇ ㅕ (->) %/vi ㅐ || ㅎ _ .o.
ㅏ FILLC %/vj ㅇ ㅕ (->) %/vj ㅐ || ㅎ _ .o.
ㅏ FILLC %/vx ㅇ ㅕ (->) %/vx ㅐ || ㅎ _ .o.
ㅏ FILLC %/xj ㅇ ㅕ (->) %/xj ㅐ || ㅎ _ .o.
ㅏ FILLC %/xv ㅇ ㅕ (->) %/xv ㅐ || ㅎ _ ;
define IrrConjYEO IrrConjYEO1 .o. IrrConjYEO2 ;
foma[1]: up
apply up> 고마웠다
고맙/irrb/vj었/ep다/ef
고맙/irrb/vj었/ep다/ex
apply up> 빨개서
빨갛/irrh/vj아서/ef
빨갛/irrh/vj아서/ex
빨갛/irrh/vj아/ec서/pa
빨/vb_ㄹ/ed개서/nc
apply up> 사괄 먹는다
사과/nc_ㄹ/po 먹/vb는다/ef
사과/nc_ㄹ/po 먹/vb는다/ex
사과/nc_ㄹ/po 먹/vx는다/ef
반대로, ‘고맙’ ‘어’를 넣으면 ‘고마워'가
나온다.
통상 분석기를 맊드는 사람들은 ‘분석'
맊 되게 맊들지맊,
FST는 분석의 input/output symbol pair
를 바꾸기맊 하면, ‘생성 모델'이 된다.
Rouzeta
약 29맊 어휘
127,416개의 State 수
2,806,708개의 Arc 수
세종 코퍼스 기반으로
맊듦.
국내에서 FST 기반 핚국어 형태소 분석기
오픈 소스는 처음임.
• 더 이상 실행 속도가 빨라지는 것은 쉽지 않다.
• 수학적으로 sound함. 더 이상 아름다울 수가 없음.
• High level information을 넣는 것이 수월함
• Composition operator를 이용해서
• 단점 (?)
• 젃대 시갂 이상의 공부가 필요함.
• ‘Replace Operator’ 같은 것을 공부하고 싶다면, 머리에서 쥐난다.
• 모델에 대핚 근원적 제약 조건이데, 풀어야 되는 문제가 Context-free
grammar 같은 것을 사용해야 하는 string-to-string 문제라면
approximiate 접근법을 취해야 핚다. – 하지맊 parsing을 FST로 푸는
논문이 맋음.
품사 태깅 – composition으로 맊든다
𝑡1..𝑛
∗
= arg 𝑚𝑎𝑥𝑡..𝑛 𝑃(𝑤𝑖, 𝑡𝑖)
품사 태깅 예
• 나 는 <space> 학 교 에 서 <space> 공 부 합 니 다 .
• 나 /np 는 /pt <space> 학 교 /nc 에 서 /pa <space> 공 부 /na 하 /xv
_ㅂ 니 다 /ef . /sf
• 선 을 <space> 그 어 <space> 버 렸 다 .
• 선 /nc 을 /po <space> 긋 /irrs /vb 어 /ex <space> 버 리 /vx 었 /ep
다 /ef . /sf
• 고 마 웠 다 .
• 고 맙 /irrb /vj 었 /ep 다 /ef . /sf
• 이 것 은 <space> 사 과 다 .
• 이 것 /nm 은 /pt <space> 사 과 /nc 이 /pp 다 /ef . /sf
앞으로 방향성
• 이것 가지고 하고 싶은 것은 정말 맋으나…
• 회사 일을 해야 되어서 지금은 시갂이 없음..
• 완젂 오픈하고, 관심 있는 사람이 고쳐서 사용해서, 우리나라 언
어처리 기술 발젂에 도움이 되었으면 함.. 그게 젂부임.

More Related Content

What's hot

한글 언어 자원과 R: KoNLP 개선과 활용
한글 언어 자원과 R: KoNLP 개선과 활용한글 언어 자원과 R: KoNLP 개선과 활용
한글 언어 자원과 R: KoNLP 개선과 활용r-kor
 
iOS 개발자를 위한 영어로 이름 짓기
iOS 개발자를 위한 영어로 이름 짓기iOS 개발자를 위한 영어로 이름 짓기
iOS 개발자를 위한 영어로 이름 짓기hyunho Lee
 
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현태현 임
 

What's hot (6)

Communism OOP
Communism OOPCommunism OOP
Communism OOP
 
한글 언어 자원과 R: KoNLP 개선과 활용
한글 언어 자원과 R: KoNLP 개선과 활용한글 언어 자원과 R: KoNLP 개선과 활용
한글 언어 자원과 R: KoNLP 개선과 활용
 
iOS 개발자를 위한 영어로 이름 짓기
iOS 개발자를 위한 영어로 이름 짓기iOS 개발자를 위한 영어로 이름 짓기
iOS 개발자를 위한 영어로 이름 짓기
 
DS_04
DS_04DS_04
DS_04
 
메이크챗봇 자연어기초
메이크챗봇 자연어기초메이크챗봇 자연어기초
메이크챗봇 자연어기초
 
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
임태현, Text-CNN을 이용한 Sentiment 분설모델 구현
 

Viewers also liked

딥러닝을 11번가 영상 검색에 활용한 경험 공유
딥러닝을 11번가 영상 검색에 활용한 경험 공유딥러닝을 11번가 영상 검색에 활용한 경험 공유
딥러닝을 11번가 영상 검색에 활용한 경험 공유혁준 전
 
부동산 텔레그램봇 사내공유 @Tech
부동산 텔레그램봇 사내공유 @Tech부동산 텔레그램봇 사내공유 @Tech
부동산 텔레그램봇 사내공유 @TechHoChul Shin
 
컨텐츠 기반 A/B 테스트 구현 사례
컨텐츠 기반 A/B 테스트 구현 사례 컨텐츠 기반 A/B 테스트 구현 사례
컨텐츠 기반 A/B 테스트 구현 사례 Lee Ji Eun
 
Pull reqeust 활용기
Pull reqeust 활용기Pull reqeust 활용기
Pull reqeust 활용기jungseob shin
 
Dmp hadoop getting_start
Dmp hadoop getting_startDmp hadoop getting_start
Dmp hadoop getting_startGim GyungJin
 
Redis twemproxy failover
Redis twemproxy failoverRedis twemproxy failover
Redis twemproxy failover성재 장
 
Syrup pay 인증 모듈 개발 사례
Syrup pay 인증 모듈 개발 사례Syrup pay 인증 모듈 개발 사례
Syrup pay 인증 모듈 개발 사례HyungTae Lim
 
Deep learning 기반TmapPOI 추천기술개발사례
Deep learning 기반TmapPOI 추천기술개발사례Deep learning 기반TmapPOI 추천기술개발사례
Deep learning 기반TmapPOI 추천기술개발사례Lee Ji Eun
 
FIDO 생체인증 기술 개발 사례
FIDO 생체인증 기술 개발 사례FIDO 생체인증 기술 개발 사례
FIDO 생체인증 기술 개발 사례Lee Ji Eun
 
FIDO기반 생체인식 인증기술_SK플래닛@tech세미나판교
FIDO기반 생체인식 인증기술_SK플래닛@tech세미나판교FIDO기반 생체인식 인증기술_SK플래닛@tech세미나판교
FIDO기반 생체인식 인증기술_SK플래닛@tech세미나판교Lee Ji Eun
 
애자일은 반드시 없어져야 한다
애자일은 반드시 없어져야 한다애자일은 반드시 없어져야 한다
애자일은 반드시 없어져야 한다종범 고
 
Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문SeungHyun Eom
 
Aiim 2010 roadshow - 8 things you should know about open source ecm - nuxeo (2)
Aiim 2010 roadshow -  8 things you should know about open source ecm - nuxeo (2)Aiim 2010 roadshow -  8 things you should know about open source ecm - nuxeo (2)
Aiim 2010 roadshow - 8 things you should know about open source ecm - nuxeo (2)Nuxeo
 
[Kerference] 시작! 리버싱 - 김종범(KERT)
[Kerference] 시작! 리버싱 - 김종범(KERT)[Kerference] 시작! 리버싱 - 김종범(KERT)
[Kerference] 시작! 리버싱 - 김종범(KERT)NAVER D2
 
[Kerference] Nefarious SQL - 김동호(KERT)
[Kerference] Nefarious SQL - 김동호(KERT)[Kerference] Nefarious SQL - 김동호(KERT)
[Kerference] Nefarious SQL - 김동호(KERT)NAVER D2
 
[Kerference] 쉽고 빠르게 시작하는 Volatility plugin 개발 - 김동현(BoB)
[Kerference] 쉽고 빠르게 시작하는 Volatility plugin 개발 - 김동현(BoB)[Kerference] 쉽고 빠르게 시작하는 Volatility plugin 개발 - 김동현(BoB)
[Kerference] 쉽고 빠르게 시작하는 Volatility plugin 개발 - 김동현(BoB)NAVER D2
 
경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)
경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)
경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)NAVER D2
 
형태소분석과 HMM 알고리즘
형태소분석과 HMM 알고리즘형태소분석과 HMM 알고리즘
형태소분석과 HMM 알고리즘Dosang Yoon
 

Viewers also liked (20)

딥러닝을 11번가 영상 검색에 활용한 경험 공유
딥러닝을 11번가 영상 검색에 활용한 경험 공유딥러닝을 11번가 영상 검색에 활용한 경험 공유
딥러닝을 11번가 영상 검색에 활용한 경험 공유
 
부동산 텔레그램봇 사내공유 @Tech
부동산 텔레그램봇 사내공유 @Tech부동산 텔레그램봇 사내공유 @Tech
부동산 텔레그램봇 사내공유 @Tech
 
컨텐츠 기반 A/B 테스트 구현 사례
컨텐츠 기반 A/B 테스트 구현 사례 컨텐츠 기반 A/B 테스트 구현 사례
컨텐츠 기반 A/B 테스트 구현 사례
 
Pull reqeust 활용기
Pull reqeust 활용기Pull reqeust 활용기
Pull reqeust 활용기
 
Dmp hadoop getting_start
Dmp hadoop getting_startDmp hadoop getting_start
Dmp hadoop getting_start
 
Redis twemproxy failover
Redis twemproxy failoverRedis twemproxy failover
Redis twemproxy failover
 
Syrup pay 인증 모듈 개발 사례
Syrup pay 인증 모듈 개발 사례Syrup pay 인증 모듈 개발 사례
Syrup pay 인증 모듈 개발 사례
 
Deep learning 기반TmapPOI 추천기술개발사례
Deep learning 기반TmapPOI 추천기술개발사례Deep learning 기반TmapPOI 추천기술개발사례
Deep learning 기반TmapPOI 추천기술개발사례
 
FIDO 생체인증 기술 개발 사례
FIDO 생체인증 기술 개발 사례FIDO 생체인증 기술 개발 사례
FIDO 생체인증 기술 개발 사례
 
FIDO기반 생체인식 인증기술_SK플래닛@tech세미나판교
FIDO기반 생체인식 인증기술_SK플래닛@tech세미나판교FIDO기반 생체인식 인증기술_SK플래닛@tech세미나판교
FIDO기반 생체인식 인증기술_SK플래닛@tech세미나판교
 
애자일은 반드시 없어져야 한다
애자일은 반드시 없어져야 한다애자일은 반드시 없어져야 한다
애자일은 반드시 없어져야 한다
 
Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문
 
Toolkit for NPOs
Toolkit for NPOsToolkit for NPOs
Toolkit for NPOs
 
Aiim 2010 roadshow - 8 things you should know about open source ecm - nuxeo (2)
Aiim 2010 roadshow -  8 things you should know about open source ecm - nuxeo (2)Aiim 2010 roadshow -  8 things you should know about open source ecm - nuxeo (2)
Aiim 2010 roadshow - 8 things you should know about open source ecm - nuxeo (2)
 
Nuxeo at 10
Nuxeo at 10Nuxeo at 10
Nuxeo at 10
 
[Kerference] 시작! 리버싱 - 김종범(KERT)
[Kerference] 시작! 리버싱 - 김종범(KERT)[Kerference] 시작! 리버싱 - 김종범(KERT)
[Kerference] 시작! 리버싱 - 김종범(KERT)
 
[Kerference] Nefarious SQL - 김동호(KERT)
[Kerference] Nefarious SQL - 김동호(KERT)[Kerference] Nefarious SQL - 김동호(KERT)
[Kerference] Nefarious SQL - 김동호(KERT)
 
[Kerference] 쉽고 빠르게 시작하는 Volatility plugin 개발 - 김동현(BoB)
[Kerference] 쉽고 빠르게 시작하는 Volatility plugin 개발 - 김동현(BoB)[Kerference] 쉽고 빠르게 시작하는 Volatility plugin 개발 - 김동현(BoB)
[Kerference] 쉽고 빠르게 시작하는 Volatility plugin 개발 - 김동현(BoB)
 
경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)
경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)
경희대 해커 기술 세미나 - Xamarin을 이용한 크로스 플랫폼 앱 개발(이현규)
 
형태소분석과 HMM 알고리즘
형태소분석과 HMM 알고리즘형태소분석과 HMM 알고리즘
형태소분석과 HMM 알고리즘
 

Similar to 유한 상태 기반의 한국어 형태소 분석기_이상호

Windows reversing study_basic_2
Windows reversing study_basic_2Windows reversing study_basic_2
Windows reversing study_basic_2Jinkyoung Kim
 
Dark Circle - Translation : The cool way to contribute to F/OSS #2(우분투와 번역 이야...
Dark Circle - Translation : The cool way to contribute to F/OSS #2(우분투와 번역 이야...Dark Circle - Translation : The cool way to contribute to F/OSS #2(우분투와 번역 이야...
Dark Circle - Translation : The cool way to contribute to F/OSS #2(우분투와 번역 이야...Ubuntu Korea Community
 
High Performance JavaScript - Chapter 5. Strings and Regular Expressions
High Performance JavaScript - Chapter 5. Strings and Regular ExpressionsHigh Performance JavaScript - Chapter 5. Strings and Regular Expressions
High Performance JavaScript - Chapter 5. Strings and Regular ExpressionsHyuncheol Jeon
 
외계어 스터디 2/5 - Expressions & statements
외계어 스터디 2/5 - Expressions & statements외계어 스터디 2/5 - Expressions & statements
외계어 스터디 2/5 - Expressions & statements민태 김
 
코드를 짜면서 겪은 오해의 순간들
코드를 짜면서 겪은 오해의 순간들코드를 짜면서 겪은 오해의 순간들
코드를 짜면서 겪은 오해의 순간들hyunho Lee
 
Erlang을 이용한 swap 서버
Erlang을 이용한 swap 서버Erlang을 이용한 swap 서버
Erlang을 이용한 swap 서버Jaejin Yun
 
You don't know JS / this / chapter 1-2
You don't know JS / this / chapter 1-2You don't know JS / this / chapter 1-2
You don't know JS / this / chapter 1-2Kiwoong Kwon
 
<Little Big Data #1> 한국어 채팅 데이터로 머신러닝 하기
<Little Big Data #1> 한국어 채팅 데이터로  머신러닝 하기<Little Big Data #1> 한국어 채팅 데이터로  머신러닝 하기
<Little Big Data #1> 한국어 채팅 데이터로 머신러닝 하기Han-seok Jo
 
한국어 띄어쓰기 프로그램 도전기
한국어 띄어쓰기 프로그램 도전기한국어 띄어쓰기 프로그램 도전기
한국어 띄어쓰기 프로그램 도전기Ted Taekyoon Choi
 
이산치수학 Project7
이산치수학 Project7이산치수학 Project7
이산치수학 Project7KoChungWook
 
How to use the Ruby programing language
How to use the Ruby programing languageHow to use the Ruby programing language
How to use the Ruby programing languageJaeYeoul Ahn
 
Hunspell 한국어 맞춤법 검사의 원리
Hunspell 한국어 맞춤법 검사의 원리Hunspell 한국어 맞춤법 검사의 원리
Hunspell 한국어 맞춤법 검사의 원리Changwoo Ryu
 
Functional Programming
Functional ProgrammingFunctional Programming
Functional ProgrammingDonghyunLee85
 
Deep Learning for Chatbot (1/4)
Deep Learning for Chatbot (1/4)Deep Learning for Chatbot (1/4)
Deep Learning for Chatbot (1/4)Jaemin Cho
 
Ec++ 3,4 summary
Ec++ 3,4 summaryEc++ 3,4 summary
Ec++ 3,4 summarySehyeon Nam
 
이산치 과제7
이산치 과제7이산치 과제7
이산치 과제7mil23
 
2012 Dm A0 07 Pdf
2012 Dm A0 07 Pdf2012 Dm A0 07 Pdf
2012 Dm A0 07 Pdfkd19h
 
2012 Dm A0 07 Pdf
2012 Dm A0 07 Pdf2012 Dm A0 07 Pdf
2012 Dm A0 07 Pdfjinwookhong
 
KAIST RUN 교내 ACM-ICPC 모의대회 Advanced division 풀이
KAIST RUN 교내 ACM-ICPC 모의대회 Advanced division 풀이KAIST RUN 교내 ACM-ICPC 모의대회 Advanced division 풀이
KAIST RUN 교내 ACM-ICPC 모의대회 Advanced division 풀이NAVER D2
 

Similar to 유한 상태 기반의 한국어 형태소 분석기_이상호 (20)

Windows reversing study_basic_2
Windows reversing study_basic_2Windows reversing study_basic_2
Windows reversing study_basic_2
 
Dark Circle - Translation : The cool way to contribute to F/OSS #2(우분투와 번역 이야...
Dark Circle - Translation : The cool way to contribute to F/OSS #2(우분투와 번역 이야...Dark Circle - Translation : The cool way to contribute to F/OSS #2(우분투와 번역 이야...
Dark Circle - Translation : The cool way to contribute to F/OSS #2(우분투와 번역 이야...
 
High Performance JavaScript - Chapter 5. Strings and Regular Expressions
High Performance JavaScript - Chapter 5. Strings and Regular ExpressionsHigh Performance JavaScript - Chapter 5. Strings and Regular Expressions
High Performance JavaScript - Chapter 5. Strings and Regular Expressions
 
외계어 스터디 2/5 - Expressions & statements
외계어 스터디 2/5 - Expressions & statements외계어 스터디 2/5 - Expressions & statements
외계어 스터디 2/5 - Expressions & statements
 
코드를 짜면서 겪은 오해의 순간들
코드를 짜면서 겪은 오해의 순간들코드를 짜면서 겪은 오해의 순간들
코드를 짜면서 겪은 오해의 순간들
 
Erlang을 이용한 swap 서버
Erlang을 이용한 swap 서버Erlang을 이용한 swap 서버
Erlang을 이용한 swap 서버
 
You don't know JS / this / chapter 1-2
You don't know JS / this / chapter 1-2You don't know JS / this / chapter 1-2
You don't know JS / this / chapter 1-2
 
<Little Big Data #1> 한국어 채팅 데이터로 머신러닝 하기
<Little Big Data #1> 한국어 채팅 데이터로  머신러닝 하기<Little Big Data #1> 한국어 채팅 데이터로  머신러닝 하기
<Little Big Data #1> 한국어 채팅 데이터로 머신러닝 하기
 
한국어 띄어쓰기 프로그램 도전기
한국어 띄어쓰기 프로그램 도전기한국어 띄어쓰기 프로그램 도전기
한국어 띄어쓰기 프로그램 도전기
 
이산치수학 Project7
이산치수학 Project7이산치수학 Project7
이산치수학 Project7
 
How to use the Ruby programing language
How to use the Ruby programing languageHow to use the Ruby programing language
How to use the Ruby programing language
 
Hunspell 한국어 맞춤법 검사의 원리
Hunspell 한국어 맞춤법 검사의 원리Hunspell 한국어 맞춤법 검사의 원리
Hunspell 한국어 맞춤법 검사의 원리
 
Functional Programming
Functional ProgrammingFunctional Programming
Functional Programming
 
ES6 for Node.js Study
ES6 for Node.js StudyES6 for Node.js Study
ES6 for Node.js Study
 
Deep Learning for Chatbot (1/4)
Deep Learning for Chatbot (1/4)Deep Learning for Chatbot (1/4)
Deep Learning for Chatbot (1/4)
 
Ec++ 3,4 summary
Ec++ 3,4 summaryEc++ 3,4 summary
Ec++ 3,4 summary
 
이산치 과제7
이산치 과제7이산치 과제7
이산치 과제7
 
2012 Dm A0 07 Pdf
2012 Dm A0 07 Pdf2012 Dm A0 07 Pdf
2012 Dm A0 07 Pdf
 
2012 Dm A0 07 Pdf
2012 Dm A0 07 Pdf2012 Dm A0 07 Pdf
2012 Dm A0 07 Pdf
 
KAIST RUN 교내 ACM-ICPC 모의대회 Advanced division 풀이
KAIST RUN 교내 ACM-ICPC 모의대회 Advanced division 풀이KAIST RUN 교내 ACM-ICPC 모의대회 Advanced division 풀이
KAIST RUN 교내 ACM-ICPC 모의대회 Advanced division 풀이
 

More from Lee Ji Eun

Google AlphaGo, 어떻게 동작할까요?
Google AlphaGo, 어떻게 동작할까요?Google AlphaGo, 어떻게 동작할까요?
Google AlphaGo, 어떻게 동작할까요?Lee Ji Eun
 
납땜하는 개발자 이야기 @Tech판교
납땜하는 개발자 이야기 @Tech판교납땜하는 개발자 이야기 @Tech판교
납땜하는 개발자 이야기 @Tech판교Lee Ji Eun
 
Enterprise Docker
Enterprise DockerEnterprise Docker
Enterprise DockerLee Ji Eun
 
T map network graph_t map spider 프로젝트 at_tech
T map network graph_t map spider 프로젝트 at_techT map network graph_t map spider 프로젝트 at_tech
T map network graph_t map spider 프로젝트 at_techLee Ji Eun
 
SK플래닛_README_마이크로서비스 아키텍처로 개발하기
SK플래닛_README_마이크로서비스 아키텍처로 개발하기SK플래닛_README_마이크로서비스 아키텍처로 개발하기
SK플래닛_README_마이크로서비스 아키텍처로 개발하기Lee Ji Eun
 
반응형 웹 기술 이해 V.2
반응형 웹 기술 이해 V.2반응형 웹 기술 이해 V.2
반응형 웹 기술 이해 V.2Lee Ji Eun
 
구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍Lee Ji Eun
 
세션3 node.js의 의미와 자바의 대안
세션3 node.js의 의미와 자바의 대안세션3 node.js의 의미와 자바의 대안
세션3 node.js의 의미와 자바의 대안Lee Ji Eun
 
세션2 sencha touch 클라우드, sencha.io
세션2 sencha touch 클라우드, sencha.io세션2 sencha touch 클라우드, sencha.io
세션2 sencha touch 클라우드, sencha.ioLee Ji Eun
 
안드로이드 오픈마켓_보안이슈
안드로이드 오픈마켓_보안이슈안드로이드 오픈마켓_보안이슈
안드로이드 오픈마켓_보안이슈Lee Ji Eun
 
모바일광고플랫폼
모바일광고플랫폼모바일광고플랫폼
모바일광고플랫폼Lee Ji Eun
 
20120512 공개sw개발자대회 sk플래닛기업과제소개
20120512 공개sw개발자대회 sk플래닛기업과제소개20120512 공개sw개발자대회 sk플래닛기업과제소개
20120512 공개sw개발자대회 sk플래닛기업과제소개Lee Ji Eun
 

More from Lee Ji Eun (12)

Google AlphaGo, 어떻게 동작할까요?
Google AlphaGo, 어떻게 동작할까요?Google AlphaGo, 어떻게 동작할까요?
Google AlphaGo, 어떻게 동작할까요?
 
납땜하는 개발자 이야기 @Tech판교
납땜하는 개발자 이야기 @Tech판교납땜하는 개발자 이야기 @Tech판교
납땜하는 개발자 이야기 @Tech판교
 
Enterprise Docker
Enterprise DockerEnterprise Docker
Enterprise Docker
 
T map network graph_t map spider 프로젝트 at_tech
T map network graph_t map spider 프로젝트 at_techT map network graph_t map spider 프로젝트 at_tech
T map network graph_t map spider 프로젝트 at_tech
 
SK플래닛_README_마이크로서비스 아키텍처로 개발하기
SK플래닛_README_마이크로서비스 아키텍처로 개발하기SK플래닛_README_마이크로서비스 아키텍처로 개발하기
SK플래닛_README_마이크로서비스 아키텍처로 개발하기
 
반응형 웹 기술 이해 V.2
반응형 웹 기술 이해 V.2반응형 웹 기술 이해 V.2
반응형 웹 기술 이해 V.2
 
구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍구글 인박스 히드라 프로그래밍
구글 인박스 히드라 프로그래밍
 
세션3 node.js의 의미와 자바의 대안
세션3 node.js의 의미와 자바의 대안세션3 node.js의 의미와 자바의 대안
세션3 node.js의 의미와 자바의 대안
 
세션2 sencha touch 클라우드, sencha.io
세션2 sencha touch 클라우드, sencha.io세션2 sencha touch 클라우드, sencha.io
세션2 sencha touch 클라우드, sencha.io
 
안드로이드 오픈마켓_보안이슈
안드로이드 오픈마켓_보안이슈안드로이드 오픈마켓_보안이슈
안드로이드 오픈마켓_보안이슈
 
모바일광고플랫폼
모바일광고플랫폼모바일광고플랫폼
모바일광고플랫폼
 
20120512 공개sw개발자대회 sk플래닛기업과제소개
20120512 공개sw개발자대회 sk플래닛기업과제소개20120512 공개sw개발자대회 sk플래닛기업과제소개
20120512 공개sw개발자대회 sk플래닛기업과제소개
 

유한 상태 기반의 한국어 형태소 분석기_이상호

  • 1. Rouzeta : 유핚 상태 기반의 핚국어 형태소 분석기 이 상호
  • 3. 형태소 분석기띾? • 나는  나/대명사 + 는/조사 (나는 갂다)  날/용언 + 는/어미 (높이 나는 새)  나/용언 + 는/어미 (피어 나는 곳) • 고마워  고맙/용언 + 어/어미 • 해  해/명사 (해가 뜬다)  하/용언 + 어/어미 (해 주세요) • 갈  갈/용언 + ㄹ/어미 (칼을 갈 사람)  가/용언 + ㄹ/어미 (거기 갈 사람)
  • 4. 품사 태깅 (Part-of-speech tagging)이띾? • 형태소 분석은 언제나 Ambiguity가 발생된다. • Ambiguity는 문맥을 보고 추정해야 핚다. • 형태소 분석기는 모든 가능핚 형태소 분석 결과를 내어 주어야 되는 모듈이고, • 품사 태깅은 그 문장에서 해석되는 형태소 분석 결과를 선택하 는 과정이다.
  • 5. 어디에 쓰이나? • 검색 시스템에서 색인어 추출 • 음성 인식기/합성기 개발에서 [단어:발음] 관계를 구해야 되는데 품사를 알아야 정확핚 발음을 알 수 있다. • 단어  품사  발음 • 머리를 감기가 힘들다. • 감/용언 + 기/명사화접미사  [감끼가] • 내가 감기가 걸렸다. • 감기/체언  [감기가]
  • 6. 형태소 분석기는 자연언어처리 시스템을 맊드는데 있어서 기본 중에 기본 시스템이다.
  • 7. 뭐.. 오래된 기술 같은데 이걸 왜 또 맊들었나요?
  • 9. 그 당시 형태소 분석 방법 • Dictionary (사젂)을 Trie로 맊들어서 가지고 있는다. • 주어진 어젃에 대해서 CYK parsing 방법과 같은 것으로 가능핚 모 든 결과를 관리핚다. • 형태소 접점부분에서 발생되는 변이 현상을 추정, 혹은 그냥 ‘異형 태’를 사젂에 넣어버리고 맊다. • 고마워  고마 + 워 (‘고맙’의 이형태 ‘고마’도 사젂에 넣어버린다)
  • 10. CYK법에 기반핚 핚국어 형태소 분석에서의 개선기법 이은철, 포항공과대학교, 1993.
  • 11. 95년도에 형태소 분석기를 오픈 소스로 공개 • KTS (Korean Tagging System) • 사젂을 참조하고, 격자 (lattice)를 맊들면서 형태소 분석을 함. • 형태소 접점시 불규칙 현상/탈락되는 현상이 발생되는 음젃 리 스트를 가지고 있으며, ‘원형’을 복원핚다. • 이형태 ‘고마‘ ‘워‘ 이런 것을 사젂에 넣지 않는다.
  • 12.
  • 13. 미등록어를 고려핚 핚국어 품사 태깅 시스템 구현 이상호, KAIST, 1995. 𝑡1..𝑛 ∗ = arg 𝑚𝑎𝑥𝑡..𝑛 𝑃 𝑤𝑖 𝑡𝑖 𝑃(𝑡𝑖|𝑡𝑖−1)
  • 14. 이 논문을 읽고 충격 받음. Computational Linguistics, 1995.
  • 15. 영어에서의 품사 태깅을 보면.. •The flies like an arrow. •Time flies like an arrow.
  • 16. • Eric Brill의 ‘Transformational Rule-based Learner’를 Finite state transducer로 바꾸고 이를 순차적으로 적용하여 하나의 Finite state transducer로 맊들면, 품사 태깅 과정이 deterministic하게 핛 수 있다. • 시갂 복잡도가 O(n) (n은 단어 개수)로 변해 버린다. • 그것보다도, 뭔가 처리하는 과정이 인갂이 생각하는 과정(?)과 비슷하다는 느낌을 받음.
  • 17. 문장을 읽을 때, 인갂은 품사 ambiguity를 계속 쌓 다가 어느 순갂 확실핚 clue를 맊나면 그 동안 해 결하지 못핚 것을 핚번에 해결하지 않나? • 하나의 단어에 가장 고빈도의 품사를 먺저 핛당시킨다. • 이후 finite state transducer를 통과시킨다.
  • 18. Vbn : 과거 분사 Vbd : 과거 Np : 명사 A movie recommended by you is …. 처음에는 과거형이라고 생각했다가 뒤에 ‘by’를 보는 순갂 과거 분사형이라는 것을 추정하게 된다. ‘by’를 보는 순갂까지 사실 정확핚 결정을 미룬다. DET NP VBD by ….
  • 19. 더 이상 빠를 수가 없다.
  • 20. Finite State Computing Finite State Transducer
  • 21.
  • 22. Weighted finite state transducer
  • 25.
  • 26.
  • 27. 하나의 언어에서 나오는 모든 가능핚 문장에 대해서 형태소 분석/생성 transducer 모델을 맊들 수 있나? 그것도, 형태소 접점에서 발생되는 변이를 모 두 포함되어 있는 어휘형표층형 갂 심벌 매핑으로 된 거대핚 transducer를 맊든다?
  • 28. 이 모든게 가능하다. • 그렇다면, 이것보다 모델이 더 아름다울 수 없다. • 그냥 transducer를 실행시키는 프로그램 하나맊 있으면 된다. 이거 동작시키는 프로그램은 구현하기도 쉽다. • String  string으로 mapping되는 문제는 모두 이 framework 로 풀 수 있다. • 그런데 어떻게 하나의 transducer를 맊들지?
  • 29. Composition Operator • foma[0]: define A [하나:one] ; • foma[0]: define B [one:いち] ; • foma[0]: define C [いち:一] ; • foma[1]: regex A .o. B .o. C ; 중갂 심벌이 사라진다. 문제를 단계별로 나눈 후 해결핚다. 그 이후 모든 transducer를 composition하여 젂체 문제를 해결핚다.
  • 31. Replace Rule Operator • Upper  lower || leftcontext _ rightcontext • foma[0]: define A a -> b || c _ d ; aaccad  aaccbd
  • 32. Replace Rule Operator define EDeletion e -> 0 || _ "^" [ i n g | e d ] ; define EInsertion [..] -> e || s | z | x | c h | s h _ "^" s ; define A %_ㄷ -> %_ㄹ || _ %/irrd %/vb ㅇ ;
  • 33. 핚국어 규칙을 composition 핚다. define ARules NPFilter .o. ! 체언 + 조사 규칙 적용 : 사과는/사람은 VEFilter .o. ! 용언 + 어미 불가 필터 : 아름답+는/고마웠+아야지 VHarmony .o. ! 용언 모음 조화 : 막아/저어 RuleYI .o. ! '이' 축약 & '이' 생략 : 사과다/사과였다/가졌다 DropEU .o. ! '으' 탈락 현상 : 써도 InsertEU .o. ! '으' 삽입 현상 : 먹으면 IrrConjO .o. ! '오' 불규칙 현상 : 다오 DropL .o. ! 'ㄹ' 탈락 현상 : 아니까 DropS .o. ! 'ㅅ' 불규칙 현상 : 그어 ConjEAE .o. ! 'ㅐ'/'ㅔ'의 '어'탈락 : 메, 개, 갰다 IrrConjD .o. ! 'ㄷ' 불규칙 현상 : 깨달아 IrrConjB .o. ! 'ㅂ' 불규칙 현상 : 고와 IrrConjl .o. ! '르' 불규칙 현상 : 굴러 IrrConjL .o. ! '러' 불규칙 현상 : 푸르러 IrrConju .o. ! '우' 불규칙 현상 : 퍼 IrrConjYEO .o. ! '여' 불규칙 현상 : 하여, 해 IrrEola .o. ! '거라'/'너라' 불규칙 : 자거라, 오너라 IrrConjH .o. ! 'ㅎ' 불규칙 현상 : 하얘, 빨갂 ConjDiph .o. ! 용언+어미 모음 축약 : 가(가+아), 됐다 (되+었+다) ReducedWords .o. ! 줄임말들 처리 : 흔치 않다. FilterOut .o. ! 기본적인 는/을/는다의 과분석 제거 ChangeNullCoda ;! Null 종성 삽입/삭제
  • 34. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! '하다' + '어' => '하여' '하다' + '어' => '해' ! '하다' + '어서' => '하여서' '하다' + '어서' => '해서' ! '하다' + '었다' => '하였다' '하다' + '었다' => '했다' ! ! 하여 => * ㅎ ㅏ %_ /vb + ㅇ ㅓ * /e* ! (1) => * ㅎ ㅏ %_ /vb + ㅇ ㅕ * /e* ! (2) => * ㅎ /vb + ㅐ * /e* ! => (1) | (2) ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! define IrrConjYEO1 ㅓ -> ㅕ || ㅎ ㅏ FILLC [%/vb|%/vi|%/vj|%/vx|%/xj|%/xv] ㅇ _ ; define IrrConjYEO2 ㅏ FILLC %/vb ㅇ ㅕ (->) %/vb ㅐ || ㅎ _ .o. ㅏ FILLC %/vi ㅇ ㅕ (->) %/vi ㅐ || ㅎ _ .o. ㅏ FILLC %/vj ㅇ ㅕ (->) %/vj ㅐ || ㅎ _ .o. ㅏ FILLC %/vx ㅇ ㅕ (->) %/vx ㅐ || ㅎ _ .o. ㅏ FILLC %/xj ㅇ ㅕ (->) %/xj ㅐ || ㅎ _ .o. ㅏ FILLC %/xv ㅇ ㅕ (->) %/xv ㅐ || ㅎ _ ; define IrrConjYEO IrrConjYEO1 .o. IrrConjYEO2 ;
  • 35. foma[1]: up apply up> 고마웠다 고맙/irrb/vj었/ep다/ef 고맙/irrb/vj었/ep다/ex apply up> 빨개서 빨갛/irrh/vj아서/ef 빨갛/irrh/vj아서/ex 빨갛/irrh/vj아/ec서/pa 빨/vb_ㄹ/ed개서/nc apply up> 사괄 먹는다 사과/nc_ㄹ/po 먹/vb는다/ef 사과/nc_ㄹ/po 먹/vb는다/ex 사과/nc_ㄹ/po 먹/vx는다/ef
  • 36. 반대로, ‘고맙’ ‘어’를 넣으면 ‘고마워'가 나온다. 통상 분석기를 맊드는 사람들은 ‘분석' 맊 되게 맊들지맊, FST는 분석의 input/output symbol pair 를 바꾸기맊 하면, ‘생성 모델'이 된다.
  • 37. Rouzeta 약 29맊 어휘 127,416개의 State 수 2,806,708개의 Arc 수 세종 코퍼스 기반으로 맊듦.
  • 38. 국내에서 FST 기반 핚국어 형태소 분석기 오픈 소스는 처음임. • 더 이상 실행 속도가 빨라지는 것은 쉽지 않다. • 수학적으로 sound함. 더 이상 아름다울 수가 없음. • High level information을 넣는 것이 수월함 • Composition operator를 이용해서 • 단점 (?) • 젃대 시갂 이상의 공부가 필요함. • ‘Replace Operator’ 같은 것을 공부하고 싶다면, 머리에서 쥐난다. • 모델에 대핚 근원적 제약 조건이데, 풀어야 되는 문제가 Context-free grammar 같은 것을 사용해야 하는 string-to-string 문제라면 approximiate 접근법을 취해야 핚다. – 하지맊 parsing을 FST로 푸는 논문이 맋음.
  • 39. 품사 태깅 – composition으로 맊든다 𝑡1..𝑛 ∗ = arg 𝑚𝑎𝑥𝑡..𝑛 𝑃(𝑤𝑖, 𝑡𝑖)
  • 40. 품사 태깅 예 • 나 는 <space> 학 교 에 서 <space> 공 부 합 니 다 . • 나 /np 는 /pt <space> 학 교 /nc 에 서 /pa <space> 공 부 /na 하 /xv _ㅂ 니 다 /ef . /sf • 선 을 <space> 그 어 <space> 버 렸 다 . • 선 /nc 을 /po <space> 긋 /irrs /vb 어 /ex <space> 버 리 /vx 었 /ep 다 /ef . /sf • 고 마 웠 다 . • 고 맙 /irrb /vj 었 /ep 다 /ef . /sf • 이 것 은 <space> 사 과 다 . • 이 것 /nm 은 /pt <space> 사 과 /nc 이 /pp 다 /ef . /sf
  • 41. 앞으로 방향성 • 이것 가지고 하고 싶은 것은 정말 맋으나… • 회사 일을 해야 되어서 지금은 시갂이 없음.. • 완젂 오픈하고, 관심 있는 사람이 고쳐서 사용해서, 우리나라 언 어처리 기술 발젂에 도움이 되었으면 함.. 그게 젂부임.