From 8aeda84785ba911f0f10b1e2a1737b39e3e48cdb Mon Sep 17 00:00:00 2001 From: Tim O'Donnell <timodonnell@gmail.com> Date: Thu, 5 Dec 2019 15:44:22 -0500 Subject: [PATCH] tests --- test/test_class1_presentation_predictor.py | 23 +++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/test/test_class1_presentation_predictor.py b/test/test_class1_presentation_predictor.py index 69a8da80..b54bee2a 100644 --- a/test/test_class1_presentation_predictor.py +++ b/test/test_class1_presentation_predictor.py @@ -91,7 +91,7 @@ def teardown(): cleanup() -def Xtest_basic(): +def test_basic(): affinity_predictor = PAN_ALLELE_PREDICTOR_NO_MASS_SPEC models = [] for affinity_network in affinity_predictor.class1_pan_allele_models: @@ -99,11 +99,10 @@ def Xtest_basic(): optimizer="adam", random_negative_rate=0.0, random_negative_constant=0, - max_epochs=5, + max_epochs=100, learning_rate=0.001, batch_generator_batch_size=256) presentation_network.load_from_class1_neural_network(affinity_network) - print(presentation_network.network.get_config()) models.append(presentation_network) predictor = Class1PresentationPredictor( @@ -164,12 +163,14 @@ def Xtest_basic(): train_df = pandas.DataFrame({ "peptide": numpy.concatenate([ random_peptides(256, length=length) - for length in range(8,16) + for length in [9] ]), }) train_df["allele"] = "HLA-A*02:20" train_df["experiment"] = "experiment1" train_df["label"] = train_df.peptide.str.match("^[KSEQ]").astype("float32") + train_df["pre_train_affinity_prediction"] = affinity_predictor.predict( + train_df.peptide.values, alleles=train_df.allele.values) allele_encoding = MultipleAlleleEncoding( experiment_names=train_df.experiment.values, experiment_to_allele_list={ @@ -189,8 +190,18 @@ def Xtest_basic(): train_df["updated_score"] = new_predictor.predict( train_df.peptide.values, alleles=["HLA-A*02:20"]) + train_df["score_diff"] = train_df.updated_score - train_df.original_score + mean_change = train_df.groupby("label").score_diff.mean() + print("Mean change:") + print(mean_change) + assert_greater(mean_change[1.0], mean_change[0.0]) print(train_df) - #import ipdb ; ipdb.set_trace() + train_df["post_train_affinity_prediction"] = affinity_predictor.predict( + train_df.peptide.values, + alleles=train_df.allele.values) + assert_array_equal( + train_df.pre_train_affinity_prediction.values, + train_df.post_train_affinity_prediction.values) def scramble_peptide(peptide): @@ -279,8 +290,6 @@ def test_loss(): neg = y_pred[(y_true == 0.0).astype(bool)] term = neg.reshape((-1, 1)) - pos + delta - print("Term:") - print(term) expected2 = ( numpy.maximum(0, term)**2).sum() / ( len(pos) * neg.shape[0] * neg.shape[1]) -- GitLab