量子机器学习(QML)(一):量子计算基础
注:转载请注明作者,本文也发布在作者个人公众号上
什么是量子?
量子是一个物理概念,即一个物理量如果存在最小的不可分割的基本单位,则这个物理量是量子化的,并把最小单位称为量子。量子是一种存在状态,而不是存在本身,即量子相当于单位(但光粒子是量子,仅此特例)。
什么是量子比特?
我们知道一个经典比特,任何时刻只能存在于一种状态,即0或1。量子比特嗯,也存在两种状态,即 ∣ 0 ⟩ |0\rang ∣0⟩和 ∣ 1 ⟩ |1\rang ∣1⟩。不同的是,量子比特还可以处在这两种状态的叠加态。
但 ∣ 0 ⟩ |0\rang ∣0⟩和 ∣ 1 ⟩ |1\rang ∣1⟩究竟是什么呢?为了直观但表达,这里我采用了量子物理上传统的狄拉克表示 (bra-ket):
∣ 0 ⟩ : = [ 1 0 ] 和 ∣ 1 ⟩ : = [ 0 1 ] |0\rang:= \begin{bmatrix} 1 \\0 \end{bmatrix}和|1\rang:= \begin{bmatrix} 0 \\1 \end{bmatrix} ∣0⟩:=[10]和∣1⟩:=[01]
后续量子机器学习的编程中,同样用这种线性代数的表达方式。此时{
∣ 0 ⟩ |0\rang ∣0⟩, ∣ 1 ⟩ |1\rang ∣1⟩}都是单位正交向量,被称为正交基。
一个量子比特所有可能的态可以看作是二维希尔伯特空间中所有的归一化向量,这个希尔伯特空间的一组正规正交基正是{
∣ 0 ⟩ |0\rang ∣0⟩, ∣ 1 ⟩ |1\rang ∣1⟩}。而更多的量子比特系统也同样可以由高维度的希尔伯特空间中的的单位向量表示,而这个高维希尔伯特空间的正交基就是{
∣ 0 ⟩ |0\rang ∣0⟩, ∣ 1 ⟩ |1\rang ∣1⟩}的张量积。例如一个两量子比特 (2-qubit)系统可以被一个4维的希尔伯特空间里的单位复数向量表示,而这个希尔伯特空间的正规正交基是:
∣ 00 ⟩ = ∣ 0 ⟩ ⊗ ∣ 0 ⟩ : = [ 1 0 0 0 ] , ∣ 01 ⟩ = ∣ 0 ⟩ ⊗ ∣ 1 ⟩ : = [ 0 1 0 0 ] , ∣ 10 ⟩ = ∣ 1 ⟩ ⊗ ∣ 0 ⟩ : = [ 0 0 1 0 ] , ∣ 11 ⟩ = ∣ 1 ⟩ ⊗ ∣ 1 ⟩ : = [ 0 0 0 1 ] |00\rang=|0\rang\otimes|0\rang:=\begin{bmatrix} 1 \\0\\0\\0 \end{bmatrix},|01\rang=|0\rang\otimes|1\rang:=\begin{bmatrix} 0\\1\\0\\0 \end{bmatrix},|10\rang=|1\rang\otimes|0\rang:=\begin{bmatrix} 0\\0\\1\\0 \end{bmatrix},|11\rang=|1\rang\otimes|1\rang:=\begin{bmatrix} 0 \\0\\0\\1\end{bmatrix} ∣00⟩=∣0⟩⊗