Main Content

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

Trazar histograma de errores para una red neuronal

Este ejemplo muestra cómo visualizar errores entre los valores objetivo y los valores predichos después de entrenar una red neuronal de avance.

Leer datos del canal ThingSpeak™ de la estación meteorológica

El canal ThingSpeak 12397 contiene datos de la estación meteorológica MathWorks®, ubicada en Natick, Massachusetts. Los datos se recopilan una vez por minuto. Los campos 2, 3, 4 y 6 contienen datos de velocidad del viento (mph), humedad relativa, temperatura (F) y presión atmosférica (inHg), respectivamente. Lea los datos del canal 12397 usando la función thingSpeakRead .

data = thingSpeakRead(12397,'Fields',[2 3 4 6],'Numpoints',500,'outputFormat','table');

Asignar variables de entrada y valores objetivo

Asigne variables de entrada y calcule el punto de rocío a partir de la temperatura y la humedad relativa para utilizarlas como objetivo. Convierta la temperatura de Fahrenheit a Celsius y especifique las constantes para el vapor de agua (b) y la presión barométrica (c). Calcule el valor intermedio 'gamma' y asigne valores objetivo para la red.

inputs = [data.Humidity'; data.TemperatureF'; data.PressureHg'; data.WindSpeedmph'];
tempC = (5/9)*(data.TemperatureF-32);
b = 17.62;
c = 243.5;
gamma = log(data.Humidity/100) + b*tempC ./ (c+tempC);
dewPointC = c*gamma ./ (b-gamma);
dewPointF = (dewPointC*1.8) + 32;
targets = dewPointF';

Cree y entrene la red feedforward de dos capas

Utilice la función feedforwardnet para crear una red feedforward de dos capas. La red tiene una capa oculta con 10 neuronas y una capa de salida. Utilice la función train para entrenar la red feedforward utilizando las entradas.

net = feedforwardnet(10);
[net,tr] = train(net,inputs,targets);

Utilice el modelo entrenado para predecir datos

Una vez entrenada y validada la red, puede utilizar el objeto de red para calcular la respuesta de la red a cualquier entrada, en este caso el punto de rocío para el quinto punto de datos de entrada.

outputs = net(inputs(:,5))
outputs =

   22.8618

Trazar el histograma de error

Calcule los valores de error como la diferencia entre los valores objetivo y los valores previstos.

error = targets - outputs;
number_of_bins = 10;
ploterrhist(error,'bins',number_of_bins);

El gráfico muestra un histograma de error con 10 contenedores.

Consulte también

Funciones