All notable changes to this project will be documented in this file.
This change log follows the conventions of keepachangelog.com.
For releases before version [1.0.0] this project did not follow semver.
For releases after version 1.0.0 this project will follow semver, with the addition that minor
releases might only add additional tests and/or documentation updates rather than bug fixes.
This releases gets working support for GPU backed emd calculations up to <256 categories. It supports dataset sizes that other k means implementations I've tried fail to support. It is also faster than most other k means implementations I've tried in part because it uses a better algorithm than k-means++.
However, if you aren't on the happy path of EMD and k-means-afk this release probably breaks everything.
This release improves the usability of loading and saving clustered models. It is potentially backward incompatible with previous releases because it changes the returned output of the cluster result record.
ClusterResult
now provides an :assignments
field which is a filepath to an assignments dataset.ClusterResult
now provides a .load-centroids
method.ClusterResult
now has a filepath rather than a tech.ml.dataset
under the :centroids
key.ClusterResult
:configuration
field now contains a map rather than the full clustering state record.:k
, :m
, :distance-key
, :init
and :col-names
.ClusterResult
.load-assignments
now returns a sequence of sequences.ClusterResult
classify
method now supports dynamic dispatch. When given a vector it will assume that
vector has fields in :col-name
ordering. When given a map, it will extract fields in :col-name
ordering
before calling classify.load-model
function would fail to load persisted cluster results from disk because when
printed to a file the output of a dataset would have pretty printing which conflicted with the
reader syntax..load-assignments
on a massive cluster result should no longer triggers out of memory
issues..save-model
.load-model
..classify
..load-assignments
..load-centroids
.ClusterResult
:configuration
field validity.initialize-centroids
multimethod; choice of initialization method can now be controlled by callers via multimethods.Can you improve this documentation? These fine people already did:
Joshua & Joshua ColeEdit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close