WO2014069779A1 - 구문 전처리 기반의 구문 분석 장치 및 그 방법 - Google Patents

구문 전처리 기반의 구문 분석 장치 및 그 방법 Download PDF

Info

Publication number
WO2014069779A1
WO2014069779A1 PCT/KR2013/007845 KR2013007845W WO2014069779A1 WO 2014069779 A1 WO2014069779 A1 WO 2014069779A1 KR 2013007845 W KR2013007845 W KR 2013007845W WO 2014069779 A1 WO2014069779 A1 WO 2014069779A1
Authority
WO
WIPO (PCT)
Prior art keywords
syntax
parsing
chunk
noun phrase
pattern
Prior art date
Application number
PCT/KR2013/007845
Other languages
English (en)
French (fr)
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 US14/399,765 priority Critical patent/US9620112B2/en
Publication of WO2014069779A1 publication Critical patent/WO2014069779A1/ko
Priority to US15/445,333 priority patent/US9971757B2/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]

Definitions

  • Embodiments of the present invention relate to a syntax preprocessing-based parsing apparatus and method, and more particularly, to reduce the ambiguity in rule-based parsing, and to resolve the ambiguity by the statistical-based method,
  • the present invention relates to a syntax preprocessing-based syntax analysis device and method for improving the analysis accuracy and processing efficiency.
  • Syntactic analysis is a technique of identifying syntactic structures by analyzing a given sentence according to a defined grammatical structure. This syntax analysis method performs the analysis by syntax unit after morphological analysis and tagging. The syntax analysis method is largely divided into rule-based analysis method and statistics-based syntax analysis method.
  • Rule-based parsing methods parse sentences by applying relatively few rules repeatedly. As a result, rule-based parsing methods not only have limitations in ambiguity processing but also increase analysis complexity due to increased ambiguity. In contrast, the statistical-based syntax analysis method can solve the ambiguity by statistically modeling and applying the relations between the vocabulary and the associations between the phrases.
  • Embodiments of the present invention reduce syntax ambiguity in rule-based syntax parsing and eliminate ambiguity in statistical-based syntax, thereby improving syntax accuracy and processing efficiency in syntax parsing.
  • An apparatus and method thereof are provided.
  • embodiments of the present invention analyze syntaxes that can be analyzed by rules and patterns without ambiguity through the syntax preprocessing process, and apply syntax rules based on the results of parsing preprocessing partially unambiguous. It is intended to provide a syntax preprocessing-based syntax analysis device and method for deriving a syntax analysis result and resolving structural ambiguity by applying a statistical syntax analysis model learned from a syntax correlated learning corpus.
  • embodiments of the present invention to provide a syntax pre-processing-based parser apparatus and method that can reduce the ambiguity, by restricting the rule so that only combining between the appropriate syntax using the feature-based syntax rule do.
  • Pattern chunk recognizer BNP attached corpus is processed and processed into intermediate learning corpus, a basic noun phrase statistical model is generated from the processed intermediate learning corpus, and the part-of-speech tagging result and the generated basic noun phrase statistical model
  • a parser configured to generate a syntax tree based on the parsed result. There is a syntax-based pre-treatment of the parsing device can be provided.
  • a pattern chunk recognition step basic noun phrase recognizes a predefined syntax pattern from an input part-of-speech tagging result and generates one of a syntax tree, an interval chunk, and a dependent variable relationship chunk according to a syntax pattern type.
  • BNP receives the attached corpus is processed into the intermediate learning corpus, the basic noun phrase statistical model generation step of generating a basic noun phrase statistical model from the processed intermediate learning corpus input by using the part-of-speech tagging results and the generated basic noun phrase statistical model
  • a phrase is recognized using a basic noun phrase recognition step of recognizing a basic noun phrase (BNP) and at least one recognition result among the recognized syntax tree, interval chunk, dependent variable relationship chunk, basic noun phrase, compound noun / compound word, and entity name.
  • a parsing step of analyzing and generating a syntax tree based on the parsing result.
  • a syntax preprocessing based parsing method may be provided.
  • a pattern chunk recognition process basic noun phrase for recognizing a predefined syntax pattern from an input part-of-speech tagging result and generating one of a syntax tree, an interval chunk, and a dependent variable relationship chunk according to a syntax pattern type (BNP) receives the attached corpus is processed into the intermediate learning corpus, the basic noun phrase statistical model generation process for generating a basic noun phrase statistical model from the processed intermediate learning corpus input by using the part-of-speech tagging results and the generated basic noun phrase statistical model
  • a sentence is recognized using a basic noun phrase recognition process for recognizing a basic noun phrase (BNP) and at least one recognition result among the recognized syntax tree, interval chunk, dependent variable relationship chunk, basic noun phrase, compound noun / compound word, and entity name. Parsing process of analyzing and generating a syntax tree based on the parsing result It can gongdoel.
  • Embodiments of the present invention analyze syntaxes that can be accurately analyzed by rules and patterns without ambiguity through the syntax preprocessing process, and apply all syntax analysis based on the syntax preprocessing results of which ambiguities are partially resolved. By deriving the result, the complexity of parsing can be reduced, and the accuracy and speed of parsing can be improved.
  • embodiments of the present invention are based on a grammar pattern recognition unit based on an automata, a regular grammar, a context free grammar, an extended CFG, and a context sensitive grammar.
  • a grammar pattern recognition unit based on an automata, a regular grammar, a context free grammar, an extended CFG, and a context sensitive grammar.
  • embodiments of the present invention using a variety of syntax analysis preprocessing results, such as compound noun recognition results, individual name recognition results, basic noun phrase recognition results in the syntax analysis process, and applied independently to the language, grammar dictionary of the language to be analyzed Given a statistical model for resolving syntax attributes, dictionaries, and syntax neutrality, parsing can be easily performed for any language.
  • embodiments of the present invention improve the accuracy of parsing and error propagation in a part-of-speech tagging process by using a 1-best path part-of-speech tagging result and an n-best part-of-speech tagging result. There is an effect that can minimize the parsing error caused by.
  • embodiments of the present invention by using a statistical model that reflects the syntax structure and sentence component structure of the intuitive sentence, can effectively solve the syntax structure neutrality while alleviating the shortage of data through the proper use of parts of speech and vocabulary. It works.
  • FIG. 1 is a block diagram of a syntax analysis apparatus based on syntax preprocessing according to an exemplary embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a structure of a syntax pattern rule and a syntax pattern dictionary according to an embodiment of the present invention.
  • FIG. 3 is a detailed block diagram of the pattern chunk recognition unit of FIG. 1 according to an exemplary embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating a bottom-up parsing algorithm according to an embodiment of the present invention.
  • FIG. 5 is a detailed configuration diagram of the basic noun phrase recognition unit of FIG. 1 according to an exemplary embodiment of the present invention.
  • FIG. 6 is a detailed block diagram illustrating a syntax analyzer of FIG. 1 according to an exemplary embodiment of the present invention.
  • FIG. 1 is a block diagram of a syntax analysis apparatus based on syntax preprocessing according to an exemplary embodiment of the present invention.
  • the syntax analyzing apparatus 100 may include a pattern chunk recognizer 110, a basic noun phrase recognizer 120, a syntax parser 130, and a statistical model learner 140.
  • the chunk pattern recognition unit 110 is connected to the chunk pattern DB 111 that stores the water feeder chunk, HDR chunk, and other chunk patterns.
  • the basic noun phrase recognition unit 120 is connected to the basic noun phrase statistical model DB (112).
  • the parser 130 is connected to the grammar dictionary DB 131, the syntax dictionary DB 132, the prepositional phrase rule DB 133, and the HDR rule DB 134.
  • the pattern chunk recognition unit 110 will be described in detail with reference to FIGS. 2 to 4.
  • the basic noun phrase recognition unit 120 will be described in detail with reference to FIG. 5.
  • the parser 130 will be described in detail with reference to FIG. 6.
  • the pattern chunk recognition unit (Shallow Parser) 110 receives a part-of-speech tagged sentence, recognizes a predefined syntax pattern, and outputs a syntax tree or a predetermined result.
  • the pattern chunk recognition unit 110 is basically used to recognize a series of words / parts of speech having a clear pattern of occurrence.
  • the pattern chunk recognizer 110 generates one of a syntax tree, a section chunk, and a head-dependent relation chunk according to the syntax pattern type after the syntax pattern is recognized.
  • the pattern chunk recognition unit 110 recognizes a pattern number pattern, including a rhetoric and a quantum, and generates a syntax tree as a result.
  • the pattern chunk recognizer 110 recognizes section separation, parallel phrases, and other patterns, and as a result, generates the section chunk and the dependent variable relationship chunk.
  • the pattern chunk recognizer 110 may recognize various syntax patterns.
  • the pattern chunk recognition unit 110 may be expressed in regular grammar, context free grammar, extended context free grammar, and context sensitive grammar (CSG). Syntax patterns can be recognized. That is, the pattern chunk recognizer 110 may express syntax patterns formed of a series of words or parts-of-speech sequence patterns using regular syntax and convert them into syntax parse trees.
  • the pattern chunk recognition unit 110 may express patterns that can be computed using the feature values of the nodes using a context free grammar (CFG) or an extended context free grammar (Augmented CFG).
  • the pattern chunk recognizer 110 may express the syntax pattern together with the left and right contexts of the syntax tree by using the context-dependent grammar form.
  • the basic noun phrase recognition unit 120 receives the basic noun phrases (BNP) attached corpus and processes it into an intermediate learning corpus, and generates a basic noun phrase statistical model from the processed intermediate learning corpus, a part-of-speech tagging result and the generated basic noun phrase statistics
  • the model recognizes basic noun phrases (BNPs) in input statements.
  • the parser 130 may include at least one of a syntax tree, a section chunk, a dependent variable relationship chunk, a basic noun phrase, a compound noun / composite word, and an entity name recognized by the pattern chunk recognizer 110 and the basic noun phrase recognizer 120.
  • the syntax is analyzed using the recognition results, and a syntax tree is generated based on the syntax analysis results.
  • the statistical model learning unit 140 learns a statistical model from a syntax-attached corpus and stores the learning result in the syntax analysis statistical model DB 141.
  • FIG. 2 is a diagram illustrating a structure of a syntax pattern rule and a syntax pattern dictionary according to an embodiment of the present invention.
  • the pattern chunk recognizer 110 recognizes the syntax patterns and describes the syntax patterns according to the syntax rule creation principle 201.
  • This rule 201 is a section for distinguishing by syntax pattern / syntax chunk type, a definition statement for simplifying a complex node, and a virtual tag (vtag: virtual tag) for parameterization of some tags. , A subcategories for defining the vocabulary categories, and a rule composed of patterns and actions.
  • the pattern chunk recognizer 110 divides the syntax pattern or the syntax chunk into sections according to the type. In this case, all statements or rules described in the workspace after one section is declared until another section are declared are all the same kind of syntax pattern or syntax chunk.
  • FIG. 3 is a detailed block diagram of the pattern chunk recognition unit of FIG. 1 according to an exemplary embodiment of the present invention.
  • the pattern chunk recognizer 110 recognizes syntax pattern rules using a bottom-up chart parsing algorithm.
  • the pattern chunk recognizer 110 scans a sentence of input data from right to left and recognizes a syntax pattern while finding and applying all rules applicable at one location.
  • the pattern chunk recognizer 110 generates a syntax tree or a section chunk according to the syntax pattern type.
  • the pattern chunk recognizer 110 reads a syntax pattern dictionary and stores it as a storage structure inside the system.
  • the rule loading module 310 generates a workspace for generating a workspace.
  • Module 320 and a parsing module 330 for parsing by applying a syntax pattern dictionary to the actual input data.
  • each module will be described.
  • the rule loading module 310 opens a syntax pattern dictionary file, reads line by line, and stores it in a storage structure suitable for a rule. That is, the rule loading module 310 recognizes the section syntax when it meets the section syntax and stores it in a storage structure suitable for the section syntax.
  • the rule loading module 310 allows a common section to be treated until a new section is declared.
  • the rule loading module 310 stores the definition statement and the false state statement in a definition table and a false state table.
  • the rule loading module 310 stores subcategories in a trie structure. This is to increase the efficiency of the search.
  • the rule loading module 310 divides a rule into patterns and actions, analyzes the rule, and stores the rule in a rule table.
  • the workspace creation module 320 generates a workspace for the next parsing.
  • the workspace contains an agenda, which is a set of active charts that contain rules that are in progress in pattern matching, an inactive agenda, which is a set of inactive charts that already contain node information, It consists of a set of terminal nodes, a set of nonterminal nodes, and a parse tree that stores parsing results.
  • the workspace creation module 320 creates a structure and storage space of these workspace components.
  • the parsing module 330 performs an actual syntax pattern recognition algorithm.
  • the syntax pattern recognition algorithm uses a bottom-up parsing algorithm as shown in FIG. 4 below.
  • FIG. 4 is a flowchart illustrating a bottom-up parsing algorithm according to an embodiment of the present invention.
  • the parsing module 330 performs a syntax pattern recognition algorithm as shown in FIG. 4 for rule matching.
  • a syntax pattern recognition algorithm as shown in FIG. 4 for rule matching.
  • the parsing module 330 uses source trees to compare child trees of an existing tree or ichart with a lex, part-of-speech or syntax tag, syntax attribute, and node.
  • the parsing module 330 performs a separate operation depending on whether the rule is completed or incomplete when the comparison result is matched. That is, the parsing module 330 generates a new inactive chart (ichart) using the tree generation information called target in the rule in the case of the completed rule. On the other hand, the parsing module 330 generates an activation chart in which the index indicating the matched position in the syntax pattern is increased by one for the incomplete case.
  • a detailed bottom-up parsing algorithm will be described with reference to FIG. 4.
  • the parsing module 330 stores all terminals in an inactivation agenda (Signa) (S402).
  • the parsing module 330 loads a deactivation chart for all items in the agenda and the deactivation agenda (S404).
  • the parsing module 330 checks whether there is a rule starting from an inactivation chart (S406).
  • the parsing module 330 executes the rule starting from the deactivation chart (ichart) (S408).
  • the deactivation chart checks whether there is an activation chart waiting for this node (S410).
  • the parsing module 330 registers a newly generated deactivation chart ichart in the deactivation agenda as a result of the progress of the activation chart in step S412 (S414).
  • the parsing module 330 loads an activation chart for all items (S416).
  • the parsing module 330 executes rule matching on the activation chart and all subsequent deactivation charts (S418).
  • the parsing module 330 registers the deactivation agenda when the new deactivation chart is generated (S420).
  • the parsing module 330 registers an activation chart in the ongoing state in the agenda (S422).
  • FIG. 5 is a detailed configuration diagram of the basic noun phrase recognition unit of FIG. 1 according to an exemplary embodiment of the present invention.
  • the basic noun phrase recognition unit 120 receives a sentence tagging result as an input and outputs a basic noun phrase recognition result.
  • a base noun phrase (BNP) refers to a noun phrase that is the most basic of several phrases forming a sentence.
  • the basic noun phrase recognition unit 120 applies a basic noun phrase recognition method that exhibits high accuracy and stable performance in order to improve performance of syntax analysis, which has a large amount of throughput but is somewhat inaccurate. This not only reduces the complexity of parsing but also improves accuracy.
  • the basic noun phrase recognition unit 120 receives the basic noun phrases (BNP) attached corpus basic noun phrase statistical learning module 510 for learning the BNP statistical model and statistical base noun phrase recognition module ( 520).
  • the basic noun phrase statistical learning module 510 and the statistics-based basic noun phrase recognition module 520 are connected to the basic noun phrase statistical model DB 112.
  • the basic noun phrase statistical learning module 510 constructs a learning corpus processed in a form in which only basic noun phrases are tagged based on a grammar defined by Penn TreeBank for basic noun phrase recognition.
  • the basic noun phrase statistical learning module 510 processes the initial corpus into a form that can be used in the system by using a finite state transducer (FST).
  • the basic noun phrase statistics learning module 510 classifies the input corpus into opening and closing parentheses and words to define and process actions for the input. Subsequently, the basic noun phrase statistical learning module 510 extracts qualities to be used for basic noun phrase recognition from the processed corpus (hereinafter, intermediate learning corpus). Feature selection uses information gain to select meaningful features, and tests several features to extract the least error-like features.
  • the basic noun phrase statistical learning module 510 extracts the qualities from the intermediate learning corpus and converts them into a form that can be learned according to a conditional random field (CRF) algorithm.
  • CRF conditional random field
  • the basic noun phrase statistical learning module 510 generates a basic noun phrase statistical model and stores the basic noun phrase statistical model DB 112 when the learning process is completed. And the basic noun phrase statistical model is stored in ASCII code form. And the basic noun phrase statistical model can be applied in any environment regardless of the learning environment.
  • the basic statistical noun phrase recognition module 520 receives the tagging result and the basic noun phrase statistical model learning result.
  • the basic base noun phrase recognition module 520 recognizes a basic noun phrase (BNP) in an input sentence and outputs basic noun phrase recognition information using a part-of-speech tagging result and a basic noun phrase statistical model learning result.
  • BNP basic noun phrase
  • FIG. 6 is a detailed block diagram illustrating a syntax analyzer of FIG. 1 according to an exemplary embodiment of the present invention.
  • the syntax analyzing unit 130 determines the structure of the sentence by analyzing the syntax relationship between the morphemes constituting the sentence. To this end, the parser 130 may determine a part-of-speech tagging result and various chunking results (eg, compound nouns / compounds, syntax tree / segment chunks, basic noun phrases (BNP), name entity (NE) recognition results, etc.). Analyze sentence structure using syntax analysis grammar and various dictionary information. Thereafter, the parser 130 generates a parse tree based on the structural analysis result of the sentence. In general, structural ambiguity occurs when analyzing the structure of a sentence due to the lexical characteristics of the natural language and the syntax of syntax analysis. On the other hand, the syntax analysis unit 130 according to an embodiment of the present invention may solve the neutrality by using various probability information extracted from the corpus and select the optimal syntax structure.
  • various chunking results eg, compound nouns / compounds, syntax tree / segment chunks, basic noun phrases (BNP), name entity (NE) recognition
  • the parser 130 may include an initial data setting module 610, a parsing data management module 620, a parsing module 630, a rule and knowledge dictionary DB 640, constraints, and probabilities. Processing module 650 and result tree selection module 660.
  • the rule and knowledge dictionary DB 640 may include the grammar dictionary DB 131, the syntax dictionary DB 132, the prepositional phrase rule DB 133, and the HDR rule DB 134 of FIG. 1.
  • the parser 130 performs parsing by receiving a part-of-speech tagging result and a chunking result as input data.
  • the initial data setting module 610 uses two path-based and state-based analysis results as a part-of-speech tagging result for the input sentence.
  • the part-of-speech tagging result may include sub-word information for each vocabulary.
  • the initial data setting module 610 determines whether to use only a 1-best path part-of-speech or an n-best tag according to an option of the part-of-speech tagging result.
  • the option represents a process level.
  • the 1-best path is always used as the most reliable part-of-speech tagging result. If you use only one-best path, incorrectly attached part-of-speech tags may not produce the correct answer tree.
  • n-best tags can be used together as an auxiliary means. In this case, when all n-best tags are used, the intermediate node may be generated more than a predetermined number of nodes during the parsing process, thereby degrading performance. To prevent this, only parts of speech having a score above a certain threshold value are used as compared to the score of parts of speech shown in the 1-best path.
  • the initial data setting module 610 uses the chunking result that is the result of the chunk pattern recognition unit 110 and the basic noun phrase recognition unit 120.
  • the external chunking result is basically generated using only the 1-best path part of speech.
  • the external chunking result includes start / last morphological information, head information, and additional information of the chunk.
  • the initial data setting module 610 may use the compound noun / compound word recognition result and the object name recognition result NE in addition to the external chunking result of the chunk pattern recognition unit 110 and the basic noun phrase recognition unit 120.
  • the parsing algorithm using the n-best part-of-speech tagging result and the chunking result follows a general bottom-up chart parsing algorithm.
  • the parser 130 additionally processes the chunking result.
  • the parsing module 630 extracts and executes the agenda having the highest process level and the highest priority from the global agenda.
  • the parsing module 630 registers the node created in advance in the deactivation chart (Ichart) and ends.
  • the parsing module 630 adds the virtual nodes SBEGIN and SEND to the chunk start and end positions for interworking with the parsing grammar, and then uses the chunk constraint. Activate the chunk to do this.
  • the constraint and probability processing module 650 activates the chunk for use in chunk constraints.
  • the parsing module 630 checks whether grammar progression is possible for all active charts that can be combined with the current deactivation chart. And first, if the grammar progress is successful (Match Rule), the parsing module 630 checks the constraint rule to determine whether it can generate a syntax node. The parsing module 630 generates a new deactivation chart if a syntax node can be generated.
  • the constraint and probability processing module 650 calculates the score of the new deactivation chart using the tree probability information and registers the score in the ParseTable and the global agenda. At this time, in order to restrict the generation of too many intermediate nodes, the constraint and probability processing module 650 performs beamsearch constraints.
  • the parsing module 630 For the incomplete grammar, the parsing module 630 generates a new activation chart and adds the current deactivation chart to the child node or the context node. The parsing module 630 searches for a deactivation chart that can be combined with a newly generated deactivation chart among the deactivation charts that have already been processed, and proceeds with a grammar process.
  • the parsing module 630 checks whether the entire tree generation succeeds when there is no more process level matching among the agendas registered in the global agenda.
  • the result tree selection module 660 proceeds to generate a result tree when the entire tree exists. If the entire tree does not exist, the result tree selection module 660 may proceed post-processing for the parsing failure.
  • the result tree selection module 660 combines the entire tree using the intermediate trees generated during the parsing process when the entire tree generation fails.
  • the result tree selection module 660 finds the most probable partial tree among the syntax nodes generated in the entire interval.
  • the result tree selection module 660 sets the sections of the found partial tree and repeats the process of finding the most probable partial trees for the empty sections to set the partial trees for all sections.
  • the result tree selection module 660 sets the intermediate tree included in the intermediate tree list as the minimum interval and finds the largest section in which the tree exists using the start / end information of the intermediate trees included in the intermediate tree list.
  • the result tree selection module 660 newly sets the found section, and then repeats the above process for the remaining sections so as to be filled with the largest section tree for the entire section.
  • the syntax analysis unit 130 uses a statistic-based syntax analysis model based on a dependency structure that is simple in structure and that can intuitively explain the relationship between sentence components.
  • the parser 130 may resolve structural neutrality by using sufficient left and right contextual information.
  • W i is the right child tree of a vocabulary that words, t i is a part-of-speech information of the word, t i L is a part of speech, t i R of the head (head) of the left child tree (left child tree) of W i is W i ( Part of speech of the head of the right child tree).
  • the statistical model learning unit 140 learns a statistical model from the corpus with syntax structure and stores the syntax analysis statistical model according to the learning result in the syntax analysis statistical model DB 141.
  • a head in the syntactic elimination model, a head generates a statement by having multiple dependencies. For example, the word "eat” may produce a sentence by taking an object and then taking a subject. The word "eat” also produces sentences by taking an object, taking a prepositional phrase as an adverb phrase, and then taking a subject.
  • the expression of such a model is the syntax structure elimination model.
  • the syntax structure resolving model is basically the probability that one head will have one dependency as the syntax relation DL.
  • the syntactic disambiguation model expresses the probability that one head in a context will take a bore in another context, and can be expressed as Equation 1 below.
  • W i is the vocabulary that words, t i is a part-of-speech information of the word, t i L is the right child of the part of speech, t i R of the head (head) of the left child tree (left child tree) of W i is W i Part of speech of the head of a right child tree is shown.
  • Equation 2 the probability that a sentence S generates a sentence structure ⁇ is expressed as shown in Equation 2 below.
  • Equation 2 P (S, ⁇ ) represents the probability that a sentence S will generate a sentence structure ⁇ .
  • T is used instead of t in Equation 1.
  • the word itself can be used.
  • parts of speech are used. That is, t and T have the same value except for prepositions. It is expressed as Equation 3 below.
  • Equation 4 The probability model applied to the embodiment of the present invention is calculated as in Equation 4 below.
  • the above syntax parsing based syntax analysis method may be implemented in a software program and recorded in a computer-readable predetermined recording medium.
  • the recording medium may be a hard disk, a flash memory, a RAM, a ROM, or the like of an internal playback device, or an optical disk such as a CD-R or a CD-RW, a compact flash card, a smart media, a memory stick, or a multimedia card.
  • an optical disk such as a CD-R or a CD-RW, a compact flash card, a smart media, a memory stick, or a multimedia card.
  • the program recorded on the computer-readable recording medium recognizes a predefined syntax pattern from the input part-of-speech tagging result and generates one of a syntax tree, an interval chunk, and a dependent variable relationship chunk according to the syntax pattern type.
  • Implementations described in the specification of the present invention may be implemented in digital electronic circuitry, computer software, firmware or hardware, or a combination of one or more of them. Implementations described in the specification of the present invention are one or more modules relating to computer program instructions encoded on a program storage medium of tangible type for controlling or by the operation of one or more computer program products, ie data processing apparatuses. It can be implemented as.
  • the present invention after receiving sentences written in languages such as English, Chinese and Korean, performs morphological analysis, part-of-speech tagging, and compound word recognition, recognizes rules and automata-based syntax patterns, and enables syntax through feature-based syntax analysis. Analyze the structure and output the n-best syntax structure using statistical information.
  • the invention is a commercially available invention because the possibility of marketing or operating the applied device is not only sufficient for the use of the related technology, but also practically evident as it exceeds the limitation of the existing technology.

