def test_returns_non_uniform_array_after_training(self): x = [np.array([0] * 784, float)] y = [np.array([1, 0, 0, 0, 0, 0, 0, 0, 0, 0], float)] pixels_to_categories = (x, y) diggen = DigitGenerator() diggen.train(pixels_to_categories=pixels_to_categories) pixels = diggen.generate_digit(digit=1) expected_pixels = np.zeros(784, dtype=np.uint8) expected_pixels.fill(127) self.assertNotEqual(pixels.tolist(), expected_pixels.tolist())
def step(context): mnist.download_dataset() pixels_to_categories = mnist.get_training_data() generator = DigitGenerator() generator.train(pixels_to_categories=pixels_to_categories) context.generator = generator
import sys import os sys.path.insert(1, os.path.join(sys.path[0], '..')) from digit_drawing import DigitGenerator import helpers from datasets import mnist dest_folder = 'generated_digits' image_width = 28 image_height = 28 nepochs = 5 gen = DigitGenerator() mnist.download_dataset() pixels_to_categories = mnist.get_training_data() gen.train(pixels_to_categories=pixels_to_categories, nepochs=nepochs) print('Training for {} epochs is complete'.format(nepochs)) for i in range(10): pixels = gen.generate_digit(i) helpers.create_image(dest_fname=os.path.join(dest_folder, 'digit_{}.png'.format(i)), pixel_vector=pixels, width=image_width, height=image_height) print('Generated image of a digit {}'.format(i))