KNN决策树算法怎么用python实现
时间: 2024-05-30 21:06:30 浏览: 103
KNN算法,KD树建立与搜索python实现
KNN算法和决策树算法是两种常用的机器学习算法。下面分别介绍这两个算法的Python实现。
KNN算法:
KNN算法是一种监督学习算法,常用于分类和回归问题。该算法的基本思想是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。
以下是一个简单的Python实现:
```python
import numpy as np
from sklearn import neighbors, datasets
# 加载数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 训练模型
knn = neighbors.KNeighborsClassifier(n_neighbors=5)
knn.fit(X, y)
# 预测新样本
new_data = np.array([[5.1, 3.5, 1.4, 0.2]])
result = knn.predict(new_data)
print(result) # 输出结果为,代表预测为第一类别
```
决策树算法:
决策树是一种常用的分类和回归算法。该算法通过构建一棵树形结构来进行分类或预测。在构建决策树时,我们需要选择一个合适的分裂属性,使得该属性能够将数据集划分为尽可能纯的子集,然后递归地对每个子集进行上述操作,直到每个子集都属于同一类别或者达到预定深度。
以下是一个简单的Python实现:
```python
from sklearn.tree import DecisionTreeClassifier
from sklearn.datasets import load_iris
# 加载数据集
iris = load_iris()
X = iris.data[:, [2, 3]]
y = iris.target
# 训练模型
tree = DecisionTreeClassifier(max_depth=2)
tree.fit(X, y)
# 预测新样本
new_data = [[5, 1.5]]
result = tree.predict(new_data)
print(result) # 输出结果为[1],代表预测为第二类别
```
希望以上内容能够帮助您理解KNN和决策树算法,并且能够使用Python实现。如果您还有其他问题,欢迎提出相关问题。
阅读全文