Abstract

본발명은 구문 전처리 기반의 구문 분석 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 구문 분석 전처리 과정을 통해 모호성 없이 규칙과 패턴에 의해 분석할 수 있는 구문들을 분석하고, 모호성이 일부 해소된 구문 분석 전처리 결과를 기반으로 구문 규칙을 적용하여 가능한 모든 구문분석 결과를 도출하고, 구문 트리 부착 학습 말뭉치로부터 학습된 통계적 구문분석 모델을 적용하여 구조적 모호성을 해소함으로써, 규칙 기반 방식의 구문 분석에서의 모호성을 감소시키고, 통계 기반 방식에 의한 모호성을 해소하여 구문 분석 과정에서의 분석 정확도와 처리 효율성을 높일 수 있다.

Description

구문 전처리 기반의 구문 분석 장치 및 그 방법
본발명의 실시 예는 구문 전처리 기반의 구문 분석 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 규칙 기반 방식의 구문 분석에서의 모호성을 감소시키고, 통계 기반 방식에 의한 모호성을 해소함으로써, 구문 분석 과정에서의 분석 정확도와 처리 효율성을 높일 수 있는, 구문 전처리 기반의 구문 분석 장치 및 그 방법에 관한 것이다.
구문분석은 주어진 문장을 정의된 문법 구조에 따라 분석하여 통사적 구조를 밝혀내는 기술이다. 이러한 구문분석 방법은 형태소 분석 및 태깅이 끝난 후 구문단위로 분석하는 과정을 수행한다. 구문분석 방법은 크게 규칙기반의 분석방법과 통계기반의 구문분석 방법으로 구분된다.
규칙 기반의 구문분석 방법은 비교적 소수의 규칙을 반복적으로 적용하여 문장을 파싱한다. 이로 인해 규칙 기반의 구문분석 방법은 모호성 처리에 한계가 있을뿐만 아니라 모호성 증가로 인해 분석 복잡도가 증가하는 문제가 있다. 이에 반해, 통계기반의 구문분석 방법은 어휘 간의 연관관계 및 구문 간의 결합관계를 통계적으로 모델링하고 적용함으로써, 모호성을 해결할 수 있다.
그러나 일반적인 통계기반의 구문분석 방법을 적용하는 경우는 통계정보 추출을 위한 학습 데이터의 부족으로 인해 모호성 해소의 정확도가 저하될 수 있다. 또한, 일반적인 통계기반의 구문분석 방법을 적용하는 경우에는 방대한 통계 파라미터 공간의 탐색으로 인해 분석속도가 느려지는 등의 처리 효율의 문제점이 있다. 또한, 통계 데이터를 사용하여 모호성을 해소하는 경우는 새로운 지식을 추가하거나사람이 구문분석 지식을 관리하고 튜닝하기가 쉽지 않다는 문제점이 있다.
그러므로 구문 분석 시에 발생 가능한 모호성을 최대한 감소시켜 줄 수 있는 구문분석 방안이 절실히 필요한 상황이다. 즉, 구문분석의 복잡도를 감소시켜 주고, 구문분석의 모호성을 효과적으로 해소할 수 있는 구문분석 방안 마련이 필요하다.
본 발명의 실시 예들은 규칙 기반 방식의 구문 분석에서의 모호성을 감소시키고, 통계 기반 방식에 의한 모호성을 해소함으로써, 구문 분석 과정에서의 분석 정확도와 처리 효율성을 높일 수 있는, 구문 전처리 기반의 구문 분석 장치 및 그 방법을 제공하고자한다.
이를 위해, 본 발명의 실시 예들은 구문 분석 전처리 과정을 통해 모호성 없이 규칙과 패턴에 의해 분석할 수 있는 구문들을 분석하고, 모호성이 일부 해소된 구문 분석 전처리 결과를 기반으로 구문 규칙을 적용하여 가능한 모든 구문분석 결과를 도출하고, 구문 트리 부착 학습 말뭉치로부터 학습된 통계적 구문분석 모델을 적용하여 구조적 모호성을 해소할 수 있는, 구문 전처리 기반의 구문 분석 장치 및 그 방법을 제공하고자한다.
또한, 본 발명의 실시 예들은 자질 기반 구문규칙을 이용하여 적합한 구문들 사이에서만 결합만이 가능하도록 규칙을 제약함으로써, 모호성을 감소시킬 수 있는, 구문 전처리 기반의 구문 분석 장치 및 그 방법을 제공하고자 한다.
본 발명의 제1 측면에 따르면, 입력된 품사 태깅 결과로부터 미리 정의된 구문 패턴을 인식하여 구문 패턴 유형에 따라 구문 트리, 구간 청크 및 종속변수 관계(Head-Dependent relation) 청크 중 어느 하나를 생성하는 패턴 청크 인식부 기본명사구(BNP) 부착 말뭉치들을 입력받아 중간 학습 말뭉치로 가공하고, 상기 가공된 중간 학습 말뭉치로부터 기본명사구 통계모델을 생성하고, 품사 태깅 결과와 상기 생성된 기본명사구 통계모델을 이용하여 입력문에서 기본명사구(BNP)를 인식하는 기본명사구 인식부 및 상기 인식된 구문 트리, 구간 청크, 종속변수 관계 청크, 기본명사구, 복합명사/복합어 및 개체명 중 적어도 하나의 인식 결과를 이용하여 구문을 분석하고, 상기 구문 분석 결과를 기초로 하여 구문 트리를 생성하는 구문 분석부를 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치가 제공될 수 있다.
본 발명의 제2 측면에 따르면, 입력된 품사 태깅 결과로부터 미리 정의된 구문 패턴을 인식하여 구문 패턴 유형에 따라 구문 트리, 구간 청크 및 종속변수 관계 청크 중 어느 하나를 생성하는 패턴 청크 인식 단계 기본명사구(BNP) 부착 말뭉치들을입력받아 중간 학습 말뭉치로 가공하고, 상기 가공된 중간 학습 말뭉치로부터 기본명사구 통계모델을 생성하는 기본명사구통계 모델 생성 단계 품사 태깅 결과와 상기 생성된 기본명사구 통계모델을 이용하여 입력문에서 기본명사구(BNP)를 인식하는 기본명사구 인식 단계 및 상기 인식된 구문 트리, 구간 청크, 종속변수 관계 청크, 기본명사구, 복합명사/복합어 및 개체명 중 적어도 하나의 인식 결과를 이용하여 구문을 분석하고, 상기 구문 분석 결과를 기초로 하여 구문 트리를 생성하는 구문 분석 단계를 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 방법이 제공될 수 있다.
본 발명의 제3 측면에 따르면, 입력된 품사 태깅 결과로부터 미리 정의된 구문 패턴을 인식하여 구문 패턴 유형에 따라 구문 트리, 구간 청크 및 종속변수 관계 청크 중 어느 하나를 생성하는 패턴 청크 인식 과정 기본명사구(BNP) 부착 말뭉치들을 입력받아 중간 학습 말뭉치로 가공하고, 상기 가공된 중간 학습 말뭉치로부터 기본명사구 통계모델을 생성하는 기본명사구 통계 모델 생성 과정 품사 태깅 결과와 상기 생성된 기본명사구 통계모델을 이용하여 입력문에서 기본명사구(BNP)를 인식하는 기본명사구 인식 과정 및 상기 인식된 구문 트리, 구간 청크, 종속변수 관계 청크, 기본명사구, 복합명사/복합어 및 개체명 중 적어도 하나의 인식 결과를 이용하여 구문을 분석하고, 상기 구문 분석 결과를 기초로 하여 구문 트리를 생성하는 구문 분석 과정이 제공될 수 있다.
본 발명의 실시 예들은 구문분석 전처리 과정을 통해 모호성 없이 정확하게 규칙과 패턴에 의해 분석할 수 있는 구문들을 분석하고, 모호성이 일부 해소된 구문분석 전처리 결과를 기반으로 구문 규칙을 적용하여 가능한 모든 구문분석 결과를 도출함으로써, 구문분석의 복잡도를 감소시킬 수 있으며, 구문분석의 정확도 및 분석 속도를 향상시킬 수 있는 효과가 있다.
또한, 본 발명의 실시 예들은 오토마타 기반의 청크 패턴 인식부를 통해 정규문법(Regular Grammar), 문맥자유문법(Context Free Grammar), 확장 문맥자유문법(Augmented CFG), 문맥의존문법(CSG: Context Sensitive Grammar)으로 표현할 수 있는 구문 패턴들을 모두 인식함으로써, 인식하고자 하는 구문 패턴을 규칙 기술 원칙에 따라 구축하여 구문 분석의 효율을 높이거나, 구문 분석을 응용한 시스템을 개발하고자 하는 경우 다양한 측면에서 활용할 수 있는 효과가 있다. 즉, 본 발명의 실시 예들은 일련의 단어나 품사 나열 패턴으로 구성되는 것들을 정규문법을 이용하여 표현하고, 구문 노드의 자질 값을 이용하여 연산가능한 패턴들을 문맥자유문법이나 확장 문맥자유문법을 이용하여 표현할 수 있고, 문맥의존 문법형식을 이용하여 구문 트리의 좌우 문맥과 함께 구문 패턴을 표현함으로써, 부분적 문법오류 탐지를 위한 시스템 및 작문 도우미 시스템의 성능을 향상시킬 수 있는 효과가 있다.
또한, 본 발명의 실시 예들은 구문 분석 과정에서 복합명사 인식 결과, 개체명인식 결과, 기본명사구 인식 결과 등 다양한 구문 분석 전처리 결과를 이용하고, 언어에 독립적으로 적용됨으로써, 분석하고자 하는 언어의 문법사전, 구문 속성 사전 및 구문 중의성 해소를 위한 통계 모델만 주어지면 어떤 언어에 대해서도 구문 분석을 용이하게 수행할 수 있는 효과가 있다.
또한, 본 발명의 실시 예들은 1-베스트 경로(1-best path) 품사 태깅 결과와 n-베스트(n-best) 품사 태깅 결과를 이용함으로써, 구문분석의 정확도를 향상시키고 품사 태깅 과정의 오류 전파로 인한 구문 분석 오류를 최소화할 수 있는 효과가 있다.
또한, 본 발명의 실시 예들은 직관적인 문장의 구문구조 및 문장 성분 구조를 반영한 통계 모델을 이용함으로써, 품사와 어휘의 적절한 활용을 통해 자료 부족 문제를 완화하면서 구문 구조 중의성을 효과적으로 해소할 수 있는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 구문 전처리 기반의 구문 분석 장치의 구성도이다.
도 2는 본 발명의 실시 예에 따른 구문 패턴 규칙의 구조와 구문 패턴 사전의 예시도이다.
도 3은 본 발명의 실시 예에 따른 도 1의 패턴 청크 인식부의 상세 구성도이다.
도 4는 본 발명의 실시 예에 따른 상향식 파싱 알고리즘에 대한 흐름도이다.
도 5는 본 발명의 실시 예에 따른 도 1의 기본명사구 인식부의 상세 구성도이다.
도 6은 본 발명의 실시 예에 따른 도 1의 구문 분석부의 상세 구성도이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 실시 예를 상세하게 설명한다. 본 발명의 구성 및 그에 따른 작용 효과는 이하의 상세한 설명을 통해 명확하게 이해될 것이다. 본 발명의 상세한 설명에 앞서, 동일한 구성요소에 대해서는 다른 도면 상에 표시되더라도 가능한 동일한 부호로 표시하며, 공지된 구성에 대해서는 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 구체적인 설명은 생략하기로함에 유의한다.
도 1은 본 발명의 실시 예에 따른 구문 전처리 기반의 구문 분석 장치의 구성도이다.
도 1에 도시된 바와 같이, 구문 분석 장치(100)는 패턴 청크 인식부(110), 기본명사구 인식부(120), 구문 분석부(130) 및 통계 모델 학습부(140)를 포함한다. 여기서, 청크 패턴 인식부(110)는 수량사 청크, HDR 청크, 기타 청크 패턴을 저장하는 청크 패턴 DB(111)와 연결되어 있다. 또한, 기본 명사구 인식부(120)는 기본명사구 통계 모델 DB(112)와 연결되어 있다. 또한, 구문 분석부(130)는 문법사전 DB(131), 구문자질사전 DB(132), 전치사구 규칙 DB(133) 및 HDR 규칙 DB(134)와 연결되어 있다.
이하, 본 발명의 실시 예에 따른 구문 분석 장치(100)의 구성요소 각각에 대하여 살펴보기로 한다. 패턴 청크 인식부(110)에 대해서는 도 2 내지 도 4를 참조하여 상세하게 설명한다. 또한, 기본명사구 인식부(120)에 대해서는 도 5를 참조하여 상세하게 설명한다. 또한, 구문 분석부(130)에 대해서는 도 6을 참조하여 상세하게 설명한다.
패턴 청크 인식부(Shallow Parser)(110)는 품사 태깅된 문장을 입력받아 미리 정의된 구문 패턴을 인식하여 구문트리 또는 정해진 형태의 결과를 출력한다. 패턴 청크 인식부(110)는 기본적으로 발생패턴이 명확한 일련의 단어/품사 열을 인식하기 위해 사용된다. 패턴 청크 인식부(110)는 구문 패턴의 인식 후 구문 패턴의 유형에 따라 구문트리, 구간청크, 종속변수 관계(Head-Dependent relation) 청크 중 어느 하나를 생성한다. 패턴 청크 인식부(110)는 수사, 양사를 포함하여 수량사 패턴을 인식한 후 그 결과로 구문트리를 생성한다. 또한, 패턴 청크 인식부(110)는 절분리, 병렬구 및 기타 패턴을 인식하고 그 결과로 구간청크와 종속변수 관계 청크를 생성한다.
패턴 청크 인식부(110)는 다양한 구문 패턴을 인식할 수 있다. 예를 들면, 패턴 청크 인식부(110)는 정규문법(Regular Grammar), 문맥자유문법(Context Free Grammar)과 확장 문맥자유문법(Augmented CFG), 문맥의존문법(CSG: Context Sensitive Grammar)으로 표현 가능한 구문 패턴들을 인식할 수 있다. 즉, 패턴 청크 인식부(110)는 일련의 단어나 품사 나열 패턴으로 구성되는 구문 패턴들을 정규문법을 이용하여 표현하며, 구문파스 트리로 변환시킬 수 있다. 또한, 패턴 청크 인식부(110)는 노드의 자질 값을 이용하여 연산할 수 있는 패턴들은 문맥자유문법(CFG)이나 확장 문맥자유문법(Augmented CFG)을 이용하여 표현할 수 있다. 또한, 패턴 청크 인식부(110)는 문맥의존 문법형식을이용하여 구문트리의 좌우 문맥과 함께 구문 패턴을 표현할 수 있다.
기본명사구 인식부(120)는 기본명사구(BNP) 부착 말뭉치들을 입력받아 중간 학습 말뭉치로 가공하고, 그 가공된 중간 학습 말뭉치로부터 기본명사구 통계모델을 생성하고, 품사 태깅 결과와 상기 생성된 기본명사구 통계모델을 이용하여 입력문에서 기본명사구(BNP)를 인식한다.
구문 분석부(130)는 패턴 청크 인식부(110) 및 기본명사구 인식부(120)에서 인식된 구문 트리, 구간 청크, 종속변수 관계 청크, 기본명사구, 복합명사/복합어 및 개체명 중 적어도 하나의 인식 결과를 이용하여 구문을 분석하고, 구문 분석 결과를 기초로 하여 구문 트리를 생성한다.
통계 모델 학습부(140)는 구문구조부착 말뭉치로부터 통계 모델을 학습하고 그 학습 결과를 구문분석 통계 모델 DB(141)에 저장한다.
도 2는 본 발명의 실시 예에 따른 구문 패턴 규칙의 구조와 구문 패턴 사전의 예시도이다.
도 2에 도시된 바와 같이, 패턴 청크 인식부(110)는 구문 패턴들을 인식하여 구문규칙 작성 원칙(201)에 따라 구문 패턴을 기술한다. 이러한 규칙(201)은 구문 패턴/구문청크 유형에 따른 구분을 위한 섹션(Section), 복잡한 노드를 단순화하여 표현하기 위한 정의(Define) 문, 일부 태그의 변수화를 위한 가상 태그(vtag: virtual tag), 어휘의 카테고리 정의를 위한 서브 카테고리(Subcat), 패턴과 액션으로 구성된 룰(rule) 등으로 이루어진다. 패턴 청크 인식부(110)는 구문 패턴 또는 구문청크를 종류에 따라 섹션으로 나누어 기술한다. 이때, 하나의 섹션이 선언된 이후부터 다른 섹션이 선언되기 전까지의 작업공간에 기술된 선언문이나 규칙은 모두 같은 부류의 구문 패턴 또는 구문청크가 된다.
도 3은 본 발명의 실시 예에 따른 도 1의 패턴 청크 인식부의 상세 구성도이다.
패턴 청크 인식부(110)는 상향식 차트 파싱(Bottom-up Chart Parsing) 알고리즘을 이용하여 구문 패턴 규칙들을 인식한다. 패턴 청크 인식부(110)는 오른쪽에서 왼쪽으로 입력 데이터의 문장을 스캔해 가면서 하나의 위치에서 적용 가능한 모든 규칙들을 찾아 적용해 가면서 구문 패턴을 인식한다. 그리고 패턴 청크 인식부(110)는 구문 패턴 유형에 따라 구문트리를생성하거나 구간 청크를 생성한다.
도 3에 도시된 바와 같이, 패턴 청크 인식부(110)는 구문 패턴 사전을 읽어서 시스템 내부의 저장구조로 저장하는 규칙 로딩(rule_loading) 모듈(310), 작업공간을 생성하는 작업공간(workspace) 생성 모듈(320) 및 실제 입력 데이터에 대해 구문 패턴 사전을 적용하여 파싱하는 파싱 모듈(330)을 포함한다. 이하, 각 모듈에 대해서 살펴보면 다음과 같다.
먼저, 규칙 로딩 모듈(310)은 구문 패턴 사전 파일을 열고 한 라인씩 읽어가며 규칙에 적합한 저장구조에 저장한다. 즉, 규칙 로딩 모듈(310)은 섹션(Section) 구문을 만나면 섹션(Section) 구문을 인식하여 섹션 구문에 적합한 저장구조에저장한다. 규칙 로딩 모듈(310)은 새로운 섹션이 선언되기 전까지는 공통의 섹션으로 처리되도록 한다. 또한, 규칙 로딩 모듈(310)은 정의문, 가상태그 문에 대해서는 정의 테이블(Define Table), 가상태그 테이블(vtag table)에 저장한다. 그리고 규칙 로딩 모듈(310)은 서브 카테고리(subcat) 정보를 트라이(Trie) 구조로 저장한다. 이는 탐색의 효율을 높이기 위함이다. 규칙 로딩 모듈(310)은 룰(rule)을 패턴과 액션으로 나누어서 분석하고 룰 테이블(Rule table)에 저장한다.
작업공간 생성 모듈(320)은 다음 파싱을 위한 작업공간(Workspace)을 생성한다. 작업공간에는 패턴 매칭이 진행중인 룰들을 담고 있는 활성화 차트(achart: active chart)들의 집합인 아젠다(agenda), 이미 완성된 노드 정보를 담고 있는 비활성화 차트(inactive chart)들의 집합인 비활성화 아젠다(igenda), 터미널 노드들의 집합, 비-터미널 노드들(nonterminal nodes)의 집합 및 파싱(parsing) 결과를 저장하는 파스 트리(parse tree)로 이루어진다. 작업공간 생성 모듈(320)은 이러한 작업공간 구성요소들의 구조와 저장공간을 생성한다.
그리고 파싱 모듈(330)은 실제 구문 패턴 인식 알고리즘을 수행한다. 구문 패턴 인식 알고리즘은하기의 도 4와 같은 상향식 파싱(bottom-up parsing) 알고리즘을 이용한다.
도 4는 본 발명의 실시 예에 따른 상향식 파싱 알고리즘에 대한 흐름도이다.
파싱 모듈(330)은 룰(rule) 매칭을 위해서는 도 4와 같은 구문 패턴 인식 알고리즘을수행한다. 진행중인 활성화 차트(achart: active chart) 또는 룰(rule)에서 새로 시작된 활성화 차트(achart)의 경우, 각 활성화 차트(achart)에는 구문 패턴을 표현하는 소스 트리(Source Tree)들이 존재한다. 파싱 모듈(330)은 소스 트리들을 이용하여 기존 트리 또는 노드(ichart)와 어휘(lex), 품사 또는 구문 태그(tag), 구문속성(feature) 및 노드의 자식 노드들을 비교한다.
파싱 모듈(330)은 비교 결과가 일치하면 완성된 규칙 또는 미완성된 규칙 여부에 따라서 별도의 동작을 수행한다. 즉, 파싱 모듈(330)은 완성된 규칙의 경우 규칙에 있는 타겟(target)이라는 트리 생성 정보를 이용하여 새로운 비활성화 차트(ichart: inactive chart)를 생성한다. 반면, 파싱 모듈(330)은 미완성된 경우에 대해서 구문 패턴에서 일치된 위치를 나타내는 인덱스를 하나 증가시킨 활성화 차트(achart)를 생성한다. 이하, 도 4를 참조하여 구체적인 상향식 파싱 알고리즘에대해서 설명하기로 한다.
파싱 모듈(330)은 모든 터미널을 비활성화 아젠다(igenda)에 저장한다(S402).
파싱 모듈(330)은 아젠다(Agenda)와 비활성화 아젠다(igenda)에 있는 모든 아이템에 대해 비활성화 차트(ichart)를 로딩한다(S404).
파싱 모듈(330)은 비활성화 차트(ichart)에서 시작되는 규칙이 있는지 여부를 확인한다(S406).
상기 확인 결과(S406), 비활성화 차트(ichart)에서 시작되는 규칙이 있는 경우, 파싱 모듈(330)은 비활성화 차트(ichart)에서 시작되는 규칙을 실행한다(S408).
그리고 비활성화 차트(ichart)는 이 노드를 기다리는 활성화 차트(achart)가 있는지 여부를 확인한다(S410).
상기 확인 결과(S410), 노드를 기다리는 활성화 차트(achart)가 있는 경우, 파싱 모듈(330)은 활성화 차트(achart)를 진행한다(S412).
파싱 모듈(330)은 S412 단계에서 활성화 차트(achart)의 진행 결과, 새로 생성된 비활성화 차트(ichart)를 비활성화 아젠다(igenda)에 등록한다(S414).
한편, 파싱 모듈(330)은 모든 아이템에 대해 활성화 차트(achart)를 로딩한다(S416).
그리고 파싱 모듈(330)은 활성화 차트(achart)와 이어지는 모든 비활성화 차트(ichart)에 대해서 룰 매칭을 실행한다(S418).
이어서, 파싱 모듈(330)은 새로운 비활성화 차트(ichart)가 생성되면 비활성화 아젠다(igenda)에 등록한다(S420).
이후, 파싱 모듈(330)은 계속 진행상태에 있는 활성화 차트(achart)를 아젠다(agenda)에 등록한다(S422).
도 5는 본 발명의 실시 예에 따른 도 1의 기본명사구 인식부의 상세 구성도이다.
기본명사구 인식부(120)는 문장 태깅 결과를 입력으로 받아서 기본명사구 인식 결과를 출력한다. 여기서, 기본명사구(BNP: Base Noun Phrase)란 문장을 이루는 여러 구 중에서 가장 기본이 되는 명사구를 말한다. 기본명사구 인식부(120)는 처리량이 많지만 정확률이 다소 떨어지는 구문분석의 성능을 향상시키기위해 높은 정확률과 안정적인 성능을 보이는 기본명사구 인식 방식을 적용한다. 이는 구문분석의 복잡도를 줄일 뿐 아니라 정확도를 향상시키기 위함이다.
이를 위해, 본 발명의 실시 예에 따른 기본명사구 인식부(120)는 기본명사구(BNP) 부착 말뭉치들을 입력받아 BNP 통계 모델을 학습하는 기본명사구 통계 학습 모듈(510) 및 통계 기반 기본명사구 인식 모듈(520)을 포함한다. 기본명사구 통계 학습 모듈(510) 및 통계 기반 기본명사구 인식 모듈(520)은 기본명사구 통계 모델 DB(112)와 연결되어 있다.
기본명사구 통계 학습 모듈(510)은 기본명사구 인식을 위해 팬 트리뱅크(Penn TreeBank)에서 정의한 문법에 기반하여 기본명사구만 태깅된 형태로 가공된 학습 말뭉치를 구축한다. 그리고 기본명사구 통계 학습 모듈(510)은 유한상태변형기(FST: Finite State Transducer)를 이용하여 초기 말뭉치를 시스템에서 이용할 수 있는 형태로 가공한다. 기본명사구 통계 학습 모듈(510)은 입력되는 말뭉치를 여는 괄호와 닫는 괄호 그리고 단어로 분류하여 그 입력에 대한 행위들을 정의하고 가공한다. 이어서, 기본명사구 통계 학습 모듈(510)은 가공된 말뭉치(이하, 중간 학습 말뭉치)에서 기본명사구 인식을 위해 사용될 자질들을 추출한다. 자질 선택은 정보 이득(Information Gain)을 이용하여 의미 있는 자질을 선택하며, 여러 자질들을 테스트하여 가장 오류가 적은 자질들을 추출하도록 한다.
사용할 자질을 결정한 후, 기본명사구 통계 학습 모듈(510)은 중간 학습 말뭉치로부터 자질들을 추출하여 조건부 랜덤 필드(CRF: Conditional Random Field) 알고리즘에 따라 학습할 수 있는 형태로 변환시켜 학습을 진행한다.
기본명사구 통계 학습 모듈(510)은 학습 진행이 종료되면 기본명사구 통계모델을 생성하여 기본명사구 통계 모델 DB(112)에 저장한다. 그리고 기본명사구 통계모델은 아스키 코드 형태로 저장된다. 그리고 기본명사구 통계 모델은 학습시킨 환경과 상관없이 모든 환경에서 적용될 수 있다.
그리고 통계 기반 기본명사구 인식 모듈(520)은 태깅 결과와 기본명사구 통계모델 학습결과를 입력받는다. 그리고 통계 기반 기본명사구 인식 모듈(520)은 품사 태깅 결과와 기본명사구 통계모델 학습결과를 이용해 입력문에서 기본명사구(BNP)를 인식하여 기본명사구 인식 정보를 출력한다.
도 6은 본 발명의 실시 예에 따른 도 1의 구문 분석부의 상세 구성도이다.
구문 분석부(130)는 문장을 구성하고 있는 형태소들 사이의 구문 관계를 분석하여 문장의 구조를 결정한다. 이를 위해, 구문 분석부(130)는 품사 태깅 결과와 다양한 청킹 결과(예컨대, 복합명사/복합어, 구문트리/구간청크, 기본명사구(BNP), 개체명(NE: Name Entity) 인식 결과 등)를 입력받아 구문분석 문법 및 각종 사전정보를 이용하여 문장의 구조를 분석한다. 이후, 구문 분석부(130)는 문장의 구조 분석 결과를 기초로 하여 파스 트리(Parse Tree)를 생성한다. 일반적으로 문장의 구조를 분석할 때 자연언어의 어휘적 특성과 구문분석 문법으로 인하여 구조적 모호성이 발생한다. 반면, 본 발명의 실시 예에 따른 구문 분석부(130)는 말뭉치에서 추출한 다양한 확률 정보를 이용하여 중의성을 해소하고, 최적의 구문구조를 선택할 수 있다.
이하, 본 발명의 실시 예에 따른 구문 분석부(130)의 구성요소 각각에 대하여 살펴보기로 한다.
도 6에 도시된 바와 같이, 구문 분석부(130)는 초기 데이터 설정 모듈(610), 파싱 자료 관리 모듈(620), 구문 분석 모듈(630), 규칙 및 지식 사전 DB(640), 제약 및 확률 처리 모듈(650) 및 결과 트리 선택 모듈(660)을 포함한다. 규칙 및 지식 사전 DB(640)은 도 1의 문법사전 DB(131), 구문자질사전 DB(132), 전치사구 규칙 DB(133) 및 HDR 규칙 DB(134)를 포함할 수 있다.
구문 분석부(130)는 입력 데이터로 품사 태깅 결과와 청킹 결과를 입력받아 구문 분석을 수행한다.
구체적으로 살펴보면, 초기 데이터 설정 모듈(610)은 입력 문장에 대한 품사 태깅 결과로서 경로(path) 기반과 상태(state) 기반의 2가지 분석 결과를 이용한다. 품사 태깅 결과는 각 어휘에 대한 서브 단어(sub-word) 정보를 포함할 수 있다. 초기 데이터 설정 모듈(610)은 품사 태깅 결과의 옵션에 따라 1-베스트(1-best) 경로 품사만 이용할 것인지 아니면 n-베스트 태그(n-best tag)가 이용할 것인지 여부를 결정한다. 여기서, 옵션은 프로세스 레벨(Process Level)을 나타낸다.
여기서, 1-베스트 경로(1-best path)는 가장 신뢰도가 높은 품사 태깅 결과로 항상 이용된다. 1-베스트 경로만을 사용하는 경우 잘못 부착된 품사 태그로 인해 정답 트리가 생성되지 않을 수 있다. 이를 완화하기 위해, n-베스트 태그(n-best tag)를 보조 수단으로 함께 이용할 수 있다. 이때, 모든 n-베스트 태그를 사용하는 경우 구문분석 과정에서 중간 노드가 기설정된 노드 개수 이상으로 생성되어 성능이 하락하게 될 수 있다. 이를 방지하기 위해, 1-베스트 경로에 나타난 품사의 점수(Score)와 비교하여 일정 임계(Threshold) 값 이상의 점수를 갖는 품사들만이이용된다.
전술된 품사 태깅 결과와 함께, 초기 데이터 설정 모듈(610)은 청크 패턴 인식부(110)와 기본명사구 인식부(120)의 결과인 청킹 결과를 이용한다. 여기서, 외부 청킹 결과는 기본적으로 1-베스트 경로(1-best path) 품사만을 사용하여 생성된다. 외부 청킹 결과에는 청크의 시작/마지막 형태소 정보, 헤드(head) 정보 및 부가 정보들을 포함하고 있다.
초기 데이터 설정 모듈(610)은 청크 패턴 인식부(110)와 기본명사구 인식부(120)의 외부 청킹 결과 외에 복합명사/복합어 인식결과와개체명 인식결과(NE)를 이용할 수 있다.
한편, n-베스트 품사 태깅 결과 및 청킹 결과를 이용한 구문분석 알고리즘은 일반적인 상향식 차트 파싱(Bottom-up Chart Parsing) 알고리즘을 따른다. 이때, 구문 분석부(130)는 청킹 결과에 대한 처리를 부가적으로 한다.
구문 분석 모듈(630)은 글로벌 아젠다(Global Agenda)에서 프로세스 레벨(Process Level)이 일치하고 우선순위가 가장 높은 아젠다를 꺼내어 실행한다.
이때, 아젠다 타입이 청크 타입(Chunk Type)인 경우, 청크 생성 과정에서 내부 구조가 결정된 청크들은 이미 노드가 생성된다. 그러므로 구문 분석 모듈(630)은 미리 생성해놓은 노드를 비활성화 차트(Ichart)에 등록하고 종료한다.
다음으로, 아젠다 타입이 절 청크(Clause Chunk)인 경우, 구문 분석 모듈(630)은 구문분석 문법과의 연동을 위해 청크 시작 및 끝 위치에 SBEGIN, SEND라는 가상 노드를 추가한 후 청크 제약에 사용하기 위해 청크를 활성화한다.
아젠다 타입이 그외 청크들인 경우는 구문분석 과정에서 내부 분석 과정을 거쳐 노드가 생성된다. 그러므로 제약 및 확률 처리 모듈(650)은 청크 제약에 사용하기 위해 청크를 활성화한다.
한편, 구문 분석 모듈(630)은 아젠다 타입이 비활성화 차트 타입(Ichart Type)인 경우에는 현재 비활성화 차트(Ichart)와 결합가능한 모든 활성화 차트(Achart)에 대해 문법 진행이 가능한지 확인한다. 그리고 먼저 문법 진행이 성공한 경우(Match Rule), 구문 분석 모듈(630)은 제약규칙을 확인하여 구문 노드를 생성할 수 있는지 여부를 확인한다. 구문 분석 모듈(630)은 구문 노드를 생성할 수 있는 경우, 새로운 비활성화 차트(New Ichart)를 생성한다.
그리고 제약 및 확률 처리 모듈(650)은 트리 확률 정보를 이용하여 새로운 비활성화 차트(New Ichart)의 점수를 계산하여 파스 테이블(Ptable: ParseTable) 및 글로벌 아젠다(Global Agenda)에 등록한다. 이때, 너무 많은 중간 노드가 생성되는 것을 제약하기 위해, 제약 및 확률 처리 모듈(650)은 빔서치(BeamSearch) 제약을 수행한다.
한편, 미완료 문법에 대해서는 구문 분석 모듈(630)은 새로운 활성화 차트(Achart)를 생성한 후 현재 비활성화 차트(Ichart)를 자식 노드(Child Node) 또는 컨텍스트 노드(Context Node)에 추가한다. 구문 분석 모듈(630)은 이미 처리가 완료된 비활성화 차트(Ichart)들 중에 새로이 생성된 활성화 차트(Achart)와 결합할 수 있는 비활성화 차트(Ichart)를 찾아 문법 진행(Match Rule) 과정을 진행한다.
또한, 구문 분석 모듈(630)은 글로벌 아젠다(Global Agenda)에 등록된 아젠다(Agenda) 중 프로세스 레벨(Process Level)이 일치하는 것이 더 이상 없을 경우 전체 트리 생성이 성공했는지를 확인한다.
결과 트리 선택 모듈(660)은 전체 트리가 존재하는 경우 결과 트리 생성을 진행한다. 만약, 전체 트리가 존재하지 않는 경우, 결과 트리 선택 모듈(660)은 파싱 실패에 대한 후처리를 진행할 수 있다.
파싱 실패에 대한 후처리 과정을 살펴보면, 결과 트리 선택 모듈(660)은 전체 트리 생성에 실패한 경우 구문분석 과정에서 생성된 중간 트리들을 이용하여 전체 트리를 조합한다.
구체적으로, 결과 트리 선택 모듈(660)은 전체 구간에 생성된 구문 노드 중 가장 확률이 높은 부분 트리를 찾는다. 그리고 결과 트리 선택 모듈(660)은 찾은 부분트리의 구간을 세팅한 후 비어있는 구간에 대해 가장 확률이 높은 부분 트리를 찾는 과정을 반복하여 모든 구간에 대해 부분트리를설정한다.
이어서, 결과 트리 선택 모듈(660)은 중간 트리 리스트에 포함된 중간 트리를 최소구간으로 설정하고 중간 트리 리스트에 포함된 중간트리들의 시작/끝 정보를 이용하여 트리가 존재하는 가장 큰 구간을 찾는다. 결과 트리 선택 모듈(660)은 찾은 구간을 새롭게 세팅한 후, 나머지 구간에 대해서도 상기 과정을 반복하여 전체 구간에 대해 가능한 큰 구간 트리로 채워지도록 처리한다.
한편, 본 발명의 실시 예에 적용되는 통계적 모델 방법을 사용한 구문 중의성 해소 모델에 대해서 살펴보기로 한다.
본 발명의 실시 예에 따른 구문 분석부(130)는 구조가 단순하며, 직관적으로 문장 성분 간의 관계를 설명할 수 있는 의존 구조 기반의 통계기반 구문분석 모델을 이용한다. 구문 분석부(130)는 좌우 충분한 문맥 정보를 활용하여 구조적 중의성을 해소할 수 있다.
통계기반 구문분석 모델을 설명하기 전에 먼저 본 발명의 실시 예에 따른 사용한 표기법을 살펴보면 다음과 같다. Wi는 단어의 어휘 정보, ti는 단어의 품사 정보, ti L는 Wi의 좌측 자식 트리(left child tree)의 헤드(head)의 품사, ti R는 Wi의 우측 자식 트리(right child tree)의 헤드(head)의 품사를 나타낸다.
한편, 통계 모델 학습부(140)는 구문구조부착 말뭉치로부터 통계 모델을 학습하고 학습 결과에 따른 구문분석 통계모델을 구문분석 통계 모델 DB(141)에 저장한다. 구문구조 중의성 해소 모델을 살펴보면, 구문구조 중의성 해소 모델에서 하나의 헤드는 여러 개의 종속(Dependent)을 가짐으로써문장을 생성한다. 예를 들어, "eat"이라는 단어는 목적어를 취한 후 주어를 취함으로써 하나의 문장을 생성하기도한다. 또한, "eat"이라는 단어는 목적어를 취하고 전치사구를부사구로 취한 후 주어를 취함으로써 문장을 생성하기도한다. 이러한 모델을 표현한 것이 구문구조 중의성 해소 모델이다. 구문구조 중의성 해소 모델은 기본적으로는 하나의 헤드가 하나의 종속을 구문관계 DL로가질 확률이다. 구문구조 중의성 해소 모델은 어떤 문맥하에 있는 하나의 헤드가 또 다른 문맥하의 보어를 취할 확률을 표현하며, 하기의 [수학식 1]과 같이 표시될 수 있다.
[수학식 1]
Figure PCTKR2013007845-appb-I000001
여기서, Wi는 단어의 어휘 정보, ti는 단어의 품사 정보, ti L는 Wi의 좌측 자식 트리(left child tree)의 헤드(head)의 품사, ti R는 Wi의 우측 자식 트리(right child tree)의 헤드(head)의 품사를 나타낸다.
또한, 어떤 문장 S가 문장 구조 φ를 생성할 확률은 하기의 [수학식 2]와 같이 표현된다.
[수학식 2]
Figure PCTKR2013007845-appb-I000002
여기서, P(S,φ)는 어떤 문장 S가 문장 구조 φ를 생성할 확률을 나타낸다. 상기의 [수학식 2]에서는 [수학식 1]의 t대신 T가 사용된다. 매우 적은 수의 어휘를 가지는 전치사의 경우에는 품사 대신 어휘 그 자체를 될 수 있다. 그 외의 경우에는 품사가 이용된다. 즉, t와 T는 전치사를 제외하면 동일한 값을 가진다. 하기의 [수학식 3]과 같이 표현된다.
[수학식 3]
Figure PCTKR2013007845-appb-I000003
또한, "be", "have", "do"의 경우에는 각각 BE, HV, DO라는 품사를 이용한다. 그리고 "be", "have", "do"의 경우는 과거, 현재분사, 과거분사, 복수형을 위해 BE, HV, DO에 각각 D, G, N, P를 붙여서 이용된다.
본 발명의 실시 예에 적용되는 확률 모델은 하기의 [수학식 4]와 같이 계산된다.
[수학식 4]
Figure PCTKR2013007845-appb-I000004
한편, 상술한 구문 전치리 기반의 구문 분석 방법은 소프트웨어적인 프로그램으로 구현하여 컴퓨터로 읽을 수 있는 소정 기록 매체에 기록해 둘 수 있다.
예컨대, 기록 매체는 각 재생 장치의 내장형으로하드 디스크, 플래시 메모리, RAM, ROM 등이거나, 외장형으로 CD-R, CD-RW와 같은 광디스크, 콤팩트 플래시 카드, 스마트 미디어, 메모리 스틱, 멀티미디어 카드일 수 있다.
이 경우, 컴퓨터로 읽을 수 있는 기록 매체에 기록한 프로그램은, 입력된 품사 태깅 결과로부터 미리 정의된 구문 패턴을 인식하여 구문 패턴 유형에 따라 구문 트리, 구간 청크 및 종속변수 관계 청크 중 어느 하나를 생성하는 패턴 청크 인식 과정, 기본명사구(BNP) 부착 말뭉치들을 입력받아 중간 학습 말뭉치로 가공하고, 상기 가공된 중간 학습 말뭉치로부터 기본명사구 통계모델을 생성하는 기본명사구 통계 모델 생성 과정, 품사 태깅 결과와 상기 생성된 기본명사구 통계모델을 이용하여 입력문에서 기본명사구(BNP)를 인식하는 기본명사구 인식 과정 및 상기 인식된 구문 트리, 구간 청크, 종속변수 관계 청크, 기본명사구, 복합명사/복합어 및 개체명 중 적어도 하나의 인식 결과를 이용하여 구문을 분석하고, 상기 구문 분석 결과를 기초로 하여 구문 트리를 생성하는 구문 분석 과정을 포함하는 방법을 실행할 수 있다.
본 발명의 명세서에서 설명하는 기능적 동작과 구현물은 디지털 전자회로로 구현되거나 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로구현되거나 이들 중 하나 이상의 조합으로 구현될 수 있다. 본 발명의 명세서에서 설명하는 구현물은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 데이터 처리 장치의 동작을 제어하기 위하여 또는 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다.
본 발명의 도면은 동작과정을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 특정한 순서로 그러한 동작들을 수행해야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해해서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.
또한 본 발명의 명세서에서 특정한 실시형태를 설명하였다. 실시형태들은 이하의 특허청구범위에 속한다. 예컨대, 청구항에 기재된 동작들은 상이한 순서로 수행되면서 여전히 바람직한 결과를 성취할 수 있다.
이상의 설명은 본 발명을 예시적으로 설명한 것에 불과하며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술적 사상에서 벗어나지 않는 범위에서 다양한 변형이 가능할 것이다. 따라서 본 발명의 명세서에 개시된 실시 예들은 본 발명을 한정하는 것이 아니다. 본 발명의 범위는 아래의 특허청구범위에 의해 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술도 본 발명의 범위에 포함되는 것으로 해석해야 할 것이다.
본 발명은 영어, 중국어 및 한국어 등의 언어로 작성된 문장을 입력받아 형태소 분석, 품사 태깅 및 복합어 인식을 수행한 후, 규칙과 오토마타 기반의 구문 패턴을 인식하고, 자질 기반의 구문 분석을 통해 가능한 구문구조를 분석하고, 통계정보를 이용하여 n-베스트 구문 구조를 출력할 수 있다. 이러한 점에서 기존 기술의 한계를 뛰어 넘음에 따라 관련 기술에 대한 이용만이 아닌 적용되는 장치의 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용 가능성이 있는 발명이다.

