sklearn之人工分类和分类边界线

Posted yuxiangyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sklearn之人工分类和分类边界线相关的知识,希望对你有一定的参考价值。

‘‘‘
    人工分类:人为的按照自定的规则对事物进行分类
        特征1    特征2    输出
        3        1        0
        2        5        1
        1        8       1
        6        4       0
        5        2        0
        3        5        1
        4        7        1
        4        -1        0
        ...        ...        ...
        6        8        1
        5        1        0

    分类边界线的绘制
‘‘‘
import numpy as np
import matplotlib.pyplot as mp

x = np.array([[3, 1],
              [2, 5],
              [1, 8],
              [6, 4],
              [5, 2],
              [3, 5],
              [4, 7],
              [4, -1]])
y = np.array([0, 1, 1, 0, 0, 1, 1, 0])

# 根据找到的某些规律,绘制分类边界线
l, r = x[:, 0].min() - 1, x[:, 0].max() + 1
b, t = x[:, 1].min() - 1, x[:, 1].max() + 1
n = 500
grid_x, grid_y = np.meshgrid(np.linspace(l, r, n), np.linspace(b, t, n))
# print(grid_x)
# 当x>y时,样本属于0类别,反之则为1类别,grid_z保存的时每个点的类别
grid_z = np.piecewise(grid_x, [grid_x > grid_y, grid_x < grid_y], [0, 1])

# 绘制样本数据
mp.figure(Simple Classification, facecolor=lightgray)
mp.title(Simple Classification)
mp.xlabel(X)
mp.ylabel(Y)
# 绘制分类边界线(填充网格化矩阵)
mp.pcolormesh(grid_x, grid_y, grid_z, cmap=gray)
mp.scatter(x[:, 0], x[:, 1], s=80, c=y, cmap=jet, label=Samples)

mp.legend()
mp.show()

  技术图片

以上是关于sklearn之人工分类和分类边界线的主要内容,如果未能解决你的问题,请参考以下文章

详解支持向量机-支持向量机分类器原理菜菜的sklearn课堂笔记

计算机视觉(CV)sklearn之分类算法与手写数字识别

机器学习sklearn----支持向量机分类器SVC求解过程可视化

机器学习sklearn----支持向量机分类器SVC求解过程可视化

机器学习sklearn----支持向量机分类器SVC求解过程可视化

人工智能机器学习之用Python使用ID3算法实例及使用sklearn的决策树算法对葡萄酒数据集进行分类