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


# Define a py data provider
5 6 7
@provider(
    input_types={'pixel': dense_vector(28 * 28),
                 'label': integer_value(10)})
8 9 10 11 12 13 14 15 16 17 18 19 20 21
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.
22
        yield {"pixel": pixels_float, 'label': int(label)}
23 24

    f.close()  # close file