KR101072460B1 - 한국어 형태소 분석 방법 - Google Patents

한국어 형태소 분석 방법 Download PDF

Info

Publication number
KR101072460B1
KR101072460B1 KR1020100077308A KR20100077308A KR101072460B1 KR 101072460 B1 KR101072460 B1 KR 101072460B1 KR 1020100077308 A KR1020100077308 A KR 1020100077308A KR 20100077308 A KR20100077308 A KR 20100077308A KR 101072460 B1 KR101072460 B1 KR 101072460B1
Authority
KR
South Korea
Prior art keywords
morpheme
morphological
probability
model
equation
Prior art date
Application number
KR1020100077308A
Other languages
English (en)
Inventor
이재성
Original Assignee
충북대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 충북대학교 산학협력단 filed Critical 충북대학교 산학협력단
Priority to KR1020100077308A priority Critical patent/KR101072460B1/ko
Application granted granted Critical
Publication of KR101072460B1 publication Critical patent/KR101072460B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Evolutionary Biology (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 한국어 형태소 분석방법에 관한 것으로, 특히 대량의 형태소 품사 부착 말뭉치(언어데이터)로부터 자동으로 규칙을 학습하여 형태소 분석기를 생성할 수 있도록 한 한국어 형태소 분석 방법에 관한 것이다. 이와 같은 본 발명은 말뭉치로부터 한국어 형태소를 분석하는 방법에 있어서, 주어진 어절로부터 형태소를 분리하여 원형 어절이 생성될 확률을 획득하는 원형 복원 모델 획득 단계; 상기 원형 어절이 주어지고, 그 원형어절을 형태소 분리하여 분리된 형태소 단위의 리스트가 생성될 확률을 획득하는 형태소 분리 모델 획득 단계; 상기 분리된 형태소 단위의 리스트가 주어지고, 그 분리된 형태소 단위의 리스트에 대응되는 태그(품사) 리스트가 생설될 확률을 획득하는 형태소 태깅 모델 획득 단계; 및 상기 원형 복원 모델, 형태소 분리 모델 및 태깅 모델을 곱셈연산하여 형태소 분석 모델을 획득하는 단계를 수행하되, 상기 원형 복원 모델 획득단계, 형태소 분리 모델 획득 단계 및 형태소 태깅 모델 획득단계시 확률적으로 가능성이 가장 높은 후보를 우선적으로 표시하여 통계적으로 형태소를 분석할 수 있도록 하는 것을 특징으로 한다.

Description

한국어 형태소 분석 방법{METHOD FOR KOREAN MORPHOLOGICAL ANALYSIS}
본 발명은 한국어 형태소 분석방법에 관한 것으로, 특히 대량의 형태소 품사 부착 말뭉치로부터 자동으로 규칙을 학습하여 형태소 분석기를 생성할 수 있도록 한 한국어 형태소 분석 방법에 관한 것이다.
한국어 형태소 분석은 주어진 어절에서 원형 형태소를 복원하고 형태소 단위로 분리하여 한 어절이 어떤 형태소로 구성되었는지를 찾아내는 과정이다. 한국어 어절은 띄어쓰기가 있어, 서구어(영어 등)의 어절과 비슷한 면이 있지만, 용언이나 복합명사 등에서와 같이 여러 단어 혹은 형태소가 붙여 쓰여 사용되는 면에서는 붙여쓰기를 하는 일본어나 중국어와 유사한 점도 있다. 따라서 한국어 형태소 분석은 적절한 형태소 복원과 동시에 적절한 형태소 단위의 분리 과정이 함께 필요하여 비교적 그 과정이 복잡하다. 더욱이 한국어는 어미 변화가 심한 교착어로 형태소 변화를 규칙으로 표현하기 어려워, 형태소 분석기를 구현하는 방법도 절차(procedure) 기반 방법이 주로 연구되어 왔다.
이러한 형태소 분석은 어절을 구성하는 문자열 내에서 조합 가능한 모든 부분 문자열을 만들어 보고 이것이 형태소인지를 확인하는 것이다. 형태소 확인은 대개 사전에 등록되어 있는지의 여부에 따라 판단한다. 형태소가 변형되는 경우, 변형된 경우의 수가 많으므로 그 원형을 복원하고 그 원형만을 사전에 등재하여 처리한다. 또한 형태소들간의 접속 가능성을 확인하여 잘못된 연결 관계의 형태소 분석을 막도록 한다.
여러 형태소 후보를 생성할 수 있는 본격적인 형태소 분석기의 초기 연구로는 CYK 파싱(CYK tabular parsing) 방법을 사용한 연구를 들 수 있다.
이 연구에서는 4단계로 형태소 분석을 하는데, 첫 단계로 형태소 분석의 불규칙 현상 및 음운 현상 검사, 두 번째 단계로 CYK 테이블내의 자소 엔트리에 대한 사전 탐색, 세 번째 단계로 형태소 결합 관계 검사, 네 번째 단계로 다른 문자 종류의 형태소에 대한 접속 관계 검사로 이루어진다. 첫 단계에서는 어느 정도 형태소 복원에 필요한 정보만을 준비하고, 두 번째 단계와 세 번째 단계에서 형태소 분석을 시행한다.
즉, 입력 어절을 자소 단위로 나누고 이를 CYK 테이블에 넣어 모든 가능한 자소 단위의 결합을 시도한다. n개의 자소로 이루어진 어절의 경우, 1/2 n2의 셀이 만들어지고 모든 가능한 경우의 부분 자소열이 검사된다. 가능한 부분 자소열은 사전을 검색하여 유효한 형태소인지를 확인하고, 각 형태소들의 연결 관계는 사전에 저장된 접속 정보를 이용하여 처리한다. 접속 가능 및 불가능을 0,1로 표현하였다. 사전 검색시 축약이나 불규칙 변형된 형태소들은 원형으로 복원하여 CYK 테이블에 넣고 처리하나, 복원된 문자열의 크기가 입력 어절의 크기와 다를 경우, CYK 테이블에 크기가 맞지 않아 복원된 형태소 열을 다시 처리하기에 불편함이 있다. 이를 해결하기 위한 시도로 음절 단위로 복원시킨 문자열을 CYK 테이블에 포함하도록 했지만, CYK 테이블 형태가 변형되어 여전히 처리에 불편하다. 또한 사전 및 접속 정보를 수동으로 구축해야 하므로 어려움이 있다.
원형 복원과 불규칙 처리, 접속 관계의 구축에 많은 시간이 들기 때문에 이를 개선하기 위한 방법이 음절기반 규칙 방법이다. 이는 전형적인 절차 기반 방법으로 한국어 형태소 분석 방법을 여러 개의 규칙으로 기술하고 이를 적절한 순서로 적용하여 처리하였다. 규칙에서는 각 품사의 어휘들이 갖는 음절 특성을 조사하여 음절 특성에 따라 사전 검색 횟수를 줄이도록 하였다.
형태소를 분리하기 위해, 문법 형태소 사전 및 문법 형태소 음절 정보를 참조하여 분리하고, 변형된 어휘의 경우, 이를 절차적으로 정의된 순서에 따라 원형으로 복원한다. 복원된 어휘는 다시 어휘 형태소 사전을 검색하여 올바른 형태소인지를 검증한다.
형태소 분석기의 적용 분야가 넓어짐에 따라 다양한 사용 예에 대한 처리가 필요하게 되었다.
예를 들어 맞춤법에 맞지 않는 표현이나 비표준어들을 사용하는 경우 등을 처리해야 할 필요가 있을 수 있다. 이를 처리하기 위해서는 매번 다시 음절 특성 함수나 프로그램을 수정해야 하는 불편이 있다.
다양하게 사용된 어절들을 정확하고 빠른 시간에 분석하기 위해 형태소 부착 말뭉치를 이용하기도 한다.
이러한 예로는 기분석된 어절을 형태소 부착 말뭉치에서 추출하고 이를 사전으로 이용하는 방법이다. 이 방법에서는 많이 사용되는 어절을 기분석 사전에 저장해 두고, 형태소 분석시 기분석 사전을 검색하여 그 분석 결과를 출력하거나 형태소 분석에 필요한 정보를 얻어 분석 결과를 출력한다. 만약 기분석 사전에 없을 경우는 규칙 기반 방법을 사용하여 형태소 분석을 한다. 기분석 사전은 어절과 정확히 일치할 경우만 분석 결과를 얻을 수 있다. 따라서, 많은 어절을 포함해야 하지만, 그 사전의 크기가 너무 커질 수 있는 단점이 있다.
이러한 문제점을 어느 정도 해결한 것이 어절 패턴을 이용한 방법이다. 이 방법은 형태소 분석 말뭉치의 각 어절에서 개방어(명사와 같이 임의로 대체될 수 있는 단어)를 임의의 단어로 대체 가능하도록 패턴을 정의한 후, 이를 이용하여 패턴에 일치하는 어절은 그 패턴의 형태소 분석 결과를 출력하도록 하였다. 이 방법은 많은 분석 후보가 발생할 가능성이 있으므로 이를 해결하기 위해 패턴의 빈도수를 이용하여 출력 우선 순위를 조절할 수 있도록 했다. 또한, 형태소 분석에 대한 지식없이도 비교적 쉽게 어절 패턴을 추가하여 시스템 성능을 향상시킬 수 있는 장점이 있다. 하지만, 말뭉치를 분석하여 수작업으로 패턴을 추출해야 하는 불편한 점이 있다.
원형 복원은 음운적으로 발생하는 문제로 어휘(하부)구조가 표층 구조로 나타나면서 변형된 것을 찾기 위한 것이다. 이를 문맥 의존 다시쓰기 규칙(context sensitive rewriting rule)으로 기술하여 처리할 경우, 음운 변형이 이루어지는 중간 계층이 존재하고, 적용 순서에 따라 다르게 생성(복원)되는 문제가 있다. 이를 해결하기 위해 이층(two-level) 규칙 방법이 제안되었고, 이 방법에서는 중간 단계 없이 바로 표층 구조에서 심층의 어휘 구조로 바꾸거나 혹은 그 반대로 변형한다. 원형 복원된 형태소는 어휘사전을 참조하여 분석 결과를 출력한다. 어휘 정보만으로 애매성이 있으므로 일반적으로 형태소 간의 결합 관계를 기술한 워드 문법(word grammar)을 사용한다. 이층 규칙은 바로 오토마타로 구현되고 또 병렬처리가 가능하며 모든 형태소 처리를 프로그램의 ‘외부에 정의된 규칙’으로 처리할 수 있는 장점이 있다.
이를 한국어에 적용하여 일부분의 성과를 보았다. 하지만 이층 규칙은 한 어휘에 대해 한 가지 변형만으로 제한하여 처리하고 있으므로, 한국어처럼 한 어절 내에서 여러 부분 변형이 일어나는 경우, 그 경우의 수가 너무 많아 처리하는데 어려움이 있다. 이를 처리하기 위한 다단계 처리 방법이 제안되기도 했으나 구체적인 성능 평가는 알 수 없다. 또한, 이층 규칙 처리는 여전히 과생성의 문제가 있고, 미등록어나 복합어 처리 등의 문제가 있으며 이를 일부 해결하기도 했다.
언어 규칙을 절차적 방법으로 프로그램하여 처리하는 방법은 유지 보수에 어려움이 많다. 기계 학습을 이용한 방법은 사람이 제공하는 형태소 조합의 예제를 이용하여 자동으로 변환 규칙을 추출해 형태소 분석 시스템의 개발을 편리하게 하였다. 이 방법은 언어에 독립적이어서 여러 언어 예제로부터 규칙을 추출하고 형태소 분석 및 생성을 할 수 있다. 영어의 예를 들어 baby와 babies를 복수형 정보와 함께 주면, 두 단어를 문자열 비교를 하여 바뀐 부분의 변환 정보를 추출하고 이를 아래와 같은 규칙으로 만든다.
(규칙 1)
(PLURAL (NOUN) ((b) (y) (%) -> ((=)(ies)(%))
여기서 %는 단어 구분 기호이며, b다음에 y가 올 경우, 이 명사 단어의 복수형은 y 가 ies로 바뀌는 것을 나타낸다.
이러한 규칙은 if-then 형태로 표현되어 생성뿐만 아니라 분석으로도 이용되어 양방향성(forward chaining 및 backward chaining)을 가진다. 또한 이런 규칙을 일반화하고 특수화하여 효율을 높이도록 하였다.
이 방법은 근본적으로 좌우 문맥을 참조하여 처리하는 이층 규칙과 유사하다.
따라서, 규칙이 잘못 적용되어 과생성이 될 가능성이 있고, 여러 개의 어미가 붙는 한국어 어절 처리에 효율성이 떨어질 수 있다. 이 방법은 사람이 적절한 학습용 예제를 제공해야 하며, 처리 속도가 느린 문제, 미등록어 처리의 문제 등이 있다.
본 발명은 상기와 같은 문제점을 감안하여 안출된 것으로, 대량의 형태소 품사 부착 말뭉치로부터 자동으로 규칙을 학습하여 형태소 분석기를 생성할 수 있도록 한 한국어 형태소 분석 방법을 제공함에 그 목적이 있다.
본 발명의 다른 목적은 형태소 분석 단계를 형태소 복원, 분리, 태깅의 3단계로 나누고 말뭉치로부터 각 단계의 규칙을 통계적으로 자동 학습하여 형태소 분석 결과를 확률순으로 제공할 수 있도록 한 한국어 형태소 분석 방법을 제공함에 있다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어질 수 있을 것이다.
상기와 같은 목적을 달성하기 위한 본 발명의 일면에 따른 한국어 형태소 분석 방법은, 말뭉치(언어데이터)로부터 한국어 형태소를 분석하는 방법에 있어서, 주어진 어절로부터 형태소를 분리하여 원형 어절이 생성될 확률을 획득하는 원형 복원 모델 획득 단계; 상기 원형 어절이 주어지고, 그 원형어절을 형태소 분리하여 분리된 형태소 단위의 리스트가 생성될 확률을 획득하는 형태소 분리 모델 획득 단계; 상기 분리된 형태소 단위의 리스트가 주어지고, 그 분리된 형태소 단위의 리스트에 대응되는 태그(품사) 리스트가 생설될 확률을 획득하는 형태소 태깅 모델 획득 단계; 및 상기 원형 복원 모델, 형태소 분리 모델 및 태깅 모델을 곱셈연산하여 형태소 분석 모델을 획득하는 단계를 수행하되, 상기 원형 복원 모델 획득단계, 형태소 분리 모델 획득 단계 및 형태소 태깅 모델 획득단계시 확률적으로 가능성이 가장 높은 후보를 우선적으로 표시하여 통계적으로 형태소를 분석할 수 있도록 하는 것을 특징으로 한다.
바람직하게, 상기 형태소 분석 모델은, 아래와 같은 수학식 1로 표현할 수 있는 것을 특징으로 한다.
(수학식 1)
Figure 112010051635915-pat00001
여기서, P(T|W): 형태소 분석 모델로 어절 W가 주어졌을 때, 대응되는 태그 리스트 T가 생성될 확률을 나타내고,
P(O|W): 원형 복원 모델로 어절 W가 주어졌을 때, 원형 어절 O를 생성할 확률을 나타내고,
P(M|O): 형태소 분리 모델로 원형 어절 O가 주어졌을 때, 분리된 형태소 단위의 리스트 M이 생성될 확률을 나타내며,
P(T|M): 형태소 태깅 모델로 분리된 형태소 단위의 리스트 M이 주어졌을 때, 대응되는 태그 리스트 T가 생성될 확률을 나타낸다.
바람직하게, 상기 원형 복원 모델 획득 단계는, 어절 W가 주어졌을때 원형 어절 O를 찾는 것으로, 확률이 최대가 되는 어절을 찾기 위한 수식으로 아래의 수학식 2를 이용하는 것을 특징으로 한다.
(수학식 2)
Figure 112010051635915-pat00002
여기서, argmax P()는 괄호의 조건에서 최대 확률을 갖는 값을 의미한다.
바람직하게, 상기 원형 복원 모델 획득 단계는, 어절 O중에 원형 ok(왼쪽 문맥)부터 ol(오른쪽 문맥)까지의 문자열(Ok,l로 표시)이 Wi부터 Wj까지의 문자열(Wi,j로 표시)로 변형되어 나타날 경우, 이 임의의 문자열들의 확률을 모두 곱한 것으로 아래의 수학식 3과 같이 나타낼 수 있는 것을 특징으로 한다.
(수학식 3)
Figure 112010051635915-pat00003
바람직하게, 상기 원형 복원 모델 획득 단계는, 변화된 문자열과 좌우 1글자를 더 포함하여 계산하되, 좌우 1글자의 좌우 문맥은 원형과 활용형이 모두 같아야 하는 것으로, 아래의 수학식 4와 같이 나타낼 수 있는 것을 특징으로 한다.
(수학식 4)
Figure 112010051635915-pat00004
여기서 ok 는 왼쪽 문맥, ol 은 오른쪽 문맥이고, ok +1,l-1 문자열이 wi +1,j-1로 바뀌는 것을 의미한다.
바람직하게, 상기 원형 복원 모델 획득 단계는, 수학식 4를 아래의 수학식 5와 같이 다시 표현할 수 있는 것을 특징으로 한다.
(수학식 5)
Figure 112010051635915-pat00005

여기서, x는 ok +1,l-1, y는 wi +1,j-1, l은 ok , r은 ol 를 의미하고, cnt는 빈도 계산 함수이고, 우변의 첫 항은 문맥 l과 r 사이에서 x가 y로 바뀔 지역적 확률이고, 두 번째 항은 전체 변환 규칙 중 이 규칙이 적용될 확률을 나타내는 전역 확률을 의미한다.
바람직하게, 상기 형태소 분리 모델 획득 단계는, 형태소가 형성될 확률과 형태소 전이 확률의 곱으로 표현되는 것으로, 아래의 수학식 6과 같이 나타낼 수 있는 것을 특징으로 한다.
(수학식 6)
Figure 112010051635915-pat00006
바람직하게, 상기 형태소 분리 모델 획득 단계는, 원형 어절의 부분 문자열이 형태소로 존재할때 1, 아닐 때는 0으로 계산되는 것을 수식으로 표현하면 아래의 수학식 7와 같이 나타낼 수 있으며, 형태소 확률은 아래의 수학식 8과 같이 바이그램 전이 확률로 간략히 추정할 수 있는 것을 특징으로 한다.
(수학식 7)
Figure 112010051635915-pat00007
(수학식 8)
Figure 112010051635915-pat00008
바람직하게, 상기 형태소 분리 모델 획득 단계는, 각각의 형태소 형성 확률과 형태소 전이 확률은 말뭉치에서 출현 빈도수를 세어 아래의 수학식 9와 수학식 10과 같이 나타낼 수 있는 것을 특징으로 한다.
(수학식 9)
Figure 112010051635915-pat00009
(수학식 10)
Figure 112010051635915-pat00010
여기서, mi는 i번째 형태소, mj는 j번째 형태소를 의미하고, cnt는 빈도 계산 함수를 의미한다.
바람직하게, 상기 형태소 분리 모델 획득 단계는, i번째 형태소와 j번째 형태소가 각각 등록되고, i번째 형태소와 j번째 형태소를 서로 붙여쓴 형태소가 등록되어 있지 않은 경우에 아래의 수학식 11을 이용하여 확률을 계산하는 것을 특징으로 한다.
(수학식 11)
Figure 112010051635915-pat00011
여기서, mi는 i번째 형태소, mj는 j번째 형태소를 의미하고, cnt는 빈도 계산 함수를 의미한다.
바람직하게, 상기 형태소 분리 모델 획득 단계는, 어절 분리에 실패할 경우에 아래의 수학식 12을 이용하여 어절 전체를 한 단위로 제시하는 확률을 계산하는 것을 특징으로 한다.
(수학식 12)
Figure 112010051635915-pat00012
바람직하게, 상기 형태소 태깅 모델 획득 단계는, 주어진 형태소 열에 대응되는 확률이 최대인 태그 열을 구하는 것으로, 각 형태소가 서로 독립적이며, 형태소가 주어진 태그에서 결정되면 아래의 수학식 13과 같이 나타낼 수 있는 것을 특징으로 한다.
(수학식 13)
Figure 112010051635915-pat00013
바람직하게, 상기 형태소 태깅 모델 획득 단계는, 아래의 수학식 14와 수학식 15로
Figure 112010051635915-pat00014
의 확률을 계산하는 것을 특징으로 한다.
(수학식 14)
Figure 112010051635915-pat00015
(수학식 15)
Figure 112010051635915-pat00016
바람직하게, 상기 형태소 태깅 모델 획득 단계는, 미등록 형태소에 대해 말뭉치에 나타난 최대 빈도의 태그를 부여하고, 아래와 같은 수학식 16을 이용하여 계산하는 것을 특징으로 한다.
(수학식 16)
Figure 112010051635915-pat00017
본 발명의 다른 면에 따른 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체는, 컴퓨터에 주어진 어절로부터 형태소를 분리하여 원형 어절이 생성될 확률을 획득하는 원형 복원 모델 획득 단계; 상기 원형 어절이 주어지고, 그 원형어절을 형태소 분리하여 분리된 형태소 단위의 리스트가 생성될 확률을 획득하는 형태소 분리 모델 획득 단계; 상기 분리된 형태소 단위의 리스트가 주어지고, 그 분리된 형태소 단위의 리스트에 대응되는 태그(품사) 리스트가 생설될 확률을 획득하는 형태소 태깅 모델 획득 단계; 및 상기 원형 복원 모델, 형태소 분리 모델 및 태깅 모델을 곱셈연산하여 형태소 분석 모델을 획득하는 단계를 포함하되, 상기 원형 복원 모델 획득단계, 형태소 분리 모델 획득 단계 및 형태소 태깅 모델 획득단계시 확률적으로 가능성이 가장 높은 후보를 우선적으로 표시하여 통계적으로 형태소를 분석할 수 있도록 실행시킨다.
전술한 과제해결 수단에 의해 본 발명은 대량의 형태소 품사 부착 말뭉치로부터 자동으로 규칙을 학습하여 형태소 분석기를 생성할 수 있도록 하는 효과가 있다.
또한 형태소 복원, 분리, 태깅의 3단계로 나누고 말뭉치로부터 각 단계의 규칙을 통계적으로 자동 학습하여 형태소 분석 결과를 확률순으로 제공할 수 있는 효과가 있다.
또한 형태소 태그 부착 말뭉치로부터 자동 학습으로 구축할 수 있어, 국어학적 분석과 프로그램 개발을 서로 독립적으로 할 수 있는 효과가 있다.
또한 통계적 방법을 이용하여 분석 후보 중 가능성이 높은 후보수를 조절하여 선택할 수 있는 효과가 있다.
또한 복원, 분리, 태깅의 3단계를 구분하여 단계별 성능 향상이 가능하도록 하는 효과가 있다.
또한 형태소 분석 방법 및 태그 분류에 관계없이 학습 가능하며, 그에 맞는 형태소 분석기를 만들 수 있는 효과가 있다.
또한 말뭉치에 나타난 다양한 언어 현상을 쉽게 반영할 수 있는 효과가 있다.
또한 형태소 분석을 이용하는 상위 프로그램에서 필요할 경우 확률정보를 활용할 수 있는 효과가 있다.
또한 형태소 태그 부착 말뭉치가 제공될 경우, 형태소 분석기를 쉽고 빠르게 구현할 수 있는 효과가 있다.
도 1a는 본 시스템의 개요도이며, 전체적인 과정을 표시한 예시도.
도 1b는 본 발명의 실시예에 따른 형태소 분석단계를 보인 예시도.
도 2는 본 발명에 따른 말뭉치로부터 학습 데이터를 생성한 예를 보인 예시도.
도 3은 학습 자료로부터 자소 정렬을 한 후, 규칙을 추출한 예를 보여주는 도면.
도 4는 돕아의 연결 관계를 CYK 파싱 테이블로 나타낸 예시도.
본 발명에서는 형태소 품사 부착 말뭉치로부터 자동으로 형태소 분석기를 만들 수 있는 통계적 형태소 분석 방법을 제안한다. 이 방법은 품사 부착 말뭉치로부터 자동으로 형태소 복원 규칙, 형태소 분리 규칙, 형태소 태깅 규칙을 통계에 기반하여 학습하고, 이를 이용하여 확률 순으로 형태소 분석 결과를 출력한다.
따라서, 절차 작성이나 규칙 작성이 필요없고, 품사 부착 말뭉치가 주어진다면 간단한 학습 단계를 거쳐 형태소 분석기가 만들어진다. 이 방법은 세종 계획 품사 부착 말뭉치를 사용하여 실험하였고, 우수한 결과를 보였다.
하기의 설명에서 본 발명의 한국어 형태소 분석 방법의 특정 상세들이 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있는데, 이들 특정 상세들 없이 또한 이들의 변형에 의해서도 본 발명이 용이하게 실시될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진 자에게 자명할 것이다.
이하, 본 발명에 따른 바람직한 실시 예를 첨부된 도면을 참조하여 상세히 설명하되, 본 발명에 따른 동작 및 작용을 이해하는데 필요한 부분을 중심으로 설명한다.
1. 통계 기반 형태소 분석 모델
형태소 분석은 주어진 어절에 대해 형태소를 분리하면서 원형을 복원하고 그에 맞는 품사(태그)를 붙이는 문제이다. 본 발명에서는 형태소 분석 단계를 크게 3단계로 나눈다. 첫 단계는 원형 복원 단계로 활용형 어절에서 원형을 찾아내는 단계이다. 두 번째 단계는 원형 어절에 대한 형태소 단위 분리 단계이다. 세 번째 단계는 각 형태소 단위에 대해 의미 혹은 품사 표시를 붙이는 태깅이다. 이 단계는 서로 연관되어 상호작용을 통해 영향을 줄 수 있지만, 본 발명에서는 서로 독립된 단계로 보아 다음과 같은 확률 수학식 1로 표현한다.
Figure 112010051635915-pat00018
여기서, P(T|W): 형태소 분석 모델로 어절 W가 주어졌을 때, 대응되는 태그 리스트 T가 생성될 확률을 나타낸다.
P(O|W): 원형 복원 모델로 어절 W가 주어졌을 때, 원형 어절 O를 생성할 확률을 나타낸다.
P(M|O): 형태소 분리 모델로 원형 어절 O가 주어졌을 때, 분리된 형태소 단위의 리스트 M이 생성될 확률을 나타낸다.
P(T|M): 형태소 태깅 모델로 분리된 형태소 단위의 리스트 M이 주어졌을 때, 대응되는 태그 리스트 T가 생성될 확률을 나타낸다.
형태소 분석을 상기 수학식 1과 같이 정의하면, 형태소 분석과정은 문제 공간에서 최상의 해답을 찾아가는 탐색 트리와 같다.
즉, 여러 가지 가능성 중에서 최상의 확률을 갖는 형태소 분석 결과를 찾는 것이다.
도 1a는 본 시스템의 개요도이며, 전체적인 과정을 표시한 예시도이다. 이 과정은 크게 학습단계와 실행단계로 나눈다.
학습단계에서는 우선 형태소 품사부착 말뭉치에서 각각의 모델 학습에 필요한 학습자료를 분리한다. 각 학습자료는 복원용, 분리용, 태깅용 학습자료이며 이 자료들은 각각의 모델학습에 사용된다. 각 모델은 이 자료를 이용하여 학습하고, 그 결과를 출력한다. 즉, 복원모델 학습 결과, 복원규칙들과 그 확률 및 언어 모델 확률을 출력하고, 분리 모델은 형태소 모노그램 확률 및 바이그램 확률을 출력한다. 또한 태깅 모델은 형태소-태그 확률과 태그 바이그램 확률을 출력한다.
실행단계는 학습단계에서 각 모델별로 학습된 확률정보를 이용하여 복원모델, 분리모델, 태깅모델을 차례로 적용하여 처리한다. 즉, 통계기반 형태소 분석 프로그램은 세 모델을 통합하여 최적의 해를 구할 수 있도록 한다.
그 결과, 통계기반 형태소 분석 프로그램은 입력 어절을 받아 확률에 기반하여 형태소 분석을 하고 그 결과를 확률 순으로 출력한다.
도 1b는 본 발명의 실시예에 따른 형태소 분석단계를 보인 예시도로서, '했다' 어절을 원형 복원, 형태소 분리, 태깅 단계를 거쳐 분석하는 과정을 탐색 트리로 나타낸 것이다. 도 1b에서 VV는 동사를, EP는 선어말 어미를, VX는 보조용언을, EF는 종결어미를 의미한다.
1.1 원형 복원 모델
원형 복원은 현재 활용된 어절로부터 변형된 형태소를 원형으로 바꾸어 놓는 단계이다. 즉, 음운 현상으로 표층수준에서 다르게 나타난 어절들을 원형 어절로 바꾸는 것이다. 예를 들어 하기의 예 1과 같은 경우들을 볼 수 있다.
[예 1]
● 복합자소가 분리되어 나타나는 경우 (봐 -보아)
● 생략된 자소가 복원되는 경우(가 - 가아)
● 불규칙 용언의 원형이 복원되는 경우(도와 - 돕아)
● 비표준어의 사용 수정 (하시요 - 하시오)
전술한 수학식 1의 우변 첫 항에 해당되는 원형 복원 모델은 어절 W가 주어졌을 때 원형 어절 O를 찾는 것으로 확률이 최대가 되는 어절을 찾기 위한 수식은 베이스 규칙을 적용하여 아래의 수학식 2와 같이 전개된다.
Figure 112010051635915-pat00019
여기서, argmax P()는 괄호의 조건에서 최대 확률을 갖는 값을 의미한다.
수학식 2의 (2)는 또다시 2개의 확률로 구분된 것을 볼 수 있다. 첫 항은 어절이 주어졌을 때, 활용 어절로 나타난 경우를 보여준다.
이 확률은 변형이 일어난 어절에 대해서만 확률 계산을 하고, 변형이 일어나지 않는 어절은 확률이 1인 것으로 특별한 계산을 하지 않는다.
어절 O중에 있는 임의의 문자열, 즉, 원형 ok 부터 ol까지의 문자열(ok ,l로 표시)이 wi부터 wj까지의 문자열(wi ,j로 표시)로 변형되어 나타날 경우, 이 임의의 문자열들의 확률을 모두 곱한 것으로 표현할 수 있다. 이는 하기의 수학식 3과 같이 나타낼 수 있다.
Figure 112010051635915-pat00020
상기 수학식 3은 여러 가지 방법을 계산해 낼 수 있다.
본 발명에서는 변화된 문자열과 좌우 1글자를 더 포함하여 계산하도록 정했다. 이때, 좌우 1글자, 즉 좌우 문맥은 원형과 활용형이 모두 같아야 한다.
이를 수식으로 표현하고, 이에 대한 계산 방법을 나타낸 것이 하기의 수학식 4가 된다.
Figure 112010051635915-pat00021
여기서 ok 는 왼쪽 문맥, ol 은 오른쪽 문맥이고, ok +1,l-1 문자열이 wi +1,j-1로 바뀌는 것을 나타낸다.
이를 문맥 의존 다시쓰기 규칙의 확률 식으로 아래의 수학식 5와 같이 다시 표현할 수 있다.
Figure 112010051635915-pat00022
여기에서 x는 ok +1,l-1, y는 wi +1,j-1, l은 ok , r은 ol 이다. 또한 cnt는 빈도 계산 함수이고, 우변의 첫 항은 문맥 l과 r 사이에서 x가 y로 바뀔 지역적 확률이고, 두 번째 항은 전체 변환 규칙 중 이 규칙이 적용될 확률을 나타내는 전역 확률을 나타낸다.
상기 수학식 5는 태그된 말뭉치로부터 활용 형태와 원형 형태의 차이를 학습하여 계산할 수 있다.
도 2는 본 발명에 따른 말뭉치로부터 학습 데이터를 생성한 예를 보인 예시도로서, 도 2와 같이 말뭉치에서 태그된 부분을 제거하면, 원형 어절을 얻을 수 있다. 도 2에서 VV는 동사를 의미하고, EC는 연결어미를 의미한다.
마찬가지로 원형으로부터 형태소가 분리된 형태를 구하여 분리 모델의 학습 데이터로 사용하며, 분리 형태에서 태그를 붙인 형태를 추출하여 태깅 모델의 학습 데이터로 사용한다.
활용형 어절과 원형 어절을 비교하기 위해 한글 한 음절을 자소로 분리하고 이를 글자 정렬 프로그램을 이용하여 정렬한다. 글자 정렬은 두 문자열을 비교하여 가장 편집 거리 차이가 작도록 정렬하며, 서로 다른 문자와 정렬된 부분이 변이가 일어난 부분이다. 본 발명에서는 정렬 프로그램을 수정하여, 글자 변이가 일어난 부분을 좌우 문맥을 포함하여 자동 추출할 수 있도록 하였고, 이를 이용하여 생성 규칙을 자동으로 만들 수 있도록 했다.
도 3은 학습 자료로부터 자소 정렬을 한 후, 규칙을 추출한 예를 보여주는 도면으로서, 편의상 초성과 종성을 구분하지 않고 표시하였다.
즉, 원형 ‘돕아’와 활용형 ‘도와’를 자소 정렬한 후, 변형이 일어난 부분, 즉, ‘ㅂ’이 ‘ㅗ’로 바뀌는 부분을 찾아 이들의 좌 문맥 ‘ㅗ’와 우 문맥 ‘ㅏ’를 포함하여 다시쓰기 규칙 형식으로 표현한 것이다.
상기 수학식 2의 (2)에서 두 번째 항 P(O)는 원형 어절의 언어 모델에 해당한다. 이는 원형 어절이 구해졌을 경우, 확률적으로 얼마나 적합한지를 계산해 준다. 이 언어 모델도 여러 가지 방법으로 계산이 가능하나, 본 발명에서는 4-gram모델을 하기의 수학식 6과 같이 정의하여 사용하였고, 이를 계산하기 위한 수식을 하기의 수학식 7과 같이 정의하였다.
Figure 112010051635915-pat00023
Figure 112010051635915-pat00024
4-gram을 사용한 이유는 상기 수학식 3, 수학식 4에서 좌우 문맥 1글자를 포함하여 변형 확률을 구했기 때문에 각 규칙은 대개 3글자 이상으로 표현되므로, 이 보다 큰 최소 4글자 이상의 전이 확률이 필요했기 때문이다. 문자열이 4글자보다 작을 경우는 ok를 중심으로 글자 수를 줄여 계산하였다(예: P(ok|ok -2,k-1), P(ok,k+1|ok-1), P(ok|ok -1)).
1.2 형태소 분리 모델
이 모델은 상기 수학식 1의 우변에 있는 두 번째 항으로, 원형 복원 모델에서 생성된 원형 어절을 형태소 단위로 분리하는 모델이다. 이 모델을 베이스 규칙에 따라 전개하면 하기의 수학식 8과 같이 표현된다.
이는 형태소 분리 모델이 형태소가 형성될 확률과 형태소 전이 확률의 곱으로 표현된 것을 보여주는 것으로, 형태소는 원형 어절의 부분 문자열로 구성된다.
따라서 하기의 수학식 9는 원형 어절의 부분 문자열이 형태소로 존재할 때 1, 아닐 때는 0으로 계산되는 것을 보여준다. 형태소 확률은 하기의 수학식 10처럼 바이그램 전이 확률로 간략히 추정할 수 있으며, 각각의 형태소 형성 확률과 형태소 전이 확률은 말뭉치에서 출현 빈도수를 세어 하기의 수학식 11과 수학식 12처럼 계산할 수 있다.
Figure 112010051635915-pat00025
Figure 112010051635915-pat00026
Figure 112010051635915-pat00027
Figure 112010051635915-pat00028
Figure 112010051635915-pat00029
한 어절은 여러 가지 방법으로 분리될 수 있으므로, 확률을 계산하여 가장 확률이 높은 분리 방법을 찾아내야한다.
CYK(Cocke Younger Kasami) 파싱 알고리즘을 이용하면 원형 어절을 가능한 모든 조합의 형태소로 만들고 이들 사이의 연결 확률을 쉽게 계산할 수 있다.
도 4에서는 ‘돕아’(자소로는 ‘ㄷㅗㅂㅏ’)의 연결 관계를 CYK 파싱 테이블로 나타냈고, 그 중 일부의 연결가능성을 타원과 선으로 표시한 것이다. 도 4에서는 편의상 초성과 종성을 구분하지 않고 표시하였다.
이 방법이 기존의 CYK 파싱을 이용한 형태소 분석 방법과 다른 점은, 첫째 입력 어절을 그대로 쓰지 않고 원형 복원한 어절을 사용한 점과, 둘째 형태소간의 연결 관계를 단순한 접속 관계로만 표현하지 않고, 확률로 계산하여 처리했다는 점이다.
형태소 분리 모델은 기본적으로 모든 형태소가 등록되어야 형태소 분리에 성공한다. 한국어의 경우, 특히 복합명사가 많이 사용되고 있는데, 미등록된 복합명사 처리가 필요하다.
예를 들어 '가격'과 '인상'이 각각 등록되어 있으나 '가격인상'은 미등록어일 경우, 전이 확률의 상기 수학식 12가 '0'이 되어 분리에 실패한다.
이를 해결하기 위해 mi와 mj가 각각 등록되고, mimj(mi와 mj가 붙여 쓴 형태)가 등록되어 있지 않을 경우. 하기의 수학식 13으로 확률을 계산하여 처리한다.
Figure 112010051635915-pat00030
기본적으로 어절 분리에 실패할 경우, 어절 전체를 한 단위로 제시한다. 그 확률 값은 하기의 수학식 14와 같이 주어진다.
Figure 112010051635915-pat00031
1.3 태깅 모델
이 모델은 한 어절 내에 있는 각각의 형태소 단위에 대해 적절한 태그를 부착한다. 주어진 형태소 열에 대해 적절한 태그를 붙이는 방법은 많이 알려져 있다. 본 발명에서는 바이그램의 일반적인 모델을 그대로 사용하였다. 태깅은 주어진 형태소 열(M = m1,n)에 대응되는 확률이 최대인 태그 열(T = t1 ,n)을 구하는 것이다.
베이스 규칙을 적용하고, 각 형태소가 서로 독립적이며 형태소는 주어진 태그에서 결정된다고 가정하면 하기의 수학식 15와 같은 전개를 통해 표현할 수 있다.
Figure 112010051635915-pat00032
또한 상기 수학식 15에 포함된 두 항의 확률은 하기의 수학식 16과 수학식 17로 각각 계산할 수 있다.
Figure 112010051635915-pat00033
Figure 112010051635915-pat00034
미등록 형태소(unknown_mi)는 말뭉치에 나타난 최대 빈도의 태그(tmaxfreq)를 부여하고 확률은 하기의 수학식 18로 계산하였다.
Figure 112010051635915-pat00035
2. 실험 및 결과
실제 실험을 위해 전술한 확률 모델을 로그(log)값을 취하여 계산하였다. 로그 값으로 바꾸어 계산하면, 매우 큰 수 혹은 매우 적은 수에 대한 계산이 가능하며 확률 곱이 로그 확률 덧셈으로 바뀌어 계산이 편리한 점이 있다.
모델을 학습하기 위한 학습 데이터로 세종프로젝트의 형태소 태그 부착 말뭉치를 사용하였다. 세종 말뭉치의 파일을 차례로 일련 번호를 부여한 후, 10으로 나눈 나머지가 같은 번호의 파일들을 한 그룹으로 하여 전체 10 그룹을 만들었고, 첫번째 그룹을 외부(미학습 데이터) 테스트 집합으로, 두 번째 그룹을 내부(학습 데이터) 테스트 집합으로, 두 번째부터 10번째 그룹을 학습 데이터 집합으로 사용하였다.
평가는 순수 한글 어절만을 대상으로 하였다. 숫자나 영문자 등은 별도의 오토마타 처리 등을 통해 쉽게 분리 및 태깅이 가능하다. 문장 기호(마침표, 쉼표, 따옴표 등)가 포함된 어절은 문장 기호를 제거하여 순수 한글 어절로 처리하였다. 이렇게 전처리를 통해 얻은 순수 한글 어절 수는 총 11,787,916 어절이며 이 중 학습 데이터는 10,649,670 어절이고, 내부 테스트 집합은 1,284,390 어절, 외부 테스트 집합은 1,138,246 어절이었다. 이 통계를 정리한 것이 하기의 표1이다.
어절수 비율
총 어절수 11,787,916 100.0%
학습 데이터 10,649,670 90.3%
내부 테스트 데이터 1,284,390 10.9%
외부 테스트 데이터 1,138,246 9.7%
학습 결과 표 2와 같이 규칙, 언어 그램, 태그, 태그 바이그램, 형태소, 형태소 바이그램을 얻었다. 이것은 기존 형태소 해석기의 사전과 결합 정보 등에 해당된다. 복원 변환 규칙 중 출현 패턴 빈도가 1 이하이거나, 말뭉치 편집 오류 등으로 인해 잘못 추출될 가능성이 큰 것은 학습 과정에서 자동으로 제외되도록 하였다. (현재는 표층 어휘가 원형 어휘로 변환될 때 그 길이가 4 바이트보다 차이가 클 경우 제외하였다.) 이는 말뭉치에서 나타난 오류가 규칙에 반영되어 전체 성능을 떨어뜨리는 것을 막기 위한 것이다.
학습된 정보 종류 크기(개수)
복원 변환 규칙 1,529
복원의 언어 그램수 63,228
태그 67
태그 바이그램 816
형태소 146,987
형태소 바이그램 589,696
형태소 분석에 대한 평가 방법은 여러 가지가 있다. 형태소 분석을 태거나 구문분석의 전단계로 보고 평가할 경우, 형태소 분석기는 한 어절에 대해 가능한 모든 경우의 형태소 분석을 제공해야 한다.
따라서 형태소 분석기는 다수의 분석 결과를 내고, 그 결과가 어느 정도 정답 집합에 포함되는지를 정확도와 재현율로 평가한다. 그러나 대량의 데이터를 대상으로 할 경우, 이를 평가하기 위한 정답 집합을 만드는 작업이 수월치 않으므로 다른 방법을 이용하여 처리한다.
예를 들어, 여러 종류의 형태소 분석기가 출력한 결과 중 과반수의 분석기가 내놓은 결과를 다수의 정답으로 간주하여 평가하거나, 태그된 하나의 결과를 하나의 정답으로 하여 실험용 형태소 분석기가 K개의 최적 후보(K-best)를 내고 그 정답이 포함되었는가를 측정하는 ‘태깅 정답 제시율’로 평가한다.
정답 여부에 대한 평가는 어절 단위 평가와 형태소 단위 평가가 있다. 어절 단위 평가는 한 어절에 대한 형태소 단위 분석이 모두 일치해야 맞는 것으로 평가하는 방법이다. 형태소 단위 평가는 한 어절에 대한 형태소 단위 분석 중 일치하는 형태소 단위의 갯수를 평가하는 방법으로 과생성된 형태소나 미생성된 형태소 개수를 세고 이를 편집 거리로 계산한다.
본 실험에서는 말뭉치에 태그된 결과를 하나의 정답으로 보고, K개의 후보를 출력하여 평가하며, 어절 단위 평가를 하였다.
이를 나타낸 것이 아래의 수학식 19이다. 후보 K는 일반적으로 형태소 분석기가 출력하는 갯수에 근접한 5개 및 10개로 평가하였다.
Figure 112010051635915-pat00036
통계 기반 형태소 분석은 전술한 대로 3단계로 구분되어 처리되므로, 전체적인 평가는 앞 단계의 성능에 영향을 받게 된다.
따라서, 각각의 단계가 독립적으로 어떤 성능을 갖는지를 평가하기 위해서 각각의 단계에서 올바른 입력을 주고 이 결과를 분석하였다.
복원의 경우, 하나의 어절에서 여러 가지 원형이 나올 수 있으며, 분리의 경우에도 여러 가지 방법으로 형태소 분리가 가능하고, 태그의 경우도 분리된 각 형태소에 대해 여러 가지 태그 부착이 가능하다.
그러나, 각 모듈들은 전체 평가와 마찬가지로 실제 테스트 데이터에 나타난 하나의 결과만을 정답으로 처리하여 평가하였다. 각 단계별 평가 수식은 아래의 수학식 22, 수학식 23, 수학식 24와 같으며, 평가 결과는 아래의 표 3과 같다.
Figure 112010051635915-pat00037
Figure 112010051635915-pat00038
Figure 112010051635915-pat00039
Figure 112010051635915-pat00040
지금까지 본 발명에 따라 통계 기반 한국어 형태소 분석 모델을 제안하고 실험하였다.
이러한 본 발명의 한국어 형태소 분석 방법의 장점은 다음과 같다.
첫째, 형태소 태그 부착 말뭉치로부터 자동 학습으로 구축할 수 있어, 국어학적 분석과 프로그램 개발을 서로 독립적으로 할 수 있다.
둘째, 통계적 방법을 이용하여 분석 후보 중 가능성이 높은 후보수를 조절하여 선택할 수 있다.
셋째, 복원, 분리, 태깅의 3단계를 구분하여 단계별 성능 향상이 가능하다.
넷째, 형태소 분석 방법 및 태그 분류에 관계없이 학습 가능하며, 그에 맞는 형태소 분석기를 만들 수 있다.
다섯째, 말뭉치에 나타난 다양한 언어 현상을 쉽게 반영할 수 있다.
여섯째, 형태소 분석을 이용하는 상위 프로그램에서 필요할 경우 확률정보를 활용할 수 있다.
일곱째, 형태소 태그 부착 말뭉치가 제공될 경우, 형태소 분석기를 쉽고 빠르게 구현할 수 있다.
또한 통계적 모델은 세종 계획 형태소 부착 말뭉치로부터 자동으로 학습하였고, 이를 평가해 본 결과 10개의 최상 후보 출력시 평균 98.01%의 정답 재현율을 보였다. 더욱이 대량의 테스트 데이터를 사용한 점과 순수 한글 어절에 대한 평가를 했다는 점에서 그 성능 평가가 실질적으로도 매우 우수하다고 할 수 있다.
또한 통계 기반 방법이 어떤 말뭉치가 주어지더라도 유연하게 적용될 수 있으며, 바로 형태소 분석기를 만들 수 있기 때문에, 국어학적 분석과 프로그램 개발을 독립적으로 할 수 있어 매우 편리할 것이다. 또한 형태소 분석 결과가 확률(품사 전이 확률, 품사 확률 등)과 함께 제공되므로, 확률을 주로 이용하는 상위 단계의 응용 프로그램인 태거나 구문 분석기에서 이 정보를 활용할 수 있을 것이다.
현재 통계 모델은 형태소에 나타나는 현상을 명확하게 3개의 단계로 구분하여 이를 복원, 분리, 태깅 모델로 만들었으므로 각 단계별로 성능 향상을 꾀할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (15)

  1. 말뭉치(언어데이터)로부터 한국어 형태소를 분석하는 방법에 있어서,
    주어진 어절로부터 형태소를 분리하여 원형 어절이 생성될 확률을 획득하는 원형 복원 모델 획득 단계;
    상기 원형 어절이 주어지고, 그 원형어절을 형태소 분리하여 분리된 형태소 단위의 리스트가 생성될 확률을 획득하는 형태소 분리 모델 획득 단계;
    상기 분리된 형태소 단위의 리스트가 주어지고, 그 분리된 형태소 단위의 리스트에 대응되는 태그(품사) 리스트가 생설될 확률을 획득하는 형태소 태깅 모델 획득 단계; 및
    상기 원형 복원 모델, 형태소 분리 모델 및 태깅 모델을 곱셈연산하여 형태소 분석 모델을 획득하는 단계를 수행하되,
    상기 원형 복원 모델 획득단계, 형태소 분리 모델 획득 단계 및 형태소 태깅 모델 획득단계시 확률적으로 가능성이 가장 높은 후보를 우선적으로 표시하여 통계적으로 형태소를 분석할 수 있도록 하는 것을 특징으로 하는 한국어 형태소 분석 방법.
  2. 제1 항에 있어서, 상기 형태소 분석 모델은,
    아래와 같은 수학식 1로 표현할 수 있는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 1)
    Figure 112010051635915-pat00041


    여기서, P(T|W): 형태소 분석 모델로 어절 W가 주어졌을 때, 대응되는 태그 리스트 T가 생성될 확률을 나타내고,
    P(O|W): 원형 복원 모델로 어절 W가 주어졌을 때, 원형 어절 O를 생성할 확률을 나타내고,
    P(M|O): 형태소 분리 모델로 원형 어절 O가 주어졌을 때, 분리된 형태소 단위의 리스트 M이 생성될 확률을 나타내며,
    P(T|M): 형태소 태깅 모델로 분리된 형태소 단위의 리스트 M이 주어졌을 때, 대응되는 태그 리스트 T가 생성될 확률을 나타냄.
  3. 제1 항에 있어서, 상기 원형 복원 모델 획득 단계는,
    어절 W가 주어졌을때 원형 어절 O를 찾는 것으로, 확률이 최대가 되는 어절을 찾기 위한 수식으로 아래의 수학식 2를 이용하는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 2)
    Figure 112010051635915-pat00042

    여기서, argmax P()는 괄호의 조건에서 최대 확률을 갖는 값을 의미함.
  4. 제1 항에 있어서, 상기 원형 복원 모델 획득 단계는,
    어절 O중에 원형 ok(왼쪽 문맥)부터 ol(오른쪽 문맥)까지의 문자열(Ok,l로 표시)이 Wi부터 Wj까지의 문자열(Wi,j로 표시)로 변형되어 나타날 경우, 이 임의의 문자열들의 확률을 모두 곱한 것으로 아래의 수학식 3과 같이 나타낼 수 있는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 3)
    Figure 112010051635915-pat00043

  5. 제4 항에 있어서, 상기 원형 복원 모델 획득 단계는,
    변화된 문자열과 좌우 1글자를 더 포함하여 계산하되, 좌우 1글자의 좌우 문맥은 원형과 활용형이 모두 같아야 하는 것으로, 아래의 수학식 4와 같이 나타낼 수 있는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 4)
    Figure 112010051635915-pat00044

    여기서 ok 는 왼쪽 문맥, ol 은 오른쪽 문맥이고, ok +1,l-1 문자열이 wi +1,j-1로 바뀌는 것을 의미함.
  6. 제5 항에 있어서, 상기 원형 복원 모델 획득 단계는,
    수학식 4를 아래의 수학식 5와 같이 다시 표현할 수 있는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 5)
    Figure 112010051635915-pat00045


    여기서, x는 ok +1,l-1, y는 wi +1,j-1, l은 ok , r은 ol 를 의미하고, cnt는 빈도 계산 함수이고, 우변의 첫 항은 문맥 l과 r 사이에서 x가 y로 바뀔 지역적 확률이고, 두 번째 항은 전체 변환 규칙 중 이 규칙이 적용될 확률을 나타내는 전역 확률을 의미함.
  7. 제1 항에 있어서, 상기 형태소 분리 모델 획득 단계는,
    형태소가 형성될 확률과 형태소 전이 확률의 곱으로 표현되는 것으로, 아래의 수학식 6과 같이 나타낼 수 있는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 6)
    Figure 112010051635915-pat00046

  8. 제7 항에 있어서, 상기 형태소 분리 모델 획득 단계는,
    원형 어절의 부분 문자열이 형태소로 존재할때 1, 아닐 때는 0으로 계산되는 것을 수식으로 표현하면 아래의 수학식 7와 같이 나타낼 수 있으며, 형태소 확률은 아래의 수학식 8과 같이 바이그램 전이 확률로 간략히 추정할 수 있는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 7)
    Figure 112010051635915-pat00047

    (수학식 8)
    Figure 112010051635915-pat00048

  9. 제7 항에 있어서, 상기 형태소 분리 모델 획득 단계는,
    각각의 형태소 형성 확률과 형태소 전이 확률은 말뭉치에서 출현 빈도수를 세어 아래의 수학식 9와 수학식 10과 같이 나타낼 수 있는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 9)
    Figure 112010051635915-pat00049

    (수학식 10)
    Figure 112010051635915-pat00050

    여기서, mi는 i번째 형태소, mj는 j번째 형태소를 의미하고, cnt는 빈도 계산 함수를 의미함.
  10. 제7 항에 있어서, 상기 형태소 분리 모델 획득 단계는,
    i번째 형태소와 j번째 형태소가 각각 등록되고, i번째 형태소와 j번째 형태소를 서로 붙여쓴 형태소가 등록되어 있지 않은 경우에 아래의 수학식 11을 이용하여 확률을 계산하는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 11)
    Figure 112010051635915-pat00051

    여기서, mi는 i번째 형태소, mj는 j번째 형태소를 의미하고, cnt는 빈도 계산 함수를 의미함.
  11. 제7 항에 있어서, 상기 형태소 분리 모델 획득 단계는,
    어절 분리에 실패할 경우에 아래의 수학식 12을 이용하여 어절 전체를 한 단위로 제시하는 확률을 계산하는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 12)
    Figure 112010051635915-pat00052

    여기서 P(unknown_mi)는 미등록 형태소의 확률을 의미함.
  12. 제1 항에 있어서, 상기 형태소 태깅 모델 획득 단계는,
    주어진 형태소 열에 대응되는 확률이 최대인 태그 열을 구하는 것으로, 각 형태소가 서로 독립적이며, 형태소가 주어진 태그에서 결정되면 아래의 수학식 13과 같이 나타낼 수 있는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 13)
    Figure 112010051635915-pat00053

  13. 제12 항에 있어서, 상기 형태소 태깅 모델 획득 단계는,
    아래의 수학식 14와 수학식 15로
    Figure 112010051635915-pat00054
    의 확률을 계산하는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 14)
    Figure 112010051635915-pat00055

    (수학식 15)
    Figure 112010051635915-pat00056

  14. 제12 항에 있어서, 상기 형태소 태깅 모델 획득 단계는,
    미등록 형태소(unknown_mi)에 대해 말뭉치에 나타난 최대 빈도의 태그(tmaxfreq)를 부여하고, 아래와 같은 수학식 16을 이용하여 계산하는 것을 특징으로 하는 한국어 형태소 분석 방법.
    (수학식 16)
    Figure 112010051635915-pat00057

  15. 컴퓨터에 주어진 어절로부터 형태소를 분리하여 원형 어절이 생성될 확률을 획득하는 원형 복원 모델 획득 단계;
    상기 원형 어절이 주어지고, 그 원형어절을 형태소 분리하여 분리된 형태소 단위의 리스트가 생성될 확률을 획득하는 형태소 분리 모델 획득 단계;
    상기 분리된 형태소 단위의 리스트가 주어지고, 그 분리된 형태소 단위의 리스트에 대응되는 태그(품사) 리스트가 생설될 확률을 획득하는 형태소 태깅 모델 획득 단계; 및
    상기 원형 복원 모델, 형태소 분리 모델 및 태깅 모델을 곱셈연산하여 형태소 분석 모델을 획득하는 단계를 포함하되,
    상기 원형 복원 모델 획득단계, 형태소 분리 모델 획득 단계 및 형태소 태깅 모델 획득단계시 확률적으로 가능성이 가장 높은 후보를 우선적으로 표시하여 통계적으로 형태소를 분석할 수 있도록 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020100077308A 2010-08-11 2010-08-11 한국어 형태소 분석 방법 KR101072460B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100077308A KR101072460B1 (ko) 2010-08-11 2010-08-11 한국어 형태소 분석 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100077308A KR101072460B1 (ko) 2010-08-11 2010-08-11 한국어 형태소 분석 방법

