Embodiments include methods and systems for using, creating and maintaining goal-oriented, dialog systems (i.e., transactional bots) that provide interfaces to application functionality. The methods and systems of the embodiments provide a bot that may learn in supervised learning and reinforcement learning from conversational examples provided by domain experts and from interaction with users. Conversational bots may be created to interact using both text and/or application programming interface (API) calls. A developer may configure a bot that interfaces with an application back-end where behavior of the bot may be controlled by use of masking actions. A specification for the bot may be flexibly designed to specify how developer code may be organized, for example, as masking operations on the possible actions the bot may execute. Additionally, the methods and systems may automatically infer the best state representation during a dialog so a state variable need not be predefined.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A system comprising: one or more processors; and, memory in communication with the one or more processors, the memory comprising code, that when executed, causes the one or more processor to control the system to: determine marked-up text from an input text; determine a mask over available actions from the marked-up text; provide the mask and a set of features to a recurrent neural network, the set of features including at least one feature associated with a previous action if the previous action took place; receive an indication of a selected action from the recurrent neural network; update an internal state based on the indication of a selected action; and, initiate the selected action. 2. The system of claim 1, wherein the set of features includes the input text. 3. The system of claim 1, wherein the code further causes the one or more processors to perform entity extraction on the input text and the set of features includes an indication of a type of entity extracted from die input text. 4. The system of claim 1, wherein the code further causes the one or more processors to perform entity extraction on the input text and the set of features includes the input text and an indication of a type of entity extracted from the input text. 5. The system of claim 1, wherein the selected action comprises a first selected action and the first selected action comprises an application programming interface call, the set of features comprises a first set of features, and the code further causes the one or more processors to control the system to: provide a second set of features to the recurrent neural network, the second set of features including a feature returned from the application programming interface call; receive an indication of a second selected action from the recurrent neural network; update the internal state based on the indication of the second selected action; and, initiate the second selected action. 6. The system of claim 1, wherein the set of features comprises a first set of features and the code further causes the one or more processors to control the system to: provide a second set of features to the recurrent neural network, the second set of features including an indication of the selected action. 7. The system of claim 1, wherein the at least one feature associated with the previous action includes features that are associated with actions based on a previous set of features provided to the recurrent neural network. 8. The system of claim 1, wherein the recurrent neural network comprises a long short term memory neural network. 9. The system of claim 1, wherein the code controls the system to initiate the selected action by controlling the one or more processors to control the system: determine that the selected action includes one or more entity references; populate the one or more entity references; and, initiate the selected action based on the populated references. 10. A method comprising: determining marked-up text from the input text; determining a mask over available actions from the marked-up text; providing the mask and a set of features to a recurrent neural network, the set of features including at least one feature associated with the previous action if the previous action took place; receiving an indication of a selected action from the recurrent neural network; updating an internal state based on the indication of a selected action; and, initiating the selected action. 11. The system of claim 10, wherein the set of features includes the input text. 12. The system of claim 10, wherein the method further comprises performing entity extraction on the input text and the set of features includes an indication of a type of entity extracted from the input text. 13. The system of claim 10, wherein the method further comprises performing entity extraction on the input text and the set of features includes the input text and an indication of a type of entity extracted from the input text. 14. The method of claim 10, wherein the selected action comprises a first selected action and the first selected action comprises an application programming interface call, the set of features comprises a first set of features, and the method further comprises: providing a second set of features to the recurrent neural network, the second set of features including a feature returned from the application programming interface call; receiving an indication of a second selected action from the recurrent neural network; updating the internal state based on the indication of the second selected action; and, initiating the second selected action. 15. The method of claim 10, wherein the set of features comprises a first set of features and the method further comprises: providing a second set of features to the recurrent neural network, the second set of features including an indication of the selected action. 16. The method of claim 10, wherein the at least one feature associated with the previous action includes features that are associated with actions based on a previous set of features provided to the recurrent neural network. 17. The method of claim 10, wherein the recurrent neural network comprises a long short term memory neural network. 18. The method of claim 10, wherein the initiating the selected action comprises: determining that the selected action includes one or more entity references; populating the one or more entity references; and, initiating the selected action based at least in part on the populated references. 19. A system comprising: one or more processors; and, memory in communication with the one or more processors, the memory comprising code, that when executed, causes the one or more processor to control the system to: receive one or more sample dialogs; determine if any action in the one or more sample dialogs is masked out; and, in response to a determination that no action in the one or more sample dialogs is masked out; incorporate the one or more sample dialogs into a training set; create a log including a set of features and entity extractions; apply training using the training, set and the log in a recurrent neural network; score the one or more sample dialogs using the recurrent neural network generate a score result based on the training; and, determine if a target action in the one or more sample dialogs was not assigned a highest probability in the score result. 20. The system of claim 19 wherein the code further causes the one or more processors to control the system to: provide, in response to a determination that a target action in the one or more sample dialogs was not assigned a highest probability in the score result, an indication of a dialog of the one or more sample dialogs in which the target action was not assigned a highest probability. 21. The system of claim 19 wherein the code further causes the one or more processors to control the system to: provide, in response to a determination that each target action in the one or more sample dialogs was assigned a highest probability in the score result, an indication that the one or more sample dialogs were reconstructed successfully. 22. The system of claim 19, wherein the code further causes the one or more processor to control the system to: provide, in response to a determination that an action in the one or more sample dialogs is masked out, an indication of the action in the one or more sample dialogs that is masked out at a user output. 23. A system comprising: one or more processors; and, memory in communication with the one or more processors, the memory comprising code, that when executed, causes the one or more processor to control the system to: receive a definition for a reward signal and a return for one or more dialogs; perform the one or more dialogs using a recurrent neural network; create a log including rewards, features, available actions, and selected actions for the performed one or more dialogs; provide the rewards for the performed one or more dialogs to the neural network for use in improvement of the neural network; and, provide the log for output at a user interface. 24. The system of claim 23, wherein the reward signal is a real valued number indicating a quality of a system action at each of a plurality of turns of the one or more dialogs for a selected context and the return is a discounted sum of the rewards at each turn of the one or more dialogs. 25. The system of claim 23, wherein the one or more dialogs comprise a first one or more dialogs, the log comprises a first log, and the code further causes the one or more processor to control the system to: perform a second one or more dialogs using the recurrent neural network subsequent to providing the return for the performed first one or more dialogs; create a second log including rewards, features, available actions, and selected actions for the performed second one or more dialogs; and, provide the rewards for the performed second one or more dialogs to the neural network based on the second log for use in improvement of the neural network. 26. The system of claim 23, wherein the code causes the one or more processors to control the recurrent neural network to: set an action probability of each masked action to zero; add a constant to an action probability of each available action and the action probability of each masked action; determine a gradient of each of the action probabilities for each turn of dialog with respect to a weight of the action probability; and, adjust the weight of each of the action probabilities in view of its gradient, the return of the one or more dialogs, and an estimated average of the current model.