data-science

Nguyen Hoai Nam 2024-07-16T03:25:31.471449Z

I see that scicloj.ml.tribuo currently supports classification and regression models, and I’ve got two questions: 1. Will it eventually support clustering, and if so, when? 2. Should I use Tribuo’s Java API for clustering in the meantime? It doesn’t seem very compatible with other Clojure libraries like tech.ml.dataset.

Daniel Slutsky 2024-07-16T07:07:36.542429Z

The https://generateme.github.io/fastmath-clustering/ library contains some clustering algorithms (using Smile v2 rather than Tribuo).

Nguyen Hoai Nam 2024-07-16T07:15:09.372659Z

Thanks! I looked at it and it seemed to fit my use case, but https://scicloj.github.io/blog/the-current-state-of-ml-in-clojure/ suggests moving away from Smile due to licensing issues. I’m working on my company’s internal corporate software, and Smile is currently under GPLv3. Should I avoid it?

Daniel Slutsky 2024-07-16T07:18:01.726439Z

You're right, this is exactly the reason Smile was removed from Fastmath itself for the upcoming Fastmath version 3. Fastmath-clustering uses Smile version 2, which allows for a difference license -- see the note at the top of the page.

Daniel Slutsky 2024-07-16T07:18:07.615269Z

Indeed confusing.

Nguyen Hoai Nam 2024-07-16T07:19:13.287709Z

Oh right, I mistakenly thought fastmath-clustering used Smile under GPLv3, but it actually uses an old version of Smile under LGPL. Thanks!

🙏 1
🙂 1
2024-07-16T10:54:37.523469Z

GPL V3 should be fine for internal software though

2024-07-16T10:55:50.734989Z

(heck, it is fine for commercial software too, just not proprietary software, but that can be an issue in some circumstances)

👍 2
2024-09-01T15:40:57.594099Z

Currently scicloj.ml.tribuo supports supervised learnining only. I am happy to accepts PRs to support clustering. In the meanwhile it is of course OK to use Java interop