Tensorflow.js es una biblioteca JavaScript de código abierto desarrollada por Google para ejecutar y entrenar modelos de aprendizaje automático y redes neuronales de aprendizaje profundo en el navegador y el entorno node.js.
El error cuadrático medio es el promedio de las diferencias al cuadrado entre los valores previstos y los reales. El resultado siempre es positivo y 0.0 en caso pero nunca se vuelve negativo. En la biblioteca tensorflow.js, usamos la función tf.losses.meanSquaredError() para calcular el error cuadrático medio entre dos tensores.
Sintaxis:
tf.losses.meanSquaredError(labels, predictions, weights?, reduction?)
Parámetros:
- etiquetas: Este es el tensor de salida real con respecto al cual se calcula la diferencia en la predicción. Puede ser tf.tensor, typedArray o una array normal.
- Predicciones: este es el tensor de salida predicho con las mismas dimensiones que las etiquetas. Es tf.tensor o typedArray o array normal.
- pesos: Este puede ser un tensor de rango igual al de las etiquetas para que pueda ser retransmitible o 0. Es opcional.
- reducción: Aplicar reducción a la pérdida. es opcional
Valor devuelto: tf.Tensor que se calcula mediante la función meansquaredError.
Ejemplo 1: En este ejemplo, tomaremos dos tensores bidimensionales como etiqueta y el otro como predicción y luego encontraremos el error cuadrático medio de estos dos.
Javascript
// Importing the tensorflow.js library const tf = require("@tensorflow/tfjs"); // Defining label tensor const y_true = tf.tensor2d([ [0., 1., 0.], [0., 0., 0.] ]); // Defining prediction tensor const y_pred = tf.tensor2d([ [1., 1., 0.], [1., 0., 0 ] ]); // Calculating mean squared error const mse = tf.losses.meanSquaredError(y_true,y_pred) // Printing the output mse.print()
Producción:
Tensor 0.3333
Ejemplo 2: De manera similar, tomamos otro ejemplo en el que tomamos los pesos de rango a partir de etiquetas en la función meanSquaredError y luego calculamos el error cuadrático medio.
Javascript
// Importing the tensorflow.js library const tf = require("@tensorflow/tfjs"); // Defining label tensor const y_true = tf.tensor2d( [0., 1., 0., 0., 0., 0., 1., 0., 1., 1., 0., 1.], [4, 3] ); // Defining predicted tensor const y_pred = tf.tensor2d( [1., 1., 0., 1., 0., 0., 1., 1., 1., 0., 0., 1.], [4, 3] ); // Calculating meansquared error const mse = tf.losses.meanSquaredError( y_true, y_pred, [0.7, 0.3, 0.2],) mse.print()
Producción:
Tensor 0.2000
Ejemplo 3: en la función de compilación del diseño del modelo, usamos el ‘error cuadrático medio’ como parámetro de pérdida. A continuación se muestra una red neuronal simple donde hacemos el cálculo.
Javascript
// Importing the tensorflow.js library const tf = require("@tensorflow/tfjs"); // Define the model const model = tf.sequential({ layers: [tf.layers.dense({ units: 1, inputShape: [12] })], }); // In model compilation we pass // meanSquaredError as the parameter model.compile( { optimizer: "adam", loss: "meanSquaredError" }, (metrics = ["accuracy"]) ); // Evaluate the model which was compiled above // computation is done in batches of size 4 const result = model.evaluate( tf.ones([10, 12]), tf.ones([10, 1]), { batchSize: 4, } ); // Print the result result.print();
Producción:
Tensor 0.4817
Referencia: https://js.tensorflow.org/api/3.6.0/#metrics.meanSquaredError
Publicación traducida automáticamente
Artículo escrito por barnadipdey2510 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA