I recently took this challenge where I am trying to make a set of algorithms to read any particular book, understand and store the context and subsequently answer any question asked about it. In ways similar a person might execute this task, we would want our algo to hold every variable in its attention so that it can reason better and supersede the output generated by humans.
Few assumptions about the book(s)
-It is assumed that the book is very dense and full of complex topics.
-The content of the book is very episodic, the relation between entities change as the book progresses. So with new incoming info the algo should be able to update its knowledge dynamically.
Three broad requirements are
Memory ( To store the data, and able to access/update it later)
Reinforcement ( To make sense)
Forecast ( To answer abstract questions)
Right now we are using the below techniques in the following order to accomplish this task.
Using Named Entity Recognition and relation detection NLP algos to extract the keyword and context from the book
Storing these keywords and context in an ontology with bayesian networks/ Inference networks
Reinforcement learning agents with Generative adversarial network of LSTM and CNN.
Is there a better method of realizing the above mentioned goals?