人工智能数学基础: 18-Haar矩阵的Kronecker积构造
Haar矩阵的Kronecker积构造
还有另一种递归方法来构造维数为 2n2^n2n 的哈尔矩阵 WnW_nWn ,它可以更清楚地说明为什么 WnW_nWn 的列是成对正交的,以及为什么上述算法确实是正确的(似乎没有人能证明!)。
如果我们把 WnWnWn 分解成两个 2n×2n−12^n\times 2^{n−1}2n×2n−1 矩阵,那么第二个包含 WnW_nWn 最后 2n−12^{n−1}2n−1 列的矩阵具有非常简单的结构: 它由向量
(1,−1,0,⋯,0)⏟2n\underbrace{(1,-1,0,\cdots,0)}_{2^n} 2n(1,−1,0,⋯,0)
和2n−1−12^{n−1}−12n−1−1 的移动副本组成,如下所示,当 n=3n = 3n=3:
(1000−100001000−100001000−100001000−1)\begin{pmatrix} 1 & 0 & 0 & 0\\ -1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & -1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & -1 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & -1 \end{pmatrix} ⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎛1−1000000001−1000000001−1000000001−1⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎞
观察这个矩阵可以由单位矩阵 I2n−1I_{2^{n−1}}I2n−1 得到,在我们的例子中
I4=(1000010000100001),I_{4} = \begin{pmatrix} 1 & 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{pmatrix}, I4=⎝⎜⎜⎛1000010000100001⎠⎟⎟⎞,
通过将每个 111 替换为列向量
(1−1),\begin{pmatrix} 1\\ -1 \end{pmatrix}, (1−1),
和将每个 000 替换为向量
(00).\begin{pmatrix} 0\\ 0 \end{pmatrix}. (00).
形成 2n×2n−12^n\times 2^{n−1}2n×2n−1 矩阵.
WnW_nWn 的前半部分, 即由 WnW_nWn 的前 2n−12^{n−1}2n−1 列组成的矩阵, 可以通过将 Wn−1W_{n-1}Wn−1 每个 111 替换为列向量
(11)\begin{pmatrix}1 \\ 1\end{pmatrix} (11)
每个 −1-1−1 替换为列向量
(−1−1)\begin{pmatrix}-1 \\ -1\end{pmatrix} (−1−1)
每个 000 替换为列向量
(00)\begin{pmatrix}0 \\ 0\end{pmatrix} (00)
形成 2n×2n−12^n \times 2^{n-1}2n×2n−1 得到
例如 n=3n = 3n=3 时 W3W_3W3 的前半部分是矩阵
(1110111011−1011−101−1011−1011−10−11−10−1)\begin{pmatrix} 1 & 1 & 1 & 0 \\ 1 & 1 & 1 & 0 \\ 1 & 1 & -1 & 0 \\ 1 & 1 & -1 & 0 \\ 1 & -1 & 0 & 1 \\ 1 & -1 & 0 & 1 \\ 1 & -1 & 0 & -1 \\ 1 & -1 & 0 & -1 \end{pmatrix} ⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎛111111111111−1−1−1−111−1−10000000011−1−1⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎞
是从矩阵
W2=(111011−101−1011−10−1)W_2 = \begin{pmatrix} 1 & 1 & 1 & 0 \\ 1 & 1 & -1 & 0 \\ 1 & -1 & 0 & 1 \\ 1 & -1 & 0 & -1 \end{pmatrix} W2=⎝⎜⎜⎛111111−1−11−100001−1⎠⎟⎟⎞
用我们刚才描述的方法得到的。
这些矩阵操作可以使用一种称为 Kronecker\textbf{Kronecker}Kronecker 积 的矩阵上的乘积运算来方便地描述。
定义5.4 给定一个 m×nm \times nm×n 矩阵 A=(Aij)A=(A_{ij})A=(Aij) 和 p×qp \times qp×q 矩阵 B=(bij)B=(b_{ij})B=(bij) , AAA 和 BBB 的 KroneckerKroneckerKronecker 积(或 张量积) A⊗BA \otimes BA⊗B 是 mp×nqmp \times nqmp×nq 矩阵
A⊗B=(a11Ba12B⋯a1nBa21Ba22B⋯a2nB⋮⋮⋱⋮am1Bam2B⋯amnB).A \otimes B = \begin{pmatrix} a_{11}B & a_{12}B & \cdots & a_{1n}B \\ a_{21}B & a_{22}B & \cdots & a_{2n}B \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1}B & a_{m2}B & \cdots & a_{mn}B \end{pmatrix}. A⊗B=⎝⎜⎜⎜⎛a11Ba21B⋮am1Ba12Ba22B⋮am2B⋯⋯⋱⋯a1nBa2nB⋮amnB⎠⎟⎟⎟⎞.
可以证明 ⊗\otimes⊗ 是结合的
(A⊗B)(C⊗D)=AC⊗BD(A⊗B)=AT⊗BT,(A\otimes B)(C \otimes D) = AC \otimes BD \\ (A \otimes B) = A^{T} \otimes B^{T}, (A⊗B)(C⊗D)=AC⊗BD(A⊗B)=AT⊗BT,
只要 ACACAC 和 BDBDBD 定义良好。然后立即验证 WnW_nWn 由以下简洁的递归方程给出:
Wn=(Wn−1⊗(11)I2n−1⊗(1−1)),W_n = \begin{pmatrix}W_{n-1} \otimes \begin{pmatrix}1 \\ 1\end{pmatrix} & I_{2^{n-1}} \otimes \begin{pmatrix}1 \\ -1\end{pmatrix}\end{pmatrix}, Wn=(Wn−1⊗(11)I2n−1⊗(1−1)),
其中 W0=(1)W_0 = (1)W0=(1) 。如果我们设
B1=2(1001)=(2002)B_1 = 2\begin{pmatrix}1 & 0 \\ 0 & 1\end{pmatrix} = \begin{pmatrix}2 & 0 \\ 0 & 2\end{pmatrix} B1=2(1001)=(2002)
对 n≥1n \ge 1n≥1 ,
Bn+1=2(Bn00I2n),B_{n+1} = 2\begin{pmatrix}B_n & 0 \\ 0 & I_{2^n}\end{pmatrix}, Bn+1=2(Bn00I2n),
然后,不难使用克罗内克积公式来获得方程
WnTWN=Bn,∀n≥1W^T_nW_N = B_n, \forall n \ge 1 WnTWN=Bn,∀n≥1
的严格证明。
上面的等式为 WnW_nWn 的列是 成对正交 的这一事实提供了一个清晰的理由。
观察右边的块(大小为 2n×2n−12^n\times 2^{n−1}2n×2n−1 )可以清楚地看到,经过 n−1n−1n−1 步后,向量 ccc 的后半部分的细节 系数 是如何与部分重建向量的前半部分的项相加和减去的。
人工智能数学基础: 18-Haar矩阵的Kronecker积构造相关推荐
- 矩阵的Kronecker积的相关结论
矩阵的Kronecker积的相关结论 矩阵的Kronecker积 矩阵的Kronecker积的定义 矩阵的Kronecker积的性质 矩阵的拉直 矩阵的拉直的定义 矩阵的拉直的性质 矩阵的方程 矩阵的 ...
- 矩阵的Kronecker积、Khatri-Rao积、Hadamard积
1.矩阵的Kronecker积 Kronecker积也称为克罗内克积,是任意大小矩阵的运算,使用符号其表示为:若A为大小m*n的矩阵,B为大小p*q的矩阵,则A与B的克罗内克积是一个大小为mp*nq的 ...
- Hadamard矩阵和Kronecker积
文章目录 Hadamard矩阵 性质 Kronecker积 性质 关于矩阵和积的交叉结论 Hadamard矩阵 设 H H H是实数域上的
- [矩阵论] Unit 6. 矩阵的 Kronecker 积与 Hadamard 积 - 知识点整理
注: 以下内容均由个人整理, 不保证完全准确, 如有纰漏, 欢迎交流讨论 参考: 杨明, 刘先忠. 矩阵论(第二版)[M]. 武汉: 华中科技大学出版社, 2005 6 矩阵的 Kronecker 积 ...
- 学习笔记-Hadamard矩阵的Kronecker积
Hadamard门的矩阵表示为: 接下来是两个量子比特经过H门: 得出: 随着n的增大,可以得出: 每个基态都有相同的概率振幅
- 1.4 Kronecker积
文章目录 定义 举例 Python程序 定义 矩阵的乘法必须要求左边矩阵的列和右边矩阵的行相等.Kronecker积则没有这个限制,简单地说Kronecker积是把左边矩阵的每一项都乘以右边的矩阵 ...
- 代数基础 | Kronecker积
代数基础 | Kronecker积 Kronecker积在张量计算中非常常见,是衔接矩阵计算和张量计算的重要桥梁.刚开始接触张量计算的读者可能会被Kronecker积的名称或是符号唬住,但实际上这是完 ...
- 人工智能数学基础-线性代数4:矩阵及矩阵运算
☞ ░ 老猿Python博文目录░ 本节用到了行列式的相关知识,而在行列式中用到了矩阵知识,但总体来说先介绍矩阵再介绍行列式更合适一些,行列式的知识大家只需要知道一个矩阵A对应的行列式记为符号|A|, ...
- 人工智能数学基础-线性代数2:向量的点积、內积、数量积和外积
☞ ░ 老猿Python博文目录░ 一.内积 1.1.定义 内积(inner product)又称数量积( scalar product).点积(dot product),是指接受在实数R上的两个向量 ...
最新文章
- codeforces 909C. Python Indentation
- java基本数据类型所占长度_java基本数据类型长度详解
- js实现ajax的post请求步骤
- 计算机视觉的测试数据集,自动驾驶数据集整理
- php大写数字转换,php数字如何转换大写
- QQHelper:QQ大家来找茬 辅助工具 外挂
- 适合在企业网站展示企业发展历程的时间轴滑动特效源码
- 运用数学软件matlab求无穷积分,matlab积分的计算及其简单应用论文.doc
- 什么是图片的DPI?如何修改图片DPI值?
- 荣耀20青春版曝光用屏幕指纹,网友:不是侧边指纹更快吗?
- 学生DW静态网页设计——html+css+javascript+jquery+bootstarp马尔代夫旅游响应式网站
- 如果时光可以倒流,会不会有不一样的故事
- 2021年自动化预推免面试经历记录与总结--持续更新
- 关键应用在超融合环境下的实践
- 电子厂计算机常用英语,电子厂常用英语词汇
- HTML屏蔽F12、右键、开发者工具、审查元素
- Bill Joy (zz.IS2120)
- 【嵌入式基础】串口通信
- IIS的应用程序池,程序异常停用,可能的原因
- java彩票源码开源带界面,带系统
热门文章
- HCIE - Routing Switching v3.0 Outline
- centos7 后端部署文档
- uniapp树组件优化 树节点设置单选,单击单选框可以选中多个 偶尔根节点点击后会隐藏整棵树
- 通过netsh一键连接指定WIFI
- Android 9.0 Toast源码改变引发的问题
- 稳压二极管、肖特基二极管、静电保护二极管、TVS管
- 服务器您的网络已被劫持请立即修复,网页被劫持并跳转到发布网络的修复方法...
- html点击出现对勾,css伪类右下角点击出现对号角标表示选中的代码
- gitlab项目的备份与迁移
- 当Ubuntu安装软件碰到找不到安装包时E: Package ‘unzip‘ has no installation candidate