pnet.PartsLayer( numParts, (patchSize, patchSize), settings=dict( outer_frame=0, #em_seed=training_seed, threshold=40, samples_per_image=40, max_samples=1000000, min_prob=0.005, )), pnet.PoolingLayer(shape=(4, 4), strides=(4, 4)), pnet.SVMClassificationLayer(C=None) ] net = pnet.PartsNet(layers) digits = range(10) print('Extracting subsets...') ims10k = data[:10000] print('Done.') start0 = time.time() print('Training unsupervised...') net.train(ims10k) print('Done.') end0 = time.time() error_rates = [] test_ims, test_labels = ag.io.load_mnist('testing', return_labels=True)
for n_classes in num_class_models0: print('Classifier:', classifier, 'Components:', n_classes) if classifier == 'mixture': layers = [ pnet.PoolingLayer(shape=(4, 4), strides=(4, 4)), pnet.MixtureClassificationLayer(n_components=n_classes, min_prob=1e-5) ] elif classifier == 'svm': layers = [ pnet.PoolingLayer(shape=(4, 4), strides=(4, 4)), pnet.SVMClassificationLayer(C=None), ] clnet = pnet.PartsNet([net] + layers) start1 = time.time() print('Training supervised...') print(sup_ims.shape) clnet.train(sup_ims, sup_labels) print('Done.') end1 = time.time() corrects = 0 total = 0 if 0: test_ims, test_labels = mnist_data['test_image'], mnist_data[ 'test_label'] else: test_ims = ims2k
print("Inside") layers = [ pnet.EdgeLayer(k=5, radius=1, spread='orthogonal', minimum_contrast=0.05),# pnet.PartsLayer(numParts, (patchSize, patchSize), settings=dict(outer_frame=0, #em_seed=training_seed, threshold=40, samples_per_image=40, max_samples=1000000, min_prob=0.005, )), ] net = pnet.PartsNet(layers) digits = range(10) print('Extracting subsets...') ims10k = data[:10000] print('Done.') start0 = time.time() print('Training unsupervised...') net.train(ims10k) print('Done.') end0 = time.time() error_rates = []
extensionPatchSize = args.extensionPatchSize data = np.load(dataFileName) training_seed = args.seed num_rotation = args.num_rotation net = pnet.PartsNet.load(args.model) print("Inside") extensionlayers = [ pnet.RotExtensionPartsLayer(num_parts=numParts, num_components=numExtensionParts, rotation=num_rotation, part_shape=(extensionPatchSize, extensionPatchSize), lowerLayerShape=(6, 6)) ] clnet = pnet.PartsNet([net] + extensionlayers) digits = range(10) print('Extracting subsets...') ims10k = data[:10000] print('Done.') start0 = time.time() print('Training unsupervised...') clnet.train(ims10k) print('Done.') end0 = time.time() clnet.save(saveFile)
print("=================") print(sup_ims.shape) print(sup_labels) for classifier in 'mixture', 'svm': for rotspread in [0, 1]: net.layers[0]._settings['rotation_spreading_radius'] = rotspread print('Classifier:', classifier, 'Rotational spreading:', rotspread) if classifier == 'mixture': cl = pnet.MixtureClassificationLayer(n_components=numOfClassModel, min_prob=1e-5) elif classifier == 'svm': cl = pnet.SVMClassificationLayer(C=None) clnet = pnet.PartsNet([net, cl]) start1 = time.time() print('Training supervised...') print(sup_ims.shape) clnet.train(sup_ims, sup_labels) print('Done.') end1 = time.time() #print("Now testing...") ### Test ###################################################################### corrects = 0 total = 0 if 0: test_ims, test_labels = mnist_data['test_image'], mnist_data['test_label']