Rust для машинного обучения - библиотека

Материал из support.qbpro.ru

ВВЕДЕНИЕ

Эта статья содержит список библиотек машинного обучения, написанных на Rust.
Представляет собой сборник репозитариев GitHub, блогов, книг, уроков, форумов, статей.
Статья разбита на несколько основных категорий библиотек и алгоритмов. В статье нет библиотек,
которые больше не поддерживаются, а так же почти нет небольших библиотек, которые давно не обновлялись.

ЛИНЕЙНАЯ АЛГЕБРА

  • Большинство пакетов в списке используют ndarray или std::vec.

ИНСТРУМЕНТЫ ПОДДЕРЖКИ

  • Jupyter Notebook
  • evcxr может обрабатывать как Jupyter Kernel или REPL.

Эти библиотеки нужны для обучения алгоритмов и проверки гипотез машинного обучения.

РАБОТА С ВИЗУАЛИЗАЦИЕЙ

  • Список полезных ресурсов для визуализации данных.


  • ASCII line graph:


  • Примеры:


  • Дата-фреймы:

ОБРАБОТКА ИЗОБРАЖЕНИЙ

  • Для обработка изображений вам стоит попробовать библиотеку image-rs.

Здесь приведены такие алгоритмы, как линейные преобразования, подобное есть и в других библиотеках.

ОБРАБОТКА ЕСТЕСТВЕННОГО ЯЗЫКА ИЛИ ПРЕДВАРИТЕЛЬНАЯ ОБРАБОТКА

ГРАФЫ

AutoML

РАБОЧИЕ ПОТОКИ

ВЫЧИСЛЕНИЯ НА GPU С ПОМОЩЬЮ RUST

SKLEARN И ПОДОБНЫЕ БИБЛИОТЕКИ

  • Библиотеки поддерживают следующие алгоритмы:
Linear Regression
Logistic Regression
K-Means Clustering
Neural Networks
Gaussian Process Regression
Support Vector Machines
kGaussian Mixture Models
Naive Bayes Classifiers
DBSCAN
k-Nearest Neighbor Classifiers
Principal Component Analysis
Decision Tree
Support Vector Machines
Naive Bayes
Elastic Net

СТАТИСТИКА

ГРАДИЕНТНЫЙ БУСТИНГ(Gradient Boosting)

НЕЙРОННЫЕ СЕТИ

  • Tensorflow и PyTorch являются наиболее распространенными библиотеками для построения нейронных сетей.

ГРАФОВЫЕ МОДЕЛИ

НЕЙРОЛИНГВИСТИЧЕСКОЕ ПРОГРАММИРОВАНИЕ

РЕКОМЕНДАТЕЛЬНЫЕ СИСТЕМЫ

РАБОТА С ТЕКСТОМ

АЛГОРИТМЫ ПОИСКА БЛИЖАЙШИХ СОСЕДЕЙ

ОБУЧЕНИЕ С ПОДКРЕПЛЕНИЕМ

ОБУЧЕНИЕ С УЧИТЕЛЕМ

ОБУЧЕНИЕ БЕЗ УЧИТЕЛЯ

СТАТИСТИЧЕСКИЕ МОДЕЛИ

ЭВОЛЮЦИОННЫЕ АЛГОРИТМЫ

ДРУГИЕ ПРОЕКТЫ

БЛОГИ

ОБУЧЕНИЕ

ПРИКЛАДНЫЕ РЕСУРСЫ

ФОРУМЫ

КНИГИ

-- 2019/12/10, Joydeep BhattacharjeeWrite machine learning algorithms in Rust
- Use Rust libraries for different tasks in machine learning
- Create concise Rust packages for your machine learning applications
- Implement NLP and computer vision in Rust
- Deploy your code in the cloud and on bare metal servers

--

-- 2021/9/3, Shahin RostamiPlotting with Plotters and Plotly
- Operations with ndarray
- Descriptive Statistics
- Interactive Diagram
- Visualisation of Co-occurring Types
- download source code and dataset

ВИДЕО УРОКИ

Подкасты

DATA SCIENCE AT HOMERust and machine learning #1 (Ep. 107) Rust and machine learning #2 with Luca Palmieri (Ep. 108) Rust and machine learning #3 with Alec Mocatta (Ep. 109) Rust and machine learning #4: practical tools (Ep. 110) Machine Learning in Rust: Amadeus with Alec Mocatta (Ep. 127) Rust and deep learning with Daniel McKenna (Ep. 135) Is Rust flexible enough for a flexible data model? (Ep. 137) Pandas vs Rust (Ep. 144) Apache Arrow, Ballista and Big Data in Rust with Andy Grove (Ep. 145) Polars: the fastest dataframe crate in Rust (Ep. 146) Apache Arrow, Ballista and Big Data in Rust with Andy Grove RB (Ep. 160)

ИСТОЧНИКИ