Sunday, May 19, 2013

Some Java based AI Frameworks : Encog, JavaML, Weka

While working through I am working through Programming Collection Intelligence I found myself sending a lot of time translating the Python code to java, being typically impatient at my slow progress, I went searching for alternatives.

I found 3:
Encog - Heaton Research
JavaML
Weka

This is by no means an in-depth investigation, I simply downloaded what the relevant projects had available and quickly compared what was available to me to learn and implement AI related samples / applications.
 

Encog

Advantages

  1. You Tube video tutorials
  2. E-Books available for both Java and .Net
  3. C# implementation
  4. Closure wrapper
  5. Seems active

Disadvantages

  1. Quite large code base to wrap your head around, this is probably due to the size of the domain we are looking at, but still much more intimidating to start off with vs. the Java ML library.

JavaML


Advantages

  1. Seems reasonably stable
  2. Well documented source code
  3. Well defined simple algorithm implementations

Disadvantages

  1. Lacks the tutorial support for a AI newbie like myself

Weka


Advantages

Disadvantages

  1. Could not install Weka 3-7-9 dmg... kept on giving me a "is damaged and can't be opened error, so left it there, as Sweet Brown says: "Ain't nobody got time for that". 

So no surprise I went with Encog, and started on their video tutorials....
A couple hours later, first JUnit test understanding, training and testing a Hopfield neural network using the Encog libs.




No comments:

Post a Comment

Popular Posts

Followers