Python Numpy
(一)numpy.linspace
说明:
通过定义均匀间隔创建数值序列。
原型:
numpy.linspace( start, #序列的起始值。 stop, #序列的结束值,除非端点设置为 False。 num=50, #要生成的样本数。 默认值为 50。 endpoint=True, #如果为真,则后是闭。 否则,不包括最后一个点。 retstep=False, #如果为 True,则返回 (samples, step),其中 step 是样本之间的间距。 dtype=None, #输出数组的类型。 axis=0)#结果中用于存储样本的轴。默认情况下 (0),样本将沿着在开头插入的新轴。 使用 -1 在末尾获得一个轴。 #返回值: #在闭区间 [start, stop] 或半开区间 [start, stop) 中有 num 个等距样本(取决于端点是 True 还是 False)。 #仅在 retstep 为 True 时返回。样本之间的间距大小。
例子:
self.training_data = numpy.linspace(-math.pi, math.pi, training_size)
输出shape
a=numpy.array([3])
a[0]
3
a=numpy.linspace(-3, 3, 6)
a[0]
-3.0
(二)numpy.random.shuffle
说明:
对numpy的数组进行重新随机排序,如果是多维数组,按照第一维进行随机排序
原型:
random.shuffle( x)#要打乱顺序的数组、列表或可变序列。
例子:
numpy.random.shuffle(self.training_data)
(三)numpy.random.normal
说明:
从正态(高斯)分布中抽取随机样本。
原型:
random.normal( loc=0.0, #分布的均值(中心) scale=1.0, #分布的标准差(宽度) size=None)#输出值的维度。如果给定的维度为(m, n, k),那么就从分布中抽取m * n * k个样本。 #如果size为None(默认值)并且loc和scale均为标量,那么就会返回一个值。否则会返回np.broadcast(loc, scale).size个值 #返回值:从含参的正态分布中抽取的随机样本
例子:
self.bias = numpy.random.normal(scale=random_scale, size=(output_size, 1))
(四)numpy.zeros
说明:
返回给定形状和类型的新数组,其中元素的值为0。
np.zeros([13])==np.zeros(13)==np.zeros((13))
原型:
numpy.zeros( shape, #新数组的形状,例如 (2, 3) 或 2。 dtype=float, #数组所需的数据类型,例如 numpy.int8。 默认为 numpy.float64。 order='C', #是否在内存中以行优先(C 风格)或列优先(Fortran 风格)顺序存储多维数据。 *, like=None)#允许创建不是 NumPy 数组的数组的引用对象。
例子:
self.input = numpy.zeros((input_size, 1))
(五)numpy.array
说明:
作用:创建一个数组。
原型:
numpy.array( object, #公开数组接口的任何对象。如果对象是标量,则返回包含对象的 0 维数组。 dtype=None, #数组所需的数据类型。 *, copy=True, #如果为true(默认值),则复制对象。 order='K', #指定阵列的内存布局。 subok=False, #如果为True,则子类将被传递,否则返回的数组将被强制为基类数组(默认)。 ndmin=0, #指定结果数组应具有的最小维数。根据需要,将根据需要预先设置形状。 like=None) #返回值:满足要求的数组对象
例子:
a=numpy.array([[3]])
a[0][0]
3
(六)numpy.random.randint
说明:
函数的作用是,返回一个随机整型数,范围从低(包括)到高(不包括),即[low, high)。
原型:
random.randint( low, #生成的数值最低要大于等于low。 high=None, #如果使用这个值,则生成的数值在[low, high)区间。 size=None,#输出随机数的尺寸, dtype=int)#想要输出的格式。 #返回一个随机数或随机数数组
例子:
index = np.random.randint(0,64,50) #返回一个len=50,值在0-64的数组
(七)numpy.argmax
说明:
np.argmax是用于取得数组中每一行或者每一列的的最大值。常用于机器学习中获取分类结果、计算精确度等。
原型:
numpy.argmax( a, #输入数组。 axis=None, #默认情况下,索引位于展平数组中,否则沿着指定的轴。 out=None, #如果提供,结果将被插入到这个数组中。 它应该具有适当的形状和数据类型。 *, keepdims=<no value>)#如果将其设置为 True,则减少的轴将作为大小为 1 的维度保留在结果中。 #返回值:数组中的索引数组。
例子:
一个m×n×p维的矩阵,
axis为0,舍去m,返回一个 n×p 维的矩阵
axis为1,舍去n,返回一个 m×p 维的矩阵
axis为2,舍去p,返回一个 m×n 维的矩阵
two_dim_array = np.array([[1, 3, 5], [0, 4, 3]]) max_index_axis0 = np.argmax(two_dim_array, axis = 0) max_index_axis1 = np.argmax(two_dim_array, axis = 1) print(max_index_axis0) print(max_index_axis1)
[0 1 0]
[2 1]
(八)numpy.reshape
说明:
用于在不更改数据的情况下为数组赋予新形状。
原型:
numpy.reshape( a, #需要 reshape 的数组 newshape, #新形状应与原始形状兼容。如果是整数,则结果将是该长度的一维数组。一个形状尺寸可以为-1。在这种情况下,该值是根据数组的长度和其余维来推断的。 order=‘C’)#使用此索引顺序读取a的元素,并使用此索引顺序将元素放置到重新形成的数组中。
这里的负数是模糊控制,负数可以为任何数。比如 reshape(2,-1)
,固定两行,多少列系统根据元素数量自动计算好;同理,reshape(-2,2)
: 固定两列,行数自动计算好。若出现了无法整除的情况,系统会报错
例子:
>>> c=np.array([[2,3,4],[5,6,7]]) >>> c array([[2, 3, 4], [5, 6, 7]]) >>> c=c.reshape(3,2) >>> c array([[2, 3], [4, 5], [6, 7]])
分类:
课程 / 机器学习
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 我与微信审核的“相爱相杀”看个人小程序副业
· DeepSeek “源神”启动!「GitHub 热点速览」
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库