Claims (18)

  1. 입력된 품사 태깅 결과로부터 미리 정의된 구문 패턴을 인식하여 구문 패턴 유형에 따라 구문 트리, 구간 청크 및 종속변수 관계(Head-Dependent relation) 청크 중 어느 하나를 생성하는 패턴 청크 인식부;
    기본명사구(BNP) 부착 말뭉치들을 입력받아 중간 학습 말뭉치로 가공하고, 상기 가공된 중간 학습 말뭉치로부터 기본명사구 통계모델을생성하고, 품사 태깅 결과와 상기 생성된 기본명사구통계모델을 이용하여 입력문에서 기본명사구(BNP)를 인식하는 기본명사구 인식부; 및
    상기 인식된 구문 트리, 구간 청크, 종속변수 관계 청크, 기본명사구, 복합명사/복합어 및 개체명 중 적어도 하나의 인식 결과를 이용하여 구문을 분석하고, 상기 구문 분석 결과를 기초로 하여 구문 트리를 생성하는 구문 분석부
    를 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  2. 제 1 항에 있어서,
    구문구조부착 말뭉치로부터 통계 모델을 학습하고 상기 학습된 학습 결과를 구문분석 통계 모델로 저장하는 통계 모델 학습부
    를 더 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  3. 제 1 항에 있어서,
    상기 패턴 청크 인식부는,
    정규문법(Regular Grammar), 문맥자유문법(Context Free Grammar), 확장 문맥자유문법(Augmented CFG) 및 문맥의존문법(CSG: Context Sensitive Grammar) 중 어느 하나의 문법으로 표현할 수 있는 구문 패턴들을 인식하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  4. 제 3 항에 있어서,
    상기 패턴 청크 인식부는,
    일련의 단어나 품사 나열 패턴을 정규문법에 따라 표현하거나, 노드의 자질값으로 연산될 수 있는 패턴들을 문맥자유문법 또는 확장 문맥자유문법에 따라 표현하거나, 문맥의존문법에 따라 구문트리의좌우 문맥과 구문 패턴을 표현하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  5. 제 1 항에 있어서,
    상기 패턴 청크 인식부는,
    구문 패턴들은 구문규칙 작성 원칙에 따라 구문 패턴 또는 구문청크 유형에 따른 구분을 위한 섹션(section), 복잡한 노드를 단순화하여 표현하기 위한 정의(define) 문, 일부 태그의 변수화를 위한 가상 노드 태그(virtual tag), 어휘의 카테고리 정의를 위한 서브 카테고리(subcat) 및 패턴과 액션으로 구성된 룰 중 어느 하나로 표현하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  6. 제 1 항에 있어서,
    상기 패턴 청크 인식부는,
    구문 패턴 사전 파일을 읽어서 규칙에 적합한 저장 구조로 저장하는 룰 로딩 모듈;
    파싱을 위한 활성화 차트(achart), 아젠다(agenda), 비활성화 차트(ichart), 비활성화 아젠다(igenda), 터미널노드들의 집합, 비-터미널 노드들의 집합 및 파싱 결과 중 적어도 하나를 포함하는 작업공간을 생성하는 작업공간 생성 모듈; 및
    실제 입력 데이터에 대해 구문 패턴 사전을 적용하여 파싱하는 파싱 모듈
    을 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  7. 제 6 항에 있어서,
    상기 파싱 모듈은,
    완성된 규칙의 경우 규칙에 있는 타겟(target)이라는 트리 생성 정보를 이용하여 새로운 비활성화 차트(ichart)를 생성하고, 미완성된 규칙의 경우에 대해서 구문 패턴에서 일치된 위치를 나타내는 인덱스를 증가시킨 활성화 차트(achart)를 생성하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  8. 제 1 항에 있어서,
    상기 기본명사구 인식부는,
    기본명사구(BNP) 부착 말뭉치들을 입력받아 기본명사구만 태깅된 형태로 이루어진 중간 학습 말뭉치로 가공하고, 상기 가공된 중간 학습 말뭉치로부터 자질을 추출하여 학습을 진행하고 상기 학습 진행 결과를 이용하여 기본명사구 통계모델을 생성하는 기본명사구통계 학습 모듈; 및
    품사 태깅 결과와 기본명사구 통계모델 학습결과를 입력받아 입력문에서기본명사구(BNP)를 인식하여 기본명사구 인식 정보를 출력하는 통계 기반 기본명사구 인식 모듈
    을 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  9. 제 1 항에 있어서,
    상기 구문 분석부는,
    1-베스트 경로(1-best path) 품사 태깅 결과 또는 n-베스트(n-best) 품사 태깅 결과를 이용하여 품사 태깅 단계의 오류 전파로 인한 구문분석 오류를 최소화하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  10. 제 1 항에 있어서,
    상기 구문 분석부는,
    구문분석 전처리 결과 및 n-베스트(n-best) 품사 태깅 결과를 입력받아 구문분석을 수행할 때, 의존문법 기반의 통계모델을이용하여 구문 중의성을 해소하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 장치.
  11. 입력된 품사 태깅 결과로부터 미리 정의된 구문 패턴을 인식하여 구문 패턴 유형에 따라 구문 트리, 구간 청크 및 종속변수 관계 청크 중 어느 하나를 생성하는 패턴 청크 인식 단계;
    기본명사구(BNP) 부착 말뭉치들을 입력받아 중간 학습 말뭉치로 가공하고, 상기 가공된 중간 학습 말뭉치로부터 기본명사구 통계모델을생성하는 기본명사구 통계 모델 생성 단계;
    품사 태깅 결과와 상기 생성된 기본명사구 통계모델을이용하여 입력문에서 기본명사구(BNP)를 인식하는 기본명사구 인식 단계; 및
    상기 인식된 구문 트리, 구간 청크, 종속변수 관계 청크, 기본명사구, 복합명사/복합어 및 개체명 중 적어도 하나의 인식 결과를 이용하여 구문을 분석하고, 상기 구문 분석 결과를 기초로 하여 구문 트리를 생성하는 구문 분석 단계
    를 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 방법.
  12. 제 11 항에 있어서,
    구문구조부착 말뭉치로부터 통계 모델을 학습하고 상기 학습된 학습 결과를 구문분석 통계 모델로 저장하는 통계 모델 학습 단계
    를 더 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 방법.
  13. 제 11 항에 있어서,
    상기 패턴 청크 인식 단계는,
    일련의 단어나 품사 나열 패턴을 정규문법에 따라 표현하거나, 노드의 자질값으로 연산될 수 있는 패턴들을 문맥자유문법 또는 확장 문맥자유문법에 따라 표현하거나, 문맥의존문법에 따라 구문트리의좌우 문맥과 구문 패턴을 표현하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 방법.
  14. 제 11 항에 있어서,
    상기 패턴 청크 인식 단계는,
    구문 패턴들은 구문규칙 작성 원칙에 따라 구문 패턴 또는 구문청크 유형에 따른 구분을 위한 섹션(section), 복잡한 노드를 단순화하여 표현하기 위한 정의(define) 문, 일부 태그의 변수화를 위한 가상 노드 태그(virtual tag), 어휘의 카테고리 정의를 위한 서브 카테고리(subcat) 및 패턴과 액션으로 구성된 룰 중 어느 하나로 표현하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 방법.
  15. 제 11 항에 있어서,
    상기 패턴 청크 인식 단계는,
    구문 패턴 사전 파일을 읽어서 규칙에 적합한 저장 구조로 저장하는 룰 로딩 단계;
    파싱을 위한 활성화 차트(achart), 아젠다(agenda), 비활성화 차트(ichart), 비활성화 아젠다(igenda), 터미널노드들의 집합, 비-터미널 노드들의 집합 및 파싱 결과 중 적어도 하나를 포함하는 작업공간을 생성하는 작업공간 생성 단계; 및
    실제 입력 데이터에 대해 구문 패턴 사전을 적용하여 파싱하는 파싱 단계
    를 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 방법.
  16. 제 15 항에 있어서,
    상기 파싱 단계는,
    완성된 규칙의 경우 규칙에 있는 타겟(target)이라는 트리 생성 정보를 이용하여 새로운 비활성화 차트(ichart)를 생성하고, 미완성된 규칙의 경우에 대해서 구문 패턴에서 일치된 위치를 나타내는 인덱스를 증가시킨 활성화 차트(achart)를 생성하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 방법.
  17. 제 11 항에 있어서,
    상기 기본명사구 통계 학습 단계는,
    기본명사구(BNP) 부착 말뭉치들을 입력받아 기본명사구만 태깅된 형태로 이루어진 중간 학습 말뭉치로 가공하는 말뭉치 가공 단계;
    상기 가공된 중간 학습 말뭉치로부터 자질을 추출하여 학습을 진행하는 말뭉치 학습 단계; 및
    상기 학습 진행 결과를 이용하여 기본명사구 통계모델을생성하는 통계모델 생성 단계
    를 포함하는 것을 특징으로 하는 구문 전처리 기반의 구문 분석 방법.
  18. 입력된 품사 태깅 결과로부터 미리 정의된 구문 패턴을 인식하여 구문 패턴 유형에 따라 구문 트리, 구간 청크 및 종속변수 관계 청크 중 어느 하나를 생성하는 패턴 청크 인식 과정;
    기본명사구(BNP) 부착 말뭉치들을 입력받아 중간 학습 말뭉치로 가공하고, 상기 가공된 중간 학습 말뭉치로부터 기본명사구 통계모델을생성하는 기본명사구 통계 모델 생성 과정;
    품사 태깅 결과와 상기 생성된 기본명사구 통계모델을이용하여 입력문에서 기본명사구(BNP)를 인식하는 기본명사구 인식 과정; 및
    상기 인식된 구문 트리, 구간 청크, 종속변수 관계 청크, 기본명사구, 복합명사/복합어 및 개체명 중 적어도 하나의 인식 결과를 이용하여 구문을 분석하고, 상기 구문 분석 결과를 기초로 하여 구문 트리를 생성하는 구문 분석 과정
    을 포함하여 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
