No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de TensorFlow.js

Curso de TensorFlow.js

Alejandro Santamaria

Alejandro Santamaria

Entrenando un modelo de regresión lineal

15/21
Recursos

Aportes 8

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

codigo de esta clase:
crear index,html

<!DOCTYPE html>

<html lang="es">
<head>
    <meta charset="UTF-8">
            
    <title> Modelo Regresion </title>

    <!-- Importar TensorFlow.js -->
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/[email protected]/dist/tf.min.js"></script>
    <!-- Importar tfjs-vis  Visualizacion-->
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/[email protected]/dist/tfjs-vis.umd.min.js"></script>
 
</head>

<body>
    <!-- Importar el archivo principal -->
    <script src="script.js"></script>
</body>
</html>

y en la misma carpeta debemos crear un archivo script.js

/*

{
	"IngresoPromedioZona": 79545.45857,
	"EdadPromedioZona": 5.682861322,
	"NumeroDeCuartosPromedio": 7.009188143,
	"NumeroRecamarasPromedio": 4.09,
	"PoblacionZona": 23086.8005,
	"Precio": 1059033.558,
	"Direccion": "No disponible"
	}


*/

async function getData() {
    const datosCasasR = await fetch('https://static.platzi.com/media/public/uploads/datos-entrenamiento_15cd99ce-3561-494e-8f56-9492d4e86438.json');  
    const datosCasas = await datosCasasR.json();  
    const datosLimpios = datosCasas.map(casa => ({
      precio: casa.Precio,
      cuartos: casa.NumeroDeCuartosPromedio
    }))
    .filter(casa => (casa.precio != null && casa.cuartos != null));
    
    return datosLimpios;
  }
  
  function visualizarDatos(data){
    const valores = data.map(d => ({
      x: d.cuartos,
      y: d.precio,
    }));
  
    tfvis.render.scatterplot(
      {name: 'Cuartos vs Precio'},
      {values: valores}, 
      {
        xLabel: 'Cuartos',
        yLabel: 'Precio',
        height: 300
      }
    );
  }

function crearModelo(){
  const modelo = tf.sequential(); 
    
  // agregar capa oculta que va a recibir 1 dato
  modelo.add(tf.layers.dense({inputShape: [1], units: 1, useBias: true}));
  
  // agregar una capa de salida que va a tener 1 sola unidad
  modelo.add(tf.layers.dense({units: 1, useBias: true}));

  return modelo;
}

async function run() {

    const data = await getData();

    visualizarDatos(data);

    crearModelo();
    
}

run();



parceros si el archivo no les carga consumanlo por que es muy pesado

const dataJson =async()=>{

    try{
        let response =await fetch('https://static.platzi.com/media/public/uploads/datos-entrenamiento_15cd99ce-3561-494e-8f56-9492d4e86438.json')
        let json= await response.json()
        // console.log(json) 
        return json
    }
    catch(err){
        console.error(err);
        
    }
}


dataJson().then(function (data) {
    let json
    json=data
    console.log(json)
})

Chicos si trabajan con VSCODE pueden utilizar la extencion LIVE SERVER para trabajar desde un servidor y poder solucionar los problemas de lectura de json. a mi me funciono!
aca les dejo el link
https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer

Quiero cargar el archivo de forma local como muestra en el ejemplo, pero me sale “Pedido de origen cruzado bloqueado” no encuentro como sortear eso. Remoto funciona, pero quiero aprender a resolverlo cargandolo local.

Muy buena clase, donde empezamos a afirmar de forma práctica el curso, me topé con algunos problemas al correr y los solucioné con un servidor local, gracias!

<code> 
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Modelo de Regresion</title>
    <!--Import TSjs-->
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/[email protected]/dist/tf.min.js"></script>
    <!--Import TSjs para Visualizacion-->
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/[email protected]/dist/tf.min.js"></script>
</head>

<body>
    <!--Import touch js-->
    <script src="script.js"></script>
</body>

</html>

Wow! Aqui ya empieza la cosa seria.