thinc
pfun
Our great sponsors
thinc | pfun | |
---|---|---|
4 | 3 | |
2,790 | 146 | |
0.6% | - | |
6.9 | 6.5 | |
10 days ago | 5 months ago | |
Python | Python | |
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.
thinc
-
JAX – NumPy on the CPU, GPU, and TPU, with great automatic differentiation
Agree, though I wouldn’t call PyTorch a drop-in for NumPy either. CuPy is the drop-in. Excepting some corner cases, you can use the same code for both. Thinc’s ops work with both NumPy and CuPy:
https://github.com/explosion/thinc/blob/master/thinc/backend...
-
Tinygrad: A simple and powerful neural network framework
I love those tiny DNN frameworks, some examples that I studied in the past (I still use PyTorch for work related projects) :
thinc.by the creators of spaCy https://github.com/explosion/thinc
-
good examples of functional-like python code that one can study?
thinc - defining neural nets in functional way jax, a new deep learning framework puts emphasis on functions rather than tensors, I've tested it for a couple of applications and it's really cool, you can write stuff like you'd write math expressions in papers using numpy. That speeds up development significantly, and makes code much more readable
- thinc - A refreshing functional take on deep learning, compatible with your favorite libraries
pfun
-
good examples of functional-like python code that one can study?
Another examples: pfun - stuff you'd find in FP language, but in Python (like using monads for effects)
-
Effectful Programming in Machine Learning pipeline
I am a long-time Coconut user, so functional ideas are relatively easy to play with. But I recently discovered pfun which has a lovely system for Effectful programming.
-
How To Make Functional Programming in Python Go Fast
In pfun 0.12.0 the interpreter for the effect system was completely re-written as a Python C extension. Lets do some benchmarking to see how big a difference this actually makes in terms of performance. We'll use the performance of the the Scala library ZIO as a baseline, as the pfun effect system draws most of its inspiration from there. ZIO has a fairly extensive benchmarking suite. The most obvious benchmark for testing raw interpreter speed, without any parallelism, is called deepLeftBind (bind is the canonical name for the and_then operation, also called flatMap in Scala):
What are some alternatives?
quantulum3 - Library for unit extraction - fork of quantulum for python3
python-lenses - A python lens library for manipulating deeply nested immutable structures
jax - Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more
returns - Make your functions return something meaningful, typed, and safe!
horovod - Distributed training framework for TensorFlow, Keras, PyTorch, and Apache MXNet.
pandas-stubs - Pandas type stubs. Helps you type-check your code.
extending-jax - Extending JAX with custom C++ and CUDA code
python-betterproto - Clean, modern, Python 3.6+ code generator & library for Protobuf 3 and async gRPC
dm-haiku - JAX-based neural network library
patina - Python adaptations of Rust's Result, Option, and HashMap types. Ready for Python 3.10 pattern matching!
AIF360 - A comprehensive set of fairness metrics for datasets and machine learning models, explanations for these metrics, and algorithms to mitigate bias in datasets and models.
ZIO - ZIO — A type-safe, composable library for async and concurrent programming in Scala