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()

  

原文地址:https://www.cnblogs.com/yuxiangyang/p/11185158.html

时间: 2024-11-05 21:46:47

sklearn之人工分类和分类边界线的相关文章

文本分类--多分类

文本分类算是自然语言处理领域最最常见的问题了,开源的工具也很好用,但是苦于训练速度缓慢,需要引进多核的版本,开源提供的多核支持参数有限,而同事提供的又有语言障碍,觉得自己探索下多分类器. 分类算法有很多,但是效果较好的基本就是LR和SVM,而这两个算法业内著名的开源代码应该就是liblinear和libsvm,libsvm支不支持多核暂时还未了解,但是liblinear支持的多核版本也就三组(0.2.11),正好避开了我需要用的那组参数,于是就摸索下liblinear的train代码. 一.先说

ECSHOP分类页面筛选功能(按分类下子分类和品牌筛选)

其实分类页面里面本来就有相关的品牌.属性.分类的筛选功能在category.php和模板加上相应的功能即可 1.读出当前分类的所有下级分类 $chlidren_category = $GLOBALS['db']->getALl('SELECT cat_id,cat_name FROM ' . $GLOBALS['ecs']->table('category') ." WHERE parent_id = '$cat_id' and is_show=1"); $category

分类and分类延展

1.Category简介 Category,又称为类别&类目&分类,是OC特有语法,在不修改原有类的基础上增加新的方法,一个庞大的类可以多人来分模块开发,有助于团队合作,或者对当前类方法做一个归类,以便于更好的更新和维护 2.Category的用法 命名规则:类名+扩展方法,比如给 Car增加一个run方法,那么命名为 (Car+run) 新建new file中选择Objective-C file  选择Category 在.h文件中,声明类别: @interface 原有类类名 (分类名

Python深度学习案例2--新闻分类(多分类问题)

本节构建一个网络,将路透社新闻划分为46个互斥的主题,也就是46分类 案例2:新闻分类(多分类问题) 1. 加载数据集 from keras.datasets import reuters (train_data, train_labels), (test_data, test_labels) = reuters.load_data(num_words=10000) 将数据限定在10000个最常见出现的单词,8982个训练样本和2264个测试样本 len(train_data) 8982 len

wordpress在首页列出所有分类及分类下的文章

前面我们谈了wordpress调用指定分类文章,如果想要调用所有分类的文章如何实现呢?比如在wordpress首页列出所有分类及分类下的文章,其实方法类似 <?php $cats = get_categories(); foreach ( $cats as $cat ) { query_posts( 'showposts=10&cat=' . $cat->cat_ID ); ?> <h3><?php echo $cat->cat_name; ?>&l

scikit-learn机器学习(二)逻辑回归进行二分类(垃圾邮件分类),二分类性能指标,画ROC曲线,计算acc,recall,presicion,f1

数据来自UCI机器学习仓库中的垃圾信息数据集 数据可从http://archive.ics.uci.edu/ml/datasets/sms+spam+collection下载 转成csv载入数据 import matplotlib matplotlib.rcParams['font.sans-serif']=[u'simHei'] matplotlib.rcParams['axes.unicode_minus']=False import pandas as pd import numpy as

dedecms织梦自定义函数递归拿所有分类(无限分类)

/** * 取出所有分类 * @param int $channel 频道ID * @return string * 调用{dede:global.getalltype function='getalltype()'/} */ function getalltype($channel=0,$line=10) { $line = empty($line) ? 10 : $line; global $dsql,$result; $dsql->SetQuery("SELECT id,typena

ecshop商品列表页,循环显示当前分类的二级分类以及分类下的商品

1.includes\lib_goods.php,在最末尾添加几个function /** * 获得指定分类下的子分类 * * @access public * @param integer $cat_id 分类编号 * @return array */ function get_children_tree($cat_id) { if ($cat_id >0 ) { $sql = 'SELECT count(*) FROM ' . $GLOBALS['ecs']->table('categor

首页调用指定分类下子分类方法

模板首页一般都有分楼层显示的分类商品,每个楼层右上角会有该分类下小分类排列显示的: 以往有些模板这里都是静态显示的,需要客户手动依次修改,现在模板中心告诉您怎样修改成动态调用,只需修改一个id即可. 1.打开您的文件根目录下 includes/lib_goods.php 文件,在最后一行加入一个方法: function get_parent_id_tree($parent_id){$three_c_arr = array();$sql = 'SELECT count(*) FROM ' . $G