A small Clojure library for constructing and training neural networks using core.matrix.
k9 is a small Clojure library for constructing and training neural networks using core.matrix. It enables developers to build simple three-layer networks, perform feed-forward computations, and train models on datasets with backpropagation. The library is designed for educational purposes and lightweight machine learning experiments in Clojure.
Clojure developers and learners interested in understanding neural network fundamentals without complex frameworks. It's suitable for those exploring machine learning concepts in a functional programming context.
k9 offers a minimal, dependency-light approach to neural networks in Clojure, leveraging core.matrix for efficient numerical operations. Its simplicity makes it ideal for prototyping and learning, distinguishing it from heavier machine learning libraries.
Small library for using neural networks and core.matrix
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Functions like construct-network and ff provide a clean, straightforward interface for building and testing neural networks, as shown in the usage examples with simple calls.
Includes practical examples such as learning color names from RGB values and a detailed blog post, making it accessible for understanding neural network concepts in Clojure.
Relies solely on core.matrix for numerical computations, keeping the library focused and easy to integrate without heavy external frameworks, as emphasized in the GitHub description.
Designed for Clojure, allowing developers to explore machine learning within a functional paradigm, which aligns with the target audience of Clojure enthusiasts.
Only supports three-layer neural networks via construct-network, restricting experimentation with more complex models like deep networks or varied architectures.
The primary resources, including the blog post from 2013, show no recent updates, which may lead to compatibility issues with modern Clojure versions and lack of community support.
Lacks common ML enhancements such as regularization, custom activation functions, or optimization algorithms beyond basic backpropagation, limiting its utility for state-of-the-art applications.