5

Scikit-learn 学习笔记(3)监督学习的例子

 1 year ago
source link: https://www.lfhacks.com/tech/scikit-learn-3/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
358.jpg
扫一扫,转发文章

这个系列是我通过阅读 Scikit-learn 的文档,结合自己的理解和掌握的知识,重新把文档描述出来。希望能加深自己的理解,希望能帮到有需要的人。

学习材料:https://scikit-learn.org/stable/tutorial/statistical_inference/supervised_learning.html

监督学习的概念

这篇文章 中介绍了监督学习的概念。简单的说,就是用一批带有已知标签的数据集,来预测没有标签的数据的标签。

监督学习要解决的问题

监督学习中,输入是观测样本矩阵 XX 的一个维度是特征,另一个维度是样本,(也就是 数据集,参看这篇),输出则是一个一维的的向量 y,叫做 “目标 target” 或者 “标签 label”,这个向量的维度和样本的维度一样。对于每一次的观测样本,输出一个标签,所以一般来说,输出的标签向量的长度和样本个数相同。

label-1.png

分类(classification):如果一个预测任务是将数据集划分为有限多个标签,(比如 这篇 中的iris数据,预测花的种类),换句话说,是给每个数据集打一个标签,命一个名,那么这个任务就称为分类任务。

label-2.png

分类的标签是离散的变量,任务是给测试样本“定性”; 如果一个要预测的对象是连续的变量,任务是给测试样本“定量”,那么该任务就称为回归(regression)。

分类问题的例子

鸢尾花数据集 中,来自三种鸢尾花,分别为 Setosa、Versicolour、Virginica。 所以这套训练数据中会有三种标签,从下面的代码可以看出来:

import numpy as np from sklearn import datasets iris_X, iris_y = datasets.load_iris(return_X_y=True) print(np.unique(iris_y))
[0 1 2]

这里用三个数字表示数据的标签。

K-最近邻算法

最简单的监督学习分类器是 K-最近邻算法。

scikit-learn 库里的每一个监督估计器都有一个 .fit(X, y) 方法函数和一个 predict(X) 方法函数。.fit(X, y) 用于拟合数据,predict(X) 用于预测 y

scikit-learn 库,y 向量的成员是整数或者字符串。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK