From dc5d0dbbb8029a163f766bfbd8ea6db8774496e1 Mon Sep 17 00:00:00 2001 From: rautenberg Date: Wed, 14 Sep 2016 14:43:39 +0200 Subject: test validation results --- views/model_details.haml | 117 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 views/model_details.haml (limited to 'views') diff --git a/views/model_details.haml b/views/model_details.haml new file mode 100644 index 0000000..251fca8 --- /dev/null +++ b/views/model_details.haml @@ -0,0 +1,117 @@ +%b Model: +%br +Source: +%a{:href=>model.source, :target=>"external"} + = model.source +%br +- model.classification? ? type = "Classification" : type = "Regression" += "Type:\t" += type +%br +- training_dataset = OpenTox::Dataset.find model.training_dataset.id += "Training compounds:\t" += training_dataset.compounds.size + +%p +- if type == "Classification" + %b Independent crossvalidations: +- else + %b Independent crossvalidations (-log10 transformed): +%div.row{:id=>"validations#{model.id}", :style=>"background-color:#f5f5f5;"} + - model.crossvalidations.each do |crossvalidation| + %span.col-xs-4.col-sm-4.col-md-4.col-lg-4 + - cv = OpenTox::CrossValidation.find crossvalidation.id + = "Num folds:\t" + = cv.folds + %br + = "Num instances:\t" + = cv.nr_instances + %br + = "Num unpredicted" + = cv.nr_unpredicted + - if model.classification? + %br + = "Accuracy:\t" + = cv.accuracy.round(3) if cv.accuracy + %br + = "True positive rate:\t" + = cv.true_rate["active"].round(3) if cv.true_rate["active"] + %br + = "True negative rate:\t" + = cv.true_rate["inactive"].round(3) if cv.true_rate["inactive"] + %br + = "Positive predictive value:\t" + = cv.predictivity["active"].round(3) if cv.predictivity["active"] + %br + = "Negative predictive value:\t" + = cv.predictivity["inactive"].round(3) if cv.predictivity["inactive"] + %p + %b Confusion Matrix: + %table.table.table-condensed.table-borderless{:style=>"width:20%;"} + %tbody + %tr + %td + %td + %td + %b actual + %td + %td + %tr + %td + %td + %td active + %td inactive + -#%td total + %tr + %td + %b predicted + %td active + %td + =cv.confusion_matrix[0][0] + %td + =cv.confusion_matrix[0][1] + -#%td + =cv.confusion_matrix[0][0]+cv.confusion_matrix[0][1] + %tr + %td + %td inactive + %td + =cv.confusion_matrix[1][0] + %td + =cv.confusion_matrix[1][1] + -#%td + =cv.confusion_matrix[1][0]+cv.confusion_matrix[1][1] + -#%tr + %td + %td total + %td + =cv.confusion_matrix[0][0]+cv.confusion_matrix[1][0] + %td + =cv.confusion_matrix[0][1]+cv.confusion_matrix[1][1] + %td + -#= "Confusion Matrix:\t" + -#= cv.confusion_matrix + %br + /= "Confidence plot:" + /%p.plot + / %img{:src=>"confp#{cv.id}.svg"} + - if model.regression? + %br + = "Root mean squared error:\t" + = cv.rmse.round(3) if cv.rmse + %br + = "Mean absolute error:\t" + = cv.mae.round(3) if cv.mae + %br + = "R square:\t" + = cv.r_squared.round(3) if cv.r_squared + %br + /= "Confidence plot:" + /%p.plot + / %img{:src=>"/confp#{cv.id}.svg"} + /%br + /= "Correlation plot" + /%p.plot + / %img{:src=>"/corrp#{cv.id}.svg"} + +%br \ No newline at end of file -- cgit v1.2.3