turicreate.logistic_classifier.LogisticClassifier.predict

LogisticClassifier.predict(self, dataset, output_type='class', missing_value_action='auto')

Return predictions for dataset, using the trained logistic regression model. Predictions can be generated as class labels, probabilities that the target value is True, or margins (i.e. the distance of the observations from the hyperplane separating the classes). probability_vector returns a vector of probabilities by each class.

For each new example in dataset, the margin—also known as the linear predictor—is the inner product of the example and the model coefficients. The probability is obtained by passing the margin through the logistic function. Predicted classes are obtained by thresholding the predicted probabilities at 0.5. If you would like to threshold predictions at a different probability level, you can use the Turi Create evaluation toolkit.

Parameters:
dataset : SFrame

Dataset of new observations. Must include columns with the same names as the features used for model training, but does not require a target column. Additional columns are ignored.

output_type : {‘probability’, ‘margin’, ‘class’, ‘probability_vector’}, optional

Form of the predictions which are one of:

  • ‘probability’: Prediction probability associated with the True class (not applicable for multi-class classification)
  • ‘probability_vector’: Prediction probability associated with each class as a vector. The probability of the first class (sorted alphanumerically by name of the class in the training set) is in position 0 of the vector, the second in position 1 and so on.
  • ‘class’: Class prediction. For multi-class classification, this returns the class with maximum probability.
missing_value_action : str, optional

Action to perform when missing values are encountered. Can be one of:

  • ‘auto’: Default to ‘impute’
  • ‘impute’: Proceed with evaluation by filling in the missing values with the mean of the training data. Missing values are also imputed if an entire column of data is missing during evaluation.
  • ‘error’: Do not proceed with evaluation and terminate with an error message.
Returns:
out : SArray

An SArray with model predictions.

See also

create, evaluate, classify

Examples

>>> data =  turicreate.SFrame('https://static.turi.com/datasets/regression/houses.csv')
>>> data['is_expensive'] = data['price'] > 30000
>>> model = turicreate.logistic_classifier.create(data,
                                     target='is_expensive',
                                     features=['bath', 'bedroom', 'size'])
>>> probability_predictions = model.predict(data, output_type='probability')
>>> margin_predictions = model.predict(data, output_type='margin')
>>> class_predictions = model.predict(data, output_type='class')