コード例 #1
0
ファイル: large_model.py プロジェクト: hongxin001/Deep_LMNN
from dlmnn.data.get_img_data import get_dataset
from dlmnn.LMNN import lmnn
from dlmnn.LMNNSequential import sequental_lmnn
from dlmnn.helper.argparser import lmnn_argparser

import numpy as np

#%%
if __name__ == '__main__':    
    # Input arguments
    args = lmnn_argparser()
    print(args)
    
    # Get some data
    x_train, y_train, x_test, y_test = get_dataset(args.dataset)
    input_shape=x_train.shape[1:]
    
    # Constants
    baseMapNum = 32
    weight_decay = 1e-4
    num_classes = len(np.unique(y_train))
    
    # Normalize data
    mean = np.mean(x_train,axis=(0,1,2,3))
    std = np.std(x_train,axis=(0,1,2,3))
    x_train = (x_train-mean)/(std+1e-7)
    x_test = (x_test-mean)/(std+1e-7)

    if args.model_type == 'softmax':
        y_train = utils.to_categorical(y_train,num_classes)
コード例 #2
0
#%%
from dlmnn import sequental_lmnn
from dlmnn.helper.argparser import lmnn_argparser
from dlmnn.helper.layers import InputLayer, Flatten, Conv2D, MaxPool2D, \
                                Dense, LeakyReLU
from dlmnn.data.get_img_data import get_dataset

#%%
if __name__ == '__main__':
    # Get input arguments
    args = lmnn_argparser()
    print(args)

    # Get some data
    X_train, y_train, X_test, y_test = get_dataset('cifar10')
    input_shape = X_train.shape[1:]

    # Add layers to model
    model = sequental_lmnn()
    model.add(InputLayer, input_shape=input_shape)
    model.add(Conv2D, filters=16, kernel_size=(3, 3), padding='same')
    model.add(LeakyReLU, alpha=0.3)
    model.add(MaxPool2D, pool_size=(2, 2))
    model.add(Conv2D, filters=32, kernel_size=(3, 3), padding='same')
    model.add(LeakyReLU, alpha=0.3)
    model.add(MaxPool2D, pool_size=(2, 2))
    model.add(Conv2D, filters=64, kernel_size=(3, 3), padding='same')
    model.add(LeakyReLU, alpha=0.3)
    model.add(MaxPool2D, pool_size=(2, 2))
    model.add(Flatten)
コード例 #3
0
ファイル: benchmarks.py プロジェクト: hongxin001/Deep_LMNN
if __name__ == '__main__':
    # Allocate array for results
    performance = np.zeros((5, ), dtype=np.float32)
    pred1, pred2, pred3, pred4, pred5 = [ ], [ ], [ ], [ ], [ ]
    
    # Get input arguments
    args = argparser()
    dataset = args['dataset']
    k = args['k']
    maxEpochs = args['e']
    name = args['n']
    margin = args['m']
    mu = args['w']
    
    # Get data
    X_train, y_train, X_test, y_test = get_dataset(dataset)
    input_shape = X_train.shape[1:]
    n_class = len(np.unique(y_train))
    
    print(70*'=')
    print(dataset)
    print(70*'=')
    
    ############################## MODEL 1 ################################
    ############################## KNN classifier #########################
    pred = knnClassifier(X_test, X_train, y_train, k=k)
    acc = np.mean(pred==y_test)
    
    # Save results
    pred1.append(pred)
    performance[0] = acc