def test_voting():
    base = ctransforms(milk.supervised.svm.svm_raw(C=2.,kernel=milk.supervised.svm.rbf_kernel(2.**-3)),milk.supervised.svm.svm_binary())
    base = milk.supervised.multi.one_against_rest(base)
    features,labels = milksets.wine.load()
    gfeatures, glabels = group(features, labels, 3)

    learner = milk.supervised.grouped.voting_classifier(base)
    learner.train(gfeatures, glabels)
    model = learner.train(gfeatures, glabels)
    assert ([model.apply(f) for f in gfeatures] == np.array(glabels)).mean() > .8
Exemple #2
0
def test_ecoc_probability():
    features,labels = load()
    features = features[labels < 5]
    labels = labels[labels < 5]
    raw = svm.svm_raw(kernel=svm.dot_kernel(), C=1.)
    base = ctransforms(raw, svm.svm_sigmoidal_correction())
    learner = ecoc_learner(base, probability=True)
    model = learner.train(features[::2], labels[::2])
    results = list(map(model.apply, features[1::2]))
    results = np.array(results)
    assert results.shape[1] == len(set(labels))
    assert np.mean(results.argmax(1) == labels[1::2]) > .5
Exemple #3
0
import numpy as np
import random
import milk.supervised.svm
import milk.supervised.multi
from milk.supervised.classifier import ctransforms
from .fast_classifier import fast_classifier

import milksets.wine
features,labels = milksets.wine.load()
A = np.arange(len(features))
random.seed(9876543210)
random.shuffle(A)
features = features[A]
labels = labels[A]
labelset = set(labels)
base = ctransforms(milk.supervised.svm.svm_raw(C=2.,kernel=milk.supervised.svm.rbf_kernel(2.**-3)),milk.supervised.svm.svm_binary())

def test_one_against_rest():
    M = milk.supervised.multi.one_against_rest(base)
    M = M.train(features[:100,:],labels[:100])
    tlabels = [M.apply(f) for f in features[100:]]
    for tl in tlabels:
        assert tl in labelset

def test_one_against_one():
    M = milk.supervised.multi.one_against_one(base)
    M = M.train(features[:100,:],labels[:100])
    tlabels = [M.apply(f) for f in features[100:]]
    for tl in tlabels:
        assert tl in labelset
    tlabels_many = M.apply_many(features[100:])
        ri = celltypes_rna.index(ct)
        cur.append(R[:,ri])
    except ValueError:
        pass
    if not len(cur):
        raise KeyError("?")
    features.append(np.array(cur).mean(0))

selected = np.array(selected)
features = np.array(features)
gosweights = generate_gosweights(features, gene2ensembl, 'maxabs', ['molecular_function', 'biological_process'])
gosweights = thresh_features(gosweights)



learner = norm_learner(ctransforms(remove_constant_features(), zscore_normalise(), select_learner(12), lasso_relaxed(.000225010113525, .1)), 0)
rna_ge_gosweigths_mpbf_ma,labels = rna_ge_gosweigths.f('maxabs', ['molecular_function', 'biological_process'])
rna_ge_gosweigths_mpbf_ma = thresh_features(rna_ge_gosweigths_mpbf_ma)
model = learner.train(rna_ge_gosweigths_mpbf_ma, labels)



drugvalues, celltypes, drugs = read_training()
olines = read_olines()
results = []
for o in olines:
    if o in testing:
        oi = allct.index(o)
        r = model.apply(gosweights[oi])
    else:
        oi = celltypes.index(o)
Exemple #5
0
import numpy as np
import random
import milk.supervised.svm
import milk.supervised.multi
from milk.supervised.classifier import ctransforms
from fast_classifier import fast_classifier

import milksets.wine
features,labels = milksets.wine.load()
A = np.arange(len(features))
random.seed(9876543210)
random.shuffle(A)
features = features[A]
labels = labels[A]
labelset = set(labels)
base = ctransforms(milk.supervised.svm.svm_raw(C=2.,kernel=milk.supervised.svm.rbf_kernel(2.**-3)),milk.supervised.svm.svm_binary())

def test_one_against_rest():
    M = milk.supervised.multi.one_against_rest(base)
    M = M.train(features[:100,:],labels[:100])
    tlabels = [M.apply(f) for f in features[100:]]
    for tl in tlabels:
        assert tl in labelset

def test_one_against_one():
    M = milk.supervised.multi.one_against_one(base)
    M = M.train(features[:100,:],labels[:100])
    tlabels = [M.apply(f) for f in features[100:]]
    for tl in tlabels:
        assert tl in labelset
Exemple #6
0
                ('prune(gow, .95)', prune_features(rna_ge_gosweigths_add, .95)),
                ('prune(gow-ma, .95)', prune_features(rna_ge_gosweigths_maxabs, .95)),
                ]:
    features = data[0]
    labels = data[1]

    for name,learner in [
            ('random(1)', random_learner(1)),
            ('random(2)', random_learner(2)),
            ('random(3)', random_learner(3)),

            ('ridge(1.)', ridge_regression(1.)),
            ('ridge(.128)', ridge_regression(.128)),
            ('ridge(.001)', ridge_regression(.001)),
            ('ridge(1e-6)', ridge_regression(1e-6)),
            ('select+ridge(.001)', ctransforms(remove_constant_features(), select_learner(12), ridge_regression(.001))),

            ('relaxed', lasso_relaxed(.000225010113525, .1)),
            ('sel-relaxed', ctransforms(remove_constant_features(), select_learner(12), lasso_relaxed(.000225010113525, .1))),
            ('zs-sel-relaxed', ctransforms(remove_constant_features(), zscore_normalise(), select_learner(12), lasso_relaxed(.000225010113525, .1))),
            ('sel+lasso(1e-7)', ctransforms(remove_constant_features(), select_learner(12), lasso_regression(1e-7))),
            ('sel+lasso(1e-5)', ctransforms(remove_constant_features(), select_learner(16), lasso_regression(1e-5))),
            ('zs+lasso(1e-5)', ctransforms(remove_constant_features(), zscore_normalise(), lasso_regression_guess())),
            ('min0+lasso(1e-5)', ctransforms(remove_constant_features(), min_to_zero(), lasso_regression_guess())),
            ('sel+lasso(0.000225010113525)', ctransforms(remove_constant_features(), select_learner(16), lasso_regression(0.000225010113525))),
            ('zs+sel+lasso(0.000225010113525)', ctransforms(remove_constant_features(), zscore_normalise(), select_learner(16), lasso_regression(0.000225010113525))),
            ('zs+sel+lasso_learn', ctransforms(remove_constant_features(), zscore_normalise(), select_learner(12), lasso_regression_with_learning())),
            ('zs+sel+lasso_guess', ctransforms(remove_constant_features(), zscore_normalise(), select_learner(12), lasso_regression_guess())),
            ('zs+lasso_guess', ctransforms(remove_constant_features(), zscore_normalise(), lasso_regression_guess())),
            ('zs+sel+min0+lasso_guess', ctransforms(remove_constant_features(), zscore_normalise(), select_learner(12), min_to_zero(), lasso_regression_guess())),
            ('zs+min0+lasso_guess', ctransforms(remove_constant_features(), zscore_normalise(), min_to_zero(), lasso_regression_guess())),