Programming by example: Difference between revisions

Content deleted Content added
No edit summary
Adding short description: "Using concrete examples to teach computers behaviors"
 
(11 intermediate revisions by 2 users not shown)
Line 1:
{{Short description|Using concrete examples to teach computers behaviors}}
In [[computer science]], '''programming by example''' ('''PbE'''), also termed '''[[Programming language|programming]] by demonstration''' or more generally as '''demonstrational programming''', is an [[end-user development]] technique for [[machine learning|teaching a computer new behavior]] by demonstrating actions on concrete examples.<ref>[https://www.microsoft.com/en-us/research/publication/machine-learning-framework-programming-example/ A Machine Learning Framework for Programming by Example - Microsoft]</ref> The system records user actions and infers a generalized [[Computer program|program]] that can be used on new examples.
 
PbE is intended to be easier to do than [[Tradition|traditional]] [[computer programming]], which generally requires learning and using a [[programming language]]. Many PbE systems have been developed as research prototypes[[prototype]]s, but few have found widespread real-world application. More recently, PbE has proved to be a useful paradigm for creating scientific work-flows. PbE is used in two independent clients for the [[BioMOBY]] protocol: [http://www.biomedcentral.com/1471-2105/8/208/abstract Seahawk] and [http://www.scfbm.org/content/1/1/4 Gbrowse moby].
 
Also the [[programming by demonstration]] (PbD) term has been mostly adopted by robotics [[Research|researchers]] for [[teaching]] new behaviors to the [[robot]] through a physical demonstration of the task. The usual distinction in [[the literature]] between these terms is that in PbE the user gives a prototypicalprototypica<nowiki/>l product of the [[computer]] execution, such as [[Query by Example|a row in the desired results of a query]]; while in PbD the user performs a sequence of actions that the computer must repeat, generalizing it to be used in different [[data]] sets. For final users, to automate a [[workflow]] in a [[Complex logarithm|complex]] tool (e.g. [[Adobe Photoshop|Photoshop]]), the most simple case of PbD is the [[macro recorder]].
 
==See also==