MODEL PYTHON MACHINE LEARNING IN JAVASCRIPT CON ONNX
Vediamo come è possibile eseguire dei modelli di Machine Learning/Deep Learning creati in Python nel browser in Javascript dopo averli esportati con ONNX. ONNX è un acronimo per Open Neural Network Exchange ed è un open standard per convertire un modello in creato in python in Javascript per poter essere eseguito in un browser o con NodeJs. Nel riquadro sottostante disegnare un mumero e dopo aver premuto su PREDICTION nel riquadro a destra comparirà il risultato del modello NN creato con PyTorch con il dataset MNIST.






PREDICTION
Dopo aver creato il modello con PyTorch vediamo i passaggi da eseguire per convertire il modello in Javascript.
import torch.onnx

modello.load_state_dict(torch.load('model.pt'))

# set the model to inference mode
modello.eval()

# Input to the model
x = torch.zeros(280 * 280 * 4) # array proveniente da canvas con 4 dimensioni( Red - Green - Blue - Alpha) modelloJs = modello(x) # verifica funzionamento modello

# Export the model
torch.onnx.export(modello, x , 'modelloJs.onnx')
poi in Html

const session = new onnx.InferenceSession()
await session.loadModel('modello')

var inputs = new onnx.Tensor(new Float32Array(data), "float32")
const outputMap = await session.run([inputs])
const previsione = outputMap.values().next().value