[go: up one dir, main page]

US20210064825A1 - Information processing apparatus, information processing method, and computer-readable recording medium - Google Patents

Information processing apparatus, information processing method, and computer-readable recording medium Download PDF

Info

Publication number
US20210064825A1
US20210064825A1 US16/961,079 US201916961079A US2021064825A1 US 20210064825 A1 US20210064825 A1 US 20210064825A1 US 201916961079 A US201916961079 A US 201916961079A US 2021064825 A1 US2021064825 A1 US 2021064825A1
Authority
US
United States
Prior art keywords
inference
model
unit
formal language
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US16/961,079
Other versions
US11625531B2 (en
Inventor
Kunihiko Sadamasa
Yuzuru Okajima
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Assigned to NEC CORPORATION reassignment NEC CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: OKAJIMA, YUZURU, SADAMASA, KUNIHIKO
Publication of US20210064825A1 publication Critical patent/US20210064825A1/en
Application granted granted Critical
Publication of US11625531B2 publication Critical patent/US11625531B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Definitions

  • the present invention relates to an information processing apparatus and an information processing method for optimizing parameters that are used when text in a natural language is converted into an expression in a formal language, as well as a computer-readable recording medium in which a program for optimizing parameters that are used when text in a natural language is converted into an expression in a formal language is recorded.
  • a knowledge base that is used in such a system commonly has a structure in which knowledge corresponding to a query written in a formal language can be extracted.
  • RDF Resource Description Framework
  • semantic parsers are used to convert a natural language into a formal language.
  • question answering systems that use a knowledge base convert a user's question expressed in a natural language into a query expression written in a formal language using a semantic parser, extract, from the knowledge base, an answer corresponding to the query expression obtained by the conversion, and present the answer to the user.
  • Non-patent Document 1 questions in a natural language and correct answers to the questions are prepared in advance, and the questions in the natural language prepared in advance are converted into a plurality of query expressions by a semantic parser.
  • the semantic parser converts (the questions in) the natural language into query expressions written in a formal language based on parameters set in advance.
  • answers respectively corresponding to a plurality of query expressions and generated by the semantic parser are extracted from the knowledge base, and the plurality of extracted answers are compared with the above correct answers prepared in advance. Then, the above-mentioned parameters are updated based on the result of the comparison between the plurality of extracted answers and the correct answers prepared in advance so as to obtain a correct answer to a user's question.
  • Non-patent Document 1 Percy Liang, Michael Jordan, and Dan Klein. 2011. Learning dependency-based compositional semantics. In Proceedings of the Human Language Technology Conference of the Association for Computational Linguistics, pages 590-599, Portland, Oreg.
  • Non-patent Document 1 the technique in Non-patent Document 1 is considered to be useful for a system that presents an answer determined unambiguously for a question input by the user.
  • a system that presents an inference result that is based on a natural language input by the user it is difficult to present an appropriate inference result simply by using the technique of Non-patent Document 1 alone.
  • An example object of the invention is to provide an information processing apparatus, an information processing method, and a computer-readable recording medium that can optimize parameters that are used when a natural language is converted into a formal language in a system that performs inference that is based on a natural language input by the user.
  • an information processing apparatus includes:
  • an acceptance unit configured to accept one or more pieces of text in a natural language and a model answer of an inference result that is obtained from the one or more pieces of text
  • a formal language generation unit configured to generate, as one or more training expressions, one or more expressions written in a formal language corresponding to the one or more pieces of text accepted by the acceptance unit, based on a parameter prepared in advance and the one or more pieces of text;
  • an inference unit configured to execute at least one inference out of deductive inference and abduction on the one or more training expressions generated by the formal language generation unit, using a knowledge base prepared in advance;
  • an update unit configured to update the parameter such that an inference result that matches the model answer is likely to be obtained through the inference that is performed by the inference unit.
  • an information processing method includes;
  • a computer-readable recording medium includes a program recorded thereon, the program including instructions that cause a computer to carry out:
  • FIG. 1 is a block diagram showing an information processing apparatus according to an example embodiment of the invention.
  • FIG. 2 is a block diagram showing a specific configuration of an information processing apparatus according to an example embodiment of the invention.
  • FIG. 3 is a diagram showing an example of features set in advance.
  • FIG. 4A is a diagram for illustrating conversion operations in a formal language generation unit.
  • FIG. 4B is a diagram for illustrating conversion operations in a formal language generation unit.
  • FIG. 5A is a diagram showing examples of training expressions and generation probabilities thereof.
  • FIG. 5B is a diagram showing examples of training expressions and generation probabilities thereof.
  • FIG. 6 is a diagram showing an example of combinations of training expressions for which inference is executed.
  • FIG. 7 is a flowchart showing operations of an information processing apparatus according to an example embodiment of the invention.
  • FIG. 8 is a flowchart showing operations of an information processing apparatus according to Modified Example 1 of the invention.
  • FIG. 9 is a flowchart showing operations of an information processing apparatus according to Modified Example 3 of the invention.
  • FIG. 10 is a block diagram showing an example of a computer that realizes an information processing apparatus according to an example embodiment of the invention.
  • FIGS. 1 to 10 an information processing apparatus, an information processing method and a program according to an example embodiment of the invention is described, with reference to FIGS. 1 to 10 .
  • FIG. 1 is a block diagram showing an information processing apparatus 10 according to the example embodiment.
  • the information processing apparatus 10 in the example embodiment is an apparatus for optimizing parameters that are used when one or more pieces of text in a natural language are converted into one or more expressions written in a formal language.
  • the information processing apparatus 10 includes an acceptance unit 12 , a formal language generation unit 14 , an inference unit 16 , and an update unit 18 .
  • One or more pieces of text written in a natural language and a model answer of an inference result obtained from the pieces of text are input to the acceptance unit 12 .
  • the acceptance unit 12 transmits the one or more accepted pieces of text to the formal language generation unit 14 , and transmits the accepted model answer to the update unit 18 .
  • the formal language generation unit 14 generates, as one or more training expressions, one or more expressions written in a formal language corresponding to the above pieces of text transmitted from the acceptance unit 12 , based on parameters prepared in advance and the above one or more pieces of text.
  • the formal language generation unit 14 transmits the one or more generated training expressions to the inference unit 16 .
  • the formal language generation unit 14 converts a piece of text in a natural language into an expression in a formal language using machine learning such as that that uses a log-linear model.
  • the formal language generation unit 14 can be configured similarly to a known converter that converts a piece of text in a natural language input by the user into an expression in a formal language, for example.
  • the formal language generation unit 14 can be constructed using the technique disclosed in Non-patent Document 1, for example.
  • the inference unit 16 executes at least one inference out of deductive inference and abduction on the one or more training expressions transmitted from the formal language generation unit 14 , using a knowledge base prepared in advance.
  • the knowledge base stores, for example, at least one relationship out of a causal relationship, a temporal before-after relationship, a semantic super-sub relationship, and an implicational relationship between the antecedent and consequent item.
  • the inference unit 16 transmits a result obtained through the inference, to the update unit 18 .
  • the update unit 18 compares the inference result transmitted from the inference unit 16 with the model answer transmitted from the acceptance unit 12 , and updates the above-mentioned parameters such that an inference result that matches the model answer is likely to be obtained through the inference performed by the inference unit 16 .
  • an expression in a formal language is obtained as a result of inputting a piece of text written in a natural language to the formal language generation unit 14 , and inference is executed by the inference unit 16 based on the obtained expression in the formal language. Parameters are then updated such that an inference result that matches a model answer set in advance is likely to be obtained through the above inference performed by the inference unit 16 . In this manner, it is possible to optimize parameters that are used when one or more pieces of text in a natural language are converted into one or more expressions in a formal language.
  • FIG. 2 is a block diagram showing a specific configuration of an information processing apparatus according to an example embodiment of the invention. Note that a case is described below in which one or more pieces of text in a natural language are converted into a Prolog formal language, but another formal language may also be used.
  • the information processing apparatus 10 also includes an output unit 20 in addition to the acceptance unit 12 , the formal language generation unit 14 , the inference unit 16 , and the update unit 18 , which have been described above.
  • the information processing apparatus 10 is connected to a parameter storage unit 102 and a knowledge base storage unit 104 .
  • one or more pieces of text written in a natural language and a model answer of an inference result obtained from the one or more pieces of text are input to the acceptance unit 12 .
  • the acceptance unit 12 transmits the one or more pieces of accepted text to the formal language generation unit 14 , and transmits the accepted model answer to the update unit 18 .
  • the formal language generation unit 14 generates, as one or more training expressions, one or more expressions written in a formal language corresponding to the above one or more pieces of text transmitted from the acceptance unit 12 , based on parameters stored in the parameter storage unit 102 (to be described later) in advance and the above one or more pieces of text.
  • the formal language generation unit 14 transmits the one or more generated training expressions to the inference unit 16 .
  • the formal language generation unit 14 converts one or more pieces of text written in a natural language into one or more training expressions written in a formal language, for example, based on a plurality of pre-set features (characteristics) characterizing a pair of text that is input and an expression in a formal language that is output, using machine learning such as that that uses a log-linear model.
  • a plurality of combinations of surface layer words and deep layer words as shown in FIG. 3 are set as features in advance.
  • surface layer words in the example embodiment refer to words present in text in a natural language that is input to the acceptance unit 12 and words that are present as text in a knowledge base stored in the knowledge base storage unit 104 .
  • a deep layer word is a predicate corresponding to a surface layer word, and refers to a predicate included in a knowledge base stored in the knowledge base storage unit 104 , and a word that is present as a piece of text in that knowledge base.
  • a predicate with an argument of 0 to 2 is set for each surface layer word.
  • a numeral after a slash among the characters in a deep layer word is an argument.
  • the argument in a deep layer word “grandfather/2” is 2, for example. Note that a predicate with an argument of three or higher may also be set for each surface layer word.
  • a weight is set for each feature.
  • a weight added to each feature is a parameter.
  • weights of respective combinations (features) of surface layer words and deep layer words that can be associated with each other by using a translation dictionary, a synonym dictionary, and the like are set higher, and weights of other combinations (features) are set lower.
  • the above-described features and weights (parameters) added to the respective features are stored in the parameter storage unit 102 .
  • surface layer words and deep layer words shown in FIG. 3 are merely exemplary, and the number of features and a combination of surface layer words and deep layer words that constitute each feature are not limited to the example shown in FIG. 3 .
  • the formal language generation unit 14 converts surface layer words into deep layer words based on features set in advance, for example, and converts a piece of text in a natural language into an expression in a formal language by substituting an argument of a deep layer word with another deep layer word.
  • An example of a conversion operation of the formal language generation unit 14 is described briefly below.
  • FIG. 4A and FIG. 4 B are diagrams for illustrating examples of a conversion operation in the formal language generation unit 14 . Note that, a case in which “loss of emotion” is input in the formal language generation unit 14 as a piece of text in a natural language is described with reference to FIG. 4A and FIG. 4B .
  • the formal language generation unit 14 converts the surface layer word “loss” into a deep layer word “loss/1”, and converts the surface layer word “emotion” into a deep layer word “emotion” based on features set in advance, for example. Then, as a result of the argument of the deep layer word “loss/1” being substituted with “emotion” that is an atom (predicate that includes no argument), a training expression “loss (emotion)” written in a formal language is generated. Also, as shown in FIG.
  • the formal language generation unit 14 converts the surface layer word “loss” into a deep layer word “decrease/2”, and converts the surface layer word “emotion” into a deep layer word “emotion”, for example.
  • the argument in the deep layer word “decrease/2” is then substituted with an atom, and a blank argument is further substituted with an atom indicating an entry (in the example embodiment, “e1”), and, as a result, a training expression “decrease (e1,emotion)” written in the formal language is generated. Note that, in the example shown in FIG. 4A and FIG.
  • the functional word “of” is converted into “null” indicating that there is no corresponding deep layer word, by the formal language generation unit 14 , and conversion of the functional word “of” into a formal language can be omitted.
  • the formal language in FIG. 4A and FIG. 4B is exemplary, and the formal language generation unit 14 generates a plurality of training expressions based on features set in advance.
  • the formal language generation unit 14 calculates a probability that each training expression to be output is obtained (hereinafter, also referred to as “generation probability of each training expression”), based on the weights of the features (parameters) set as described above.
  • FIG. 5A shows an example of training expressions generated when “Ichiro is Taro's father.” is input to the formal language generation unit 14 as a piece of text in a natural language and generation probabilities of the training expressions
  • FIG. 5B shows an example of training expressions generated when “Jiro is Ichiro's father.” is input to the formal language generation unit 14 as a piece of text in a natural language and the generation probabilities of the training expressions.
  • the formal language generation unit 14 transmits each training expression and the generation probability of the training expression obtained through calculation, to the inference unit 16 .
  • the technique disclosed in Non-patent Document 1 can be used for the formal language generation unit 14 , and thus a detailed description of the formal language generation unit 14 is omitted.
  • the formal language generation unit 14 selects features that have a weight of a predetermined threshold value or higher, and performs conversion.
  • the formal language generation unit 14 may also transmit, for example, only a predetermined number of training expressions selected in the order of highest generation probability, from among a plurality of generated training expressions, to the inference unit 16 along with the probabilities of the training expressions.
  • the formal language generation unit 14 may also output, for example, a predetermined number of randomly sampled training expressions, from among a plurality of generated training expressions, to the inference unit 16 .
  • the inference unit 16 executes at least one inference out of deductive inference and abduction, on one or more training expressions transmitted from the formal language generation unit 14 , using the knowledge base stored in the knowledge base storage unit 104 .
  • the inference unit 16 executes inference on all of the combinations of training expressions generated from different pieces of text, for example.
  • the formal language generation unit 14 generates three training expressions from the text “Ichiro is Taro's father”, and three training expressions from the text “Jiro is Ichiro's father”.
  • the inference unit 16 executes inference on nine combinations of training expressions as shown in FIG. 6 .
  • the inference unit 16 may execute inference on a predetermined number of combinations of training expressions randomly sampled from among all of the combinations of the training expressions generated from different pieces of text. In addition, the inference unit 16 may also execute inference on a predetermined number of combinations of training expressions sampled based on parameters when training expressions are generated, from among all of the combinations of the training expressions generated from different pieces of text.
  • the inference unit 16 transmits a result obtained by inference, to the update unit 18 .
  • the update unit 18 compares the inference result transmitted from the inference unit 16 with a model answer transmitted from the acceptance unit 12 , and updates parameters stored in the parameter storage unit 102 such that an inference result that matches the model answer is likely to be obtained through inference performed by the inference unit 16 .
  • a description thereof is given below with an example.
  • the inference unit 16 can obtain “grandfather (Jiro, Taro)” as an inference result, from a first combination (combination of “father (Ichiro, Taro)” and “father (Jiro, Ichiro)”) in FIG. 6 .
  • the inference result transmitted from the inference unit 16 to the update unit 18 and a model answer transmitted from the acceptance unit 12 to the update unit 18 match.
  • the update unit 18 updates parameters (in the example embodiment, the weights of features) stored in the parameter storage unit 102 such that a combination of training expressions from which the inference result “grandfather (Jiro, Taro)” that matches the model answer can be obtained is likely to be generated by the formal language generation unit 14 .
  • parameters stored in the parameter storage unit 102 are updated such that the text “Ichiro is Taro's father.” is likely to be converted into the training expression “father (Ichiro, Taro)”, and the text “Jiro is Ichiro's father” is likely to be converted into the training expression “father (Jiro, Ichiro)”.
  • the update unit 18 may also update parameters such that the weights of features based on which the text “Ichiro is Taro's father” is converted into the training expression “father (Ichiro, Taro)” and the weights of features based on which the text “Jiro is Ichiro's father.” is converted into the training expression “father (Jiro, Ichiro)” are increased.
  • the update unit 18 may also update parameters such that the weights of features that do not contribute to conversion from the text “Ichiro is Taro's father” into the training expression “father (Ichiro, Taro)” and the weights of features that do not contribute to conversion from the text “Jiro is Ichiro's father” into the training expression “father (Jiro, Ichiro)” are reduced.
  • the update unit 18 may update parameters such that the weights of features based on which a piece of text in a natural language is converted into a correct expression are increased, or may also update parameters such that the weights of features that do not contribute to conversion from a piece of text in a natural language into a correct expression are reduced. Note that, although a detailed description is omitted, an algorithm described in Non-patent Document 1 can be used for updating of parameters that is performed by the update unit 18 , for example.
  • the output unit 20 outputs parameters updated by the update unit 18 .
  • the parameters output from the output unit 20 and updated parameters stored in the parameter storage unit 102 can also be used in an apparatus other than the information processing apparatus 10 (for example, a known converter).
  • the output unit 20 outputs parameters stored in the parameter storage unit 102 , when the number of updates performed by the update unit 18 reaches a designated number set in advance, for example.
  • the update unit 18 may update parameters stored in the parameter storage unit 102 such that a plurality of training expressions corresponding to a plurality of inference results that match a plurality of model answers are likely to be generated by the formal language generation unit 14 , for example. Note that inference results that match all of a plurality of model answers do not need to be obtained through inference performed by the inference unit 16 .
  • the update unit 18 may update parameters stored in the parameter storage unit 102 such that a training expression corresponding to an inference result that matches one of a plurality of model answers is likely to be generated by the formal language generation unit 14 , for example.
  • one piece of text or three or more pieces of text may also be input to the acceptance unit 12 .
  • a plurality of training expressions are generated by the formal language generation unit 14 based on that one piece of text. Inference is then executed on each of the plurality of training expressions, and, in response to a condition that an inference result that matches the model answer is obtained, parameters stored in the parameter storage unit 102 are updated by the update unit 18 .
  • one or more training expressions are generated for each piece of text by the formal language generation unit 14 .
  • inference is executed on all of the combinations of training expressions generated from different pieces of text, or a combination of randomly selected training expressions, and, when an inference result that matches the model answer is obtained, parameters stored in the parameter storage unit 102 are updated by the update unit 18 .
  • FIG. 7 is a flowchart showing operations of an information processing apparatus in an example embodiment of the invention.
  • FIGS. 1 to 6 is referred to as appropriate.
  • an information processing method is carried out as a result of causing the information processing apparatus 10 to operate.
  • a description of the information processing method in the example embodiment is replaced with the following description of operations of the information processing apparatus 10 .
  • the inference unit 16 executes inference on a predetermined number of training expressions randomly sampled from among one or more training expressions generated from one or more pieces of text (or a predetermined number of randomly sampled combinations of training expressions).
  • the inference unit 16 may execute inference on training expressions sampled based on parameters (or a combination of training expressions sampled based on parameters), for example.
  • the acceptance unit 12 accepts one or more pieces of text written in a natural language and a model answer of an inference result (step S 1 ).
  • the formal language generation unit 14 generates one or more training expressions (expressions written in a formal language) corresponding to the one or more pieces of text accepted by the acceptance unit 12 (step S 2 ).
  • the inference unit 16 executes inference on one or more training expressions randomly sampled from among the one or more training expressions generated by the formal language generation unit 14 (or one or more combinations of randomly sampled training expressions), using a knowledge base stored in the knowledge base storage unit 104 , and obtains one or more inference results (step S 3 ).
  • the update unit 18 compares the one or more inference results obtained by the inference unit 16 with the model answer input to the acceptance unit 12 , and determines whether or not an inference result that matches the model answer has been obtained (step S 4 ).
  • step S 4 If it is determined in step S 4 that an inference result that matches the model answer has been obtained, the update unit 18 updates parameters stored in the parameter storage unit 102 as described above (step S 5 ). Note that, in step S 5 , as described above, for example, the update unit 18 may update parameters such that the weights of features, based on which text in a natural language is converted into a correct expression, are increased, or may update parameters such that the weights of features, based on which text in a natural language is converted into a training expression different from the correct expression, are reduced.
  • the output unit 20 determines whether or not the number of updates performed by the update unit 18 has reached a designated number of times set in advance (step S 6 ). If the number of updates has reached the designated number, the output unit 20 outputs parameters (step S 7 ).
  • step S 4 If it is determined in step S 4 that an inference result that matches the model answer has not been obtained, or if it is determined in step S 6 that the number of updates has not reached the designated number, the process in step S 2 is executed again, and a training expression is newly generated by the formal language generation unit 14 . Subsequently, the above-described processing is repeatedly executed. Note that, if it is determined in step S 4 that an inference result that matches the model answer has not been obtained, the procedure may return to the process step S 1 .
  • step S 4 the update unit 18 compares an inference result obtained by the inference unit 16 with a model answer input to the acceptance unit 12 , and determines whether or not an inference result that matches the model answer has been obtained.
  • content of processing that is performed by the update unit 18 is not limited to the above-described example.
  • the update unit 18 determines whether or not an inference result that matches at least one expression out of the plurality of expressions included in the model answer has been obtained through inference performed by the inference unit 16 , in step S 4 , as shown in FIG. 8 .
  • the update unit 18 determines whether or not at least one of “father (Ichiro, Taro)” and “age (Ichiro, 30)” has been obtained as an inference result through inference performed by the inference unit 16 .
  • step S 4 if an inference result that matches at least one expression out of the plurality of expressions included in the model answer has been obtained, the update unit 18 updates parameters such that the inference result that matches at least one expression is likely to be obtained through inference performed by the inference unit 16 (step S 5 ). Specifically, parameters stored in the parameter storage unit 102 are updated such that the training expression from which the inference result that matches at least one expression can be obtained is likely to be generated by the formal language generation unit 14 .
  • step S 4 if an inference result that matches at least one expression out of the plurality of expressions included in the model answer has not been obtained, the process in step S 2 is executed again, and training expressions are newly generated by the formal language generation unit 14 . The above-described processing is then executed repeatedly. Note that the content of processes other than the process in step S 4 is similar to that described with reference to FIG. 7 , and thus a description thereof is omitted. In addition, if it is determined in step S 4 that an inference result that matches at least one expression out of the plurality of expressions included in the model answer has not been obtained, the procedure may return to the process in step S 1 .
  • step S 6 determines in step S 6 whether or not the number of updates performed by the update unit 18 has reached the designated number, but the process in step S 6 is not limited to the above-described example.
  • a configuration may also be adopted in which, in step S 6 , if the above generation probability of a correct expression that is based on updated parameters is larger than the generation probability of a training expression different from the correct expression, the output unit 20 makes a determination of Yes, and if the generation probability of the correct expression is smaller than or equal to the generation probability of a training expression other than the correct expression, the output unit 20 makes a determination of No.
  • a configuration may also be adopted in which, in step S 6 , if the smallest value of the difference between the above generation probability of the correct expression that is based on updated parameters and the generation probability of a training expression other than the correct expression is larger than a threshold value set in advance, the output unit 20 makes a determination of Yes, and, if the above smallest value is smaller than or equal to the threshold value, makes a determination of No.
  • the inference unit 16 may also perform probabilistic inference.
  • the probability that a model answer is obtained from one or more training expressions generated by the formal language generation unit 14 is calculated in step S 3 .
  • a probability (score) that a model answer is obtained is calculated for each combination.
  • a probability that a model answer is obtained can be calculated using an MLN (Markov Logic Network), for example, with training expressions generated by the formal language generation unit 14 serving as inputs (nodes).
  • MLN Markov Logic Network
  • sampling is performed such that, for example, regarding the generation probability of each training expression (probability that each training expression is obtained) described with reference to FIG. 5A and FIG. 5B , the node of the training expression is true, and the periphery probability of the node corresponding to the model answer can be calculated as a probability (score) that the model answer is obtained.
  • the update unit 18 determines in step S 4 whether or not any one of scores calculated by the inference unit 16 for each combination of training expressions (a probability that the model answer is obtained) is higher than the highest value of scores calculated previously. If any of the scores calculated by the inference unit 16 is higher than the highest value of the scores calculated previously, the update unit 18 updates parameters such that a training expression from which the score can be obtained is likely to be generated by the formal language generation unit 14 (step S 5 ). In other words, parameters stored in the parameter storage unit 102 are updated such that the generation probability of a training expression, based on which the inference unit 16 can obtain a score that is higher than the highest value of the scores calculated previously, is increased. Note that parameters can be updated using, for example, an algorithm disclosed in Non-patent Document 1, and thus a detailed description thereof is omitted.
  • step S 6 determination is performed as to whether or not any one of scores currently calculated by the inference unit 16 exceeds a predetermined threshold value. If it is determined in step S 6 that any one of the scores calculated by the inference unit 16 exceeds the predetermined threshold value, the output unit 20 outputs parameters updated by the update unit 18 (step S 7 ).
  • step S 4 If it is determined in step S 4 that none of the scores calculated by the inference unit 16 is higher than the highest value of the scores previously calculated, or, if it is determined in step S 6 that none of the scores calculated by the inference unit 16 exceeds the threshold value, the process in step S 2 is executed again, and training expressions are newly generated by the formal language generation unit 14 . Subsequently, the above-described processing is repeatedly executed. Note that content of processes other than those in steps S 4 and S 6 is similar to that described with reference to FIG. 7 , and thus a detailed description thereof is omitted.
  • the value of a score calculated by the inference unit 16 increases as a result of some pieces of text out of a plurality of pieces of text being converted into a proper formal language. Therefore, even if only some pieces of text of a plurality of pieces of text (for example, several thousands of pieces of text) are converted into proper expressions in a formal language by the formal language generation unit 14 , parameters stored in the parameter storage unit 102 can be updated.
  • the program according to the example embodiment of the invention need only be a program that causes a computer to execute steps S 1 to S 7 shown in FIG. 7, 8 , or 9 .
  • the information processing apparatus and the information processing method according to the example embodiment can be realized, by this program being installed on a computer and executed.
  • the CPU Central Processing Unit
  • the CPU which is an information processing apparatus, performs processing, while functioning as the acceptance unit 12 , the formal language generation unit 14 , the inference unit 16 , the update unit 18 , and the output unit 20 .
  • the program according to the example embodiment may be executed by a computer system built from a plurality of computers.
  • each of the computers may function as one of the acceptance unit 12 , the formal language generation unit 14 , the inference unit 16 , the update unit 18 , and the output unit 20 .
  • FIG. 10 is a block diagram showing an example of a computer that realizes the information processing apparatus according to the example embodiment of the invention.
  • a computer 110 includes a CPU 111 , a main memory 112 , a storage device 113 , an input interface 114 , a display controller 115 , a data reader/writer 116 , and a communication interface 117 . These units are connected in a manner that enables data communication therebetween, via a bus 121 .
  • the computer 110 may include a GPU (Graphics Processing Unit) or an FPGA (Field-Programmable Gate Array), in addition to the CPU 111 or instead of the CPU 111 .
  • the CPU 111 implements various computational operations, by extracting programs (code) according to the example embodiment that are stored in the storage device 113 in the main memory 112 , and executing these programs in predetermined order.
  • the main memory 112 typically, is a volatile storage device such as a DRAM (Dynamic Random Access Memory).
  • programs according to the example embodiment are provided in a state of being stored on a computer-readable recording medium 120 . Note that programs according to the example embodiment may be distributed over the Internet connected via the communication interface 117 .
  • a semiconductor storage device such as a flash memory is given as a specific example of the storage device 113 , other than a hard disk drive.
  • the input interface 114 mediates data transmission between the CPU 111 and input devices 118 such as a keyboard and a mouse.
  • the display controller 115 is connected to a display device 119 and controls display by the display device 119 .
  • the data reader/writer 116 mediates data transmission between the CPU 111 and the recording medium 120 , and executes readout of programs from the recording medium 120 and writing of processing results of the computer 110 to the recording medium 120 .
  • the communication interface 117 mediates data transmission between the CPU 111 and other computers.
  • a general-purpose semiconductor storage device such as a CF (Compact Flash (registered trademark)) card or an SD (Secure Digital) card, a magnetic storage medium such as a flexible disk, and an optical storage medium such as a CD-ROM (Compact Disk Read Only Memory) are given as specific examples of the recording medium 120 .
  • CF Compact Flash (registered trademark)
  • SD Secure Digital
  • CD-ROM Compact Disk Read Only Memory
  • the information processing apparatus is also realizable by using hardware corresponding to the respective units, rather than by a computer on which programs are installed. Furthermore, the information processing apparatus may be realized in part by programs, and the remaining portion may be realized by hardware.
  • An information processing apparatus comprising:
  • an acceptance unit configured to accept one or more pieces of text in a natural language and a model answer of an inference result that is obtained from the one or more pieces of text
  • a formal language generation unit configured to generate, as one or more training expressions, one or more expressions written in a formal language corresponding to the one or more pieces of text accepted by the acceptance unit, based on a parameter prepared in advance and the one or more pieces of text;
  • an inference unit configured to execute at least one inference out of deductive inference and abduction on the one or more training expressions generated by the formal language generation unit, using a knowledge base prepared in advance;
  • an update unit configured to update the parameter such that an inference result that matches the model answer is likely to be obtained through the inference performed by the inference unit.
  • the inference unit calculates a probability that the model answer is obtained from the one or more training expressions by executing probabilistic inference
  • the update unit updates the parameter such that the probability that is calculated by the inference unit is increased.
  • model answer includes a plurality of expressions written in a formal language
  • the update unit updates, in response to a condition that an inference result that matches at least one expression out of the plurality of expressions included in the model answer is obtained through the inference performed by the inference unit, the parameter such that the inference result that matches the at least one expression is likely to be obtained through the inference performed by the inference unit.
  • the formal language generation unit generates a plurality of training expressions for each piece of text accepted by the acceptance unit
  • the inference unit executes the at least one inference on the plurality of training expressions generated for each piece of text.
  • the update unit updates, in response to a condition that the inference unit obtains an inference result that matches the model answer, the parameter such that the training expression from which the inference result that matches the model answer is obtained is likely to be generated by the formal language generation unit.
  • An information processing method comprising:
  • the parameter is updated such that the probability that is calculated in the (c) step is increased.
  • model answer includes a plurality of expressions written in a formal language
  • the parameter is updated such that the inference result that matches the at least one expression is likely to be obtained through the inference in the (c) step, in response to a condition that an inference result that matches at least one expression out of the plurality of expressions included in the model answer is obtained through the inference in the (c) step.
  • the at least one inference is executed on the plurality of training expressions generated for each piece of text.
  • the parameter is updated such that the training expression from which the inference result that matches the model answer is obtained is likely to be generated in the (b) step, in response to a condition that an inference result that matches the model answer is obtained in the (c) step.
  • a computer-readable recording medium that includes a program recorded thereon, the program including instructions that cause a computer to carry out:
  • the parameter is updated such that the probability that is calculated in the (c) step is increased.
  • model answer includes a plurality of expressions written in a formal language
  • the parameter is updated such that the inference result that matches the at least one expression is likely to be obtained through the inference in the (c) step, in response to a condition that an inference result that matches at least one expression out of the plurality of expressions included in the model answer is obtained through the inference in the (c) step.
  • the at least one inference is executed on the plurality of training expressions generated for each piece of text.
  • the parameter is updated such that the training expression from which the inference result that matches the model answer is obtained is likely to be generated in the (b) step, in response to a condition that an inference result that matches the model answer is obtained in the (c) step.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

An information processing apparatus 10 includes an acceptance unit 12, a formal language generation unit 14, an inference unit 16, and an update unit 18. The formal language generation unit 14 generates training expressions in a formal language based on parameters prepared in advance and pieces of text accepted by the acceptance unit 12. The inference unit 16 executes at least one inference out of deductive inference and abduction on the above training expressions using a knowledge base prepared in advance. The update unit 18 compares an inference result of the inference unit 16 with a model answer input in advance, and updates parameters such that an inference result that matches the model answer is likely to be obtained through inference performed by the inference unit 16.

Description

    TECHNICAL FIELD
  • The present invention relates to an information processing apparatus and an information processing method for optimizing parameters that are used when text in a natural language is converted into an expression in a formal language, as well as a computer-readable recording medium in which a program for optimizing parameters that are used when text in a natural language is converted into an expression in a formal language is recorded.
  • BACKGROUND ART
  • In recent years, it has become possible to acquire large-scale knowledge bases via the Internet, and research on systems for performing question-answering using a knowledge base is advancing. A knowledge base that is used in such a system commonly has a structure in which knowledge corresponding to a query written in a formal language can be extracted. For example, Resource Description Framework (RDF) is used as a formal language.
  • Even when a question answering system that uses such a knowledge base, to which an inquiry can be made in a formal language, is used, a user's question is commonly expressed in a natural language. Therefore, in order to extract a piece of knowledge corresponding to the user's question from the knowledge base, the user's question expressed in a natural language needs to be converted into a formal language.
  • In view of this, conventionally, semantic parsers are used to convert a natural language into a formal language. Commonly, question answering systems that use a knowledge base convert a user's question expressed in a natural language into a query expression written in a formal language using a semantic parser, extract, from the knowledge base, an answer corresponding to the query expression obtained by the conversion, and present the answer to the user.
  • Incidentally, in order to extract an appropriate answer to a user's question from a knowledge base, there is a need to properly understand the semantic structure of the user's question, and convert the question in a natural language into a query expression suitable for the knowledge base. However, expressions in a natural language vary greatly, and thus it is difficult to manually construct rules for appropriately converting a user's question in the natural language into a query expression.
  • In view of this, techniques for automatically constructing a semantic parser suitable for any knowledge base using machine learning have been proposed (for example, see Non-patent Document 1).
  • In the technique described in Non-patent Document 1, questions in a natural language and correct answers to the questions are prepared in advance, and the questions in the natural language prepared in advance are converted into a plurality of query expressions by a semantic parser. Specifically, the semantic parser converts (the questions in) the natural language into query expressions written in a formal language based on parameters set in advance. In addition, in the technique described in Non-patent Document 1, answers respectively corresponding to a plurality of query expressions and generated by the semantic parser are extracted from the knowledge base, and the plurality of extracted answers are compared with the above correct answers prepared in advance. Then, the above-mentioned parameters are updated based on the result of the comparison between the plurality of extracted answers and the correct answers prepared in advance so as to obtain a correct answer to a user's question.
  • LIST OF RELATED ART DOCUMENTS Non-Patent Document
  • Non-patent Document 1: Percy Liang, Michael Jordan, and Dan Klein. 2011. Learning dependency-based compositional semantics. In Proceedings of the Human Language Technology Conference of the Association for Computational Linguistics, pages 590-599, Portland, Oreg.
  • SUMMARY OF INVENTION Problems to be Solved by the Invention
  • Incidentally, the technique in Non-patent Document 1 is considered to be useful for a system that presents an answer determined unambiguously for a question input by the user. However, in a system that presents an inference result that is based on a natural language input by the user, it is difficult to present an appropriate inference result simply by using the technique of Non-patent Document 1 alone.
  • An example object of the invention is to provide an information processing apparatus, an information processing method, and a computer-readable recording medium that can optimize parameters that are used when a natural language is converted into a formal language in a system that performs inference that is based on a natural language input by the user.
  • In order to achieve the foregoing object, an information processing apparatus according to an example aspect of the invention includes:
  • an acceptance unit configured to accept one or more pieces of text in a natural language and a model answer of an inference result that is obtained from the one or more pieces of text;
  • a formal language generation unit configured to generate, as one or more training expressions, one or more expressions written in a formal language corresponding to the one or more pieces of text accepted by the acceptance unit, based on a parameter prepared in advance and the one or more pieces of text;
  • an inference unit configured to execute at least one inference out of deductive inference and abduction on the one or more training expressions generated by the formal language generation unit, using a knowledge base prepared in advance; and
  • an update unit configured to update the parameter such that an inference result that matches the model answer is likely to be obtained through the inference that is performed by the inference unit.
  • In addition, in order to achieve the foregoing object, an information processing method according to an example aspect of the invention includes;
  • (a) a step of accepting one or more pieces of text in a natural language and a model answer of an inference result that is obtained from the one or more pieces of text;
  • (b) a step of generating, as one or more training expressions, one or more expressions written in a formal language corresponding to the one or more pieces of text accepted in the (a) step, based on a parameter prepared in advance and the one or more pieces of text;
  • (c) a step of executing at least one inference out of deductive inference and abduction on the one or more training expressions generated in the (b) step, using a knowledge base prepared in advance; and
  • (d) a step of updating the parameter such that an inference result that matches the model answer is likely to be obtained through the inference in the (c) step.
  • Furthermore, in order to achieve the foregoing object, a computer-readable recording medium according to an example aspect of the invention includes a program recorded thereon, the program including instructions that cause a computer to carry out:
  • (a) a step of accepting one or more pieces of text in a natural language and a model answer of an inference result that is obtained from the one or more pieces of text;
  • (b) a step of generating, as one or more training expressions, one or more expressions written in a formal language corresponding to the one or more pieces of text accepted in the (a) step, based on a parameter prepared in advance and the one or more pieces of text;
  • (c) a step of executing at least one inference out of deductive inference and abduction on the one or more training expressions generated in the (b) step, using a knowledge base prepared in advance; and
  • (d) a step of updating the parameter such that an inference result that matches the model answer is likely to be obtained through the inference in the (c) step.
  • Advantageous Effects of the Invention
  • As described above, according to the invention, it is possible to optimize parameters that are used when a natural language is converted into a formal language in a system that performs inference that is based on a natural language input by the user.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram showing an information processing apparatus according to an example embodiment of the invention.
  • FIG. 2 is a block diagram showing a specific configuration of an information processing apparatus according to an example embodiment of the invention.
  • FIG. 3 is a diagram showing an example of features set in advance.
  • FIG. 4A is a diagram for illustrating conversion operations in a formal language generation unit.
  • FIG. 4B is a diagram for illustrating conversion operations in a formal language generation unit.
  • FIG. 5A is a diagram showing examples of training expressions and generation probabilities thereof.
  • FIG. 5B is a diagram showing examples of training expressions and generation probabilities thereof.
  • FIG. 6 is a diagram showing an example of combinations of training expressions for which inference is executed.
  • FIG. 7 is a flowchart showing operations of an information processing apparatus according to an example embodiment of the invention.
  • FIG. 8 is a flowchart showing operations of an information processing apparatus according to Modified Example 1 of the invention.
  • FIG. 9 is a flowchart showing operations of an information processing apparatus according to Modified Example 3 of the invention.
  • FIG. 10 is a block diagram showing an example of a computer that realizes an information processing apparatus according to an example embodiment of the invention.
  • EXAMPLE EMBODIMENTS Example Embodiment
  • Hereinafter, an information processing apparatus, an information processing method and a program according to an example embodiment of the invention is described, with reference to FIGS. 1 to 10.
  • Apparatus Configuration
  • FIG. 1 is a block diagram showing an information processing apparatus 10 according to the example embodiment. The information processing apparatus 10 in the example embodiment is an apparatus for optimizing parameters that are used when one or more pieces of text in a natural language are converted into one or more expressions written in a formal language.
  • The information processing apparatus 10 includes an acceptance unit 12, a formal language generation unit 14, an inference unit 16, and an update unit 18. One or more pieces of text written in a natural language and a model answer of an inference result obtained from the pieces of text are input to the acceptance unit 12. The acceptance unit 12 transmits the one or more accepted pieces of text to the formal language generation unit 14, and transmits the accepted model answer to the update unit 18.
  • The formal language generation unit 14 generates, as one or more training expressions, one or more expressions written in a formal language corresponding to the above pieces of text transmitted from the acceptance unit 12, based on parameters prepared in advance and the above one or more pieces of text. The formal language generation unit 14 transmits the one or more generated training expressions to the inference unit 16. In the example embodiment, the formal language generation unit 14 converts a piece of text in a natural language into an expression in a formal language using machine learning such as that that uses a log-linear model. Although a detailed description is omitted, the formal language generation unit 14 can be configured similarly to a known converter that converts a piece of text in a natural language input by the user into an expression in a formal language, for example. The formal language generation unit 14 can be constructed using the technique disclosed in Non-patent Document 1, for example.
  • The inference unit 16 executes at least one inference out of deductive inference and abduction on the one or more training expressions transmitted from the formal language generation unit 14, using a knowledge base prepared in advance. The knowledge base stores, for example, at least one relationship out of a causal relationship, a temporal before-after relationship, a semantic super-sub relationship, and an implicational relationship between the antecedent and consequent item. The inference unit 16 transmits a result obtained through the inference, to the update unit 18.
  • The update unit 18 compares the inference result transmitted from the inference unit 16 with the model answer transmitted from the acceptance unit 12, and updates the above-mentioned parameters such that an inference result that matches the model answer is likely to be obtained through the inference performed by the inference unit 16.
  • As described above, according to the example embodiment, an expression in a formal language is obtained as a result of inputting a piece of text written in a natural language to the formal language generation unit 14, and inference is executed by the inference unit 16 based on the obtained expression in the formal language. Parameters are then updated such that an inference result that matches a model answer set in advance is likely to be obtained through the above inference performed by the inference unit 16. In this manner, it is possible to optimize parameters that are used when one or more pieces of text in a natural language are converted into one or more expressions in a formal language.
  • Next, a configuration of an information processing apparatus according to an example embodiment of the invention is described in more detail with reference to FIG. 2. FIG. 2 is a block diagram showing a specific configuration of an information processing apparatus according to an example embodiment of the invention. Note that a case is described below in which one or more pieces of text in a natural language are converted into a Prolog formal language, but another formal language may also be used.
  • As shown in FIG. 2, the information processing apparatus 10 according to the example embodiment also includes an output unit 20 in addition to the acceptance unit 12, the formal language generation unit 14, the inference unit 16, and the update unit 18, which have been described above. In addition, in the example embodiment, the information processing apparatus 10 is connected to a parameter storage unit 102 and a knowledge base storage unit 104.
  • As described above, one or more pieces of text written in a natural language and a model answer of an inference result obtained from the one or more pieces of text are input to the acceptance unit 12. The acceptance unit 12 transmits the one or more pieces of accepted text to the formal language generation unit 14, and transmits the accepted model answer to the update unit 18.
  • The formal language generation unit 14 generates, as one or more training expressions, one or more expressions written in a formal language corresponding to the above one or more pieces of text transmitted from the acceptance unit 12, based on parameters stored in the parameter storage unit 102 (to be described later) in advance and the above one or more pieces of text. The formal language generation unit 14 transmits the one or more generated training expressions to the inference unit 16.
  • In the example embodiment, the formal language generation unit 14 converts one or more pieces of text written in a natural language into one or more training expressions written in a formal language, for example, based on a plurality of pre-set features (characteristics) characterizing a pair of text that is input and an expression in a formal language that is output, using machine learning such as that that uses a log-linear model.
  • In the example embodiment, for example, a plurality of combinations of surface layer words and deep layer words as shown in FIG. 3 are set as features in advance. Note that surface layer words in the example embodiment refer to words present in text in a natural language that is input to the acceptance unit 12 and words that are present as text in a knowledge base stored in the knowledge base storage unit 104. Also, a deep layer word is a predicate corresponding to a surface layer word, and refers to a predicate included in a knowledge base stored in the knowledge base storage unit 104, and a word that is present as a piece of text in that knowledge base. In the example embodiment, for example, a predicate with an argument of 0 to 2 is set for each surface layer word. In FIG. 3, a numeral after a slash among the characters in a deep layer word is an argument. The argument in a deep layer word “grandfather/2” is 2, for example. Note that a predicate with an argument of three or higher may also be set for each surface layer word.
  • In addition, as shown in FIG. 3, in the example embodiment, a weight is set for each feature. In the example embodiment, a weight added to each feature is a parameter. In the state of initial settings, weights of respective combinations (features) of surface layer words and deep layer words that can be associated with each other by using a translation dictionary, a synonym dictionary, and the like are set higher, and weights of other combinations (features) are set lower. In the example embodiment, the above-described features and weights (parameters) added to the respective features are stored in the parameter storage unit 102.
  • Note that surface layer words and deep layer words shown in FIG. 3 are merely exemplary, and the number of features and a combination of surface layer words and deep layer words that constitute each feature are not limited to the example shown in FIG. 3.
  • In the example embodiment, the formal language generation unit 14 converts surface layer words into deep layer words based on features set in advance, for example, and converts a piece of text in a natural language into an expression in a formal language by substituting an argument of a deep layer word with another deep layer word. An example of a conversion operation of the formal language generation unit 14 is described briefly below. FIG. 4A and FIG.4B are diagrams for illustrating examples of a conversion operation in the formal language generation unit 14. Note that, a case in which “loss of emotion” is input in the formal language generation unit 14 as a piece of text in a natural language is described with reference to FIG. 4A and FIG. 4B.
  • As shown in FIG. 4A, when “loss of emotion” is input, the formal language generation unit 14 converts the surface layer word “loss” into a deep layer word “loss/1”, and converts the surface layer word “emotion” into a deep layer word “emotion” based on features set in advance, for example. Then, as a result of the argument of the deep layer word “loss/1” being substituted with “emotion” that is an atom (predicate that includes no argument), a training expression “loss (emotion)” written in a formal language is generated. Also, as shown in FIG. 4B, the formal language generation unit 14 converts the surface layer word “loss” into a deep layer word “decrease/2”, and converts the surface layer word “emotion” into a deep layer word “emotion”, for example. The argument in the deep layer word “decrease/2” is then substituted with an atom, and a blank argument is further substituted with an atom indicating an entry (in the example embodiment, “e1”), and, as a result, a training expression “decrease (e1,emotion)” written in the formal language is generated. Note that, in the example shown in FIG. 4A and FIG. 4B, the functional word “of” is converted into “null” indicating that there is no corresponding deep layer word, by the formal language generation unit 14, and conversion of the functional word “of” into a formal language can be omitted. Note that the formal language in FIG. 4A and FIG. 4B is exemplary, and the formal language generation unit 14 generates a plurality of training expressions based on features set in advance.
  • In the example embodiment, as shown in FIG. 5A and FIG. 5B, the formal language generation unit 14 calculates a probability that each training expression to be output is obtained (hereinafter, also referred to as “generation probability of each training expression”), based on the weights of the features (parameters) set as described above. Note that FIG. 5A shows an example of training expressions generated when “Ichiro is Taro's father.” is input to the formal language generation unit 14 as a piece of text in a natural language and generation probabilities of the training expressions, and FIG. 5B shows an example of training expressions generated when “Jiro is Ichiro's father.” is input to the formal language generation unit 14 as a piece of text in a natural language and the generation probabilities of the training expressions. The formal language generation unit 14 transmits each training expression and the generation probability of the training expression obtained through calculation, to the inference unit 16. Note that, as described above, for example, the technique disclosed in Non-patent Document 1 can be used for the formal language generation unit 14, and thus a detailed description of the formal language generation unit 14 is omitted.
  • Although a detailed description is omitted, in the example embodiment, for example, a configuration may also be adopted in which, when converting surface layer words into deep layer words, the formal language generation unit 14 selects features that have a weight of a predetermined threshold value or higher, and performs conversion. The formal language generation unit 14 may also transmit, for example, only a predetermined number of training expressions selected in the order of highest generation probability, from among a plurality of generated training expressions, to the inference unit 16 along with the probabilities of the training expressions. The formal language generation unit 14 may also output, for example, a predetermined number of randomly sampled training expressions, from among a plurality of generated training expressions, to the inference unit 16.
  • The inference unit 16 executes at least one inference out of deductive inference and abduction, on one or more training expressions transmitted from the formal language generation unit 14, using the knowledge base stored in the knowledge base storage unit 104.
  • In the example embodiment, when a plurality of training expressions are generated for each piece of text by the formal language generation unit 14, the inference unit 16 executes inference on all of the combinations of training expressions generated from different pieces of text, for example. In the example in FIG. 5A and FIG. 5B, for example, the formal language generation unit 14 generates three training expressions from the text “Ichiro is Taro's father”, and three training expressions from the text “Jiro is Ichiro's father”. In this case, the inference unit 16 executes inference on nine combinations of training expressions as shown in FIG. 6.
  • Note that the inference unit 16 may execute inference on a predetermined number of combinations of training expressions randomly sampled from among all of the combinations of the training expressions generated from different pieces of text. In addition, the inference unit 16 may also execute inference on a predetermined number of combinations of training expressions sampled based on parameters when training expressions are generated, from among all of the combinations of the training expressions generated from different pieces of text.
  • The inference unit 16 transmits a result obtained by inference, to the update unit 18. The update unit 18 compares the inference result transmitted from the inference unit 16 with a model answer transmitted from the acceptance unit 12, and updates parameters stored in the parameter storage unit 102 such that an inference result that matches the model answer is likely to be obtained through inference performed by the inference unit 16. A description thereof is given below with an example.
  • Assume that, for example, the expression “grandfather (Jiro, Taro)” written in a formal language has been input to the acceptance unit 12 as a model answer. Also, assume that a plurality of rules are stored in a knowledge base, and the rules include “father (a, b){circumflex over ( )} father (b, c)->grandfather (a, c)”.
  • Under the above conditions, when inference is executed on the nine combinations shown in FIG. 6, the inference unit 16 can obtain “grandfather (Jiro, Taro)” as an inference result, from a first combination (combination of “father (Ichiro, Taro)” and “father (Jiro, Ichiro)”) in FIG. 6. In this case, the inference result transmitted from the inference unit 16 to the update unit 18 and a model answer transmitted from the acceptance unit 12 to the update unit 18 match. Therefore, the update unit 18 updates parameters (in the example embodiment, the weights of features) stored in the parameter storage unit 102 such that a combination of training expressions from which the inference result “grandfather (Jiro, Taro)” that matches the model answer can be obtained is likely to be generated by the formal language generation unit 14. Specifically, in the formal language generation unit 14, parameters stored in the parameter storage unit 102 are updated such that the text “Ichiro is Taro's father.” is likely to be converted into the training expression “father (Ichiro, Taro)”, and the text “Jiro is Ichiro's father” is likely to be converted into the training expression “father (Jiro, Ichiro)”. For example, the update unit 18 may also update parameters such that the weights of features based on which the text “Ichiro is Taro's father” is converted into the training expression “father (Ichiro, Taro)” and the weights of features based on which the text “Jiro is Ichiro's father.” is converted into the training expression “father (Jiro, Ichiro)” are increased. In addition, for example, the update unit 18 may also update parameters such that the weights of features that do not contribute to conversion from the text “Ichiro is Taro's father” into the training expression “father (Ichiro, Taro)” and the weights of features that do not contribute to conversion from the text “Jiro is Ichiro's father” into the training expression “father (Jiro, Ichiro)” are reduced. In other words, when one or more training expressions from which an inference result that matches a model answer can be obtained are set as correct expressions, the update unit 18 may update parameters such that the weights of features based on which a piece of text in a natural language is converted into a correct expression are increased, or may also update parameters such that the weights of features that do not contribute to conversion from a piece of text in a natural language into a correct expression are reduced. Note that, although a detailed description is omitted, an algorithm described in Non-patent Document 1 can be used for updating of parameters that is performed by the update unit 18, for example.
  • The output unit 20 outputs parameters updated by the update unit 18. The parameters output from the output unit 20 and updated parameters stored in the parameter storage unit 102 can also be used in an apparatus other than the information processing apparatus 10 (for example, a known converter). In the example embodiment, the output unit 20 outputs parameters stored in the parameter storage unit 102, when the number of updates performed by the update unit 18 reaches a designated number set in advance, for example.
  • Note that a case has been described above in which one model answer is input to the acceptance unit 12, but a plurality of model answers may also be input to the acceptance unit 12. In this case, there is a possibility that a plurality of inference results that match the plurality of model answers is obtained through inference performed by the inference unit 16. In this case, the update unit 18 may update parameters stored in the parameter storage unit 102 such that a plurality of training expressions corresponding to a plurality of inference results that match a plurality of model answers are likely to be generated by the formal language generation unit 14, for example. Note that inference results that match all of a plurality of model answers do not need to be obtained through inference performed by the inference unit 16. That is to say, it suffices for an inference result that matches one of the plurality of model answers to be obtained by the inference unit 16. In this case, the update unit 18 may update parameters stored in the parameter storage unit 102 such that a training expression corresponding to an inference result that matches one of a plurality of model answers is likely to be generated by the formal language generation unit 14, for example.
  • In addition, one piece of text or three or more pieces of text may also be input to the acceptance unit 12. For example, when one piece of text is input to the acceptance unit 12, a plurality of training expressions are generated by the formal language generation unit 14 based on that one piece of text. Inference is then executed on each of the plurality of training expressions, and, in response to a condition that an inference result that matches the model answer is obtained, parameters stored in the parameter storage unit 102 are updated by the update unit 18. In addition, when three or more pieces of text are input to the acceptance unit 12, one or more training expressions are generated for each piece of text by the formal language generation unit 14. In this case, for example, inference is executed on all of the combinations of training expressions generated from different pieces of text, or a combination of randomly selected training expressions, and, when an inference result that matches the model answer is obtained, parameters stored in the parameter storage unit 102 are updated by the update unit 18.
  • Apparatus Operations
  • Next, operations of an information processing apparatus in an example embodiment of the invention is described with reference to FIG. 7. FIG. 7 is a flowchart showing operations of an information processing apparatus in an example embodiment of the invention. In the following description, FIGS. 1 to 6 is referred to as appropriate. In addition, in the example embodiment, as a result of causing the information processing apparatus 10 to operate, an information processing method is carried out. Thus, a description of the information processing method in the example embodiment is replaced with the following description of operations of the information processing apparatus 10.
  • Note that a case is described below in which the inference unit 16 executes inference on a predetermined number of training expressions randomly sampled from among one or more training expressions generated from one or more pieces of text (or a predetermined number of randomly sampled combinations of training expressions). However, the inference unit 16 may execute inference on training expressions sampled based on parameters (or a combination of training expressions sampled based on parameters), for example.
  • As shown in FIG. 7, in the information processing apparatus 10, first, the acceptance unit 12 accepts one or more pieces of text written in a natural language and a model answer of an inference result (step S1). Next, the formal language generation unit 14 generates one or more training expressions (expressions written in a formal language) corresponding to the one or more pieces of text accepted by the acceptance unit 12 (step S2).
  • Next, the inference unit 16 executes inference on one or more training expressions randomly sampled from among the one or more training expressions generated by the formal language generation unit 14 (or one or more combinations of randomly sampled training expressions), using a knowledge base stored in the knowledge base storage unit 104, and obtains one or more inference results (step S3). Next, the update unit 18 compares the one or more inference results obtained by the inference unit 16 with the model answer input to the acceptance unit 12, and determines whether or not an inference result that matches the model answer has been obtained (step S4).
  • If it is determined in step S4 that an inference result that matches the model answer has been obtained, the update unit 18 updates parameters stored in the parameter storage unit 102 as described above (step S5). Note that, in step S5, as described above, for example, the update unit 18 may update parameters such that the weights of features, based on which text in a natural language is converted into a correct expression, are increased, or may update parameters such that the weights of features, based on which text in a natural language is converted into a training expression different from the correct expression, are reduced. After the parameters have been updated by the update unit 18, the output unit 20 determines whether or not the number of updates performed by the update unit 18 has reached a designated number of times set in advance (step S6). If the number of updates has reached the designated number, the output unit 20 outputs parameters (step S7).
  • If it is determined in step S4 that an inference result that matches the model answer has not been obtained, or if it is determined in step S6 that the number of updates has not reached the designated number, the process in step S2 is executed again, and a training expression is newly generated by the formal language generation unit 14. Subsequently, the above-described processing is repeatedly executed. Note that, if it is determined in step S4 that an inference result that matches the model answer has not been obtained, the procedure may return to the process step S1.
  • As described above, according to the example embodiment, it is possible to optimize parameters that are used when one or more pieces of text in a natural language are converted into one or more expressions in a formal language such that an inference result that matches a model answer set in advance is likely to be obtained by the inference unit 16.
  • Modified Example 1
  • In the above example embodiment, in step S4, the update unit 18 compares an inference result obtained by the inference unit 16 with a model answer input to the acceptance unit 12, and determines whether or not an inference result that matches the model answer has been obtained. However, content of processing that is performed by the update unit 18 is not limited to the above-described example.
  • For example, in response to a condition that a model answer input to the acceptance unit 12 includes a plurality of expressions written in a formal language, the update unit 18 determines whether or not an inference result that matches at least one expression out of the plurality of expressions included in the model answer has been obtained through inference performed by the inference unit 16, in step S4, as shown in FIG. 8. Specifically, for example, when “father (Ichiro, Taro){circumflex over ( )} age (Ichiro, 30)” is input to the acceptance unit 12 as a model answer, the update unit 18 determines whether or not at least one of “father (Ichiro, Taro)” and “age (Ichiro, 30)” has been obtained as an inference result through inference performed by the inference unit 16.
  • In step S4, if an inference result that matches at least one expression out of the plurality of expressions included in the model answer has been obtained, the update unit 18 updates parameters such that the inference result that matches at least one expression is likely to be obtained through inference performed by the inference unit 16 (step S5). Specifically, parameters stored in the parameter storage unit 102 are updated such that the training expression from which the inference result that matches at least one expression can be obtained is likely to be generated by the formal language generation unit 14.
  • In step S4, if an inference result that matches at least one expression out of the plurality of expressions included in the model answer has not been obtained, the process in step S2 is executed again, and training expressions are newly generated by the formal language generation unit 14. The above-described processing is then executed repeatedly. Note that the content of processes other than the process in step S4 is similar to that described with reference to FIG. 7, and thus a description thereof is omitted. In addition, if it is determined in step S4 that an inference result that matches at least one expression out of the plurality of expressions included in the model answer has not been obtained, the procedure may return to the process in step S1.
  • Modified Example 2
  • In the above example embodiment, a case has been described in which the output unit 20 determines in step S6 whether or not the number of updates performed by the update unit 18 has reached the designated number, but the process in step S6 is not limited to the above-described example. For example, a configuration may also be adopted in which, in step S6, if the above generation probability of a correct expression that is based on updated parameters is larger than the generation probability of a training expression different from the correct expression, the output unit 20 makes a determination of Yes, and if the generation probability of the correct expression is smaller than or equal to the generation probability of a training expression other than the correct expression, the output unit 20 makes a determination of No. In addition, for example, a configuration may also be adopted in which, in step S6, if the smallest value of the difference between the above generation probability of the correct expression that is based on updated parameters and the generation probability of a training expression other than the correct expression is larger than a threshold value set in advance, the output unit 20 makes a determination of Yes, and, if the above smallest value is smaller than or equal to the threshold value, makes a determination of No.
  • Modified Example 3
  • In the above example embodiment, a case has been described in which the inference unit 16 performs decisive inference in step S3, but the inference unit 16 may also perform probabilistic inference. When the inference unit 16 performs probabilistic inference, the probability that a model answer is obtained from one or more training expressions generated by the formal language generation unit 14 is calculated in step S3. Specifically, for example, as shown in FIG. 6, when inference is executed on each of the nine combinations of training expressions, a probability (score) that a model answer is obtained is calculated for each combination.
  • A probability that a model answer is obtained can be calculated using an MLN (Markov Logic Network), for example, with training expressions generated by the formal language generation unit 14 serving as inputs (nodes). When an MLN is used, sampling is performed such that, for example, regarding the generation probability of each training expression (probability that each training expression is obtained) described with reference to FIG. 5A and FIG. 5B, the node of the training expression is true, and the periphery probability of the node corresponding to the model answer can be calculated as a probability (score) that the model answer is obtained.
  • As shown in FIG. 9, when the inference unit 16 performs probabilistic inference, the update unit 18 determines in step S4 whether or not any one of scores calculated by the inference unit 16 for each combination of training expressions (a probability that the model answer is obtained) is higher than the highest value of scores calculated previously. If any of the scores calculated by the inference unit 16 is higher than the highest value of the scores calculated previously, the update unit 18 updates parameters such that a training expression from which the score can be obtained is likely to be generated by the formal language generation unit 14 (step S5). In other words, parameters stored in the parameter storage unit 102 are updated such that the generation probability of a training expression, based on which the inference unit 16 can obtain a score that is higher than the highest value of the scores calculated previously, is increased. Note that parameters can be updated using, for example, an algorithm disclosed in Non-patent Document 1, and thus a detailed description thereof is omitted.
  • In addition, in the information processing apparatus 10 according to Modified Example 3, in step S6, determination is performed as to whether or not any one of scores currently calculated by the inference unit 16 exceeds a predetermined threshold value. If it is determined in step S6 that any one of the scores calculated by the inference unit 16 exceeds the predetermined threshold value, the output unit 20 outputs parameters updated by the update unit 18 (step S7).
  • If it is determined in step S4 that none of the scores calculated by the inference unit 16 is higher than the highest value of the scores previously calculated, or, if it is determined in step S6 that none of the scores calculated by the inference unit 16 exceeds the threshold value, the process in step S2 is executed again, and training expressions are newly generated by the formal language generation unit 14. Subsequently, the above-described processing is repeatedly executed. Note that content of processes other than those in steps S4 and S6 is similar to that described with reference to FIG. 7, and thus a detailed description thereof is omitted.
  • When probabilistic inference is performed as in Modified Example 3, the value of a score calculated by the inference unit 16 increases as a result of some pieces of text out of a plurality of pieces of text being converted into a proper formal language. Therefore, even if only some pieces of text of a plurality of pieces of text (for example, several thousands of pieces of text) are converted into proper expressions in a formal language by the formal language generation unit 14, parameters stored in the parameter storage unit 102 can be updated.
  • Program
  • The program according to the example embodiment of the invention need only be a program that causes a computer to execute steps S1 to S7 shown in FIG. 7, 8, or 9. The information processing apparatus and the information processing method according to the example embodiment can be realized, by this program being installed on a computer and executed. In this case, the CPU (Central Processing Unit) of the computer, which is an information processing apparatus, performs processing, while functioning as the acceptance unit 12, the formal language generation unit 14, the inference unit 16, the update unit 18, and the output unit 20.
  • Also, the program according to the example embodiment may be executed by a computer system built from a plurality of computers. In this case, for example, each of the computers may function as one of the acceptance unit 12, the formal language generation unit 14, the inference unit 16, the update unit 18, and the output unit 20.
  • Physical Configuration
  • Here, a computer that realizes an information processing apparatus by executing the program according to the example embodiment is described with reference to drawings. FIG. 10 is a block diagram showing an example of a computer that realizes the information processing apparatus according to the example embodiment of the invention.
  • As shown in FIG. 10, a computer 110 includes a CPU 111, a main memory 112, a storage device 113, an input interface 114, a display controller 115, a data reader/writer 116, and a communication interface 117. These units are connected in a manner that enables data communication therebetween, via a bus 121. Note that the computer 110 may include a GPU (Graphics Processing Unit) or an FPGA (Field-Programmable Gate Array), in addition to the CPU 111 or instead of the CPU 111.
  • The CPU 111 implements various computational operations, by extracting programs (code) according to the example embodiment that are stored in the storage device 113 in the main memory 112, and executing these programs in predetermined order. The main memory 112, typically, is a volatile storage device such as a DRAM (Dynamic Random Access Memory). Also, programs according to the example embodiment are provided in a state of being stored on a computer-readable recording medium 120. Note that programs according to the example embodiment may be distributed over the Internet connected via the communication interface 117.
  • Also, a semiconductor storage device such as a flash memory is given as a specific example of the storage device 113, other than a hard disk drive. The input interface 114 mediates data transmission between the CPU 111 and input devices 118 such as a keyboard and a mouse. The display controller 115 is connected to a display device 119 and controls display by the display device 119.
  • The data reader/writer 116 mediates data transmission between the CPU 111 and the recording medium 120, and executes readout of programs from the recording medium 120 and writing of processing results of the computer 110 to the recording medium 120. The communication interface 117 mediates data transmission between the CPU 111 and other computers.
  • Also, a general-purpose semiconductor storage device such as a CF (Compact Flash (registered trademark)) card or an SD (Secure Digital) card, a magnetic storage medium such as a flexible disk, and an optical storage medium such as a CD-ROM (Compact Disk Read Only Memory) are given as specific examples of the recording medium 120.
  • Note that the information processing apparatus according to the example embodiment is also realizable by using hardware corresponding to the respective units, rather than by a computer on which programs are installed. Furthermore, the information processing apparatus may be realized in part by programs, and the remaining portion may be realized by hardware.
  • The example embodiment described above can be partially or wholly realized by supplementary notes 1 to 15 described below, but the invention is not limited to the following description.
  • Supplementary Note 1
  • An information processing apparatus comprising:
  • an acceptance unit configured to accept one or more pieces of text in a natural language and a model answer of an inference result that is obtained from the one or more pieces of text;
  • a formal language generation unit configured to generate, as one or more training expressions, one or more expressions written in a formal language corresponding to the one or more pieces of text accepted by the acceptance unit, based on a parameter prepared in advance and the one or more pieces of text;
  • an inference unit configured to execute at least one inference out of deductive inference and abduction on the one or more training expressions generated by the formal language generation unit, using a knowledge base prepared in advance; and
  • an update unit configured to update the parameter such that an inference result that matches the model answer is likely to be obtained through the inference performed by the inference unit.
  • Supplementary Note 2
  • The information processing apparatus according to Supplementary Note 1,
  • wherein the inference unit calculates a probability that the model answer is obtained from the one or more training expressions by executing probabilistic inference, and
  • the update unit updates the parameter such that the probability that is calculated by the inference unit is increased.
  • Supplementary Note 3
  • The information processing apparatus according to Supplementary Note 1,
  • wherein the model answer includes a plurality of expressions written in a formal language, and
  • the update unit updates, in response to a condition that an inference result that matches at least one expression out of the plurality of expressions included in the model answer is obtained through the inference performed by the inference unit, the parameter such that the inference result that matches the at least one expression is likely to be obtained through the inference performed by the inference unit.
  • Supplementary Note 4
  • The information processing apparatus according to Supplementary Note 1 or 3,
  • wherein the formal language generation unit generates a plurality of training expressions for each piece of text accepted by the acceptance unit, and
  • the inference unit executes the at least one inference on the plurality of training expressions generated for each piece of text.
  • Supplementary Note 5
  • The information processing apparatus according to Supplementary Note 1, 3, or 4,
  • wherein the update unit updates, in response to a condition that the inference unit obtains an inference result that matches the model answer, the parameter such that the training expression from which the inference result that matches the model answer is obtained is likely to be generated by the formal language generation unit.
  • Supplementary Note 6
  • An information processing method, comprising:
  • (a) a step of accepting one or more pieces of text in a natural language and a model answer of an inference result that is obtained from the one or more pieces of text;
  • (b) a step of generating, as one or more training expressions, one or more expressions written in a formal language corresponding to the one or more pieces of text accepted in the (a) step, based on a parameter prepared in advance and the one or more pieces of text;
  • (c) a step of executing at least one inference out of deductive inference and abduction on the one or more training expressions generated in the (b) step, using a knowledge base prepared in advance; and
  • (d) a step of updating the parameter such that an inference result that matches the model answer is likely to be obtained through the inference in the (c) step.
  • Supplementary Note 7
  • The information processing method according to Supplementary Note 6,
  • wherein, in the (c) step, a probability that the model answer is obtained from the one or more training expressions is calculated by executing probabilistic inference, and
  • in the (d) step, the parameter is updated such that the probability that is calculated in the (c) step is increased.
  • Supplementary Note 8
  • The information processing method according to Supplementary Note 6,
  • wherein the model answer includes a plurality of expressions written in a formal language, and
  • in the (d) step, the parameter is updated such that the inference result that matches the at least one expression is likely to be obtained through the inference in the (c) step, in response to a condition that an inference result that matches at least one expression out of the plurality of expressions included in the model answer is obtained through the inference in the (c) step.
  • Supplementary Note 9
  • The information processing method according to Supplementary Note 6 or 8,
  • wherein, in the (b) step, a plurality of training expressions are generated for each piece of text accepted in the (a) step, and
  • in the (c) step, the at least one inference is executed on the plurality of training expressions generated for each piece of text.
  • Supplementary Note 10
  • The information processing method according to Supplementary Note 6, 8, or 9,
  • wherein, in the (d) step, the parameter is updated such that the training expression from which the inference result that matches the model answer is obtained is likely to be generated in the (b) step, in response to a condition that an inference result that matches the model answer is obtained in the (c) step.
  • Supplementary Note 11
  • A computer-readable recording medium that includes a program recorded thereon, the program including instructions that cause a computer to carry out:
  • (a) a step of accepting one or more pieces of text in a natural language and a model answer of an inference result that is obtained from the one or more pieces of text;
  • (b) a step of generating, as one or more training expressions, one or more expressions written in a formal language corresponding to the one or more pieces of text accepted in the (a) step, based on a parameter prepared in advance and the one or more pieces of text;
  • (c) a step of executing at least one inference out of deductive inference and abduction on the one or more training expressions generated in the (b) step, using a knowledge base prepared in advance; and
  • (d) a step of updating the parameter such that an inference result that matches the model answer is likely to be obtained through the inference in the (c) step.
  • Supplementary Note 12
  • The computer-readable recording medium according to Supplementary Note 11,
  • wherein, in the (c) step, a probability that the model answer is obtained from the one or more training expressions is calculated by executing probabilistic inference, and
  • in the (d) step, the parameter is updated such that the probability that is calculated in the (c) step is increased.
  • Supplementary Note 13
  • The computer-readable recording medium according to Supplementary Note 11,
  • wherein the model answer includes a plurality of expressions written in a formal language, and
  • in the (d) step, the parameter is updated such that the inference result that matches the at least one expression is likely to be obtained through the inference in the (c) step, in response to a condition that an inference result that matches at least one expression out of the plurality of expressions included in the model answer is obtained through the inference in the (c) step.
  • Supplementary Note 14
  • The computer-readable recording medium according to Supplementary Note 11 or 13,
  • wherein, in the (b) step, a plurality of training expressions are generated for each piece of text accepted in the (a) step, and
  • in the (c) step, the at least one inference is executed on the plurality of training expressions generated for each piece of text.
  • Supplementary Note 15
  • The computer-readable recording medium according to Supplementary Note 11, 13, or 14,
  • wherein, in the (d) step, the parameter is updated such that the training expression from which the inference result that matches the model answer is obtained is likely to be generated in the (b) step, in response to a condition that an inference result that matches the model answer is obtained in the (c) step.
  • This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2018-020258, filed Feb. 7, 2018, the disclosure of which is incorporated herein in its entirety by reference.
  • INDUSTRIAL APPLICABILITY
  • As described above, according to the invention, it is possible to optimize parameters that are used when a piece of text in a natural language is converted into an expression in a formal language in a system that performs inference based on a natural language input by the user.
  • LIST OF REFERENCE SIGNS
    • 10 Information processing apparatus
    • 12 Acceptance unit
    • 14 Formal language generation unit
    • 16 Inference unit
    • 18 Update unit
    • 20 Output unit
    • 102 Parameter storage unit
    • 104 Knowledge base storage unit
    • 110 Computer
    • 111 CPU
    • 112 Main memory
    • 113 Storage device
    • 114 Input interface
    • 115 Display controller
    • 116 Data reader/writer
    • 117 Communication interface
    • 118 Input device
    • 119 Display device
    • 120 Recording medium
    • 121 Bus

Claims (18)

1. An information processing apparatus comprising:
an acceptance circuit configured to accept at least one of texts written in a natural language and at least one of labels written in a formal language for the texts;
a formal language generation circuit configured to generate at least one of queries written in the formal language for the texts by using a pre-trained machine learning model and the texts;
an inference circuit configured to automatically infer at least one of inference results written in the formal language by applying at least one of deductive inference method and abduction method to the queries and a knowledge base; and
an update circuit configured to update the model such that the at least one of inference results that matches the labels is likely to be obtained through the inference performed by the inference circuit.
2. The information processing apparatus according to claim 1,
wherein the inference circuit is configured to calculate a probability that the labels is obtained from the at least one of queries by executing probabilistic inference, and
the update circuit is configured to update the model such that the probability that is calculated by the inference circuit is increased.
3. The information processing apparatus according to claim 1,
wherein the labels include a plurality of expressions written in a formal language, and
the update circuit is configured to update, in response to a condition that the at least one of inference results that matches at least one expression out of the plurality of expressions included in the labels is obtained through the inference performed by the inference circuit, the model such that the at least one of inference results that matches the at least one expression is likely to be obtained through the inference performed by the inference circuit.
4. The information processing apparatus according to claim 1
wherein the formal language generation circuit is configured to generate a queries for each texts accepted by the acceptance circuit, and
the inference circuit is configured to inference the at least one of inference results on the queries generated for each texts.
5. The information processing apparatus according to claim 1
wherein the update circuit is configured to update, in response to a condition that the inference circuit obtains the at least one of inference results that matches the labels, the model such that the queries from which the queries from which the labels is obtained is likely to be generated by the formal language generation circuit.
6. An information processing method comprising:
accepting at least one of texts written in a natural language and at least one of labels written in a formal language for the texts;
generating at least one of queries written in the formal language for the texts by using a pre-trained machine learning model and the texts;
automatically inferring at least one of inference results written in the formal language by applying at least one of deductive inference method and abduction method to the queries and a knowledge base; and
automatically updating the model such that the at least one of inference results that matches the labels is likely to be obtained through the automatically inferring.
7. The information processing method according to claim 6,
wherein, when the at least one of inference results is inferrced, a probability that the labels is obtained from the at least one of queries is calculated by executing probabilistic inference, and
when the model is updated, the model is updated such that the probability is increased.
8. The information processing method according to claim 6,
wherein the labels include a plurality of expressions written in a formal language, and
when the model is updated, the model is updated such that the at least one of inference results that matches the at least one expression is likely to be obtained through the automatically inferring, in response to a condition that the at least one of inference results that matches at least one expression out of the plurality of expressions included in the labels is obtained through the automatically inferring.
9. The information processing method according to claim 6,
wherein texts in the natural language are accepted,
when a plurality of queries are generated, the plurality of queries are generated for each texts, and
when the at least one of inference results is inferred, the at least one of inference results is inferred on the plurality of queries generated for each texts.
10. The information processing method according to claim 6,
wherein, when the model is updated, the model is updated such that the queries from which the at least one of inference results that matches the labels is obtained is likely to be generated, in response to a condition that the at least one of inference results that matches the labels is obtained.
11. A non-transitory computer-readable recording medium that includes a program recorded thereon, the program including instructions that cause a computer to carry out:
accepting at least one of texts written in a natural language and at least one of labels written in a formal language for the texts;
generating at least one of queries written in the formal language for the texts by using a pre-trained machine learning model and the texts;
automatically inferring at least one of inference results written in the formal language by applying at least one of deductive inference method and abduction method to the queries and a knowledge base; and
automatically updating the model such that the at least one of inference results that matches the labels is likely to be obtained through the automatically inferring.
12. The non-transitory computer-readable recording medium according to claim 11,
wherein, when the at least one of inference results is inferred, a probability that the labels is obtained from the at least one of queries is calculated by executing probabilistic inference, and
when the model is updated, the model is updated such that the probability is increased.
13. The non-transitory computer-readable recording medium according to claim 11,
wherein the labels include a plurality of expressions written in a formal language, and
when the model is updated, the model is updated such that the at least one of inference results that matches the at least one expression is likely to be obtained through the automatically inferring, in response to a condition thatthe at least one of inference results that matches at least one expression out of the plurality of expressions included in the labels is obtained through the automatically inferring.
14. The non-transitory computer-readable recording medium according to claim 11,
wherein texts in the natural language are accepted,
when a plurality of queries are generated, the plurality of queries are generated for each texts, and
when the at least one of inference results is inferred, the at least one of inference results is inferred on the plurality of queries generated for each texts.
15. The non-transitory computer-readable recording medium according to claim 11,
wherein when the model is updated, the model is updated such that the queries from which the at least one of inference results that matches the labels is obtained is likely to be generated in response to a condition that the at least one of inference results that matches the labels is obtained.
16. The information processing apparatus according to claim 1,
wherein the update circuit is configured to update the model using machine learning.
17. The information processing method according to claim 6,
wherein when the model is automatically updated, the model is updated using machine learning.
18. The non-transitory computer-readable recording medium according to claim 11,
wherein when the model is automatically updated, the model is updated using machine learning.
US16/961,079 2018-02-07 2019-02-06 Information processing apparatus, information processing method, and computer-readable recording medium Active 2039-10-27 US11625531B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JPJP2018-020258 2018-02-07
JP2018020258 2018-02-07
JP2018-020258 2018-09-18
PCT/JP2019/004305 WO2019156131A1 (en) 2018-02-07 2019-02-06 Information processing device, information processing method, and computer-readable storage medium

Publications (2)

Publication Number Publication Date
US20210064825A1 true US20210064825A1 (en) 2021-03-04
US11625531B2 US11625531B2 (en) 2023-04-11

Family

ID=67549485

Family Applications (1)

Application Number Title Priority Date Filing Date
US16/961,079 Active 2039-10-27 US11625531B2 (en) 2018-02-07 2019-02-06 Information processing apparatus, information processing method, and computer-readable recording medium

Country Status (3)

Country Link
US (1) US11625531B2 (en)
JP (1) JP6973515B2 (en)
WO (1) WO2019156131A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11934792B1 (en) * 2023-02-10 2024-03-19 Bria Artificial Intelligence Ltd. Identifying prompts used for training of inference models
US12033372B2 (en) 2021-11-14 2024-07-09 Bria Artificial Intelligence Ltd Attributing generated visual content to training examples
CN120218209A (en) * 2025-03-21 2025-06-27 北京深势科技有限公司 A processing method and device for updating model knowledge by optimizing MLP weights

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5960384A (en) * 1997-09-03 1999-09-28 Brash; Douglas E. Method and device for parsing natural language sentences and other sequential symbolic expressions
US6789054B1 (en) * 1999-04-25 2004-09-07 Mahmoud A. Makhlouf Geometric display tools and methods for the visual specification, design automation, and control of adaptive real systems
US7941438B2 (en) * 2000-04-04 2011-05-10 Sosy, Inc. Method and apparatus for automatic generation of information system user interfaces
US20110125484A1 (en) * 2009-11-24 2011-05-26 The Boeing Company Efficient Text Discrimination
US20110320187A1 (en) * 2010-06-28 2011-12-29 ExperienceOn Ventures S.L. Natural Language Question Answering System And Method Based On Deep Semantics
US20120254143A1 (en) * 2011-03-31 2012-10-04 Infosys Technologies Ltd. Natural language querying with cascaded conditional random fields
US20140006012A1 (en) * 2012-07-02 2014-01-02 Microsoft Corporation Learning-Based Processing of Natural Language Questions
US8706477B1 (en) * 2008-04-25 2014-04-22 Softwin Srl Romania Systems and methods for lexical correspondence linguistic knowledge base creation comprising dependency trees with procedural nodes denoting execute code
US20170140290A1 (en) * 2015-11-18 2017-05-18 International Business Machines Corporation Automated Similarity Comparison of Model Answers Versus Question Answering System Output
US20170154043A1 (en) * 2010-09-24 2017-06-01 International Business Machines Corporation Providing answers to questions including assembling answers from multiple document segments
US20180025075A1 (en) * 2016-07-20 2018-01-25 International Business Machines Corporation Evaluating Temporal Relevance in Question Answering
US11250841B2 (en) * 2016-06-10 2022-02-15 Conduent Business Services, Llc Natural language generation, a hybrid sequence-to-sequence approach

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0695884A (en) 1992-09-10 1994-04-08 Hitachi Ltd Interactive construction supporting system for fuzzy knowledge
JPH0728630A (en) 1993-06-25 1995-01-31 Toshiba Corp Program generator
JPH08115218A (en) 1994-10-14 1996-05-07 Nippon Telegr & Teleph Corp <Ntt> Reasoning device
US6879967B1 (en) * 2000-03-24 2005-04-12 Ricoh Co., Ltd. Method and apparatus for open data collection
US7603330B2 (en) * 2006-02-01 2009-10-13 Honda Motor Co., Ltd. Meta learning for question classification
US8275803B2 (en) * 2008-05-14 2012-09-25 International Business Machines Corporation System and method for providing answers to questions
US9323834B2 (en) * 2011-12-05 2016-04-26 International Business Machines Corporation Semantic and contextual searching of knowledge repositories
US9208693B2 (en) * 2012-04-30 2015-12-08 International Business Machines Corporation Providing intelligent inquiries in question answer systems
US8954359B2 (en) * 2012-05-25 2015-02-10 Siemens Aktiengesellschaft Deriving predictions from data using information extraction and machine learning
US10423889B2 (en) * 2013-01-08 2019-09-24 Purepredictive, Inc. Native machine learning integration for a data management product
US9280908B2 (en) * 2013-03-15 2016-03-08 International Business Machines Corporation Results of question and answer systems
US20140358964A1 (en) * 2013-05-28 2014-12-04 International Business Machines Corporation Natural language processing (NLP) query formulation engine for a computing device
WO2015053861A2 (en) * 2013-10-09 2015-04-16 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on a natural language intent interpreter
US10025819B2 (en) * 2014-11-13 2018-07-17 Adobe Systems Incorporated Generating a query statement based on unstructured input
US11113614B2 (en) * 2015-07-29 2021-09-07 Parsons Corporation Enterprise hypothesis orchestration
EP3142029A1 (en) * 2015-09-11 2017-03-15 Google, Inc. Disambiguating join paths for natural language queries
US10242316B2 (en) * 2016-03-28 2019-03-26 Christoph Adam Kohlhepp Robotic capability model for artificial intelligence assisted manufacturing supply chain planning
US9881082B2 (en) * 2016-06-20 2018-01-30 International Business Machines Corporation System and method for automatic, unsupervised contextualized content summarization of single and multiple documents
US10606952B2 (en) * 2016-06-24 2020-03-31 Elemental Cognition Llc Architecture and processes for computer learning and understanding
US20180033325A1 (en) * 2016-07-29 2018-02-01 International Business Machines Corporation Document Recommendation Method Based on Skill

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5960384A (en) * 1997-09-03 1999-09-28 Brash; Douglas E. Method and device for parsing natural language sentences and other sequential symbolic expressions
US6789054B1 (en) * 1999-04-25 2004-09-07 Mahmoud A. Makhlouf Geometric display tools and methods for the visual specification, design automation, and control of adaptive real systems
US7941438B2 (en) * 2000-04-04 2011-05-10 Sosy, Inc. Method and apparatus for automatic generation of information system user interfaces
US8706477B1 (en) * 2008-04-25 2014-04-22 Softwin Srl Romania Systems and methods for lexical correspondence linguistic knowledge base creation comprising dependency trees with procedural nodes denoting execute code
US8401837B2 (en) * 2009-11-24 2013-03-19 The Boeing Company Efficient text discrimination for word recognition
US20110125484A1 (en) * 2009-11-24 2011-05-26 The Boeing Company Efficient Text Discrimination
US20110320187A1 (en) * 2010-06-28 2011-12-29 ExperienceOn Ventures S.L. Natural Language Question Answering System And Method Based On Deep Semantics
US20170154043A1 (en) * 2010-09-24 2017-06-01 International Business Machines Corporation Providing answers to questions including assembling answers from multiple document segments
US20120254143A1 (en) * 2011-03-31 2012-10-04 Infosys Technologies Ltd. Natural language querying with cascaded conditional random fields
US20140006012A1 (en) * 2012-07-02 2014-01-02 Microsoft Corporation Learning-Based Processing of Natural Language Questions
US20170140290A1 (en) * 2015-11-18 2017-05-18 International Business Machines Corporation Automated Similarity Comparison of Model Answers Versus Question Answering System Output
US11250841B2 (en) * 2016-06-10 2022-02-15 Conduent Business Services, Llc Natural language generation, a hybrid sequence-to-sequence approach
US20180025075A1 (en) * 2016-07-20 2018-01-25 International Business Machines Corporation Evaluating Temporal Relevance in Question Answering

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12033372B2 (en) 2021-11-14 2024-07-09 Bria Artificial Intelligence Ltd Attributing generated visual content to training examples
US12142029B2 (en) 2021-11-14 2024-11-12 Bria Artificial Intelligence Ltd Attributing generated visual content to training examples
US11934792B1 (en) * 2023-02-10 2024-03-19 Bria Artificial Intelligence Ltd. Identifying prompts used for training of inference models
US12073605B1 (en) 2023-02-10 2024-08-27 Bria Artificial Intelligence Ltd. Attributing aspects of generated visual contents to training examples
US12080277B1 (en) 2023-02-10 2024-09-03 Bria Artificial Intelligence Ltd. Attributing generated audio contents to training examples
US12223281B2 (en) 2023-02-10 2025-02-11 Bria Artificial Intelligence Ltd. Generating content using a generative model without relying on selected training examples
US12307208B2 (en) 2023-02-10 2025-05-20 Bria Artificial Intelligence Ltd. Prompt-based attribution of generated media contents
US12488186B2 (en) 2023-02-10 2025-12-02 Bria Artificial Intelligence Ltd. Inference based on different portions of a training set using a single inference model
CN120218209A (en) * 2025-03-21 2025-06-27 北京深势科技有限公司 A processing method and device for updating model knowledge by optimizing MLP weights

Also Published As

Publication number Publication date
WO2019156131A1 (en) 2019-08-15
JP6973515B2 (en) 2021-12-01
US11625531B2 (en) 2023-04-11
JPWO2019156131A1 (en) 2020-12-03

Similar Documents

Publication Publication Date Title
US12393875B2 (en) Training encoder model and/or using trained encoder model to determine responsive action(s) for natural language input
JP7084617B2 (en) Question answering device and computer program
US20120262461A1 (en) System and Method for the Normalization of Text
CN110619034A (en) Text keyword generation method based on Transformer model
CN110717327A (en) Title generating method, apparatus, electronic device and storage medium
US11669691B2 (en) Information processing apparatus, information processing method, and computer readable recording medium
US20250103592A1 (en) Systems and methods for question answering with diverse knowledge sources
CN110688450B (en) A keyword generation method based on Monte Carlo tree search, a keyword generation model based on reinforcement learning, and electronic equipment
CN111400479B (en) Question recognition method and device for multi-round dialogue
US20240104353A1 (en) Sequence-to sequence neural network systems using look ahead tree search
US11625531B2 (en) Information processing apparatus, information processing method, and computer-readable recording medium
JP6312467B2 (en) Information processing apparatus, information processing method, and program
CN113033205A (en) Entity linking method, device, equipment and storage medium
CN111814433B (en) Uygur language entity identification method and device and electronic equipment
CN115186080A (en) Intelligent question-answering data processing method, system, computer equipment and medium
KR102694634B1 (en) Method for learning using tree-based search technology, and computer program recorded on record-medium for executing method therefor
CN113837386B (en) Retrieval method and device based on multi-hop inference
WO2022185457A1 (en) Feature quantity extraction device, learning device, feature quantity extraction method, learning method, and program
KR20250176057A (en) Method for generating responses using large language model and dialogue system thereof
JP2018055622A (en) Information processing device and program
WO2025072160A1 (en) Systems and methods for question answering with diverse knowledge sources
KR20240138851A (en) Method for performing classification of translation categories and translation thereof using deep-learning based pen-type translating device and pen-type translating device using the same
JP2022108435A (en) Opinion object extracting device, learning device and program
CN121030356A (en) A software development auxiliary system and method
CN110765243A (en) Construction method, electronic device and computer equipment of natural language processing system

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

AS Assignment

Owner name: NEC CORPORATION, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SADAMASA, KUNIHIKO;OKAJIMA, YUZURU;SIGNING DATES FROM 20200925 TO 20201019;REEL/FRAME:054299/0658

STPP Information on status: patent application and granting procedure in general

Free format text: APPLICATION DISPATCHED FROM PREEXAM, NOT YET DOCKETED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STCF Information on status: patent grant

Free format text: PATENTED CASE