5 ms·
For the uninitiated, what is the advantage of using Elixir for machine learning?
by marcosfelt 3y ago
For the uninitiated, what is the advantage of using Elixir for machine learning?
- jrmiii 3y agoYou're in luck, there was a big discussion on that just yesterday. https://news.ycombinator.com/item?id=36859785 https://news.ycombinator.com/item?id=36859785
- pmarreck 3y agoFor me it would be, first and foremost, "not having to deal with Python's many idiosyncrasies". Even when I go with best-practices, trying to git clone a Python project and "pip install" something into a virtualenv, it's STILL hit-or-miss whether it conflicts with something else. It's a very janky experience and I don't like it, and this isn't even before touching the language itself, which is well-covered ground already: https://medium.com/nerd-for-tech/python-is-a-bad-programming-language-2ab73b0bda5 https://medium.com/nerd-for-tech/python-is-a-bad-programming... I am only reposting my own tweet here because I just sent an answer to the exact same question to a youtuber who was curious: https://twitter.com/pmarreck/status/1684248660832288771?s=20 https://twitter.com/pmarreck/status/1684248660832288771?s=20 It has a few links. There's also this podcast (which has a transcript link): https://smartlogic.io/podcast/elixir-wizards/s10-e10-sean-moriarity-machine-learning-elixir/ https://smartlogic.io/podcast/elixir-wizards/s10-e10-sean-mo... Lastly, I just found https://www.thestackcanary.com/from-python-pytorch-to-elixir-nx/ https://www.thestackcanary.com/from-python-pytorch-to-elixir... which explains some reasons.
- mrdoops 3y agoElixir is good at doing a lot of things at once on - scaling to lots of machines - and not exploding catastrophically while doing so. Turns out this is really helpful for machine learning where you want to coordinate big data pipelines and do things like batching requests to a GPU resource (because GPUs want to be parallelized). You can do batched ML inference pretty much out of the box with Nx.Serving https://hexdocs.pm/nx/Nx.Serving.html https://hexdocs.pm/nx/Nx.Serving.html where you'd have to spin up a separate third party service like https://developer.nvidia.com/triton-inference-server https://developer.nvidia.com/triton-inference-server otherwise.