numpy中行向量与列向量
Numpy中的数组shape为(m,)说明它是一个一维数组,或者说是一个向量,不区分列向量还是行向量,在与矩阵进行矩阵乘法时,numpy会自动判断此时的一维数组应该取行向量还是列向量。
X = np.random.randn(4,3) # X.shape:(4, 3) t = np.array([2,3,4]) # t.shape:(3,),此时不区分行向量还是列向量 y = X.dot(t) # 计算矩阵与向量乘法时,会把t当做列向量来计算,此时结果仍然是一维数组(但我们知道,这个结果应该是列向量)
在numpy中,用二维矩阵而不是一维矩阵来表示行向量和列向量:
行向量的形状:(n, 1)
列向量的形状:(1, n)
X = np.random.randn(4,3) # X.shape:(4, 3) t = np.array([2,3,4]).reshape(3,1) # t.shape:(3,1),表示是列向量 y = X.dot(t) # y.shape:(4,1),表示结果也是列向量
计算线性方程组:
y = 4 + 2*x1 + 3*x2 + x3
X = np.random.randn(4,3) X_b = np.c_[np.ones((4,1)), X] #构造矩阵,增加x0=1 t = np.array([4,2,3,1]).reshape(4,1) y = X_b.dot(t)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】