data-science

nwbrown 2024-12-13T20:47:38.531079Z

is there any documentation around prerequisites for noj? So far I've run into dependencies for blas and gfortran

Daniel Slutsky 2024-12-13T21:07:12.054009Z

Hi. How did you run into these dependencies? What did you try to do?

Daniel Slutsky 2024-12-13T21:08:29.937409Z

The devcontainer setup is supposed to include everything which is needed: https://github.com/scicloj/noj/tree/main/.devcontainer

Daniel Slutsky 2024-12-13T21:09:19.316969Z

.. but many parts of it are supposed to work in pure JVM.

nwbrown 2024-12-13T21:11:38.826609Z

I'm trying to train a :smile.regression/ordinary-least-square model

(def pipeline
  (mm/pipeline
    (ds-mm/set-inference-target :win_loss_perc)
    {:metamorph/id :model}
    (ml/model {:model-type :smile.regression/ordinary-least-square})))

Daniel Slutsky 2024-12-13T21:14:04.887289Z

Indeed Smile is one of the parts that need native dependencies.

Daniel Slutsky 2024-12-13T21:14:11.229229Z

Does it work for you now?

nwbrown 2024-12-13T21:14:34.769369Z

not yet, it's still trying to find gfortran

Daniel Slutsky 2024-12-13T21:15:17.122629Z

What is the error message?

nwbrown 2024-12-13T21:16:17.717449Z

Execution error (UnsatisfiedLinkError) at java.lang.ClassLoader/loadLibrary (ClassLoader.java:2678).
no gfortran in java.library.path: [/usr/java/packages/lib, /usr/lib/x86_64-linux-gnu/jni, /lib/x86_64-linux-gnu, /usr/lib/x86_64-linux-gnu, /usr/lib/jni, /lib, /usr/lib]

Daniel Slutsky 2024-12-13T21:21:46.386339Z

Thanks. Native dependencies will sometimes be a problem, in some platforms. If you wish, it would be good to keep discussing this on the project issues or https://scicloj.github.io/docs/community/chat/ at #noj-dev. Maybe we'll find an answer. Specifically for ordinary least squares, you do not need Smile. You can also use {:model-type :fastmath/ols}.

nwbrown 2024-12-13T21:23:41.628159Z

is there a require needed for that?

Daniel Slutsky 2024-12-13T21:27:16.418289Z

Yes: [scicloj.metamorph.ml.regression].

nwbrown 2024-12-13T21:27:22.886219Z

thanks

Daniel Slutsky 2024-12-13T21:37:45.730619Z

You may also find this draft tutorial useful: https://scicloj.github.io/noj/noj_book.linear_regression_intro It computes linear regression directly using Fastmath, without http://Metamorph.ml. This pathway can be useful when your task is more about statistical interpretation and less about machine learning. We will keep updating it in the coming days.

🎉 2
nwbrown 2024-12-13T21:38:07.019899Z

thanks

2024-12-14T10:16:23.082639Z

"metamorph.ml" itself does not need anything native. some models do, so do (some) of the smile based models from "scicloj.ml.smile" So overall "Noj" contains indeed models which are not "pure JVM". But for OLS we have now "pure JVM" alternatives inside Noj

👍 1