Getting the Statistics
The stats()
Method
The stats()
method is used to display the attributes of an existing model. It accepts the {scale: "attribute"}
object as an argument.
Here is how to call the stats()
method:
db.predictor_name.stats({scale: "attribute"});
Where:
Name | Description |
---|---|
predictor_name | The name of the predictor whose statistics you want to see. |
{scale: "attribute"} | The argument of the stats() method defines the type of statistics ({scale: "features"} , or {scale: "model"} , or {scale: "ensemble"} ). |
The stats()
Method with the {scale: "features"}
Parameter
Description
The db.predictor_name.stats({scale: "features"})
method is used to display the
way the model encoded the data before training.
Syntax
Here is the syntax:
db.predictor_name.stats({scale: "features"});
On execution, we get:
{
"data": [
{
"column": "number_of_rooms",
"type": "categorical",
"encoder": "OneHotEncoder",
"role": "feature"
}
]
}
Where:
Name | Description |
---|---|
"column" | The name of the column. |
"type" | Type of the inferred data. |
"encoder" | Encoder used. |
"role" | Role of the column (feature or target ). |
Example
Let’s describe the home_rentals_model
model.
db.home_rentals_model.stats({scale: "features"});
On execution, we get:
{
"data": [
{
"column": "number_of_rooms",
"type": "categorical",
"encoder": "OneHotEncoder",
"role": "feature"
},
{
"column": "number_of_bathrooms",
"type": "binary",
"encoder": "BinaryEncoder",
"role": "feature"
},
{
"column": "sqft",
"type": "float",
"encoder": "NumericEncoder",
"role": "feature"
},
{
"column": "location",
"type": "categorical",
"encoder": "OneHotEncoder",
"role": "feature"
},
{
"column": "days_on_market",
"type": "integer",
"encoder": "NumericEncoder",
"role": "feature"
},
{
"column": "initial_price",
"type": "integer",
"encoder": "NumericEncoder",
"role": "feature"
},
{
"column": "neighborhood",
"type": "categorical",
"encoder": "OneHotEncoder",
"role": "feature"
},
{
"column": "rental_price",
"type": "float",
"encoder": "NumericEncoder",
"role": "target"
}
],
"ns": "mindsdb.home_rentals_model"
}
The stats()
Method with the {scale: "model"}
Parameter
Description
The db.predictor_name.stats({scale: "model"})
method is used to display the
performance of the candidate models.
Syntax
Here is the syntax:
db.predictor_name.stats({scale: "model"});
On execution, we get:
{
"data": [
{
"name" : "candidate_model",
"performance" : <0.0|1.0>,
"training_time" : <seconds>,
"selected" : <0|1>
}
]
}
Where:
Name | Description |
---|---|
"name" | Name of the candidate model. |
"performance" | Accuracy from 0 to 1 depending on the type of the model. |
"training_time" | Time elapsed for the training of the model. |
"selected" | 1 for the best performing model and 0 for the rest. |
Example
Let’s see the output for the home_rentals_model
model.
db.home_rentals_model.stats({scale: "model"});
On execution, we get:
{
"data": [
{
"name": "Neural",
"performance": 0.999,
"training_time": 48.37,
"selected": 0
},
{
"name": "LightGBM",
"performance": 1,
"training_time": 33,
"selected": 1
},
{
"name": "Regression",
"performance": 0.999,
"training_time": 0.05,
"selected": 0
}
],
"ns": "mindsdb.home_rentals_model"
}
The stats()
Method with the {scale: "ensemble"}
Parameter
Description
The db.predictor_name.stats({scale: "ensemble"})
method is used to display the
parameters used to select the best candidate model.
Syntax
Here is the syntax:
db.predictor_name.stats({scale: "ensemble"});
On execution, we get:
+-----------------+
| ensemble |
+-----------------+
| {JSON} |
+-----------------+
Where:
Name | Description |
---|---|
ensemble | Object of the JSON type describing the parameters used to select the best candidate model. |
Example
Example WIP This example is a work in progress.
Need More Info? If you need more information on how to describe your model or understand the results, feel free to ask us on the community Slack workspace.
Was this page helpful?