矩阵相乘遇到:operands could not be broadcast together with shapes (163,5652) (5652,1)


先描述一下:

  • train_x.T 是一个(163,5662) 的ndarray
  • Lost 是一个(5662, 1)的ndarray

这里我大概明白哪里错了,首先得明白(乘以*)和(矩阵相乘dot)

使用测试demo

a = np.array([[1,2],[3,4]])

1. 直接使用 * 的结果

a*a就是说直接把两个二维矩阵的每个元素进行对应相乘。

要求:必须是两个维度完全相同的ndarray
比如:都是3行两列的这种才能直接使用 * 操作符
这也是为什么我自己出现上面的错误的原因了

============================================================================

2. 使用numpy.dot(a,b)

numpy.dot(a,b)才是真正意义上的矩阵相乘
先看执行结果:

numpy.dot(a,b)


打个比方:结果矩阵的第一行第一个元素怎么求的呢?
就是第一个矩阵的第一行所有的元素分别乘以第二个矩阵第一列的所有元素求和
即1×1+2×3 = 7,刚好就是我们结果显示的矩阵的第一行第一个元素。

所以有些时候虽然思路是对的,但是使用的方法不对,那么带来的结果肯定是不一样的。
仅供记录学习错误,有什么大问题,希望大家留言指教,谢谢大家。
共勉!!!

operands could not be broadcast together with shapes解决方案相关推荐

  1. ValueError: operands could not be broadcast together with shapes解决

    ValueError: operands could not be broadcast together with shapes (1,2) (1,3) import numpy as np a=np ...

  2. 【python问题系列--4】ValueError: operands could not be broadcast together with shapes (100,3) (3,1)...

    背景:dataMatrix是(100,3)的列表,labelMat是(1,100)的列表,weights是(3,1)的数组,属性如下代码所示: >>> import types &g ...

  3. ValueError: operands could not be broadcast together with shapes (320,320,4) (3,) (320,320,4)

    problem: ValueError: operands could not be broadcast together with shapes (320,320,4) (3,) (320,320, ...

  4. 报错ValueError: operands could not be broadcast together with shapes (448,448) with (224,224)

    这个错误发生原因是因为图片的尺寸与weight 不匹配,不能做乘积,所以需要改变图片尺寸. 使用如下代码:img = cv2.resize(img, (448, 448)) 加在img = cv2.r ...

  5. operands could not be broadcast together with remapped shapes

    operands could not be broadcast together with remapped shapes 报错代码: point_num = 12try:labels=np.pad( ...

  6. einsum() operands do not broadcast with remapped shapes [original->remapped]报错解决方法

    RuntimeError: einsum() operands do not broadcast with remapped shapes [original->remapped]: [4, 6 ...

  7. 成功解决IndexError: shape mismatch: indexing arrays could not be broadcast together with shapes (100,)

    成功解决IndexError: shape mismatch: indexing arrays could not be broadcast together with shapes (100,) 目 ...

  8. 【Python学习记录】Numpy广播机制(broadcast)

    ✨ 博客主页:小小马车夫的主页 ✨ 所属专栏:Python学习记录 文章目录 一.什么是Numpy广播机制 二.Numpy广播应用 三.Numpy广播规则 一.什么是Numpy广播机制 在Numpy. ...

  9. Numpy 广播机制(两个不同维度对象进行数学运算)

    1. 数组相加 一个 2*5 维的数组对象和一个 1 维的数组对象进行相加,结果会怎样? In [1]: import numpy as npIn [2]: a = np.arange(10).res ...

  10. Numpy入门教程:04. 数学函数

    背景 什么是 NumPy 呢? NumPy 这个词来源于两个单词 – Numerical和Python.其是一个功能强大的 Python 库,可以帮助程序员轻松地进行数值计算,通常应用于以下场景: 执 ...

最新文章

  1. JavaScript面向对象(一)——JS OOP基础与JS 中This指向详解
  2. Java笔记:与系统交互、系统相关的类,Object类
  3. Hadoop快速入门——第一章、认识Hadoop
  4. 数据分析之numpy
  5. Android 按钮选择状态,如何修改Android中的默认按钮状态而不影响按下和选择的状态?...
  6. 曾经的 Java IDE 王者 Eclipse 真的没落了?21 款插件让它强大起来!
  7. Django之Model组件
  8. SaaS产品服务进行网络推广的必要性
  9. java对机房有什么用_使用云终端建设的云机房相比传统机房有什么区别
  10. Chrome 崩溃 相关
  11. 如何判断自己的Windows系统是否为盗版系统?
  12. 结巴分词1--结巴分词系统介绍
  13. INA217构成的专业级微型话筒(麦克风)前置放大典型电路图
  14. c++练手项目:英语单词拼写测试程序
  15. 开视界 创未来丨酷雷曼第十期合作商交流会圆满举办
  16. 数组的 find() 和 findIndex() 方法
  17. 字符数组与字符串的转换
  18. c 爬虫怎么去掉html,爬虫数据清洗之html标签的清洗
  19. ​软件测试行业不行,菜是原罪,三年自动化测试就这水平?还不如回去喂猪...
  20. wacom固件更新错误123,数位板驱动更新不了

热门文章

  1. 《OpenGL编程指南第7版》3视图
  2. 优化移动网站的9大窍门(转)
  3. java语言难度最大的地方_学习难度最高的五大编程语言
  4. 结合聚酞菁钴催化材料和碳纳米管载体的有机-无机相结合的复合材料
  5. 一个vue的日历组件ele-calendar
  6. 显微镜下的大明——第一个故事
  7. BAT批处理提取文件内容替换指定文件内容
  8. appdata文件太大了可以删除吗?
  9. 如何将excel中的多列数据进行转置
  10. C#开发串口调试助手的详细教程