6 ms·
Could you elaborate on this a bit ? Lisp has next to no numerical libraries IIRC ?
by tpejrl23432 4y ago
Could you elaborate on this a bit ? Lisp has next to no numerical libraries IIRC ?
- vindarel 4y agowon't answer but a good starting point is https://github.com/CodyReichert/awesome-cl#numerical-and-scientific https://github.com/CodyReichert/awesome-cl#numerical-and-sci..., did you see it? It has some libraries, for example magicl is developed by and for Quantum companies.
- medo-bear 4y ago> Lisp has next to no numerical libraries IIRC ? https://github.com/CodyReichert/awesome-cl#machine-learning https://github.com/CodyReichert/awesome-cl#machine-learning https://github.com/CodyReichert/awesome-cl#numerical-and-scientific https://github.com/CodyReichert/awesome-cl#numerical-and-sci...
- tpejrl23432 4y agoYou can hardly compare any of these one-off projects to something like numpy (let alone something like pytorch etc. which Julia is going after).
- medo-bear 4y agowhat do you mean a one-off project? some of these have corporate/institutional backing but thats not the point. if you know how to implement machine learning models then there should be nothing (except maybe availability of pretrained models) preventing you from using common lisp. if you dont want to dig deep and are happy using just the front end (perfectly acceptable) then python is a much better bet all the needed ingredients are there to build a custom production class ml solution in common lisp: vectorization, cuda, blas, lapack
- p1esk 4y agoDo any of those libraries linked above provide an example of training a resnet or bert on a GPU? I’m not looking for anything fancy, or production quality, just a basic example.
- medo-bear 4y agoalthough not necessarily bert or resnet the following probably has all the ingredients for what you are looking for. the author of this library is a research scientist at deepmind since 2015 https://github.com/melisgl/mgl#x-28MGL-BP-3A-40MGL-BP-20MGL-PAX-3ASECTION-29 https://github.com/melisgl/mgl#x-28MGL-BP-3A-40MGL-BP-20MGL-...
- p1esk 4y agoThere's not even a convolutional layer provided as a building block. This project looks pretty dead to me: most of the code is 8 years old, and the last code-changing commit is over 2 years old. I guess it's okay as a proof of concept for ML with Lisp, but I don't think anyone interested in ML would actually consider using it.
- medo-bear 4y agoi work in ml and you asked for an example so i thought a proof of concept answer is sufficient. as i said somewhere else if you are looking for a ready made framework then this is not for you and should probably stick with pytorch, tf, and maybe even pyro. but if you are willing to engineer your own system for optimal performance while avoiding c++ then you would be served good by common lisp. common lisp for ml is suited for software engineers doing ml not so much statisticians
- piethesailorman 4y agoIn defense of common lisp: The language is ansi standard and hasn't seen core changes in decades. This means cl pagckages can be "done". It is very common in cl to have projects that haven't been touched in years, because it is highly unlikely to break, hence, "it just works". As for this specific ML conversation, I am not in this field and have nothing valuble to say about who uses what and how viable/appropriate any of the approaches(languages) are for ML.
- Lisp-Stat 4y agoI think this depends on what part of the statistics universe you're working in. For example, within Lisp-Stat the statistics routines [1] were written by an econometrician working for the Austrian government (Julia folks might know him - Tamas Papp). It would not be exaggerating to say his job depending on it. These are state of the art, high performance algorithms, equal to anything available in R or Python. So, if you're doing econometrics, or something related, everything you need is already there in the tin. For machine learning, there's CLML [2], developed by NTT. This is the largest telco in Japan, equivalent to ATT in the USA. As well, there is MGL [3], used to win the Higgs Boson challenge a few years back. Both actively maintained. For linear algebra, MagicCL was mention elsewhere in the thread. My favourite is MGL-MAT [4], also by the author of MGL. This supports both BLAS and CUBLAS (CUDA for GPUs) for solutions. Finally, there's the XLISP-STAT archive [5]. Prior to Luke Tierney, the author of XLISP-Stat joining the core R team, XLISP-STAT was the dominate statistical computing platform. There's heaps of stuff in the archive, most at least as good as what's in base R, that could be ported to Lisp-Stat. Common Lisp is a viable platform for statistics and machine learning. It isn't (yet) quite as well organised as R or Python, but it's all there. [1] https://github.com/Lisp-Stat/numerical-utilities/blob/master/src/statistics.lisp https://github.com/Lisp-Stat/numerical-utilities/blob/master... [2] https://github.com/mmaul/clml https://github.com/mmaul/clml [3] https://github.com/melisgl/mgl https://github.com/melisgl/mgl [4] https://github.com/melisgl/mgl-mat https://github.com/melisgl/mgl-mat [5] https://lisp-stat.dev/docs/resources/xlisp/ https://lisp-stat.dev/docs/resources/xlisp/