🌟

勉強目的でRustで簡単なMLPの実装

2024/07/05に公開

はじめに

Deep Learningを触る機会があったので、両方の勉強目的を含めて
Rustで簡単なMLP(Multi Layer Perceptron)の実装をしてみました。

基本的には実装アルゴリズは有名なオライリーのお魚本を参考にしています。

実装ポイント

layerを一つずつ設定できるようにしています。
有名なPythonライブラリの例でいくと、sklearnよりはPytorchの方に近い感じです。

let mut layers = Vec::new();
let layer1 = Layer::new(input_size, hidden_size, activation::Activation::Relu);
layers.push(layer1);
let layer2 = Layer::new(hidden_size, output_size, activation::Activation::Sigmoid);
layers.push(layer2);

リポジトリ

リポジトリは以下です。
もし、興味があれば見てみて頂けると嬉しいです。
https://github.com/nikekukuri/rust-simple-MLP

おわりに

LossがEpochごとに減少いくことを確認できましたが、
モデルのちゃんとした評価はできていなかったりするので、
全然未完成の状態ですが、Zenn初投稿ネタということで投稿してみました。
気が向いたら新たな機能の実装やGUIでの可視化などやっていこうと思ってます。

GitHubで編集を提案

Discussion