KR102182248B1 - System and method for checking grammar and computer program for the same - Google Patents
System and method for checking grammar and computer program for the same Download PDFInfo
- Publication number
- KR102182248B1 KR102182248B1 KR1020200072707A KR20200072707A KR102182248B1 KR 102182248 B1 KR102182248 B1 KR 102182248B1 KR 1020200072707 A KR1020200072707 A KR 1020200072707A KR 20200072707 A KR20200072707 A KR 20200072707A KR 102182248 B1 KR102182248 B1 KR 102182248B1
- Authority
- KR
- South Korea
- Prior art keywords
- grammar
- word
- words
- attribute
- checking system
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/189—Automatic justification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/232—Orthographic correction, e.g. spell checking or vowelisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
Description
실시예들은 문법 검사 시스템 및 방법과 이를 위한 컴퓨터 프로그램에 관한 것이다. 보다 상세하게는, 실시예들은 적용되는 문법 규칙에 따라 품사를 상세하게 재분류한 단어의미사전 데이터베이스를 이용하여 정확한 문법 규칙을 적용할 수 있으며, 각각의 문법 규칙을 소정의 프로토콜(protocol)에 의한 함수 형태로 표현함으로써 자동화된 처리가 가능하도록 한 문법 검사 시스템에 관련된 기술에 대한 것이다. The embodiments relate to a grammar checking system and method and a computer program therefor. More specifically, the embodiments may apply accurate grammar rules using a word semantic dictionary database in which parts of speech are reclassified in detail according to the applied grammar rules, and each grammar rule can be applied according to a predetermined protocol. It is about the technology related to the grammar checking system that enables automated processing by expressing it in the form of a function.
문법 검사는, 좁게는 단순한 철자 및 맞춤법의 교정에 필요한 정보를 제공하는 것으로부터, 넓게는 문서, 혹은 문장의 효과적인 작성을 지원하기 위해서 문체상 오류를 검사하거나, 바른 용어/표현을 제공하거나, 구두점 등 문장부호의 사용에 대한 적합성을 알려주거나, 오류에 대한 교정 정보 또는 단어의 사용 용례 등을 제공하는 것을 말한다. Grammar checks, from providing information necessary for the correction of simple spelling and spelling in a narrow way, to check for stylistic errors in order to support effective writing of documents or sentences in a broad sense, provide correct terms/expressions, or punctuation marks. It means to inform the suitability of the use of punctuation marks, etc., or to provide correction information for errors or usage examples of words.
현대 사회에서 거의 대부분의 문서 작성 작업은 컴퓨터에 의해 이루어지므로, 문서 편집, 탁상 출판, 전자 서식 등에 이용되는 문서 작성 프로그램도 문법 검사 기능을 포함하도록 개발이 이루어져 왔다. 예를 들어, 공개특허공보 제10-2008-0032281호는 자동으로 띄어쓰기, 철자법, 표준어 표기 등을 변환하는 프로그램을 개시한다. Since most of the document creation work in the modern society is performed by a computer, document creation programs used for document editing, desktop publishing, and electronic forms have also been developed to include a grammar check function. For example, Unexamined Patent Publication No. 10-2008-0032281 discloses a program that automatically converts spaces, spelling, and standard word notation.
그러나, 종래의 문서 작성 프로그램에서 제공되는 문법 검사 기능은 한국어 문법의 다양한 용례를 충분히 반영하고 있지 못하여, 검사 결과가 부정확한 경우가 많은 점에서 분명한 한계를 가져 왔다. 특히, 한국어에서는 동일한 품사의 단어들이라도 의미에 따라 적용되는 문법 규칙이 서로 상이한 경우가 많으나, 종래의 5언 9품사 구분을 통한 문법 검사만으로는 단어의 의미 구분에 따른 문법 오류를 탐지할 수 없고, 그에 따라 문서의 퇴고는 대부분 사람에 의한 수작업으로 이루어져 왔다. However, the grammar check function provided in the conventional document writing program does not sufficiently reflect various uses of Korean grammar, and thus has a clear limitation in that the test result is often inaccurate. In particular, in Korean, grammar rules applied according to the meaning of words of the same part of speech are often different from each other, but grammar errors due to the classification of the meaning of words cannot be detected only by the grammar test through the conventional 5 words and 9 parts of speech classification. Accordingly, most of the retrieval of documents has been done manually by humans.
최근에는 IT 기술의 발달과 더불어 머신러닝(machine learning) 또는 빅데이터(big data)를 이용한 기술들이 새롭게 등장하고 있다. 그러나, 머신러닝 방식은 문법의 논리적 측면에 대한 고려 없이 다수의 문장을 비교하여 유사한 문장이나 어절로 변환하는 것이므로, 검사의 정확성을 보장하기 어려운 문제가 있다. 또한, 빅데이터를 이용한 기술은 표준어와 오탈자를 일대일로 구축하고 오탈자를 표준어로 변경하는 정도에 그치고 있어, 어간의 분석이 요구되는 복잡한 문법 검사에는 활용되기 어렵다. In recent years, with the development of IT technology, technologies using machine learning or big data are emerging. However, since the machine learning method compares multiple sentences and converts them into similar sentences or words without considering the logical aspect of grammar, it is difficult to guarantee the accuracy of the test. In addition, the technology using big data is limited to constructing standard words and typos one-to-one and changing typos to standard words, so it is difficult to be used for complex grammar tests that require stem analysis.
본 발명의 일 측면에 따르면, 동일한 품사의 단어들이라도 의미에 따라 적용되는 문법 규칙이 서로 상이하므로, 종래 기술에 따른 단어의 성분 및 품사 구분을 넘어 단어의 의미성질을 기반으로 적용되는 문법규칙이 동일한 단어들을 상세하게 재분류하고, 이를 기반으로 규칙 기반의 문법 검사를 수행할 수 있는 문법 검사 시스템 및 방법과 이를 위한 컴퓨터 프로그램을 제공할 수 있다. According to an aspect of the present invention, since grammar rules applied according to the meaning of words of the same part of speech are different from each other, the grammar rules applied based on the semantic properties of words beyond the component and part of speech classification of words according to the prior art A grammar check system and method capable of reclassifying identical words in detail and performing a rule-based grammar check based on this, and a computer program therefor may be provided.
본 발명의 일 실시예에 따른 문법 검사 시스템은, 복수 개의 단어 및 상기 복수 개의 단어 각각에 상응하는 속성정보를 포함하는 단어의미사전 데이터베이스와, 상기 속성정보를 이용하여 정의된 처리 규칙 정보를 저장하도록 구성된 저장 모듈; 상기 단어의미사전 데이터베이스에 기초하여, 입력 데이터로부터 하나 이상의 문장을 추출하며, 추출된 하나 이상의 문장으로부터 하나 이상의 단어 또는 어절을 분리하도록 구성된 입력 모듈; 분리된 하나 이상의 단어 또는 어절에 대하여, 상기 속성정보를 이용하여 정의된 문법 처리 규칙을 적용함으로써 문법 오류를 탐지하도록 구성된 문법 검사 모듈; 및 상기 문법 검사 모듈에 의해 탐지된 오류에 대한 정보를 제공하도록 구성된 출력 모듈을 포함한다.The grammar checking system according to an embodiment of the present invention is configured to store a word semantic dictionary database including a plurality of words and attribute information corresponding to each of the plurality of words, and processing rule information defined using the attribute information. Configured storage module; An input module configured to extract one or more sentences from input data, and to separate one or more words or phrases from the extracted one or more sentences based on the word semantic dictionary database; A grammar checking module configured to detect a grammar error by applying a grammar processing rule defined using the attribute information to one or more separated words or phrases; And an output module configured to provide information on an error detected by the grammar checking module.
이때, 상기 속성정보는, 단어의 성분을 나타내는 제1 속성, 단어의 품사를 나타내는 제2 속성, 및 단어의 의미성질구분을 나타내는 제3 속성을 포함하여 단계적으로 정의된다.In this case, the attribute information is defined stepwise including a first attribute indicating a component of a word, a second attribute indicating a part of speech of a word, and a third attribute indicating a semantic property classification of the word.
일 실시예에서, 상기 처리 규칙 정보는, 단어의 상기 제3 속성을 이용하여 정의되는 띄어쓰기 규칙, 조사사용 규칙, 어미사용 규칙 및 단어결합 규칙 중 하나 이상을 포함한다.In one embodiment, the processing rule information includes one or more of a spacing rule, a search use rule, a ending rule, and a word combination rule defined using the third attribute of a word.
일 실시예에서, 상기 처리 규칙 정보는, 문서종류, 문장위치, 인접문자 중 하나 이상을 조건으로 실행되는 처리 함수의 형태로 정의되는 하나 이상의 문법 처리 규칙을 포함한다.In one embodiment, the processing rule information includes one or more grammar processing rules defined in the form of a processing function executed on condition of one or more of a document type, a sentence position, and an adjacent character.
일 실시예에 따른 문법 검사 시스템은, 활용형이 미리 정의된 기본 용언을 다른 단어와 결합하여 어간을 확장함으로써 활용형이 정의된 복합 용언을 생성하고, 상기 복합 용언을 상기 단어의미사전 데이터베이스에 저장하도록 구성된 용어 관리 모듈을 더 포함한다.The grammar checking system according to an embodiment is configured to generate a compound verb in which the conjugation is defined by combining a basic verb with a conjugated type defined in advance with other words to expand the stem, and to store the compound verb in the word semantic dictionary database. It further includes a term management module.
일 실시예에 따른 문법 검사 시스템은, 미리 설정된 글자 또는 단어의 그룹을 이용하여 상기 단어의미사전 데이터베이스에 포함된 단어의 일부를 치환함으로써 예상 오탈자를 생성하도록 구성된 오탈자 생성부; 및 상기 오탈자 생성부에 의하여 생성된 예상 오탈자에 기초하여, 상기 분리된 하나 이상의 단어 또는 어절에 대한 오탈자 검사를 실행하도록 구성된 오탈자 검사부를 포함하는 오탈자 검사 모듈을 더 포함한다. A grammar checking system according to an embodiment includes: a typo generator configured to generate a predicted typo by substituting a part of a word included in the word semantic dictionary database by using a preset group of letters or words; And a typo checking module including a typo checking unit configured to perform a typo check for the separated one or more words or words based on the predicted typo generated by the typo generating unit.
본 발명의 일 실시예에 따른 문법 검사 방법은, 문법 검사 시스템에 복수 개의 단어 및 상기 복수 개의 단어 각각에 상응하는 속성정보를 포함하는 단어의미사전 데이터베이스를 저장하는 단계; 상기 문법 검사 시스템에 상기 속성정보를 이용하여 정의된 처리 규칙 정보를 저장하는 단계; 상기 문법 검사 시스템이 입력 데이터로부터 하나 이상의 문장을 추출하는 단계; 상기 문법 검사 시스템이, 상기 단어의미사전 데이터베이스에 기초하여, 추출된 하나 이상의 문장으로부터 하나 이상의 단어 또는 어절을 분리하는 단계; 상기 문법 검사 시스템이, 분리된 하나 이상의 단어 또는 어절에 대하여, 상기 속성정보를 이용하여 정의된 문법 처리 규칙을 적용함으로써 문법 오류를 탐지하는 단계; 및 상기 문법 검사 시스템이, 탐지된 오류에 대한 정보를 제공하는 단계를 포함한다.A grammar checking method according to an embodiment of the present invention includes storing a word semantic dictionary database including a plurality of words and attribute information corresponding to each of the plurality of words in a grammar checking system; Storing processing rule information defined by using the attribute information in the grammar checking system; Extracting, by the grammar checking system, one or more sentences from input data; Separating, by the grammar checking system, one or more words or phrases from the extracted one or more sentences based on the word meaning dictionary database; Detecting, by the grammar checking system, a grammar error by applying a grammar processing rule defined using the attribute information to one or more separated words or phrases; And providing, by the grammar checking system, information on the detected error.
일 실시예에 따른 문법 검사 방법은, 상기 문법 검사 시스템이, 활용형이 미리 정의된 기본 용언을 다른 단어와 결합하여 어간을 확장함으로써 활용형이 정의된 복합 용언을 생성하는 단계; 및 상기 문법 검사 시스템이, 상기 복합 용언을 상기 단어의미사전 데이터베이스에 저장하는 단계를 더 포함한다.A grammar checking method according to an embodiment comprises the steps of: generating, by the grammar checking system, a compound verb having a conjugated form defined by combining a basic term with a pre-defined conjugated form with another word to expand a stem; And storing, by the grammar checking system, the compound verb in the word meaning dictionary database.
일 실시예에 따른 문법 검사 방법은, 상기 문법 검사 시스템이, 미리 설정된 글자 또는 단어의 그룹을 이용하여 상기 단어의미사전 데이터베이스에 포함된 단어의 일부를 치환함으로써 예상 오탈자를 생성하는 단계; 및 상기 문법 검사 시스템이, 생성된 상기 예상 오탈자에 기초하여, 상기 분리된 하나 이상의 단어 또는 어절에 대한 오탈자 검사를 실행하는 단계를 더 포함한다. A grammar checking method according to an embodiment includes the steps of: generating, by the grammar checking system, a predicted typo by substituting a part of words included in the word semantic dictionary database using a preset letter or group of words; And performing, by the grammar checking system, a typo check for the separated one or more words or phrases based on the generated predicted typo.
본 발명의 일 측면에 컴퓨터 프로그램은, 하드웨어와 결합되어 전술한 실시예들에 따른 문법 검사 방법을 실행하기 위한 것으로서 컴퓨터로 판독 가능한 기록매체에 저장될 수 있다. In one aspect of the present invention, a computer program is combined with hardware to execute the grammar checking method according to the above-described embodiments and may be stored in a computer-readable recording medium.
본 발명의 일 측면에 따른 문법 검사 시스템 및 방법은, 적용되는 문법 규칙에 따라 품사를 상세하게 재분류한 단어의미사전 데이터베이스를 구축하고, 단어의미사전 데이터베이스의 각 단어 및 품사의 상세 종류별로 문법 규칙을 등록함으로써, 동일한 품사의 단어들이라도 그 의미에 따라 적용되는 문법 규칙을 달리하여 정확한 문법 검사가 가능한 이점이 있다. A grammar check system and method according to an aspect of the present invention builds a word semantic dictionary database in which parts of speech are reclassified in detail according to applied grammar rules, and grammar rules for each word and detailed type of part of speech in the word semantic dictionary database By registering, there is an advantage in that even words of the same part of speech can accurately check grammar by different grammar rules applied according to their meaning.
또한, 본 발명의 일 측면에 따른 문법 검사 시스템 및 방법에서 문법 규칙은 소정의 프로토콜(protocol)에 의한 함수 형태로 표현되므로, 전문가의 문법 지식을 컴퓨팅 장치에서 이해 및 처리할 수 있도록 전달하고 이를 통해 자동화된 방법으로 문법 검사를 실행하는 것이 가능하며, 문법 규칙의 수정 및 추가가 쉽게 이루어질 수 있는 이점이 있다. In addition, in the grammar checking system and method according to an aspect of the present invention, since the grammar rules are expressed in the form of a function according to a predetermined protocol, the grammar knowledge of an expert is transmitted so that the computing device can understand and process it, and through this It is possible to perform a grammar check in an automated way, and there is an advantage that grammar rules can be easily modified and added.
또한, 본 발명의 일 측면에 따른 문법 검사 시스템 및 방법에서는, 단일어의 확장 어간을 자동으로 생성하고 이를 기반으로 결합어 및/또는 합성어에 대한 확장 어간을 단어의미사전 데이터베이스에 등록함으로써, 문장에서 실제 활용되는 복합 용언을 포함하도록 데이터베이스가 자동 갱신되어 정확한 문법 검사가 가능한 이점이 있다. In addition, in the grammar checking system and method according to an aspect of the present invention, by automatically generating an extended stem of a single word and registering the extended stem for a combined word and/or a compound word in the word semantic dictionary database based on this, There is an advantage in that the database is automatically updated to include the compound verbs to be used, allowing accurate grammar checks.
나아가, 본 발명의 일 측면에 따른 문법 검사 시스템 및 방법에서는, 오탈자가 발생할 수 있는 글자 및 단어별 오탈자 목록을 작성하고 이를 이용하여 표준 단어별 오탈자를 자동 생성 및 저장함으로써, 문법 검사뿐만 아니라 문장에 오탈자가 들어있는 경우 오탈자를 표준 단어로 변환하는 기능을 제공할 수 있는 이점이 있다. Furthermore, in the grammar checking system and method according to an aspect of the present invention, by creating a list of typos for each letter and word in which typos may occur, and automatically generating and storing typos for each standard word using this, If there are typos, there is an advantage that it can provide a function to convert the typos into standard words.
도 1은 일 실시예에 따른 문법 검사 시스템의 블록도이다.
도 2는 일 실시예에 따른 문법 검사 방법의 각 단계를 나타내는 순서도이다.
도 3은 일 실시예에 따른 문법 검사 방법에 의한 품사의 상세 분류의 예시를 나타내는 개념도이다.
도 4a 및 4b는 일 실시예에 따른 문법 검사 시스템에서 품사의 상세 분류에 따른 문법 사항을 나타내는 예시적인 사용자 인터페이스의 개념도이다.
도 5a 내지 5c는 일 실시예에 따른 문법 검사 시스템에서 함수에 의한 문법 처리 규칙을 나타내는 예시적인 사용자 인터페이스의 개념도이다.
도 6은 일 실시예에 따른 문법 검사 방법에서 어간 확장을 통한 복합 용언의 생성 과정을 나타내는 순서도이다.
도 7은 도 6에 도시된 복합 용언의 생성 과정을 나타내는 개념도이다.
도 8a 및 8b는 일 실시예에 따른 문법 검사 시스템에서 어간 확장을 통한 복합 용언의 생성에 관련된 예시적인 사용자 인터페이스의 개념도이다.1 is a block diagram of a grammar checking system according to an embodiment.
2 is a flow chart showing each step of a grammar checking method according to an embodiment.
3 is a conceptual diagram illustrating an example of detailed classification of parts of speech by a grammar inspection method according to an exemplary embodiment.
4A and 4B are conceptual diagrams of an exemplary user interface showing grammar items according to detailed classification of parts of speech in the grammar checking system according to an embodiment.
5A to 5C are conceptual diagrams of an exemplary user interface illustrating a grammar processing rule by a function in a grammar checking system according to an exemplary embodiment.
6 is a flowchart illustrating a process of generating a compound verb through stem expansion in a grammar checking method according to an exemplary embodiment.
7 is a conceptual diagram illustrating a process of generating the compound verb shown in FIG. 6.
8A and 8B are conceptual diagrams of an exemplary user interface related to generation of compound verbs through stem expansion in a grammar checking system according to an embodiment.
이하에서, 도면을 참조하여 본 발명의 실시예들에 대하여 상세히 살펴본다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the drawings.
도 1은 일 실시예에 따른 문법 검사 시스템의 블록도이다. 1 is a block diagram of a grammar checking system according to an embodiment.
도 1을 참조하면, 본 실시예에 따른 문법 검사 시스템(3)은 저장 모듈(10), 입력 모듈(20), 문법 검사 모듈(30) 및 출력 모듈(60)을 포함한다. 일 실시예에서, 문법 검사 시스템(3)은 용어 관리 모듈(40)을 더 포함한다. 또한 일 실시예에서, 문법 검사 시스템(3)은 오탈자 검사 모듈(50)을 더 포함한다. 또한, 전술한 각 모듈(10, 20, 30, 40, 50, 60)은 하나 또는 복수의 기능 부(unit)를 포함할 수 있다. Referring to FIG. 1, the
본 명세서에 기재된 장치들은 전적으로 하드웨어이거나, 또는 부분적으로 하드웨어이고 부분적으로 소프트웨어인 측면을 가질 수 있다. 예컨대, 문법 검사 시스템(3) 및 이와 통신하는 각각의 시스템, 장치, 서버 및 이에 포함된 각 모듈(module) 또는 부(unit)는, 특정 형식 및 내용의 데이터를 전자통신 방식으로 주고받기 위한 장치 및 이에 관련된 소프트웨어를 통칭할 수 있다. 본 명세서에서 "부", "모듈", "서버", "시스템", "플랫폼", "장치" 또는 "단말" 등의 용어는 하드웨어 및 해당 하드웨어에 의해 구동되는 소프트웨어의 조합을 지칭하는 것으로 의도된다. 예를 들어, 여기서 하드웨어는 CPU 또는 다른 프로세서(processor)를 포함하는 데이터 처리 기기일 수 있다. 또한, 하드웨어에 의해 구동되는 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다.The devices described herein may be entirely hardware, or may have aspects that are partly hardware and partly software. For example, the
또한, 본 명세서에서 문법 검사 시스템(3)을 구성하는 각각의 부는 반드시 물리적으로 구분되는 별개의 구성요소를 지칭하는 것으로 의도되지 않는다. 즉, 도 1에서 문법 검사 시스템(3)의 각 모듈(10, 20, 30, 40, 50, 60)은 서로 구분되는 별개의 블록으로 도시되었으나, 이는 문법 검사 시스템(3)을 이에 의해 실행되는 동작에 의해 기능적으로 구분한 것이다. 실시예에 따라서는 전술한 각 모듈 중 일부 또는 전부가 동일한 하나의 장치 내에 집적화될 수 있으며, 또는 하나 이상의 모듈이 다른 모듈과 물리적으로 구분되는 별개의 장치로 구현될 수도 있다. 예컨대, 문법 검사 시스템(3)의 각 모듈(10, 20, 30, 40, 50, 60)은 분산 컴퓨팅 환경 하에서 서로 통신 가능하게 연결된 컴포넌트들일 수도 있다. In addition, in the present specification, each unit constituting the
문법 검사 시스템(3)은 사용자 장치(1)로부터 수신된 입력 데이터에 대하여 문법 검사를 실시하고, 그 결과를 사용자 장치(1)에 제공하도록 구성된다. 또한 일 실시예에서, 문법 검사 시스템(3)은 외부 서버(2)로부터 단어 데이터베이스, 고유명사, 신조어 등에 관련된 정보를 수집하여 저장할 수도 있다. 이상의 동작을 위하여, 문법 검사 시스템(3)은 유선 및/또는 무선 네트워크를 통하여 사용자 장치(1) 및/또는 외부 서버(2) 등과 통신할 수도 있다. 본 명세서에서 유선 및/또는 무선 네트워크를 통한 통신 방법은 객체와 객체가 네트워킹 할 수 있는 모든 통신 방법을 포함할 수 있으며, 유선 통신, 무선 통신, 3G, 4G, 혹은 그 이외의 방법으로 제한되지 않는다.The
도 1에서, 문법 검사를 위한 입력 데이터를 제공하는 사용자 장치(1)는 노트북 컴퓨터의 형태로 도시되었다. 그러나 이는 예시적인 것으로서, 사용자 장치(1)로는 스마트폰(smartphone)과 같은 모바일 컴퓨팅 장치, 개인용 컴퓨터, 노트북 컴퓨터, 태블릿(tablet) 컴퓨터, 개인용 컴퓨터(Personal Computer; PC) 등 임의의 컴퓨팅 장치가 사용될 수 있으며, 특정 종류의 장치로 한정되지 않는다.In Fig. 1, a user device 1 providing input data for a grammar check is shown in the form of a notebook computer. However, this is exemplary, and as the user device 1, any computing device such as a mobile computing device such as a smartphone, a personal computer, a notebook computer, a tablet computer, and a personal computer (PC) may be used. Can be, and is not limited to a specific type of device.
또한, 본 명세서에서 설명하는 실시예들에서 문법 검사 시스템(3)은 사용자 장치(1)와 구분되는 별도의 장치(예컨대, 서버)로 구현되어, 사용자 장치(1)로부터 입력 데이터를 수신하고 입력 데이터에 대한 대한 문법 검사 결과를 사용자 장치(1)에 제공한다. 그러나 이는 예시적인 것으로, 다른 실시예에서는 문법 검사 시스템(3) 자체가 스마트폰, 노트북 컴퓨터, PC 등 사용자 장치의 형태로 구현될 수 있고, 이 경우 별도의 사용자 장치(1)는 생략될 수 있다. In addition, in the embodiments described herein, the
저장 모듈(10)은 단어의미사전 데이터베이스(database; DB)를 저장하도록 구성된다. 실시예들의 단어의미사전 DB에는 복수의 단어 및 각 단어에 상응하는 속성 정보가 포함된다. 또한 저장 모듈(10)은, 각 단어의 속성 정보를 적어도 부분적으로 이용하여 정의되는 처리 규칙 정보를 저장할 수 있으며, 처리 규칙 정보는 하나 이상의 문법 처리 규칙을 포함할 수 있다.The
일 실시예에서, 각 단어의 속성 정보는 단어의 성분(예컨대, 체언, 용언, 수식언, 관계언, 접사, 독립언 등)을 나타내는 제1 속성, 단어의 품사(예컨대, 대명사, 명사, 수사, 관형사, 부사, 조사, 어미, 접두사, 접미사, 감탄사 등)를 나타내는 제2 속성, 및 단어의 의미성질구분을 나타내는 제3 속성을 포함한다. 또한, 전술한 제1 내지 제3 속성은 단계적으로 정의될 수도 있다. 이때 의미성질구분을 나타내는 제3 속성은, 복수의 단어들 중 단어에 적용되는 문법 규칙이 서로 동일한 단어들을 동일한 그룹으로 묶도록 부여되는 것이다. In one embodiment, the attribute information of each word is a first attribute indicating a component of a word (e.g., body language, verb, modifier, relational language, affix, independent language, etc.), part of speech (e.g., pronoun, noun, rhetoric, idiom, It includes a second attribute indicating adverb, survey, ending, prefix, suffix, interjection, etc.), and a third attribute indicating semantic classification of words. In addition, the first to third attributes described above may be defined in stages. At this time, the third attribute representing semantic property classification is that grammar rules applied to words among a plurality of words are assigned so that words that are identical to each other are grouped into the same group.
입력 모듈(20)은 사용자 장치(1)로부터 입력 데이터를 수신하고, 입력 데이터에서 하나 이상의 문장을 추출하며, 추출된 문장으로부터 다시 문법 검사의 대상이 될 하나 이상의 단어 또는 어절을 분리하는 기능을 수행한다. 일 실시예에서, 입력 모듈(20)은 입력 데이터로부터 문장을 추출하는 문장 추출부(21)와, 문장 추출부(21)에 의해 추출된 문장에서 단어 또는 어절을 분리하는 단어 추출부(22)를 포함한다. 이때, 단어 또는 어절을 분리해내는 과정은 저장 모듈(10)에 저장된 단어의미사전 DB에 포함된 단어들을 기초로 이루어질 수도 있다. The
본 실시예에서 입력 모듈(20)은 사용자 장치(1)로부터 입력 데이터를 수신하는 것으로 설명되나, 문법 검사 시스템(3) 자체가 사용자 장치의 형태로 구현되는 경우, 입력 모듈(20)은 문법 검사 시스템(3)에 구비된 키보드, 마우스 등 입력 수단(미도시)을 통하여 사용자의 입력 데이터를 입력받는 기능을 수행하는 것일 수도 있다. In this embodiment, the
문법 검사 모듈(30)은, 입력 모듈(20)에 의해 분리된 하나 이상의 단어 또는 어절을 대상으로, 저장 모듈(10)에 정의된 문법 처리 규칙을 적용함으로써 문법 오류를 탐지하는 역할을 한다. 이때, 문법 처리 규칙은 단어별 및/또는 품사별로 정의된 문법 사항을 포함할 수 있으며, 또한 소정의 프토로톨(protocol)에 의해 정의되는 함수를 포함할 수도 있다. The
일 실시예에서, 문법 검사 모듈(30)은 문법 처리 규칙에 정의된 함수를 관리, 실행하기 위한 함수 관리부(31)를 포함할 수 있다. 또한, 문법 처리 규칙은 함수 형태 외에도 각 단어(또는 어절)별로 또는 품사의 상세 분류별로 정의된 문법 사항을 포함할 수 있으며, 문법 검사 모듈(30)은 이를 처리하기 위한 단어별 문법규칙 적용부(32) 및 품사별 문법규칙 적용부(33)를 포함할 수 있다. 문법 검사 모듈(30)에 의한 검사 및 문법 처리 규칙 적용 과정에 대해서는 상세히 후술한다. In one embodiment, the
출력 모듈(60)은 문법 검사 모듈(30)에 의해 탐지된 오류에 대한 정보를 사용자에게 제공하는 역할을 한다. 도 1의 실시예에서 출력 모듈(60)은 오류에 대한 정보를 사용자 장치(1)에 전송하여 사용자 장치(1)를 통해 사용자에게 정보가 보여지도록 할 수 있으나, 이는 예시적인 것으로서, 다른 실시예에서 문법 검사 시스템(3) 자체가 사용자 장치의 형태로 구현되는 경우 출력 모듈(60)은 문법 검사 시스템(3)에 구비된 디스플레이 장치 등 출력 수단(미도시)을 통해 문법 오류에 대한 정보를 표시할 수도 있다. The
용어 관리 모듈(40)은 저장 모듈(10)의 단어의미사전 DB에 저장된 각 단어들 중 활용형이 미리 정의된 기본 용언을 다른 단어와 결합하여 어간을 확장함으로써 활용형이 정의된 복합 용언을 생성하고, 이를 단어의미사전 DB에 추가할 수 있다. 기본 용언을 토대로 자동으로 복합 용언의 기본형 및 활용형을 정의하고 이를 단어의미사전 DB에 추가함으로써 보다 정확한 검사가 이루어지도록 할 수 있다. The
오탈자 검사 모듈(50)은 문법 검사 모듈(30)에 정의된 문법 규칙에 더하여 입력 모듈(20)에 의해 분리된 단어 또는 어절에 대한 오탈자 검사를 수행할 수 있으며, 오탈자 검사 모듈(50)에 의한 오탈자 검사 결과는 문법 오류에 대한 정보와 마찬가지로 출력 모듈(60)에 의해 사용자에게 제공될 수 있다. In addition to the grammar rules defined in the
일 실시예에서, 오탈자 검사 모듈(50)은 사전에 정의된 단어별 오탈자를 토대로 오탈자 존재 여부 및/또는 교정 내용을 결정하는 것에 그치지 않고, 상호 간에 오탈자 발생이 예상되는 단어 또는 글자들의 조합을 통해 자동으로 각 단어에 대한 오탈자를 생성할 수도 있다. 이상의 동작을 위하여, 오탈자 검사 모듈(50)은 사전에 정의된 단어별 오탈자를 토대로 오류를 탐지하는 오탈자 검사부(51)와, 글자 및/또는 단어의 조합을 통해 자동으로 오탈자 탐지 규칙을 생성하고 이를 단어의미사전 DB에 추가하는 오탈자 생성부(52)를 포함할 수 있다. In one embodiment, the
도 2는 일 실시예에 따른 문법 검사 방법의 각 단계를 나타내는 순서도이다.2 is a flow chart showing each step of a grammar checking method according to an embodiment.
도 2를 참조하면, 먼저 사용자가 문법 검사의 대상이 되는 텍스트를 입력할 수 있다(S1). 텍스트는 사용자 장치에 입력된 후 서버 형태의 문법 검사 시스템에 전송됨으로써 문법 검사 시스템에 수신될 수 있으며, 또는 문법 검사 시스템 자체가 사용자 장치의 형태로 구현될 경우 문법 검사 시스템에 직접 텍스트가 입력될 수도 있다. Referring to FIG. 2, first, a user may input text to be subjected to a grammar check (S1). Text can be received by the grammar checking system by being inputted to the user device and then transmitted to the server-type grammar checking system, or if the grammar checking system itself is implemented in the form of a user device, the text may be directly input to the grammar checking system. have.
문법 검사 시스템은, 입력된 텍스트로부터 하나 이상의 문장을 추출할 수 있다(S2). 문장의 추출은, 사용자가 입력한 내용에서 마침표(.), 물음표(?), 느낌표(!)와 같은 특정 글자 또는 엔터(enter)키와 같은 특정 조판 부호를 검출하는 방식으로 이루어질 수도 있다. 또한, 어미(예컨대, 청유형, 감탄형, 명령형, 서술형)로 끝나는 부분을 검출함으로써 문장을 추출하거나(이때, 관형사형, 명사형, 연결형 어미는 제외한다), 또는/또한 문장의 구분에 주로 사용되는 글자인 로마자, 편/장/절/관, 조/항/호/목/세호/세목, 또는 특수문자(예컨대, □, ☞, o, -, 등)를 검출하는 방법으로 문장의 시작 및/또는 끝을 특정함으로써 문장을 추출할 수도 있다. The grammar check system may extract one or more sentences from the input text (S2). The extraction of sentences may be performed by detecting specific characters such as periods (.), question marks (?), and exclamation marks (!) from the content input by the user, or specific typesetting codes such as the enter key. In addition, by detecting the part that ends with the ending (e.g., hearing type, exclamation type, imperative type, narrative type), the sentence is extracted (in this case, the tubular sentence type, noun type, and concatenation type ending are excluded), or/or The beginning and/or end of a sentence by detecting Roman characters, section/chapter/verse/gwan, article/paragraph/number/tree/subject/detail, or special characters (eg, □, ☞, o, -, etc.) You can also extract a sentence by specifying.
다음으로, 문법 검사 시스템은, 단어의미사전 DB에 등록된 단어들을 기반으로, 추출된 문장으로부터 단어 또는 어절을 분리할 수 있다(S3). 또한, 문법 검사 시스템은 분리된 단어 또는 어절과 단어의미사전 DB에 등록된 단어들을 비교하여 분리된 어절에 포함된 단어의 품사 및 품사의 상세 분류(즉, 의미성질 구분)를 결정할 수 있다(S4). 즉, 문법 검사 시스템은 분리된 단어나 또는 분리된 어절에 포함된 단어를 단어의미사전 DB에서 검색하여, 이에 해당하는 상세 분류를 특정할 수 있다. Next, the grammar checking system may separate a word or a word from the extracted sentence based on the words registered in the word meaning dictionary DB (S3). In addition, the grammar test system may compare the separated words or phrases and words registered in the word semantic dictionary DB to determine the detailed classification (ie, semantic property classification) of the words included in the separated words (S4). ). That is, the grammar checking system may search for a separated word or a word included in the separated word from the word semantic dictionary DB, and specify a detailed classification corresponding thereto.
도 3은 일 실시예에 따른 문법 검사 방법에 의한 품사의 상세 분류의 예시를 나타내는 개념도이다. 3 is a conceptual diagram illustrating an example of detailed classification of parts of speech by a grammar inspection method according to an exemplary embodiment.
도 3을 참조하면, 실시예들에 따른 문법 검사 방법에서 각 단어들은 제1 속성(31), 제2 속성(32) 및 제3 속성(33)이 단계적으로 배치되어 정의되는 속성정보를 가질 수 있다. 제1 속성(31)은 단어의 성분(예컨대, 체언, 용언, 수식언, 관계언, 접사, 독립언 등)을 나타내는 것으로서 도 3의 예에서는 제1 속성(31)이 체언인 예시를 도시하였다. 또한, 제2 속성(32)은 단어의 품사(예컨대, 대명사, 명사, 수사, 관형사, 부사, 조사, 어미, 접두사, 접미사, 감탄사 등)를 나타낸다. Referring to FIG. 3, in the grammar checking method according to the embodiments, each word may have attribute information defined by arranging a
이때, 실시예들에 따른 문법 검사 방법은 단어에 대해 의미성질 구분을 나타내는 제3 속성(33)을 부여하는 점에서 종래의 맞춤법 검사 프로그램들과 차별화된다. 제3 속성(33)은 동일한 성분 및 품사에 해당하는 단어들 중에서도 적용되는 문법이 동일한 단어들을 품사별로 그룹화한 것이다. 예를 들면, 체언 중 대명사는 이에 적용될 문법에 따라 공간, 사물, 사람, 일작업, 시간 등의 의미성질로 구분될 수 있으며, 체언 중 수사는 번호순서, 수량 등의 의미성질로 구분될 수 있다. 이와 같이 정의되는 제3 속성(33)을 적용하여, 체언이면서 대명사 중 시간을 나타내는 단어의 속성정보는 [*체언-대명사-시간*]과 같이 컴퓨팅 장치에서 판독 가능한 형태로 정의될 수 있다. 이때, [* 및 *]는 속성정보의 시작과 끝을 나타내는 기호이나, 기호의 형태는 이에 한정되는 것은 아니다. At this time, the grammar checking method according to the embodiments is differentiated from the conventional spell checking programs in that a
일 실시예에서, 제3 속성(33)은 하나 이상의 상위 속성(331, 332)과 각 상위 속성(331, 332)의 세부 분류를 나타내는 하나 이상의 하위 속성(333)으로 더 구분될 수도 있다. 예를 들어, 시간이라는 상위 속성(332)은 시점날일, 동안기간, 시점때, 연월일 등 하나 이상의 하위 속성(333)을 가질 수 있으며, 각 단어의 제3 속성(33)은 이러한 하위 속성(333)을 더 이용하여 정의될 수도 있다. 예를 들어, 체언 중 명사이면서 시점때에 해당하는 의미성질을 가지는 단어의 속성정보는 [*체언-명사-시간-시점때*]와 같이 정의될 수 있다. In an embodiment, the
도 3에 도시된 제3 속성(33), 즉, 의미성질 구분은 예시적인 것이며, 실시예들에 따른 문법 검사 시스템 및 방법에서 각 단어에 대해 정의되는 제3 속성의 모든 종류를 망라하는 것이 아니라는 점이 통상의 기술자에게 용이하게 이해될 것이다. 즉, 본 발명의 실시예들에서 제3 속성(즉, 품사의 상세 분류 또는 의미성질 구분)은 단어에 적용될 문법이 서로 동일하거나 서로 상응하는 단어들을 묶음으로 만들 수 있다면 임의의 방식으로 정의될 수 있고, 도 3에 제시된 예시로 한정되지 않는다. The
다시 도 2를 참조하면, 일 실시예에서는, 단어의미사전 DB에 등록된 단어들 중 동음 어절 또는 단어를 수집하고 이를 대상 단어와 비교함으로써 단어의 품사의 상세 분류를 확정할 수도 있다(S5). 이는 예를 들어 "결재" 및 "결제"와 같이 발음이 동일 또는 유사하거나, 또는 상호간에 오탈자가 발생하기 쉬운 단어의 경우, 입력 텍스트에 "결재"가 포함되어 있더라도 동음 단어인 "결제"를 단어의미사전 DB에서 함께 검색하여, 해당 단어의 의미성질 구분을 정확하게 결정하기 위한 것이다. Referring back to FIG. 2, in an embodiment, a detailed classification of the part of speech of a word may be determined by collecting homophones or words among words registered in the word semantic dictionary DB and comparing them with the target word (S5). This is, for example, in the case of words that have the same or similar pronunciation, such as "Payment" and "Payment", or that are prone to typos, even if the input text contains "Payment", the word "Payment" is a homophone. It is to accurately determine the semantic property classification of the word by searching together in the semantic dictionary DB.
단어의 성분, 품사 및 품사의 상세 분류가 결정되면, 문법 검사 시스템에서는 특정된 단어의 속성정보에 상응하여 문법 검사 시스템에 미리 정의되어 있는 문법 처리 규칙을 적용함으로써 해당 단어 또는 해당 단어가 포함된 어절에 관련된 문법 오류를 검출할 수 있다(S61, S62, S63 및 S7). 문법 오류를 검출하는 과정은 적용되는 처리 규칙의 성질에 따라 복수의 단계로 구분될 수 있으며, 이는 예를 들어 각 단어의미사전 DB에 포함된 각 단어별로 오탈자, 띄어쓰기, 붙여쓰기 등을 지정하는 단어별 문법 사항을 적용하는 단계(S61), 단어별 유사어 함수에 기술된 문법 처리 규칙을 적용하는 단계(S62), 및 단어별 문장 오류 함수에 기술된 문법 처리 규칙을 적용하는 단계(S63) 중 하나 이상을 포함할 수 있다. When the detailed classification of the components, parts of speech, and parts of speech of a word is determined, the grammar check system applies the grammar processing rules predefined in the grammar check system according to the attribute information of the specified word, and thus the word or word containing the word is It is possible to detect grammatical errors related to (S61, S62, S63 and S7). The process of detecting grammatical errors can be divided into a plurality of steps according to the nature of the applied processing rule. This is, for example, words that designate typos, spaces, and pastes for each word included in each word semantic dictionary DB. One of a step (S61) of applying a grammar item for each word, a step of applying a grammar processing rule described in the similar word function for each word (S62), and a step of applying the grammar processing rule described in the sentence error function for each word (S63) It may include more than one.
본 발명의 실시예들에서, 전술한 각 문법 처리 규칙을 적용하는 단계(S61-63)에서 적용될 문법 처리 규칙은 단어의 품사의 상세 분류(즉, 단어의 속성 정보)를 적어도 부분적으로 이용하는 것일 수 있다. 즉, 단어의 품사의 상세 분류에 따라 오탈자, 띄어쓰기, 붙여쓰기와 같은 단어별 문법 사항을 정의하거나, 해당 단어에 대해 문법 처리 규칙을 적용하기 위한 함수의 실행 조건 또는 실행 내용을 단어의 품사의 상세 분류에 기초하여 정의할 수 있다. 또한, 품사의 상세 분류에 기초한 문법 처리 규칙을 적용하는 과정은 전술한 단어별 문법 처리 규칙을 적용하는 단계(S7)와 독립적으로 수행될 수도 있다. In embodiments of the present invention, the grammar processing rule to be applied in the step (S61-63) of applying each of the grammar processing rules described above may be at least partially using the detailed classification of the part of speech of the word (that is, attribute information of the word). have. That is, according to the detailed classification of the word's part of speech, grammar items for each word, such as typos, spaces, and pasting, are defined, or the execution condition or execution content of a function for applying grammar processing rules for the word is detailed Can be defined based on classification. In addition, the process of applying the grammar processing rule based on the detailed classification of parts of speech may be performed independently from the step S7 of applying the grammar processing rule for each word described above.
실시예들에 따른 문법 검사 시스템 및 방법에서 문법 처리 규칙을 적용하는 과정은 적어도 부분적으로 처리 함수를 이용하여 수행될 수도 있다. 본 명세서에서 처리 함수란, 오류가 있는 단어 또는 어절을 특정하고 또는/또한 이를 올바른 단어 또는 어절로 변경하기 위한 내용을 소정의 프로토콜(protocol)을 기반으로 컴퓨팅 장치에서 판독 가능한 문자열 형태로 기재한 것을 지칭한다. The process of applying the grammar processing rule in the grammar checking system and method according to the embodiments may be performed at least partially using a processing function. In the present specification, the processing function is a description of the contents for specifying an error word or word and/or changing it to a correct word or word in the form of a character string readable by a computing device based on a predetermined protocol. Refers to.
실시예들에 따른 문법 검사 시스템 및 방법에 의한 문법 규칙의 적용에 대하여, 이하에서 도 4 내지 도 8을 참조하여 상세히 설명한다. Application of a grammar rule by a grammar checking system and method according to embodiments will be described in detail below with reference to FIGS. 4 to 8.
도 4a 및 4b는 일 실시예에 따른 문법 검사 시스템의 관리자에게 표시되기 위한 예시적인 사용자 인터페이스로서, 품사의 상세 분류에 따른 문법 사항을 나타내는 화면이다. 4A and 4B are exemplary user interfaces for display to an administrator of a grammar checking system according to an embodiment, and are screens showing grammar items according to detailed classification of parts of speech.
먼저 도 4a를 참조하면, 문법 검사 시스템의 관리자 화면에는 대상 단어에 관련된 품사의 상세 종류(즉, 속성 정보)가 표시되는 영역(1001)과, 해당 단어에 대한 문법 사항이 표시되는 영역(1002), 문법 처리 규칙이 함수 형태로 표시되는 영역(1003) 및 오탈자 처리 규칙이 표시되는 영역(1004) 등이 표시될 수 있다. 도면의 예에서는, "값"이라는 단어는 [*명사-지시형상-가치비용요금*]의 속성 정보를 가지며, 이러한 속성의 종류 및 구분이 화면 상의 영역(1001)에 표시될 수 있다. First, referring to FIG. 4A, on the manager screen of the grammar inspection system, an
또한, 영역(1002)에 표시되는 단어에 관련된 문법 사항은, 영역(1001)에 정의된 속성을 가지는 단어에 상응하여 해당 단어의 띄어쓰기 규칙, 조사사용 규칙, 어미사용 규칙 및/또는 단어결합 규칙 등을 정의한다. 예를 들어, 영역(1002) 에서 [다른품사] 부분의 체크박스 2개는 대상 단어의 좌측과 우측을 각각 다른 품사의 단어와 붙여써야 하는지 여부를 나타내며, [용어] 부분의 [조사] 앞의 체크박스 2개는 대상 단어의 좌측과 우측을 각각 조사와 붙여써야 하는지 여부를 나타낸다. 이러한 띄어쓰기 규칙이나 조사사용 규칙 등은 단어의 의미성질 구분(즉, 본 예에서는 "가치비용요금")에 따라 달라질 수 있으므로, 실시예들에서는 단어의 의미성질구분을 속성으로 지정하고 해당 단어에 대한 문법 규칙을 정의한 것이다. In addition, grammar matters related to words displayed in the
또한, 영역(1003)은 문법 검사를 수행하는 문서의 종류, 대상 단어가 포함된 문장의 위치 및/또는 대상 단어의 인접 문자 등을 조건으로 실행되는 처리 규칙을 함수의 형태로 나타낸다. 도 4a의 영역(1003)에서 (처리)함수는 도 2의 단계(S62)에서 수행되는 단어별 유사어 함수에 따른 문법 처리 규칙에 해당하며, (문장)함수는 도 2의 단계(S63)에서 수행되는 단어별 문장 오류 함수에 따른 문법 처리 규칙에 해당된다. Further, the
일 실시예에서, 문법 처리 규칙들은 단어에 관련된 속성 정보를 적어도 부분적으로 이용하여 처리 조건 또는 내용을 정의하는 것일 수 있다. 예컨대, 영역(1003)에 도시된 『■[*체언*] 값▶[*체언*]값』은, 대상 단어인 "값"의 앞에 온 단어의 속성정보가 [*체언*]일 경우, 앞 단어와 "값"이 띄어쓰기된 경우 이를 붙여 쓰도록 수정하는 것을 의미한다. 함수의 상세 내용에 대해서는 도 5a 내지 5c를 참조하여 후술한다. In an embodiment, the grammar processing rules may define processing conditions or contents by using at least partially attribute information related to a word. For example, the “■[*cheese*] value ▶[*cheese*] value” shown in the
한편, 영역(1004)은 해당 단어에 대하여 사전에 정의된 오류 표기를 이용하여 오탈자 탐지 규칙을 지시하기 위한 부분으로, 도 1에 도시된 오탈자 검사 모듈(50)의 오탈자 검사부(51)에 의하여 처리되는 변경 내용을 나타낸다. 즉, 문법 검사 시스템은 영역(1004)에서 오탈자로 지시된 단어가 문장에서 추출되면, 도 4a 에 도시된 것과 같은 오탈자 탐지 규칙을 확인하고 오탈자를 표준 단어로 변환할 수 있다. 또한, 단어에 대한 문법 처리 규칙을 적용함에 있어서는, 오탈자로 판단된 단어에 대해서는 먼저 이를 표준 단어로 변환하고, 다음으로 표준 단어에 대한 문법 처리 규칙을 적용하는 방식으로 문법 검사를 수행할 수 있다.On the other hand, the
한편, 도 1에 도시된 오탈자 검사 모듈(50)의 오탈자 생성부(52)는, 도 4a의 영역(1004)을 통해 지시되기 위한 오탈자를 유사 글자 또는 단어를 이용하여 자동으로 생성하고 이를 문법 검사 시스템에 저장할 수 있다. 이를 위하여, 오탈자 생성부(52)는 상호 간에 오탈자가 쉽게 발생할 수 있는 글자 또는 단어들의 그룹을 생성하고, 검사 대상 단어에 오탈자 그룹의 어느 하나의 글자 또는 단어가 포함되어 있을 경우 이를 그룹 내의 다른 글자 또는 단어로 치환하는 방식으로 예상되는 오탈자를 자동 생성할 수 있다. On the other hand, the
예를 들어, 상호 간에 오탈자가 발생하기 쉬운 단어의 그룹은 다음과 같은 것들이 있다: 『군/꾼, 성/형, 길/질, 기름/지름, 장이/쟁이, 둥이/동이/등이, 퉁이/통이, 숭이/송이, 걷어/거둬, 스런/스러운. 털이/떨이떠리/터리, 듯시/드시, 들이/드리, 재미/자미, 걷어/거둬, 부치/붙이』. 또한, 상호 간에 오탈자가 발생하기 쉬운 글자의 그룹은 다음과 같은 것들을 예로 들 수 있다: 『개/걔/게/계, 패/?/페/폐, 래/?/레/례, 매/메, 새/세, 내/네, 스르/슬르, 빗/빚/빛, 파/퍼, 빠/뻐, 프/푸, 쁘/뿌, 십/쉽, 쇼/소, 옹/웅, 충/총, 이/위, 기/귀, 틱틱/튀튀, 이어/여, 시어/셔, 주어/줘, 보아/봐, 두어/둬, 되/돼, 엇/었, 엿/였, ㄱ/ㄲ/ㅋ, ㄷ/ㄸ/ㅌ, ㅅ/ㅆ, ㅈ/ㅉ, ㅂ/ㅃㅍ/ㅎ, 에/예/애, 이/위, 왜/외, 방/박, 걸르/거르(종성에서 리을(ㄹ) 탈락된 예), 활/할, 깍/깎, 겟/겠, 수/숫, 위/웃/윗』. For example, groups of words that are prone to typos are as follows: ``Gun/Chun, Gender/Hyung, Gil/Jil, Oil/Diameter, Jang-Yi/Yun, Dong-Yi/Dong-Y/Etc, Tung-Yi /Tongi, Sungi/Songi, Kick/Reap, sweet/Look. Hairy/Treat/Tri, seemingly/desire, in/out, fun/jami, roll/reap, butch/paste'. In addition, groups of letters that are prone to typos among each other include the following: 『dog/he/ge/gye, loss/?/pe/lung, rae/?/re/rye, mae/me , New/Three, My/Yes, Sre/Sle, Comb/Debt/Light, F/F, F/F/F, F/F, F/F, F/F, Show/Small, On/Foo, C/C , E/up, ki/ear, tic-tick/tu-tu, ear/female, shea/she, subject/give, boa/see, couple/do, do/do, oh/oh, shit/wa, a/ㄲ/ㅋ , ㄷ/ㄸ/ㅌ, ㅅ/ㅆ, ㅈ/ㅉ, ㅂ/ㅃㅍ/ㅎ, E/Ye/Ae, Lee/Up, Why/Etc, Room/Pak, Gol/Gore (from Jongseong to Lee Eul (ㄹ) Eligible example), Bow/hal, Kkak/cut, get/go, number/number, up/laugh/up』.
일 예로, 초콜릿(chocolate)에 대한 오탈자를 자동 생성하는 과정을 설명하면, 본 실시예에서 문법 검사 시스템은 초/촤/쵸, 코/커/컬/콜, 랫/?/렛/롓/?/?/?/?/릿/?/래트/?트/레트/례트/리트의 오탈자 그룹을 토대로 "초콜릿"의 예상 오탈자를 생성할 수 있다. 즉, 초/촤/쵸는 동일 오탈자 그룹에 속해 있으므로, "초콜릿"에서 "초"를 동일 오탈자 그룹에 속한 "촤" 및 "쵸"로 각각 대체함으로써 예상 오탈자인 "촤콜릿" 및 "쵸콜릿"을 생성할 수 있다. 동일한 원리를 "초콜릿"의 다른 글자들에도 적용할 수 있으며, 그 결과 "초"를 대체 가능한 글자는 "초"와 동일 그룹에 속한 다른 글자 2개이며, "콜"을 대체 가능한 글자는 "콜"과 동일 그룹에 속한 다른 글자 3개이고, "릿"을 대체 가능한 글자는 "릿"과 동일 그룹에 속한 다른 글자 14개이므로, 총 70개(2×3×14개)의 예상 오탈자를 자동 생성하고, 이에 대한 변환 규칙을 문법 검사 시스템에 저장할 수 있다. As an example, explaining the process of automatically generating typos for chocolate, the grammar check system in this embodiment includes cho/cho/cho, co/cur/curl/call, rat/?/let/rock/? Based on the typo group of /?/?/?/lit/?/rat/?t/let/ryet/lit, you can create a predicted typo of "chocolate". That is, since cho/cho/cho belong to the same typo group, the expected typos “chocolate” and “chocolate” are expected by replacing “cho” with “cho” and “cho” belonging to the same typo group in “chocolate”. Can be created. The same principle can be applied to other letters of "chocolate", as a result, the letter that can replace "second" is "second" and two other letters in the same group, and the letter that can replace "call" is "coll." Since there are 3 other characters in the same group as "Lit" and 14 other characters in the same group as "Lit", a total of 70 (2×3×14) expected typos are automatically generated. And it is possible to store the conversion rule for this in the grammar check system.
또한 일 실시예에서, 오탈자의 생성은 오탈자 그룹을 이용하여 글자를 대체하는 방식 외에, 서로 인접한 글자들에 기초하여 적용되는 문법 규칙을 기반으로도 이루어질 수 있다. 일 예로, 단어의미사전 DB에 등록된 단어 중 두 단어가 결합되면서 앞 단어가 모음으로 끝나는 단어에 대해 앞 단어와 뒤 단어 사이에 사잇소리를 추가하여 오탈자를 생성할 수 있으며, 이에 대한 예시는 다음과 같다: 『굴비-찌개(오탈자: 굴빗찌개), 김치-찌개(오탈자: 김칫찌개), 깍두기-찌개(오탈자: 깍두깃찌개), 꽁치-김치찌개(오탈자: 꽁칫김칫찌개)』. 또는/또한, 두 단어가 결합되면서 앞 단어와 뒤 단어 사이에 사잇소리가 포함된 단어의 경우 사잇소리를 제거하여 오탈자를 생성할 수도 있으며, 이에 대한 예시는 다음과 같다: 『제삿날(오탈자: 제사날)』.In addition, in an embodiment, in addition to a method of replacing letters using a group of typos, typographical characters may be generated based on grammar rules applied based on adjacent letters. As an example, a typo can be created by adding a gap between the front word and the back word for a word whose front word ends as a vowel while two words are combined among words registered in the word semantic dictionary DB. Same as: 『Gulbi-Jjigae (Othalja: Oyster Bit Jjigae), Kimchi-Jjigae (Othalja: Kimchi-jjigae), Kkakdugi-Jjigae (Kkakdugijigae), and Saury-Kimchi-Jjigae (Otalja: Saongchitkimchijigae). Or/or, in the case of a word that contains a gap between the preceding word and the back word while two words are combined, a typo may be created by removing the gap sound, and examples of this are as follows: day)".
도 4b는 품사의 상세 분류에 따른 문법 사항을 나타내는 또 다른 예시적인 화면이다. 4B is another exemplary screen showing grammar items according to detailed classification of parts of speech.
도 4b를 참조하면, 문법 검사 시스템의 관리자 화면에는 단어에 관련된 품사의 상세 종류(즉, 속성 정보)가 표시되는 영역(1011)과, 해당 단어에 대한 문법 사항으로서 어미사용 규칙이 표시되는 영역(1012) 및 띄어쓰기와 조사사용 규칙이 표시되는 영역(1013), 문법 처리 규칙이 함수 형태로 표시되는 영역(1014), 단어결합 규칙이 표시되는 영역(1016) 및 오탈자 처리 규칙이 표시되는 영역(1015) 등이 표시될 수 있다. 설명의 중복을 피하기 위하여, 도 4b에 도시된 각 영역 중 도 4a를 참조하여 전술한 사용자 인터페이스와 차이가 있는 부분에 대해서만 설명한다. Referring to FIG. 4B, on the manager screen of the grammar checking system, an
도 4b는 품사가 어미에 해당하며 본 실시예에 따라 용언으로서 의미성질 구분이 연결형으로 분류되는 "므로"라는 단어에 대해 정의된 문법 처리 규칙을 나타낸다. 이때, 문법 처리 규칙으로서 "므로"라는 어미가 결합될 수 있는 용언의 종류가 영역(1012)을 통해 정의되며, 도 4b에 도시된 예에서는 "므로"라는 어미의 어미사용 규칙으로서 해당 단어가 규칙 변형을 따르는 용언의 기본형 규칙 어간에만 결합할 수 있고, 용언의 기본형 불규칙 어간에는 붙일 수 없도록 문법 처리 규칙이 정의된 것을 나타낸다. 예를 들어, 규칙 변형과 불규칙 변형의 형태가 상이한 기본형(규칙: 만들, 불규칙: 만드, 존칭: 만드시)을 가지는 "만들다"에 "므로"가 결합되는 경우, "만들므로"는 맞는 말이지만, "만드므로"는 틀린 말이며, 이러한 결합 규칙이 도 4b의 [어미를 붙일 수 있는 용언 종류]에 의해 정의되었다. 4B shows a grammar processing rule defined for the word "because" in which part of speech corresponds to a ending and semantic property classification as a term is classified as a connection type according to the present embodiment. At this time, the type of proverb to which the ending “because” can be combined as a grammar processing rule is defined through the
또한, 도 4b의 영역(1016)은 "므로"라는 단어의 결합 규칙으로서 "므로"가 모음과 리을의 결합으로 끝나는 단어에 결합될 경우 대체어인 "이므로"의 형태로 결합되도록 문법 처리 규칙이 정의된 것을 나타낸다. In addition, the
한편, 도 4a 및 4b에 도시된 것과 같이 실시예들에 따른 문법 검사 시스템은 단어에 대해 정의된 (처리)함수 또는 (문장)함수를 실행함으로서 문법 처리 규칙을 실행하도록 구성된다. 이때 각 함수는 문법적인 전문 지식을 컴퓨팅 장치에서 판독 가능한 언어로 변환하도록 소정의 프로토콜에 의해 정의되며, 단어의미사전 DB에 정의된 품사의 상세종류 등을 이용하여 단어 또는 글자에 대한 변환을 실시하기 위한 것이다. Meanwhile, as shown in FIGS. 4A and 4B, the grammar checking system according to the embodiments is configured to execute a grammar processing rule by executing a (processing) function or a (sentence) function defined for a word. At this time, each function is defined by a predetermined protocol to convert grammatical expertise into a language that can be read by a computing device, and converting a word or letter using the detailed types of parts of speech defined in the word semantic dictionary DB For.
일 실시예에 따른 문법 검사 시스템에서 함수를 정의하기 위한 프로토콜에 사용되는 각 기호와 이의 명칭 및 기능 설명을 설명하면 아래의 표 1 내지 표 3과 같다. Each symbol used in a protocol for defining a function in the grammar checking system according to an embodiment, and a description of the name and function thereof, are given in Tables 1 to 3 below.
나오도록 지시하는 명령어
예) ■exit: 무조건 빠져나오기,
▶exit 바꿀말 없이 빠져나오기 While processing specific grammar rules, forcibly exiting the processing routine
Command to come out
Ex) exit: exit unconditionally,
▶exit Exit without change
의미함. 예) [*체언-명사-의존-시간*], [*용언-형용사
-연결형-존칭*], [*형용사-좋아하다*] The location of the group where parts of speech are divided in detail, that is, the detailed types of
Means. Example) [*corpse-noun-dependence-time*], [*verb-adjective
-Connected type-honor*], [*adjective-like*]
and, or, xor=, !=
and, or, xor
조건Equal sign/logical
Condition
and(교집한), or(합집합), xor=(제외조건) =(positive condition), !=(negative condition)
and(intersection), or(union), xor=(exclusion condition)
문서의 종류 = {법률, 대통령령, 시행규칙, 판례,
법령해석례, 연구서, 논문, 공문, 계획서}
예) ■[*용언*]하여서는 if docu = '대통령령'
▶[*용언*]해서는
※ 이 문서가 '대통령령'이면, '좋아하여서는' 이라는
표현을 '좋아해서는'으로 수정하는 명령어This is a variable that identifies and designates the type of document.
Type of document = {laws, presidential decrees, enforcement regulations, precedents,
Interpretation of laws and regulations, research papers, thesis, officials, plans}
Example) ■[*word*] If docu ='President'
▶[*words*]
※ If this document is'President',
Command to modify the expression to'I like it'
Contents = start(시작), end(끝), page(페이지),
para(단락), sen(문장), word(단어)
before/after(바로 앞/뒤의 어절 및 문장)
pre/post(시작/끝 부분에서부터 현재 위치까지)
예) ■AAA if 지방자치단체 in pre sen ▶BBB
※ 문장의 시작 부분부터 현재의 어절의 앞에
'지방자치단체'라는 용어가 포함되면,
'AAA'를 'BBB'로 수정하는 명령어Designate the current location among the documents to be reviewed
Contents = start (start), end (end), page (page),
para (paragraph), sen (sentence), word (word)
before/after (words and sentences immediately before/after )
pre/post (from start/end to current position)
Example) ■AAA if local government in pre sen ▶BBB
※ From the beginning of the sentence, before the current word
When the term'local government' is included,
Command to change'AAA'to'BBB'
옵션One-to-one matching
option
단어/어절/구절을 일대일(1:1)로 매칭하는 옵션The order of the words to be replaced and the suggested words matched
Option to match words/phrases/phrases one-to-one (1:1)
옵션Many-to-one matching
option
순서에 따라 서로 매칭되어야 함One or more words refer to a letter/word, and words to change and recommendations
Must match each other in order
문자열 또는
없는 경우1 or more
String or
If not
따라 서로 매칭되어야 함It refers to a sequence of more than one number, and the words to be replaced and recommended words are in order.
Must match each other accordingly
용어는 변환하지 않는다.
예) 찾는 단어-[제외하는 단어],
단, 제외어는 바꿀말을 포함하고 있어야 함Among the results detected before the sign "-",
The term is not converted.
Ex) Search word-[words excluded],
However, negative words must contain the words to change
분리 옵션OR item
Separation option
주소Description or
address
int(#, 0) 자연수를 분해하지 않음■ int(#, 3) ▶ $$$,$$$,$$$ Decompose natural numbers by 3 digits
int(#, 0) do not decompose natural numbers
소수점 이하 2자리까지 절단
예) float(#, 3, 2) 34,631,965.73■ float(#, 3, 2) ▶ $,$$$,$$$.$$ 3 natural numbers
Truncate to 2 decimal places
Ex) float(#, 3, 2) 34,631,965.73
(글자)Built-in function
(letter)
뒷글자(글자)First letter last (letter), Last first letter (letter), First letter (letter),
Back character (character)
(단어)Built-in function
(word)
뒷어절(단어), 앞문장(단어), 뒷문장(단어)Front word (word), trailing word (word), preceding phrase (word),
Back sentence (word), front sentence (word), back sentence (word)
예) ■자동차을 if 앞글자종성(을) = 모음▶자동차를A word whose finality ends with a vowel.
E.g.) ■If the car is the initial character, it is a vowel ▶ car
모음, ㄴ 이외의 글자로 끝나는 단어Vowels, words ending in b,
Vowels, words ending with letters other than ㄴ
무성음(모음, ㄴ, ㄹ, ㅁ, ㅇ 이외의 글자)Voiced sound (vowel, ㄴ, ㄹ, ㅁ, ㅇ),
Unvoiced (vowels, letters other than ㄴ, ㄹ, ㅁ, ㅇ)
(예, if before sen = 의문문)Statement, question, exclamation, imperative
(Yes, if before sen = question)
(예, if before sen = 의문문)Subject, object, indirect object, predicate, adverb, bore
(Yes, if before sen = question)
도 5a 내지 5c는 일 실시예에 따른 문법 검사 시스템에서 함수에 의한 문법 처리 규칙을 나타내는 예시적인 사용자 인터페이스의 개념도이다. 5A to 5C are conceptual diagrams of an exemplary user interface illustrating a grammar processing rule by a function in a grammar checking system according to an exemplary embodiment.
먼저, 도 5a는 도 4b에 도시된 단어 "므로"에 대하여 정의된 함수 "하므로/함으로"의 상세 내용을 나타내는 화면이다. 도 5a에 도시된 것과 같이, "하므로/함으로"의 함수는 이의 실행 조건인 『[*용언-명사형*]으로』또는 『[*명사*]임으로』의 어절이 탐지되거나(조건 1), 또는 『[*용언-기본형*]므로』의 어절이 탐지되는 것(조건 2)에 대한 응답으로 실행되며, 이때 실행할 변경 내용 역시 단어의 속성 정보를 기초로 정의된다. 예를 들어, 조건 1의 첫 줄에 기재된 함수는 『[*명사-사람관계*]으로』로 이루어지는 어절이 탐지될 경우 이를 『[*명사-사람관계*]이므로』로 변경하는 문법 처리 규칙을 지정한다. First, FIG. 5A is a screen showing details of the function “because/because” defined for the word “because” shown in FIG. 4B. As shown in Fig. 5A, the function of "because / as" is detected as its execution condition, "as in [*terms-noun form*]" or "as in [*noun*]" (condition 1), or It is executed in response to the detection of a word of 『[*Terminology-Basic Type*]Because』" (Condition 2), and changes to be executed at this time are also defined based on the attribute information of the word. For example, the function written in the first line of condition 1 changes the grammar processing rule to change it to “because it is [*noun-person relationship*]” when a word consisting of “[*noun-person relationship*]” is detected. Specify.
도 5a에 도시된 것과 같이, 동일한 조건에 의하여 실행되는 함수라고 하더라도 대상 단어 또는 대상 어절에 포함된 단어의 속성정보(예컨대, [*명사-사람관계*], [*명사-조직과건물*], [*명사-지시형상*], [*명사-추상개념*]에 따라 세부적인 문법 처리 내용이 상이할 수 있다. 따라서, 실시예들에서는, 단어의 속성정보에 기초한 문법 처리 규칙을 함수의 형태로 정의하고 이를 이용하여 자동으로 문범 검사를 수행할 수 있다. As shown in Fig. 5A, even if the function is executed under the same condition, attribute information of the target word or the word included in the target word (for example, [*noun-person relationship*], [*noun-organization and building*] , [*Noun-indicative shape*], and [*noun-abstract concept*], detailed grammar processing contents may be different, so in embodiments, grammar processing rules based on attribute information of words are It is defined as a form and can be used to automatically perform text inspection.
한편, 도 5a의 함수 "하므로/함으로"는 문법 처리 규칙 중 "므로"와 "으로"의 오탈자 교정에 해당하는 것이며, 도 5b는 또 다른 예로서 문법 처리 규칙 중 띄어쓰기에 관련된 "못하다/못 하다"의 함수를 나타낸다. On the other hand, the function "because / as" of FIG. 5A corresponds to correction of typos in "because" and "as" among grammar processing rules, and FIG. 5B is another example of "cannot/cannot" related to spacing in grammar processing rules. Represents a function of ".
도 5b를 참조하면, "못하다/못 하다"의 함수는 이의 실행 조건인 『못[*하다*]』 또는 『잘 못 [*하다*]』의 어절이 탐지되거나(조건 1), 또는 『못[*하다*]』 또는 『잘 못[*하다*]』의 어절이 탐지되는 것(조건 2)에 대한 응답으로 실행되며, 이때 실행할 변경 내용은 단어의 속성 정보를 기초로 정의된다. 예를 들어, 조건 1의 첫 줄에 기재된 함수는 『[*용언-기본형*]지』에 "는" 또는 "를"이 결합되고 그 뒤에 『못 [*하다*]』가 기재된 문장이 탐지될 경우, 이 중 『못 [*하다*]』 부분에서 띄어쓰기 오류를 없애고 이를 『못[*하다*]』로 변경하는 문법 처리 규칙을 지정한다. Referring to FIG. 5B, in the function of “cannot/cannot”, a word of “not [*do*]” or “wrong [*do*]” as its execution condition is detected (condition 1), or Executed in response to the detection of a word of [*haha*]』 or 『wrong[*haha*]』 (condition 2), and the change to be executed at this time is defined based on the attribute information of the word. For example, the function written in the first line of condition 1 is that a sentence containing "is" or "to" is combined with "[*terms-basic form*]ji", followed by "not [*do*]". In this case, the grammar processing rule that removes the spacing error in the 『Can't [*hada*]] part and changes it to 『Non[*hada*]』 is specified.
한편, 또 다른 실시예에서는 도 5c에 도시된 것과 같이 함수 자체가 특정 속성정보를 대상으로 하는 것으로서, 해당 속성정보를 가지는 단어가 포함된 문구가 탐지되는 것을 조건으로 함수가 실행되도록 할 수도 있다. 도 5c에 도시된 함수 "체언-명사-단위-시간빛속도" 함수는, 속성정보로서 [*단위-시간빛속도*]를 포함하는 단어의 뒤에 "간", "경", "근", "대", "거리", "만", "반", "새", "차", "치", "여"와 같은 글자 및 조사가 결합된 어절이 검색되는 것에 대한 응답으로 실행되며 [*단위-시간빛속도*]의 속성을 가지는 단어와 그 뒤에 오는 글자 사이의 띄어쓰기를 삽입 또는 제거하는 문법 처리 규칙을 지정한다(조건 1 내지 조건 3). Meanwhile, in another embodiment, as illustrated in FIG. 5C, the function itself targets specific attribute information, and the function may be executed on condition that a phrase including a word having the attribute information is detected. The function "cheong-noun-unit-time light speed" function shown in FIG. 5C is "liver", "currency", "root", after a word including [*unit-time light speed*] as attribute information. It is executed in response to a search for a word combining words such as "large", "distance", "only", "ban", "bird", "car", "chi", "female", and a [ A grammar processing rule that inserts or removes a space between a word having the property of *unit-time speed*] and the letter following it is specified (conditions 1 to 3).
또한, 문법 처리 규칙을 나타내는 함수는 서로 인접한 단어들의 속성정보를 기반으로 정의될 수도 있으며, 도 5c에 도시된 "체언-명사-단위-시간빛속도"의 조건 4는 [*단위-시간빛속도*]의 속성을 가지는 단어와 [*의존-위치방향전후*]의 속성을 가지는 단어가 결합되었을 경우 결합되는 양 단어 사이에 띄어쓰기를 삽입하도록 하는 문법 처리 규칙을 지정하고 있다. In addition, a function representing a grammar processing rule may be defined based on attribute information of words adjacent to each other, and condition 4 of "Chong-on-noun-unit-time light speed" shown in FIG. 5C is [*unit-time light speed When a word with the attribute of *] and a word with the attribute of [*dependence-position direction*] are combined, a grammar processing rule is specified to insert a space between the combined words.
그러나, 이상에서 도면을 참조하여 설명한 문법 처리 규칙의 함수 형태는 예시적인 것으로서, 실시예들에 따른 문법 검사 시스템 및 방법에 의하여 실행될 수 있는 문법 처리 규칙 및 함수의 종류는 본 명세서에서 설명하는 예시로 한정되는 것은 아니다. 즉, 도 4a 및 4b에 도시된 것과 같이 특정 속성을 가지는 단어에 대하여 정의되는 띄어쓰기 규칙, 조사사용 규칙, 어미사용 규칙 및 단어결합 규칙 등과, 또는 도 5a 내지 5c에 도시된 것과 같이 특정 속성을 가지는 단어와 관련하여 해당 단어가 포함된 문서의 종류, 문장의 위치, 해당 단어의 인접 문자 등을 조건으로 정의되는 처리 규칙이 모두 본 명세서의 문법 처리 규칙에 해당할 수 있다. However, the form of the function of the grammar processing rule described above with reference to the drawings is exemplary, and the types of grammar processing rules and functions that can be executed by the grammar checking system and method according to the embodiments are as examples described in the present specification. It is not limited. That is, as shown in Figs. 4A and 4B, a spacing rule, a search use rule, a ending rule and a word combination rule, etc., defined for a word having a specific attribute, or a specific attribute as shown in Figs. 5A to 5C. In relation to a word, processing rules defined based on conditions such as the type of document including the word, the position of the sentence, and adjacent characters of the word may all correspond to the grammar processing rules of the present specification.
다시 도 2를 참조하면, 실시예들에 따른 문법 검사 방법에서는 이상의 과정에 의하여 입력 텍스트 내의 특정 단어 또는 해당 단어가 포함된 어절에서 오류가 탐지되는지 여부를 검사하여(S8), 오류가 존재하는 경우 문법 오류에 대한 정보를 검사 결과로서 출력할 수 있다(S10). 이때, 해당 오류를 수정하기 위한 대체어가 문법 처리 규칙에 정의되어 있는 경우, 문법 검사 시스템은 검사 결과를 출력하기에 앞서 오류 부분을 문법 처리 규칙에 따라 변환할 수도 있다(S9). 이상과 같은 방식으로 입력 텍스트 내의 각 문장에 대해 문법 검사를 실시할 수 있다. Referring back to FIG. 2, in the grammar checking method according to the embodiments, by checking whether an error is detected in a specific word in the input text or a word containing the word through the above process (S8), when an error exists. Information on the grammar error may be output as a result of the inspection (S10). In this case, if a substitute word for correcting a corresponding error is defined in the grammar processing rule, the grammar checking system may convert the error part according to the grammar processing rule before outputting the check result (S9). A grammar check can be performed for each sentence in the input text in the manner described above.
일 실시예에서, 문법 검사 시스템은 전술한 문법 검사 과정과 별개로 어간의 확장을 통한 복합 용언의 생성을 자동으로 수행하고, 그 결과 생성된 복합 용언을 단어의미사전 DB에 추가할 수 있다. In an embodiment, the grammar checking system may automatically generate compound verbs through expansion of stems apart from the above-described grammar check process, and add the resulting compound verbs to the word semantic dictionary DB.
이는, 동사, 형용사 등은 용언을 단어의미사전 DB에 등록하더라도 실제 문장에서 활용되는 형태가 기본형에 한정되지 않으므로 문법 처리 규칙을 적용하기 어려운 문제점을 해결하기 위한 것이다. 예를 들어, 동일한 어미라고 하여도 어간의 형태에 문법적 성격이 다를 수 있는데, 어미 "요"는 기본형 "되"의 뒤에는 결합될 수 없고, 연결형 "돼", "되어"의 뒤어만 결합될 수 있는 등 어간의 형태에 따라 문법 처리 규칙이 상이한 경우가 있다. 본 실시예에서는, 문장에서 실제 활용되는 형태로 용언의 어간을 확장한 형태로 복합 용언을 자동 생성함으로써 보다 정확한 문법 검사가 이루어질 수 있도록 할 수 있다.This is to solve the problem that it is difficult to apply grammar processing rules for verbs, adjectives, etc., since the form used in the actual sentence is not limited to the basic form even if the term is registered in the word meaning dictionary DB. For example, even if the ending is the same, the stem shape may have different grammatical characteristics. The ending "yo" cannot be combined after the basic form "do", and only the endings of the concatenated forms "been" and "become". There are cases in which the rules of grammar processing differ depending on the shape of the stem, such as that there is. In the present embodiment, a more accurate grammar check can be performed by automatically generating a compound verb in a form in which the stem of the verb is expanded in a form that is actually used in a sentence.
도 6은 일 실시예에 따른 문법 검사 방법에서 어간 확장을 통한 복합 용언의 생성 과정을 나타내는 순서도로서, 도 6에 도시된 동작은 도 1을 참조하여 전술한 용어 관리 모듈(40)에 의하여 이루어질 수 있다.6 is a flowchart illustrating a process of generating a compound verb through stem expansion in a grammar checking method according to an exemplary embodiment. The operation shown in FIG. 6 may be performed by the
도 1 및 도 6을 참조하면, 먼저 용어 관리 모듈(40)의 기초 용언 관리부(41)는 저장 모듈(10)의 단어의미사전 DB에 저장된 단어들로부터 단일어 용언을 수집할 수 있다(S11). 단일어란, 어미를 형태소에서 제외할 때 하나의 형태소만으로 이루어지는 단어를 의미하며, 예컨대, "만들다" 및 "하다" 등이 단일어에 해당한다. Referring to FIGS. 1 and 6, first, the basic
다음으로, 기초 용언 관리부(41)는 단일어에서 어미의 변화에 관계 없이 동일한 부분을 기초 용언으로서 추출한다(S12). 예컨대, "만들다" 및 "하다"의 경우 어간에 해당하는 "만들" 및 "하" 부분이 기초 용언에 해당될 수 있다. Next, the basic
다음으로, 기초 용언 관리부(41)는 기초 용언에 대한 불규칙 종류를 결정하고, 기초 용언의 어간에 대한 확장을 실행할 수 있다(S13). 이는 문법 검사 시스템의 관리자에 의하여 지정된 불규칙 종류를 이용하여 이루어질 수도 있으며, 또한 관리자가 기초 용언의 어간의 확장된 형태 중 일부 또는 전부를 입력하여 이를 문범 검사 시스템에 저장하는 방식으로 이루어질 수도 있다. Next, the basic
다음으로, 용어 관리 모듈(40)의 복합 용언 생성부(42)는 기초 용언의 확장된 어간을 다른 용언과 결합하는 방식으로 어간을 확장함으로써, 결합어 또는 합성어에 해당하는 복합 용언을 생성할 수 있다(S14). 즉, 단일어의 어간 앞에 다른 단어를 결합함으로서 합성어나 결합어에 해당하는 복합 용언을 생성할 수 있다. 이때, 단일어의 확장된 어간에 대하여 각각 합성어나 결합어를 생성함으로써, 어간이 확장된 합성어나 결합어를 생성할 수 있다. 이와 같이 생성된 복합 용언은 저장 모듈(10)의 단어의미사전 DB에 등록될 수 있다(S15). Next, the compound
도 7은 도 6에 도시된 복합 용언의 생성 과정을 나타내는 개념도이다. 7 is a conceptual diagram illustrating a process of generating the compound verb shown in FIG. 6.
도 7을 참조하면, 단일어 용언인 "하다"의 경우 "여" 불규칙 특성을 가지는 단어이며, 기본형(규칙: 하, 불규칙: 하, 존칭: 하시), 진행형(하는, 하시는), 현재형(한, 하신), 연결형(하여, 해, 하셔, 하시어), 과거형(하였, 했, 하셨, 하시었), 미래형(할, 하실), 종료형(합, 하심), 명사형(함, 하심) 등으로 어간이 확장된다. 실시예들에 따른 문법 검사 시스템은, "하다"를 기초 용언으로 하여 이의 불규칙 특성에 대한 정보와 확장된 어간의 각 형태에 대한 정보를 관리자로부터 입력받을 수 있다. Referring to FIG. 7, in the case of a single term “hada”, “female” is a word having irregular characteristics, and a basic type (rule: ha, irregular: ha, honorable name: ha), progressive type (ha, ha), present type (han, Haha), connected type (Ha, Ha, Ha Ha, Ha Ha), past type (Ha, Ha, Ha, Ha Ha), future type (Ha, Ha Ha), ending type (Ha, Ha Ha), noun type (Ha, Ha Ha), etc. Is expanded. The grammar checking system according to the embodiments may receive information on irregular characteristics thereof and information on each shape of an extended stem from an administrator using "hada" as a basic term.
다음으로, 실시예들에 따른 문범 검사 시스템은 기초 용언인 "하다"의 확장된 어간 앞에 "좋아" 라는 단어를 결합함으로써 복합 용언인 합성어 "좋아하다"의 확장된 어간을 생성할 수 있다. 즉, "좋아"에 "여" 불규칙을 갖는 "하다"의 확장 어간의 결합된 복합 용언은, 기본형(규칙: 좋아+하, 불규칙: 좋아+하, 존칭: 좋아+하 시), 진행형(좋아+하는, 좋아+하시는), 현재형(좋아+한, 좋아+하신), 연결형(좋아+하여, 좋아+해, 좋아+하셔, 좋아+하시어), 과거형(좋아+하였, 좋아+했, 좋아+하셨, 좋아+하시었), 미래형(좋아+할, 좋아+하실), 종료형(좋아+합, 좋아+하심), 명사형(좋아+함, 좋아+하심) 등으로 어간이 확장될 수 있다. Next, the text inspection system according to the embodiments may generate an extended stem of the compound word “like”, which is a compound verb, by combining the word “like” in front of the extended stem of the basic verb “hada”. In other words, the combined terminology of the extended stems of "hada" with irregular "female" in "like" is a basic form (rule: like + ha, irregular: like + ha, honorable title: like + ha), progressive (like) +Do, Like+Have), Present Tense (Like+Han, Like+Have), Connected Type (Like+Do, Like+Do, Like+Do, Like+Do), Past Tense (Like+Ha, Like+Ha, Favor+) The stem can be extended to the noun type (like + like, like + like), future (like + like, like + like), ending (like + like, like + like), noun (like + like, like + like).
한편, 이상의 과정에 의하여 복합 용언의 생성 과정에서 기초 용언은 "들다"의 기본형(규칙: 들, 불규칙: 드, 존칭: 드시), 진행형(규칙: 드는, 존칭: 드시는), 현재형(규칙: 든, 존칭: 드신), 연결형(규칙: 들어, 존칭: 드셔) 등과 같이 규칙 변형과 불규칙 변형의 형태가 상이한 단어일 수도 있으며, 이를 기초로 "만-들다", "줄어-들다", "힘-들다", "잠-들다", "뛰어-들다", "흔-들다", "드나-들다", "접어-들다", "떠-들다" 등의 복합 용언이 생성될 수 있다. 예를 들어, "만-들다"라는 복합 용언은 기본형(규칙: 만들, 불규칙: 만드, 존칭: 만드시), 진행형(규칙: 만드는, 존칭: 만드시는), 현재형(규칙: 만든, 존칭: 만드신), 및 연결형(규칙: 만들어, 존칭: 만드셔)을 가질 수 있다. On the other hand, in the process of generating compound verbs by the above process, the basic verbs are the basic form (rule: wild, irregular: de, honorable name: eat), continuous type (rule: lift, honorable name: eat), present form (rule: all) , Honorable name: eat), connection type (rule: listen, honorable name: eat), and the like, may be words that have different forms of rule transformation and irregular transformation, and based on this, "make-to", "reduce-to", "power- Complex verbs such as "to hold", "sleep-to-hold", "bounce-to", "to shake-to", "to-to", "to fold-to", and "to-to" may be generated. For example, the compound verb "make-make" is the basic form (rule: make, irregular: make, honorable name: make), continuous (rule: make, honorable name: make), present tense (rule: made, honorable: made), And a connection type (rule: make, honorable name: make).
도 8a 및 8b는 일 실시예에 따른 문법 검사 시스템에서 어간 확장을 통한 복합 용언의 생성에 관련된 예시적인 사용자 인터페이스의 개념도이다.8A and 8B are conceptual diagrams of an exemplary user interface related to generation of compound verbs through stem expansion in a grammar checking system according to an embodiment.
도 8a에 도시된 것과 같이, 기초 용언 "없다"에 대하여 이의 기본형(없), 불규칙(없으), 진행형(없은), 현재형(없는), 연결형(없어), 과거형(없었, 없으랬), 미래형(없을), 종결형(없습), 명사형(없음) 및 이들 각각에 상응하는 존칭 형태(없으시, 없으시는, 없으신, 없으셔, 없으시어, 없으시었, 없으시랬, 없으실, 없으십, 없으심)가 기초 용언의 어간 확장을 통해 결정될 수 있다. 예컨대, 문법 검사 시스템의 관리자는 단어의미사전 DB에 기록된 각 단어 중 기초 용언에 대하여 확장된 어간의 각 형태를 입력할 수 있다. As shown in Fig. 8A, the basic form (no), irregular (no), progressive (no), present (no), connected (no), past (no, no), future type for the basic term "no" (None), Termination (No), Noun (None), and the forms of honors corresponding to each of these (No, No, No, No, No, No, No, No, No, No) It can be determined by extending the stem of the basic verb. For example, the manager of the grammar checking system may input each form of extended stem for basic verbs among the words recorded in the word meaning dictionary DB.
이때, 문법 검사 시스템은 도 8b에 도시된 것과 같이 기초 용언 "없다"의 앞에 "가"를 결합한 "가없다"라는 복합 용언을 자동으로 생성할 수 있으며, 복합 용언 "가없다"의 확장된 어간 형태, 즉, 기본형, 불규칙, 진행형, 현재형, 연결형, 과거형, 미래형, 종결형 및 명사형과 이들 각각에 상응하는 존행 형태는 기초 용언 "없다"의 확장된 어간의 각 형태 앞에 "가"를 결합하는 것에 의하여 자동으로 생성될 수 있다. 이처럼 기초 용언인 단일어의 어간을 확장하고, 단일어의 확장 어간을 이용하여 결합어, 합성어 등의 어간을 확장하는 것을 통하여 동사, 형용사 등 용언의 실제 사용되는 형태를 단어의미사전 DB에 추가할 수 있다. At this time, the grammar checking system can automatically generate a compound verb "nothing" by combining "A" in front of the basic verb "no" as shown in FIG. 8B, and an extended stem form of the compound verb "No", In other words, the basic, irregular, continuous, present, connected, past, future, terminating and noun forms and their respective surviving forms are automatically combined by combining "A" in front of each form of the extended stem of the basic verb "no". Can be created with In this way, by expanding the stem of a single word, which is a basic term, and extending stems such as conjoined words and compound words by using the extended stem of a single word, it is possible to add the actually used forms of verbs and adjectives to the word semantic dictionary DB. .
이상에서 설명한 실시예들에 따른 문법 검사 방법에 의한 동작은 적어도 부분적으로 컴퓨터 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 실시예들에 따른 방법에 의한 동작을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인 프로그램, 코드 및 코드 세그먼트(segment)들은 본 실시예가 속하는 기술 분야의 통상의 기술자에 의해 용이하게 이해될 수 있을 것이다.The operation by the grammar checking method according to the embodiments described above may be implemented at least partially as a computer program and recorded in a computer-readable recording medium. A recording medium in which a program for implementing an operation according to the method according to the embodiments is recorded and the computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. In addition, the computer-readable recording medium may be distributed over a computer system connected through a network, and computer-readable codes may be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing this embodiment may be easily understood by those skilled in the art to which this embodiment belongs.
이상에서 살펴본 본 발명은 도면에 도시된 실시예들을 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위 내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 청구범위의 기술적 사상에 의해서 정해져야 할 것이다.The present invention described above has been described with reference to the embodiments shown in the drawings, but these are merely exemplary, and those of ordinary skill in the art will understand that various modifications and variations of the embodiments are possible therefrom. However, such modifications should be considered to be within the technical protection scope of the present invention. Therefore, the true technical scope of the present invention should be determined by the technical spirit of the appended claims.
Claims (11)
복수 개의 단어 및 상기 복수 개의 단어 각각에 상응하는 속성정보를 포함하는 단어의미사전 데이터베이스와, 상기 속성정보를 이용하여 정의된 처리 규칙 정보를 저장하도록 구성된 저장 모듈;
상기 단어의미사전 데이터베이스에 기초하여, 입력 데이터로부터 하나 이상의 문장을 추출하며, 추출된 하나 이상의 문장으로부터 하나 이상의 단어 또는 어절을 분리하도록 구성된 입력 모듈;
분리된 하나 이상의 단어 또는 어절에 대하여, 상기 속성정보를 이용하여 정의된 문법 처리 규칙을 적용함으로써 문법 오류를 탐지하도록 구성된 문법 검사 모듈; 및
상기 문법 검사 모듈에 의해 탐지된 오류에 대한 정보를 제공하도록 구성된 출력 모듈을 포함하되,
상기 속성정보는, 단어의 성분을 나타내는 제1 속성, 단어의 품사를 나타내는 제2 속성, 및 단어의 의미성질구분을 나타내는 제3 속성을 포함하여 단계적으로 정의되며, 상기 제3 속성은 성분 및 품사가 동일한 단어들 중에서 적용 문법이 동일한 단어들의 그룹을 정의하는 것으로서 하나의 상기 제2 속성에 대하여 상기 제2 속성의 하위 단계에 상응하는 하나 이상의 상기 제3 속성이 정의되고,
상기 문법 검사 시스템은, 상기 분리된 하나 이상의 단어 또는 어절에 상응하는 상기 제1 속성, 상기 제2 속성 및 상기 제3 속성을 결정하도록 더 구성되며,
상기 처리 규칙 정보는,
단어의 상기 제3 속성을 이용하여 정의되는 띄어쓰기 규칙, 조사사용 규칙, 어미사용 규칙 및 단어결합 규칙 중 하나 이상을 포함하고,
단어 또는 글자에 대한 변환을 실시하기 위한 문법 규칙이 컴퓨팅 장치에서 판독 가능한 언어로 변환되어 사용자에게 표시되며 사용자에 의해 수정 가능한 처리 함수의 형태로 정의되는 문법 검사 시스템.
As a grammar checking system,
A storage module configured to store a word semantic dictionary database including a plurality of words and attribute information corresponding to each of the plurality of words, and processing rule information defined using the attribute information;
An input module configured to extract one or more sentences from input data, and to separate one or more words or phrases from the extracted one or more sentences based on the word semantic dictionary database;
A grammar checking module configured to detect a grammar error by applying a grammar processing rule defined using the attribute information to one or more separated words or phrases; And
Comprising an output module configured to provide information on an error detected by the grammar checking module,
The attribute information is defined step by step including a first attribute indicating a component of a word, a second attribute indicating a part of speech of a word, and a third attribute indicating a semantic property classification of the word, and the third attribute is a component and a part of speech. Is defining a group of words having the same applied grammar among the same words, and at least one third attribute corresponding to a lower level of the second attribute is defined for one of the second attribute,
The grammar checking system is further configured to determine the first attribute, the second attribute, and the third attribute corresponding to the separated one or more words or phrases,
The processing rule information,
Including one or more of a spacing rule, a search use rule, a ending rule, and a word combination rule defined using the third attribute of a word,
A grammar checking system in which grammar rules for converting words or characters are converted into a language readable by a computing device, displayed to a user, and defined in the form of a processing function that can be modified by the user.
상기 처리 함수는, 문서종류, 문장위치, 인접문자 중 하나 이상을 조건으로 실행되는 문법 검사 시스템.
The method of claim 1,
The processing function is a grammar checking system that is executed on condition of at least one of a document type, a sentence position, and an adjacent character.
활용형이 미리 정의된 기본 용언을 다른 단어와 결합하여 어간을 확장함으로써 활용형이 정의된 복합 용언을 생성하고, 상기 복합 용언을 상기 단어의미사전 데이터베이스에 저장하도록 구성된 용어 관리 모듈을 더 포함하는 문법 검사 시스템.
The method of claim 1,
Grammar inspection system further comprising a term management module configured to generate a compound verb with a conjugated form defined by combining a basic term with a pre-defined conjugated form with other words to expand the stem, and store the compound term in the word semantic dictionary database .
미리 설정된 글자 또는 단어의 그룹을 이용하여 상기 단어의미사전 데이터베이스에 포함된 단어의 일부를 치환함으로써 예상 오탈자를 생성하도록 구성된 오탈자 생성부; 및
상기 오탈자 생성부에 의하여 생성된 예상 오탈자에 기초하여, 상기 분리된 하나 이상의 단어 또는 어절에 대한 오탈자 검사를 실행하도록 구성된 오탈자 검사부를 포함하는 오탈자 검사 모듈을 더 포함하는 문법 검사 시스템.
The method of claim 1,
A typo generator configured to generate a predicted typo by substituting a part of a word included in the word semantic dictionary database by using a preset character or group of words; And
A grammar checking system further comprising a typo checking module comprising a typo checking unit configured to perform a typo checking on the separated one or more words or words based on the expected typo generated by the typo generating unit.
상기 문법 검사 시스템에 상기 속성정보를 이용하여 정의된 처리 규칙 정보를 저장하는 단계;
상기 문법 검사 시스템이 입력 데이터로부터 하나 이상의 문장을 추출하는 단계;
상기 문법 검사 시스템이, 상기 단어의미사전 데이터베이스에 기초하여, 추출된 하나 이상의 문장으로부터 하나 이상의 단어 또는 어절을 분리하는 단계;
상기 문법 검사 시스템이, 분리된 하나 이상의 단어 또는 어절에 대하여, 상기 속성정보를 이용하여 정의된 문법 처리 규칙을 적용함으로써 문법 오류를 탐지하는 단계; 및
상기 문법 검사 시스템이, 탐지된 오류에 대한 정보를 제공하는 단계를 포함하되,
상기 속성정보는, 단어의 성분을 나타내는 제1 속성, 단어의 품사를 나타내는 제2 속성, 및 단어의 의미성질구분을 나타내는 제3 속성을 포함하여 단계적으로 정의되며, 상기 제3 속성은 성분 및 품사가 동일한 단어들 중에서 적용 문법이 동일한 단어들의 그룹을 정의하는 것으로서 하나의 상기 제2 속성에 대하여 상기 제2 속성의 하위 단계에 상응하는 복수 개의 상기 제3 속성이 정의되고,
상기 문법 오류를 탐지하는 단계 전에, 상기 문법 검사 시스템이, 상기 분리된 하나 이상의 단어 또는 어절에 상응하는 상기 제1 속성, 상기 제2 속성 및 상기 제3 속성을 결정하는 단계를 더 포함하며,
상기 처리 규칙 정보는,
단어의 상기 제3 속성을 이용하여 정의되는 띄어쓰기 규칙, 조사사용 규칙, 어미사용 규칙 및 단어결합 규칙 중 하나 이상을 포함하고,
단어 또는 글자에 대한 변환을 실시하기 위한 문법 규칙이 컴퓨팅 장치에서 판독 가능한 언어로 변환되어 사용자에게 표시되며 사용자에 의해 수정 가능한 처리 함수의 형태로 정의되는 문법 검사 방법.
Storing a word semantic dictionary database including a plurality of words and attribute information corresponding to each of the plurality of words in a grammar checking system;
Storing processing rule information defined by using the attribute information in the grammar checking system;
Extracting, by the grammar checking system, one or more sentences from input data;
Separating, by the grammar checking system, one or more words or phrases from the extracted one or more sentences based on the word meaning dictionary database;
Detecting, by the grammar checking system, a grammar error by applying a grammar processing rule defined using the attribute information to one or more separated words or phrases; And
Including the step of the grammar checking system, providing information on the detected error,
The attribute information is defined step by step including a first attribute indicating a component of a word, a second attribute indicating a part of speech of a word, and a third attribute indicating a semantic property classification of the word, and the third attribute is a component and a part of speech. Is defining a group of words having the same applied grammar among the same words, and a plurality of the third attributes corresponding to a lower level of the second attribute are defined for one of the second attributes,
Before the step of detecting the grammar error, the grammar checking system further comprises determining the first attribute, the second attribute and the third attribute corresponding to the separated one or more words or words,
The processing rule information,
Including one or more of a spacing rule, a survey use rule, a ending rule, and a word combination rule defined using the third attribute of a word,
A grammar checking method in which a grammar rule for converting a word or letter is converted into a language readable by a computing device and displayed to a user, and is defined in the form of a processing function that can be modified by the user.
상기 처리 함수는, 문서종류, 문장위치, 인접문자 중 하나 이상을 조건으로 실행되는 문법 검사 방법.
The method of claim 6,
The processing function is a grammar checking method that is executed on condition of one or more of a document type, a sentence position, and an adjacent character.
상기 문법 검사 시스템이, 활용형이 미리 정의된 기본 용언을 다른 단어와 결합하여 어간을 확장함으로써 활용형이 정의된 복합 용언을 생성하는 단계; 및
상기 문법 검사 시스템이, 상기 복합 용언을 상기 단어의미사전 데이터베이스에 저장하는 단계를 더 포함하는 문법 검사 방법.
The method of claim 6,
Generating, by the grammar test system, a compound verb having a conjugated form defined by combining a basic term with a pre-defined conjugation form with another word to expand a stem; And
The grammar checking method further comprises the step of storing, by the grammar checking system, the compound verb in the word meaning dictionary database.
상기 문법 검사 시스템이, 미리 설정된 글자 또는 단어의 그룹을 이용하여 상기 단어의미사전 데이터베이스에 포함된 단어의 일부를 치환함으로써 예상 오탈자를 생성하는 단계; 및
상기 문법 검사 시스템이, 생성된 상기 예상 오탈자에 기초하여, 상기 분리된 하나 이상의 단어 또는 어절에 대한 오탈자 검사를 실행하는 단계를 더 포함하는 문법 검사 방법.
The method of claim 6,
Generating, by the grammar checking system, a predicted typo by substituting a part of words included in the word semantic dictionary database by using a preset letter or group of words; And
And performing, by the grammar checking system, a typo check for the separated one or more words or words based on the generated predicted typo.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200072707A KR102182248B1 (en) | 2020-06-16 | 2020-06-16 | System and method for checking grammar and computer program for the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200072707A KR102182248B1 (en) | 2020-06-16 | 2020-06-16 | System and method for checking grammar and computer program for the same |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102182248B1 true KR102182248B1 (en) | 2020-11-24 |
Family
ID=73679499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200072707A KR102182248B1 (en) | 2020-06-16 | 2020-06-16 | System and method for checking grammar and computer program for the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102182248B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650843A (en) * | 2020-12-23 | 2021-04-13 | 平安银行股份有限公司 | Method, device and equipment for constructing question-answer pair knowledge base and storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060111920A (en) * | 2005-04-25 | 2006-10-31 | 봉래 박 | System or method of detecting mis-written word and supplying information to correct it |
KR20080032281A (en) | 2006-10-09 | 2008-04-15 | 김부성 | Automatic spell checker |
KR20150007647A (en) * | 2013-07-12 | 2015-01-21 | 부산대학교 산학협력단 | Method and system for statistical context-sensitive spelling correction using confusion set |
KR101747924B1 (en) * | 2016-04-28 | 2017-06-27 | (주)기술공감 | Method of correcting korean utterance and apparatus perfroming the same |
KR20180113849A (en) * | 2017-04-07 | 2018-10-17 | 주식회사 카카오 | Method for semantic rules generation and semantic error correction based on mass data, and error correction system implementing the method |
-
2020
- 2020-06-16 KR KR1020200072707A patent/KR102182248B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060111920A (en) * | 2005-04-25 | 2006-10-31 | 봉래 박 | System or method of detecting mis-written word and supplying information to correct it |
KR20080032281A (en) | 2006-10-09 | 2008-04-15 | 김부성 | Automatic spell checker |
KR20150007647A (en) * | 2013-07-12 | 2015-01-21 | 부산대학교 산학협력단 | Method and system for statistical context-sensitive spelling correction using confusion set |
KR101747924B1 (en) * | 2016-04-28 | 2017-06-27 | (주)기술공감 | Method of correcting korean utterance and apparatus perfroming the same |
KR20180113849A (en) * | 2017-04-07 | 2018-10-17 | 주식회사 카카오 | Method for semantic rules generation and semantic error correction based on mass data, and error correction system implementing the method |
Non-Patent Citations (1)
Title |
---|
이영신 외, 오류 견고성을 지닌 형태소 분석기와 공기정보를 이용한 자동철자교정, 정보과학회 봄 학술발표 논문집, V.25 No.1 pp.411-413, 1998 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112650843A (en) * | 2020-12-23 | 2021-04-13 | 平安银行股份有限公司 | Method, device and equipment for constructing question-answer pair knowledge base and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Khalifa et al. | A large scale corpus of Gulf Arabic | |
KR102199835B1 (en) | System for correcting language and method thereof, and method for learning language correction model | |
US11386269B2 (en) | Fault-tolerant information extraction | |
Faili et al. | Vafa spell-checker for detecting spelling, grammatical, and real-word errors of Persian language | |
Mosavi Miangah | FarsiSpell: A spell-checking system for Persian using a large monolingual corpus | |
Masmoudi et al. | Transliteration of Arabizi into Arabic script for Tunisian dialect | |
JPH10326275A (en) | Method and device for morpheme analysis and method and device for japanese morpheme analysis | |
KR102182248B1 (en) | System and method for checking grammar and computer program for the same | |
Mon et al. | SymSpell4Burmese: symmetric delete Spelling correction algorithm (SymSpell) for burmese spelling checking | |
Onyenwe et al. | Toward an effective igbo part-of-speech tagger | |
EP3629218A1 (en) | Spell correction, morphological analysis and parsing for potentially ungrammatical language | |
Mukund et al. | NE tagging for Urdu based on bootstrap POS learning | |
Mekki et al. | COTA 2.0: An automatic corrector of tunisian Arabic social media texts | |
Bagchi et al. | Bangla Spelling Error Detection and Correction Using N-Gram Model | |
Tongtep et al. | Multi-stage automatic NE and pos annotation using pattern-based and statistical-based techniques for thai corpus construction | |
KR102072708B1 (en) | A method and computer program for inferring genre of a text contents | |
Florea et al. | Improving writing for Romanian language | |
Neme | A fully inflected Arabic verb resource constructed from a lexicon of lemmas by using finite-state transducers | |
Kumar et al. | A comparative analysis of sarcasm detection | |
L’haire | FipsOrtho: A spell checker for learners of French | |
KR20040018008A (en) | Apparatus for tagging part of speech and method therefor | |
Lu et al. | Language model for Mongolian polyphone proofreading | |
Elsebai | A rules based system for named entity recognition in modern standard Arabic | |
Rodrigues et al. | Arabic data science toolkit: An api for arabic language feature extraction | |
KR101080880B1 (en) | Automatic loanword-to-korean transliteration method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |