nx
ml5-library
Our great sponsors
nx | ml5-library | |
---|---|---|
36 | 16 | |
2,447 | 6,332 | |
1.9% | 0.9% | |
9.4 | 0.0 | |
11 days ago | 3 months ago | |
Elixir | JavaScript | |
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nx
-
Unpacking Elixir: Concurrency
Does nx not work for you? https://github.com/elixir-nx/nx/tree/main/nx#readme
-
A LiveView Is a Process
It is historically not great at number computing. This is being addressed by a relatively new project called Nx. https://github.com/elixir-nx/nx
It is not the right choice for CPU intensive tasks like graphics, HFT, etc. Some companies have used Rust to write native extensions for those kinds of problems. https://discord.com/blog/using-rust-to-scale-elixir-for-11-m...
- How does Elixir stack up to Julia in the future of writing machine-learning software?
-
Data wrangling in Elixir with Explorer, the power of Rust, the elegance of R
José from the Livebook team. I don't think I can make a pitch because I have limited Python/R experience to use as reference.
My suggestion is for you to give it a try for a day or two and see what you think. I am pretty sure you will find weak spots and I would be very happy to hear any feedback you may have. You can find my email on my GitHub profile (same username).
In general we have grown a lot since the Numerical Elixir effort started two years ago. Here are the main building blocks:
* Nx (https://github.com/elixir-nx/nx/tree/main/nx#readme): equivalent to Numpy, deeply inspired by JAX. Runs on both CPU and GPU via Google XLA (also used by JAX/Tensorflow) and supports tensor serving out of the box
* Axon (https://github.com/elixir-nx/axon): Nx-powered neural networks
* Bumblebee (https://github.com/elixir-nx/bumblebee): Equivalent to HuggingFace Transformers. We have implemented several models and that's what powers the Machine Learning integration in Livebook (see the announcement for more info: https://news.livebook.dev/announcing-bumblebee-gpt2-stable-d...)
* Explorer (https://github.com/elixir-nx/explorer): Series and DataFrames, as per this thread.
* Scholar (https://github.com/elixir-nx/scholar): Nx-based traditional Machine Learning. This one is the most recent effort of them all. We are treading the same path as scikit-learn but quite early on. However, because we are built on Nx, everything is derivable, GPU-ready, distributable, etc.
Regarding visualization, we have "smart cells" for VegaLite and MapLibre, similar to how we did "Data Transformations" in the video above. They help you get started with your visualizations and you can jump deep into the code if necessary.
I hope this helps!
-
Elixir and Rust is a good mix
> I guess, why not use Rust entirely instead of as a FFI into Elixir or other backend language?
Because Rust brings none of the benefits of the BEAM ecosystem to the table.
I was an early Elixir adopter, not working currently as an Elixir developer, but I have deployed one of the largest Elixir applications for a private company in my country.
I know it has limits, but the language itself is only a small part of the whole.
Take ML, Jose Valim and Sean Moriarity have studied the problem, made a plan to tackle it and started solving it piece by piece [1] in a tightly integrated manner, it feels natural, as if Elixir always had those capabilities in a way that no other language does and to put the icing on the cake the community released Livebook [2] to interactively explore code and use the new tools in the simplest way possible, something that Python notebooks only dream of being capable of, after a decade of progress
That's not to say that Elixir is superior as a language, but that the ecosystem is flourishing and the community is able to extract the 100% of the benefits from the tools and create new marvellously crafted ones, that push the limits forward every time, in such a simple manner, that it looks like magic.
And going back to Rust, you can write Rust if you need speed or for whatever reason you feel it's the right tool for the job, it's totally integrated [3][4], again in a way that many other languages can only dream of, and it's in fact the reason I've learned Rust in the first place.
The opposite is not true, if you write Rust, you write Rust, and that's it. You can't take advantage of the many features the BEAM offers, OTP, hot code reloading, full inspection of running systems, distribution, scalability, fault tolerance, soft real time etc. etc. etc.
But of course if you don't see any advantage in them, it means you probably don't need them (one other option is that you still don't know you want them :] ). In that case Rust is as good as any other language, but for a backend, even though I gently despise it, Java (or Kotlin) might be a better option.
[1] https://github.com/elixir-nx/nx https://github.com/elixir-nx/axon
-
Distributed² Machine Learning Notebooks with Elixir and Livebook
(including docs and tests!): https://github.com/elixir-nx/nx/pull/1090
I'll be glad to answer questions about Nx or anything from Livebook's launch week!
-
Why Python keeps growing, explained
I think that experiment is taking shape with Elixir:
-
Does Nx use a Metal in the Backend ?
However the issue here at Nx https://github.com/elixir-nx/nx/issues/490 is already closed.
-
Do I need to use Elixir from Go perspective?
Outside of that, Elixir can be used for data pipelines, audio-video processing, and it is making inroads on Machine Learning with projects like Livebook, Nx, and Bumblebee.
ml5-library
- Why do people curse JS so much, but also say it's better than Python
-
Riffr - Create Photo Montages in the Browser with some ML Magic✨
Important APIs - ml5 for in-browser detection, face-api that uses tensorflow-node to accelerate on-server detection. VueUse for a bunch of useful component tools like the QR Code generator. Yahoo's Gifshot for creating gif files in-browser etc.
-
Contributing to WebSockets – Cryptocurrency Users
> Have we seen any creator of a deep learning library, take a similar position if not stopping any support for anyone using it for mass surveillance?
ml5.js license:
> This license gives everyone as much permission to work with this software as possible as long as they comply with the ml5.js Code of Conduct [...]
ml5.js code of conduct:
> Do not: [...] Use ml5.js to build tools of mass surveillance and prediction to repress the rights of people
https://github.com/ml5js/ml5-library/blob/main/LICENSE.md
Not sure how enforcable this is but it exists.
-
Brain.js: GPU Accelerated Neural Networks in JavaScript
See also: https://ml5js.org/
"The library provides access to machine learning algorithms and models in the browser, building on top of TensorFlow.js with no other external dependencies."
-
10 Mind Blowing JavaScript libraries Of 2022 (I mean it Javascript Noob)
(5) ml5.js
-
Top 5 JavaScript Libraries for Machine Learning, Deep Learning
ML.js
-
[Showoff Saturday] I made a captcha prototype that requires a banana
I used ml5js.org , p5js.org and https://teachablemachine.withgoogle.com to train the Banana images. When you create a new image project on Teachable Machine, you can output the p5js and basically use it right out of the box - I customized js, css, and html from there.
-
My First 30 Days of 100 Days of Code.
Going forward: I'll be 100% into JavaScript. You can use JavaScript in so many fields nowadays. Websites React, Mobile Apps React Native, Machine Learning TensorFlow & ML5, Desktop Applications Electron, and of course the backend Node as well. It's kind of a no-brainer. Of course, they all have specific languages that are better, but for now, JavaScript is a bit of a catch-all.
-
PyTorch vs. TensorFlow in 2022
Yeah they made ml5.js for this reason: https://ml5js.org/
I do feel like Google could do better communicating all of their different tools though. Their ecosystem is large and pretty confusing - they've got so many projects going on at once that it always seems like everyone gets fed up with them before they take a second pass and make them more friendly to newcomers.
Facebook seems to have taken a much more focused approach as you can see with PyTorch Live
-
[D] Are you using PyTorch or TensorFlow going into 2022?
From other comments, a lot of JavaScript developers who want to use TensorFlow had never heard of TensorFlow.js or ml5.js!
What are some alternatives?
tfjs-models - Pretrained models for TensorFlow.js
Elixir - Elixir is a dynamic, functional language for building scalable and maintainable applications
handpose-facemesh-demos - 🎥🤟 8 minimalistic templates for tfjs mediapipe handpose and facemesh
gleam - ⭐️ A friendly language for building type-safe, scalable systems!
axon - Nx-powered Neural Networks
dplyr - dplyr: A grammar of data manipulation
explorer - An open source block explorer
fib - Performance Benchmark of top Github languages
clojerl - Clojure for the Erlang VM (unofficial)
meander - Tools for transparent data transformation
ClojureCLR - A port of Clojure to the CLR, part of the Clojure project
protocol_ex - Elixir Extended Protocol