课程简介
分类就是确定所研究的对象属于哪一个类别,分类问题是一个普遍存在的问题。应用广泛,如根据电子邮件的内容判断是否属于垃圾邮件,根据星系的形状对它们进行分类等。本节将主要介绍分类学习算法如何进行分类,以及如何评估分类的效果等。
学习目标
了解分类学习算法
了解分类学习算法的工作原理
了解如何评估分类学习算法
为了可视化机器学习算法的工作原理,研究二维或一维数据,即仅具有一个或两个特征的数据,通常是有帮助的。但在实践中,数据集通常具有更多的特征,很难在二维图形上绘制出高维数据。
我们将先演示一些简单的例子,然后再讨论更多的"现实世界"中的数据集。
首先,我们将从两个维度来考察二分类问题。我们使用 make_blobs 函数生成的合成数据。
由于数据是二维的,我们可以将每个样本绘制成二维坐标系中的一个点,第一个特征是 x 轴,第二个特征是 y 轴。
分类是监督学习的任务,因此我们对它在未使用到的数据上的表现感兴趣,我们将数据划分为两个部分:
用于学习算法拟合模型的训练集
用来评估模型泛化性能的测试集
model_selection 模块中的 train_test_split 方法为我们做了这样的工作 -- 我们将使用它将数据集划分成 75% 的训练数据集和 25% 的测试数据集。
每个算法都通过一个''估计器''对象在 scikit-learn 中表现出来(scikit-learn 中的所有模型都有非常一致的接口)。比如,我们首先导入逻辑回归类。
领取专属 10元无门槛券
私享最新 技术干货