evcxr
pythonみたいにJupyterでインタラクティブに使いたいという場合におすすめ。
RustのREPLでJupyterでも使うことができる。cargoでインストールできる。
- 公式
- 紹介記事
Tips
変数がグローバルで定義されるので、参照を借用するときにライフタイムのエラーが出ることがある。
対処法としては、セル全体をブロックで囲むか、関数化してしまうなど。
参考 https://github.com/google/evcxr/issues/109
Plotters
Rustのグラフ描画ライブラリ。evcxr_jupyterでも使えるので、pythonのmatplotみたいな感じで使える。
https://docs.rs/plotters/0.3.0/plotters/
Jupyterでの使い方 https://plotters-rs.github.io/plotters-doc-data/evcxr-jupyter-integration.html
紹介記事 https://lab.mo-t.com/blog/rust-plotters
serde
JSON, YAMLなどの読み書き
公式 https://serde.rs/
紹介記事 https://qiita.com/fujitayy/items/ed0033f8bb036d23710c
線形代数
rust-ndarray https://github.com/rust-ndarray/ndarray
nadarray-linalg(ndarrayとセットで使う) https://github.com/rust-ndarray/ndarray-linalg
nalgebra https://www.nalgebra.org/
機械学習
デファクトスタンダードはまだなさそう(2020/09/17)。
Neural Network (NN)
TensorFlow https://github.com/tensorflow/rust
primitive-rust https://github.com/primitiv/primitiv-rust
Juice https://github.com/spearow/juice
NN以外
rusty-machine https://github.com/AtheMathmo/rusty-machine
rustlearn https://github.com/maciejkula/rustlearn
どちらも更新止まってるっぽい?
応用事例
- エッジMLシステムをC/C++からRustへ移行した事例
- Rustによる数値計算の現状と課題
機械学習と数値計算の事例がそれぞれ紹介されている。発表スライドあり。
その他
他の方がまとめたリンク集 https://qiita.com/legokichi/items/9f80e4e2e6313876061c
並列、シリアライズ、数学・計算の項目がデータサイエンスで使いそう。
※ zennにも同じ記事を投稿しました。