import tensorflow as tf from datasets import data as dataset from models.nn import GCN as ConvNet from learning.evaluators import AccuracyEvaluator as Evaluator from learning.utils import draw_pixel """ 1. Load dataset """ root_dir = os.path.join('data/catdog/') # FIXME test_dir = os.path.join(root_dir, 'test') # Set image size and number of class IM_SIZE = (512, 512) NUM_CLASSES = 3 # Load test set X_test, y_test = dataset.read_data(test_dir, IM_SIZE) test_set = dataset.DataSet(X_test, y_test) """ 2. Set test hyperparameters """ hp_d = dict() # FIXME: Test hyperparameters hp_d['batch_size'] = 8 """ 3. Build graph, load weights, initialize a session and start test """ # Initialize graph = tf.get_default_graph() config = tf.ConfigProto() config.gpu_options.allow_growth = True model = ConvNet([IM_SIZE[0], IM_SIZE[1], 3], NUM_CLASSES, **hp_d) evaluator = Evaluator() saver = tf.train.Saver()
from learning.optimizers import MomentumOptimizer as Optimizer from learning.evaluators import AccuracyEvaluator as Evaluator """ 1. Load and split datasets """ root_dir = os.path.join('data/catdog/') # FIXME trainval_dir = os.path.join(root_dir, 'train') # Set image size and number of class IM_SIZE = (512, 512) NUM_CLASSES = 3 # Load trainval set and split into train/val sets X_trainval, y_trainval = dataset.read_data(trainval_dir, IM_SIZE) trainval_size = X_trainval.shape[0] val_size = int(trainval_size * 0.1) # FIXME val_set = dataset.DataSet(X_trainval[:val_size], y_trainval[:val_size]) train_set = dataset.DataSet(X_trainval[val_size:], y_trainval[val_size:]) """ 2. Set training hyperparameters""" hp_d = dict() # FIXME: Training hyperparameters hp_d['batch_size'] = 8 hp_d['num_epochs'] = 100 hp_d['init_learning_rate'] = 1e-3 hp_d['momentum'] = 0.9 hp_d['learning_rate_patience'] = 10 hp_d['learning_rate_decay'] = 0.1 hp_d['eps'] = 1e-8 hp_d['score_threshold'] = 1e-4 hp_d['pretrain'] = True