Thoughtland - Describing n-dimensional Objects

Thoughtland is an end-to-end system that produces an English text summarizing the error function of a machine learning algorithm applied to some training data.

Thoughtland is a four stages pipeline:

  • [Cloud] Cloud of points generation via cross-validation
  • [Cluster] Model-based clustering to identify interesting components of the error function
  • [Analysis] Identify further relation between the key components
  • [Generation] Natural language generation to produce an English text summarizing the error function.

Building Thoughtland

Thoughtland uses Maven but you will need to deploy locally some dependencies that haven't made their way into Central yet.

They are:

  • OpenSchema

git clone git:// (cd openschema; mvn install)

  • SimpleNLG

Download and extract it to some folder


mvn install:install-file -Dfile=/path/to/simplenlg/lib/lexAccess2011dist.jar -DgroupId=lexAccess2011dist -DartifactId=lexAccess2011dist -Dversion=1.0.0 -Dpackaging=jar -DgeneratePom=true mvn install:install-file -Dfile=/path/to/simplenlg/lib/lvg2011api.jar -DgroupId=lvg2011api -DartifactId=lvg2011api -Dversion=1.0.0 -Dpackaging=jar -DgeneratePom=true


git clone git://


mvn install

Running Thoughtland

(For an example command-line use, take a look at App.scala)

mvn clean compile assembly:single

java -jar /full/path/to/project/target/thoughtland-0.0.1-SNAPSHOT-jar-with-dependencies.jar

should start a web-browser at http://localhost:7071

Hacking Thoughtland

Take a look at architecture.scala and types.scala. If you want to contribute a new component for any of the four stages, just implement the Traits and send a pull-request.

Developing in Eclipse: you will need to check out OpenSchema and SimpleNLG, install the jars from the command line per the descriptions above, install the scala plugin from

and add the scala nature to the project plus add the src/{main,test}/scala as source folders (that seems to be a bug either in the maven or scala plugins or in this project pom.xml).

Built With

Share this project: