在NISQ小型计算机上执行大型并行量子计算的可能性

简介

Steve White提出了密度矩阵重整化群(DMRG)的基本思想,即纠缠是一种有价值的资源,可以用来精确或近似地描述大量子系统。后来,这一思想被理解为优化矩阵积状态(MPS)的算法,支持将张量网络用作波函数的变分参数化,其中纠缠是一个量化的资源。这种方法允许将计算资源集中在希尔伯特空间的特定区域,并提供了一种有效而通用的方式来模拟量子系统。此方法还为在有噪声的中等规模量子(NISQ)计算机模拟中分配纠缠资源提供了一个有效的框架。
目前,一些公司如谷歌、Rigetti和IBM的量子计算机采用可控的局部双量子位门,实现了有限深度的量子电路。创新之处在于将这些电路用作变分波函数,随机或通过相位估计来优化它们,并通过精确trotter化或变分进化算子来演化它们。然而,可用的NISQ设备受到栅极保真度的限制,进而限制了可用的纠缠资源。
由于有限深度的量子电路可以等效地表示为张量网络,因此张量网络提供了一个方便的框架,可以将纠缠资源分布到希尔伯特空间的有用区域,并有效地利用这一相对稀缺的资源。这种在NISQ设备上实现的张量网络被称为量子张量网络。这一框架有几个优点,包括适用于更广泛的经典和量子系统模拟,以及对于实现量子电路来说是一种自然的方法。此外,张量网络计算中的规范化步骤在明确的酉实现中通常是不必要的。
这一研究证明了量子张量网络的可行性,并展示了如何利用它来并行化量子模拟,尤其是在相对大型的系统中。它将量子系统分为弱纠缠的子元素,可以并行模拟,从而有效地减少了计算资源的需求。作者还提供了用于无限、平移不变的量子自旋链的Cirq和Qiskit代码示例,这些代码可用于将iMPS算法转化为量子电路机器。这些代码示例展示了一种简单的电路,用于表示无限量子态,并进行特定哈密顿量的优化和实时演化。

结果

跨弱纠缠切口的并行量子模拟

为了在小型NISQ机器上并行化我们的模拟,我们首先确定系统的分区,其中一个分区对另一个分区的影响可以通过少量信息来总结。这是通过在切口上进行施密特分解来实现的: ∣ ψ ⟩ = Σ α = 1 D λ α ∣ ϕ L α ⟩ ∣ ϕ R α ⟩ |\psi\rangle=Σ_{α=1}^Dλ^α|\phi_L^α\rangle|\phi_R^α\rangle ψ=Σα=1DλαϕLαϕRα;其中,在切点的左边是一个标准正交的状态集合,在切点的右边也是相同的。 λ α λ^α λα称为施密特系数,D称为施密特阶或键序,表示就纠缠基数,D越大整个系统的纠缠复杂度越高,处理越耗时。保留 λ α λ^α λα仅高于某个阈值提供了一种压缩量子态表示的方法;通过沿着自旋链依次应用该方法,可以得到MPS结构。
在这里插入图片描述

如果在这样一个切口的右侧进行观察,则左边的量子态对观察的影响可以用与施密特系数相对应的D个变量来总结。同样的效果可以通过长度为log2D的自旋链上的有效状态来实现(见图1),可以通过SU(D2)酉VL在量子电路上进行参数化。这编码了施密特系数 λ α λ^α λα和标准正交态 ∣ ϕ L α ⟩ |\phi_L^α\rangle ϕLα。后者对右边的可观测值没有贡献,因此原则上,VL可以只用D个变分参数来参数化。精确的数值必须通过解决系统左边的量子力学问题来确定。同样地,对于切口左侧的观察,右侧的效果可以用一个统一的VR来总结。这为并行量子模拟提供了一个处方。量子波函数的计算可以在不同的量子电路上进行,也可以在同一电路上依次进行。左分区对右分区的影响,反之亦然——通过环境单元VL和VR——迭代到一致性。在迭代的每个阶段,必须执行测量以确定VL/R。切口的小Schmidt秩降低了这个过程的计算复杂度——如果我们要做全状态断层扫描,可以降低到O(poly (D)),但如果使用更复杂的方法,甚至可以降低到O(log(D)),如下节中的示例所示。在许多物理情况下,这种并行化可能是有用的。例如,具有局部化学活性的大型有机分子-这种活性可能被分子周围的部分调节或调整,并且这些效应的相互作用可以并行计算。在下文中,受iMPS张量网络的启发,我们给出了体现这些思想的量子电路。

量子张量网络并行仿真

平动不变MPS给出了平动不变自旋1/2状态的近似表示为:
∣ ψ ⟩ = Σ i , σ Π n . . . A i n − 1 , i n σ n − 1 A i n , i n + 1 σ n . . . ∣ . . . σ n − 1 , σ n . . . |\psi\rangle=\Sigma_{i,σ}\Pi_n...A^{σ_{n-1}}_{i_{n-1},i_n}A^{σ_{n}}_{i_{n},i_{n+1}}...|...σ_{n-1},σ_n... ψ=Σi,σΠn...Ain1,inσn1Ain,in+1σn...∣...σn1,σn...
其中n标记晶格位置, σ n σ_n σn标记第n个位置的自旋1/2基态,in是从1到键阶D的辅助张量指标,张量 A i j σ A^σ_{ij} Aijσ在每个位置上都是相同的,反映了平移不变性。这些状态可以映射到量子电路中,方法一节中描述了采用等长形式的MPS张量,并将它们与电路酉元相识别。为了在量子模拟中对这些状态进行经典操作,已经开发了多种技术。这里我们只讨论量子电路的实现。补充材料给出了经典mps与其量子电路实现之间联系的详细总结。
在这里插入图片描述

代表状态:平移不变的键阶为D = 2N的自旋1/ 2mps状态可以用图2a所示的无限电路表示。在这种状态下,局部算子的期望值可以通过图2b所示的有限电路来评估。将无限回路缩到算子左边的效果是微不足道的,由于U∈SU(2D)的唯一性(它自动编码相关MPS张量的左正则形式)。向右的收缩由张量V∈SU(D2)描述,它编码了nlog 2D自旋的有效状态以及它们与左侧剩余系统的纠缠。这个单位由图2c所示的电路自洽地从U确定。这种形式的MPS可以通过从左到右的施密特分解序列从任何状态构造。这保证了等距MPS表示的存在性和它的量子电路实现。在IBM量子电路上演示了这种电路在D = 2时的操作,其中U和V的解析形式都是已知的,通过具有拓扑相变的模型的相图。一般情况下,V≡V(U)是未知的,必须根据图2c求解。
在这里插入图片描述

优化状态:通过最小化能量期望值,我们可以找到平动不变哈密顿算子的基态和相应的能量密度。该算法反映了变分量子特征求解器。局部哈密顿量的期望是通过测量物理量子位上相应的泡利弦得到的(见图2b)。然后,结果可以作为ansatz参数的函数最小化。更新必须与环境V的更新交织在一起,这样我们才能在有效的平移不变状态上进行优化。
评价状态:也许这个实现最引人注目的特性是可以轻松地实现时间演化。图3 a所示的简单电路返回一元U‘=U(t+dt),它将U(t)编码的状态更新为随哈密顿h演化的时间t + dt。该电路关于U0的第一个变化返回由Haegeman等人首次提出的iMPS的时变分原理。等效使用状态的定规到规范形式的自动编码,以及切空间及其定规的编码。正如上面确定最佳基态近似时一样,更新涉及两个嵌套循环;一个找到更新的U0一个找到环境张量L=L(U,U’),R=R(U,U’)。这两个在这种情况下都是必需的,因为电路对应于两个不同状态的重叠,而不是在给定状态下采取的期望。与图2相比,我们在图3中使用了一种稍微不同的方式来表示这些环境。
在这里插入图片描述
量子优势: 人们自然会问,以这种方式使用量子电路是否有任何量子优势。操纵iMPS的算法(iDMRG, TDVP等)是典型的高效算法——它们的复杂度为O(D3)。那么,在量子电路上实现改进的空间在哪里?量子优势来自于对键维D的依赖可能呈指数级降低。
在量子电路中,必须将多量子位一元元编译成可用的门集。具有纠缠态S的平动不变态可以用键维D~ exp S的矩阵积态来捕获。这要求电路深度为O (exp S)。任意U ∈ SU(2 exp S)单位实现该iMPS需要O(exp S) ~ O(D)个量子门。然而,具有纠缠S的非平凡酉元子集可以用深度为O(exp S) ~O(log D)的电路来实现,与经典实现相比,它具有指数级的加速。
这将压缩时间从典型的经典实现的O(D3)减少到量子情况下的O(log D)。虽然这些浅层电路存在,但问题仍然是它们是否具有我们感兴趣的状态的高保真度。键阶为D=4的例子如图2d所示,有之前的研究确定了浅层量子电路MPS的一个子集,它具有由哈密顿进化产生的状态的高保真度(D=4时最高)。
这证明了u的量子优势。我们还必须考虑环境V(或R和L)是否具有高保真的浅电路表示。先验地不能保证给定一个浅回路U,满足图2不动点方程的V,或满足图3不动点方程的R和L本身是浅的。然而,对此有一个严格的论证。我们从构造一个初始的浅层近似开始。当优化能量时,如图2所示,我们可以利用将减少的密度矩阵对角化到右边并选择相应的V的能力。对此,浅电路近似允许我们精确地设置logD施密特系数,其余部分位于它们之间的平滑插值上。在时间演化的情况下,混合环境R和L不一定同时对角化(尽管非对角元素是dt2阶的),并且允许这一点的更丰富(尽管仍然很浅)的变分参数化是必要的。在任何一种情况下,对于量子位和电路深度的线性成本,可以通过应用传输矩阵的线性次数,即通过使用功率方法(参见补充材料了解更多细节),以指数方式改善环境的浅层近似值。这简单地对应于在图3a的电路中心插入传输矩阵的进一步副本。这些参数为我们的算法建立了渐近量子优势。在实践中,我们发现最初的浅层近似被证明是非常准确的,这些修正是不必要的。

数值结果

我们编写了Cirq和Qiskit代码来实现图2和图3所示的量子电路。在谷歌的Cirq模拟器上仿真运行该代码的结果如图4所示。我们选择了横向场Ising模型的优化和时间演化,以及PXP哈密顿量的庞加莱剖面作为例证。横场Ising模型的性质已被很好地理解。洛施密特回波(时变波函数与初始波函数的保真度)揭示了一个动态相变,这为我们的模拟提供了一个重要的测试。我们的主要发现如下:(i)当没有门错误和一元U, V, L和R的完整表示时,我们的代码使用时间相关变分原理精确地再现了最佳iMPS及其时间演变。(ii)一元的因式分解降低了结果的保真度。随着分析的可表达性深度的增加,这些都得到了系统的改进。单单位的全参数化完全再现了经典MPS结果。(iii)从表示状态到优化状态,再到时间演化状态,对电路的深度和宽度提出了越来越高的要求。准确的结果需要越来越深的单位分解,并受到越来越不利的门误差的影响。
在这里插入图片描述
在这里插入图片描述
优化: 横向场Ising模型优化的仿真结果如图4所示。使用图4a中的方差对酉U进行分解。该结果与低深度电路的键合尺寸2 MPS的精确结果一致。这种分解比SU(4)的完全分解深度低得多。对于这个问题,状态单位的其他分解是可能的。通过识别横向场Ising模型的基态是由实张量组成(详见补充材料),可以使用较低深度的分析。

时间演变:使用酉矩阵的精确表示,我们准确地再现了预期的TDVP方程。我们证明了状态酉元的浅层分解能够有效地捕获洛施密特回波中的动态相变。制备了g = 1的横向场Ising模型的基态。这种状态在相同的哈密顿量下演化,但g = 0.2。在轨迹的每一步,记录当前状态与原始状态的重叠。图4c显示了整个轨迹的重叠对数。低深度状态能够准确地表示用于产生庞加莱图的状态,庞加莱图用于研究PXP模型中的慢量子热化。用图5所示的双参数电路定义状态。量子TDVP代码能够重建两个位点平动不变MPS状态的庞加莱映射。在这种情况下,有可能通过识别能量偏离已知值超过某个固定阈值的点来丢弃错误点。这是一种错误缓解形式,在使用量子TDVP算法时可能适用于其他问题,并可能有助于减轻NISQ设备噪声的影响。庞加莱图中较大的结构被误差扭曲,但在存在积分和随机优化误差时仍然可见。在补充材料中概述了噪声对量子TDVP算法的影响。

在这里插入图片描述

讨论

我们提出了一种通过将张量网络算法转换为量子电路来执行量子模拟的方法。我们的方法允许在小型NISQ计算机上对大型系统进行并行量子模拟。我们已经在一维平动不变自旋链中证明了这一点。MPS算法的转换自然地将矩阵乘积状态和切空间的基本特征编码到它们形成的变分流形中。在演示这种电路的操作时,我们触及了一些直接的问题,包括张量网络状态的浅层电路限制的表达性,它们对模拟的影响以及有限门保真度的影响。这些值得进一步系统研究。
我们的算法很容易扩展到非齐次一维系统和高维系统将一维状态包装到高维系统的方法。研究mps的其他规范限制(如现代经典时变分原理码的混合规范)也可以在量子电路中实现,这将是有趣的。更直接地描述高维系统的MPS推广也是可用的。例如,投影纠缠对态(PEPS)给出了二维泛化。要在量子电路上实现这些状态,它们必须由等距张量形成。直到最近,PEPS还没有合适的规范形式。其它文献提出的PEPS的等距版本显示出很大的希望,并且应该可以在适当连接的量子电路上实现。其他张量网络,如多尺度纠缠重整化分析(MERA)自然是基于酉算子的,可以在量子电路上实现。事实上,MERA已经被用于小型量子电路的图像分类和量子卷积神经网络
张量网络框架也提供了一个方便的途径来利用潜在的量子优势在模拟。一维矩阵积状态函数是有效可缩并的。计算局部算子期望所花费的时间与系统的长度成正比。量子实现的优势在于,这种缩放的前因子可能呈指数级下降。虽然经典张量网络可以有效地表示高维量子态的重要相关性,但其性质可能不是有效可收缩的。
PEPS状态的收缩可证明为# P-hard。然而,这些状态的物理相关子集可以有效地可收缩,并且它们的等距表示(其他文献的摩西移动可以在没有近似的情况下进行的等距pep确实是准局部和有限可收缩的)可以从组成酉元的浅表示中获得量子优势。量子算法的优势和成本之间的平衡可能很微妙;从经典理论中提取张量的元素是很容易的,但量子力学需要对电路状态进行断层扫描,这在测量自旋的数量上是指数级缓慢的。这可能是混合算法的瓶颈。使用张量网络框架在希尔伯特空间上适当地分配纠缠资源可以减轻这些成本。这项工作证明了将张量网络算法转换为量子电路的实用性,并为量子模拟开辟了一个尚未探索的方向。使用张量网络的经典量子系统模拟的所有进展都可能以这种方式转化。此外,它还提供了对经典算法的补充观点,表明在纯统一实现中相关的好处。

方法论

在这里插入图片描述

量子矩阵积态

我们使用的从MPS到量子电路的映射自动体现了许多变分流形及其切空间。这种映射到量子电路的简便性表明,它是MPS的天然家园。图2,3所示电路的基本组成部分是MPS张量。一个键阶为D,局部希尔伯特空间维数为D的张量用SU(dD)
矩阵表示: A i , j σ = U ( 1 ⊗ j ) , ( σ ⊗ i ) A^{σ}_{i,j}=U_{(1 \otimes j),(σ \otimes i)} Ai,jσ=U(1j),(σi)

如图6所示。这种转换自动编码MPS张量的左正则形式 Σ σ ( A σ ) i , j † , A j , k σ = δ i k \Sigma_σ(A^{σ})^\dag_{i,j} ,A^{σ}_{j,k}=δ_{ik} Σσ(Aσ)i,j,Aj,kσ=δik。这直接来自于u的酉性。MPS算法的经典实现包括在使用奇异值分解的算法的每一步之后将张量返回到这种形式——在量子算法中,这种操作是不需要的。
此外,酉元的剩余元素将切空间结构编码为MPS扩展的状态子流形。这些对于构造预测的哈密顿动力学是很重要的。 V ( σ ⊗ δ ≠ 1 ) , ( i ⊗ j ) = U ( δ ≠ 1 ) , ( σ ⊗ i ) V_{(σ\otimes δ \neq 1),(i \otimes j)}=U_{(δ\neq1),(σ \otimes i)} V(σδ=1),(ij)=U(δ=1),(σi)并自动满足零或切规固定条件 Σ σ ( A σ ) i , j † , V j k σ , δ ≠ 1 = 0 \Sigma_σ(A^{σ})^\dag_{i,j} ,V^{σ,δ \neq 1}_{jk}=0 Σσ(Aσ)i,j,Vjkσ,δ=1=0。这种结构负责图3所示的时变分原理的非常紧凑的量子实现,它避免了在每一步计算切空间结构的需要。

量子时变分原理

矩阵积态时变分原理的经典实现及其量子版本的等价性通过采用以下形式的更新单位的参数化可以得出:
U ′ = U e x p ( 0 X † X 0 ) U'=Uexp\begin{pmatrix} 0 & X^\dag \\ X & 0 \end{pmatrix} U=Uexp(0XX0)
取图3a中电路与状态 ∣ 000... ⟩ |000...\rangle ∣000...的显式重叠,然后计算其对X的导数(时变分原理可回复)。将张量X与文献中的张量进行比较,用环境张量的平方根重新缩放。最快的方法是将电路扩展到张量X的二次阶以及X和dt的双线性阶,然后再对X求导。

文献方法: Haegeman, J. et al. Time-dependent variational principle for quantum lattices.
Phys. Rev. Lett. 107, 070601 (2011).

优化量子电路

我们的算法需要优化图2b和图3a中可观测值的期望,以及图2b和图3b、c中不动点方程的解,以确定环境和混合环境。在所有情况下,优化都是随机进行的。我们使用Rotosolve算法来加速我们的随机搜索。这利用了这样一个事实,即参数化量子电路的期望对任何特定参数的依赖是正弦的。因此,只需进行三次测量,就可以使该参数达到局部最优值。当电路的几个元件依赖于相同的参数时,扩展允许计算变化。

图解

图1:

一个量子态的张量网络,在一定的分区上弱纠缠。这种弱纠缠允许对系统的两个分区进行并行模拟。可以通过将左侧的状态替换为具有更少自旋的状态(由跨越切口的纠缠决定的数)来实现位于分区右侧的算子的期望。在这个较小的左侧表示中,相关性的数值由完整左侧系统中的量子效应决定,可以并行计算并迭代到一致性。

图2:

a表示平动不变态的无限深度和宽度量子电路。U∈SU(dD), d为局部希尔伯特空间维数,d = 2N为键阶。对于自旋1/2,D = 2,并且在本文中专门使用。在这些插图中D = 4。电路作用于图左侧的参考状态 ∣ 000... ⟩ |000...\rangle ∣000...,应用从左到右顺序读取的幺正算子。
b这种平动不变态的局部测量可以用所示的有限电路精确地再现。简化形式利用了U的唯一性,由于可观测点左边的位置没有贡献。环境酉向量V≡V(U)∈SU(D2)总结了观测值右侧位置的影响,并描述了nlog2D自旋上的有效状态。
环境酉V(U)是所示不动点方程的解。这个方程被解释为自由量子位线所隐含的约化密度矩阵的等式。在“方法”一节中展示如何使用交换门实现这一点。
d = 4状态的浅电路已被证明与哈密顿演化中获得的状态具有高保真度,并且在量子电路上的收缩速度比经典电路快得多。

图3:

时变分原理的量子实现。为简单起见,我们在D = 2时描述上述电路。在补充材料中给出了更高的键阶等级的情况。a在哈密顿量H下,优化该电路与 ∣ 000... ⟩ |000...\rangle ∣000...重叠的幺正U0以时间间隔dt描述U(t)所描述的状态的时间演化,即U’=U(t+dt)。混合环境一元R和L由这些电路方程的不动点解给出。如图2所示,这些将被解释为自由量子位线所隐含的密度矩阵的相等。

图4

图4模型横向场模拟结果,研究了键阶为D=2的量子矩阵积态的哈密顿量 H = Σ n [ σ ^ n − 1 z σ ^ n z + λ σ ^ n + 1 x ] H=\Sigma_n[\hatσ_{n-1}^z\hatσ_{n}^z+λ\hatσ_{n+1}^x] H=Σn[σ^n1zσ^nz+λσ^n+1x]。a)将SU(4)单元U和V编译到如图所示的电路中。改变参数p以提高精度。虽然对于2量子位一元性存在更有效的参数化3,以及更专门针对此问题的电路,但我们选择通用电路。b)使用图2所示的电路找到最佳状态。随着参数化深度的增加,该状态的能量更接近真实基态能量,并与传统MPS算法的能量收敛。特别是,我们已经检查了参攷的参数化完全再现MPS结果。请注意,在λ= 0时,哈密顿量是由产物状态优化的,而p=1则完美地捕获了产物状态。c)横向场Ising模型显示Loschmidt回波中的动态相变。这些在图3所示电路所体现的量子时变分原理的模拟运行中揭示。需要更精确的电路来获得良好的一致性。上述精确的结果是精确的分析结果。

图5

哈密顿量 H = Σ n ( 1 − σ ^ n − 1 z ) σ ^ n x ( 1 − σ ^ n + 1 z ) H=\Sigma_n(1-\hatσ_{n-1}^z)\hatσ_{n}^x(1-\hatσ_{n+1}^z) H=Σn(1σ^n1z)σ^nx(1σ^n+1z),最初被用来描述使用里德伯原子进行量子模拟的结果,显示了一种被称为多体疤痕的奇怪性质,由此可以发现从某些起始状态开始,可以用低键阶MPS描述的持续振荡。这些都可以使用图3的量子时变分原理在NISQ机器上进行研究。a为D = 2的一组简单的2点周期态由每个位点只有2个参数的电路参数化,因此总共有4个参数。b通过参考文献中提出的运动矩阵积状态方程的经典模拟得到的平面θ1 = 0.9的局部庞加莱截面。初始条件选择在恒能表面 H = 0 H=0 H=0上。在初始条件下沿间距为 δ ϕ 1 = 3 × 1 0 − 2 δϕ_1 = 3 × 10^{−2} δϕ1=3×102,θ1 = 0.9和θ2 = 5.41的直线生成局部图。最后一个参数, ϕ 3 ϕ_3 ϕ3,用来固定能量。c在Cirq中模拟量子时变分原理生成的相同庞加莱图。虽然图形在集成过程中有些模糊,但主要特征仍然很明显。

图6

a)MPS张量到量子电路的转换。从Nlog二维量子比特创建键阶D的辅助索引。b)标准形式意味着MPS向左收缩的效果是微不足道的。通过将MPS映射到量子电路,U的唯一性自动地将张量置于左正则形式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/127830.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

21.13 Python 实现端口流量转发

端口流量转发(Port Forwarding)是一种网络通信技术,用于将特定的网络流量从一个端口或网络地址转发到另一个端口或地址。它在网络中扮演着一个非常重要的角色,在Python语言中实现端口转发非常容易。 如下这段代码实现了一个基本的…

Linux -------------------设置防火墙和SELinux

(一)防火墙概述 防火墙的概念:防火墙是一种非常重要的网络安全工具,它是网络安全的重要组成部分,用于保护计算机网络免受未经授权的访问、恶意攻击和数据泄漏等威胁等。 防火墙的特点 防火墙通常具备以下几个特点。 …

【C语言】备战校赛Day1

日期:11.1 星期二 L1-001 Hello World 题目描述 这道超级简单的题目没有任何输入。 你只需要在一行中输出著名短句“Hello World!”就可以了。 输入样例: 无 输出样例: Hello World! 解题代码 int main() {printf("Hello World!");return 0; } 该题较为简单,但要注…

基于Tensorflow卷积神经网络玉米病害识别系统(UI界面)

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 Tensorflow是一个流行的机器学习框架,可用于训练和部署各种人工智能模型。玉米病害识别系统基于Tensorf…

[idea]关于idea开发乱码的配置

在JAVA开发中,一般统一设置为UTF-8的编码,包括但不限于开发工具、日志架构、虚拟机、文件编码等。常见配置如下: 1、IDEA工具 在idea64.exe.vmoptions、idea.exe.vmoptions中添加: -Dfile.encodingUTF-8 2、JAVA 运行在window…

chat2db初步使用和体验AI

今天下载chat2db体验了下将主要功能和使用截图总结下: 功能: 1.传统客户端能使用的功能基本都有,并且增加了导出excel等便捷的能力。 2.报表功能: 可以根据查询结果进行对应报表可视化显示 3.AI解析sql 可以根据输入的汉语例如…

开源的网站数据分析统计平台——Matomo

Matomo 文章目录 Matomo前言一、环境准备1. 整体安装流程2.安装PHP 7.3.303.nginx配置4.安装matomo4.1 访问安装页面 http://192.168.10.45:8088/index.php4.2 连接数据库4.3 设置管理员账号4.4 生成js跟踪代码4.5 安装完成4.6 警告修改4.7 刷新页面,就可以看到登陆…

软件测试报告所需周期和费用简析

软件测试报告是在软件开发和测试过程中生成的重要文档之一。它提供了对软件系统经过全面测试后的状态和质量的详细描述,以记录软件测试的过程和结果。 生成一个完整的测试报告需要根据软件项目的规模和复杂性来确定时间。较大规模和复杂的软件项目可能需要更长的时…

【错误解决方案】ModuleNotFoundError: No module named ‘feather‘

