Class: OpenTox::LeaveOneOutValidation
- Defined in:
- lib/leave-one-out-validation.rb
Direct Known Subclasses
ClassificationLeaveOneOutValidation, RegressionLeaveOneOutValidation
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.create(model) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/leave-one-out-validation.rb', line 12 def self.create model model.training_dataset.features.first.nominal? ? klass = ClassificationLeaveOneOutValidation : klass = RegressionLeaveOneOutValidation loo = klass.new :model_id => model.id, :dataset_id => model.training_dataset_id compound_ids = model.training_dataset.compound_ids predictions = model.predict model.training_dataset.compounds predictions = predictions.each_with_index {|p,i| p[:compound_id] = compound_ids[i]} predictions.select!{|p| p[:database_activities] and !p[:database_activities].empty?} loo.nr_instances = predictions.size predictions.select!{|p| p[:value]} # remove unpredicted loo.predictions = predictions#.sort{|a,b| b[:confidence] <=> a[:confidence]} loo.nr_unpredicted = loo.nr_instances - loo.predictions.size loo.statistics loo.save loo end |