mnist_provider.dict.py 687 字节
Newer Older
1 2 3 4
from paddle.trainer.PyDataProvider2 import *


# Define a py data provider
5 6 7 8
@provider(input_types={
    'pixel': dense_vector(28 * 28),
    'label': integer_value(10)
})
9 10 11 12 13 14 15 16 17 18 19 20 21 22
def process(settings, filename):  # settings is not used currently.
    f = open(filename, 'r')  # open one of training file

    for line in f:  # read each line
        label, pixel = line.split(';')

        # get features and label
        pixels_str = pixel.split(' ')

        pixels_float = []
        for each_pixel_str in pixels_str:
            pixels_float.append(float(each_pixel_str))

        # give data to paddle.
23
        yield {"pixel": pixels_float, 'label': int(label)}
24 25

    f.close()  # close file