ดูการสาธิต #MadeWithTFJS ใหม่ที่แสดงต่อไปของเราและบอกสดในวันที่ 1 ต.ค. 09:00 PT ดูบน YouTube

ปรับใช้โครงการ tfjs-node บนแพลตฟอร์มคลาวด์

เอกสารนี้อธิบายถึงวิธีการรันกระบวนการ Node.js ด้วยแพ็กเกจ @ tensorflow / tfjs-node บนแพลตฟอร์มคลาวด์

เริ่มจาก tfjs-node@1.2.4 การรันโปรเจ็กต์ Node.js บนแพลตฟอร์มคลาวด์ไม่จำเป็นต้องมีการกำหนดค่าเพิ่มเติม คู่มือนี้จะแสดงวิธีการรัน mnist-node ตัวอย่างในที่เก็บ @ tensorflow / tfjs-samples บน Heroku และ GCloud การสนับสนุน Node.js ของ Heroku ได้รับการบันทึกไว้ใน บทความนี้ การเรียกใช้ Node.js บน Google Cloud Platform ได้รับการบันทึกไว้ ที่นี่

ปรับใช้โปรเจ็กต์ Node.js บน Heroku

ข้อกำหนดเบื้องต้น

  1. ติดตั้ง Node.js และ npm แล้ว
  2. บัญชี Heroku
  3. Heroku CLI

สร้างแอป Node.js

  1. สร้างโฟลเดอร์และคัดลอกไฟล์ data.js , main.js , model.js และ package.json จากตัวอย่าง mnist-node
  2. ตรวจสอบให้แน่ใจว่า @ tensorflow / tfjs-node dependency คือ @ 1.2.4 หรือเวอร์ชันที่ใหม่กว่า

สร้างแอปของคุณและเรียกใช้ในเครื่อง

  1. รันคำสั่ง npm install ในโลคัลไดเร็กทอรีของคุณเพื่อติดตั้งการอ้างอิงที่ประกาศในไฟล์ package.json คุณควรจะเห็นว่ามีการติดตั้งแพ็กเกจ tfjs-node และดาวน์โหลด libtensorflow แล้ว
$ npm install
> @tensorflow/tfjs-node@1.2.5 install mnist-node/node_modules/@tensorflow/tfjs-node
> node scripts/install.js

CPU-linux-1.2.5.tar.gz

* Downloading libtensorflow
[==============================] 22675984/bps 100% 0.0s
* Building TensorFlow Node.js bindings
  1. ฝึกโมเดลภายในเครื่องโดยรัน npm start
$ npm start
> tfjs-examples-mnist-node@0.1.0 start /mnist-node
> node main.js

2019-07-30 17:33:34.109195: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-07-30 17:33:34.147880: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency: 3492175000 Hz
2019-07-30 17:33:34.149030: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x52f7090 executing computations on platform Host. Devices:
2019-07-30 17:33:34.149057: I tensorflow/compiler/xla/service/service.cc:175]   StreamExecutor device (0): <undefined>, <undefined>

Total params: 594922
Trainable params: 594922
Non-trainable params: 0
_________________________________________________________________
Epoch 1 / 20
Epoch 1 / 20
========================>----------------------------------------------------------------------------------: 35.5
  1. ตรวจสอบให้แน่ใจว่าคุณละเว้น build artifacts เช่น node_modules ในไฟล์. gitignore ของคุณ

สร้างและปรับใช้แอป Heroku

  1. สร้างแอพใหม่บนเว็บไซต์ Heroku
  2. ยอมรับการเปลี่ยนแปลงของคุณและผลักดันให้เป็นหัวหน้าฮีโร่
$ git init
$ heroku git:remote -a your-app-name
$ git add .
$ git commit -m "First Commit"
$ git push heroku master
  1. ในบันทึกการสร้างคุณควรจะเห็นแพ็คเกจ tfjs-node ที่ดาวน์โหลด TensorFlow C Library และโหลด TensorFlow Node.js native addon:
