Rust для машинного обучения - библиотека: различия между версиями

Материал из support.qbpro.ru
Строка 400: Строка 400:


==КНИГИ==
==КНИГИ==
* [https://amzn.to/3h7JV8U Practical Machine Learning with Rust: Creating Intelligent Applications in Rust (English Edition)]<br>
* [https://amzn.to/3h7JV8U '''Practical Machine Learning with Rust: Creating Intelligent Applications in Rust (English Edition)''']<br>
-- 2019/12/10, Joydeep BhattacharjeeWrite machine learning algorithms in Rust<br>
-- 2019/12/10, Joydeep BhattacharjeeWrite machine learning algorithms in Rust<br>
- Use Rust libraries for different tasks in machine learning<br>
- Use Rust libraries for different tasks in machine learning<br>
Строка 408: Строка 408:
* [https://github.com/Apress/practical-machine-learning-w-rust source code for this Book]<br>
* [https://github.com/Apress/practical-machine-learning-w-rust source code for this Book]<br>
--
--
* [https://datacrayon.com/shop/product/data-analysis-with-rust-notebooks/ DATA ANALYSIS WITH RUST NOTEBOOKS]<br>
* [https://datacrayon.com/shop/product/data-analysis-with-rust-notebooks/ '''DATA ANALYSIS WITH RUST NOTEBOOKS''']<br>
-- 2021/9/3, Shahin RostamiPlotting with Plotters and Plotly<br>
-- 2021/9/3, Shahin RostamiPlotting with Plotters and Plotly<br>
- Operations with ndarray<br>
- Operations with ndarray<br>

Версия от 00:00, 23 мая 2023

ВВЕДЕНИЕ

Эта статья содержит список библиотек машинного обучения, написанных на 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 являются наиболее распространенными библиотеками для построения нейронных сетей.

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

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

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

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

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

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

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

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

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

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

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

БЛОГИ

ОБУЧЕНИЕ

Прикладные ресурсы

Deep Learning in Rust: baby steps, Medium, 2016/2/2, Theodore DeRego A Rust SentencePiece implementation, Rust NLP tales, 2020/5/30 Accelerating text generation with Rust, Rust NLP tales, 2020/11/21 A Simple Text Summarizer written in Rust, Towards Data Science, 2020/11/24, Charles Chan, Examples of Text Sentence Vector, Cosine Distance and PageRank Extracting deep learning image embeddings in Rust, RecoAI, 2021/6/1, Paweł Jankiewic, Examples of ONNX Deep Learning in Rust with GPU, 2021/7/30, Xavier Tao tch-rs pretrain example - Docker for PyTorch rust bindings tch-rs. Example of pretrain model, 2021/8/15, vaaaaanquish Rust ANN search Example - Image search example by approximate nearest-neighbor library In Rust, 2021/8/15, vaaaaanquish dzamkov/deep-learning-test - Implementing deep learning in Rust using just a linear algebra library (nalgebra), 2021/8/30, dzamkov vaaaaanquish/rust-machine-learning-api-example - The axum example that uses resnet224 to infer images received in base64 and returns the results., 2021/9/7, vaaaaanquish Rust for Machine Learning: Benchmarking Performance in One-shot - A Rust implementation of Siamese Neural Networks for One-shot Image Recognition for benchmarking performance and results, UofT Machine Intelligence Student Team Why Wallaroo Moved From Pony To Rust, 2021/8/19, Wallaroo.ai epwalsh/rust-dl-webserver - Example of serving deep learning models in Rust with batched prediction, 2021/11/16, epwalsh Production users - Rust Programming Language, by rust-lang.org Taking ML to production with Rust: a 25x speedup, A LEARNING JOURNAL, 2019/12/1, @algo_luca 9 Companies That Use Rust in Production, serokell, 2020/11/18, Gints Dreimanis Masked Language Model on Wasm, BERT on flontend examples, optim-corp/masked-lm-wasm, 2021/8/27, Optim Serving TensorFlow with Actix-Web, kykosic/actix-tensorflow-example Serving PyTorch with Actix-Web, kykosic/actix-pytorch-example

Форумы

Natural Language Processing in Rust : rust, 2016/12/6 Future prospect of Machine Learning in Rust Programming Language : MachineLearning, 2017/11/11 Interest for NLP in Rust? - The Rust Programming Language Forum, 2018/1/19 Is Rust good for deep learning and artificial intelligence? - The Rust Programming Language Forum, 2018/11/18 ndarray vs nalgebra : rust, 2019/5/28 Taking ML to production with Rust | Hacker News, 2019/12/2 Who is using Rust for Machine learning in production/research? : rust, 2020/4/5 Deep Learning in Rust, 2020/8/26 SmartCore, fast and comprehensive machine learning library for Rust! : rust, 2020/9/29 Deep Learning in Rust with GPU on ONNX, 2021/7/31 Rust vs. C++ the main differences between these popular programming languages, 2021/8/25 I wanted to share my experience of Rust as a deep learning researcher, 2021/9/2 How far along is the ML ecosystem with Rust?, 2021/9/15

КНИГИ

-- 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

Видео уроки

The /r/playrust Classifier: Real World Rust Data Science, RustConf 2016, 2016/10/05, Suchin Gururangan & Colin O'Brien Building AI Units in Rust, FOSSASIA 2018, 2018/3/25, Vigneshwer Dhinakaran Python vs Rust for Simulation, EuroPython 2019, 2019/7/10, Alisa Dammer Machine Learning is changing - is Rust the right tool for the job?, RustLab 2019, 2019/10/31, Luca Palmieri Using TensorFlow in Embedded Rust, 2020/09/29, Ferrous Systems GmbH, Richard Meadows Writing the Fastest GBDT Library in Rust, 2021/09/16, RustConf 2021, Isabella Tromba

Подкасты

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)

ИСТОЧНИКИ