從零開始的機器學習生活 - Parcel.js 與 TensorFlow.js

從零開始的機器學習生活 - Parcel.js 與 TensorFlow.js


看到 js 就知道肯定跟瀏覽器脫離不了關係,在 2018 TenrsorFlow Dev Summit Google 發表了 TenrsorFlow.js 這種黑科技實在是屌的飛起啊,瀏覽器都可以機器學習代表著有更多的應用,有興趣的可以看看以下影片。

Parcel.js 快速打包工具

Parcel.js 是一套快速的打包工具,至於有多快速看看他的官方簡介就知道了安裝也只要 npm install -g parcel-bundler 詳細可以觀看 快速开始 有了 Parcel.js 可以讓我們很方便的開發單一頁面的網站如果要開發大型網站還是使用其他工具會比較好。

TensorFlow.js

接著我們就可以安裝 TensorFlow.js 如果你是初始的專案你可以直接

yarn init -y 或是 npm init -y

初始化專案之後就可以直接
yarn add @tensorflow/tfjs
npm install @tensorflow/tfjs

不免俗地打個 demo


import * as tf from '@tensorflow/tfjs'; // Define a model for linear regression. const model = tf.sequential(); model.add(tf.layers.dense({units: 1, inputShape: [1]})); // Prepare the model for training: Specify the loss and the optimizer. model.compile({loss: 'meanSquaredError', optimizer: 'sgd'}); // Generate some synthetic data for training. const xs = tf.tensor2d([1, 2, 3, 4], [4, 1]); const ys = tf.tensor2d([1, 3, 5, 7], [4, 1]); // Train the model using the data. model.fit(xs, ys, {epochs: 10}).then(() => { // Use the model to do inference on a data point the model hasn't seen before: model.predict(tf.tensor2d([5], [1, 1])).print(); });

打開我們的瀏覽器開發者工具

結論

如此一來環境就已經準備好了,如果以上這些 code 你都看不懂也沒關係網路上有很多教學,也可以看看參考資料內的一些教學。如果你熟係 python 也有很多教學可以參考觀念都是相同的。

參考資料

A quick introduction to TensorFlow.js
Deep Learning
50 TensorFlow.js API Explained in 5 Minutes | TensorFlow.js Cheetsheet