From Wikipedia, the free encyclopedia
Jump to: navigation, search
Encog Machine Learning Framework
Developer(s) Heaton Research, Inc and contributors
Stable release
3.3.0 / September 24, 2014 (2014-09-24)
Development status Active
Written in Java, .Net, C++
Operating system Cross-platform
Type Machine Learning
License Apache 2.0 Licence
Website http://www.heatonresearch.com/encog

Encog is a machine learning framework available for Java, .Net, and C++. [1] Encog supports different learning algorithms such as Bayesian Networks, Hidden Markov Models and Support Vector Machines. However, its main strength lies in its neural network algorithms. Encog contains classes to create a wide variety of networks, as well as support classes to normalize and process data for these neural networks. Encog trains using many different techniques. Multithreading is used to allow optimal training performance on multicore machines. The C++ version of Encog can offload some processing to an OpenCL compatible GPU for further performance gains.

Encog can be used for many tasks, including medical[2] and financial research.[3] A GUI based workbench is also provided to help model and train neural networks. Encog has been in active development since 2008.[4]

Neural Network Architectures[edit]

Training Techniques[edit]

See also[edit]


  1. ^ J. Heaton http://www.jmlr.org/papers/volume16/heaton15a/heaton15a.pdf Encog: Library of Interchangeable Machine Learning Models for Java and C#
  2. ^ D. Heider, J. Verheyen, D. Hoffmann http://www.biomedcentral.com/content/pdf/1471-2105-11-37.pdf Predicting Bevirimat resistance of HIV-1 from genotype
  3. ^ J. Heaton http://www.devx.com/opensource/Article/44014/1954 Basic Market Forecasting with Encog Neural Networks
  4. ^ http://www.heatonresearch.com/encog Description of Encog Project.

External links[edit]