GeometricFlux.jl
Transformers.jl
Our great sponsors
GeometricFlux.jl | Transformers.jl | |
---|---|---|
3 | 7 | |
348 | 503 | |
1.4% | - | |
5.1 | 6.9 | |
6 months ago | 2 months ago | |
Julia | Julia | |
MIT License | MIT License |
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.
GeometricFlux.jl
- TensorFlow Graph Neural Networks
- Fastai.jl: Fastai for Julia
-
OO in Python is mostly pointless
@ddragon described it rather well. Some significant examples include JuMP (https://jump.dev) for mathematical optimization and how FluxML (Julia's "Keras"), Zygote (whole program automatic differentiation) and ODE solvers can work together easily to build Neural ODE solvers in relatively few lines of code. It is also why one person can write - https://github.com/yuehhua/GeometricFlux.jl - and benefit from the CUDA, FluxML, Zygote packages to get high performance.
Transformers.jl
-
Julia 1.10 Released
Flux is quite a nice lower level library:
https://github.com/FluxML/Flux.jl
On top of that there are many higher level libraries such as Transformers.jl
https://github.com/chengchingwen/Transformers.jl
- How is Julia Performance with GPUs (for LLMs)?
-
Load a transformer model with julia
Check out Transformers.jl. It’s a library that implements transformer based models in Julia using Flux.jl. They have support for some of the huggingface transformers.
-
Ask HN: Why hasn't the Deep Learning community embraced Julia yet?
https://github.com/chengchingwen/Transformers.jl but I have not had any personal experience with.
All of this is build by the community and your mileage may vary.
In my rather biased opinion the strengths of Julia are that the various ML libraries can share implementations, e.g. Pytorch and Tensorflow contain separate Numpy derivatives. One could say that you can write an ML framework in Julia, instead of writting a DSL in Python as part of your C++ ML library. As an example Julia has a GPU compiler so you can write your own layer directly in Julia and integrate it into your pipeline.
-
Help on Differentiable Programming
I think you might have some luck with looking at a transformers implementation in flux, e.g: https://github.com/chengchingwen/Transformers.jl/tree/master/src/basic
-
Fastai.jl: Fastai for Julia
Having tried fastai for a "serious" research project and helped (just a bit) towards FastAI.jl development, here's my take:
> motivation behind this is unclear.
Julia currently has two main DL libraries. Flux, which is somewhere between PyTorch and (tf.)Keras abstraction wise, and Knet, which is a little lower level (think just below PyTorch/around where MXNet Gluon sits). Frameworks like fastai, PyTorch Lightning and Keras demonstrate that there's a desire for higher-level, more batteries included libraries. FastAI.jl is looking to fill that gap in Julia.
> Since FastAI.jl uses Flux, and not PyTorch, functionality has to be reimplemented. FastAI.jl has vision support but no text support yet.
This is correct. That said, FastAI.jl is not and does not plan to be a copy of the Python API (hence "inspired by"). One consequence of this is that integration with other libraries is much easier, e.g. https://github.com/chengchingwen/Transformers.jl for NLP tasks.
> What is the timeline for FastAI.jl to achieve parity?
-
Julia Update: Adoption Keeps Climbing; Is It a Python Challenger?
If NLP primitives are all that's keeping you from testing the waters, have a look at https://github.com/chengchingwen/Transformers.jl.
What are some alternatives?
pytorch_geometric - Graph Neural Network Library for PyTorch
Flux.jl - Relax! Flux is the ML library that doesn't make you tensor
PackageCompiler.jl - Compile your Julia Package
DataLoaders.jl - A parallel iterator for large machine learning datasets that don't fit into memory inspired by PyTorch's `DataLoader` class.
model-zoo - Please do not feed the models
FluxTraining.jl - A flexible neural net training library inspired by fast.ai
swiftai - Swift for TensorFlow's high-level API, modeled after fastai
Chain.jl - A Julia package for piping a value through a series of transformation expressions using a more convenient syntax than Julia's native piping functionality.
StatsPlots.jl - Statistical plotting recipes for Plots.jl
org-mode - This is a MIRROR only, do not send PR.