モバイル&ワイヤレスブロードバンドでインターネットへ

gwaw.jp

Raspberry Pi 4 model B / 4GB の Raspbian で Node.js 版 TensorFlow.js の MNIST モデルサンプルを動かすまで

TensorFlow.js (tfjs) は、ブラウザと Node.js 内で機械学習モデルの訓練とデプロイを行うための JavaScript ライブラリです。

https://www.tensorflow.org/js/tutorials

今回は、Raspberry Pi 4 model B / 4GB の Raspbian 10 (buster) に Node.js と TensorFlow.js をインストールして MNIST モデル の Node.js 版サンプルを動かします。

Raspberry Pi で使いたいプログラミング言語といえば Python で、TensorFlow と Keras をインストールして…、と考えているのですが、関係するライブラリを Ubuntu でいえば anaconda でそろえて、とはいかないようでしたので、ちょっと調べる時間をとりつつ、その点では比較的ハードルが低そうな Node.js と TensorFlow.js という組み合わせで、サンプルのモデルを動かしてみようというものです。

Raspberry Pi 4 model B / 4GB に Raspbian 10 (buster) をセットアップした時点で、すでに Node.js が使用できる状態になっていましたが、現時点で最新の LTS 版 v12.x をインストールしてみます。



$ curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
$ sudo apt-get install -y nodejs

 

https://github.com/nodesource/distributions/blob/master/README.md を参照しています。インストール後は npm も使用できます。TensorFlow.js は、この npm を利用してインストールします。

https://www.tensorflow.org/js/tutorials/setup?hl=ja を参照して TensorFlow.js の Node.js 版をインストールします。



$ npm install @tensorflow/tfjs-node

 

続いて、サンプルコードを取得します。



$ git clone https://github.com/tensorflow/tfjs-examples.git

 

サンプルコードにある MNIST モデルを動かしてみます。このモデルの学習実行時間は、約 4時間でした。



$ cd tfjs-examples/mnist-node
$ node main.js

 

『Raspberry Pi 4 model B / 4GB の Raspbian で Node.js 版 TensorFlow.js の MNIST モデルサンプルを動かすまで』を公開しました。