diff options
author | mguetlein <martin.guetlein@gmail.com> | 2011-05-27 17:36:11 +0200 |
---|---|---|
committer | mguetlein <martin.guetlein@gmail.com> | 2011-05-27 17:36:11 +0200 |
commit | 092eca3470f13d6b1df4afc5ea98a0d398300a37 (patch) | |
tree | 36bde86497f14e4d9df03ac6c11bd8df784ff80b | |
parent | 2a2cc158359b29d290c511b5636ff00480b59475 (diff) |
fix percentage completed for cv
-rwxr-xr-x | validation/validation_application.rb | 8 | ||||
-rwxr-xr-x | validation/validation_service.rb | 5 |
2 files changed, 7 insertions, 6 deletions
diff --git a/validation/validation_application.rb b/validation/validation_application.rb index 39a5c50..5ae6bda 100755 --- a/validation/validation_application.rb +++ b/validation/validation_application.rb @@ -42,9 +42,9 @@ post '/crossvalidation/?' do cv_params[:stratified] = (params[:stratified].size>0 && params[:stratified]!="false" && params[:stratified]!="0") if params[:stratified] cv = Validation::Crossvalidation.create cv_params cv.subjectid = @subjectid - cv.perform_cv( params[:prediction_feature], params[:algorithm_params], task ) + cv.perform_cv( params[:prediction_feature], params[:algorithm_params], OpenTox::SubTask.create(task,0,95)) # computation of stats is cheap as dataset are already loaded into the memory - Validation::Validation.from_cv_statistics( cv.id, @subjectid ) + Validation::Validation.from_cv_statistics( cv.id, @subjectid, OpenTox::SubTask.create(task,95,100) ) cv.crossvalidation_uri end return_task(task) @@ -84,9 +84,9 @@ post '/crossvalidation/loo/?' do :loo => "true" } cv = Validation::Crossvalidation.create cv_params cv.subjectid = @subjectid - cv.perform_cv( params[:prediction_feature], params[:algorithm_params], task ) + cv.perform_cv( params[:prediction_feature], params[:algorithm_params], OpenTox::SubTask.create(task,0,95)) # computation of stats is cheap as dataset are already loaded into the memory - Validation::Validation.from_cv_statistics( cv.id, @subjectid ) + Validation::Validation.from_cv_statistics( cv.id, @subjectid, OpenTox::SubTask.create(task,95,100) ) cv.crossvalidation_uri end return_task(task) diff --git a/validation/validation_service.rb b/validation/validation_service.rb index 0651622..57e6f79 100755 --- a/validation/validation_service.rb +++ b/validation/validation_service.rb @@ -32,7 +32,7 @@ module Validation class Validation - def self.from_cv_statistics( cv_id, subjectid=nil ) + def self.from_cv_statistics( cv_id, subjectid=nil, waiting_task=nil ) v = Validation.find( :crossvalidation_id => cv_id, :validation_type => "crossvalidation_statistics" ).first unless v crossvalidation = Crossvalidation.get(cv_id) @@ -49,7 +49,7 @@ module Validation predicted_variables = models.collect{|m| m.predicted_variable(subjectid)} predicted_confidences = models.collect{|m| m.predicted_confidence(subjectid)} prediction = Lib::OTPredictions.new( feature_type, test_dataset_uris, test_target_dataset_uris, prediction_feature, - prediction_dataset_uris, predicted_variables, predicted_confidences, subjectid ) + prediction_dataset_uris, predicted_variables, predicted_confidences, subjectid, OpenTox::SubTask.create(waiting_task, 0, 90) ) v = Validation.new case feature_type @@ -74,6 +74,7 @@ module Validation v.real_runtime = vals.collect{ |vv| vv.real_runtime }.uniq.join(";") v.save end + waiting_task.progress(100) if waiting_task v end |