I am pretty new to machine learning. I understand that there are many machine learning algorithms to solve different types of problems. But suppose you are given a program with an unknown algorithm, and you can feed the program with many datasets and obtain the outputs, as well as error rates and other diagnostics. Is it possible that we can develop an algorithm that can learn from these datasets and outputs to find out or mimic the underlying algorithm? I apologize if any terms are used in a wrong way.


Yes, but so far we managed to infer only basic algorithms. Example: Neural Turing machines:

Neural Turing machines, developed by Google DeepMind, couple LSTM networks to external memory resources, which they can interact with by attentional processes. The combined system is analogous to a Turing machine but is differentiable end-to-end, allowing it to be efficiently trained by gradient descent. Preliminary results demonstrate that neural Turing machines can infer simple algorithms such as copying, sorting, and associative recall from input and output examples.

  • $\begingroup$ Thank you Franck! This looks very interesting. This makes me think of - a neural Turing machine may not be able to figure out "the algorithm to infer simple algorithms", which is its own algorithm. $\endgroup$ Sep 17 '16 at 2:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.