summaryrefslogtreecommitdiff
path: root/reach_reports
diff options
context:
space:
mode:
authormguetlein <martin.guetlein@gmail.com>2011-02-03 18:14:20 +0100
committermguetlein <martin.guetlein@gmail.com>2011-02-03 18:14:20 +0100
commitaca886bf82e7ebf5a9d76642614418ed983ab45e (patch)
treebdd9b22fccfff637dddd0b10d4800a8e41fe8382 /reach_reports
parent7906047a423d94692581ac6aa15295924c8b89db (diff)
adding weighted_accuracy, change accuracy computation, some minor changes
Diffstat (limited to 'reach_reports')
-rwxr-xr-xreach_reports/reach_service.rb14
-rwxr-xr-xreach_reports/reach_test.rb10
2 files changed, 17 insertions, 7 deletions
diff --git a/reach_reports/reach_service.rb b/reach_reports/reach_service.rb
index 5e11dc1..f5b4b12 100755
--- a/reach_reports/reach_service.rb
+++ b/reach_reports/reach_service.rb
@@ -132,10 +132,12 @@ module ReachReports
val_datasets = []
if algorithm
- cvs = Lib::Crossvalidation.find_all_uniq({:algorithm_uri => algorithm.uri})
+ cvs = Lib::Crossvalidation.find_all_uniq({:algorithm_uri => algorithm.uri, :finished => true})
# PENDING: cv classification/regression hack
cvs = cvs.delete_if do |cv|
- val = Validation::Validation.first( :all, :conditions => { :crossvalidation_id => cv.id } )
+ #val = Validation::Validation.first( :all, :conditions => { :crossvalidation_id => cv.id } )
+ val = Validation::Validation.first( :crossvalidation_id => cv.id )
+ raise "should not happen: no validations found for crossvalidation "+cv.id.to_s unless val
(val.classification_statistics!=nil) != (feature_type=="classification")
end
@@ -166,11 +168,11 @@ module ReachReports
val = YAML.load( OpenTox::RestClientWrapper.get File.join(cv.crossvalidation_uri,"statistics") )
case feature_type
when "classification"
- lmo << "percent_correct: "+val[:classification_statistics][:percent_correct].to_s
- lmo << "weighted AUC: "+val[:classification_statistics][:weighted_area_under_roc].to_s
+ lmo << "percent_correct: "+val[OT.classificationStatistics][OT.percentCorrect].to_s
+ lmo << "weighted AUC: "+val[OT.classificationStatistics][OT.weightedAreaUnderRoc].to_s
when "regression"
- lmo << "root_mean_squared_error: "+val[:regression_statistics][:root_mean_squared_error].to_s
- lmo << "r_square "+val[:regression_statistics][:r_square].to_s
+ lmo << "root_mean_squared_error: "+val[OT.regressionStatistics][OT.rootMeanSquaredError].to_s
+ lmo << "r_square "+val[OT.regressionStatistics][OT.rSquare].to_s
end
reports = OpenTox::RestClientWrapper.get File.join(CONFIG[:services]["opentox-validation"],"report/crossvalidation?crossvalidation_uris="+cv.crossvalidation_uri)
if reports and reports.chomp.size>0
diff --git a/reach_reports/reach_test.rb b/reach_reports/reach_test.rb
index 4f7113b..9a354e7 100755
--- a/reach_reports/reach_test.rb
+++ b/reach_reports/reach_test.rb
@@ -115,7 +115,15 @@ class ReachTest < Test::Unit::TestCase
# puts last_response.body
#model_uri = "http://ambit.uni-plovdiv.bg:8080/ambit2/model/173393"
- model_uri = "http://local-ot/model/1"
+
+ model_uri = "http://local-ot/majority/class/model/58"
+# m = OpenTox::Model::Generic.find(model_uri)
+# puts m.metadata[OT.algorithm] if m
+# a = OpenTox::Algorithm::Generic.find(m.metadata[OT.algorithm])
+# puts a.metadata.inspect
+# exit
+
+# model_uri = "http://local-ot/model/1"
#http://local-ot/majority/class/model/15
#model_uri = "http://local-ot/majority/class/model/15"
# model_uri = "http://local-ot/majority/class/model/91"