relu=False,
                     FL_AO=FL_A_fc,
                     FL_DI=FL_D_conv_5,
                     FL_W=FL_W_fc,
                     FL_WM=FL_WM_fc,
                     FL_WG=FL_WG_fc,
                     FL_L_WG=FL_L_WG_fc,
                     FL_L_WU=FL_L_WU_fc,
                     FL_M_WU=FL_M_WU_fc,
                     scale=scale_fc)
    cnn.append_layer('SquareHingeLoss', name='Loss', num_classes=10)

    # Testing
    logging.info('loading trained weights...')
    cnn.load_params_mat(
        './result/result_{}classes/Best_epoch_CIFAR10_W.mat'.format(
            task_division[0]))
    # cnn.load_params_mat('./result/test_W.mat')
    # print('test_W')
    batch_size_valid = 40
    num_batches_valid = int(cloud_image_valid / batch_size_valid)
    valid_error = 0.
    valid_loss = 0.

    for j in range(num_batches_valid):  # testing
        predictions, valid_loss_batch = cnn.feed_forward(
            fixed(
                valid_cloud_x[j * batch_size_valid:(j + 1) * batch_size_valid],
                16, FL_A_input),
            valid_cloud_y[j * batch_size_valid:(j + 1) * batch_size_valid],
            train_or_test=0)
Exemplo n.º 2
0
    logging.info("LR start %f" % (args.LR_start))
    logging.info("LR finish %f" % (args.LR_finish))

    currentDT = datetime.datetime.now()
    logging.info(str(currentDT))
    batch_size = args.batch_size
    group_size = args.group_size
    num_batches = int(edge_image_train / batch_size)
    num_groups = int(batch_size / group_size)
    Learning_Rate = args.LR_start
    best_valid_acc = 0.0

    logging.info("\n\n--------checking mask--------------------")

    cnn.load_params_mat(
        './result/result_{}classes/incremental_1class_Best_epoch_CIFAR10_W'.
        format(task_division[0]))

    mask = sio.loadmat(
        './result/result_{}classes/mask_CIFAR10_TaskDivision_{}.mat'.format(
            task_division[0], args.task_division))
    for key, value in mask.items():
        if re.search('conv', key):
            logging.info('layer {}, sum of mask {} out of shape{}'.format(
                key, np.sum(value, axis=(0, 1, 2, 3)), value.shape))
        if re.search('fc', key):
            logging.info('layer {}, sum of mask {} out of shape {}'.format(
                key, np.sum(value, axis=(0, 1)), value.shape))

    #
    cloud_acc = valid(cloud_image_valid, valid_cloud_x, valid_cloud_y)