1. 错误提示 在python程序中,尝试导入一个名为feather的模块,但Python提示找不到这个模块。 错误提示:ModuleNotFoundError: No module named feather 2. 解决方案 出现这种情况,有可能是因为你还没有安装这个模块,…

Flutter 小技巧之不一样的思路实现炫酷 3D 翻页折叠动画

今天聊一个比较有意思的 Flutter 动画实现,如果需要实现一个如下图的 3D 折叠动画效果,你会选择通过什么方式? 相信可能很多人第一想法就是:在 Dart 里通过矩阵变换配合 Canvas 实现。 因为这个效果其实也算「常见」,…

使用 PyTorch 构建自定义 GPT

一、介绍 介绍大模型,首先考虑一下使用 ChatGPT、Bing Chat 或 Bard 。您是否想过拥有自己的 ChatGPT 会是什么样子?想象一下创建自己的 GPT 模型的兴奋程度。这确实是一种难以置信的感觉! 为了开始构建自定义 GPT 的旅程,让我们仔…

MATLAB和S7-1200PLC OPC通信(激活S7-1200PLC OPC UA服务器)

MATLAB和SMART PLC OPC通信请参考下面文章博客: MATLAB和西门子SMART PLC OPC通信-CSDN博客文章浏览阅读123次。西门子S7-200SMART PLC OPC软件的下载和使用,请查看下面文章Smart 200PLC PC Access SMART OPC通信_基于pc access smart的opc通信_RXXW_Dor的博客-CSDN博客OPC是…

通讯网关软件032——利用CommGate X2OPC实现OPC客户端访问Modbus TCP设备

本文介绍利用CommGate X2OPC实现OPC客户端连接Modbus TCP设备。CommGate X2OPC是宁波科安网信开发的网关软件,软件可以登录到网信智汇(http://wangxinzhihui.com)下载。 【案例】如下图所示,SCADA系统上位机、PLC、设备具备Modbus TCP通讯接口&#xff…

机器学习2:决策树--基于信息增益的ID3算法

1.决策树的简介 建立决策树的过程可以分为以下几个步骤: 计算每个特征的信息增益或信息增益比,选择最优的特征作为当前节点的划分标准。根据选择的特征将数据集划分为不同的子集。对每个子集递归执行步骤 1 和步骤 2,直到满足终止条件。构建决策树,并输出。基于信息增益的…

k8s调度约束

List-Watch Kubernetes 是通过 List-Watch的机制进行每个组件的协作,保持数据同步的,每个组件之间的设计实现了解耦。 List-Watch机制 工作机制:用户通过 kubectl请求给 APIServer 来建立一个 Pod。APIServer会将Pod相关元信息存入 etcd 中…

移动路由器Cellular Router命令执行漏洞复现 [附POC]

文章目录 移动路由器Cellular Router命令执行漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 移动路由器Cellular Router命令执行漏洞复现 [附POC] 0x01 前言 免责声明:请勿利用文章…

SQL面试

#(1)请写出要查询员工J开头的名字其工号(EMPNO)及部门名称(DEPTNA)的 SQL语句SELECT e.emp,e.name,d.deptna FROM emp e left join dept d on d.deptno e.deptno where e.name like J%#(2)请写出要查询 Kevin 所在部门的部门代号(DEPTNO)及部门名称(DEPTNA)的 SQL 语句SELECT e…

Pure-Pursuit 跟踪双移线 Gazebo 仿真

Pure-Pursuit 跟踪双移线 Gazebo 仿真 主要参考学习下面的博客和开源项目 自动驾驶规划控制(A*、pure pursuit、LQR算法,使用c在ubuntu和ros环境下实现) https://github.com/NeXTzhao/planning Pure-Pursuit 的理论基础见今年六月…

如何巧妙公布成绩

宝子们,来来来!听说你们对如何公布学生成绩很头疼?别担心,今天就让我来给大家支支招! 1在家长群内发公告,孩子的成绩已出,想知道具体成绩可以私信哦~简单粗暴!关心孩子的…

频谱仪超外差和零中频架构

文章目录 超外差结构零中频结构接收机结构发射机结构 优缺点对比附录相关词汇多次变频的形象解释 参考文献 频谱仪的本质就是一个超宽带、超宽调谐范围、高动态范围的通信接收机, 频谱仪的原理即通信接收机的原理。 遇到高频率高带宽谐波成分复杂的通信信号的话&am…