---
title: MLDecisionTreeClassifier
framework: createml
role: symbol
role_heading: Structure
path: createml/mldecisiontreeclassifier
---

# MLDecisionTreeClassifier

A classifier that predicts the target by creating rules to split the data.

## Declaration

```swift
struct MLDecisionTreeClassifier
```

## Topics

### Training a decision tree classifier asynchronously

- [init(trainingData:targetColumn:featureColumns:parameters:)](createml/mldecisiontreeclassifier/init(trainingdata:targetcolumn:featurecolumns:parameters:).md)
- [makeTrainingSession(trainingData:targetColumn:featureColumns:parameters:sessionParameters:)](createml/mldecisiontreeclassifier/maketrainingsession(trainingdata:targetcolumn:featurecolumns:parameters:sessionparameters:).md)
- [resume(_:)](createml/mldecisiontreeclassifier/resume(_:).md)
- [restoreTrainingSession(sessionParameters:)](createml/mldecisiontreeclassifier/restoretrainingsession(sessionparameters:).md)

### Creating a decision tree classifier from a checkpoint

- [init(checkpoint:)](createml/mldecisiontreeclassifier/init(checkpoint:).md)

### Training a decision tree classifier synchronously

- [train(trainingData:targetColumn:featureColumns:parameters:sessionParameters:)](createml/mldecisiontreeclassifier/train(trainingdata:targetcolumn:featurecolumns:parameters:sessionparameters:).md)
- [targetColumn](createml/mldecisiontreeclassifier/targetcolumn.md)
- [featureColumns](createml/mldecisiontreeclassifier/featurecolumns.md)

### Evaluating a decision tree classifier

- [evaluation(on:)](createml/mldecisiontreeclassifier/evaluation(on:).md)
- [trainingMetrics](createml/mldecisiontreeclassifier/trainingmetrics.md)
- [validationMetrics](createml/mldecisiontreeclassifier/validationmetrics.md)

### Testing a decision tree classifier

- [predictions(from:)](createml/mldecisiontreeclassifier/predictions(from:).md)

### Saving a decision tree classifier

- [write(to:metadata:)](createml/mldecisiontreeclassifier/write(to:metadata:).md)
- [write(toFile:metadata:)](createml/mldecisiontreeclassifier/write(tofile:metadata:).md)

### Inspecting a decision tree classifier

- [model](createml/mldecisiontreeclassifier/model.md)
- [MLDecisionTreeClassifier.ModelParameters](createml/mldecisiontreeclassifier/modelparameters-swift.struct.md)
- [modelParameters](createml/mldecisiontreeclassifier/modelparameters-swift.property.md)

### Describing a decision tree classifier

- [description](createml/mldecisiontreeclassifier/description.md)
- [debugDescription](createml/mldecisiontreeclassifier/debugdescription.md)
- [playgroundDescription](createml/mldecisiontreeclassifier/playgrounddescription.md)

### Default Implementations

- [CustomDebugStringConvertible Implementations](createml/mldecisiontreeclassifier/customdebugstringconvertible-implementations.md)
- [CustomPlaygroundDisplayConvertible Implementations](createml/mldecisiontreeclassifier/customplaygrounddisplayconvertible-implementations.md)
- [CustomStringConvertible Implementations](createml/mldecisiontreeclassifier/customstringconvertible-implementations.md)

## Relationships

### Conforms To

- [Copyable](swift/copyable.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomPlaygroundDisplayConvertible](swift/customplaygrounddisplayconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Escapable](swift/escapable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Supporting classifier types

- [MLRandomForestClassifier](createml/mlrandomforestclassifier.md)
- [MLBoostedTreeClassifier](createml/mlboostedtreeclassifier.md)
- [MLLogisticRegressionClassifier](createml/mllogisticregressionclassifier.md)
- [MLSupportVectorClassifier](createml/mlsupportvectorclassifier.md)
