Rust для машинного обучения - библиотека
Материал из support.qbpro.ru
ВВЕДЕНИЕ
Эта статья содержит список библиотек машинного обучения, написанных на Rust.
Представляет собой сборник репозитариев GitHub, блогов, книг, уроков, форумов, статей.
Статья разбита на несколько основных категорий библиотек и алгоритмов. В статье нет библиотек,
которые больше не поддерживаются, а так же почти нет небольших библиотек, которые давно не обновлялись.
ЛИНЕЙНАЯ АЛГЕБРА
- Большинство пакетов в списке используют ndarray или std::vec.
- dimforge/nalgebra - Библиотека линейной алгебры для Rust.
- rust-ndarray/ndarray - ndarray: работа с многомерными массивами на Rust
- AtheMathmo/rulinalg - Библиотека линейной алгебры написанная на Rust
- arrayfire/arrayfire-rust - Обертка Rust для ArrayFire
- bluss/arrayvec - работа с векторами. (Rust)
- vbarrielle/sprs - библиотека линейной алгебры для Rust
- liborty/rstats - Библиотека статистики Rust и векторной алгебры
- PyO3/rust-numpy - NumPy C-API для Rust на основе PyO3
ИНСТРУМЕНТЫ ПОДДЕРЖКИ
- Jupyter Notebook
- evcxr может обрабатывать как Jupyter Kernel или REPL. Эти библиотеки нужны для обучения алгоритмов и проверки гипотез машинного обучения.
- google/evcxr - оценки моделей для Rust.
- emakryo/rustdef - Jupyter расширение для rust.
- murarth/rusti - REPL библиотека для Rust
РАБОТА С ВИЗУАЛИЗАЦИЕЙ
- Список полезных ресурсов для визуализации данных.
- 38/plotters - A rust drawing library for high quality data plotting for both WASM and native, statically and realtimely|
- igiagkiozis/plotly - Plotly for Rust
- milliams/plotlib - Data plotting library for Rust
- tiby312/poloto - A simple 2D plotting library that outputs graphs to SVG that can be styled using CSS.
- askanium/rustplotlib - A pure Rust visualization library inspired by D3.js
- SiegeLord/RustGnuplot - A Rust library for drawing plots, powered by Gnuplot.
- saona-raimundo/preexplorer - Externalize easily the plotting process from Rust to gnuplot.
- procyon-rs/vega_lite_4.rs - rust api for vega-lite
- v4procyon-rs/showata - A library of to show data (in browser, evcxr_jupyter) as table, chart...
- coder543/dataplotlib - Scientific plotting library for Rust
- shahinrostami/chord_rs - Rust crate for creating beautiful interactive Chord Diagrams.
- Chord Diagrams - Pro version available
- ASCII line graph:
- loony-bean/textplots-rs Terminal plotting library for Rust
- orhanbalci/rasciigraph Zero dependency Rust crate to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.
- jakobhellermann/piechart a rust crate for drawing fancy pie charts in the terminal
- milliams/plot Command-line plotting tool written in Rust
- Примеры:
- Plotters Developer's Guide
- Plotly.rs - Plotly.rs Book
- petgraph_review
- evcxr-jupyter-integration
- Rust for Data Science: Tutorial 1 - DEV Community
- Preface | Data Crayon
- Датафреймы:
- ritchie46/polars - Rust датафреймы library
- apache/arrow - In-memory columnar format, in Rust.
- apache/arrow-datafusion - Apache Arrow DataFusion and Ballista query engines
- milesgranger/black-jack - DataFrame / Series data processing in Rust
- nevi-me/rust-dataframe - A Rust DataFrame implementation, built on Apache Arrow
- kernelmachine/utah - Dataframe structure and operations in Rust
- sinhrks/brassfibre - Provides multiple-dtype columner storage, known as DataFrame in pandas/R
ОБРАБОТКА ИЗОБРАЖЕНИЙ
- Для обработка изображений вам стоит попробовать библиотеку image-rs.
Здесь приведены такие алгоритмы, как линейные преобразования, подобное есть и в других библиотеках.
- image-rs/image - Encoding and decoding images in Rust
- Image processing operations
- Allows conversion between ndarray's types and image's types
- Rust CV mono-repo. Contains pure-Rust dependencies which attempt to encapsulate the capability of OpenCV, OpenMVG, and vSLAM frameworks in a cohesive set of APIs.
- Rust bindings for OpenCV 3 & 4
- A linear algebra and mathematics library for computer graphics.
- Face detection library for the Rust programming language