numpy的梯度函数np.gradient(f)

您所在的位置:网站首页 y=x的gradient怎么算 numpy的梯度函数np.gradient(f)

numpy的梯度函数np.gradient(f)

2024-06-06 19:22| 来源: 网络整理| 查看: 265

本文的主要内容是基于中国大学mooc(慕课)中的“Python数据分析与可视化”课程进行整理和总结。 np.gradient(f):用于计算数组f中元素的梯度,当f为多维时,返回每个维度的梯度。

a = np.random.randint(0,20,(5,)) a array([10, 0, 7, 0, 19]) np.gradient(a) array([-10. , -1.5, 0. , 6. , 19. ])

由梯度计算公式得到梯度计算结果-1.5=(7-10)/2,-10=(0-10)/1。 二维数组的梯度计算:

c = np.random.randint(0,50,(3,5)) c array([[25, 49, 14, 13, 20], [43, 6, 13, 15, 24], [ 9, 2, 7, 5, 36]]) np.gradient(c) [array([[ 18. , -43. , -1. , 2. , 4. ], [ -8. , -23.5, -3.5, -4. , 8. ], [-34. , -4. , -6. , -10. , 12. ]]), array([[ 24. , -5.5, -18. , 3. , 7. ], [-37. , -15. , 4.5, 5.5, 9. ], [ -7. , -1. , 1.5, 14.5, 31. ]])]

对于二维数组,任意一个元素的梯度存在两个方向,所以求得的梯度为两个数组对象,第一个数组表示最外层维度的梯度值,第二个数组表示第二层维度的梯度值。 对于n维数组,gradient函数会生成n个数组,每个数组代表元素在第n个维度的梯度变化值,梯度反应了元素的变化率,尤其是我们在进行图像,声音等数据处理,梯度有助于帮助我们发现图像和声音的边缘,在那些变化不是很平缓的地方,可以很容易的发现。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3