PCT/KR2013/007845 2012-10-31 2013-08-30 구문 전처리 기반의 구문 분석 장치 및 그 방법 WO2014069779A1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/399,765 US9620112B2 (en) 2012-10-31 2013-08-30 Syntax parsing apparatus based on syntax preprocessing and method thereof
US15/445,333 US9971757B2 (en) 2012-10-31 2017-02-28 Syntax parsing apparatus based on syntax preprocessing and method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020120122372A KR102013230B1 (ko) 2012-10-31 2012-10-31 구문 전처리 기반의 구문 분석 장치 및 그 방법
KR10-2012-0122372 2012-10-31

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US14/399,765 A-371-Of-International US9620112B2 (en) 2012-10-31 2013-08-30 Syntax parsing apparatus based on syntax preprocessing and method thereof
US15/445,333 Continuation US9971757B2 (en) 2012-10-31 2017-02-28 Syntax parsing apparatus based on syntax preprocessing and method thereof

Publications (1)

Publication Number Publication Date
WO2014069779A1 true WO2014069779A1 (ko) 2014-05-08

Family

ID=50627637

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/007845 WO2014069779A1 (ko) 2012-10-31 2013-08-30 구문 전처리 기반의 구문 분석 장치 및 그 방법

Country Status (3)

Country Link
US (2) US9620112B2 (ko)
KR (1) KR102013230B1 (ko)
WO (1) WO2014069779A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111062199A (zh) * 2019-11-05 2020-04-24 北京中科微澜科技有限公司 一种不良信息识别方法及装置
CN111370083A (zh) * 2018-12-26 2020-07-03 阿里巴巴集团控股有限公司 一种文本结构化方法及装置
CN112905232A (zh) * 2021-02-05 2021-06-04 中国海洋大学 一种基于语法分析树的程序代码平行语料挖掘方法及系统

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10671954B2 (en) * 2015-02-23 2020-06-02 Google Llc Selective reminders to complete interrupted tasks
US10133728B2 (en) * 2015-03-20 2018-11-20 Microsoft Technology Licensing, Llc Semantic parsing for complex knowledge extraction
KR101646461B1 (ko) * 2015-04-22 2016-08-12 강원대학교산학협력단 딥 러닝을 이용한 한국어 의존 구문 분석 방법
US11157532B2 (en) * 2015-10-05 2021-10-26 International Business Machines Corporation Hierarchical target centric pattern generation
US9684496B1 (en) * 2016-03-25 2017-06-20 Norman L. Reid Method for parsing programming languages and structured data
CN108614828B (zh) * 2016-12-12 2020-12-29 北大方正集团有限公司 基于规则模板的语料分析方法及语料分析装置
US10872122B2 (en) * 2018-01-30 2020-12-22 Government Of The United States Of America, As Represented By The Secretary Of Commerce Knowledge management system and process for managing knowledge
CN109885828A (zh) * 2019-01-14 2019-06-14 平安科技(深圳)有限公司 基于语言模型的词语纠错方法、装置、计算机设备及介质
KR102339487B1 (ko) * 2019-08-23 2021-12-15 울산대학교 산학협력단 의미 추상화를 이용한 전이 기반 한국어 의존관계 분석 시스템
CN111737974B (zh) * 2020-08-18 2020-12-04 北京擎盾信息科技有限公司 一种语句的语义抽象化表示方法及装置
CN115935957B (zh) * 2022-12-29 2023-10-13 广东南方网络信息科技有限公司 一种基于句法分析的句子语法纠错方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980078534A (ko) * 1997-04-29 1998-11-16 윤종용 절단위 분할기를 갖춘 영한 번역 장치 및 그 영어 해석 방법
KR20060064443A (ko) * 2004-12-08 2006-06-13 한국전자통신연구원 2단계 구문분석을 통한 자동 번역 장치 및 방법
KR20080024638A (ko) * 2006-09-14 2008-03-19 한국전자통신연구원 병렬 구조 인식을 통한 구문 분석 장치 및 방법
WO2012030053A2 (ko) * 2010-09-02 2012-03-08 에스케이텔레콤 주식회사 병렬 말뭉치의 구 정렬을 이용한 숙어 표현 인식 장치 및 그 방법
KR101180589B1 (ko) * 2011-03-31 2012-09-06 포항공과대학교 산학협력단 한국어 개방형 정보 추출 방법 및 이를 수행하는 프로그램을 기록한 기록매체

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07282055A (ja) * 1994-04-06 1995-10-27 Fujitsu Ltd 文解析方法および装置
US6442524B1 (en) * 1999-01-29 2002-08-27 Sony Corporation Analyzing inflectional morphology in a spoken language translation system
US6243669B1 (en) * 1999-01-29 2001-06-05 Sony Corporation Method and apparatus for providing syntactic analysis and data structure for translation knowledge in example-based language translation
US6282507B1 (en) * 1999-01-29 2001-08-28 Sony Corporation Method and apparatus for interactive source language expression recognition and alternative hypothesis presentation and selection
US6266642B1 (en) * 1999-01-29 2001-07-24 Sony Corporation Method and portable apparatus for performing spoken language translation
US7085716B1 (en) * 2000-10-26 2006-08-01 Nuance Communications, Inc. Speech recognition using word-in-phrase command
US7475006B2 (en) * 2001-07-11 2009-01-06 Microsoft Corporation, Inc. Method and apparatus for parsing text using mutual information
US20050022114A1 (en) * 2001-08-13 2005-01-27 Xerox Corporation Meta-document management system with personality identifiers
JP2004271764A (ja) * 2003-03-06 2004-09-30 Nagoya Industrial Science Research Inst 有限状態変換器作成装置、プログラム、記録媒体、作成方法、及び漸進的構文解析装置
US7395256B2 (en) * 2003-06-20 2008-07-01 Agency For Science, Technology And Research Method and platform for term extraction from large collection of documents
US8548794B2 (en) * 2003-07-02 2013-10-01 University Of Southern California Statistical noun phrase translation
US7346487B2 (en) * 2003-07-23 2008-03-18 Microsoft Corporation Method and apparatus for identifying translations
US7783474B2 (en) * 2004-02-27 2010-08-24 Nuance Communications, Inc. System and method for generating a phrase pronunciation
US20060200338A1 (en) * 2005-03-04 2006-09-07 Microsoft Corporation Method and system for creating a lexicon
GB2427918B (en) * 2005-07-01 2009-01-28 David Richard Andrews A monitoring system
US7386550B2 (en) * 2005-08-12 2008-06-10 Xerox Corporation Document anonymization apparatus and method
WO2007118213A2 (en) * 2006-04-06 2007-10-18 Yale University Framework of hierarchical sensory grammars for inferring behaviors using distributed sensors
US9122674B1 (en) * 2006-12-15 2015-09-01 Language Weaver, Inc. Use of annotations in statistical machine translation
US9501467B2 (en) * 2007-12-21 2016-11-22 Thomson Reuters Global Resources Systems, methods, software and interfaces for entity extraction and resolution and tagging
US8010539B2 (en) * 2008-01-25 2011-08-30 Google Inc. Phrase based snippet generation
US8359191B2 (en) * 2008-08-01 2013-01-22 International Business Machines Corporation Deriving ontology based on linguistics and community tag clouds
WO2011131785A1 (en) * 2010-04-21 2011-10-27 Université Catholique de Louvain Normalisation of noisy typewritten texts
US20120290288A1 (en) * 2011-05-09 2012-11-15 Xerox Corporation Parsing of text using linguistic and non-linguistic list properties
US9280520B2 (en) * 2012-08-02 2016-03-08 American Express Travel Related Services Company, Inc. Systems and methods for semantic information retrieval

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980078534A (ko) * 1997-04-29 1998-11-16 윤종용 절단위 분할기를 갖춘 영한 번역 장치 및 그 영어 해석 방법
KR20060064443A (ko) * 2004-12-08 2006-06-13 한국전자통신연구원 2단계 구문분석을 통한 자동 번역 장치 및 방법
KR20080024638A (ko) * 2006-09-14 2008-03-19 한국전자통신연구원 병렬 구조 인식을 통한 구문 분석 장치 및 방법
WO2012030053A2 (ko) * 2010-09-02 2012-03-08 에스케이텔레콤 주식회사 병렬 말뭉치의 구 정렬을 이용한 숙어 표현 인식 장치 및 그 방법
KR101180589B1 (ko) * 2011-03-31 2012-09-06 포항공과대학교 산학협력단 한국어 개방형 정보 추출 방법 및 이를 수행하는 프로그램을 기록한 기록매체

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111370083A (zh) * 2018-12-26 2020-07-03 阿里巴巴集团控股有限公司 一种文本结构化方法及装置
CN111370083B (zh) * 2018-12-26 2023-04-25 阿里巴巴集团控股有限公司 一种文本结构化方法及装置
CN111062199A (zh) * 2019-11-05 2020-04-24 北京中科微澜科技有限公司 一种不良信息识别方法及装置
CN111062199B (zh) * 2019-11-05 2023-12-22 北京中科微澜科技有限公司 一种不良信息识别方法及装置
CN112905232A (zh) * 2021-02-05 2021-06-04 中国海洋大学 一种基于语法分析树的程序代码平行语料挖掘方法及系统
CN112905232B (zh) * 2021-02-05 2023-11-28 中国海洋大学 一种基于语法分析树的程序代码平行语料挖掘方法及系统

Also Published As

Publication number Publication date
US20150142443A1 (en) 2015-05-21
US9620112B2 (en) 2017-04-11
US20170169006A1 (en) 2017-06-15
KR20140056753A (ko) 2014-05-12
US9971757B2 (en) 2018-05-15
KR102013230B1 (ko) 2019-08-23

Similar Documents

Publication Publication Date Title
WO2014069779A1 (ko) 구문 전처리 기반의 구문 분석 장치 및 그 방법
Candito et al. Benchmarking of statistical dependency parsers for french
US7072826B1 (en) Language conversion rule preparing device, language conversion device and program recording medium
WO2014025135A1 (ko) 문법 오류 검출 방법, 이를 위한 오류검출장치 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록매체
US6910004B2 (en) Method and computer system for part-of-speech tagging of incomplete sentences
WO2011065617A1 (ko) 과학기술핵심개체 간 의미적 연관관계 자동 추출을 위한 시맨틱 구문 트리 커널 기반 처리 시스템 및 방법
WO2013081301A1 (ko) 작문 자동 평가를 위해 샬로우 파서를 이용한 문장 자동 평가 장치, 이를 위한 오류 검출 장치 및 이를 위한 방법
WO2016010245A1 (en) Method and system for robust tagging of named entities in the presence of source or translation errors
WO2012026667A2 (ko) 토큰 분리 및 번역 과정을 통합한 통합 디코딩 장치 및 그 방법
CN112699665B (zh) 一种安全报告文本的三元组抽取方法、装置及电子设备
Megyesi Data-driven syntactic analysis
WO2014030834A1 (ko) 문법의 오류 검출 방법, 이를 위한 오류검출장치 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록매체
CN110096599B (zh) 知识图谱的生成方法及装置
WO2016208941A1 (ko) 텍스트 전처리 방법 및 이를 수행하는 전처리 시스템
KR20090061158A (ko) 번역 시스템에서 오류 보정 패턴을 이용한 번역 오류 수정방법 및 장치
CN110826301B (zh) 标点符号添加方法、系统、移动终端及存储介质
WO2012060534A1 (ko) 병렬 말뭉치를 이용한 동사구 번역 패턴 구축 장치 및 그 방법
KR100474823B1 (ko) 자연어의품사태깅장치및그방법
KR20010075848A (ko) 정규표현과 확률적 문맥정보를 이용한 문장범위 인식 장치및 그 방법
CN115034209A (zh) 文本分析方法、装置、电子设备以及存储介质
Foufi et al. Multilingual parsing and MWE detection
JP2632806B2 (ja) 言語解析装置
US10325025B2 (en) Contextual analogy representation
KR100420474B1 (ko) 부분문틀을 이용한 장문 번역 장치 및 그 방법
WO2022108282A1 (ko) 시간적 관계정보의 컨텍스트 이해를 위한 오픈 도메인 정보 활용 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13851315

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14399765

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13851315

Country of ref document: EP

Kind code of ref document: A1