Ejemplo n.º 1
0
def distance_sparseeuclidean_modular(train_fname=traindat, test_fname=testdat):
    from modshogun import RealFeatures, SparseRealFeatures, SparseEuclideanDistance, CSVFile

    realfeat = RealFeatures(CSVFile(train_fname))
    feats_train = SparseRealFeatures()
    feats_train.obtain_from_simple(realfeat)
    realfeat = RealFeatures(CSVFile(test_fname))
    feats_test = SparseRealFeatures()
    feats_test.obtain_from_simple(realfeat)

    distance = SparseEuclideanDistance(feats_train, feats_train)

    dm_train = distance.get_distance_matrix()
    distance.init(feats_train, feats_test)
    dm_test = distance.get_distance_matrix()

    return distance, dm_train, dm_test
def distance_sparseeuclidean_modular (train_fname=traindat,test_fname=testdat):
	from modshogun import RealFeatures, SparseRealFeatures, SparseEuclideanDistance, CSVFile

	realfeat=RealFeatures(CSVFile(train_fname))
	feats_train=SparseRealFeatures()
	feats_train.obtain_from_simple(realfeat)
	realfeat=RealFeatures(CSVFile(test_fname))
	feats_test=SparseRealFeatures()
	feats_test.obtain_from_simple(realfeat)

	distance=SparseEuclideanDistance(feats_train, feats_train)

	dm_train=distance.get_distance_matrix()
	distance.init(feats_train, feats_test)
	dm_test=distance.get_distance_matrix()

	return distance,dm_train,dm_test
Ejemplo n.º 3
0
def compute_output_plot_isolines(classifier,
                                 kernel=None,
                                 train=None,
                                 sparse=False,
                                 pos=None,
                                 neg=None,
                                 regression=False):
    size = 100
    if pos is not None and neg is not None:
        x1_max = max(1.2 * pos[0, :])
        x1_min = min(1.2 * neg[0, :])
        x2_min = min(1.2 * neg[1, :])
        x2_max = max(1.2 * pos[1, :])
        x1 = linspace(x1_min, x1_max, size)
        x2 = linspace(x2_min, x2_max, size)
    else:
        x1 = linspace(-5, 5, size)
        x2 = linspace(-5, 5, size)

    x, y = meshgrid(x1, x2)

    dense = RealFeatures(array((ravel(x), ravel(y))))
    if sparse:
        test = SparseRealFeatures()
        test.obtain_from_simple(dense)
    else:
        test = dense

    if kernel and train:
        kernel.init(train, test)
    else:
        classifier.set_features(test)

    labels = None
    if regression:
        labels = classifier.apply().get_labels()
    else:
        labels = classifier.apply().get_values()
    z = labels.reshape((size, size))

    return x, y, z
Ejemplo n.º 4
0
def compute_output_plot_isolines(
    classifier, kernel=None, train=None, sparse=False, pos=None, neg=None, regression=False
):
    size = 100
    if pos is not None and neg is not None:
        x1_max = max(1.2 * pos[0, :])
        x1_min = min(1.2 * neg[0, :])
        x2_min = min(1.2 * neg[1, :])
        x2_max = max(1.2 * pos[1, :])
        x1 = linspace(x1_min, x1_max, size)
        x2 = linspace(x2_min, x2_max, size)
    else:
        x1 = linspace(-5, 5, size)
        x2 = linspace(-5, 5, size)

    x, y = meshgrid(x1, x2)

    dense = RealFeatures(array((ravel(x), ravel(y))))
    if sparse:
        test = SparseRealFeatures()
        test.obtain_from_simple(dense)
    else:
        test = dense

    if kernel and train:
        kernel.init(train, test)
    else:
        classifier.set_features(test)

    labels = None
    if regression:
        labels = classifier.apply().get_labels()
    else:
        labels = classifier.apply().get_values()
    z = labels.reshape((size, size))

    return x, y, z