Python中如何实现矩阵或者数组相减-创新互联

这篇文章主要介绍了Python中如何实现矩阵或者数组相减,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

建网站原本是网站策划师、网络程序员、网页设计师等,应用各种网络程序开发技术和网页设计技术配合操作的协同工作。创新互联公司专业提供成都网站建设、成都网站制作,网页设计,网站制作(企业站、响应式网站、电商门户网站)等服务,从网站深度策划、搜索引擎友好度优化到用户体验的提升,我们力求做到极致!

定义了一个计算损失的函数:

def error(yhat,label):
 yhat = np.array(yhat)
 label = np.array(label)
 error_sum = ((yhat - label)**2).sum()
 return error_sum

主要出现问题的是 yhat - label 部分,要强调的是一定要保证两者维度是相同的!这点很重要,否则就会按照python的广播机制进行运算,举个例子:

a = np.array([1,2,3])
a0 = np.array([[1],[2],[3]])
b = np.array([2,3,5,])
print(b-a)
print(b-a0)

这里a的维度是(3,),因为是由列表转化成的数组(当然不是很推荐这种维度,因为很容易犯错),a0的维度是(3,1),b的维度是(3,),a与b的维度相同,在计算b-a的时候,结果显而易见:

Python中如何实现矩阵或者数组相减

b - a0 的结果:

Python中如何实现矩阵或者数组相减

产生这种结果的原因是因为由于维度不同,在计算的时候将b变为了与a0同样的3行的数组,变化后b的维度变为了(3,3),等同于如下的计算:

b = np.array([[2,3,5],
    [2,3,5],
    [2,3,5]])
a0 = np.array([[1],
    [2],
    [3]])
b - a0

结果仍然为:

Python中如何实现矩阵或者数组相减

感谢你能够认真阅读完这篇文章,希望小编分享的“Python中如何实现矩阵或者数组相减”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


网站栏目:Python中如何实现矩阵或者数组相减-创新互联
当前链接:http://ptjierui.cn/article/iigop.html

其他资讯

Copyright © 2024 青羊区广皓图文设计工作室(个体工商户)(郫都区郫县站) All Rights Reserved 蜀ICP备19037934号
友情链接: 营销型网站建设 网站建设改版 成都网站建设 成都网站建设公司 成都网站建设 企业网站设计 H5网站制作 网站设计制作报价 成都网站建设 成都商城网站建设 成都网站制作 成都网站设计 成都网站建设 公司网站建设 LED网站设计方案 app网站建设 高端定制网站设计 成都网站建设 成都网站制作 网站建设推广 营销型网站建设 网站设计