diff options
author | Christoph Helma <helma@in-silico.ch> | 2015-09-23 14:51:41 +0200 |
---|---|---|
committer | Christoph Helma <helma@in-silico.ch> | 2015-09-23 14:51:41 +0200 |
commit | d5bf97c2cb999539c56bf59aa1d7d3286745be84 (patch) | |
tree | 91d5ab3fd9641c7349d45356d43aef867e4bee92 /test/experiment.rb | |
parent | 259cd085e053193b4c166495ae1af35cfa94bcf6 (diff) |
validations fixed (all models were executed with default parameters)
Diffstat (limited to 'test/experiment.rb')
-rw-r--r-- | test/experiment.rb | 63 |
1 files changed, 57 insertions, 6 deletions
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 |