Publications (1)

Publication Number Publication Date
KR101072460B1 true KR101072460B1 (ko) 2011-10-11

Family

ID=45032661

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100077308A KR101072460B1 (ko) 2010-08-11 2010-08-11 한국어 형태소 분석 방법

Country Status (1)

Country Link
KR (1) KR101072460B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170000201A (ko) * 2015-06-23 2017-01-02 (주)아크릴 딥-러닝 기반 형태소 분석 장치와 형태소 분석 애플리케이션의 작동 방법
KR101941692B1 (ko) * 2017-10-18 2019-01-23 서강대학교산학협력단 한국어 개체명 인식방법 및 장치
KR20190019683A (ko) * 2017-08-18 2019-02-27 동아대학교 산학협력단 품사 분포와 양방향 LSTM CRFs를 이용한 음절 단위 형태소 분석기 및 분석 방법
KR20190066859A (ko) 2017-12-06 2019-06-14 주식회사 데이터스트림즈 한국어 형태소 분석방법
KR20210023640A (ko) * 2019-08-23 2021-03-04 울산대학교 산학협력단 의미 추상화를 이용한 전이 기반 한국어 의존관계 분석 시스템
CN112699887A (zh) * 2020-12-30 2021-04-23 科大讯飞股份有限公司 一种获得数学对象标注模型、数学对象标注的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"한국어 형태소 분석을 위한 3단계 확률 모델", 이재성, 정보과학회논문지 소프트웨어 및 응용 제38권 제5호, 2011년 5월

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170000201A (ko) * 2015-06-23 2017-01-02 (주)아크릴 딥-러닝 기반 형태소 분석 장치와 형태소 분석 애플리케이션의 작동 방법
KR101702055B1 (ko) * 2015-06-23 2017-02-13 (주)아크릴 딥-러닝 기반 형태소 분석 장치와 형태소 분석 애플리케이션의 작동 방법
KR20190019683A (ko) * 2017-08-18 2019-02-27 동아대학교 산학협력단 품사 분포와 양방향 LSTM CRFs를 이용한 음절 단위 형태소 분석기 및 분석 방법
KR101997783B1 (ko) 2017-08-18 2019-07-08 동아대학교 산학협력단 품사 분포와 양방향 LSTM CRFs를 이용한 음절 단위 형태소 분석기 및 분석 방법
KR101941692B1 (ko) * 2017-10-18 2019-01-23 서강대학교산학협력단 한국어 개체명 인식방법 및 장치
KR20190066859A (ko) 2017-12-06 2019-06-14 주식회사 데이터스트림즈 한국어 형태소 분석방법
KR20210023640A (ko) * 2019-08-23 2021-03-04 울산대학교 산학협력단 의미 추상화를 이용한 전이 기반 한국어 의존관계 분석 시스템
KR102339487B1 (ko) 2019-08-23 2021-12-15 울산대학교 산학협력단 의미 추상화를 이용한 전이 기반 한국어 의존관계 분석 시스템
CN112699887A (zh) * 2020-12-30 2021-04-23 科大讯飞股份有限公司 一种获得数学对象标注模型、数学对象标注的方法和装置

