Exemple 1 Données


Collecte de données TensorFlow

Les données utilisées dans l'exemple 1 sont une liste d'objets voiture comme celle-ci :

{
  "Name": "chevrolet chevelle malibu",
  "Miles_per_Gallon": 18,
  "Cylinders": 8,
  "Displacement": 307,
  "Horsepower": 130,
  "Weight_in_lbs": 3504,
  "Acceleration": 12,
  "Year": "1970-01-01",
  "Origin": "USA"
},
{
  "Name": "buick skylark 320",
  "Miles_per_Gallon": 15,
  "Cylinders": 8,
  "Displacement": 350,
  "Horsepower": 165,
  "Weight_in_lbs": 3693,
  "Acceleration": 11.5,
  "Year": "1970-01-01",
  "Origin": "USA"
},

L'ensemble de données est un fichier JSON stocké à :

https://storage.googleapis.com/tfjs-tutorials/carsData.json


Données de nettoyage

Lors de la préparation à l'apprentissage automatique, il est toujours important de :

  • Supprimez les données dont vous n'avez pas besoin
  • Nettoyer les données des erreurs

Supprimer les données

Un moyen intelligent de supprimer les données inutiles, c'est d'extraire uniquement les données dont vous avez besoin .

Cela peut être fait en itérant (en bouclant) vos données avec une fonction map .

La fonction ci-dessous prend un objet et renvoie uniquement x et y à partir des propriétés Horsepower et Miles_per_Gallon de l'objet :

function extractData(obj) {
  return {x:obj.Horsepower, y:obj.Miles_per_Gallon};
}

Supprimer les erreurs

La plupart des ensembles de données contiennent un certain type d'erreurs.

Une façon intelligente de supprimer les erreurs consiste à utiliser une fonction de filtrage pour filtrer les erreurs.

Le code ci-dessous renvoie false si l'une des propriétés (x ou y) contient une valeur nulle :

function removeErrors(obj) {
  return obj.x != null && obj.y != null;
}

Récupération des données

Lorsque vos fonctions de carte et de filtre sont prêtes, vous pouvez écrire une fonction pour récupérer les données.

async function runTF() {
  const jsonData = await fetch("cardata.json");
  let values = await jsonData.json();
  values = values.map(extractData).filter(removeErrors);
}


Tracer les données

Voici un code que vous pouvez utiliser pour tracer les données :

function tfPlot(values, surface) {
  tfvis.render.scatterplot(surface,
    {values:values, series:['Original','Predicted']},
    {xLabel:'Horsepower', yLabel:'MPG'});
}