Hacker News new | past | comments | ask | show | jobs | submit login
Interactive Programming for Artificial Intelligence [video] (youtube.com)
107 points by dragandj on Nov 29, 2019 | hide | past | favorite | 9 comments



Dragan is on a mission to make deep learning and Bayesian models on Clojure. As a lisper who has spent much time using Python to access TensorFlow, I applaud his efforts! Lots of good work getting the low level stuff working. He really deserves support.

As a practical matter however, for someone who wants to pick up deep learning for use in their domain of expertise or job, it is probably better to just use Python with TensorFlow or PyTorch.


I was at Clojure/conj this year and this was one of my favorite sessions of the conference.

I really hope libraries like these catch on, because I hate dealing with Python.


Thank you for the support.

Regarding the high level stuff, do you have any specific points that you'd like to be addressed, or it is just a general feeling such as "everything's in Python so it must be good (for everyone)"?


Hello Dragan, being able to easily scale to many GPUs is often important for both research and production.

To be honest, I use Common Lisp much more often than Clojure, and I have several times wished that you had entered the Common Lisp world instead of the Clojure world ten years ago so I could more easily use your work.

I believe in REPL based bottom up development (Lisp, Haskell, and Python) so I think the most value from your work will be in supporting interactive machine learning development.


> being able to easily scale to many GPUs is often important for both research and production

An interesting feature of these Clojure libraries is that you can (easily-ish) combine even multiple GPUs from different vendors - Nvidia AND AMD AND Intel, in the same process. You can even combine CUDA AND OpenCL. This is something that, it seems to me, is not even supported in Python, or at least it is not easy.


> Is that a feature of the JVM? Do you have more info about it?

No, it is a feature of how I programmed these libraries. There is ton of info and tutorials at

https://dragan.rocks

https://github.com/uncomplicate

https://aiprobook.com

Regarding specifically CUDA and OpenCL, I'm going to start the books about this as soon as I complete v1.0 of the two books that are in works now (Deep Learning for Programmers and Numerical Linear Algebra for programmers), which are already accessible for reading as drafts.


Is that a feature of the JVM? Do you have more info about it? thank you for all your work!


Links mentioned in the talk:

Books:

Deep Learning for Programmers: https://aiprobook.com/deep-learning-for-programmers/

Numerical Linear Algebra for Programmers: https://aiprobook.com/numerical-linear-algebra-for-programme...

Blog: https://dragan.rocks


Great job. Would like to read those books. Unfortunately available payment scheme is not suitable for me. I’m ready to pay a larger one time payment with the help of my employer or subscribe to all books at once with a single subscription. Holding multiple subscriptions to unpublished books is much harder psychologically.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: