knaka Tech-Blog

AI, IoT, DIYエレクトロニクス, データサイエンスについて投稿予定です。

TensorFlow.js + node/express , HTTP経由でモデル読込み、予測結果の出力

index:

概要:

前のTensorFlow.js 関係で、
node側で学習したモデルを、HTTP経由で読み込み
ブラウザ側で、評価する例となります。
前回と異なり。node側で評価しない構成です

環境

TensorFlow.js
node.js
Vue.js
Ubuntu16

参考のコード

github.com

実装など

expressに、htmlを配置しておきます
tf.loadLayersModel で、URL指定して。読み込めました

https://github.com/kuc-arc-f/tfjs_app1_express2/blob/master/public/train.html

async function run_train() {
    const data = await getData();
    var chart_dats = convert_chart_arr(data)
console.log(chart_dats.lbl.length )
    //return
    const tensorData = convertToTensor(data);
    const {inputs, labels} = tensorData;
    const model = await tf.loadLayersModel('http://localhost:3000/my-model/model.json');
    //pred
    const [xs, preds] = testModel(model, data, tensorData, 
                        chart_dats.lbl.length);
//    console.log( preds );
    //chart-disp
    var config = get_chart_config(chart_dats, preds);
    var ctx = document.getElementById('myChart').getContext('2d');
    window.myLine = new Chart(ctx, config);

    console.log('Done Training');
}

機械学習は、事前に完了させておきます
https://github.com/kuc-arc-f/tfjs_app1_express2/blob/master/train.js