Systems and methods for a mathematical chat bot
AssigneeMicrosoft Technology Licensing, LLC
InventorsJoseph Edwin Johnson, Jr., Emmanouil Koukoumidis, Daniel Vann, Hailong Mu
Life of this patent
Estimating the term…
Abstract
Systems and methods for automated mathematical chatting. The systems and methods convert any identified non-numerical inputs into vectors and then perform the mathematical equation utilizing the vectors instead of the nonnumeric inputs along with any other identified numeric inputs to obtain a numerical vector result. The systems and methods decode the numerical vector result into a result feature and then search one or more databases for output based on the result feature. The systems and methods provide the selected output from the one or more databases in response to the mathematical query.
Claims20
A system for a mathematical chat bot, the system comprising:
- at least one processor;
- and
- a memory for storing and encoding computer executable instructions that, when executed by the at least one processor is operative to:
- collect a mathematical query from a user, the mathematical query comprising an equation having a nonmathematical image and a mathematical operator;
- identify the mathematical operator in the equation utilizing a mathematical knowledge graph;
- identify a variable that corresponds to the image in the equation utilizing the mathematical knowledge graph to form the corresponding variable for the image in the equation;
- extract features for the image based on at least one of world knowledge and a natural language understanding system;
- filter the features;
- assign confidence scores to the features based on the filtering of the features;
- select a feature from the features for the image based on the confidence scores;
- encode the selected feature for the image into a vector;
- substitute the corresponding variable for the image with the vector in the equation;
- execute the equation to determine a result of the equation;
- decode the result of the equation into a result feature representing a decoded version of the result of the equation;
- search an image database for result images that correspond to the result feature representing the decoded version of the result of the equation;
- filter the result images;
- assign probability scores to the result images based on the filtering of the result images;
- select an answer image from the result images based on the probability scores;
- and
- provide the answer image to the user in reply to the mathematical query.
A method for automated mathematical chatting, the method comprising:
- collecting a mathematical query from a user, the mathematical query comprising an equation with one or more nonmathematical objects and a mathematical operator, wherein the one or more objects include one or more of a nonmathematical image and nonmathematical text;
- identifying the mathematical operator in the equation utilizing a mathematical knowledge graph;
- identifying a variable that corresponds to the one or more objects in the equation utilizing the mathematical knowledge graph to form the corresponding variable for the one or more objects in the equation;
- extracting features for the one or more objects utilizing at least one of world knowledge and a natural language understanding system;
- filtering the features;
- assigning confidence scores to the features based on the filtering of the features;
- selecting a feature from the features for the one or more objects based on the confidence scores;
- converting the selected feature for the one or more objects into a vector;
- substituting the corresponding variable for the one or more objects with the vector in the equation;
- executing the equation to determine a result of the equation;
- decoding the result of the equation into a result feature representing a decoded version of the result of the equation;
- searching a database for outputs that correspond to the result feature representing the decoded version of the result of the equation;
- filtering the outputs;
- assigning probability scores to the outputs based on the filtering of the outputs;
- selecting an answer from the outputs based on the probability scores;
- and
- providing the answer to the user in response to the mathematical query.
A system for a mathematical chat bot, the system comprising:
- a computing device including a processing unit and a memory, the processing unit implementing a search engine and a conversation layer, wherein the computing device is operable to:
- collect a mathematical query comprising an equation with inputs, wherein at least one of the inputs is a nonmathematical object that includes one of a nonmathematical image and nonmathematical text;
- identify a mathematical operator in the equation utilizing a mathematical knowledge graph;
- identify a variable that corresponds to the object in the equation utilizing the mathematical knowledge graph to form the corresponding variable for the object in the equation;
- select a feature from features for the object utilizing a deep learning algorithm;
- convert the feature for the object into a vector;
- substitute the corresponding variable for the object with the vector in the equation;
- execute the equation to determine a result of the equation;
- decode the result of the equation into a result feature representing a decoded version of the result of the equation;
- search a database for outputs that correspond to the result feature representing the decoded version of the result of the equation;
- select an answer from the outputs;
- and
- provide the answer in response to the mathematical query.
Dependencies are inferred from the claim text.