M

Your submission is now a Draft.

Once it's ready, please submit your draft for review by our team of Community Moderators. Thank you!

You have been invited to co-author this question.

When it is ready, the author will submit it for review by Community Moderators. Thanks for helping!

Pending

This question now needs to be reviewed by Community Moderators.

We have high standards for question quality. We also favor questions on our core topic areas or that we otherwise judge valuable. We may not publish questions that are not a good fit.

If your question has not received attention within a week, or is otherwise pressing, you may request review by tagging @moderators in a comment.

You have been invited to co-author this question.

It now needs to be approved by Community Moderators. Thanks for helping!

{{qctrl.question.title}}

{{qctrl.question.predictionCount() | abbrNumber}} predictions
{{"myPredictionLabel" | translate}}:  
{{ qctrl.question.resolutionString() }}
{{qctrl.question.predictionCount() | abbrNumber}} predictions
My score: {{qctrl.question.player_log_score | logScorePrecision}}
Created by: Anthony and
co-authors , {{coauthor.username}}
AI Demonstrations

Make a Prediction

Prediction

Since the early days of "machine code" programming using a very limited instruction set, more and more high-level programming languages have been developed that layer atop this fundamental level. It is common, for example, have a Python script that calls a routine written in C and compiled into machine code. Other languages (like Mathematica) are even higher-level. Still, even a high-level language requires unambiguous specification of the steps required for the task at hand.

It would be much nicer to specify the desired task rather than exactly how to do it, i.e. to have systems that can write programs to specification. Such systems have had limited success so far, but there are signs of significant progress. This recent review, for example, mentions new efforts to "induce" programs from a large set of input-output pairs. A paper by Neelakantan, Le, and Sutskever, for instance, introduce a "Neural Programmer," which augments a neural network with a set of basic operations that the network can be trained to use to solve a task; they showed success in training the network to reproduce the action of a set of simple programs.

While machine learning (ML) systems like the Neural Programmer don't quite output (say) Python programs written to some specification, they do create a program to accomplish a particular task. Given a system to translate a specification into a trainable task, and to translate the Neural Programmer's instruction list into a typical language, this may not be that far away, at least for simple programming tasks. So we ask: