WO2012077979A2 - Method for extracting semantic distance from mathematical sentences and classifying mathematical sentences by semantic distance, device therefor, and computer readable recording medium - Google Patents
Method for extracting semantic distance from mathematical sentences and classifying mathematical sentences by semantic distance, device therefor, and computer readable recording medium Download PDFInfo
- Publication number
- WO2012077979A2 WO2012077979A2 PCT/KR2011/009439 KR2011009439W WO2012077979A2 WO 2012077979 A2 WO2012077979 A2 WO 2012077979A2 KR 2011009439 W KR2011009439 W KR 2011009439W WO 2012077979 A2 WO2012077979 A2 WO 2012077979A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- semantic
- mathematical
- information
- semantic distance
- token
- Prior art date
Links
Images
Classifications
-
- 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/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/111—Mathematical or scientific formatting; Subscripts; Superscripts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Definitions
- Embodiments of the present invention relate to a method for classifying a mathematical sentence by semantic distance extraction and semantic distance of a mathematical sentence, an apparatus therefor, and a computer-readable recording medium. More specifically, the semantics of a mathematical sentence including a natural language and a mathematical expression to extract a semantic distance included in a mathematical sentence composed of a natural language and a standardized equation and to give a similarity to the stored mathematical content when searching the inputted mathematical sentence.
- the present invention relates to a method for classifying a mathematical sentence based on distance extraction and semantic distance, an apparatus therefor, and a computer-readable recording medium.
- Natural language input can be used in almost any software application for interacting with a person.
- the general natural language processing process is to separate natural language into tokens, map them to one or more motion information provided by the software application, and set each software application to have a unique set of motion information.
- software developers write code that interprets natural language input and map the input to the appropriate behavioral information for each application.
- an embodiment of the present invention has a main object to automatically extract semantic semantic information included in a mathematical sentence composed of a natural language and a standardized equation.
- a user query input unit for receiving a query from the user;
- a query parser for extracting a keyword included in an input user query;
- An index information unit for indexing natural tokens and mathematical tokens including semantic information;
- a semantic distance extraction unit for measuring a semantic distance between the extracted keyword and the indexed semantic information to obtain a similarity, and an apparatus for classifying mathematical sentences based on semantic distance and semantic distance.
- An apparatus for classifying a mathematical sentence based on the semantic distance extraction and the semantic distance of the mathematical sentence may include an information input unit configured to receive a complex sentence including a natural language and a mathematical expression; And a semantic parsing unit that separates the natural language and the formula from the compound sentence, and analyzes the separated natural language and the respective configuration information constituting the formula to generate semantic information to generate a natural language token and a mathematical token. It may further comprise.
- the semantic parser may generate semantic information after converting the compound sentence into a logical combination of simple sentences.
- the semantic parser generates a natural language token that tokenizes the natural language, generates stop word filtering data that filters the stop word based on the natural language token, and performs deduplication to remove the duplicate word from the stop word filtering data.
- Filtering data may be generated and matched with operation information to which a predefined meaning is added to the deduplication filtering data to extract the semantic information.
- the semantic parsing unit converts the equation into a tree form, performs a traversal process on the equation transformed into the tree form, generates a mathematical token that performs tokenization on the equation on which the traversal process is performed, and converts the equation into the semantic information. Can be extracted.
- the semantic information may refer to a rule combining a combination of a natural language and a formula and motion information corresponding to the combination, and include motion information of the compound sentence extracted by comparing the natural token and the mathematical token with the rule. have.
- the operation information may include a structural meaning of the natural token, a direction of the natural token and a point at which the influence of the natural token is affected.
- the directionality may indicate whether the operation information is associated with an equation before the natural token, or with an equation after the natural token, or independent of the equation.
- the semantic information may include a mathematical object generated by matching a mathematical expression target of the natural token among the mathematical token.
- the query parsing unit separates a natural language and a formula from the user query, analyzes each piece of configuration information constituting the separated natural language and a formula, and generates semantic information to extract a keyword including a natural language token and a mathematical token. can do.
- the semantic distance may be generated as a value proportional to the number of semantic elements common to the semantic elements of the extracted keyword and the semantic elements of the indexed semantic information.
- the semantic element may be weighted for each semantic element.
- the semantic distance is inversely proportional to the sum of weights of semantic elements equally present in the extracted keyword and the indexed semantic information, and is proportional to the sum of weights of all semantic elements included in the extracted keyword and the indexed semantic information. can do.
- the user query input step of receiving a query from the user A query parsing step of extracting a key word included in an input user query; And a semantic distance extraction step of obtaining similarity by measuring a semantic distance between the extracted keyword and the indexed semantic information with reference to the indexed information of the natural token and the mathematical token including the semantic information. It provides a semantic distance extraction and classification method of the mathematical sentence by the semantic distance.
- an embodiment of the present invention is to read by a computer recording a program for executing each step of the method of extracting the semantic distance of the mathematical sentence and the classification method of the mathematical sentence by the semantic distance.
- a record medium that can be.
- the semantic distance included in a natural sentence and a standardized mathematical expression is extracted, and the similarity with the stored mathematical content when the inputted mathematical sentence is searched. There is an effect of obtaining.
- semantic information can be efficiently extracted.
- the motion information of the mathematical sentence can be extracted by matching the representative keyword when the motion expression of various sentences is input.
- FIG. 1 is a block diagram schematically illustrating an apparatus for classifying a mathematical sentence according to an embodiment of the present invention.
- FIG. 2 is an exemplary view showing a tree form representation of a compound sentence according to an embodiment of the present invention.
- FIG. 4 is a diagram illustrating a primitive sentence structure of a mathematical sentence expression method.
- FIG. 5 is a diagram illustrating an example in which a mathematical sentence is expressed with an action information and a semantic description.
- FIG. 6 is a diagram illustrating an example of comparing two expressions expressed by action information and semantic description.
- FIG. 7 is a flowchart illustrating a classification method of mathematics sentences according to an embodiment of the present invention.
- FIG. 8 illustrates a Boolean value set for each semantic element for an indexed mathematical sentence.
- FIG. 1 is a block diagram schematically illustrating an apparatus for classifying a mathematical sentence according to an embodiment of the present invention.
- Classification apparatus 100 of the mathematical sentence according to an embodiment of the present invention is the information input unit 110, semantic parsing unit 120, index information unit 130, user query input unit 140, query parsing unit 150, The semantic distance extractor 160 and the result providing unit 170 may be configured.
- the information input unit 110 receives combination data (composite sentences) composed of a combination of natural language and mathematical formula.
- combination data consisting of a combination of natural language and formula may be directly input by a user's manipulation or command, but is not necessarily limited thereto, and may receive document data consisting of a combination of natural language and formula from a separate external server. will be.
- FIG. 2 is an exemplary view showing a tree form representation of a compound sentence according to an embodiment of the present invention.
- each natural language has a special meaning in accordance with the order of connection of the sentences. That is, many of the mathematical content may be a structure that weave formulas based on natural language. For example, a formula following a natural language may be connected as a specific condition, or a formula following may be defined.
- the semantic meaning can be extracted by integrating the natural language as well as the meaning and connection relationship of the natural language of each node.
- the natural language tokens can be grasped by tying the whole natural language together to grasp the meaning.
- the directionality refers to indicating whether or not the natural token in the mathematical content is associated with, or independent of, the equation in front of the natural token.
- the semantic parser 120 separates the natural language and the formula from the combination data, analyzes the respective pieces of configuration information constituting the separated natural language and the formula, and generates semantic information to generate the natural token and the mathematical token. That is, the semantic parsing unit 120 separates natural words and mathematical expressions from the combined data, and analyzes each piece of configuration information constituting the separated natural words and mathematical expressions to generate semantic information.
- the semantic information may include motion information and a mathematical object. Referring to the operation of the semantic parser 120 in detail, the semantic parser 120 separates natural words and expressions from the combined data.
- the semantic parsing unit 120 separates and recognizes natural words and mathematical expressions included in the combination data when the combination data consisting of a combination of natural words and mathematical expressions is input through the information input unit 110.
- the semantic parsing unit 120 analyzes each piece of configuration information constituting the separated natural language to generate a natural language token that tokenizes the natural language, and stops filtering the stop word based on the natural language token.
- Word filtering data is generated, deduplication filtering is performed on the stop word filtering data to generate deduplication filtering data, and operation information with a predetermined meaning assigned to the deduplication filtering data is matched.
- the token refers to a unit that can be distinguished from consecutive sentences
- tokenization refers to a process of dividing a natural language into units of words, which can be understood by the classification apparatus 100 of a mathematical sentence.
- tokenization is largely divided into natural language tokenization and mathematical tokenization.
- Natural language tokenization refers to a process of recognizing each word corresponding to a result of separating natural language included in a combination data (math problem or compound sentence) based on a space as a natural language token.
- the formula tokenization refers to a process of recognizing individual unit information obtained after parsing a formula included in the combination data as a formula token.
- the information corresponding to the natural language token is 'Find', 'the', 'function', 'value', 'with', and the formula token is returned after parsing the information through parsing.
- the stop word means a set of words that are predefined in order to remove a portion corresponding to a token that is not necessary in the analysis of a sentence or a formula. That is, among the words of [Example 1], a word such as 'the' (in addition to a or to, etc.) is a stop word and is predefined in a dictionary form in the system.
- the dictionary means a list including a set of words. That is, the semantic parsing unit 120 performs a process of removing a stop word that is not necessary for analysis after generating a natural language token, and stop word filtering is performed when a math problem becomes long (eg, in case of a descriptive problem).
- the semantic parsing unit 120 performs deduplication filtering to select and remove duplicate data from the stop word filtering data to remove duplicate elements from natural language tokens, and predefine data corresponding to predicates in the generated deduplication data.
- the motion information may be matched with motion information to which a given meaning is given, where motion information refers to summary information that may be extracted based on a natural language token or a mathematical token.
- motion information refers to summary information that may be extracted based on a natural language token or a mathematical token.
- the motion information 'Solve' may be extracted based on the natural language token or the mathematical token.
- the reason for matching and storing the data corresponding to the predicate in the deduplication filtering data is to obtain information on the representative operation of the entire sentence in the process of defining the combination data (math problem) as the schema. It is intended to be used as a helpful tool when analyzing search or similarity between problems later.
- the semantic parser 120 may convert a formula into a tree, perform a traverse process on the formula converted into a tree, and perform tokenization on the formula on which the traversing process is performed.
- the semantic parser 120 may convert an equation written in Math ML (Mathematical Markup Language) into an XML tree and then convert it into a DOM (Document Object Model).
- the semantic parsing unit 120 may perform traversal in a depth-first search manner in which configuration information constituting an equation is gradually transmitted from a lowermost node to an upper node. On the other hand, the traversal process and depth-first search are explained in detail.
- the formula is in the form of Math ML, which is composed of a tree, and the nodes of the tree are searched to extract information from the tree.
- the exit process is called a traversal process, and when performing the traversal process, a depth-first search can be used. Since the depth-first search traversal process starts at the root of the tree, enters the child node, and then moves to the parent node after all child nodes have been searched, all information held by the child node is passed to the parent node. It is efficient because only the number of edges, which are connecting lines between nodes, needs to be searched.
- depth-first search is illustrated here, the present invention is not limited thereto.
- the semantic parser 120 may generate the semantic information after converting the mathematical content into a logical combination of simple sentences.
- the semantic parsing unit 120 may express the mathematical content mixed with a mathematical expression and a natural language as a combination of simple sentences, and give meaning through semantic parsing of a portion indicated by C-MathML.
- ⁇ SentenceRel> which means the relationship between sentences can be used as an XML tag for describing logical connection between simple sentences. You can use it the same way you use MathApp's ⁇ apply>.
- keywords corresponding to motion information extracted as semantic information may be specified.
- motion information called solve based on natural language tokens and mathematical tokens from the mathematical content of Example 1 above
- it may have information on a representative motion meaning of the entire problem.
- These keywords are uniquely chosen so that their meanings do not overlap.
- the extracted motion information may include a point where the structural meaning of the natural token, the direction of the natural token and the influence of the natural token.
- the directionality may indicate whether the motion information is associated with the equations before the natural token, the equations after the natural token, or independent.
- FIG. 4 is a diagram illustrating a primitive sentence structure of a mathematical sentence expression method.
- the sentence expression format listed in FIG. 4 is representative, and a more complicated form may be added through analysis of a mathematical problem.
- the semantic information of the math problem may include motion information and a math object.
- Action information represents the purpose that the mathematical sentence should solve basically. For example, it is information extracted from a problem based on information that allows an actual solver to take action as to whether a corresponding sentence solves a problem or explains a concept. This information is returned by defined rules pre-processed through natural language and mathematical tokens.
- the semantic parsing unit 120 may include a mathematical object generated by matching a mathematical expression token as a semantic information among mathematical equation tokens.
- the semantic parsing unit 120 extracts and automatically expresses the actual meaning of a mathematical expression composed of a compound sentence including a natural language and an expression.
- Math objects are used to represent each subdivided entity included in a math problem. In other words, it can indicate what techniques or facts are needed to solve this math problem, and what types of functions are included in the math problem. The concept of this object can help with extensibility to support a variety of math problems.
- This information can be a mathematical object information obtained from the natural language and the information obtained from the equation.
- Mathematical objects can extract information corresponding to knowledge such as technique, definition, and theorem, and this information has extensibility and necessary information through problem analysis If you have more, you can create and add categories of the desired type.
- the operation information and the math object of the acquired math problem can be stored in various forms according to the storage device, which can be expressed in parallel, serial, nested form, and the like.
- the index information unit 130 stores information obtained by indexing the semantic information extracted by the semantic parser 120. For example, the index information unit 130 indexes the semantic information received through the semantic parser 120 and stores the performed information.
- the index information unit 130 may generate semantic index information obtained by indexing semantic information, and generate query index information matching keyword information to semantic index information.
- the user query input unit 140 receives a query from the user and transfers the input user query to the query parser 150.
- the user query is a kind of search query and includes a keyword inputted by the user to search.
- the user query input unit 140 may perform a similar operation to that of the information input unit 110, and may receive a combination data (complex sentence) composed of a combination of natural language and expression.
- Combination data consisting of a combination of natural language and formula may be directly input by a user's manipulation or command, but is not necessarily limited thereto, and may receive document data consisting of a combination of natural language and formula from a separate external server.
- the query parsing unit 150 extracts a keyword included in the input user query.
- the extracted keyword may include semantic information, and the query parsing unit 150 may semantic parse the input user query to extract a keyword including semantic information.
- the query parser 150 may be similar to the operation of the semantic parser 120. That is, the query parsing unit 150 separates the natural language and the formula from the compound sentence input through the user query input unit 140, and analyzes each piece of configuration information constituting the separated natural language and the formula to generate semantic information.
- a keyword that generates a natural token and a mathematical token can be generated.
- the sentence input through the user query input unit 140 may include only natural language or only equation. That is, if only the natural language is included in the input sentence, the generated keyword may include only the natural language token, and if the input sentence includes only the mathematical expression, only the mathematical token may exist in the generated keyword.
- the semantic distance extractor 150 may determine the similarity between the semantic information included in the keyword extracted by the query parser 150 and the semantic information of the indexed information generated by the semantic parser 120 and stored in the index information unit 140. Similarity is obtained by measuring the semantic distance that represents.
- the above mathematical sentence can be expressed as shown in FIG. 5 if it is expressed as an action information and a semantic description.
- Table 3 Table 4, Table 5, and Table 6 show examples of XML description of one equation.
- the mathematical content expressed by the natural language and the standardized formula is converted into a form that the classification apparatus 100 of the mathematical sentence can understand, and based on the meaning of the natural language and the mathematical formula.
- the semantic distance extractor 160 obtains the similarity by measuring the semantic distance between the extracted keyword and the semantic information.
- the semantic distance means a distance of a semantic description given in the process of converting a compound sentence composed of an expression and a natural language.
- the semantic distance extractor 160 may be determined as a value proportional to the number of semantic elements common to the semantic elements of the extracted semantic information and index information stored in the index information unit 140. Can be.
- the semantic distance is determined as a value proportional to the number of semantic elements.
- the semantic distance is proportional to a value multiplied by the values of the semantic elements in order to obtain the number of common semantic elements.
- Various forms of equations may be applied, such as to generate.
- the semantic distance may be implemented such that the more semantic elements are compared to the overall semantic elements of the two equation problems, the shorter the semantic distance is.
- the more semantic elements of the two equation problems, the shorter the semantic distance, and the less semantic elements the longer the semantic distance can be implemented.
- the semantic distance extractor 160 uses cosine similarity as shown in Equation 1 as an example for defining a semantic distance based on the correlation between semantic information of a keyword inputted by a user's query and semantic information indexed and stored. Can be.
- Each semantic information of the first mathematical sentence and the second mathematical sentence for which the semantic distance is to be measured may be expressed as a Boolean vector.
- p i is Boolean and indicates whether semantic i is present in the first mathematical sentence p
- q i is Boolean and whether or not semantic i is present in the second mathematical sentence q.
- it is polynomial, function, argument, factor, problem solving, evaluating, number of variables, and degree.
- all the mathematical sentences may be represented by a Boolean vector representing semantic elements as shown in FIG. 8.
- Equation 1 can be applied to all indexed problems to obtain the semantic distance from the Boolean vector of the user query.
- Equation 1 if cos (q, p) has a value of “0”, it means that there is no corresponding semantic information or it is not related to the problem. On the other hand, if cos (q, p) has a value of “1”, it indicates that there is semantic information corresponding to a mathematical problem, and cos (q, p), which represents a semantic distance, has a value from 0 to 1. The closer to 1, the higher the semantic similarity between the two sentences. If cos (q, p) is 1, the semantic information of two sentences p, q is exactly the same. If cos (q, p) is 0, there is no semantic similarity between the two sentences p, q. It can be said.
- the semantic distance extractor 160 In obtaining the semantic distance, the semantic distance extractor 160 generates a value proportional to the number of semantic elements common to the semantic elements of the extracted semantic information and index information stored in the index information unit 140. In this case, a weight may be set for each semantic element.
- the semantic distance extractor 160 is a weighted cosine similarity as shown in Equation 2 as another example for defining a semantic distance based on the correlation between semantic information of a keyword inputted by a user's query and semantic information indexed and stored. Can also be used.
- the semantic distance may be calculated by giving a weight w i to each semantic element.
- the more semantic elements set by weight are matched, the closer the semantic distance between two mathematical sentences can be.
- Equation 1 in Equation 2 if cos w (q, p) has a value of "0", it means that there is no corresponding semantic information or it is not related to the problem in the column. On the other hand, if cos w (q, p) has a value of "1", it indicates that there is semantic information corresponding to the row, and if the weight is w i according to the upper or lower relation or importance between the semantic information, Using the matrix, we can find the cosine angle between the mathematical sentence vector p and the query vector q.
- cos w (q, p) representing a semantic distance has a value from 0 to 1, and the closer to 1, the higher the semantic similarity between two sentences. If cos w (q, p) is 1, the semantic information of the two sentences p, q is exactly the same, and if cos w (q, p) is 0, the semantic similarity between the two sentences p, q is not at all. It can be said that there is no.
- the semantic distance between the two equations is inversely proportional to the sum of the weights of the same semantic elements between the two equations and is proportional to the sum of the weights of all the semantic elements included in the two equations.
- W ⁇ w 1 , w 2 , ..., w N ⁇ .
- Equation 3 the semantic distance between the two equations is inversely proportional to the sum E of the weights of the same semantic elements between the two equations, and the sum of the weights of all the semantic elements included in the two equations, Sum (w m )).
- the weight value w m may be the same for all semantic elements (eg, 1), or may have different values for each semantic element according to importance between semantic elements.
- problem B motion (solve), order (quadratic equations), number of terms (paragraph 2)
- the result provider 170 may provide a ranking result page of the query index information scored based on the similarity calculated by the measurement of the semantic distance.
- the ranking result page may be provided to the server or the terminal requesting the ranking result page, but is not necessarily limited thereto.
- the display unit is provided. You will be able to display the ranking results page.
- the user query input through the user query input unit 140 is parsed by the query parser unit 150 and transmitted to the semantic distance extractor 160, and the result provider unit 170 indexes the stored mathematical content.
- the scoring is performed by comparing the correlation based on the semantic distance based on the index of the query and the user query, and the ranking is output on the user result page.
- FIG. 7 is a flowchart illustrating a classification method of mathematics sentences according to an embodiment of the present invention.
- a method of classifying a mathematical sentence may include separating an natural language and a formula from an information input step S710 for receiving a compound sentence including a natural language and a mathematical formula, and a compound sentence.
- the beam of ranking comprises a (Ranking) Results
- the results provide further comprising: providing a page (S770).
- the information input step (S710) is the operation of the information input unit 110, the semantic parsing step (S720) to the operation of the semantic parsing unit 120, the index information step (S730) to the operation of the index information unit 130.
- the user query input unit 140 operates, the query parsing operation S750, the query parser 150 operates, and the semantic distance extracting operation S760, the semantic distance extracting unit 160.
- the result providing step (S770) corresponds to the operation of the result providing step unit 170, so detailed description thereof will be omitted.
- a computer-readable recording medium having recorded thereon a program for implementing a method of classifying a mathematical sentence according to an embodiment of the present invention includes all kinds of recording devices storing data that can be read by a computer system. Examples of such computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, and are implemented in the form of a carrier wave (for example, transmission over the Internet). It includes being.
- the computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
- functional programs, codes, and code segments for implementing an embodiment of the present invention may be easily deduced by programmers in the art to which an embodiment of the present invention belongs.
- a semantic distance included in a natural sentence and a standardized mathematical expression is extracted to give a similarity to the stored mathematical content when searching for an inputted mathematical sentence, thereby providing a user search environment. It is effective in providing a high level of industrial applicability.
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)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Algebra (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
An embodiment of the present invention relates to a method for extracting a semantic distance from mathematical sentences and classifying the mathematical sentences by the semantic distance, a device therefor, and a computer readable recording medium. The embodiment of the present invention provides a method for extracting a semantic distance from mathematical sentences and classifying the mathematical sentences by the semantic distance, a device therefor, and a computer readable recording medium, wherein the method comprises: a user query input step for receiving a query from a user; a query parsing step for extracting a keyword that is included in the inputted user query; and a semantic distance extracting step for obtaining similarity by measuring a semantic distance between said extracted keyword and semantic information, in reference to information in which a natural language token that contains the semantic information and a mathematical formula token are indexed.
Description
본 발명의 실시예는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류방법과 그를 위한 장치 및 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다. 더욱 상세하게는, 자연어와 표준화된 수학식으로 구성된 수학문장에 포함된 시맨틱 거리를 추출하여 입력된 수학문장의 검색시 저장된 수학콘텐츠와의 유사성을 부여하고자 하는 자연어와 수학식이 포함된 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류방법과 그를 위한 장치 및 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.Embodiments of the present invention relate to a method for classifying a mathematical sentence by semantic distance extraction and semantic distance of a mathematical sentence, an apparatus therefor, and a computer-readable recording medium. More specifically, the semantics of a mathematical sentence including a natural language and a mathematical expression to extract a semantic distance included in a mathematical sentence composed of a natural language and a standardized equation and to give a similarity to the stored mathematical content when searching the inputted mathematical sentence. The present invention relates to a method for classifying a mathematical sentence based on distance extraction and semantic distance, an apparatus therefor, and a computer-readable recording medium.
이 부분에 기술된 내용은 단순히 본 발명의 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The contents described in this section merely provide background information on the embodiments of the present invention and do not constitute a prior art.
사람의 언어는 풍부하고 복잡하며, 복잡한 문법 및 문맥 의미를 갖는 엄청난 어휘를 포함하고 있으나 기계 또는 소프트웨어 애플리케이션은 일반적으로 특정 형식 또는 규칙에 따라 데이터를 입력할 것을 요구한다. 여기서, 자연어 입력은 사람과 상호작용하기 위한 거의 모든 소프트웨어 애플리케이션에서 이용될 수 있다. 일반적인 자연어 처리 과정은 자연어를 토큰(Token)으로 분리하고 소프트웨어 애플리케이션에 의해 제공되는 하나 이상의 동작정보에 매핑하며 각각의 소프트웨어 애플리케이션이 일련의 고유한 동작정보들을 가지도록 설정된다. 즉, 소프트웨어 개발자가 자연어 입력을 해석하는 코드를 작성하여 입력을 각각의 애플리케이션에 대한 적절한 동작정보에 매핑하는 방식이다.Human languages are rich, complex, and contain tremendous vocabulary with complex grammar and contextual meanings, but machine or software applications generally require data entry in accordance with certain formats or rules. Here, natural language input can be used in almost any software application for interacting with a person. The general natural language processing process is to separate natural language into tokens, map them to one or more motion information provided by the software application, and set each software application to have a unique set of motion information. In other words, software developers write code that interprets natural language input and map the input to the appropriate behavioral information for each application.
하지만, 이러한 자연어 처리 방식은 수식을 인식하지 못할 뿐 아니라, 수학문장을 검색하고자 하는 질의와 저장된 수학문장이 어느 정도 유사성이 있는지를 파악하여 검색결과를 제공하지 못하는 문제가 있다.However, such a natural language processing method not only recognizes a formula, but also has a problem in that it is unable to provide a search result by identifying how similar a query to search for a mathematical sentence is with a stored mathematical sentence.
이러한 문제점을 해결하기 위해 본 발명의 실시예는, 자연어와 표준화된 수학식으로 구성된 수학문장에 포함된 의미론적인 시맨틱 정보를 자동으로 추출하고자 하는 데 주된 목적이 있다.In order to solve this problem, an embodiment of the present invention has a main object to automatically extract semantic semantic information included in a mathematical sentence composed of a natural language and a standardized equation.
전술한 목적을 달성하기 위해 본 발명의 일 실시예는, 사용자로부터 퀴리를 수신하는 사용자쿼리 입력부; 입력된 사용자 쿼리(Query)에 포함된 키워드(Key Word)를 추출하는 쿼리파싱부(Query Parser); 시맨틱 정보가 포함된 자연어토큰 및 수학식토큰을 색인화하는 색인정보부; 및 상기 추출된 키워드와 색인화된 시맨틱 정보와의 시맨틱 거리를 측정하여 유사도를 획득하는 시맨틱거리 추출부를 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치를 제공한다.In order to achieve the above object, an embodiment of the present invention, a user query input unit for receiving a query from the user; A query parser for extracting a keyword included in an input user query; An index information unit for indexing natural tokens and mathematical tokens including semantic information; And a semantic distance extraction unit for measuring a semantic distance between the extracted keyword and the indexed semantic information to obtain a similarity, and an apparatus for classifying mathematical sentences based on semantic distance and semantic distance. .
상기 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치는, 자연어와 수식이 포함된 복합문장을 수신하는 정보입력부; 및 상기 복합문장에서 상기 자연어 및 상기 수식을 각각 분리하고, 분리된 상기 자연어와 상기 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 생성하는 시맨틱파싱부를 추가로 포함할 수 있다.An apparatus for classifying a mathematical sentence based on the semantic distance extraction and the semantic distance of the mathematical sentence may include an information input unit configured to receive a complex sentence including a natural language and a mathematical expression; And a semantic parsing unit that separates the natural language and the formula from the compound sentence, and analyzes the separated natural language and the respective configuration information constituting the formula to generate semantic information to generate a natural language token and a mathematical token. It may further comprise.
상기 시맨틱 파싱부는, 상기 복합문장을 단순문장의 논리적 조합으로 변환한 후 시맨틱 정보를 생성할 수 있다.The semantic parser may generate semantic information after converting the compound sentence into a logical combination of simple sentences.
상기 시맨틱 파싱부는, 상기 자연어를 토큰화한 자연어 토큰을 생성하고, 상기 자연어 토큰을 근거로 중지 단어를 필터링한 중지 단어 필터링 데이터를 생성하며, 상기 중지 단어 필터링 데이터에서 중복 제거 필터링을 수행하여 중복 제거 필터링 데이터를 생성하고, 상기 중복 제거 필터링 데이터에 기 정의된 의미가 부여된 동작 정보를 매칭하여 상기 시맨틱 정보로 추출할 수 있다.The semantic parser generates a natural language token that tokenizes the natural language, generates stop word filtering data that filters the stop word based on the natural language token, and performs deduplication to remove the duplicate word from the stop word filtering data. Filtering data may be generated and matched with operation information to which a predefined meaning is added to the deduplication filtering data to extract the semantic information.
상기 시맨틱 파싱부는, 상기 수식을 트리 형태로 변환하고, 상기 트리 형태로 변환된 수식에 횡단 과정을 수행하며, 상기 횡단 과정이 수행된 수식에 토큰화를 수행한 수식 토큰을 생성하여 상기 시맨틱 정보로 추출할 수 있다.The semantic parsing unit converts the equation into a tree form, performs a traversal process on the equation transformed into the tree form, generates a mathematical token that performs tokenization on the equation on which the traversal process is performed, and converts the equation into the semantic information. Can be extracted.
상기 시맨틱정보는, 자연어와 수식의 조합과 상기 조합에 대응되는 동작정보를 결합한 룰을 참조하고 상기 자연어토큰 및 상기 수학식토큰을 상기 룰과 비교하여 추출된 상기 복합문장의 동작정보를 포함할 수 있다.The semantic information may refer to a rule combining a combination of a natural language and a formula and motion information corresponding to the combination, and include motion information of the compound sentence extracted by comparing the natural token and the mathematical token with the rule. have.
상기 동작정보는, 상기 자연어토큰의 구조상의 의미, 상기 자연어토큰의 방향성 및 상기 자연어토큰의 영향이 미치는 지점을 포함할 수 있다.The operation information may include a structural meaning of the natural token, a direction of the natural token and a point at which the influence of the natural token is affected.
상기 방향성은, 상기 동작정보가 상기 자연어토큰의 앞의 수학식과 연관되는지, 상기 자연어토큰의 뒤의 수학식과 연관되는지 또는 독립적인지를 나타낼 수 있다.The directionality may indicate whether the operation information is associated with an equation before the natural token, or with an equation after the natural token, or independent of the equation.
상기 시맨틱정보는, 상기 자연어토큰의 대상이 되는 수식을 상기 수학식토큰 중에서 매칭시켜 생성된 수학 오브젝트를 포함할 수 있다.The semantic information may include a mathematical object generated by matching a mathematical expression target of the natural token among the mathematical token.
상기 쿼리파싱부는, 상기 사용자 쿼리에서 자연어 및 수식을 각각 분리하고, 분리된 자연어와 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 포함하는 키워드를 추출할 수 있다.The query parsing unit separates a natural language and a formula from the user query, analyzes each piece of configuration information constituting the separated natural language and a formula, and generates semantic information to extract a keyword including a natural language token and a mathematical token. can do.
상기 시맨틱 거리는, 상기 추출된 키워드의 시맨틱요소와 상기 색인화된 시맨틱 정보의 시맨틱요소에 대하여 공통적인 시맨틱요소의 갯수에 비례한 값으로 생성할 수 있다.The semantic distance may be generated as a value proportional to the number of semantic elements common to the semantic elements of the extracted keyword and the semantic elements of the indexed semantic information.
상기 시맨틱요소는, 각 시맨틱요소별로 가중치가 설정될 수 있다.The semantic element may be weighted for each semantic element.
상기 시맨틱 거리는, 상기 추출된 키워드와 상기 색인화된 시맨틱 정보에 동일하게 존재하는 시맨틱요소의 가중치의 합에 반비례하고 상기 추출된 키워드와 상기 색인화된 시맨틱 정보에 포함된 전체 시맨틱 요소의 가중치의 합에 비례할 수 있다.The semantic distance is inversely proportional to the sum of weights of semantic elements equally present in the extracted keyword and the indexed semantic information, and is proportional to the sum of weights of all semantic elements included in the extracted keyword and the indexed semantic information. can do.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 사용자로부터 퀴리를 수신하는 사용자쿼리 입력단계; 입력된 사용자 쿼리(Query)에 포함된 키워드(Key Word)를 추출하는 쿼리파싱단계; 및 시맨틱 정보가 포함된 자연어토큰 및 수학식토큰이 색인화된 정보를 참조하여 상기 추출된 키워드와 색인화된 시맨틱 정보와의 시맨틱 거리를 측정하여 유사도를 획득하는 시맨틱거리 추출단계를 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법을 제공한다.In addition, an embodiment of the present invention to achieve another object of the present invention, the user query input step of receiving a query from the user; A query parsing step of extracting a key word included in an input user query; And a semantic distance extraction step of obtaining similarity by measuring a semantic distance between the extracted keyword and the indexed semantic information with reference to the indexed information of the natural token and the mathematical token including the semantic information. It provides a semantic distance extraction and classification method of the mathematical sentence by the semantic distance.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 상기의 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법의 각 단계를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In addition, in order to achieve another object of the present invention, an embodiment of the present invention is to read by a computer recording a program for executing each step of the method of extracting the semantic distance of the mathematical sentence and the classification method of the mathematical sentence by the semantic distance. Provides a record medium that can be.
이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 자연어와 표준화된 수학식으로 구성된 수학문장(단일 또는 복합문장)에 포함된 시맨틱 거리를 추출하여 입력된 수학문장의 검색시 저장된 수학콘텐츠와의 유사성을 획득하는 효과가 있다.As described above, according to an embodiment of the present invention, the semantic distance included in a natural sentence and a standardized mathematical expression (single or compound sentence) is extracted, and the similarity with the stored mathematical content when the inputted mathematical sentence is searched. There is an effect of obtaining.
또한, 입력된 복합문장을 단순문장의 논리적 조합으로 변환한 후 시맨틱 정보를 생성함으로써 효율적으로 시맨틱정보를 추출할 수 있는 효과가 있다. 또한 수학문장에서 표현하고 동작정보를 기술하는 대표 키워드를 정함으로써 다양한 문장의 동작표현이 입력될 경우 대표키워드로 매칭되도록 함으로써 수학문장의 동작정보를 추출할 수 있다.In addition, by converting an input compound sentence into a logical combination of simple sentences and generating semantic information, semantic information can be efficiently extracted. In addition, by defining a representative keyword that is expressed in a mathematical sentence and describes motion information, the motion information of the mathematical sentence can be extracted by matching the representative keyword when the motion expression of various sentences is input.
그리고, 자연어 처리 방식으로 인식하지 못하는 수식을 인식함으로써, 수학문장을 검색하고자 하는 질의와 저장된 수학문장이 어느 정도 유사성이 있는지를 파악하여 검색결과를 제공함으로써 종래의 검색방법으로는 검색하지 못하는 수학콘텐츠의 검색환경을 제공하는 효과가 있다.In addition, by recognizing the equation that is not recognized by the natural language processing method, it is possible to identify the similarity between the query to search the mathematical sentence and the stored mathematical sentence and to provide the search result, so that the mathematical content cannot be searched by the conventional search method. This provides an effective search environment.
도 1은 본 발명의 일 실시예에 따른 수학문장의 분류 장치를 개략적으로 나타낸 블럭 구성도이다.1 is a block diagram schematically illustrating an apparatus for classifying a mathematical sentence according to an embodiment of the present invention.
도 2는 본 발명의 일 실시예에 따른 복합문장의 트리 형태 표현을 나타낸 예시도이다.2 is an exemplary view showing a tree form representation of a compound sentence according to an embodiment of the present invention.
도 3은 "(S1∩S2)=>(~S3∪S4)" 에 대한 XML 표현을 예시한 도면이다.3 is a diagram illustrating an XML representation of "(S 1 ∩S 2 ) => (~ S 3 3S 4 )".
도 4는 수학적 문장 표현 방식의 원시적인 형태의 문장 구조를 예시한 도면이다.4 is a diagram illustrating a primitive sentence structure of a mathematical sentence expression method.
도 5는 수학문장을 동작정보(Action)와 시맨틱 서술(Semantic Description)로 표현한 예를 예시한 도면이다.FIG. 5 is a diagram illustrating an example in which a mathematical sentence is expressed with an action information and a semantic description.
도 6은 두 식에 대하여 동작정보(Action)와 시맨틱 서술(Semantic Description)로 표현한 예를 비교하여 예시한 도면이다.FIG. 6 is a diagram illustrating an example of comparing two expressions expressed by action information and semantic description.
도 7은 본 발명의 일 실시예에 따른 수학문장의 분류 방법을 설명하기 위한 순서도이다.7 is a flowchart illustrating a classification method of mathematics sentences according to an embodiment of the present invention.
도 8은 색인화된 수학문장에 대하여 각 시맨틱요소별로 설정된 불 값을 예시한 도면이다.FIG. 8 illustrates a Boolean value set for each semantic element for an indexed mathematical sentence.
도 1은 본 발명의 일 실시예에 따른 수학문장의 분류 장치를 개략적으로 나타낸 블럭 구성도이다.1 is a block diagram schematically illustrating an apparatus for classifying a mathematical sentence according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 수학문장의 분류 장치(100)는 정보입력부(110), 시맨틱파싱부(120), 색인정보부(130), 사용자쿼리입력부(140), 쿼리파싱부(150), 시맨틱거리 추출부(160) 및 결과 제공부(170)를 포함하여 구성될 수 있다. Classification apparatus 100 of the mathematical sentence according to an embodiment of the present invention is the information input unit 110, semantic parsing unit 120, index information unit 130, user query input unit 140, query parsing unit 150, The semantic distance extractor 160 and the result providing unit 170 may be configured.
정보 입력부(110)는 자연어(Natural Language) 및 수식(Mathematical Formula)의 조합으로 이루어진 조합 데이터(복합문장)를 입력받는다. 여기서, 자연어 및 수식의 조합으로 이루어진 조합 데이터는 사용자의 조작 또는 명령에 의해 직접 입력될 수 있으나 반드시 이에 한정되는 것은 아니며, 별도의 외부 서버로부터 자연어 및 수식의 조합으로 이루어진 문서 데이터를 입력받을 수도 있을 것이다.The information input unit 110 receives combination data (composite sentences) composed of a combination of natural language and mathematical formula. Here, the combination data consisting of a combination of natural language and formula may be directly input by a user's manipulation or command, but is not necessarily limited thereto, and may receive document data consisting of a combination of natural language and formula from a separate external server. will be.
도 2는 본 발명의 일 실시예에 따른 복합문장의 트리 형태 표현을 나타낸 예시도이다.2 is an exemplary view showing a tree form representation of a compound sentence according to an embodiment of the present invention.
도 2에 도시된 바와 같이, 하나의 수학 컨텐츠가 가질 수 있는 구조를 트리로 표현하면, 해당 수학컨텐츠(루트(Root) 노드)를 구성하는 자식 노드들은 중요 의미 중 하나인 어순 정보를 그대로 유지한 채 자연어와 수식으로 분리된 형태를 갖게 된다. 또한, 각 자연어는 문장의 연결 순서에 따라 특별한 의미를 가진다. 즉, 많은 수학 컨텐츠는 자연어를 기준으로 수식을 엮는 구조일 수 있다. 예를 들어서, 하나의 자연어의 뒤에 따라오는 수식이 특정 조건으로서 연결되거나, 뒤에 오는 수식이 정의되었는지 등의 구조를 가질 수 있는 것이다. 각 노드의 자연어가 가지는 의미와 연결 관계뿐만 아니라, 자연어를 통합하여 시맨틱 의미를 추출할 수 있다. 즉, 수학 컨텐츠에서 요구하는 것이 해당 수식을 푸는 것인지, 설명하는 것인지 등의 동작정보를 구분하기 위해서는 전체 자연어를 한데 묶어서 의미를 파악함으로써 각 자연어토큰의 방향성을 파악할 수 있다. 여기서, 방향성이란 수학컨텐츠 내의 자연어토큰이 해당 자연어토큰의 앞의 수학식과 연관되는지, 아니면 뒤의 수학식과 연관되는지 또는 독립적인지를 나타내는 것 등을 의미한다.As shown in FIG. 2, when a structure that a single mathematical content can have is represented as a tree, child nodes constituting the corresponding mathematical content (root node) maintain word order information, which is one of important meanings. In other words, it is divided into natural language and expression. In addition, each natural language has a special meaning in accordance with the order of connection of the sentences. That is, many of the mathematical content may be a structure that weave formulas based on natural language. For example, a formula following a natural language may be connected as a specific condition, or a formula following may be defined. The semantic meaning can be extracted by integrating the natural language as well as the meaning and connection relationship of the natural language of each node. That is, in order to classify motion information such as solving or explaining the equation required by the mathematical content, the natural language tokens can be grasped by tying the whole natural language together to grasp the meaning. In this case, the directionality refers to indicating whether or not the natural token in the mathematical content is associated with, or independent of, the equation in front of the natural token.
시맨틱파싱부(120)는 조합 데이터에서 자연어 및 수식을 각각 분리하고, 분리된 자연어와 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 생성한다. 즉, 시맨틱파싱부(120)는 조합 데이터에서 자연어 및 수식을 각각 분리하고, 분리된 자연어와 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성한다. 여기서, 시맨틱 정보는 동작정보, 수학 오브젝트를 포함할 수 있다. 시맨틱파싱부(120)의 동작에 대해 구체적으로 설명하면, 시맨틱파싱부(120)는 조합 데이터에서 자연어 및 수식을 각각 분리한다. 즉, 시맨틱파싱부(120)는 정보 입력부(110)를 통해 자연어 및 수식의 조합으로 이루어진 조합 데이터가 입력되면, 조합 데이터에 포함된 자연어와 수식을 각각 분리하여 인식한다. 시맨틱파싱부(120)는 분리된 자연어를 구성하고 있는 각각의 구성 정보를 분석하여 자연어를 토큰화(Tokenization)한 자연어 토큰을 생성하고, 자연어 토큰을 근거로 중지 단어(Stop Word)를 필터링한 중지 단어 필터링 데이터를 생성하며, 중지 단어 필터링 데이터에서 중복 제거 필터링을 수행하여 중복 제거 필터링 데이터를 생성하고, 중복 제거 필터링 데이터에 기 정의된 의미가 부여된 동작 정보를 매칭한다. 여기서, 토큰(Token)이란 연속된 문장에서 구별할 수 있는 단위를 말하며, 토큰화는 자연어를 수학문장의 분류 장치(100)가 이해할 수 있는 단위인 워드(Word) 단위로 쪼개는 과정을 말한다.The semantic parser 120 separates the natural language and the formula from the combination data, analyzes the respective pieces of configuration information constituting the separated natural language and the formula, and generates semantic information to generate the natural token and the mathematical token. That is, the semantic parsing unit 120 separates natural words and mathematical expressions from the combined data, and analyzes each piece of configuration information constituting the separated natural words and mathematical expressions to generate semantic information. Here, the semantic information may include motion information and a mathematical object. Referring to the operation of the semantic parser 120 in detail, the semantic parser 120 separates natural words and expressions from the combined data. That is, the semantic parsing unit 120 separates and recognizes natural words and mathematical expressions included in the combination data when the combination data consisting of a combination of natural words and mathematical expressions is input through the information input unit 110. The semantic parsing unit 120 analyzes each piece of configuration information constituting the separated natural language to generate a natural language token that tokenizes the natural language, and stops filtering the stop word based on the natural language token. Word filtering data is generated, deduplication filtering is performed on the stop word filtering data to generate deduplication filtering data, and operation information with a predetermined meaning assigned to the deduplication filtering data is matched. Here, the token refers to a unit that can be distinguished from consecutive sentences, and tokenization refers to a process of dividing a natural language into units of words, which can be understood by the classification apparatus 100 of a mathematical sentence.
토큰화에 대해 좀더 구체적으로 설명하면, 본 발명의 일 실시예에서 토큰화는 크게 자연어 토큰화와 수식 토큰화로 구분된다. 자연어 토큰화란 조합 데이터(수학 문제 또는 복합문장)에 포함된 자연어를 공백(Space)을 기준으로 분리한 결과물에 해당하는 각각의 단어를 자연어 토큰으로 인식하는 과정을 말한다. 한편, 수식 토큰화란 조합 데이터에 포함되는 수식을 파싱(Parsing)한 후 얻게 되는 개별 단위 정보를 수식 토큰으로 인식하는 과정을 말한다.Referring to tokenization in more detail, in one embodiment of the present invention, tokenization is largely divided into natural language tokenization and mathematical tokenization. Natural language tokenization refers to a process of recognizing each word corresponding to a result of separating natural language included in a combination data (math problem or compound sentence) based on a space as a natural language token. Meanwhile, the formula tokenization refers to a process of recognizing individual unit information obtained after parsing a formula included in the combination data as a formula token.
[예 1] Find the function value 9y3 + 8y2 - 4y - 9 with y=-1[Example 1] Find the function value 9y 3 + 8y 2 - 4y - 9 with y = -1
예를 들어서, [예 1]에서 자연어 토큰에 해당하는 정보는 'Find', 'the', 'function', 'value', 'with' 가 되며, 수식 토큰은 파싱을 통해서 정보를 추출한 후에 반환되는 값인 다항식(Polynomial), 최고 차수(Maxdegree=3), 항의 수(Numofterm=4), 컨디션(Condition, y=-1) 등이 될 수 있다.For example, in [Example 1], the information corresponding to the natural language token is 'Find', 'the', 'function', 'value', 'with', and the formula token is returned after parsing the information through parsing. Values can be polynomials (Polynomial), highest order (Maxdegree = 3), number of terms (Numofterm = 4), condition (y = -1), and so on.
또한, 중지단어 필터링에 대하여 상세히 설명하면, 중지 단어란 문장이나 수식의 분석에 있어서 필요 없는 토큰에 해당하는 부분을 제거하기 위해서 미리 정의해 놓은 단어들의 집합을 의미한다. 즉, [예 1]의 단어들 중에서 'the'와 같은 단어(이외에도 a나 to 등)는 중지단어로서 시스템에서 사전(Dictionary) 형태로 미리 정의되어 있다. 여기서, 사전은 단어의 집합을 포함하는 리스트를 의미한다. 즉, 시맨틱파싱부(120)는 자연어 토큰을 생성한 후 분석에 필요 없는 부분인 중지단어를 제거하는 과정을 수행하게 되는데, 중지 단어 필터링은 수학 문제가 길어질 경우(예컨대, 서술형 문제의 경우 등)에 분석 과정에 너무 많은 토큰이 들어가는 것을 방지해 주며, 더불어 시스템의 처리 속도를 향상시키기 위해 동작한다. 그리고, 중복제거 필터링을 설명하면, 예를 들어, "이 방정식에서 하나의 해는 3인데, 방정식이 가지고 있는 다른 해를 구하시오." 라는 수학문제가 있는 경우 자연어를 토큰화하고 나면 "방정식"과 "해"라는 토큰이 각각 두 개씩 추출될 수 있는데, 이 경우 중복되는 2개의 "방정식"이라는 토큰과 2개의 "해"라는 토큰 중에서 각각 하나씩 제거하여 중복제거 필터링을 수행할 수 있다.In addition, when the stop word filtering is described in detail, the stop word means a set of words that are predefined in order to remove a portion corresponding to a token that is not necessary in the analysis of a sentence or a formula. That is, among the words of [Example 1], a word such as 'the' (in addition to a or to, etc.) is a stop word and is predefined in a dictionary form in the system. Here, the dictionary means a list including a set of words. That is, the semantic parsing unit 120 performs a process of removing a stop word that is not necessary for analysis after generating a natural language token, and stop word filtering is performed when a math problem becomes long (eg, in case of a descriptive problem). This prevents too many tokens from entering the analysis process and works to speed up the system's processing. And, when describing deduplication filtering, for example, "One solution in this equation is three, find another solution that the equation has." If there is a mathematical problem called "natural equation", two tokens "Equation" and "Solution" can be extracted, and in this case, two "Equation" tokens and two "Solution" tokens are duplicated. Deduplication filtering can be performed by removing each one.
시맨틱파싱부(120)는 중지 단어 필터링 데이터에서 중복되는 데이터를 선별하여 제거하는 중복 제거 필터링을 수행하여 자연어 토큰들 중에서 중복된 요소를 제거하고 생성된 중복제거 데이터 내의 술어에 해당하는 데이터를 기 정의된 의미가 부여된 동작 정보와 매칭할 수 있는데, 여기서, 동작 정보는 자연어 토큰 또는 수식 토큰을 바탕으로 추출할 수 있는 요약 정보를 의미한다. 예를 들어서, [예 1]에서 자연어 토큰 또는 수식 토큰을 바탕으로 '풀다(Solve)'라는 동작 정보를 추출할 수 있다. 여기서, 중복 제거 필터링 데이터에서 술어에 해당하는 데이터를 동작 정보와 매칭 저장하는 이유는 조합 데이터(수학 문제)를 스키마(Schema)로 정의하는 과정에서 전체 문장이 의미하는 대표 동작에 대한 정보를 획득하여 이후에 검색 또는 문제간의 연관성(Similarity)을 분석할 때 도움이 되는 도구로 활용하기 위함이다.The semantic parsing unit 120 performs deduplication filtering to select and remove duplicate data from the stop word filtering data to remove duplicate elements from natural language tokens, and predefine data corresponding to predicates in the generated deduplication data. The motion information may be matched with motion information to which a given meaning is given, where motion information refers to summary information that may be extracted based on a natural language token or a mathematical token. For example, in [Example 1], the motion information 'Solve' may be extracted based on the natural language token or the mathematical token. Here, the reason for matching and storing the data corresponding to the predicate in the deduplication filtering data is to obtain information on the representative operation of the entire sentence in the process of defining the combination data (math problem) as the schema. It is intended to be used as a helpful tool when analyzing search or similarity between problems later.
또한, 시맨틱파싱부(120)는 수식을 트리 형태로 변환하고, 트리 형태로 변환된 수식에 횡단(Traverse) 과정을 수행하고, 횡단 과정이 수행된 수식에 토큰화를 수행할 수 있다. 시맨틱파싱부(120)는 Math ML(Mathematical Markup Language)로 작성된 수식을 XML 트리 형태로 변환한 후 DOM(Document Object Model) 형태로 변환할 수 있다. 시맨틱파싱부(120)는 수식을 구성하는 구성 정보를 최하단 노드에서 점차 상위 노드로 전달되도록 하는 깊이 우선 검색(Depth-First Search) 방식으로 횡단을 실행할 수 있다. 한편, 횡단 과정과 깊이 우선 검색에 대해 구체적으로 설명하면, 일반적으로 수식은 Math ML의 형태를 띄고 있으며, 이는 트리의 형태로 구성이 되며, 이러한 트리로부터 정보를 추출하기 위하여 이러한 트리의 노드를 검색해 나가는 과정을 횡단 과정이라 칭하며, 횡단 과정을 수행할 때, 깊이 우선 검색(Depth-First Search)을 사용할 수 있다. 깊이 우선 검색 횡단 과정은 트리의 루트(Root)에서 시작하여 자식 노드까지 들어간 후 모든 자식 노드의 검색이 끝나면 부모 노드로 이동하기 때문에, 자식 노드에서 가지고 있는 정보 모두를 부모 노드로 전달하며, 시간 복잡도 측면에서 노드 사이를 연결하는 연결선인 엣지(Edge)의 수만큼만 검색을 수행하면 되므로 효율적이다. 여기서 깊이 우선 검색을 예시하였으나 본 발명이 이에 한정되지는 않는다.In addition, the semantic parser 120 may convert a formula into a tree, perform a traverse process on the formula converted into a tree, and perform tokenization on the formula on which the traversing process is performed. The semantic parser 120 may convert an equation written in Math ML (Mathematical Markup Language) into an XML tree and then convert it into a DOM (Document Object Model). The semantic parsing unit 120 may perform traversal in a depth-first search manner in which configuration information constituting an equation is gradually transmitted from a lowermost node to an upper node. On the other hand, the traversal process and depth-first search are explained in detail. In general, the formula is in the form of Math ML, which is composed of a tree, and the nodes of the tree are searched to extract information from the tree. The exit process is called a traversal process, and when performing the traversal process, a depth-first search can be used. Since the depth-first search traversal process starts at the root of the tree, enters the child node, and then moves to the parent node after all child nodes have been searched, all information held by the child node is passed to the parent node. It is efficient because only the number of edges, which are connecting lines between nodes, needs to be searched. Although depth-first search is illustrated here, the present invention is not limited thereto.
또한, 시맨틱파싱부(120)는 수학콘텐츠를 단순문장의 논리적 조합으로 변환한 후 시맨틱 정보를 생성할 수 있다.In addition, the semantic parser 120 may generate the semantic information after converting the mathematical content into a logical combination of simple sentences.
시맨틱파싱부(120)는 수식과 자연어로 혼합되어 있는 수학콘텐츠를 단순문장(simple sentence)의 조합으로 표현하고, C-MathML로 표시된 부분의 시맨틱 파싱을 통해서 의미 부여를 할 수 있다.The semantic parsing unit 120 may express the mathematical content mixed with a mathematical expression and a natural language as a combination of simple sentences, and give meaning through semantic parsing of a portion indicated by C-MathML.
예를 들어, "방정식 x2+2x-3=0 에 대하여 x2>1을 만족하는 근을 구하라"와 같은 형태의 수학문장이 있다고 가정하자.For example, suppose you have a mathematical sentence of the form "find a root that satisfies x 2 > 1 for equation x 2 + 2x-3 = 0".
위의 수식을 복잡문장을 단순 문장으로 표현하면 다음과 같다.If the above expression is expressed as a simple sentence as the following sentence.
(예2)(Example 2)
"Solve ((x2+2x-3=0) ∩ (x2>1))`` Solve ((x 2 + 2x-3 = 0) ∩ (x 2 > 1))
Solve(이차방정식 ∩ x의 제곱근이 1보다 큼)"Solve (Square root of quadratic equation ∩ x is greater than 1) "
위의 예2에서 본 것처럼 모든 복잡 문장을 단순 문장의 논리적 연결사(∩(and), ∪(or), ∼(not), ⇒(if)) 등으로 연결된 것으로 분리할 수 있다. 상기의 예처럼 복잡 문장을 단순 문장의 논리적 연결사로 분리하는 것을 예로 들었으나 본 발명이 이에 한정되지 않으며, 다양한 방법으로 복잡 문장을 복수의 단순 문장으로 분리할 수 있다.As seen in Example 2 above, all complex sentences can be separated into concatenated logical concatenations (and), (or), (not), and (if). As described above, the complex sentence is divided into logical concatenated words of the simple sentence, but the present invention is not limited thereto. The complex sentence may be divided into a plurality of simple sentences in various ways.
예를 들어, 복합문장의 XML에 있어서, 단순문장간의 논리적 연결을 기술하기 위한 XML 태그로 문장간의 관계를 의미하는 <SentenceRel> 을 사용할 수 있다. 사용방법은 MathML의 <apply> 와 같은 방식으로 사용할 수 있다.For example, in the XML of compound sentence, <SentenceRel> which means the relationship between sentences can be used as an XML tag for describing logical connection between simple sentences. You can use it the same way you use MathApp's <apply>.
도 3은 "(S1∩S2)=>(~S3∪S4)" 에 대한 XML 표현을 예시한 도면이다.3 is a diagram illustrating an XML representation of "(S 1 ∩S 2 ) => (~ S 3 3S 4 )".
한편, 시맨틱정보로서 추출되는 동작정보에 해당하는 키워드가 지정될 수 있다. 예를 들어, 위의 예 1의 수학콘텐츠에서 자연어 토큰과 수학 토큰을 바탕으로 solve라는 동작 정보를 추출함으로써 수학문제를 스키마로 정의하는 과정에서 전체 문제가 의미하는 대표 동작에 대한 정보를 가질 수 있다. 예를 들어, 작성하는 사람에 따라서 "Solve (x2+2x-3=0)" 대신 "Find the root of (x2+2x-3=0)" 또는 "Answer (x2+2x-3=0)" 등과 같이 키워드로 Find, Answer 등과 같이 다양한 용어를 사용할 수도 있다. 이러한 키워드는 의미가 중복되지 않도록 유니크(Unique)하게 선택한다. 예를 들면, "Find the root of", "Find the solution", "Answer", "Calculate", "What is the value of" 등의 용어는 뒤의 수식과의 연관성으로부터 동작 정보를 Solve 로 통일해 사용한다. Solve 외에 Evaluate, Integrate, Differentiate, Factorize, Expand 등의 여러 동작정보가 있을 수 있다. Meanwhile, keywords corresponding to motion information extracted as semantic information may be specified. For example, by extracting motion information called solve based on natural language tokens and mathematical tokens from the mathematical content of Example 1 above, in the process of defining a mathematical problem as a schema, it may have information on a representative motion meaning of the entire problem. . For example, depending on the author, "Find the root of (x 2 + 2x-3 = 0)" or "Answer (x 2 + 2x-3 =" instead of "Solve (x 2 + 2x-3 = 0)" You can also use various terms such as Find and Answer as keywords. These keywords are uniquely chosen so that their meanings do not overlap. For example, terms such as "Find the root of", "Find the solution", "Answer", "Calculate", and "What is the value of" are used to unify behavioral information into Solve from its association with a later equation. use. In addition to Solve, there can be various operation information such as Evaluate, Integrate, Differentiate, Factorize, and Expand.
그러므로 동작정보에 해당하는 키워드를 추출함에 있어서 사용될 수 있는 다양한 입력용어를 지정하면 하나의 의미를 나타내는 다양한 입력에 따른 동작정보를 추출할 수 있다. Therefore, if various input terms that can be used in extracting a keyword corresponding to motion information are designated, motion information according to various inputs having a single meaning can be extracted.
또한, 추출되는 동작정보는 자연어토큰의 구조상의 의미, 자연어토큰의 방향성 및 자연어토큰의 영향이 미치는 지점을 포함할 수 있다. 여기서, 방향성은 동작정보가 자연어토큰의 앞의 수학식과 연관되는지, 자연어토큰의 뒤의 수학식과 연관되는지 또는 독립적인지를 나타낼 수 있다.In addition, the extracted motion information may include a point where the structural meaning of the natural token, the direction of the natural token and the influence of the natural token. Here, the directionality may indicate whether the motion information is associated with the equations before the natural token, the equations after the natural token, or independent.
한편, 시맨틱파싱부(120)는 수학식으로부터 시맨틱정보를 표현하는 방법으로는, 예를 들어, (x2+2x-3=0)의 경우, "Action(2차 방정식)" 또는 "Action(다항식(degree=2))" 등과 같이 표현할 수 있으나, 본 발명이 이에 한정되지는 않는다.Meanwhile, the semantic parser 120 may express semantic information from an equation, for example, in the case of (x 2 + 2x-3 = 0), "Action (secondary equation)" or "Action ( Polynomial (degree = 2)) "and the like, but the present invention is not limited thereto.
도 4는 수학적 문장 표현 방식의 원시적인 형태의 문장 구조를 예시한 도면이다. 도 4에 나열한 문장 표현 형식은 대표성을 띠고 있으며, 수학 문제 분석을 통해서 더욱 복잡한 형태가 추가될 수 있다. 4 is a diagram illustrating a primitive sentence structure of a mathematical sentence expression method. The sentence expression format listed in FIG. 4 is representative, and a more complicated form may be added through analysis of a mathematical problem.
수학 문제가 가지는 시맨틱 정보는 동작정보와 수학 오브젝트를 포함할 수 있다.The semantic information of the math problem may include motion information and a math object.
동작정보(Action)는 수학문장이 기본적으로 풀어야 하는 목적을 표현한다. 예를 들어, 해당 수학식 문장이 문제를 푸는 것인지, 개념을 설명하는 것인지 등에 관해서 실제 푸는 사람이 동작을 취할 수 있도록 하는 정보에 기반해서 문제에서 추출한 정보다. 이 정보는 자연어와 수학식의 토큰을 통해 선처리(pre-processing) 된 정의된 룰에 의해서 반환된다.Action information represents the purpose that the mathematical sentence should solve basically. For example, it is information extracted from a problem based on information that allows an actual solver to take action as to whether a corresponding sentence solves a problem or explains a concept. This information is returned by defined rules pre-processed through natural language and mathematical tokens.
시맨틱파싱부(120)는 시맨틱정보로 자연어토큰의 대상이 되는 수식을 수학식토큰 중에서 매칭시켜 생성된 수학 오브젝트를 포함할 수 있다.The semantic parsing unit 120 may include a mathematical object generated by matching a mathematical expression token as a semantic information among mathematical equation tokens.
시맨틱파싱부(120)는 자연어와 더불어 수식이 포함된 복합문장으로 구성된 수학식의 실제 의미를 추출하여 자동으로 표현하기 위하여The semantic parsing unit 120 extracts and automatically expresses the actual meaning of a mathematical expression composed of a compound sentence including a natural language and an expression.
1. 수학식과 자연어의 토큰 관계를 룰로 구성하는 단계1. Constructing rule relationship between mathematical expression and natural language
2. 자연어와 수학식을 표현한 문장을 읽어 들여 수학문장이 의미하는 동작정보를 찾는 단계2. Steps to find the motion information meaning of the sentence by reading the sentence expressing the natural language and mathematical expression
3. 수학 오브젝트를 구성하는 단계3. Steps to Construct a Math Object
를 수행할 수 있다.Can be performed.
수학 오브젝트(Math Object)는 수학 문제에 포함된 세분화된 각 엔티티(entity)를 표현하는 데 사용된다. 즉, 이 수학 문제를 풀기 위해서는 어떤 기법(technique)이나 사실(fact)이 필요한지를 나타낼 수 있고, 수학 문제 내부에 어떤 형태의 함수가 들어가는지 등을 나타낼 수도 있다. 이 오브젝트의 개념은 수학 문제의 다양성을 지원하기 위한 확장성에 도움이 될 수 있다. 이 정보는 자연어에서 얻은 정보와 수학식에서 얻은 정보가 각각 수학 오브젝트화 될 수 있다.Math objects are used to represent each subdivided entity included in a math problem. In other words, it can indicate what techniques or facts are needed to solve this math problem, and what types of functions are included in the math problem. The concept of this object can help with extensibility to support a variety of math problems. This information can be a mathematical object information obtained from the natural language and the information obtained from the equation.
수학 오브젝트로는 기법(technique), 정의(definition), 정리(theorem) 등의 지식(knowledge)에 해당하는 정보가 추출될 수 있으며, 이러한 정보는 확장성을 가지고 있으며, 문제 분석을 통해서 필요한 정보가 더 있는 경우, 원하는 형태의 범주(category)를 만들고 추가할 수 있다.Mathematical objects can extract information corresponding to knowledge such as technique, definition, and theorem, and this information has extensibility and necessary information through problem analysis If you have more, you can create and add categories of the desired type.
이런 수학 문제 시맨틱 정보를 바탕으로 활용할 수 있는 범위는 아주 광범위하다. 예를 들면, 어떤 사람이 이차 방정식을 푸는 문제를 연습하고 싶다고 하면, 현재의 수학 문제처럼 자연어를 비교하고 MathML 형태의 XML을 모두 파싱하고 원하는 정보가 있는지 확인하는 절차를 거치는 대신에, 미리 추출한 정보를 바탕으로 원하는 정보를 빠른 시간에 제공할 수 있는 것이다. 또한, 검색된 문제 간의 연관성(ranking)을 파악하는 과정에서도 사용될 수 있고, 이런 동작정보는 사용자로 하여금 최적의 검색 결과를 얻을 수 있도록 도와줄 수 있다.Based on this mathematics problem semantic information, the scope of application is very broad. For example, if someone wants to practice the problem of solving quadratic equations, instead of comparing natural language, parsing all of the XML in MathML form, and verifying that they have the information they want, instead of comparing their current mathematical problems, Based on this, you can quickly provide the information you want. In addition, it can be used in the process of determining the ranking (ranking) between the searched problems, this operation information can help the user to obtain the optimal search results.
획득한 수학 문제의 동작정보와 수학 오브젝트는 저장하는 장치에 따라서 다양한 형태로 저장이 가능하며, 이는 병렬, 직렬, 내포(nested) 형태 등으로 표현될 수 있다.The operation information and the math object of the acquired math problem can be stored in various forms according to the storage device, which can be expressed in parallel, serial, nested form, and the like.
단순 문장(Simple sentence)의 구성요소로 c-MathML로 표시된 수학 오브젝트(Mathematical object) 부분에 대한 시맨틱 서술(Semantic Description)은 표 1 및 표 2와 같이 구성될 수 있으며, c-MathML로 표시된 Mathemtical Object는 <MathObj> tag 로 구분하고, 여러 수학식 오브젝트와의 관계는 <MathRel> 태그로 [표 1], [표 2]와 같이 표현할 수 있다.The semantic description of the part of the Mathematical Object, which is represented as c-MathML as a component of the Simple sentence, can be composed as shown in Table 1 and Table 2, and the Mathemtical Object represented by c-MathML. Are separated by <MathObj> tag, and the relationship with various mathematical objects can be expressed as <MathRel> tag as shown in [Table 1] and [Table 2].
색인정보부(130)는 시맨틱파싱부(120)에서 추출한 시맨틱 정보를 색인화(Indexing)한 정보를 저장한다. 예를 들어서, 색인정보부(130)는 시맨틱파싱부(120)를 통해 수신된 시맨틱 정보에 번호를 부여하는 색인화를 수행하고, 수행된 정보를 저장하는 것이다. 색인정보부(130)는 시맨틱 정보를 색인화한 시맨틱 색인 정보를 생성하고, 시맨틱 색인 정보에 키워드 정보를 매칭한 쿼리 색인 정보를 생성할 수 있다.The index information unit 130 stores information obtained by indexing the semantic information extracted by the semantic parser 120. For example, the index information unit 130 indexes the semantic information received through the semantic parser 120 and stores the performed information. The index information unit 130 may generate semantic index information obtained by indexing semantic information, and generate query index information matching keyword information to semantic index information.
사용자 쿼리 입력부(140)는 사용자로부터 퀴리를 수신하고 입력된 사용자 쿼리(Query)를 쿼리파싱부(Query Parser: 150)로 전달한다. 여기서, 사용자 쿼리는 일종의 검색 쿼리로서, 사용자가 검색하고자 입력한 키워드를 포함한다.The user query input unit 140 receives a query from the user and transfers the input user query to the query parser 150. Here, the user query is a kind of search query and includes a keyword inputted by the user to search.
사용자 쿼리 입력부(140)는 정보 입력부(110)와 유사한 동작을 할 수 잇으며, 자연어 및 수식의 조합으로 이루어진 조합 데이터(복합문장)를 입력받을 수 있다. 자연어 및 수식의 조합으로 이루어진 조합 데이터는 사용자의 조작 또는 명령에 의해 직접 입력될 수 있으나 반드시 이에 한정되는 것은 아니며, 별도의 외부 서버로부터 자연어 및 수식의 조합으로 이루어진 문서 데이터를 입력받을 수도 있다.The user query input unit 140 may perform a similar operation to that of the information input unit 110, and may receive a combination data (complex sentence) composed of a combination of natural language and expression. Combination data consisting of a combination of natural language and formula may be directly input by a user's manipulation or command, but is not necessarily limited thereto, and may receive document data consisting of a combination of natural language and formula from a separate external server.
쿼리파싱부(150)는 입력된 사용자 쿼리에 포함된 키워드를 추출한다. 여기서 추출되는 키워드는 시맨틱정보를 포함할 수 있으며, 쿼리파싱부(150)는 입력된 사용자 쿼리를 시맨틱파싱하여 시맨틱정보가 포함된 키워드를 추출할 수 있다. 쿼리파싱부(150)는 시맨틱파싱부(120)의 동작과 유사할 수 있다. 즉, 쿼리파싱부(150)는 사용자 쿼리 입력부(140)를 통하여 입력된 복합문장에서 자연어 및 수식을 각각 분리하고, 분리된 자연어와 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 생성한 키워드를 생성할 수 있다. 여기서 사용자 쿼리 입력부(140)를 통하여 입력된 문장은 자연어만 포함되거나 수학식만 포함될 수도 있다. 즉, 입력된 문장에 자연어만 포함되면 생성된 키워드에는 자연어토큰만, 입력된 문장에 수학식만 포함되면 생성된 키워드에는 수학식토큰만 존재할 수도 있다.The query parsing unit 150 extracts a keyword included in the input user query. The extracted keyword may include semantic information, and the query parsing unit 150 may semantic parse the input user query to extract a keyword including semantic information. The query parser 150 may be similar to the operation of the semantic parser 120. That is, the query parsing unit 150 separates the natural language and the formula from the compound sentence input through the user query input unit 140, and analyzes each piece of configuration information constituting the separated natural language and the formula to generate semantic information. Thus, a keyword that generates a natural token and a mathematical token can be generated. Here, the sentence input through the user query input unit 140 may include only natural language or only equation. That is, if only the natural language is included in the input sentence, the generated keyword may include only the natural language token, and if the input sentence includes only the mathematical expression, only the mathematical token may exist in the generated keyword.
시맨틱거리 추출부(150)는 쿼리파싱부(150)에서 추출된 키워드에 포함된 시맨틱정보와 시맨틱파싱부(120)에서 생성되어 색인정보부(140)에 저장된 색인화된 정보의 시맨틱 정보와의 유사도를 나타내는 시맨틱 거리를 측정하여 유사도를 획득한다.The semantic distance extractor 150 may determine the similarity between the semantic information included in the keyword extracted by the query parser 150 and the semantic information of the indexed information generated by the semantic parser 120 and stored in the index information unit 140. Similarity is obtained by measuring the semantic distance that represents.
예3과 같이 일반적인 형태의 수식이 있다고 가정하자.Suppose you have a general formula like Example 3.
(예3) "x2+2x-3=0 에 대하여 두 근을 구하라"Example 3: Find two roots of x 2 + 2x-3 = 0
위의 수학문장을 동작정보(Action)와 시맨틱 서술(Semantic Description)로 표현하면 도 5와 같이 표현할 수 있다.The above mathematical sentence can be expressed as shown in FIG. 5 if it is expressed as an action information and a semantic description.
위의 예3에서 일반 문장의 수식 (x2+2x-3=0)만으로는 질의(query) 대상이 될 수 없으며, 시맨틱 서술 정보인 2차 방정식이 질의 대상이 된다. 따라서 만약 설정된 스키마가 없다면 시맨틱 질의를 처리할 수 없기 때문에, 시맨틱 서술 정보가 시맨틱거리 추출부(160)에 의한 시맨틱질의 처리를 위한 수단으로서 사용될 수 있다.In the above example 3, the formula (x 2 + 2x-3 = 0) of the general sentence cannot be used as a query target, and a quadratic equation that is semantic description information becomes a query target. Therefore, if there is no schema set, the semantic query cannot be processed, so the semantic description information can be used as a means for the semantic processing by the semantic distance extractor 160.
예3과 같은 2차 방정식이라는 단순한 시맨틱 서술뿐만 아니라 이와 같이 문제 구조화(주제, 문제, 해답 등)를 통하여 얻은 각종 시맨틱 서술과 결합하여 스키마를 정의하면 모든 문제를 좀 더 다양한 시맨틱 서술을 가지는 문장으로 표현할 수 있다.In addition to the simple semantic descriptions of quadratic equations as shown in Example 3, the schema is defined in combination with various semantic descriptions obtained through problem structuring (topics, problems, solutions, etc.). I can express it.
표 3, 표 4, 표 5, 표 6은 하나의 수학식에 대한 XML description의 예를 나타낸 것이다.Table 3, Table 4, Table 5, and Table 6 show examples of XML description of one equation.
표 3, 표 4, 표 5, 표 6에 의하면, 자연어와 표준화된 수식으로 표현된 수학 컨텐츠를 수학문장의 분류 장치(100)가 이해할 수 있는 형태로 변환하고, 자연어와 수식이 갖는 의미에 근거하여 시맨틱 정보를 추출하여 XML 트리 형태로 구조화하는 것이다.According to Tables 3, 4, 5, and 6, the mathematical content expressed by the natural language and the standardized formula is converted into a form that the classification apparatus 100 of the mathematical sentence can understand, and based on the meaning of the natural language and the mathematical formula. To extract the semantic information and structure it into an XML tree.
시맨틱거리 추출부(160)는 추출된 키워드와 시맨틱 정보와의 시맨틱 거리(Semantic Distance)를 측정하여 유사도를 획득한다.The semantic distance extractor 160 obtains the similarity by measuring the semantic distance between the extracted keyword and the semantic information.
여기서 시맨틱 거리란 수식과 자연어로 구성되어 있는 복합문장을 변환하는 과정에서 부여되는 시맨틱 서술(Semantic Description)의 거리를 의미한다.Here, the semantic distance means a distance of a semantic description given in the process of converting a compound sentence composed of an expression and a natural language.
예를 들어, 예4 및 예5와 같은 두가지 형태의 문장이 있다고 가정하자.For example, suppose there are two types of sentences, such as Examples 4 and 5.
(예4) "방정식 x2+2x-3=0에 대하여 두 근을 구하여라."(Example 4) "Calculate two roots of equation x 2 + 2x-3 = 0."
(예5) "이차식 x2+3x+5에 대하여 적분을 구하여라."(Example 5) "Calculate the integral for the quadratic x 2 + 3x + 5."
위의 두 식에 대하여 동작정보(Action)와 시맨틱 서술로 표현하면 각각 도 6의 6A, 6B와 같이 표현할 수 있다.The above two expressions can be expressed as 6A and 6B of FIG. 6 when expressed by action information and semantic description.
도 6에 도시한 바와 같이 일반 문장의 수식 (x2+2x-3=0), (x2+3x+5) 만으로는 이차식의 근과 부정적분을 구하는 완전히 다른 문제이지만, 시맨틱 서술은 2차식이라서 동일하다고 판단할 수 있다. 따라서 시맨틱 거리(Semantic Distance)를 정의해 놓으면 다양한 문장의 시맨틱 거리를 쉽게 측정할 수 있다. 예를 들어, 이차식의 근과 부정적분을 구하는 문제의 시맨틱 거리는 2, 부정적분과 미분의 시맨틱 거리는 1과 같이 시맨틱 거리를 정의함으로써 해당 수학문장와 기저장된 수학문장의 시맨틱 간의 시맨틱 거리를 측정하여 유사도를 획득할 수 있으며, 이를 점수화할 수 있다.As shown in FIG. 6, the equations (x 2 + 2x-3 = 0) and (x 2 + 3x + 5) of the general sentence are completely different problems of finding the root and negative integral of the quadratic formula, but the semantic description is a quadratic formula. It can be determined to be the same. Therefore, if you define semantic distance, you can easily measure the semantic distance of various sentences. For example, the semantic distance of the problem of finding the root and the negative integral of the quadratic equation is 2, and the semantic distance of the negative and derivative is 1 to define the semantic distance. Can be scored.
시맨틱거리 추출부(160)는 시맨틱 거리를 구함에 있어서, 추출된 키워드의 시맨틱요소와 색인정보부(140)에 색인화되어 저장된 시맨틱 정보의 시맨틱요소에 대하여 공통적인 시맨틱요소의 갯수에 비례한 값으로 결정될 수 있다. 여기서 시맨틱 거리가 시맨틱요소의 갯수에 비례한 값으로 결정된다고 하였으나, 이를 구현하기 위한 수학식에 있어서, 공통적인 시맨틱요소의 갯수를 구하기 위하여 시맨틱요소의 값을 서로 곱한 값에 비례한 값으로 시맨틱 거리를 생성하는 등 다양한 형태의 수학식이 적용될 수 있을 것이다.In obtaining the semantic distance, the semantic distance extractor 160 may be determined as a value proportional to the number of semantic elements common to the semantic elements of the extracted semantic information and index information stored in the index information unit 140. Can be. Here, the semantic distance is determined as a value proportional to the number of semantic elements. However, in the equation for implementing the semantic distance, the semantic distance is proportional to a value multiplied by the values of the semantic elements in order to obtain the number of common semantic elements. Various forms of equations may be applied, such as to generate.
또한, 시맨틱 거리는 두 수학식 문제의 전체 시맨틱요소 대비 공통적인 시맨틱요소가 많을수록 시맨틱거리는 짧아지고 반대로 두 수학식 문제의 전체 시맨틱요소 대비 공통적인 시맨틱요소가 적을수록 시맨틱거리는 길어지도록 구현할 수 있다. 또한 두 수학식 문제의 전체 시맨틱요소의 갯수는 고려하지 않고 두 수학식 문제의 공통적인 시맨틱요소가 많을수록 시맨틱거리는 짧아지고 공통적인 시맨틱요소가 적을수록 시맨틱거리는 길어지도록 구현할 수도 있다.In addition, the semantic distance may be implemented such that the more semantic elements are compared to the overall semantic elements of the two equation problems, the shorter the semantic distance is. In addition, without considering the total number of semantic elements of the two equation problems, the more semantic elements of the two equation problems, the shorter the semantic distance, and the less semantic elements, the longer the semantic distance can be implemented.
시맨틱거리 추출부(160)는 사용자의 쿼리로 입력한 키워드의 시맨틱정보와 색인화되어 저장된 시맨틱 정보의 연관성에 근거하여 시맨틱 거리를 정의하기 위한 일례로 수학식 1과 같이 코사인 유사성(Cosine Similarity)을 이용할 수 있다.The semantic distance extractor 160 uses cosine similarity as shown in Equation 1 as an example for defining a semantic distance based on the correlation between semantic information of a keyword inputted by a user's query and semantic information indexed and stored. Can be.
(p: 문제 벡터, q: 쿼리 벡터, v: 벡터가 가지는 원소의 개수) (p: problem vector, q: query vector, v: number of elements in the vector)
시맨틱 거리를 측정하고자 하는 첫번째 수학 문장과 두번째 수학 문장이 가지는 각각의 시맨틱 정보를 불 벡터(Boolean vector)로 표현될 수 있다. 따라서, 예를 들어, 도 8과 같이 pi 가 불(Boolean)이면서 첫번째 수학 문장 p에서 시맨틱 i 의 존재 여부를 나타내고, qi 가 불(Boolean)이면서 두번째 수학 문장 q에서 시맨틱 i 의 존재 여부를 나타낼 수 있다. 즉, 수학 문장에 대하여 다항식(Polynomial), 함수(Function), 인수문제(Factor), 문제를 푸는 문장(Solve), 값을 구하는 문제(Evaluate), 변수의 갯수(Number of Variables), 차수(Degree) 등에 대하여 각 수학 문장의 각 시맨틱요소에 대하여 불(Boolean) 값이 설정된다면, 모든 수학 문장은 도 8과 같은 시맨틱요소를 표현하는 불 벡터로 표현될 수 있다.Each semantic information of the first mathematical sentence and the second mathematical sentence for which the semantic distance is to be measured may be expressed as a Boolean vector. Thus, for example, as shown in FIG. 8, p i is Boolean and indicates whether semantic i is present in the first mathematical sentence p, and q i is Boolean and whether or not semantic i is present in the second mathematical sentence q. Can be represented. In other words, for a mathematical sentence, it is polynomial, function, argument, factor, problem solving, evaluating, number of variables, and degree. For example, if a Boolean value is set for each semantic element of each mathematical sentence, all the mathematical sentences may be represented by a Boolean vector representing semantic elements as shown in FIG. 8.
만일, 색인화되어 저장된 시맨틱 정보가 도 8과 같이 6개의 문장이 존재한다면, 각 수학문제의 불 벡터는 문제1=(1,1,1,0,1,1,1), 문제2=(1,1,1,1,0,0,0), 문제3=(0,0,0,0,0,1,1),...등이 될 것이다.If there are six sentences with indexed and stored semantic information as shown in FIG. 8, the Boolean vector of each mathematical problem is: problem 1 = (1,1,1,0,1,1,1), problem 2 = (1 , 1,1,1,0,0,0), problem 3 = (0,0,0,0,0,1,1), ...
이 경우, 예를 들어, 사용자 쿼리로부터 추출된 키워드에 포함되는 시맨틱요소에 대한 불 벡터가 (1,1,1,1,1,1,1)이라면, 도 8과 같이 저장된 모든 시맨틱정보에 대하여 수학식1을 적용하여 시맨틱거리를 구할 수 있다.In this case, for example, if the Boolean vector for the semantic element included in the keyword extracted from the user query is (1,1,1,1,1,1,1), for all semantic information stored as shown in FIG. The semantic distance can be obtained by applying Equation 1.
따라서, 사용자 쿼리의 불벡터와 문제1의 불벡터에 대하여 수학식 1을 적용하면, 6/(root(7)*root(6))이 되며, 사용자 쿼리의 불벡터와 문제2의 불벡터에 대하여 수학식 1을 적용하면, 4/(root(7)*root(4))이 된다. 이와 유사하게 모든 색인화된 문제에 대하여 수학식1을 적용하여 사용자 쿼리의 불벡터와의 시맨틱 거리를 구할 수 있다.Therefore, if Equation 1 is applied to the Boolean vector of the user query and the Boolean vector of problem 1, it becomes 6 / (root (7) * root (6)), and the Boolean vector of the user query and the Boolean vector of problem 2 When equation (1) is applied, it becomes 4 / (root (7) * root (4)). Similarly, Equation 1 can be applied to all indexed problems to obtain the semantic distance from the Boolean vector of the user query.
수학식 1에서, cos(q, p)가 “0”의 값을 가지면 해당 시맨틱 정보가 없거나, 해당 문제와 관련이 없다는 것을 의미한다. 반면에, cos(q, p)가 “1”의 값을 가지면 수학문제에 일치하는 시맨틱 정보가 있다는 것을 나타내며, 시맨틱 거리를 나타내는 cos(q, p)는 0에서 1까지의 값을 가지는데, 1에 가까울수록 두 문장간의 시맨틱 유사성이 더 높다고 할 수 있다. cos(q, p)가 1 이 되면, 두 문장 p, q 의 시맨틱 정보가 정확하게 일치하는 경우이고, cos(q, p)가 0 이 되는 경우에는 두 문장 p, q 간의 시맨틱 유사성이 전혀 없는 경우라고 할 수 있다.In Equation 1, if cos (q, p) has a value of “0”, it means that there is no corresponding semantic information or it is not related to the problem. On the other hand, if cos (q, p) has a value of “1”, it indicates that there is semantic information corresponding to a mathematical problem, and cos (q, p), which represents a semantic distance, has a value from 0 to 1. The closer to 1, the higher the semantic similarity between the two sentences. If cos (q, p) is 1, the semantic information of two sentences p, q is exactly the same. If cos (q, p) is 0, there is no semantic similarity between the two sentences p, q. It can be said.
시맨틱거리 추출부(160)는 시맨틱 거리를 구함에 있어서, 추출된 키워드의 시맨틱요소와 색인정보부(140)에 색인화되어 저장된 시맨틱 정보의 시맨틱요소에 대하여 공통적인 시맨틱요소의 갯수에 비례한 값으로 생성함에 있어서, 각 시맨틱요소에 대하여 가중치를 설정할 수 있다.In obtaining the semantic distance, the semantic distance extractor 160 generates a value proportional to the number of semantic elements common to the semantic elements of the extracted semantic information and index information stored in the index information unit 140. In this case, a weight may be set for each semantic element.
시맨틱거리 추출부(160)는 사용자의 쿼리로 입력한 키워드의 시맨틱정보와 색인화되어 저장된 시맨틱 정보의 연관성에 근거하여 시맨틱 거리를 정의하기 위한 다른 예로 수학식 2와 같이 가중 코사인 유사성(Weighted Cosine Similarity)을 이용할 수도 있다.The semantic distance extractor 160 is a weighted cosine similarity as shown in Equation 2 as another example for defining a semantic distance based on the correlation between semantic information of a keyword inputted by a user's query and semantic information indexed and stored. Can also be used.
(p: 문제 벡터, q: 쿼리 벡터, wi, 가중치, v: 벡터가 가지는 원소의 개수) (p: problem vector, q: query vector, w i , weight, v: number of elements in the vector)
즉, 각 시맨틱요소에 대하여 가중치(wi)를 부여하여 시맨틱 거리를 계산할 수 있다. 이 경우 가중치에 의하여 중요도가 높게 설정된 시맨틱요소가 일치할수록 두 수학문장간의 시맨틱거리는 더 가까운 것으로 계산될 수 있다.That is, the semantic distance may be calculated by giving a weight w i to each semantic element. In this case, the more semantic elements set by weight are matched, the closer the semantic distance between two mathematical sentences can be.
수학식 2에서도 수학식 1과 유사하게, cosw(q, p)가 “0”의 값을 가지면 해당 시맨틱 정보가 없거나, 그 열에 있는 문제와 관련이 없다는 것을 의미한다. 반면에, cosw(q, p)가 “1”의 값을 가지면 그 행에 일치하는 시맨틱 정보가 있다는 것을 나타내고, 시맨틱 정보간의 상하 관계 또는 중요도에 따라 가중치를 wi라고 하면, 수학식 1의 행렬을 사용하면 수학 문장 벡터 p와 쿼리 벡터 q 사이의 코사인 각을 구할 수 있다.Similarly to Equation 1 in Equation 2, if cos w (q, p) has a value of "0", it means that there is no corresponding semantic information or it is not related to the problem in the column. On the other hand, if cos w (q, p) has a value of "1", it indicates that there is semantic information corresponding to the row, and if the weight is w i according to the upper or lower relation or importance between the semantic information, Using the matrix, we can find the cosine angle between the mathematical sentence vector p and the query vector q.
수학식 1에서, 시맨틱 거리를 나타내는 cosw(q, p)는 0에서 1까지의 값을 가지는데, 1에 가까울수록 두 문장간의 시맨틱 유사성이 더 높다고 할 수 있다. cosw(q, p)가 1 이 되면, 두 문장 p, q 의 시맨틱 정보가 정확하게 일치하는 경우이고, cosw(q, p)가 0 이 되는 경우에는 두 문장 p, q 간의 시맨틱 유사성이 전혀 없는 경우라고 할 수 있다.In Equation 1, cos w (q, p) representing a semantic distance has a value from 0 to 1, and the closer to 1, the higher the semantic similarity between two sentences. If cos w (q, p) is 1, the semantic information of the two sentences p, q is exactly the same, and if cos w (q, p) is 0, the semantic similarity between the two sentences p, q is not at all. It can be said that there is no.
한편, 두 수학식 사이의 시맨틱 거리는 두 수학식 사이에 동일한 시맨틱요소의 가중치의 합에 반비례하고 두 수학식에 포함된 전체 시맨틱 요소의 가중치의 합에 비례한다.Meanwhile, the semantic distance between the two equations is inversely proportional to the sum of the weights of the same semantic elements between the two equations and is proportional to the sum of the weights of all the semantic elements included in the two equations.
예를 들어, 두 수학식 A의 시맨틱요소와 수학식 B의 시맨틱요소의 합집합을 S={s1, s2, ..., sN}이라 하고, 합집합의 N 개의 각 요소에 대응하는 가중치(Weight)의 집합을 W={w1, w2, ..., wN}이라 가정하자.For example, the union of the semantic elements of the two equations A and the semantic elements of the equation B is called S = {s 1 , s 2 , ..., s N } and weights corresponding to each of the N elements of the union. Assume the set of (Weight) is W = {w 1 , w 2 , ..., w N }.
이때, S의 각 원소 sm(m = 1,..., N)에 대하여 수학식 A와 수학식B에 동일하게 존재하는 해당 시맨틱요소(sm)의 가중치를 모두 합산하여 동일시맨틱 가중치합(E)을 계산한다.In this case, for each element s m (m = 1, ..., N) of S, the weights of the corresponding semantic elements (s m ) that are present in Equations A and B are added together to add up the semantic weights. Calculate (E).
따라서, 수학식A와 수학식B의 시맨틱 거리(D)는 다음의 식에 의해 계산될 수 있다(D = (Sum(wm)/E)).Therefore, the semantic distance D of Equations A and B can be calculated by the following equation (D = (Sum (w m ) / E)).
따라서, 수학식3에 나타낸 바와 같이 두 수학식 간의 시맨틱거리는 두 수학식 사이의 동일한 시맨틱요소의 가중치의 합(E)에 반비례하고 두 수학식에 포함된 전체 시맨틱 요소의 가중치의 합(Sum(wm))에 비례함을 알 수 있다.Therefore, as shown in Equation 3, the semantic distance between the two equations is inversely proportional to the sum E of the weights of the same semantic elements between the two equations, and the sum of the weights of all the semantic elements included in the two equations, Sum (w m )).
이때, 가중치값(wm)은 시맨틱 요소마다 모두 같을 수도 있고(예컨대 1), 시맨틱 요소간의 중요도에 따라서 시맨틱 요소마다 서로 다른 값을 가질 수도 있다.In this case, the weight value w m may be the same for all semantic elements (eg, 1), or may have different values for each semantic element according to importance between semantic elements.
예를 들어, 아래와 같이 세개의 문제(A, B, C)가 있다고 가정하자.For example, suppose there are three problems (A, B, and C):
1.문제A: 방정식 x2+2x+1=0을 풀어라.1. Problem A: Solve the equation x 2 + 2x + 1 = 0.
2.문제B: 방정식 x2-4=0을 풀어라.Problem B: Solve the equation x 2 -4 = 0.
3.문제C: 방정식 x3-1=0을 풀어라 (단, x > 0)3. Problem C: Solve the equation x 3 -1 = 0 (where x> 0)
또한, 위의 문제들에서 각각 추출된 시맨틱 정보가 아래와 같은 경우Also, if the semantic information extracted from the above problems is as follows
- 문제A의 시맨틱요소: 동작(풀어라), 차수(2차 방정식), 항의 수(3항)The semantic component of problem A: the action (solve), the order (secondary equation), the number of terms (3)
- 문제B의 시맨틱 요소: 동작(풀어라), 차수(2차 방정식), 항의 수(2항)The semantic elements of problem B: motion (solve), order (quadratic equations), number of terms (paragraph 2)
- 문제C의 시맨틱 요소: 동작(풀어라), 차수(3차 방정식), 항의 수(2항), 조건 부등식.The semantic elements of problem C: motion (solve), order (third equation), number of terms (2), conditional inequality.
모든 시맨틱 요소의 가중치(weight)를 1로 가정할 경우, 수학식3의 계산식에 의해서 문제A와 문제B의 시맨틱 거리(D)는, 전체 시맨틱 요소의 가중치의 합(Sum(wm))은 3이고 문제A와 문제B 사이의 동일한 시맨틱요소가 동작('풀어라') 및 차수(2차 방정식)가 있으므로 동일한 시맨틱요소의 가중치의 합(E)은 2가 되어, (D = 3/2 = 1.5)가 된다. 또한, 문제A와 문제C의 시맨틱 거리는, 전체 시맨틱 요소의 가중치의 합(Sum(wm))은 4이고 문제A와 문제C 사이의 동일한 시맨틱요소가 동작('풀어라') 하나밖에 없어서 동일한 시맨틱요소의 가중치의 합(E)은 1이 되므로, (D = 4/1 = 4)가 된다. 또한, 문제B와 문제C의 시맨틱 거리는, 전체 시맨틱 요소의 가중치의 합(Sum(wm))은 4이고 A와 B 사이의 동일한 시맨틱요소가 동작('풀어라') 및 항의 수(2항)이 있으므로 동일한 시맨틱요소의 가중치의 합(E)은 2가 되므로, (D = 4/2 = 2)가 된다.If the weight of all semantic elements is assumed to be 1, the semantic distance (D) of problem A and problem B is the sum of the weights of all semantic elements (Sum (w m )) according to the equation of Equation 3 3 and the same semantic element between problem A and problem B has motion ('solve') and order (secondary equation), so the sum of the weights (E) of the same semantic element is equal to 2, (D = 3/2 = 1.5). In addition, the semantic distance of problem A and problem C is equal to the sum of weights (Sum (w m )) of all the semantic elements, and that there is only one motion ('unlock') the same semantic element between problem A and problem C. Since the sum E of the weights of the semantic elements is 1, it is (D = 4/1 = 4). In addition, the semantic distance of problem B and problem C is that the sum of the weights of all the semantic elements (Sum (w m )) is 4 and the same semantic element between A and B operates ('unlocks') and the number of terms (paragraph 2). ), The sum E of the weights of the same semantic elements becomes 2, so that (D = 4/2 = 2).
만약에 방정식 차수 정보를 가장 중요하게 생각해서 차수에 대한 가중치를 2로 두고 나머지 정보는 1로 둔 경우에는, 문제A와 문제B의 시맨틱 거리는, 전체 시맨틱 요소의 가중치의 합(Sum(wm))은 4이고 문제A와 문제B 사이의 동일한 시맨틱요소가 동작('풀어라') 및 차수(2차 방정식)가 있으므로 동일한 시맨틱요소의 가중치의 합(E)은 3이 되어, (D = 4/3 = 1.33)이 된다. 또한, 문제A와 문제C의 시맨틱 거리는, 전체 시맨틱 요소의 가중치의 합(Sum(wm))은 5이고 문제A와 문제C 사이의 동일한 시맨틱요소의 가중치의 합(E)은 1이 되어, (D = 5/1 = 5)가 된다. 또한, 문제B와 문제C의 시맨틱 거리는, 전체 시맨틱 요소의 가중치의 합(Sum(wm))은 5이고 문제B와 문제C 사이의 동일한 시맨틱요소의 가중치의 합(E)은 2가 되어, (D = 5/2 = 2.5)가 된다.If the equation order information is given the most importance and the weight for the order is 2 and the remaining information is 1, the semantic distance of problem A and problem B is the sum of the weights of all semantic elements (Sum (w m )). ) Is 4 and the same semantic element between problem A and problem B has motion ('solve') and order (second order equation), so the sum of the weights (E) of the same semantic element is 3, (D = 4 / 3 = 1.33). In addition, the semantic distance between the problem A and the problem C, the sum of the weights of all the semantic elements (Sum (w m )) is 5 and the sum (E) of the weights of the same semantic elements between the problem A and the problem C is 1, (D = 5/1 = 5) In addition, the semantic distance between the problem B and the problem C, the sum of the weights of all the semantic elements (Sum (w m )) is 5 and the sum (E) of the weights of the same semantic elements between the problem B and the problem C is 2, (D = 5/2 = 2.5).
위와 같이 수학식 문제간의 시맨틱거리 값을 통하여 값이 그 값이 작을 경우 두 수학식문제 사이에 유사성이 높다고 판단하고, 그 값이 클 경우 두 수학식문제 사이에 유사성이 낮다고 판단하여 이러한 정보를 활용할 수 있다.Through the semantic distance value between mathematical problems as above, if the value is small, it is determined that the similarity is high between the two mathematical problems, and if the value is large, it is determined that similarity between the two mathematical problems is low and use this information. Can be.
결과 제공부(170)는 시맨틱 거리의 측정에 의해 산출된 유사도에 의해 점수화된 쿼리 색인 정보의 순위(Ranking) 결과 페이지를 제공할 수 있다. 여기서, 순위 결과 페이지를 요청하는 서버 또는 단말기로 순위 결과 페이지를 제공할 수 있으나 반드시 이에 한정되는 것은 아니며, 수학문장의 분류 장치(100)가 자립형(Stand Alone) 장치로 구현되는 경우, 구비된 표시부를 통해 해당 순위 결과 페이지를 나타낼 수 있을 것이다.The result provider 170 may provide a ranking result page of the query index information scored based on the similarity calculated by the measurement of the semantic distance. Here, the ranking result page may be provided to the server or the terminal requesting the ranking result page, but is not necessarily limited thereto. When the classification apparatus 100 of the mathematical sentence is implemented as a stand-alone device, the display unit is provided. You will be able to display the ranking results page.
즉, 사용자 쿼리 입력부(140)를 통해 입력된 사용자 쿼리는 쿼리 파서부(150)에서 파싱되고, 시맨틱거리 추출부(160)로 전달되고, 결과 제공부(170)는 기 저장된 수학 컨텐츠에 대한 인덱스와 사용자 쿼리의 인덱스를 토대로 시맨틱 거리를 바탕으로 한 연관성을 비교하여 점수화를 수행하며 사용자 결과 페이지에 순위를 출력하는 것이다.That is, the user query input through the user query input unit 140 is parsed by the query parser unit 150 and transmitted to the semantic distance extractor 160, and the result provider unit 170 indexes the stored mathematical content. The scoring is performed by comparing the correlation based on the semantic distance based on the index of the query and the user query, and the ranking is output on the user result page.
도 7은 본 발명의 일 실시예에 따른 수학문장의 분류 방법을 설명하기 위한 순서도이다. 7 is a flowchart illustrating a classification method of mathematics sentences according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 수학문장의 분류 방법은 자연어(Natural Language)와 수식(Mathematical Formula)이 포함된 복합문장을 수신하는 정보입력단계(S710), 복합 문장에서 자연어 및 수식을 각각 분리하고, 분리된 자연어와 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 생성하는 시맨틱 파싱단계(S720), 추출한 시맨틱 정보를 색인화(Indexing)한 정보를 저장하는 색인정보단계(S730), 사용자로부터 퀴리를 수신하는 사용자쿼리 입력단계(S740), 입력된 사용자 쿼리(Query)에 포함된 키워드(Key Word)를 추출하는 쿼리파싱단계(S750), 추출된 키워드와 시맨틱 정보와의 시맨틱 거리를 측정하여 유사도를 획득하는 시맨틱거리 추출단계(S760) 및 시맨틱 거리의 측정에 의해 산출된 유사도에 의해 점수화된 쿼리 색인 정보의 순위(Ranking) 결과 페이지를 제공하는 결과 제공단계(S770)을 포함한다.In accordance with an embodiment of the present invention, a method of classifying a mathematical sentence may include separating an natural language and a formula from an information input step S710 for receiving a compound sentence including a natural language and a mathematical formula, and a compound sentence. The semantic parsing step (S720) of generating natural language tokens and mathematical tokens by analyzing semantic information by analyzing each component of the separated natural language and formulas, and storing the information of indexing the extracted semantic information Index information step (S730), a user query input step for receiving a query from the user (S740), a query parsing step (S750) for extracting a keyword (Key Word) included in the input user query (S750), the extracted keyword And a semantic distance extraction step (S760) for obtaining a similarity by measuring a semantic distance between the semantic information and a semantic distance and a query index scored by the similarity calculated by the measurement of the semantic distance. The beam of ranking comprises a (Ranking) Results The results provide further comprising: providing a page (S770).
여기서, 정보입력단계(S710)는 정보입력부(110)의 동작에, 시맨틱 파싱단계(S720)는 시맨틱 파싱부(120)의 동작에, 색인정보단계(S730)는 색인정보부(130)의 동작에, 사용자쿼리 입력단계(S740)는 사용자쿼리 입력부(140)의 동작에, 쿼리파싱단계(S750)는 쿼리파싱부(150)의 동작에, 시맨틱거리 추출단계(S760)는 시맨틱거리 추출부(160)의 동작에, 결과 제공단계(S770)는 결과 제공단계부(170)의 동작에 각각 대응되므로 상세한 설명은 생략한다.Here, the information input step (S710) is the operation of the information input unit 110, the semantic parsing step (S720) to the operation of the semantic parsing unit 120, the index information step (S730) to the operation of the index information unit 130. In operation S740, the user query input unit 140 operates, the query parsing operation S750, the query parser 150 operates, and the semantic distance extracting operation S760, the semantic distance extracting unit 160. ), The result providing step (S770) corresponds to the operation of the result providing step unit 170, so detailed description thereof will be omitted.
전술한 바와 같이 도 7에 기재된 본 발명의 일 실시예에 따른 수학문장의 분류 방법은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 본 발명의 일 실시예에 따른 수학문장의 분류 방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 발명의 일 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명의 일 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.As described above, the mathematical sentence classification method according to an embodiment of the present invention described in FIG. 7 may be implemented in a program and recorded in a computer-readable recording medium. A computer-readable recording medium having recorded thereon a program for implementing a method of classifying a mathematical sentence according to an embodiment of the present invention includes all kinds of recording devices storing data that can be read by a computer system. Examples of such computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, and are implemented in the form of a carrier wave (for example, transmission over the Internet). It includes being. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. In addition, functional programs, codes, and code segments for implementing an embodiment of the present invention may be easily deduced by programmers in the art to which an embodiment of the present invention belongs.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있으며, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.In the above description, it is described that all the components constituting the embodiments of the present invention are combined or operated in one, but the present invention is not necessarily limited to these embodiments. That is, within the scope of the present invention, all of the components may be selectively combined to operate in one or more, and those skilled in the art to which the present invention pertains without departing from the essential characteristics of the present invention Various modifications and variations will be possible in the. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.
이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 자연어와 표준화된 수학식으로 구성된 수학문장에 포함된 시맨틱 거리를 추출하여 입력된 수학문장의 검색시 저장된 수학콘텐츠와의 유사성을 부여하여 사용자 검색환경을 제공할 있도록 하는 효과가 있어 산업상 이용가능성이 크다.As described above, according to an exemplary embodiment of the present invention, a semantic distance included in a natural sentence and a standardized mathematical expression is extracted to give a similarity to the stored mathematical content when searching for an inputted mathematical sentence, thereby providing a user search environment. It is effective in providing a high level of industrial applicability.
CROSS-REFERENCE TO RELATED APPLICATIONCROSS-REFERENCE TO RELATED APPLICATION
본 특허출원은 2010년 12월 7일 한국에 출원한 특허출원번호 제10-2010-0124384호 및 2011년 12월 7일 한국에 출원한 특허출원번호 제10-2011-0130024호 에 대해 미국 특허법 119(a)조(35 U.S.C §119(a))에 따라 우선권을 주장하면, 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다. 아울러, 본 특허출원은 미국 이외의 국가에 대해서도 위와 동일한 이유로 우선권을 주장하면 그 모든 내용은 참고 문헌으로 본 특허출원에 병합된다.This patent application is filed with the Korean Patent Application No. 10-2010-0124384 filed in Korea on December 7, 2010 and Patent Application No. 10-2011-0130024, filed in Korea on December 7, 2011. If priority is claimed under section (a) (35 USC §119 (a)), all of this is incorporated by reference into this patent application. In addition, if this patent application claims priority for the same reason for a country other than the United States, all its contents are incorporated into this patent application by reference.
Claims (26)
- 사용자로부터 퀴리를 수신하는 사용자쿼리 입력부;A user query input unit for receiving a query from a user;입력된 사용자 쿼리(Query)에 포함된 키워드를 추출하는 쿼리파싱부;A query parsing unit which extracts a keyword included in an input user query;시맨틱 정보가 포함된 자연어토큰 및 수학식토큰을 색인화하는 색인정보부; 및An index information unit for indexing natural tokens and mathematical tokens including semantic information; And상기 추출된 키워드와 색인화된 시맨틱 정보와의 시맨틱 거리를 측정하여 유사도를 획득하는 시맨틱거리 추출부A semantic distance extracting unit which obtains a similarity by measuring the semantic distance between the extracted keyword and indexed semantic information.를 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.Apparatus for classifying mathematical sentences by semantic distance extraction and semantic distance of mathematical sentences comprising a.
- 제 1항에 있어서,The method of claim 1,상기 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치는,The semantic distance extraction and the semantic distance classification apparatus of the mathematical sentence,자연어와 수식이 포함된 복합문장을 수신하는 정보입력부; 및An information input unit for receiving a compound sentence including natural language and expressions; And상기 복합문장에서 상기 자연어 및 상기 수식을 각각 분리하고, 분리된 상기 자연어와 상기 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 생성하는 시맨틱파싱부A semantic parsing unit that separates the natural language and the formula from the compound sentence, and generates semantic information by analyzing the separated natural language and the respective configuration information constituting the formula, and generates a natural language token and a mathematical token.를 추가로 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.Apparatus for classifying mathematical sentences by semantic distance extraction and semantic distance of the mathematical sentence further comprises a.
- 제 2항에 있어서,The method of claim 2,상기 시맨틱 파싱부는,The semantic parser,상기 복합문장을 단순문장의 논리적 조합으로 변환한 후 시맨틱 정보를 생성하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.And a semantic distance extraction and semantic distance classification apparatus for generating a semantic information after converting the compound sentence into a logical combination of simple sentences.
- 제 2 항에 있어서,The method of claim 2,상기 시맨틱 파싱부는,The semantic parser,상기 자연어를 토큰화한 자연어 토큰을 생성하고, 상기 자연어 토큰을 근거로 중지 단어를 필터링한 중지 단어 필터링 데이터를 생성하며, 상기 중지 단어 필터링 데이터에서 중복 제거 필터링을 수행하여 중복 제거 필터링 데이터를 생성하고, 상기 중복 제거 필터링 데이터에 기 정의된 의미가 부여된 동작 정보를 매칭하여 상기 시맨틱 정보로 추출하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.Generating a natural word token obtained by tokenizing the natural language, generating stop word filtering data filtering the stop word based on the natural language token, and performing deduplication filtering on the stop word filtering data to generate deduplication filtering data And extracting semantic distances of the mathematical sentences and classifying the mathematical sentences by the semantic distances by matching the motion information to which the predefined meaning is added to the deduplication filtering data and extracting the semantic information.
- 제 2항에 있어서,The method of claim 2,상기 시맨틱 파싱부는,The semantic parser,상기 수식을 트리 형태로 변환하고, 상기 트리 형태로 변환된 수식에 횡단 과정을 수행하며, 상기 횡단 과정이 수행된 수식에 토큰화를 수행한 수식 토큰을 생성하여 상기 시맨틱 정보로 추출하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.Converting the formula into a tree form, performing a traversal process on the formula transformed into the tree form, generating a formula token that performs tokenization on the formula on which the traversal process is performed, and extracting the formula token as the semantic information An apparatus for classifying mathematical sentences by semantic distance extraction and semantic distance of mathematical sentences.
- 제 1항에 있어서,The method of claim 1,상기 시맨틱정보는,The semantic information is,자연어와 수식의 조합과 상기 조합에 대응되는 동작정보를 결합한 룰을 참조하고 상기 자연어토큰 및 상기 수학식토큰을 상기 룰과 비교하여 추출된 상기 복합문장의 동작정보를 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.Refers to a rule combining a combination of a natural language and a formula and motion information corresponding to the combination, and includes the motion information of the compound sentence extracted by comparing the natural token and the mathematical token with the rule. Extraction of semantic distance and classification of mathematical sentences by semantic distance.
- 제 6항에 있어서,The method of claim 6,상기 동작정보는,The operation information,상기 자연어토큰의 구조상의 의미, 상기 자연어토큰의 방향성 및 상기 자연어토큰의 영향이 미치는 지점을 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.Apparatus for classifying mathematical sentences by semantic distance extraction and semantic distance, characterized in that it includes a structural meaning of the natural token, the direction of the natural token and the influence of the natural token.
- 제 7항에 있어서,The method of claim 7, wherein상기 방향성은,The directionality,상기 동작정보가 상기 자연어토큰의 앞의 수학식과 연관되는지, 상기 자연어토큰의 뒤의 수학식과 연관되는지 또는 독립적인지를 나타내는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.Apparatus for classifying mathematical sentences based on semantic distance extraction and semantic distances, wherein the motion information indicates whether the motion information is related to the equations before the natural token, the equations after the natural token, or is independent. .
- 제 1항에 있어서,The method of claim 1,상기 시맨틱정보는,The semantic information is,상기 자연어토큰의 대상이 되는 수식을 상기 수학식토큰 중에서 매칭시켜 생성된 수학 오브젝트를 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.And a semantic distance extraction and semantic distance classification apparatus according to the semantic distance, characterized in that it comprises a mathematical object generated by matching the equation that is the target of the natural token among the mathematical token.
- 제 1항에 있어서,The method of claim 1,상기 쿼리파싱부는,The query parsing unit,상기 사용자 쿼리에서 자연어 및 수식을 각각 분리하고, 분리된 자연어와 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 포함하는 키워드를 추출하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.The natural language and the formula are separated from the user query, and the semantic information is generated by analyzing the respective configuration information constituting the separated natural language and the formula, and extracting a keyword including the natural language token and the mathematical token. An apparatus for classifying mathematical sentences by semantic distance extraction and semantic distance of mathematical sentences.
- 제 1항에 있어서,The method of claim 1,상기 시맨틱 거리는,The semantic distance is,상기 추출된 키워드의 시맨틱요소와 상기 색인화된 시맨틱 정보의 시맨틱요소에 대하여 공통적인 시맨틱요소의 갯수에 비례한 값으로 생성되는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.The semantic distance extraction and the classification of the mathematical sentence by the semantic distance are generated in proportion to the number of semantic elements common to the semantic element of the extracted keyword and the semantic element of the indexed semantic information. Device.
- 제 11항에 있어서,The method of claim 11,상기 시맨틱요소는,The semantic element,각 시맨틱요소별로 가중치가 설정되는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.An apparatus for classifying mathematical sentences based on semantic distance extraction and semantic distance, characterized in that weights are set for each semantic element.
- 제 1항에 있어서,The method of claim 1,상기 시맨틱 거리는,The semantic distance is,추출된 키워드의 시맨틱요소와 상기 색인화된 시맨틱 정보의 전체 시맨틱요소에 대비 공통적인 시맨틱요소가 많을수록 시맨틱거리는 짧아지고, 상기 전체 시맨틱요소 대비 공통적인 시맨틱요소가 적을수록 시맨틱거리는 길어지는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.The more semantic elements that are common to the semantic elements of the extracted keywords and the entire semantic elements of the indexed semantic information, the shorter the semantic distance, and the smaller the semantic elements compared to the overall semantic elements, the longer the semantic distance is. An apparatus for classifying mathematical sentences by semantic distance extraction and semantic distance of sentences.
- 제 1항에 있어서,The method of claim 1,상기 시맨틱 거리는,The semantic distance is,상기 추출된 키워드와 상기 색인화된 시맨틱 정보에 동일하게 존재하는 시맨틱요소의 가중치의 합에 반비례하고 상기 추출된 키워드와 상기 색인화된 시맨틱 정보에 포함된 전체 시맨틱 요소의 가중치의 합에 비례하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 장치.And inversely proportional to a sum of weights of semantic elements that are equally present in the extracted keyword and the indexed semantic information, and are proportional to a sum of weights of all the semantic elements included in the extracted keyword and the indexed semantic information. An apparatus for classifying mathematical sentences by semantic distance extraction and semantic distance of mathematical sentences.
- 사용자로부터 퀴리를 수신하는 사용자쿼리 입력단계;A user query input step of receiving a query from a user;입력된 사용자 쿼리에 포함된 키워드를 추출하는 쿼리파싱단계; 및A query parsing step of extracting keywords included in the input user query; And시맨틱 정보가 포함된 자연어토큰 및 수학식토큰이 색인화된 정보를 참조하여 상기 추출된 키워드와 색인화된 시맨틱 정보와의 시맨틱 거리를 측정하여 유사도를 획득하는 시맨틱거리 추출단계Semantic distance extraction step of obtaining a similarity by measuring the semantic distance between the extracted keyword and the indexed semantic information with reference to the indexed information natural and tokens containing semantic information를 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.Method for classifying mathematical sentences by semantic distance extraction and semantic distance of a mathematical sentence comprising a.
- 제 15항에 있어서,The method of claim 15,상기 시맨틱정보는,The semantic information is,자연어와 수식이 포함된 복합문장을 수신하는 정보입력단계; 및An information input step of receiving a compound sentence including a natural language and a formula; And상기 복합문장에서 상기 자연어 및 상기 수식을 각각 분리하고, 분리된 상기 자연어와 상기 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 생성하는 시맨틱 파싱단계The semantic parsing step of separating the natural language and the formula from the compound sentence, respectively, and analyzing semantic information constituting the separated natural language and the formula to generate semantic information to generate natural language tokens and mathematical tokens.로 생성된 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.Method of extracting the semantic distance and classification of the mathematical sentence by the semantic distance, characterized in that generated by.
- 제 16항에 있어서,The method of claim 16,상기 시맨틱 파싱단계는,The semantic parsing step,상기 복합문장을 단순문장의 논리적 조합으로 변환한 후 시맨틱 정보를 생성하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.And extracting semantic distances and classifying mathematical sentences by semantic distances after converting the compound sentences into logical combinations of simple sentences and generating semantic information.
- 제 16항에 있어서,The method of claim 16,상기 시맨틱 파싱단계는,The semantic parsing step,상기 자연어를 토큰화한 자연어 토큰을 생성하고, 상기 자연어 토큰을 근거로 중지 단어를 필터링한 중지 단어 필터링 데이터를 생성하며, 상기 중지 단어 필터링 데이터에서 중복 제거 필터링을 수행하여 중복 제거 필터링 데이터를 생성하고, 상기 중복 제거 필터링 데이터에 기 정의된 의미가 부여된 동작 정보를 매칭하여 상기 시맨틱 정보로 추출하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.Generating a natural word token obtained by tokenizing the natural language, generating stop word filtering data filtering the stop word based on the natural language token, and performing deduplication filtering on the stop word filtering data to generate deduplication filtering data And extracting semantic distances of the mathematical sentences and classifying the mathematical sentences by the semantic distances by matching the motion information to which the predefined meaning is added to the deduplication filtering data and extracting the semantic information.
- 제 16항에 있어서,The method of claim 16,상기 시맨틱 파싱단계는,The semantic parsing step,상기 수식을 트리 형태로 변환하고, 상기 트리 형태로 변환된 수식에 횡단 과정을 수행하며, 상기 횡단 과정이 수행된 수식에 토큰화를 수행한 수식 토큰을 생성하여 상기 시맨틱 정보로 추출하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.Converting the formula into a tree form, performing a traversal process on the formula transformed into the tree form, generating a formula token that performs tokenization on the formula on which the traversal process is performed, and extracting the formula token as the semantic information A semantic distance extraction and a semantic distance classification method of the mathematical sentence.
- 제 16항에 있어서,The method of claim 16,상기 시맨틱정보는,The semantic information is,자연어와 수식의 조합과 상기 조합에 대응되는 동작정보를 결합한 룰을 참조하고 상기 자연어토큰 및 상기 수학식토큰을 상기 룰과 비교하여 추출된 상기 복합문장의 동작정보를 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.Refers to a rule combining a combination of a natural language and a formula and motion information corresponding to the combination, and includes the motion information of the compound sentence extracted by comparing the natural token and the mathematical token with the rule. Semantic distance extraction and classification method of mathematical sentence by semantic distance.
- 제 20항에 있어서,The method of claim 20,상기 동작정보는,The operation information,상기 자연어토큰의 구조상의 의미, 상기 자연어토큰의 방향성 및 상기 자연어토큰의 영향이 미치는 지점을 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.The semantic distance extraction and the semantic distance classification method of the mathematical sentence, characterized in that it comprises a structural meaning of the natural token, the direction of the natural token and the influence of the natural token.
- 제 16항에 있어서,The method of claim 16,상기 시맨틱정보는,The semantic information is,상기 자연어토큰의 대상이 되는 수식을 상기 수학식토큰 중에서 매칭시켜 생성된 수학 오브젝트를 포함하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.And a semantic distance extraction method and a semantic distance classification method according to claim 1, further comprising a mathematical object generated by matching the equation targeted for the natural language token among the mathematical tokens.
- 제 15항에 있어서,The method of claim 15,상기 쿼리파싱단계는,The query parsing step,상기 사용자 쿼리에서 자연어 및 수식을 각각 분리하고, 분리된 자연어와 수식을 구성하고 있는 각각의 구성 정보를 분석하여 시맨틱 정보를 생성하여 자연어토큰 및 수학식토큰을 포함하는 키워드를 추출하는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.The natural language and the formula are separated from the user query, and the semantic information is generated by analyzing the respective configuration information constituting the separated natural language and the formula, and extracting a keyword including the natural language token and the mathematical token. Semantic distance extraction of mathematical sentences and classification method of mathematical sentences by semantic distance.
- 제 15항에 있어서,The method of claim 15,상기 시맨틱 거리는,The semantic distance is,상기 추출된 키워드의 시맨틱요소와 상기 색인화된 시맨틱 정보의 시맨틱요소에 대하여 공통적인 시맨틱요소의 갯수에 비례한 값으로 생성되는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.The semantic distance extraction and the classification of the mathematical sentence by the semantic distance are generated in proportion to the number of semantic elements common to the semantic element of the extracted keyword and the semantic element of the indexed semantic information. Way.
- 제 15항에 있어서,The method of claim 15,상기 시맨틱 거리는,The semantic distance is,추출된 키워드의 시맨틱요소와 상기 색인화된 시맨틱 정보의 전체 시맨틱요소에 대비 공통적인 시맨틱요소가 많을수록 시맨틱거리는 짧아지고, 상기 전체 시맨틱요소 대비 공통적인 시맨틱요소가 적을수록 시맨틱거리는 길어지는 것을 특징으로 하는 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법.The more semantic elements that are common to the semantic elements of the extracted keywords and the entire semantic elements of the indexed semantic information, the shorter the semantic distance, and the smaller the semantic elements compared to the overall semantic elements, the longer the semantic distance is. Method of classifying mathematical sentence by semantic distance extraction and semantic distance of sentence.
- 제 15항 내지 제 25항 중 어느 한 항에 의한 수학문장의 시맨틱거리 추출 및 시맨틱거리에 의한 수학문장의 분류 방법의 각 단계를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for executing each step of the method of extracting the semantic distance of a mathematical sentence according to any one of claims 15 to 25 and the method of classifying the mathematical sentence by the semantic distance.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201180059052.0A CN103250149B (en) | 2010-12-07 | 2011-12-07 | For extracting semantic distance and according to the method for semantic distance to mathematics statement classification and the device for the method from mathematics statement |
US13/911,950 US9424251B2 (en) | 2010-12-07 | 2013-06-06 | Method for extracting semantic distance from mathematical sentences and classifying mathematical sentences by semantic distance, device therefor, and computer readable recording medium |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20100124384 | 2010-12-07 | ||
KR10-2010-0124384 | 2010-12-07 | ||
KR10-2011-0130024 | 2011-12-07 | ||
KR1020110130024A KR101431530B1 (en) | 2010-12-07 | 2011-12-07 | Method for Extracting Semantic Distance of Mathematical Sentence and Classifying Mathematical Sentence by Semantic Distance, Apparatus And Computer-Readable Recording Medium with Program Therefor |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/911,950 Continuation US9424251B2 (en) | 2010-12-07 | 2013-06-06 | Method for extracting semantic distance from mathematical sentences and classifying mathematical sentences by semantic distance, device therefor, and computer readable recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2012077979A2 true WO2012077979A2 (en) | 2012-06-14 |
WO2012077979A3 WO2012077979A3 (en) | 2012-10-04 |
Family
ID=46207606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2011/009439 WO2012077979A2 (en) | 2010-12-07 | 2011-12-07 | Method for extracting semantic distance from mathematical sentences and classifying mathematical sentences by semantic distance, device therefor, and computer readable recording medium |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2012077979A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008465A (en) * | 2019-01-25 | 2019-07-12 | 网经科技(苏州)有限公司 | The measure of sentence semantics distance |
-
2011
- 2011-12-07 WO PCT/KR2011/009439 patent/WO2012077979A2/en active Application Filing
Non-Patent Citations (2)
Title |
---|
J. MISUTKA: 'Extending Full Text Search Engine for Mathematical Content' PROCEEDINGS OF TOWARDS DIGITAL MATHEMATICS LIBRARY 16 December 2008, pages 55 - 67 * |
M. ADEEL: 'MATH GO! Prototype of a Content Baed Mathematical Formula Search Engine' JOURNAL OF THEORETICAL AND APPLIED INFORMATION TECHNOLOGY vol. 4, no. 10, 30 October 2008, pages 1002 - 1012 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008465A (en) * | 2019-01-25 | 2019-07-12 | 网经科技(苏州)有限公司 | The measure of sentence semantics distance |
Also Published As
Publication number | Publication date |
---|---|
WO2012077979A3 (en) | 2012-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101431530B1 (en) | Method for Extracting Semantic Distance of Mathematical Sentence and Classifying Mathematical Sentence by Semantic Distance, Apparatus And Computer-Readable Recording Medium with Program Therefor | |
Hamborg et al. | Giveme5w1h: A universal system for extracting main events from news articles | |
WO2014025135A1 (en) | Method for detecting grammatical errors, error detecting apparatus for same, and computer-readable recording medium having the method recorded thereon | |
JP4654776B2 (en) | Question answering system, data retrieval method, and computer program | |
WO2014030834A1 (en) | Method for detecting grammatical errors, error detection device for same, and computer-readable recording medium having method recorded thereon | |
WO2011065617A1 (en) | Semantic syntax tree kernel-based processing system and method for automatically extracting semantic correlations between scientific and technological core entities | |
EP2354967A1 (en) | Semantic textual analysis | |
US20050060306A1 (en) | Apparatus, method, and program for retrieving structured documents | |
Yoko et al. | Extracting definitions of mathematical expressions in scientific papers | |
US20040128292A1 (en) | Search data management | |
KR101709055B1 (en) | Apparatus and Method for Question Analysis for Open web Question-Answering | |
CN112733547A (en) | Chinese question semantic understanding method by utilizing semantic dependency analysis | |
CN115455202A (en) | Emergency event affair map construction method | |
WO2018101506A1 (en) | Document multi-classification device and document multi-classification method for classifying one document into plurality of categories by using lexico-semantic pattern obtained by reconfiguring semantic category of words constituting sentence | |
JP2000276487A (en) | Method and device for instance storage and retrieval, computer readable recording medium for recording instance storage program, and computer readable recording medium for recording instance retrieval program | |
Garrido et al. | GEO-NASS: A semantic tagging experience from geographical data on the media | |
KR101476225B1 (en) | Method for Indexing Natural Language And Mathematical Formula, Apparatus And Computer-Readable Recording Medium with Program Therefor | |
US20110270862A1 (en) | Information processing apparatus and information processing method | |
WO2012077979A2 (en) | Method for extracting semantic distance from mathematical sentences and classifying mathematical sentences by semantic distance, device therefor, and computer readable recording medium | |
KR101802051B1 (en) | Method and system for constructing schema on natural language processing and knowledge database thereof | |
de Carvalho et al. | Extracting semantic information from patent claims using phrasal structure annotations | |
Nguyen et al. | A vietnamese question answering system | |
Zakria et al. | Relation extraction from arabic wikipedia | |
JP2003167898A (en) | Information retrieving system | |
Klang et al. | Linking, searching, and visualizing entities in wikipedia |
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: 11846298 Country of ref document: EP Kind code of ref document: A2 |
|
NENP | Non-entry into the national phase in: |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 18-09-2013) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 11846298 Country of ref document: EP Kind code of ref document: A2 |