Laravel 5.8 で、モデル結合など
この記事は、note 有料マガジンで。公開しております
https://note.com/knaka0209/m/m5782bffa0517
Laravel 5.8 ユーザー認証
この記事は、note 有料マガジンで。公開しております
https://note.com/knaka0209/m/m5782bffa0517
Laravel 5.8 +Vue.js CRUD作成など
この記事は、note 有料マガジンで。公開しております
https://note.com/knaka0209/m/m5782bffa0517
Laravel 5.8 設定編 CRUD作成など #php
この記事は、note 有料マガジンで。公開しております
https://note.com/knaka0209/m/m5782bffa0517
TensorFlow.js + node/express , HTTP経由でモデル読込み、予測結果の出力
index:
概要:
前のTensorFlow.js 関係で、
node側で学習したモデルを、HTTP経由で読み込み
ブラウザ側で、評価する例となります。
前回と異なり。node側で評価しない構成です
環境
TensorFlow.js
node.js
Vue.js
Ubuntu16
参考のコード
実装など
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
TensorFlow.js + node/express , モデルの評価結果を出力
index:
概要:
前のTensorFlow.js 関係で、
学習済で保存モデルから、node.js で予測値を出力し。
グラフ表示する例となります
環境
TensorFlow.js
node.js
Vue.js
express
Ubuntu16
画面
前回の、回帰モデルの結果
実装など
機械学習は、事前に実行して。モデルを保存しておきます
https://github.com/kuc-arc-f/tfjs_app1_express1/blob/master/train.js
async function run_train() { const tr = new LibTrain( ) const dTrain = new LibTrainData( ) const appConst = new LibConst( ) // console.log(appConst.model_name ) //return; const model = tr.createModel(); const data = await tr.getData(); var chart_dats = dTrain.convert_chart_arr(data) console.log(chart_dats.lbl.length ) const tensorData = tr.convertToTensor(data); const {inputs, labels} = tensorData; // Train the model console.log('Training-start'); await tr.trainModel(model, inputs, labels, tensorData, chart_dats.lbl.length ,chart_dats ); console.log('#fit-complete'); //pred const [xs, preds] = tr.testModel(model, data, tensorData, chart_dats.lbl.length); console.log( preds ); await model.save(appConst.model_name ); }
・api : モデル読み込み。評価処理、
https://github.com/kuc-arc-f/tfjs_app1_express1/blob/master/routes/api_train.js
router.get('/chart_items', async function(req, res) { console.log('Hello TensorFlow, t3-read'); const tr = new LibTrain( ) const dTrain = new LibTrainData( ) const appConst = new LibConst( ) // const data = await tr.getData(); var chart_dats = dTrain.convert_chart_arr(data) console.log(chart_dats.lbl.length ) const tensorData = tr.convertToTensor(data); const model = await tf.loadLayersModel(appConst.model_name + '/model.json'); //pred const [xs, preds] = tr.testModel(model, data, tensorData, chart_dats.lbl.length); //console.log( preds ); //out var items = [] preds.forEach( function (item) { items.push(item ); }); var arr ={ 'pred' : items, 'chart_dats' : chart_dats, } var param = {"docs": arr }; res.json(param); });
まとめ
前回のブラウザ版と、比較して
事前に、学習処理が必要ですが
評価時に、学習しない分。かなり高速表示できました。
TensorFlow.js で、モデルを保存する。ブラウザ版 #javascript #機械学習 #tensorflow
index:
概要:
前のTensorFlow.js 関係で、
学習済のモデルを、保存する例となります。
環境
TensorFlow.js
ブラウザ
保存の処理
Local Storage に、保存する場合ですが、他にもindexDBなど。あるようです
await model.save('localstorage://my-model');
node.js版
・環境: ubuntu16
npm install @tensorflow/tfjs-node
・保存
https://github.com/kuc-arc-f/tfjs_pred_2/blob/master/t6-save.js
await model.save('file://test-model');
・ロード
https://github.com/kuc-arc-f/tfjs_pred_2/blob/master/t6-read.js
const load_model = await tf.loadLayersModel('file://test-model/model.json');