diff options
author | mguetlein <martin.guetlein@gmail.com> | 2010-05-31 17:25:21 +0200 |
---|---|---|
committer | mguetlein <martin.guetlein@gmail.com> | 2010-05-31 17:25:21 +0200 |
commit | 7ce7b16b6b0d2e965e92ae28e6f58644203c1cab (patch) | |
tree | a31f523060c15fb6a9525b010959eda3330f0b07 /test/test_examples.rb | |
parent | d09a2f15a7dc499545732d7b8b45601533252ed9 (diff) |
test/nightly rewrite
Diffstat (limited to 'test/test_examples.rb')
-rw-r--r-- | test/test_examples.rb | 214 |
1 files changed, 214 insertions, 0 deletions
diff --git a/test/test_examples.rb b/test/test_examples.rb new file mode 100644 index 0000000..d08e358 --- /dev/null +++ b/test/test_examples.rb @@ -0,0 +1,214 @@ + +require 'test/test_examples_util.rb' + +class Class + def humanize + self.to_s.gsub(/.*::/, "").gsub(/([^^A-Z_])([A-Z])/, '\1-\2').gsub(/_/,"-") + end +end + +module ValidationExamples + + ######################################################################################################## + + class ABSTRACTHamsterSplit < SplitTestValidation + def initialize + @dataset_file = File.new("data/hamster_carcinogenicity.yaml","r") + @prediction_feature = "http://localhost/toxmodel/feature#Hamster%20Carcinogenicity%20(DSSTOX/CPDB)" + end + end + + class LazarHamsterSplit < ABSTRACTHamsterSplit + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-algorithm"],"lazar") + @algorithm_params = "feature_generation_uri="+File.join(@@config[:services]["opentox-algorithm"],"fminer") + super + end + end + + class MajorityHamsterSplit < ABSTRACTHamsterSplit + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-majority"],"/class/algorithm") + super + end + end + + ######################################################################################################## + + class ABSTRACTHamsterTrainingTest < TrainingTestValidation + def initialize + @test_target_dataset_file = File.new("data/hamster_carcinogenicity.yaml","r") + @training_dataset_file = File.new("data/hamster_carcinogenicity.train.yaml","r") + @test_dataset_file = File.new("data/hamster_carcinogenicity.test.yaml","r") + @prediction_feature = "http://localhost/toxmodel/feature#Hamster%20Carcinogenicity%20(DSSTOX/CPDB)" + end + end + + class MajorityHamsterTrainingTest < ABSTRACTHamsterTrainingTest + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-majority"],"/class/algorithm") + super + end + end + + class LazarHamsterTrainingTest < ABSTRACTHamsterTrainingTest + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-algorithm"],"lazar") + @algorithm_params = "feature_generation_uri="+File.join(@@config[:services]["opentox-algorithm"],"fminer") + super + end + end + + ######################################################################################################## + + class ABSTRACTHamsterCrossvalidation < CrossValidation + def initialize + @dataset_file = File.new("data/hamster_carcinogenicity.yaml","r") + @prediction_feature = "http://localhost/toxmodel/feature#Hamster%20Carcinogenicity%20(DSSTOX/CPDB)" + end + end + + class MajorityHamsterCrossvalidation < ABSTRACTHamsterCrossvalidation + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-majority"],"/class/algorithm") + super + end + end + + class LazarHamsterCrossvalidation < ABSTRACTHamsterCrossvalidation + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-algorithm"],"lazar") + @algorithm_params = "feature_generation_uri="+File.join(@@config[:services]["opentox-algorithm"],"fminer") + super + end + end + + ######################################################################################################## + + class ABSTRACT_ISTHamsterCrossvalidationInsilico < CrossValidation + def initialize + @dataset_uri = "http://webservices.in-silico.ch/dataset/108" + @prediction_feature = "http://toxcreate.org/feature#Hamster%20Carcinogenicity%20(DSSTOX/CPDB)" + end + end + + class MajorityISTHamsterCrossvalidation < ABSTRACT_ISTHamsterCrossvalidationInsilico + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-majority"],"/class/algorithm") + super + end + end + + class LazarISTHamsterCrossvalidation < ABSTRACT_ISTHamsterCrossvalidationInsilico + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-algorithm"],"lazar") + @algorithm_params = "feature_generation_uri="+File.join(@@config[:services]["opentox-algorithm"],"fminer") + super + end + end + + class ISTLazarISTHamsterCrossvalidation < ABSTRACT_ISTHamsterCrossvalidationInsilico + def initialize + @algorithm_uri = "http://webservices.in-silico.ch/algorithm/lazar" + @algorithm_params = "feature_generation_uri=http://webservices.in-silico.ch/algorithm/fminer" + super + end + end + + + ######################################################################################################## + + class LR_AmbitCacoModel < ModelValidation + def initialize + @model_uri = "http://apps.ideaconsult.net:8080/ambit2/model/33" + @test_dataset_uri = "http://apps.ideaconsult.net:8080/ambit2/dataset/R545" + #@prediction_feature=http://apps.ideaconsult.net:8080/ambit2/feature/22200 + end + end + + ######################################################################################################## + + class ABSTRACTCacoTrainingTest < TrainingTestValidation + def initialize + @training_dataset_uri = "http://ambit.uni-plovdiv.bg:8080/ambit2/dataset/R7798" + @test_dataset_uri = "http://ambit.uni-plovdiv.bg:8080/ambit2/dataset/R8353" + @prediction_feature = "http://ambit.uni-plovdiv.bg:8080/ambit2/feature/255510" + end + end + + class LR_AmbitCacoTrainingTest < ABSTRACTCacoTrainingTest + def initialize + @algorithm_uri = "http://ambit.uni-plovdiv.bg:8080/ambit2/algorithm/LR" + super + end + end + + class MLR_NTUA_CacoTrainingTest < ABSTRACTCacoTrainingTest + def initialize + @algorithm_uri = "http://opentox.ntua.gr:3003/algorithm/mlr" + super + end + end + + class MLR_NTUA2_CacoTrainingTest < ABSTRACTCacoTrainingTest + def initialize + @algorithm_uri = "http://opentox.ntua.gr:3004/algorithm/mlr" + super + end + end + + class MajorityCacoTrainingTest < ABSTRACTCacoTrainingTest + def initialize + @algorithm_uri = File.join(@@config[:services]["opentox-majority"],"/regr/algorithm") + super + end + end + + ######################################################################################################## + + @@list = { + "1" => [ LazarHamsterSplit, MajorityHamsterSplit ], + "1a" => [ LazarHamsterSplit ], + "1b" => [ MajorityHamsterSplit ], + + "2" => [ LazarHamsterTrainingTest, MajorityHamsterTrainingTest ], + "2a" => [ LazarHamsterTrainingTest ], + "2b" => [ MajorityHamsterTrainingTest ], + + "3" => [ LazarHamsterCrossvalidation, MajorityHamsterCrossvalidation ], + "3a" => [ LazarHamsterCrossvalidation ], + "3b" => [ MajorityHamsterCrossvalidation ], + + "4" => [ MajorityISTHamsterCrossvalidation, LazarISTHamsterCrossvalidation, ISTLazarISTHamsterCrossvalidation ], + "4a" => [ MajorityISTHamsterCrossvalidation ], + "4b" => [ LazarISTHamsterCrossvalidation ], + "4c" => [ ISTLazarISTHamsterCrossvalidation ], + + "5a" => [ LR_AmbitCacoModel ], + + "6" => [ LR_AmbitCacoTrainingTest, MLR_NTUA_CacoTrainingTest, MLR_NTUA2_CacoTrainingTest, MajorityCacoTrainingTest ], + "6a" => [ LR_AmbitCacoTrainingTest ], + "6b" => [ MLR_NTUA_CacoTrainingTest ], + "6c" => [ MLR_NTUA2_CacoTrainingTest ], + "6d" => [ MajorityCacoTrainingTest ], + } + + def self.list + @@list.sort.collect{|k,v| k+":\t"+v.collect{|vv| vv.humanize}.join("\n\t")+"\n"} #.join("\n") + end + + def self.select(csv_keys) + res = [] + if csv_keys!=nil and csv_keys.size>0 + csv_keys.split(",").each do |k| + raise "no key "+k.to_s unless @@list.has_key?(k) + res << @@list[k] + end + end + return res + end + +end + +#puts ValidationExamples.list +#puts ValidationExamples.select("1,2a").inspect
\ No newline at end of file |