Upgrade to Encog 3.0
Encog 3.0 is a major upgrade to the Encog framework. Encog 3.0 takes Encog from its neural network roots and lays the path for more general machine learning methods to be added to Encog. This allows neural networks and machine learning methods, such as Support Vector Machines to be used much more interchangeably.
Contents |
Platform Specific Issues
Unfortunately, this does break some compatibility with previous Encog versions. This article addresses how to upgrade a project from Encog 2.5.x to Encog 3.0. This article is broken into the following parts.
General Changes
There are some other general changes with Encog 3.0 that you should be aware of.
OpenCL/GPU
OpenCL and GPU processing have been removed from the main Encog JAR/DLL. This reduces deployment complexity for the majority of users who do not make use of this functionality. However, Encog OpenCL is being greatly enhanced and will be supported as a plug in. This plugin has not yet been released, but is expected to be released prior to Encog 3.0 leaving beta.
Encog EG Files
In Encog 2.5.x Encog EG files were a lengthy sprawling collection of XML that could contain many different Encog objects. Additionally, training data could be stored in an EG file. This resulted in big performance issues. Storing training data in XML is bad enough, but storing training data a mixed use XML file is even worse. The nature of XML is you have to read through the entire file until you find what you want. As a result, in Encog 3.0 training data is no longer stored in EG files. Training data is either stored in a CSV for EGB file. An EGB file is a binary file designed for higher speed access. Additionally, only one Encog object is stored in a single EG file. EG files are now typically only used to store single Machine Learning Methods. Groups of EG files, and files related to them, are now stored in directories. The Encog Workbench works around the concept of a project directory.