Liking cljdoc? Tell your friends :D

svm-techml-smile

Bridging tools between tech.ml.dataset and Smile, for SVM/SVR use cases.

Why

tech.ml used to ship this interop itself, but dropped it when Smile changed its licence. This library carries the pieces back for the workflows we actually use: dataset ↔ DataFrame / double-array conversion, RBF kernel estimation, std-scaling, and SVM/SVR fit + predict.

It is also the only place Smile is imported. Consumers depend on this library and get the Smile version pinned here (smile-core 7.0.0) — no Smile coordinate in their own deps.edn / project.clj, no version skew across projects.

Install

[net.clojars.alex314159/svm-techml-smile "0.1.1"]

smile-core 7.0.0 is compiled for Java 25+, so point JAVA_HOME at a 25/26 JDK and pass --enable-native-access=ALL-UNNAMED (already in this project's :jvm-opts).

Namespaces

nswhat's in it
svm-techml-smile.corere-exports everything below — require this one ns if you don't care about the split
svm-techml-smile.bridgedataset/column → Smile DataFrame, DoubleVector, double arrays
svm-techml-smile.kernelRBF sigma estimation, std-scaling, fit-RBF-SVM / fit-RBF-SVR, predict, rsq
svm-techml-smile.featuressmall spec DSL for deriving dataset columns
svm-techml-smile.preprocessingcross-sectional SVR model spec + data prep (one-hot, scaling, splits)
svm-techml-smile.classificationtime-series SVM model spec, label conversion, evaluation

Note core aliases via a macro: REPL-driven tooling (Calva, CIDER) resolves the docs, purely static analysis (clj-kondo, offline Cursive index) doesn't — require the defining ns there.

Development

lein test
lein bench    # criterium, :bench profile only — never in the released jar

Can you improve this documentation? These fine people already did:
Alexandre Almosni & alex314159
Edit on GitHub

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
←Move to previous article
→Move to next article
Ctrl+/Jump to the search field
× close