Releases: haifengl/smile
1.5.1
1.5.0
- DataFrame
- New Shell for Mac and Linux
- Shell improvement for Windows
- Out of box support of native LAPACK for Windows
- Scala functions to export AttributeDataset, double[][], double[] to ARFF or CSV
- Scala functions for validation measures
- Refactor feature transformation and generation classes
- NeuralNetwork for regression
- Recursive least squares
- Refactor Scala NLP API
- Bug fixes
1.4.0
- Add smile-netlib module that leverages native BLAS/LAPACK for matrix computation. See below for the details how to enable it.
- Add t-SNE implementation.
- Improve LLE and Laplacian Eigenmaps performance.
- Export DecisionTree and RegressionTree to Graphviz dot file for visualization.
- Smile shell is now based on Scala 2.12.
- Bug fixes.
To enable machine optimized matrix computation, the users should add
the dependency of smile-netlib:
<dependency>
<groupId>com.github.haifengl</groupId>
<artifactId>smile-netlib</artifactId>
<version>1.4.0</version>
</dependency>
and also make their machine-optimised libblas3 (CBLAS) and liblapack3 (Fortran)
available as shared libraries at runtime.
OS X
Apple OS X requires no further setup as it ships with the veclib framework.
Linux
Generically-tuned ATLAS and OpenBLAS are available with most distributions
and must be enabled explicitly using the package-manager. For example,
- sudo apt-get install libatlas3-base libopenblas-base
- sudo update-alternatives --config libblas.so
- sudo update-alternatives --config libblas.so.3
- sudo update-alternatives --config liblapack.so
- sudo update-alternatives --config liblapack.so.3
However, these are only generic pre-tuned builds. If you have an Intel MKL licence,
you could also create symbolic links from libblas.so.3 and liblapack.so.3 to libmkl_rt.so
or use Debian's alternatives system.
Windows
The native_system builds expect to find libblas3.dll and liblapack3.dll
on the %PATH% (or current working directory). Besides vendor-supplied
implementations, OpenBLAS provide generically tuned binaries, and it
is possible to build ATLAS.
1.3.1
1.3.0
1.2.3
1.2.1
1.2.0
The key features of the 1.2.0 release are:
- Headless plot. Smile’s plot functions depends on Java Swing. In server applications, it is needed to generate plots without creating Swing windows. With headless plot (enabled by -Djava.awt.headless=true JVM options), we can create plots as follows:
val canvas = ScatterPlot.plot(x, '.')
val headless = new Headless(canvas);
headless.pack();
headless.setVisible(true);
canvas.save(new java.io.File("zone.png"))
- All classification and regression models can be serialized by
write(model) // Java serialization
or
write.xstream(model) // XStream serialization
- Refactor of smile.io Scala API.
- Parsers are in smile.read object.
- Parse JDBC ResultSet to AttributeDataset.
- Model serialization methods in smile.write object.
- Platt scaling for SVM
- Smile NLP tokenizers are unicode-aware.
- Least squares can handle rank deficient now.
- Various code improvements.