2 votes

Python TFlearn - Perte trop élevée

Après avoir résolu mon problème de forme d'entrée, j'ai lancé mon programme, le problème est que la perte totale imprimée par le programme est beaucoup trop élevée (si je la compare par exemple à celle du tutoriel de démarrage rapide).

Mon objectif est de prédire l'encombrement d'une entrée future en utilisant les données passées (j'ai plus de 10M d'entrées avec le score marqué) donc je ne devrais pas avoir de problème avec la formation.

Voici mon code :

import numpy as np
import tflearn

# Load CSV file, indicate that the first column represents labels
from tflearn.data_utils import load_csv
data, labels = load_csv('nowcastScaled.csv', has_header=True, n_classes=2)

# Preprocessing function
def preprocess(data):
    return np.array(data, dtype=np.float32)

# Preprocess data
data = preprocess(data)

# Build neural network
net = tflearn.input_data(shape=[None, 2])
net = tflearn.fully_connected(net, 32)
net = tflearn.fully_connected(net, 32)
net = tflearn.fully_connected(net, 2, activation='linear')
data = np.reshape(data, (-1, 2))
labels = np.reshape(labels, (-1, 2))
net = tflearn.regression(net, optimizer='adam', learning_rate=0.001,
                         loss='categorical_crossentropy')

# Define model
model = tflearn.DNN(net)
# Start training (apply gradient descent algorithm)
model.fit(data, labels, n_epoch=15, batch_size=16, show_metric=True)

# Training
model.save('test_Model')
model.load('test_Model')
score = model.evaluate(data, labels, batch_size=16)

Mon fichier Excel a ce genre d'aspect (2 colonnes, 100 000 lignes).

calculed_at , congestion
1 , 56
2 , 21

Voici à quoi ressemblent les résultats (15 époques) :

Training samples: 50000
Validation samples: 0
....
--
Training Step: 40625  | total loss: 15.27961 | time: 17.659s
| Adam | epoch: 013 | loss: 15.27961 - acc: 0.7070 -- iter: 50000/50000
--
Training Step: 43750  | total loss: 15.66268 | time: 17.549s
| Adam | epoch: 014 | loss: 15.66268 - acc: 0.7247 -- iter: 50000/50000
--
Training Step: 46875  | total loss: 15.94696 | time: 18.037s
| Adam | epoch: 015 | loss: 15.94696 - acc: 0.7581 -- iter: 50000/50000
--

Avez-vous une idée de ce qui pourrait causer une perte aussi élevée ? Cela semble étrange puisque la précision imprimée ne semble pas trop mauvaise. Merci pour votre aide.

Modifier : Il semble que ce soit le bon moment pour prendre ces valeurs car lorsque j'ai essayé tout à l'heure j'ai eu une perte totale supérieure à 280 (et une précision inférieure à 0,3 ou à peine supérieure).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X