KR20130045547A - 작문 자동 평가를 위한 예제기반 오류 검출 시스템 및 방법 - Google Patents

작문 자동 평가를 위한 예제기반 오류 검출 시스템 및 방법 Download PDF

Info

Publication number
KR20130045547A
KR20130045547A KR1020110109812A KR20110109812A KR20130045547A KR 20130045547 A KR20130045547 A KR 20130045547A KR 1020110109812 A KR1020110109812 A KR 1020110109812A KR 20110109812 A KR20110109812 A KR 20110109812A KR 20130045547 A KR20130045547 A KR 20130045547A
Authority
KR
South Korea
Prior art keywords
morpheme
error
suitability
unit
sequence
Prior art date
Application number
KR1020110109812A
Other languages
English (en)
Other versions
KR101522522B1 (ko
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 KR1020110109812A priority Critical patent/KR101522522B1/ko
Priority to PCT/KR2012/008749 priority patent/WO2013062302A1/ko
Priority to CN201280034880.3A priority patent/CN103688254B/zh
Publication of KR20130045547A publication Critical patent/KR20130045547A/ko
Priority to US14/097,209 priority patent/US9542383B2/en
Application granted granted Critical
Publication of KR101522522B1 publication Critical patent/KR101522522B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/253Grammatical analysis; Style critique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/44Statistical methods, e.g. probability models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

본 발명은 인터넷이나 다른 언어 전달 매체를 통해 다양한 문체를 포함하는 용례문을 수집하여 예제 기반 데이터베이스를 구축하고, 작문한 입력 문장이 입력되면 입력 문장을 형태소 단위로 분리하고 분리한 형태소로부터 일정 윈도우 사이즈로 묶은 형태소열을 생성한 다음 각 형태소열을 예제 기반 데이터베이스에서 나타나는 형태소열의 빈도수를 이용하여 분석함으로써 각 형태소에 대한 오류를 검출하고 오류에 대한 수정안을 제시해 주는 작문 자동 평가를 위한 예제 기반 오류 검출 시스템 및 방법을 제공한다.

Description

작문 자동 평가를 위한 예제기반 오류 검출 시스템 및 방법{EXAMPLE BASED ERROR DETECTION SYSTEM AND METHOD FOR ESTIMATING WRITING AUTOMATICALLY}
본 발명은 작문 자동 평가를 위한 오류 검출에 관한 것으로서, 상세하게는 작문한 입력 문장을 형태소 단위로 분리하고 분리한 형태소로부터 임의의 윈도우 사이즈로 묶은 형태소열을 생성한 다음 각 형태소열을 예제 기반 데이터베이스에 검색하여 각 형태소와 그 형태소에 대한 형태소열이 함께 정렬되는 빈도수를 분석함으로써 예제에 기반하여 각 형태소에 대한 오류를 검출하고 검출한 오류의 수정안을 제시해 주는 작문 자동 평가를 위한 예제 기반 오류 검출 시스템 및 방법에 관한 것이다.
최근 대학 입시 시험 및 국내 대기업들이 성적 위주의 평가에서 말하기/쓰기 위주의 실제 영어 능력 평가로 변화하고 있다.
즉, 영어 의사소통 능력 신장을 위해 교육과학 기술부가 NEAT(National English Ability Test, 인터넷을 기반으로 한 듣기, 독해, 말하기, 쓰기 평가)를 개발하여 2010년부터 시범 시행하고 있으며, 향후 공무원 시험(2014년 예정)이나 수능 영어 시험(2016년 예정) 등을 대체할 계획이다.
이러한 영어 능력 평가에서 쓰기 능력을 평가하기 위해 작문 자동 평가 시스템을 도입하고 있다.
작문 자동 평가 시스템은 이미 작문한 문장을 문법적으로 분석하여 문법에 맞게 제대로 작성되었는지 오류 검출을 통해 평가한다. 이때, 작문한 문장을 분석하는 과정에서는 문장에 대한 형태소를 분석하고 품사를 태깅하는 과정이 필수적으로 요구되는데, 종래의 형태소 분석 및 품사 태깅 장치는 주변 단어들의 어휘, 품사, 의미 및 문맥적인 공기 관계가 복합적으로 고려되지 않고 단순히 품사열 정보에만 의존하기 때문에 그 정확성이 크게 떨어지는 문제점이 있다.
이러한 문제점을 해결하기 위해서, 주변 어휘 규칙과 어휘 문맥 정보를 구축한 어휘 사전, 언어 모델 등을 이용하여 어휘의 규칙 정보와 통계 정보를 상호 보완적으로 적용함으로써 오류 검출 및 교정 방법을 제안하고 있다.
특히, 언어 모델은 문법적인 통계 정보에 근거하여 단어간의 연결 관계를 확률로 표현한 것으로, 주어진 영역의 많은 텍스트 문장으로부터 쉽게 추출이 가능하고 오류 검출의 정확성이 높다. 그러나 실제 언어는 정형화된 규칙이라기 보다는 시간 및 장소에 따라 자연히 변하는 것으로 문법적인 통계 정보에 어긋나는 경우가 많다. 예를 들어, 함축어, 인터넷 용어, 새로 신설되는 현대어 등은 문법에 위배되지만 실제 생활에 많이 쓰이는 어휘로서, 문법적인 통계 정보에 근거하면 오류로 검출된다.
따라서, 작문 평가시 복잡한 규칙을 지속적으로 생성하지 않고서도 현재 사람들이 주로 사용하는 패턴을 적용하여 오류 검출의 오류를 최소화하고 검출된 오류에 대해서는 정확하게 교정할 수 있는 방안이 필요하다.
본 발명은 상기의 필요성에 의해 창안된 것으로서, 인터넷이나 다른 언어 전달 매체를 통해 다양한 문체를 포함하는 용례문을 수집하여 예제 기반 데이터베이스를 구축하고, 작문한 입력 문장이 입력되면 입력 문장을 형태소 단위로 분리하고 분리한 형태소로부터 임의의 윈도우 사이즈로 묶은 형태소열을 생성한 다음 각 형태소열을 예제 기반 데이터베이스에 검색하여 각 형태소와 그 형태소에 대한 형태소열이 함께 정렬되는 빈도수를 분석함으로써 예제에 기반하여 각 형태소에 대한 오류를 검출하고 검출한 오류의 수정안을 제시해 주는 작문 자동 평가를 위한 예제 기반 오류 검출 시스템 및 방법을 제공하는 데 그 목적이 있다.
이를 위하여 본 발명의 제1 측면에 따르면, 본 발명의 작문 자동 평가를 위한 오류 검출 시스템은, 언어 전달 매체를 통해 다양한 문체를 포함하는 용례문을 수집하고 수집한 용례문을 형태소 단위로 분리하여 예제 기반 색인 데이터베이스에 구축하는 용례 구축 장치; 및 작문한 입력 문장이 입력되면 상기 입력 문장을 형태소 단위로 분리하고 분리한 각 형태소를 기준으로 임의의 윈도우(n-window) 사이즈로 묶은 형태소열을 생성하며 생성한 형태소열별로 상기 예제 기반 색인 데이터베이스를 검색하여 각 형태소가 해당 형태소열과 함께 정렬되는 빈도수에 따라 오류를 검출하는 오류 검출 장치를 포함하는 것을 특징으로 한다.
본 발명의 제2 측면에 따르면, 본 발명의 오류 검출 장치는, 작문한 입력 문장을 문장 및 형태소 단위로 분리하는 입력문장 분리부; 상기 형태소에 대하여 품사를 태깅하는 품사 태깅부; 및 품사를 태깅한 각 형태소에 대하여 임의의 윈도우(n-window) 사이즈로 묶은 형태소열을 생성하고 생성한 형태소열별로 예제 기반 색인 데이터베이스를 검색하여 각 형태소가 해당 형태소열과 함께 정렬되는 빈도수에 따라 오류 구간을 검출하는 오류 검출부를 포함하는 것을 특징으로 한다.
본 발명의 제3 측면에 따르면, 본 발명의 작문 자동 평가를 위한 오류 검출 방법은, 작문한 입력 문장을 문장 및 형태소 단위로 분리하는 단계; 상기 형태소에 대하여 품사를 태깅하는 단계; 상기 품사를 태깅한 각 형태소에 대하여 순방향 또는 역방향에 위치한 형태소들을 임의의 윈도우(n-window) 사이즈로 묶은 형태소열을 생성하는 단계; 생성한 형태소열별로 예제 기반 색인 데이터베이스를 검색하여 각 형태소가 해당 형태소열과 함께 정렬되는 빈도수에 따라 오류 구간을 검출하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따르면, 언어의 정형적인 규칙을 기반으로 한 것이 아니라 자연스러운 표현에 의한 문장(용례문)을 수집하여 구축하고, 이를 기반으로 입력 문장을 분석하여 오류를 검출하며 필요에 따라서는 그 오류에 대한 수정안을 제시해 줌으로써 작문 평가의 성능을 향상시키는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 작문 자동 평가를 위한 오류 검출 시스템의 구성을 나타낸 도면이다.
도 2는 본 발명의 실시 예에 따른 오류 검출 시스템의 용례 구축 장치에 대한 상세도이다.
도 3은 본 발명의 실시 예에 따른 오류 검출 시스템의 오류 검출 장치에 대한 상세도이다.
도 4는 도 3의 오류 검출부에 대한 상세도이다.
도 5는 도 3의 각 구성요소에서 수행하는 기능을 설명하기 위한 예시도이다.
도 6은 도 3의 오류 검출부에서 수행한 결과값을 보여주는 예시도이다.
도 7은 본 발명의 실시 예에 따른 작문 자동 평가를 위해 예제 기반 데이터베이스를 구축하는 방법을 나타낸 흐름도이다.
도 8은 본 발명의 실시 예에 따른 작문 자동 평가를 위해 오류를 검출하는 방법을 나타낸 흐름도이다.
도 9은 도 8의 오류 검출 과정에 대한 상세도이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 실시 예를 상세하게 설명한다. 본 발명의 구성 및 그에 따른 작용 효과는 이하의 상세한 설명을 통해 명확하게 이해될 것이다. 본 발명의 상세한 설명에 앞서, 동일한 구성요소에 대해서는 다른 도면 상에 표시되더라도 가능한 동일한 부호로 표시하며, 공지된 구성에 대해서는 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 구체적인 설명은 생략하기로 함에 유의한다.
설명에 앞서, 본 발명에서 언급하는 용례(用例, example)는 사전적 의미로 '쓰고 있는 예'를 말하는 것으로, 언어학적 분야에서는 특정 단어가 사용되는 예문을 말한다. 특히, 본 발명에서 언급하는 용례는 정형적인 문법구조에 맞추어 문장이 구성된 코퍼스(corpus)가 아니라, 정형적인 규칙에 벗어나는 문장으로서 실생활에서 사용되고 있는 문장, 다양한 문체를 포함한 문장 등을 모두 포함한다.
도 1은 본 발명의 실시 예에 따른 작문 자동 평가를 위한 오류 검출 시스템의 구성을 나타낸 도면이다.
본 발명의 실시 예에 따른 오류 검출 시스템은 크게 용례 구축 장치(200)와 오류 검출 장치(100)로 구분할 수 있다.
용례 구축 장치(200)는 언어 전달 매체로부터 노출되는 다수의 문장셋(sentence set)으로부터 용례문을 수집하여 오류 검출에 활용할 대용량의 색인 데이터베이스(180)를 구축한다. 이렇게 구축된 색인 데이터베이스(180)는 다양한 예제를 기반으로 한 통계적 정보가 저장된다.
오류 검출 장치(100)는 용례 구축 장치(200)를 통해 구축된 색인 데이터베이스(180)를 활용하여 분석부에서 입력되는 입력 문장에 대한 오류를 검출하고 그 검출한 오류를 표시한다. 또한, 오류 검출 장치(100)는 검출한 오류에 대하여 수정안을 제시하여 오류 교정 기능을 수행한다.
이러한 오류 검출 장치(100)는 예제 기반의 통계적 정보를 기반으로 입력 문장에 존재하는 오류를 검출한다는 것에 특징이 있다. 또한, 오류 검출시 입력 문장을 통째로 검색하지 않고, 임의의 윈도우(window) 단위로 구간을 묶어 구간 단위로 통계적 정보를 비교 및 검색하는 n-그램 검색 방식을 이용하는 것에 특징이 있다.
일반적으로 n-그램 검색 방식은 두 개의 윈도우 단위로 구간을 분류하는 바이그램(bigram), 세 개의 윈도우 단위로 구간을 분류하는 트라이그램(trigram) 등이 있으며, 이들은 윈도우 사이즈에 따라 한 개 또는 두 개의 이전 문맥에 대한 발생 빈도수를 고려한다.
구체적으로, 용례 구축 장치(200)는 도 2와 도시한 바와 같이 구성된다.
도 2를 참조하면, 용례 구축 장치(200)는 용례 수집부(210), 용례 분리부(220), n-그램 생성부(230), 구축부(240)를 포함한다.
용례 수집부(210)는 인터넷이나 뉴스, 신문 기사 등의 언어 전달 매체를 통해 노출되는 방대한 문장셋으로부터 용례문을 수집한다. 이때, 용례문은 실생활에서 사용되고 있는 문장, 다양한 문체를 포함한 문장 등을 모두 포함함을 전제로 한다. 뉴스나 신문 기사는 문장의 오류가 다른 매체에 비해 적으므로 이를 활용한다.
이러한 용례 수집부(210)는 수집하고자 원하는 키워드들을 미리 입력해 두고 해당 언어 전달 매체를 통해 노출되는 문장셋을 모니터링하면서, 입력해 둔 키워드가 적용된 용례문이 존재하면 이를 자동 수집할 수 있다.
용례 분리부(220)는 용례 수집부(210)를 통해 수집한 용례문을 문장 및 형태소 단위로 분리한다. 문장 분리는 여러 문장을 갖는 용례문을 마침표 또는 물음표, 느낌표 등의 마침 기호를 통해 문장 단위로 분리하고, 형태소 분리는 문장 단위로 분리한 각 용례문을 형태소 단위로 분리하는 것을 의미한다.
n-그램 생성부(230)는 용례 분리부(220)를 통해 분리한 각 형태소에 대하여 임의의 윈도우(n-window) 사이즈로 묶은 형태소열을 생성한다. 이때, 형태소열은 각 형태소를 기준으로 순방향 또는 역방향에 위치한 형태소들을 임의의 윈도우 사이즈로 묶어 생성한다. 예를 들어, "I want to go to school." 용례문으로부터 3-윈도우 사이즈를 이용하여 생성한 형태소열은 형태소 I에 대하여 "I want to", 형태소 want에 대하여 "want to go", " (null) I want", 형태소 to에 대하여 "to go to", "I want to"와 같이 생성할 수 있다. 이는 색인 데이터베이스(180)에 구축시 용례문을 문장 전체뿐만 아니라 형태소열 단위로 저장하기 위함이다.
구축부(240)는 n-그램 생성부(230)에서 생성한 형태소열과 해당 용례문을 매칭하여 색인 데이터베이스(도 1의 180)에 작성한다.
따라서, 상기와 같이 구성되는 용례 구축 장치(200)는 도 7에 도시한 바와 같은 과정을 통해 구축한다.
먼저, 용례 수집부(210)에서 인터넷이나 뉴스, 신문 기사 등의 언어 전달 매체를 통해 노출되는 방대한 문장셋으로부터 원하는 용례문을 수집한다(S100). 이때, 원하는 용례문을 수집하기 위해 사전에 수집하고자 원하는 키워드들을 미리 입력해 두면 해당 언어 전달 매체를 통해 노출되는 문장셋을 모니터링하면서 입력해 둔 키워드가 적용된 용례문이 존재하면 이를 자동 수집할 수 있다.
이후, 용례 분리부(220)가 용례 수집부(210)를 통해 수집한 각 용례문을 문장 및 형태소로 분리한다(S110).
이후, n-그램 생성부(230)가 각 형태소에 대하여 임의의 윈도우 사이즈로 묶은 형태소열을 생성한다(S120).
이후, 구축부(240)가 이전 단계에서 생성한 형태소열과 해당 용례문을 매칭하여 색인 데이터베이스에 작성한다(S130).
도 3은 본 발명의 실시 예에 따른 오류 검출 시스템의 오류 검출 장치에 대한 상세도이다.
본 발명의 실시 예에 따른 오류 검출 장치(100)는 입력문장 분리부(110), 품사 태깅부(120), 오류 검출부(140), 오류 교정부(150), 품사 사전(160), 색인 데이터베이스(180)를 포함한다.
입력문장 분리부(110)는 작문한 문장을 입력 받으며, 입력 받은 문장(입력 문장)을 문장 및 형태소 단위로 분리한다.
여기서, 문장 분리는 앞서 용례 구축 장치(200)에서 설명한 바와 같이 여러 문장을 갖는 용례문에서 마침표나 물음표, 느낌표 등의 마침 기호를 통해 문장간을 분리하는 것을 의미한다. 형태소 분리는 문장 단위로 분리한 각 용례문을 형태소 단위로 분리하는 것을 의미한다. 영작의 경우 언어 특성상 조사가 단어 옆에 정렬되지 않기 때문에 단어가 곧 형태소가 된다.
품사 태깅부(120)는 입력문장 분리부(110)에서 분리한 각 형태소에 대하여 해당 품사를 품사 사전(160)에 저장된 품사 정보에 기초하여 태깅한다. 품사는 명사, 동사, 전치사, 형용사, 부사, 관사, 감탄사 등을 포함한다.
예를 들어, 도 5를 참조하면 입력문장(a)이 "I would like to live in the city."가 입력되면 입력문장 분리부(110)는 (b)와 같이 I, would, like, to, live, in, the, city, . 로 분리하고, 품사 태깅부(120)는 (c)와 같이 분리된 각 형태소에 대하여 차례대로 명사(I), 동사(would), 동사(like), 전치사(to), 동사(live), 전치사(in), 관사(the), 명사(city) 등의 품사를 태깅한다.
다시 도 3을 참조하여, 오류 검출부(140)는 품사 태깅부(120)에서 태깅한 각 형태소에 대하여 임의의 윈도우 사이즈로 묶은 형태소열을 생성하고 생성한 형태소열별로 색인 데이터베이스(180)를 검색하여 각 형태소가 해당 형태소열과 함께 정렬되는 빈도수에 따라 오류를 검출한다. 이러한 오류 검출부(140)는 입력 문장을 통째로 검색하기 보다는 일정 구간으로 나누어서 검색함으로써 오류 검출의 성능이 빠르면서 통째로 검색하는 분석 방법에 비해 오류 검출도 정확하게 이루어질 수 있다.
오류 교정부(150)는 오류 검출부(140)를 통해 검색한 형태소열과 함께 정렬되는 각 형태소를 추출하여, 특히 빈도수가 높은 순위의 형태소를 우선순위로 추출하여, 검출한 오류에 대한 수정안으로 제시한다.
이처럼, 오류 교정부(150)는 수정안을 제시하는 방법으로서 오류 검출 방식으로 적용한 n-그램 검색 방식을 활용하여 오류 구간의 형태소만 제시할 수 있지만, 전체 문장에 대한 유사 문장을 통째로 검색하여 가장 유사한 상위 k개에 대한 유사 문장을 단순 제시하는 방법을 이용할 수 있다.
도 4는 오류 검출부(140)에 대한 상세 구성도이다.
구체적으로, 오류 검출부(140)는 n-그램 생성부(141), 검색부(143), 적합성 계산부(145), 오류 판단부(147)를 포함한다.
n-그램 생성부(141)는 용례 구축 장치(도 2의 200)에서의 n-그램 생성부(도 2의 230)와 마찬가지로, 품사 태깅부(도 2의 120)에서 태깅한 각 형태소를 기준으로 순방향 또는 역방향에 위치한 형태소들을 임의의 윈도우 사이즈로 묶어 형태소열을 생성한다.
특히, 본 발명에 따른 n-그램 생성부(141)는 각 형태소를 기준으로 순방향으로 위치한 형태소들을 임의의 윈도우 사이즈로 묶은 순방향 형태소열, 역방향으로 위치한 형태소들을 임의의 윈도우 사이즈로 묶은 역방향 형태소열을 각각 생성할 수 있다.
예를 들면, 도 5의 (d)-①에 나타난 바와 같이 입력 문장에서 형태소 'live'에 대하여 생성할 수 있는 순방향 형태소열을 보면, 먼저 형태소 'live'를 기준으로 최소 2-윈도우에서 5-윈도우 단위로 묶은 형태소열의 예를 보여주고 있다. 즉, 2-윈도우 단위로 묶은 형태소열은 'to live'이고 3-윈도우 단위로 묶은 형태소열은 'like to live'이며, 이후 하나씩 윈도우 사이즈를 증가한 형태소열은 'would like to live', 'I would like to live'가 된다. 따라서 형태소 'live'를 포함한 형태소열에서 'to' 다음에 'live'가 올 수 있는 빈도수, 또는 'like to', 'would like to', 'I would like to' 다음에 'live'가 올 수 있는 빈도수를 각각 추출할 수 있다.
반대로, (d)의 ②에 나타난 바와 같이 형태소 'live'를 기준으로 역방향으로 위치한 형태소(in, the, city)에 대하여 임의의 윈도우 사이즈로 묶은 형태소열을 생성할 수 있다. 2-윈도우 단위로 묶은 역방향 형태소열은 'live in', 3-윈도우 단위로 묶은 역방향 형태소열은 'live in the', 4-윈도우 단위로 묶은 역방향 형태소열은 'live in the city'로 생성할 수 있다.
이때, n-그램 생성부(141)는 미리 윈도우 사이즈를 설정해 두고, 설정한 윈도우 사이즈에 해당하는 형태소열을 생성하여 오류 검출에 활용할 수 있다. 세밀한 검출을 하기 위해서는 바이그램, 트라이그램과 같이 윈도우 사이즈를 가변하여 각각의 형태소열을 생성하고 분석하는 것이 좋지만, 이럴 경우 색인 데이터베이스에 저장되는 형태소열에 대한 용량도 크게 증가하게 되고 분석 또한 복잡해 질 수 있으므로, 하나의 윈도우 사이즈만 고려한 형태소열을 생성하여 분석하는 것도 가능하다.
검색부(143)는 n-그램 생성부(141)에서 생성한 형태소열이 다수의 용례문으로 구축된 색인 데이터베이스(도 3의 180)에 존재하는지 입력 문장에 포함되어 있는 각 형태소별로 검색한다.
적합성 계산부(145)는 검색부(143)를 통해 검색된 형태소열로부터 각 형태소가 함께 정렬되는 빈도수를 추출하고 추출한 빈도수를 근거로 적합성을 계산한다. 적합성 계산은 각 형태소에 대한 형태소열의 빈도수를 나타낸 점수(score)를 나타낸다.
이때, 적합성 계산부(145)는 n-그램 생성부(141)에서 생성한 형태소열이 순방향, 역방향에 대하여 모두 존재할 경우 하나의 형태소에 대하여 순방향 형태소열, 역방향 형태소열에 대한 적합성을 각각 계산하고, 각각의 적합성을 통합한 통합 적합성을 계산할 수 있다.
또한, 적합성 계산부(145)는 순방향 형태소열, 역방향 형태소열에 대한 적합성을 계산할 때 각 형태소에 대한 형태소열의 빈도수에 따라 가중치를 다르게 적용할 수 있다. 예를 들어, 역방향 형태소열에서 2-윈도우 단위로 묶은 형태소열 'live in'과, 3-윈도우 단위로 묶은 형태소열 'live in the', 4-윈도우 단위로 묶은 형태소열 'live in the city' 등이 존재할 경우 윈도우 수가 많은 형태소열에 더 높은 가중치를 부여함으로써 많은 정보를 참고하여 적합성을 결정하도록 한다.
오류 판단부(147)는 적합성 계산부(145)에서 계산한 각 형태소에 대한 적합성을 이용하여 그래프를 산출하고, 산출한 그래프에서 각 형태소에 대한 적합성 점수가 임계치보다 낮거나 또는 일정 이상으로 급격히 떨어지는 구간이 있는지를 판단하여 오류 구간을 검출한다.
이때, 오류 판단부(147)는 순방향에 대한 적합성, 역방향에 대한 적합성, 통합 적합성으로 구분하여 각각의 그래프를 산출할 수 있다.
도 6에 도시된 예를 살펴보면, (a)는 입력 문장이고, (b)는 입력 문장에 대하여 각 형태소별로 계산한 적합성을 나타낸 것이다.
(b)에 나타난 score_f(Wm)은 각 형태소에 대하여 순방향 형태소열과 함께 정렬될 수 있는 빈도수를 나타낸 순방향 적합성이고, score_b(Wm)는 각 형태소에 대하여 역방향 형태소열과 함께 정렬될 수 있는 빈도수를 나타낸 역방향 적합성이며, score(Wm)은 순방향 적합성과 역방향 적합성을 평균화한 통합 적합성이다.
(c)는 (b)에 나타난 통합 적합성을 이용하여 산출한 그래프를 나타낸 것이다. 이 그래프를 통해 임계치(threshold)이하로 낮아진 A부근에서 즉, 형태소 live 주위에서 단어 누락 등으로 오류가 존재함을 알 수 있다.
그럼 이상의 오류 검출 장치를 이용하여 오류를 검출하는 방법에 대하여 설명하기로 한다.
도 8은 본 발명의 실시 예에 따른 작문 자동 평가를 위해 오류를 검출하는 방법을 나타낸 흐름도이고, 도 9은 도 8의 오류 검출 과정에 대한 상세도이다.
여기서, 오류 검출에 활용하는 예제 기반의 데이터베이스는 이미 용례 구축 장치를 통해 구축된 것을 전제로 하고, 오류 검출 장치에서 수행하는 동작을 위주로 설명한다.
먼저 도 8을 참조하면, 오류 검출 장치가 작문한 입력 문장을 입력 받으면 입력받은 문장을 문장 및 형태소 단위로 분리한다(S200).
이후, 오류 검출 장치가 품사 사전을 기반으로 각 형태소에 해당 품사를 태깅한다(S210).
이후, 오류 검출 장치가 품사를 태깅한 각 형태소에 대하여 임의의 윈도우 사이즈로 묶은 형태소열을 생성하고 생성한 형태소열별로 예제 기반 색인 데이터베이스를 검색, 비교하여 오류를 검출한다(S220). 구체적인 오류 검출은 도 9에서 자세히 설명하기로 한다.
이후, 검출된 오류에 대하여 수정안을 제시하는데, 예제 기반 색인 데이터베이스를 통해 검색된 형태소열에서 상기 형태소열과 함께 정렬되는 형태소를 빈도수가 높은 순부터 추출하여 제시하거나 또는 전체 문장을 문장 단위로 검색하여 가장 유사한 문장 몇 개를 추출하여 제시하여 교정을 유도할 수 있다(S230).
다음으로 도 9를 참조하면, 오류 검출 단계(S220)는 구체적으로, 입력 받은 문장의 각 형태소에 대하여 임의의 윈도우 사이즈로 묶은 형태소열을 생성한다(S221). 형태소열은 앞서 설명한 바와 같이 각 형태소를 기준으로 순방향으로 묶은 순방형 형태소열, 역방향으로 묶은 역방향 형태소열로 구분하여 각각 생성할 수 있다.
이후, 생성한 형태소열이 색인 데이터베이스에 존재하는지 각 형태소별로 검색한다(S222).
이후, 검색한 형태소열과 각 형태소가 함께 정렬되는 빈도수를 추출하고 추출한 빈도수를 근거로 적합성을 계산한다(S223, S224). 적합성은 각 형태소가 해당 형태소열과 정렬되는 것이 적합한지에 대한 정도를 점수로 환산하여 나타낸 것으로, 이와 관련되는 계산 방법은 앞에서 설명한 바와 동일하다.
이후, 계산한 적합성 점수를 그래프로 산출하고 산출한 그래프를 활용하여 오류를 검출할 수 있다(S225). 예를 들어, 그래프에서 각 형태소에 대한 적합성 점수가 임계치보다 낮거나 또는 일정 이상으로 급격히 떨어지는지를 판단하여 오류 구간을 검출한다.
이상의 설명은 본 발명을 예시적으로 설명한 것에 불과하며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술적 사상에서 벗어나지 않는 범위에서 다양한 변형이 가능할 것이다. 따라서 본 발명의 명세서에 개시된 실시 예들은 본 발명을 한정하는 것이 아니다. 본 발명의 범위는 아래의 특허청구범위에 의해 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술도 본 발명의 범위에 포함되는 것으로 해석해야 할 것이다.
종래 작문 자동 평가 시스템은 어휘 규칙과 어휘 문맥 정보를 기반으로 구축된 어휘 사전, 언어 모델 등을 이용하여 오류를 검출함으로써 정형적인 규칙에 벗어나는 작문에 대해서는 평가가 제대로 이루어지지 않았으나, 본 발명은 인터넷이나 다른 매체를 통해 사용되고 있는 용례문을 수집하여 예제 기반 데이터베이스를 구축하고, 작문한 입력 문장이 입력되면 입력 문장을 형태소 단위로 분리하고 분리한 형태소로부터 일정 윈도우 사이즈로 묶은 형태소열을 생성한 다음 각 형태소열을 예제 기반 데이터베이스에서 나타나는 형태소열의 빈도수를 분석함으로써 각 형태소에 대한 오류를 검출하여 작문에 대한 자동 평가의 성능을 향상시킬 수 있다. 이러한 점에서 본 발명은 단순히 평가 알고리즘으로 적용하는 것이 아닌, 향후 대학 입시 시험이나 국내 대기업 등이 수행하는 영어 능력 평가, 주관식 평가 등에 적용하여 자동 평가가 가능하도록 함으로써 산업상 이용 가능성이 있는 유용한 발명이다.
100: 오류 검출 장치 200: 용례 구축 장치
210: 용례 수집부 220: 용례 분리부
230: n-그램 생성부 240: 구축부
110: 입력문장 분리부 120: 품사 태깅부
140: 오류 검출부 150: 오류 교정부
160: 품사 사전 180: 색인 데이터베이스
141: n-그램 생성부 143: 검색부
145: 적합성 계산부 147: 오류 판단부

Claims (13)

  1. 언어 전달 매체를 통해 다양한 문체를 포함하는 용례문을 수집하고 수집한 용례문을 형태소 단위로 분리하여 예제 기반 색인 데이터베이스에 구축하는 용례 구축 장치; 및
    작문한 입력 문장이 입력되면 상기 입력 문장을 형태소 단위로 분리하고 분리한 각 형태소를 기준으로 임의의 윈도우(n-window) 사이즈로 묶은 형태소열을 생성하며 생성한 형태소열별로 상기 예제 기반 색인 데이터베이스를 검색하여 각 형태소가 해당 형태소열과 함께 정렬되는 빈도수에 따라 오류를 검출하는 오류 검출 장치
    를 포함하는 것을 특징으로 하는 작문 자동 평가를 위한 오류 검출 시스템.
  2. 작문한 입력 문장을 문장 및 형태소 단위로 분리하는 입력문장 분리부;
    상기 형태소에 대하여 품사를 태깅하는 품사 태깅부; 및
    품사를 태깅한 각 형태소에 대하여 임의의 윈도우(n-window) 사이즈로 묶은 형태소열을 생성하고 생성한 형태소열별로 예제 기반 색인 데이터베이스를 검색하여 각 형태소가 해당 형태소열과 함께 정렬되는 빈도수에 따라 오류 구간을 검출하는 오류 검출부
    를 포함하는 것을 특징으로 하는 오류 검출 장치.
  3. 제 2 항에 있어서,
    상기 오류 검출부는
    상기 품사를 태깅한 각 형태소를 기준으로 순방향 또는 역방향에 위치한 형태소들을 임의의 윈도우 사이즈로 묶은 형태소열을 생성하는 N-그램 생성부;
    상기 N-그램 생성부에서 생성한 형태소열이 다수의 용례문으로 구축된 예제 기반 데이터베이스에 존재하는지 각 형태소별로 검색하는 검색부;
    상기 검색부를 통해 검색된 형태소열로부터 각 형태소가 함께 정렬되는 빈도수를 추출하고 추출한 빈도수를 근거로 적합성을 계산하는 적합성 계산부; 및
    상기 적합성 계산부를 통해 계산한 적합성 점수가 임계치보다 낮거나 또는 상기 적합성 점수가 일정 이상으로 급격히 떨어지는지를 판단하여 오류 구간을 검출하는 오류 판단부
    를 포함하는 것을 특징으로 하는 오류 검출 장치.
  4. 제 3 항에 있어서,
    상기 N-그램 생성부는
    각 형태소를 기준으로 순방향으로 위치한 형태소들을 임의의 윈도우 사이즈로 묶은 순방향 형태소열, 역방향으로 위치한 형태소들을 임의의 윈도우 사이즈로 묶은 역방향 형태소열을 각각 생성하는 것을 특징으로 하는 오류 검출 장치.
  5. 제 4 항에 있어서,
    상기 적합성 계산부는
    상기 N-그램 생성부에서 생성한 순방향 형태소열, 역방향 형태소열에 대하여 각각 적합성을 계산하고, 각각의 적합성을 반영한 통합 적합성을 계산하는 것을 특징으로 하는 오류 검출 장치.
  6. 제 3 항 또는 제 5 항에 있어서,
    상기 적합성 계산부는
    상기 검색부를 통해 검색된 형태소열로부터 각 형태소가 함께 정렬되는 빈도수에 따라 가중치를 다르게 적용하여 적합성을 계산하는 것을 특징으로 하는 오류 검출 장치.
  7. 제 2 항에 있어서,
    상기 검색부를 통해 검색된 형태소열에 대한 빈도수가 높은 형태소를 추출하여 상기 오류 검출부를 통해 검출한 오류 구간에 대한 수정안으로 제시하는 오류 교정부
    더 포함하는 것을 특징으로 하는 오류 검출 장치.
  8. 작문한 입력 문장을 문장 및 형태소 단위로 분리하는 단계;
    상기 형태소에 대하여 품사를 태깅하는 단계;
    상기 품사를 태깅한 각 형태소에 대하여 순방향 또는 역방향에 위치한 형태소들을 임의의 윈도우(n-window) 사이즈로 묶은 형태소열을 생성하는 단계;
    생성한 형태소열별로 예제 기반 색인 데이터베이스를 검색하여 각 형태소가 해당 형태소열과 함께 정렬되는 빈도수에 따라 오류 구간을 검출하는 단계
    를 포함하는 것을 특징으로 하는 작문 자동 평가를 위한 오류 검출 방법.
  9. 제 8 항에 있어서,
    상기 예제 기반 색인 데이터베이스를 통해 검색된 형태소열에서 상기 형태소열과 함께 정렬되는 빈도수가 높은 형태소를 추출하여 상기 오류 구간에 대한 수정안으로 제시하는 단계
    를 더 포함하는 것을 특징으로 하는 작문 자동 평가를 위한 오류 검출 방법.
  10. 제 8 항에 있어서,
    상기 형태소열을 생성하는 단계는
    상기 각 형태소를 기준으로 순방향에 위치한 형태소들을 임의의 윈도우 사이즈로 묶은 순방향 형태소열, 역방향에 위치한 형태소들을 임의의 윈도우 사이즈로 묶은 역방향 형태소열을 각각 생성하는 것을 특징으로 하는 작문 자동 평가를 위한 오류 검출 방법.
  11. 제 8 항 또는 제 10 항에 있어서,
    상기 오류 구간을 검출하는 단계는
    상기 생성한 형태소열이 상기 예제 기반 색인 데이터베이스에 존재하는지 각 형태소별로 검색하는 단계;
    상기 예제 기반 색인 데이터베이스로부터 검색된 형태소열과 각 형태소가 함께 정렬되는 빈도수를 추출하고 추출한 빈도수를 근거로 적합성을 계산하는 단계; 및
    계산한 적합성 점수가 임계치보다 낮거나 또는 상기 적합성 점수가 일정 이상으로 급격히 떨어지는지를 판단하여 오류 구간을 검출하는 단계
    을 포함하는 것을 특징으로 하는 작문 자동 평가를 위한 오류 검출 방법.
  12. 제 11 항에 있어서,
    상기 적합성을 계산하는 단계는
    상기 형태소열을 생성하는 단계에서 생성된 형태소열이 순방향 및 역방향에 대한 형태소열을 모두 포함한 경우,
    상기 순방형 형태소열과 역방향 형태소열에 대하여 각 형태소가 함께 정렬되는 빈도수를 추출하고 추출한 빈도수를 근거로 각각의 적합성을 계산하며, 각각의 적합성을 반영한 통합 적합성을 계산하는 것을 특징으로 하는 작문 자동 평가를 위한 오류 검출 방법.
  13. 제 11 항에 있어서,
    상기 적합성을 계산하는 단계는
    상기 예제 기반 색인 데이터베이스로부터 검색된 형태소열로부터 각 형태소가 함께 정렬되는 빈도수에 따라 가중치를 다르게 적용하여 적합성을 계산하는 것을 특징으로 하는 작문 자동 평가를 위한 오류 검출 방법.
KR1020110109812A 2011-10-26 2011-10-26 작문 자동 평가를 위한 예제 기반 오류 검출 시스템 및 방법 KR101522522B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020110109812A KR101522522B1 (ko) 2011-10-26 2011-10-26 작문 자동 평가를 위한 예제 기반 오류 검출 시스템 및 방법
PCT/KR2012/008749 WO2013062302A1 (ko) 2011-10-26 2012-10-24 작문 자동 평가를 위한 예제기반 오류 검출 시스템, 이를 위한 방법 및 이를 위한 오류 검출 장치
CN201280034880.3A CN103688254B (zh) 2011-10-26 2012-10-24 用于自动评估写作的基于示例的错误检测系统、方法及错误检测设备
US14/097,209 US9542383B2 (en) 2011-10-26 2013-12-04 Example-based error detection system for automatic evaluation of writing, method for same, and error detection apparatus for same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110109812A KR101522522B1 (ko) 2011-10-26 2011-10-26 작문 자동 평가를 위한 예제 기반 오류 검출 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20130045547A true KR20130045547A (ko) 2013-05-06
KR101522522B1 KR101522522B1 (ko) 2015-05-27

Family

ID=48168064

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110109812A KR101522522B1 (ko) 2011-10-26 2011-10-26 작문 자동 평가를 위한 예제 기반 오류 검출 시스템 및 방법

Country Status (4)

Country Link
US (1) US9542383B2 (ko)
KR (1) KR101522522B1 (ko)
CN (1) CN103688254B (ko)
WO (1) WO2013062302A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106156051B (zh) * 2015-03-27 2019-08-13 深圳市腾讯计算机系统有限公司 构建人名语料识别模型的方法及装置
US10180989B2 (en) 2015-07-24 2019-01-15 International Business Machines Corporation Generating and executing query language statements from natural language
US10332511B2 (en) * 2015-07-24 2019-06-25 International Business Machines Corporation Processing speech to text queries by optimizing conversion of speech queries to text
CN106528749B (zh) * 2016-11-04 2019-04-30 福建天泉教育科技有限公司 基于写作训练的语句推荐方法及其系统
US10628737B2 (en) * 2017-01-13 2020-04-21 Oath Inc. Identifying constructive sub-dialogues
US10741093B2 (en) 2017-06-09 2020-08-11 Act, Inc. Automated determination of degree of item similarity in the generation of digitized examinations
US10665122B1 (en) 2017-06-09 2020-05-26 Act, Inc. Application of semantic vectors in automated scoring of examination responses
KR102268816B1 (ko) * 2019-06-24 2021-06-24 국민대학교산학협력단 문장 데이터베이스를 이용한 작문 보조 시스템

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774193B2 (en) * 2006-12-05 2010-08-10 Microsoft Corporation Proofing of word collocation errors based on a comparison with collocations in a corpus
US7991609B2 (en) * 2007-02-28 2011-08-02 Microsoft Corporation Web-based proofing and usage guidance
KR100877697B1 (ko) * 2007-05-04 2009-01-08 건국대학교 산학협력단 글짓기 검사모듈 및 검사방법
EP2183685A4 (en) * 2007-08-01 2012-08-08 Ginger Software Inc AUTOMATIC CONTEXT-RELATED LANGUAGE CORRECTION AND EXPANSION USING AN INTERNET CORP
CN101206673A (zh) * 2007-12-25 2008-06-25 北京科文书业信息技术有限公司 网络搜索过程中关键词的智能纠错系统及方法
CN101470700A (zh) * 2007-12-28 2009-07-01 日电(中国)有限公司 文本模板生成器、文本生成设备、文本检验设备及其方法
KR100892004B1 (ko) * 2008-05-21 2009-04-07 주식회사 청담러닝 영어 작문 학습 시스템에서, 동사 중심의 자동 문법오류검출 및 교정정보 제공 장치 및 그 방법
CN101655837B (zh) * 2009-09-08 2010-10-13 北京邮电大学 一种对语音识别后文本进行检错并纠错的方法
KR100978223B1 (ko) * 2009-12-04 2010-08-26 윤여훈 어학학습 컨텐츠 생성방법
JP5284990B2 (ja) * 2010-01-08 2013-09-11 インターナショナル・ビジネス・マシーンズ・コーポレーション キーワードの時系列解析のための処理方法、並びにその処理システム及びコンピュータ・プログラム

Also Published As

Publication number Publication date
US20140093845A1 (en) 2014-04-03
CN103688254A (zh) 2014-03-26
WO2013062302A1 (ko) 2013-05-02
KR101522522B1 (ko) 2015-05-27
CN103688254B (zh) 2016-11-16
US9542383B2 (en) 2017-01-10

Similar Documents

Publication Publication Date Title
KR101629415B1 (ko) 문법 오류 검출 방법 및 이를 위한 오류검출장치
US9959776B1 (en) System and method for automated scoring of texual responses to picture-based items
KR102033435B1 (ko) 자연어 질의응답 시스템과 방법 및 패러프라이즈 모듈
KR101522522B1 (ko) 작문 자동 평가를 위한 예제 기반 오류 검출 시스템 및 방법
US11182435B2 (en) Model generation device, text search device, model generation method, text search method, data structure, and program
US9904675B2 (en) Automatic question generation from natural text
US9600469B2 (en) Method for detecting grammatical errors, error detection device for same and computer-readable recording medium having method recorded thereon
KR101475284B1 (ko) 작문 자동 평가를 위해 샬로우 파서를 이용한 오류 검출 장치 및 방법
US9953027B2 (en) System and method for automatic, unsupervised paraphrase generation using a novel framework that learns syntactic construct while retaining semantic meaning
CN110147546B (zh) 一种英语口语的语法校正方法及装置
Fachrurrozi et al. Frequent term based text summarization for bahasa indonesia
US9984063B2 (en) System and method for automatic, unsupervised paraphrase generation using a novel framework that learns syntactic construct while retaining semantic meaning
Comas et al. Sibyl, a factoid question-answering system for spoken documents
Duran et al. Some issues on the normalization of a corpus of products reviews in Portuguese
Huang et al. A robust estimation scheme of reading difficulty for second language learners
Bhaskar et al. A hybrid question answering system for Multiple Choice Question (MCQ)
Banerjee et al. Multiple Choice Question (MCQ) Answering System for Entrance Examination.
Wolk et al. Unsupervised tool for quantification of progress in L2 English phraseological
Huang et al. Characterizing the influence of features on reading difficulty estimation for non-native readers
Sharma et al. Improving existing punjabi grammar checker
Buongiovanni et al. Lost in Text: A Cross-Genre Analysis of Linguistic Phenomena within Text
Şahin et al. ANALYSIS OF LEXICO-SYNTACTIC PATTERNS FOR ANTONYM PAIR EXTRACTION FROM ATurkish CORPUS
Béchet et al. Retrieving the syntactic structure of erroneous asr transcriptions for open-domain spoken language understanding
Chakraborty et al. N-Gram based Assamese Question Pattern Extraction and Probabilistic Modelling
Navas et al. Evaluation of automatic break insertion for an agglutinative and inflected language

Legal Events

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

Payment date: 20180427

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190502

Year of fee payment: 5