summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorChristoph Helma <helma@in-silico.ch>2016-10-05 14:43:18 +0200
committerChristoph Helma <helma@in-silico.ch>2016-10-05 14:43:18 +0200
commitec87f7e079f3a7ef8ea6a0fa57f3b40e81ecaed0 (patch)
tree5ff8415a0a55842e9c39ccacb1dafbf6a4f19a23 /test
parent016403f7db0dedf8237f29af41312b5ff2720c30 (diff)
classification and regression tests
Diffstat (limited to 'test')
-rw-r--r--test/classification.rb8
-rw-r--r--test/regression.rb25
2 files changed, 23 insertions, 10 deletions
diff --git a/test/classification.rb b/test/classification.rb
index 9104022..6638a79 100644
--- a/test/classification.rb
+++ b/test/classification.rb
@@ -4,7 +4,7 @@ class LazarClassificationTest < MiniTest::Test
def test_lazar_classification
training_dataset = Dataset.from_csv_file File.join(DATA_DIR,"hamster_carcinogenicity.csv")
- model = Model::LazarClassification.create training_dataset.features.first, training_dataset
+ model = Model::Lazar.create training_dataset: training_dataset
[ {
:compound => OpenTox::Compound.from_inchi("InChI=1S/C6H6/c1-2-4-6-5-3-1/h1-6H"),
@@ -40,9 +40,9 @@ class LazarClassificationTest < MiniTest::Test
def test_lazar_kazius
t = Time.now
- dataset = Dataset.from_csv_file File.join(DATA_DIR,"kazius.csv")
+ training_dataset = Dataset.from_csv_file File.join(DATA_DIR,"kazius.csv")
t = Time.now
- model = Model::LazarClassification.create(dataset.features.first,dataset)
+ model = Model::Lazar.create training_dataset: training_dataset
t = Time.now
2.times do
compound = Compound.from_smiles("Clc1ccccc1NN")
@@ -50,6 +50,6 @@ class LazarClassificationTest < MiniTest::Test
assert_equal "1", prediction[:value]
#assert_in_delta 0.019858401199860445, prediction[:confidence], 0.001
end
- dataset.delete
+ training_dataset.delete
end
end
diff --git a/test/regression.rb b/test/regression.rb
index dff0518..4c21450 100644
--- a/test/regression.rb
+++ b/test/regression.rb
@@ -4,7 +4,15 @@ class LazarRegressionTest < MiniTest::Test
def test_weighted_average
training_dataset = Dataset.from_csv_file "#{DATA_DIR}/EPAFHM.medi_log10.csv"
- model = Model::LazarRegression.create training_dataset.features.first, training_dataset, {:neighbor_algorithm_parameters => {:min_sim => 0}, :prediction_algorithm => "OpenTox::Algorithm::Regression.local_weighted_average"}
+ algorithms = {
+ :similarity => {
+ :min => 0
+ },
+ :prediction => {
+ :method => "Algorithm::Regression.weighted_average",
+ },
+ }
+ model = Model::Lazar.create training_dataset: training_dataset, algorithms: algorithms
compound = Compound.from_smiles "CC(C)(C)CN"
prediction = model.predict compound
assert_equal -0.86, prediction[:value].round(2)
@@ -13,17 +21,22 @@ class LazarRegressionTest < MiniTest::Test
def test_mpd_fingerprints
training_dataset = Dataset.from_csv_file "#{DATA_DIR}/EPAFHM.medi_log10.csv"
- model = Model::LazarRegression.create training_dataset.features.first, training_dataset
- model.neighbor_algorithm_parameters[:type] = "MP2D"
+ algorithms = {
+ :descriptors => {
+ :method => "fingerprint",
+ :type => "MP2D"
+ }
+ }
+ model = Model::Lazar.create training_dataset: training_dataset, algorithms: algorithms
compound = Compound.from_smiles "CCCSCCSCC"
prediction = model.predict compound
- assert_equal 1.37, prediction[:value].round(2)
assert_equal 3, prediction[:neighbors].size
+ assert_equal 1.37, prediction[:value].round(2)
end
def test_local_fingerprint_regression
training_dataset = Dataset.from_csv_file "#{DATA_DIR}/EPAFHM.medi_log10.csv"
- model = Model::LazarRegression.create(training_dataset.features.first, training_dataset, :prediction_algorithm => "OpenTox::Algorithm::Regression.local_fingerprint_regression")
+ model = Model::Lazar.create training_dataset: training_dataset
compound = Compound.from_smiles "NC(=O)OCCC"
prediction = model.predict compound
refute_nil prediction[:value]
@@ -34,7 +47,7 @@ class LazarRegressionTest < MiniTest::Test
def test_local_physchem_regression
skip # TODO: fix
training_dataset = Dataset.from_csv_file "#{DATA_DIR}/EPAFHM.medi_log10.csv"
- model = Model::LazarRegression.create(training_dataset.features.first, training_dataset, :prediction_algorithm => "OpenTox::Algorithm::Regression.local_physchem_regression")
+ model = Model::Lazar.create(training_dataset.features.first, training_dataset, :prediction_algorithm => "OpenTox::Algorithm::Regression.local_physchem_regression")
compound = Compound.from_smiles "NC(=O)OCCC"
prediction = model.predict compound
refute_nil prediction[:value]