From d5bf97c2cb999539c56bf59aa1d7d3286745be84 Mon Sep 17 00:00:00 2001 From: Christoph Helma Date: Wed, 23 Sep 2015 14:51:41 +0200 Subject: validations fixed (all models were executed with default parameters) --- test/experiment.rb | 63 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 57 insertions(+), 6 deletions(-) (limited to 'test/experiment.rb') diff --git a/test/experiment.rb b/test/experiment.rb index 4b54768..76a0498 100644 --- a/test/experiment.rb +++ b/test/experiment.rb @@ -63,21 +63,26 @@ class ExperimentTest < MiniTest::Test end def test_regression_fingerprints +=begin datasets = [ - "LOAEL_mmol_corrected_smiles.csv" + "EPAFHM.medi.csv", + #"LOAEL_mmol_corrected_smiles.csv" ] min_sims = [0.3,0.7] - types = ["FP2","FP3","FP4","MACCS"] + #min_sims = [0.7] + #types = ["FP2","FP3","FP4","MACCS","mpd"] + types = ["mpd","FP3"] experiment = Experiment.create( - :name => "Fminer vs fingerprint classification for datasets #{datasets}.", + :name => "Fingerprint regression with different types for datasets #{datasets}.", :dataset_ids => datasets.collect{|d| Dataset.from_csv_file(File.join(DATA_DIR, d)).id}, ) types.each do |type| min_sims.each do |min_sim| experiment.model_settings << { - :algorithm => "OpenTox::Model::LazarRegression", + :model_algorithm => "OpenTox::Model::LazarRegression", + :prediction_algorithm => "OpenTox::Algorithm::Regression.weighted_average", :neighbor_algorithm => "fingerprint_neighbors", - :neighbor_algorithm_parameter => { + :neighbor_algorithm_parameters => { :type => type, :min_sim => min_sim, } @@ -85,7 +90,53 @@ class ExperimentTest < MiniTest::Test end end experiment.run - p experiment.report +=end +#=begin + experiment = Experiment.find '56029cb92b72ed673d000000' +#=end + p experiment.id + experiment.results.each do |dataset,result| + result.each do |r| + params = Model::Lazar.find(r["model_id"])[:neighbor_algorithm_parameters] + RepeatedCrossValidation.find(r["repeated_crossvalidation_id"]).crossvalidations.each do |cv| + cv.validation_ids.each do |vid| + model_params = Model::Lazar.find(Validation.find(vid).model_id)[:neighbor_algorithm_parameters] + assert_equal params[:type], model_params[:type] + assert_equal params[:min_sim], model_params[:min_sim] + refute_equal params[:training_dataset_id], model_params[:training_dataset_id] + end + end + end + end + puts experiment.report.to_yaml + p experiment.summary + end + def test_mpd_fingerprints +=begin + datasets = [ + "EPAFHM.medi.csv", + ] + types = ["FP2","mpd"] + experiment = Experiment.create( + :name => "FP2 vs mpd fingerprint regression for datasets #{datasets}.", + :dataset_ids => datasets.collect{|d| Dataset.from_csv_file(File.join(DATA_DIR, d)).id}, + ) + types.each do |type| + experiment.model_settings << { + :algorithm => "OpenTox::Model::LazarRegression", + :neighbor_algorithm => "fingerprint_neighbors", + :neighbor_algorithm_parameter => { + :type => type, + :min_sim => 0.7, + } + } + end + experiment.run + p experiment.id +=end + experiment = Experiment.find '55ffd0c02b72ed123c000000' + p experiment + puts experiment.report.to_yaml end end -- cgit v1.2.3