Similar Documents

Publication Publication Date Title
CN110489760B (zh) 基于深度神经网络文本自动校对方法及装置
Kumar et al. Part of speech taggers for morphologically rich indian languages: a survey
US8185376B2 (en) Identifying language origin of words
CN106599032B (zh) 一种结合稀疏编码和结构感知机的文本事件抽取方法
TW448381B (en) Automatic segmentation of a text
Sen et al. Bangla natural language processing: A comprehensive analysis of classical, machine learning, and deep learning-based methods
CN111353306B (zh) 基于实体关系和依存Tree-LSTM的联合事件抽取的方法
WO2008107305A2 (en) Search-based word segmentation method and device for language without word boundary tag
KR101072460B1 (ko) 한국어 형태소 분석 방법
Na Conditional random fields for Korean morpheme segmentation and POS tagging
Anand Kumar et al. A sequence labeling approach to morphological analyzer for tamil language
KR20140056753A (ko) 구문 전처리 기반의 구문 분석 장치 및 그 방법
CN110110334B (zh) 一种基于自然语言处理的远程会诊记录文本纠错方法
US20200311345A1 (en) System and method for language-independent contextual embedding
Kübler et al. Part of speech tagging for Arabic
Abate et al. Development of Amharic morphological analyzer using memory-based learning
Liyanapathirana et al. Sinspell: A comprehensive spelling checker for sinhala
CN111401012A (zh) 文本纠错方法、电子设备及计算机可读存储介质
Pal et al. Vartani Spellcheck--Automatic Context-Sensitive Spelling Correction of OCR-generated Hindi Text Using BERT and Levenshtein Distance
Vinitha et al. Error detection in indic ocrs
Uchimoto et al. Morphological analysis of the Corpus of Spontaneous Japanese
Sen et al. Bangla natural language processing: A comprehensive review of classical machine learning and deep learning based methods
Vasiu et al. Enhancing tokenization by embedding romanian language specific morphology
Soumya et al. Development of a POS tagger for Malayalam-an experience
Al-Khatib et al. A New Enhanced Arabic Light Stemmer for IR in Medical Documents.

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141001

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151006

Year of fee payment: 5