Python3入门机器学习 - 决策树
时间: 2023-11-05 19:17:17 浏览: 114
决策树是一种基本的分类和回归方法,它可以通过训练数据集来建立一个树形结构的模型,用于预测新数据的分类或数值。
在Python中,我们可以使用scikit-learn库来实现决策树。下面是一个简单的例子,展示如何使用决策树来进行分类。
首先,我们需要准备训练数据集和测试数据集。假设我们有一个包含三个特征的数据集,其中每个样本都属于两个类别之一:
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
# 加载Iris数据集
iris = load_iris()
# 创建训练数据集和测试数据集
X_train, X_test, y_train, y_test = train_test_split(
iris.data, iris.target, test_size=0.3, random_state=42)
# 创建决策树分类器
clf = DecisionTreeClassifier()
# 训练模型
clf.fit(X_train, y_train)
# 在测试数据集上进行预测
y_pred = clf.predict(X_test)
# 计算准确率
accuracy = clf.score(X_test, y_test)
print("Accuracy:", accuracy)
```
上面的代码中,我们首先使用`load_iris()`函数加载了Iris数据集,然后使用`train_test_split()`函数将数据集分成训练数据集和测试数据集。接着,我们创建了一个`DecisionTreeClassifier`对象作为决策树分类器,并使用训练数据集来训练模型。最后,我们在测试数据集上进行了预测,并计算了模型的准确率。
需要注意的是,在实际应用中,我们通常需要对训练数据集进行一些预处理工作,比如特征选择、特征缩放等。
决策树的优点在于它们易于理解和解释,可以处理离散和连续特征,适用于多类别问题,且能够自动进行特征选择。但是,决策树也有一些缺点,比如容易过拟合、对噪声敏感等。在实际应用中,我们通常需要结合其他方法来提高模型的性能。
阅读全文