TensorFlow.js es una biblioteca de JavaScript de código abierto acelerada por hardware para entrenar e implementar modelos de aprendizaje automático.
Desarrollar ML en el navegador
Utilice API flexibles e intuitivas para crear modelos desde cero utilizando la biblioteca de álgebra lineal de JavaScript de bajo nivel o la API de capas de alto nivel.
Desarrollar ML en Node.js
Ejecute TensorFlow nativo con la misma API de TensorFlow.js en el tiempo de ejecución de Node.js.
Ejecutar modelos existentes
Utilice los convertidores de modelos TensorFlow.js para ejecutar modelos TensorFlow preexistentes directamente en el navegador.
Volver a entrenar modelos existentes
Vuelva a entrenar modelos de ML preexistentes utilizando datos de sensores conectados al navegador u otros datos del lado del cliente.
Este repositorio contiene la lógica y los scripts que combinan varios paquetes.
API:
Servidores/Plataformas:
Si le importa el tamaño del paquete, puede importar esos paquetes individualmente.
Si busca compatibilidad con Node.js, consulte el directorio de Node de TensorFlow.js.
Consulte nuestro repositorio de ejemplos y nuestros tutoriales.
Asegúrese de consultar la galería de todos los proyectos relacionados con TensorFlow.js.
Asegúrese de consultar también nuestro repositorio de modelos donde alojamos modelos previamente entrenados en NPM.
Hay dos formas principales de obtener TensorFlow.js en su proyecto de JavaScript: mediante etiquetas de script o instalándolo desde NPM y utilizando una herramienta de compilación como Parcel, WebPack o Rollup.
Agregue el siguiente código a un archivo HTML:
< html >
< head >
<!-- Load TensorFlow.js -->
< script src =" https://cdn.jsdelivr.net/npm/@tensorflow/tfjs/dist/tf.min.js " > </ script >
<!-- Place your code in the script tag below. You can also use an external .js file -->
< script >
// Notice there is no 'import' statement. 'tf' is available on the index-page
// because of the script tag above.
// 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 ) . then ( ( ) => {
// Use the model to do inference on a data point the model hasn't seen before:
// Open the browser devtools to see the output
model . predict ( tf . tensor2d ( [ 5 ] , [ 1 , 1 ] ) ) . print ( ) ;
} ) ;
</ script >
</ head >
< body >
</ body >
</ html >
¡Abre ese archivo HTML en tu navegador y el código debería ejecutarse!
Agrega TensorFlow.js a tu proyecto usando hilo o npm. Nota: Debido a que utilizamos la sintaxis de ES2017 (como import
), este flujo de trabajo supone que está utilizando un navegador moderno o un paquete/transpilador para convertir su código a algo que los navegadores más antiguos entiendan. Vea nuestros ejemplos para ver cómo usamos Parcel para construir nuestro código. Sin embargo, eres libre de utilizar cualquier herramienta de compilación que prefieras.
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 ) . 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 ( ) ;
} ) ;
Consulte nuestros tutoriales, ejemplos y documentación para obtener más detalles.
Admitimos la portabilidad de modelos previamente entrenados de:
Consulte a continuación:
TensorFlow.js es parte del ecosistema TensorFlow. Para más información:
tfjs
en el foro de TensorFlow.Gracias, BrowserStack, por brindar soporte para las pruebas.