匠心精神 - 良心品质腾讯认可的专业机构-IT人的高薪实战学院

咨询电话:4000806560

Python 机器学习实战:使用 Scikit-Learn 训练一个分类器

Python 机器学习实战:使用 Scikit-Learn 训练一个分类器

机器学习是当前最热门和最具前景的技术之一,而 Python 作为一门简洁高效的编程语言,则成为了许多机器学习爱好者的首选语言。Scikit-Learn,是 Python 中一个广受欢迎的机器学习库,提供了许多常见的机器学习算法和工具,帮助你快速地搭建和部署机器学习应用程序。本文将介绍如何使用 Scikit-Learn 训练一个分类器。

1.载入数据集

在训练一个分类器之前,需要先载入数据集。Scikit-Learn 中提供了许多常用的数据集,包括 iris、digits 等。在本文中,我们将使用 iris 数据集。iris 数据集包含 150 个样本,每个样本包含 4 个属性:萼片长度、萼片宽度、花瓣长度、花瓣宽度,以及一个类别标签,共有3种类别。

from sklearn.datasets import load_iris
iris = load_iris()

2.处理数据集

在载入数据集后,我们需要对其进行预处理,以便于后续的训练和测试。因为 iris 数据集中每个样本含有 4 个属性,我们需要将其转换为一个 150 行 4 列的数据矩阵。此外,iris 数据集的类别标签为字符串类型,需要将其转换为整数类型。

X = iris.data
y = iris.target

3.拆分数据集

在将数据集处理完毕后,我们需要将其拆分成训练集和测试集,以便于评估分类器在未知数据上的准确性。在本例中,我们将数据集拆分成 70% 的训练集和 30% 的测试集。

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

4.训练分类器

现在我们已经完成了数据集的处理和拆分,可以开始训练分类器了。在本文中,我们将使用决策树算法来训练分类器。

from sklearn.tree import DecisionTreeClassifier
clf = DecisionTreeClassifier()
clf.fit(X_train, y_train)

5.评估分类器

在完成训练后,我们需要评估分类器在测试集上的准确性。在本例中,我们将使用准确性作为评估指标。

from sklearn.metrics import accuracy_score
y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)

6.结果预测

现在我们已经完成了分类器的训练和评估,可以使用分类器对新的样本进行预测。在本例中,我们随机生成了一组新的样本,并使用分类器对其进行预测。

import numpy as np
new_observation = np.array([5.2, 3.2, 1.1, 0.3]).reshape(1, -1)
prediction = clf.predict(new_observation)

总结

在本文中,我们介绍了使用 Scikit-Learn 训练一个分类器的常见步骤,包括数据集的载入、处理、拆分、分类器的训练、评估和结果预测。Scikit-Learn 提供了许多常见的机器学习算法和工具,让机器学习变得更加简单和高效。