对Python 中矩阵或者数组相减的法则详解


Posted in Python onAugust 26, 2019

最近在做编程练习,发现有些结果的值与答案相差较大,通过分析比较得出结论,大概过程如下:

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

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 相关文章推荐
Python 随机生成中文验证码的实例代码
Mar 20 Python
python贪吃蛇游戏代码
Apr 18 Python
python实现海螺图片的方法示例
May 12 Python
Python语言进阶知识点总结
May 28 Python
Python使用正则表达式分割字符串的实现方法
Jul 16 Python
Python字典中的值为列表或字典的构造实例
Dec 16 Python
什么是Python中的匿名函数
Jun 02 Python
Python直接赋值及深浅拷贝原理详解
Sep 05 Python
Python列表推导式实现代码实例
Sep 09 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
Sep 23 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
Dec 07 Python
jupyter notebook远程访问不了的问题解决方法
Jan 11 Python
Numpy 中的矩阵求逆实例
Aug 26 #Python
利用python-docx模块写批量生日邀请函
Aug 26 #Python
在python Numpy中求向量和矩阵的范数实例
Aug 26 #Python
Python 如何提高元组的可读性
Aug 26 #Python
Python使用python-docx读写word文档
Aug 26 #Python
Python Subprocess模块原理及实例
Aug 26 #Python
python自动循环定时开关机(非重启)测试
Aug 26 #Python
You might like
PHP内置的Math函数效率测试
2014/12/01 PHP
php实现通用的从数据库表读取数据到数组的函数实例
2015/03/21 PHP
phpMyAdmin安装并配置允许空密码登录
2015/07/04 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
2017/08/29 PHP
PHP实现UTF8二进制及明文字符串的转化功能示例
2017/11/20 PHP
PHP中散列密码的安全性分析
2019/07/26 PHP
javascript YUI 读码日记之 YAHOO.util.Dom - Part.4
2008/03/22 Javascript
jquery中常用的SET和GET
2009/01/13 Javascript
使用indexOf等在JavaScript的数组中进行元素查找和替换
2013/09/18 Javascript
利用js实现在浏览器状态栏显示访问者在本页停留的时间
2013/12/29 Javascript
JavaScript Function函数类型介绍
2015/04/08 Javascript
关于cookie的初识和运用(js和jq)
2016/04/07 Javascript
javascript容错处理代码(屏蔽js错误)
2017/01/20 Javascript
JavaScript 基础表单验证示例(纯Js实现)
2017/07/20 Javascript
vue移动端html5页面根据屏幕适配的四种解决方法
2018/10/19 Javascript
详解React 服务端渲染方案完美的解决方案
2018/12/14 Javascript
微信小程序image图片加载完成监听
2019/08/31 Javascript
python中print的不换行即时输出的快速解决方法
2016/07/20 Python
python爬取各类文档方法归类汇总
2018/03/22 Python
Pycharm导入Python包,模块的图文教程
2018/06/13 Python
python之mock模块基本使用方法详解
2019/06/27 Python
python实现在函数图像上添加文字和标注的方法
2019/07/08 Python
Python sql注入 过滤字符串的非法字符实例
2020/04/03 Python
html5指南-5.使用web storage存储键值对的数据
2013/01/07 HTML / CSS
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
介绍一下SQL Server里面的索引视图
2016/07/31 面试题
请编程遍历页面上所有 TextBox 控件并给它赋值为 string.Empty
2015/12/03 面试题
养殖行业的创业计划书
2014/01/05 职场文书
公司委托书怎么写
2014/08/02 职场文书
医德医风自我评价
2014/09/19 职场文书
小学教师年度个人总结
2015/02/05 职场文书
神龙架导游词
2015/02/11 职场文书
2015年百日安全活动总结
2015/03/26 职场文书
python字典进行运算原理及实例分享
2021/08/02 Python
分享3个非常实用的 Python 模块
2022/03/03 Python
一文搞懂PHP中的抽象类和接口
2022/05/25 PHP