机器学习——生成分类数据的坐标系边界需要用到的技术方法

0、前言:

  • 如果遇到一种应用场景需要将x轴数据和y轴数据所有点映射到坐标系中,需要得到坐标系中x和y映射的坐标点,就要用到meshgrid把x和y映射到坐标系中,然后把得到的结果用ravel把结果转成一维的。
  • 用np.c_()把x数据和y数据堆叠在一起,就可以用来输入模型做训练。

1、numpy库中的meshgrid方法:

  • 该函数常用于在二维或三维空间中创建网格点坐标
  • 示例
python 复制代码
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
x = [1,2,3]
y = [4,5]
X,Y = np.meshgrid(x,y)
display(pd.DataFrame(X))
'''
	0	1	2
0	1	2	3
1	1	2	3
'''
display(pd.DataFrame(Y))
'''
	0	1	2
0	4	4   4
1	5	5	5

'''
# 组合
# 相交点
XY = np.c_[X.ravel(),Y.ravel()]
display(pd.DataFrame(XY))
'''
	0	1
0	1	4
1	2	4
2	3	4
3	1	5
4	2	5
5	3	5
'''
  • 理解:通过meshgrid方法,就是相当于把输入的x坐标和输入的y坐标组合在一起对应成网格点,然后把网格点对应x坐标和y坐标以网格点的形式返回。例如我们看到显示返回的x坐标的时候,每一列都是同一个数,返回y坐标中每一行都是同一个数。

2、np.ravel() :

  • 在 NumPy 中,你可以使用 np.ravel() 方法来将一个多维数组转换成一个一维数组。
python 复制代码
a = np.array(
    [[1,1,1],
     [2,2,2],
     [3,3,3]]
)
a.ravel() # array([1, 1, 1, 2, 2, 2, 3, 3, 3])

3、np.c_[a,b]:

  • numpy中的.c_方法把他们按照坐标的形式组合在一起。np.c_ 或 np.column_stack 将输入的数组以列为主导(左右组合)进行堆叠,生成一个新的数组。输入数组的每一行都会成为新数组的一列。这对于需要将多个一维数组组合成二维数组的情况非常有用。
python 复制代码
a = np.array(
    [[1,1,1],
     [2,2,2],
     [3,3,3]]
)
b = np.array(
    [[4,4,4],
     [5,5,5],
     [6,6,6]]
)
A = np.c_[a,b]
'''
array([[1, 1, 1, 4, 4, 4],
       [2, 2, 2, 5, 5, 5],
       [3, 3, 3, 6, 6, 6]])
'''

4、sklearn.datasets.make_blobs:

  • 这是一个Scikit-learn库中的函数,用于创建带有随机分隔的聚类数据集。
  • 示例:
python 复制代码
data,target = make_blobs()
'''
参数:
n_samples=100,样本数量,行数
n_features=2, 特征数量,列数
centers=None,中心点个数,默认3
cluster_std=1.0,聚集,表示每一堆点的聚集程度
center_box=(-10,10),表示中心的范围
'''
plt.scatter(data[:,0],data[:,1],c=target)

相关推荐
谷歌开发者1 分钟前
Web 开发指向标|开发者工具 AI 辅助功能的 5 大实践应用
前端·人工智能
kkai人工智能1 小时前
AI写作:从“废话”到“爆款”
开发语言·人工智能·ai·ai写作
づ安眠丶乐灬5 小时前
计算机视觉中的多视图几何 - 1
人工智能·vscode·计算机视觉
2503_928411565 小时前
项目中的一些问题(补充)
人工智能·python·tensorflow
MarkHD6 小时前
智能体在车联网中的应用 第1天 车联网完全导论:从核心定义到架构全景,构建你的知识坐标系
人工智能·架构
中科米堆6 小时前
塑料制品企业部署自动化三维扫描仪设备,解决注塑件变形问题-中科米堆CASAIM
人工智能
星图云6 小时前
从数据累积到精准解析:AI解译打造遥感数据高效利用新范式
人工智能·卫星遥感
飞哥数智坊6 小时前
AI 大厂的“护城河”,也会成为它们的束缚
人工智能·创业
BB_CC_DD7 小时前
超简单搭建AI去水印和图像修复算法lama-cleaner二
人工智能·深度学习