2017-02-28 2 views
1

Je suis en train de comprendre la reconnaissance des chiffres Handwritten pour MXNet en python hereComment est l'indice de l'étiquette déterminée MXNet

Le code qui crée les données de formation et les données de l'étiquette est présentée ci-dessous:

def read_data(label_url, image_url): 
    with gzip.open(download_data(label_url)) as flbl: 
     magic, num = struct.unpack(">II", flbl.read(8)) 
     label = np.fromstring(flbl.read(), dtype=np.int8) 
    with gzip.open(download_data(image_url), 'rb') as fimg: 
     magic, num, rows, cols = struct.unpack(">IIII", fimg.read(16)) 
     image = np.fromstring(fimg.read(), dtype=np.uint8).reshape(len(label), rows, cols) 
    return (label, image) 

Ensuite, les chiffres sont prédites en utilisant le code ci-dessous:

prob = model.predict(val_img[0:1].astype(np.float32)/255)[0] 
assert max(prob) > 0.99, "Low prediction accuracy." 
print 'Classified as %d with probability %f' % (prob.argmax(), max(prob)) 

la sortie est - Classée 7 avec une probabilité 0,999391. Ma question est de savoir comment MXNet a pu déterminer que l'index renvoyé par la fonction argmax correspond à l'étiquette -7

Répondre