| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 | --:api: evaluate-data-frame:request: EvaluateDataFrameRequest:response: EvaluateDataFrameResponse--[role="xpack"][id="{upid}-{api}"]=== Evaluate {dfanalytics} APIEvaluates the {ml} algorithm that ran on a {dataframe}.The API accepts an +{request}+ object and returns an +{response}+.[id="{upid}-{api}-request"]==== Evaluate {dfanalytics} request["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-request]--------------------------------------------------<1> Constructing a new evaluation request<2> Reference to an existing index<3> The query with which to select data from indices<4> Evaluation to be performed==== EvaluationEvaluation to be performed.Currently, supported evaluations include: +BinarySoftClassification+, +Classification+, +Regression+.===== Binary soft classification["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-evaluation-softclassification]--------------------------------------------------<1> Constructing a new evaluation<2> Name of the field in the index. Its value denotes the actual (i.e. ground truth) label for an example. Must be either true or false.<3> Name of the field in the index. Its value denotes the probability (as per some ML algorithm) of the example being classified as positive.<4> The remaining parameters are the metrics to be calculated based on the two fields described above<5> https://en.wikipedia.org/wiki/Precision_and_recall#Precision[Precision] calculated at thresholds: 0.4, 0.5 and 0.6<6> https://en.wikipedia.org/wiki/Precision_and_recall#Recall[Recall] calculated at thresholds: 0.5 and 0.7<7> https://en.wikipedia.org/wiki/Confusion_matrix[Confusion matrix] calculated at threshold 0.5<8> https://en.wikipedia.org/wiki/Receiver_operating_characteristic#Area_under_the_curve[AuC ROC] calculated and the curve points returned===== Classification["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-evaluation-classification]--------------------------------------------------<1> Constructing a new evaluation<2> Name of the field in the index. Its value denotes the actual (i.e. ground truth) class the example belongs to.<3> Name of the field in the index. Its value denotes the predicted (as per some ML algorithm) class of the example.<4> The remaining parameters are the metrics to be calculated based on the two fields described above<5> Multiclass confusion matrix of size 3===== Regression["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-evaluation-regression]--------------------------------------------------<1> Constructing a new evaluation<2> Name of the field in the index. Its value denotes the actual (i.e. ground truth) value for an example.<3> Name of the field in the index. Its value denotes the predicted (as per some ML algorithm) value for the example.<4> The remaining parameters are the metrics to be calculated based on the two fields described above<5> https://en.wikipedia.org/wiki/Mean_squared_error[Mean squared error]<6> https://en.wikipedia.org/wiki/Coefficient_of_determination[R squared]include::../execution.asciidoc[][id="{upid}-{api}-response"]==== ResponseThe returned +{response}+ contains the requested evaluation metrics.["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-response]--------------------------------------------------<1> Fetching all the calculated metrics results==== Results===== Binary soft classification["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-results-softclassification]--------------------------------------------------<1> Fetching precision metric by name<2> Fetching precision at a given (0.4) threshold<3> Fetching confusion matrix metric by name<4> Fetching confusion matrix at a given (0.5) threshold===== Classification["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-results-classification]--------------------------------------------------<1> Fetching multiclass confusion matrix metric by name<2> Fetching the contents of the confusion matrix<3> Fetching the number of classes that were not included in the matrix===== Regression["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-results-regression]--------------------------------------------------<1> Fetching mean squared error metric by name<2> Fetching the actual mean squared error value<3> Fetching R squared metric by name<4> Fetching the actual R squared value
 |