Most (all I know) machine learning systems use a fixed set of data input channels and processing algorithms, only expanding underlying dataset processed by these; they obtain new data but only from predefined sources, and use only their fixed, built-in capacity to process it, possibly tweaking parameters of the algorithm (like weights of neural network nodes) but never fundamentally changing the algorithm.

Are there systems - or research into creating these - that are able to acquire "from out there" new methods of obtaining data and new ways to process it for results? Expand not just passive data set to "digest it" by active but static algorithm, but make the algorithm itself self-expanding - be it in terms of creating/obtaining new processing methods for own data set, and creating/obtaining new methods of acquiring that data (these methods)?


2 Answers 2


A few weeks ago, I've come across this paper Learning to learn by gradient descent by gradient descent by Marcin Andrychowicz, Misha Denil, Sergio Gomez, Matthew W. Hoffman, David Pfau, Tom Schaul, Brendan Shillingford and Nando de Freitas (i.e. Deepmind guys) whose abstract is the following:

The move from hand-designed features to learned features in machine learning has been wildly successful. In spite of this, optimization algorithms are still designed by hand. In this paper we show how the design of an optimization algorithm can be cast as a learning problem, allowing the algorithm to learn to exploit structure in the problems of interest in an automatic way. Our learned algorithms, implemented by LSTMs, outperform generic, hand-designed competitors on the tasks for which they are trained, and also generalize well to new tasks with similar structure. We demonstrate this on a number of tasks, including simple convex problems, training neural networks, and styling images with neural art.

You can find the related Github's repository here.

Unfortunately, I still haven't found the time to read the paper to explain the details of these apparently interesting ideas.

  • $\begingroup$ Still pretty far from what I hoped for (" also generalize well to new tasks with similar structure.) - but well, if that's the state of affairs, that's it. $\endgroup$
    – SF.
    May 16, 2017 at 8:11
  • $\begingroup$ That's basic neural net learning, not meta-learning. When humans learn how to better do research and remember important concepts or devise ways to learn more quickly, that is what this question is about. $\endgroup$ Jul 19, 2018 at 14:25

I think the closest thing is building up knowledge using predictions like in the Horde Architecture. Research about what are good predictions to make is on going at the University of Alberta, Canada but the Horde architecture has the potential to ask new questions and generate new data based on the answers to those questions in the form of predictions.

One example is having a robot with a bump sensor and servos and asking questions like

Will rotating the servos CW for 90 degrees make the bump sensor turn on?

This question can be phrased and it's answer estimated mathematically in the form of a General Value Function as defined in the paper.

Asking different questions based on predictions like this one is where the power comes from.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .