SlideShare a Scribd company logo
1 of 23
Download to read offline
Universal Dependency for Korean
국민대학교 자연어처리연구실 남규현
Natural Language Processing Lab. @Kookmin University
Natural Language Processing Lab. @Kookmin University
Universal Dependency
https://www.researchgate.net/publication/324941600
• LERC 2018, Building Universal Dependency Treebanks in Korean
• 기존의 3가지 트리뱅크를 UD project의 가이드라인에 맞춰서 새롭게 가공함
- Google Korean Treebank
- Penn Korean Treebank
- Kaist Treebank
Natural Language Processing Lab. @Kookmin University
Google UD Korean Treebank
• 구글 말뭉치는 UD project 이전에 만들어졌음 -> 현재 가이드라인 지침과 다름
• 가이드라인 변환 필요성
- Morphological Analysis
- Proper Tokenization
- Part-of-speech Tags Relabeling
- Head ID Remapping
- Dependency Relabeling
- Lexical Correction
Natural Language Processing Lab. @Kookmin University
Morphological Analysis
• 한국어의 교착어 특성상, 단어의 희소성 문제는 당연
• 기존 GKT는 형태소로 분리 하는 것 대신
단어를 그대로 분리 -> 개선의 필요성
• KOMA tagger를 사용해 세종 태그셋 환경하에
형태소 분석을 진행함
• 전체 형태소 분석 결과는 각 토큰에 마지막 열에
포함됨
Natural Language Processing Lab. @Kookmin University
Proper Tokenization
• 완전한 tokenize는 이번 연구에서 벗어나므로,
문장 부호나 특수 기호의 경우만 tokenize 처리
• Dependency label 은 원래 단어를 따름
Natural Language Processing Lab. @Kookmin University
Part-of-speech Tags Relabeling
• Tokenize 된 단어들은 원래 단어의 품사에 근거해 품사 재부착.
• GKT의 보조 품사 집합은 다른 코퍼스와 일관성을 위해 사용하지 않음.
Natural Language Processing Lab. @Kookmin University
Head ID Remapping
• 일반적으로 분리된 단어는 원래 단어의 HEAD를 상속
• 문장 부호는 이전 단어를 가리킴
• 인용문 이나 괄호 문구는 예외
- 인용문은 하나의 문장을 형성하므로,
내부의 루트가 외부의 요소와 링크됨.
- 경험적으로 괄호 문구의 루트는 선행 단어였고,
지배소 후위 규칙에 따라 가장 우측 단어였음.
Natural Language Processing Lab. @Kookmin University
Dependency Relabeling
Natural Language Processing Lab. @Kookmin University
Lexocal Correction
• 철자 교정 (왠만하면 -> 웬만하면)
• 은어 교정 (시른 -> 싫은)
• 부호 교정 (& -> &)
Natural Language Processing Lab. @Kookmin University
Penn Korean Treebank
• PKT는 empty category 를 포함하는 유일한 한국어 말뭉치
-> non-projective 관계가 생김
• 이전 버전(2002) PKT는 군사 도메인으로, 일반성이 없어서 제외됨
Natural Language Processing Lab. @Kookmin University
Empty Category
• Empty category는 다른 곳에서 나타난 선행 요소를 가리키는 요소
• 트리가 non-projective 관계를 가지게 되지만,
장거리 관계를 포착할 수 있게 됨.
- *T*
- *pro*
- *op*
- *?*
Natural Language Processing Lab. @Kookmin University
Trace
• 선행요소 추적 기호
• 선행요소를 찾아 추출하여 Trace 노드 대신 삽입
Natural Language Processing Lab. @Kookmin University
Empty Assignment and Empty Operator
• *pro* : 없어진 요소
• *op* : 관계사절
• 논문에서 명시적인 단계를 서술하지 않음
Natural Language Processing Lab. @Kookmin University
Ellipsis
• Ellipsis 는 2가지 경우가 존재
- 주절에서 술어가 생략된 경우
- 이 경우의 술어 복원은 문맥 정보를 이용해야 하므로 본 논문의 밖 내용
- 2개의 절이 하나의 술어를 사용하는 경우
- 술어를 찾고 관계를 매핑해야 하지만 PKT는 연결 색인 정보를 제공하지 않음
- 아래 그림처럼 고정된 패턴이 있으면 이를 이용해 매핑
Natural Language Processing Lab. @Kookmin University
Coordination
• 각 접속사는 우측의 요소를 지배소로 가진다 = 가장 우측의 접속사는 지배소이다
• PKT는 접속 기능 태그를 제공하지 않음
-> 문장의 등위 관계에서 휴리스틱 방법을 적용
Natural Language Processing Lab. @Kookmin University
Coordination
Natural Language Processing Lab. @Kookmin University
Part-of-speech Tags
• 품사 태그는 PKT -> UDv2 로 변환 (https://github.com/emorynlp/korean-nlp/wiki/Part-of-Speech-Tags)
• 예외 DAN
- 지시 대명사 (이, 그, 저) -> DET
- 형용사의 한정적 용법 (새, 헌) -> ADJ
• 조사
- 접속 조사 (PCJ) -> CCONJ
- 나머지 (PCA, PAD. PAU) -> (ADP)
• 활용 어미
- (등위 접속, 종속 접속, 부사격)ECS -> CCONJ(동사나 동사구의 등위 관계), SCONJ(절의 등위 관계)
- 나머지 -> PART (CO 계사, X* 접사)
Natural Language Processing Lab. @Kookmin University
Dependency Relations
• Empty category 에서 논의했던 부분을 먼저 다루고 시작
• 우측의 지배소 퍼콜레이션 테이블 (Head-percolation)에
근거하여 관계를 추론함
Natural Language Processing Lab. @Kookmin University
Kaist Treebank
• PKB와 다르게 empty category와 기능 태그를 제공하지 않음
• Coordination
- PKB 처럼 같은 알고리즘을 사용하여 등위 관계 파악.
- 가장 우측의 접속사가 지배소가 됨
• Part-of-speech Tags
- PKB 처럼 비슷하게 매핑 테이블로 품사를 재매핑
• Dependency Relations
- 우측 테이블 이용
Natural Language Processing Lab. @Kookmin University
Distributions
Natural Language Processing Lab. @Kookmin University
Corpus Analytics
Natural Language Processing Lab. @Kookmin University
Corpus Analytics
Natural Language Processing Lab. @Kookmin University
Corpus Analytics

More Related Content

More from Gyuhyeon Nam

[study] pointer networks
[study] pointer networks[study] pointer networks
[study] pointer networksGyuhyeon Nam
 
grade server - block socket
grade server - block socketgrade server - block socket
grade server - block socketGyuhyeon Nam
 
[Tool] Tree Tagger 를 이용한 한국어 품사 태깅
[Tool] Tree Tagger 를 이용한 한국어 품사 태깅 [Tool] Tree Tagger 를 이용한 한국어 품사 태깅
[Tool] Tree Tagger 를 이용한 한국어 품사 태깅 Gyuhyeon Nam
 
[study] Long Text Generation via Adversarial Training with Leaked Information
[study] Long Text Generation via Adversarial Training with Leaked Information[study] Long Text Generation via Adversarial Training with Leaked Information
[study] Long Text Generation via Adversarial Training with Leaked InformationGyuhyeon Nam
 
[Tool] chatscript 사용법
[Tool] chatscript 사용법[Tool] chatscript 사용법
[Tool] chatscript 사용법Gyuhyeon Nam
 
[Distributed System] ch4. interprocess communication
[Distributed System] ch4. interprocess communication[Distributed System] ch4. interprocess communication
[Distributed System] ch4. interprocess communicationGyuhyeon Nam
 

More from Gyuhyeon Nam (7)

[study] pointer networks
[study] pointer networks[study] pointer networks
[study] pointer networks
 
grade server - block socket
grade server - block socketgrade server - block socket
grade server - block socket
 
[Tool] Tree Tagger 를 이용한 한국어 품사 태깅
[Tool] Tree Tagger 를 이용한 한국어 품사 태깅 [Tool] Tree Tagger 를 이용한 한국어 품사 태깅
[Tool] Tree Tagger 를 이용한 한국어 품사 태깅
 
[study] Long Text Generation via Adversarial Training with Leaked Information
[study] Long Text Generation via Adversarial Training with Leaked Information[study] Long Text Generation via Adversarial Training with Leaked Information
[study] Long Text Generation via Adversarial Training with Leaked Information
 
[Tool] chatscript 사용법
[Tool] chatscript 사용법[Tool] chatscript 사용법
[Tool] chatscript 사용법
 
[Tool] cwb cqp
[Tool] cwb cqp[Tool] cwb cqp
[Tool] cwb cqp
 
[Distributed System] ch4. interprocess communication
[Distributed System] ch4. interprocess communication[Distributed System] ch4. interprocess communication
[Distributed System] ch4. interprocess communication
 

[study] Building Universal Dependency Treebanks in Korean

  • 1. Universal Dependency for Korean 국민대학교 자연어처리연구실 남규현 Natural Language Processing Lab. @Kookmin University
  • 2. Natural Language Processing Lab. @Kookmin University Universal Dependency https://www.researchgate.net/publication/324941600 • LERC 2018, Building Universal Dependency Treebanks in Korean • 기존의 3가지 트리뱅크를 UD project의 가이드라인에 맞춰서 새롭게 가공함 - Google Korean Treebank - Penn Korean Treebank - Kaist Treebank
  • 3. Natural Language Processing Lab. @Kookmin University Google UD Korean Treebank • 구글 말뭉치는 UD project 이전에 만들어졌음 -> 현재 가이드라인 지침과 다름 • 가이드라인 변환 필요성 - Morphological Analysis - Proper Tokenization - Part-of-speech Tags Relabeling - Head ID Remapping - Dependency Relabeling - Lexical Correction
  • 4. Natural Language Processing Lab. @Kookmin University Morphological Analysis • 한국어의 교착어 특성상, 단어의 희소성 문제는 당연 • 기존 GKT는 형태소로 분리 하는 것 대신 단어를 그대로 분리 -> 개선의 필요성 • KOMA tagger를 사용해 세종 태그셋 환경하에 형태소 분석을 진행함 • 전체 형태소 분석 결과는 각 토큰에 마지막 열에 포함됨
  • 5. Natural Language Processing Lab. @Kookmin University Proper Tokenization • 완전한 tokenize는 이번 연구에서 벗어나므로, 문장 부호나 특수 기호의 경우만 tokenize 처리 • Dependency label 은 원래 단어를 따름
  • 6. Natural Language Processing Lab. @Kookmin University Part-of-speech Tags Relabeling • Tokenize 된 단어들은 원래 단어의 품사에 근거해 품사 재부착. • GKT의 보조 품사 집합은 다른 코퍼스와 일관성을 위해 사용하지 않음.
  • 7. Natural Language Processing Lab. @Kookmin University Head ID Remapping • 일반적으로 분리된 단어는 원래 단어의 HEAD를 상속 • 문장 부호는 이전 단어를 가리킴 • 인용문 이나 괄호 문구는 예외 - 인용문은 하나의 문장을 형성하므로, 내부의 루트가 외부의 요소와 링크됨. - 경험적으로 괄호 문구의 루트는 선행 단어였고, 지배소 후위 규칙에 따라 가장 우측 단어였음.
  • 8. Natural Language Processing Lab. @Kookmin University Dependency Relabeling
  • 9. Natural Language Processing Lab. @Kookmin University Lexocal Correction • 철자 교정 (왠만하면 -> 웬만하면) • 은어 교정 (시른 -> 싫은) • 부호 교정 (& -> &)
  • 10. Natural Language Processing Lab. @Kookmin University Penn Korean Treebank • PKT는 empty category 를 포함하는 유일한 한국어 말뭉치 -> non-projective 관계가 생김 • 이전 버전(2002) PKT는 군사 도메인으로, 일반성이 없어서 제외됨
  • 11. Natural Language Processing Lab. @Kookmin University Empty Category • Empty category는 다른 곳에서 나타난 선행 요소를 가리키는 요소 • 트리가 non-projective 관계를 가지게 되지만, 장거리 관계를 포착할 수 있게 됨. - *T* - *pro* - *op* - *?*
  • 12. Natural Language Processing Lab. @Kookmin University Trace • 선행요소 추적 기호 • 선행요소를 찾아 추출하여 Trace 노드 대신 삽입
  • 13. Natural Language Processing Lab. @Kookmin University Empty Assignment and Empty Operator • *pro* : 없어진 요소 • *op* : 관계사절 • 논문에서 명시적인 단계를 서술하지 않음
  • 14. Natural Language Processing Lab. @Kookmin University Ellipsis • Ellipsis 는 2가지 경우가 존재 - 주절에서 술어가 생략된 경우 - 이 경우의 술어 복원은 문맥 정보를 이용해야 하므로 본 논문의 밖 내용 - 2개의 절이 하나의 술어를 사용하는 경우 - 술어를 찾고 관계를 매핑해야 하지만 PKT는 연결 색인 정보를 제공하지 않음 - 아래 그림처럼 고정된 패턴이 있으면 이를 이용해 매핑
  • 15. Natural Language Processing Lab. @Kookmin University Coordination • 각 접속사는 우측의 요소를 지배소로 가진다 = 가장 우측의 접속사는 지배소이다 • PKT는 접속 기능 태그를 제공하지 않음 -> 문장의 등위 관계에서 휴리스틱 방법을 적용
  • 16. Natural Language Processing Lab. @Kookmin University Coordination
  • 17. Natural Language Processing Lab. @Kookmin University Part-of-speech Tags • 품사 태그는 PKT -> UDv2 로 변환 (https://github.com/emorynlp/korean-nlp/wiki/Part-of-Speech-Tags) • 예외 DAN - 지시 대명사 (이, 그, 저) -> DET - 형용사의 한정적 용법 (새, 헌) -> ADJ • 조사 - 접속 조사 (PCJ) -> CCONJ - 나머지 (PCA, PAD. PAU) -> (ADP) • 활용 어미 - (등위 접속, 종속 접속, 부사격)ECS -> CCONJ(동사나 동사구의 등위 관계), SCONJ(절의 등위 관계) - 나머지 -> PART (CO 계사, X* 접사)
  • 18. Natural Language Processing Lab. @Kookmin University Dependency Relations • Empty category 에서 논의했던 부분을 먼저 다루고 시작 • 우측의 지배소 퍼콜레이션 테이블 (Head-percolation)에 근거하여 관계를 추론함
  • 19. Natural Language Processing Lab. @Kookmin University Kaist Treebank • PKB와 다르게 empty category와 기능 태그를 제공하지 않음 • Coordination - PKB 처럼 같은 알고리즘을 사용하여 등위 관계 파악. - 가장 우측의 접속사가 지배소가 됨 • Part-of-speech Tags - PKB 처럼 비슷하게 매핑 테이블로 품사를 재매핑 • Dependency Relations - 우측 테이블 이용
  • 20. Natural Language Processing Lab. @Kookmin University Distributions
  • 21. Natural Language Processing Lab. @Kookmin University Corpus Analytics
  • 22. Natural Language Processing Lab. @Kookmin University Corpus Analytics
  • 23. Natural Language Processing Lab. @Kookmin University Corpus Analytics