remote: -----> Installing dependencies
remote:        Installing node modules (package.json)
remote:
remote:        > @tensorflow/tfjs-node@1.2.5 install /tmp/build_de800e169948787d84bcc2b9ccab23f0/node_modules/@tensorflow/tfjs-node
remote:        > node scripts/install.js
remote:
remote:        CPU-linux-1.2.5.tar.gz
remote:        * Downloading libtensorflow
remote:
remote:        * Building TensorFlow Node.js bindings
remote:        added 92 packages from 91 contributors and audited 171 packages in 9.983s
remote:        found 0 vulnerabilities
remote:

ในบันทึกกระบวนการบน Heroku คุณควรจะเห็นบันทึกการฝึกอบรมแบบจำลอง:

Total params: 594922
Trainable params: 594922
Non-trainable params: 0
_________________________________________________________________
Epoch 1 / 20
Epoch 1 / 20
====>--------------------------------------------------------------------: 221.9

คุณยังสามารถเริ่มหรือดีบักกระบวนการใน คอนโซล Heroku

ใช้ tfjs-node ก่อนเวอร์ชัน 1.2.4

หากคุณใช้แพ็กเกจ tfjs-node ก่อนเวอร์ชัน 1.2.4 แพ็กเกจต้องใช้ g ++ เพื่อคอมไพล์โหนดเนทีฟ addon จากไฟล์ต้นทาง คุณจะต้องตรวจสอบให้แน่ใจว่าสแต็กของคุณมีแพ็คเกจที่จำเป็นสำหรับการสร้าง Linux (สแต็กเวอร์ชันที่ใหม่กว่าอาจไม่มีเป็นค่าเริ่มต้น)

ปรับใช้โปรเจ็กต์ Node.js บน Google Cloud Platform

ข้อกำหนดเบื้องต้น

  1. มีโครงการ Google Cloud ที่ถูกต้องพร้อมบัญชีสำหรับการเรียกเก็บเงิน
  2. ติดตั้ง เครื่องมือไคลเอ็นต์ Google Cloud
  3. เพิ่มไฟล์ app.yaml เพื่อกำหนดค่า Node.js Runtime

ปรับใช้แอปกับ GCloud

เรียกใช้ gcloud app deploy เพื่อปรับใช้โค้ดโลคัลและการกำหนดค่ากับ App Engine ในบันทึกการปรับใช้คุณควรจะเห็นว่ามีการติดตั้ง tfjs-node:

$ gcloud app deploy

Step #1:
Step #1: > @tensorflow/tfjs-node@1.2.5 install /app/node_modules/@tensorflow/tfjs-node
Step #1: > node scripts/install.js
Step #1:
Step #1: CPU-linux-1.2.5.tar.gz
Step #1: * Downloading libtensorflow
Step #1:
Step #1: * Building TensorFlow Node.js bindings
Step #1: added 88 packages from 85 contributors and audited 171 packages in 13.392s
Step #1: found 0 vulnerabilities

ในบันทึกของแอปคุณควรจะเห็นขั้นตอนการฝึกโมเดล:

Total params: 594922
Trainable params: 594922
Non-trainable params: 0

Epoch 1 / 20
===============================================================================>
745950ms 14626us/step - acc=0.920 loss=0.247 val_acc=0.987 val_loss=0.0445
Loss: 0.247 (train), 0.044 (val); Accuracy: 0.920 (train), 0.987 (val) (14.62 ms/step)
Epoch 2 / 20
===============================================================================>
818140ms 16042us/step - acc=0.980 loss=0.0655 val_acc=0.989 val_loss=0.0371
Loss: 0.066 (train), 0.037 (val); Accuracy: 0.980 (train), 0.989 (val) (16.04 ms/step)
Epoch 3 / 20
Epoch 3 / 20