chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

量子機(jī)器學(xué)習(xí)入門:三種數(shù)據(jù)編碼方法對(duì)比與應(yīng)用

穎脈Imgtec ? 2025-09-15 10:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文轉(zhuǎn)自:DeepHub IMBA


在傳統(tǒng)機(jī)器學(xué)習(xí)中數(shù)據(jù)編碼確實(shí)相對(duì)直觀:獨(dú)熱編碼處理類別變量,標(biāo)準(zhǔn)化調(diào)整數(shù)值范圍,然后直接輸入模型訓(xùn)練。整個(gè)過(guò)程更像是數(shù)據(jù)清洗,而非核心算法組件。

量子機(jī)器學(xué)習(xí)的編碼完全是另一回事。

傳統(tǒng)算法可以直接消化特征向量[0.7, 1.2, -0.3],但量子電路運(yùn)行在概率幅和量子態(tài)的數(shù)學(xué)空間里。你的每個(gè)編碼決策——是用角度旋轉(zhuǎn)、振幅映射還是基態(tài)表示——都在重新定義信息在量子系統(tǒng)中的存在形式。這不是簡(jiǎn)單的格式轉(zhuǎn)換,而是從根本上塑造了量子算法能夠"看到"和處理的數(shù)據(jù)結(jié)構(gòu)。

在量子機(jī)器學(xué)習(xí)中,編碼不是預(yù)處理,而是算法設(shè)計(jì)的核心。

91163f46-91db-11f0-8ce9-92fbcf53809c.jpg

本文我們會(huì)詳細(xì)講解量子數(shù)據(jù)編碼的三種主要方法,分析它們與傳統(tǒng)方法的區(qū)別,以及為什么選對(duì)編碼方式會(huì)決定你的量子模型成敗。


量子編碼的底層邏輯

量子電路處理數(shù)據(jù)的方式和傳統(tǒng)算法截然不同,即使是在普通電腦上模擬運(yùn)行也是如此。你沒(méi)法直接把數(shù)值列表或者歸一化向量塞給量子電路。數(shù)據(jù)必須先編碼成量子態(tài)——這些數(shù)學(xué)對(duì)象可以模擬疊加和糾纏行為。這個(gè)編碼過(guò)程就是連接經(jīng)典數(shù)據(jù)集和量子計(jì)算環(huán)境的橋梁,讓我們能在本地機(jī)器上做量子機(jī)器學(xué)習(xí)實(shí)驗(yàn)。

量子電路運(yùn)行在一個(gè)完全不同的計(jì)算空間里。它們操作的是量子態(tài),這些數(shù)學(xué)對(duì)象存在于疊加狀態(tài)中,可以在多個(gè)量子比特之間形成糾纏,測(cè)量時(shí)會(huì)發(fā)生坍縮。量子電路處理不了2.3這樣的普通數(shù)字,因?yàn)榱孔娱T操作的是概率幅和相位關(guān)系,不是經(jīng)典的標(biāo)量。

91275704-91db-11f0-8ce9-92fbcf53809c.jpg

編碼方法的選擇從根本上決定了量子模型能學(xué)到什么。基礎(chǔ)編碼把數(shù)據(jù)直接映射成二進(jìn)制量子態(tài),實(shí)現(xiàn)簡(jiǎn)單但表達(dá)能力有限。振幅編碼把整個(gè)數(shù)據(jù)集壓縮進(jìn)量子態(tài)的振幅里,效率很高但需要復(fù)雜的歸一化處理。角度編碼用量子門根據(jù)數(shù)據(jù)值旋轉(zhuǎn)量子比特,在簡(jiǎn)單性和功能性之間找到了平衡點(diǎn)。

這個(gè)選擇不只影響準(zhǔn)確率,還決定了電路深度、量子比特需求,以及模型能利用哪些量子現(xiàn)象。選錯(cuò)了編碼方式,即使是理論上有優(yōu)勢(shì)的量子算法也可能跑不過(guò)經(jīng)典基線。


角度編碼:最直觀的映射方式

角度編碼是把經(jīng)典特征轉(zhuǎn)換為量子態(tài)最直接的方法。每個(gè)特征值變成一個(gè)旋轉(zhuǎn)角度,作用在對(duì)應(yīng)的量子比特上。通常用RY門(繞Y軸旋轉(zhuǎn)),因?yàn)樗茏屃孔颖忍卦贐loch球面的Y軸上旋轉(zhuǎn)。

對(duì)于特征向量x = [x?, x?, …, x?],角度編碼的操作是:第一個(gè)量子比特RY(x?)|0? → cos(x?/2)|0? + sin(x?/2)|1?,第二個(gè)量子比特RY(x?)|0? → cos(x?/2)|0? + sin(x?/2)|1?,以此類推。

旋轉(zhuǎn)角度直接控制量子比特在Bloch球面上的位置。角度0保持量子比特在|0?狀態(tài),π/2創(chuàng)建等權(quán)疊加(|0? + |1?)/√2π翻轉(zhuǎn)到|1?狀態(tài)。這種幾何解釋讓角度編碼很好理解——每個(gè)特征實(shí)際上在旋轉(zhuǎn)對(duì)應(yīng)的量子比特,把信息編碼在量子態(tài)的幾何結(jié)構(gòu)里。

用Qiskit實(shí)現(xiàn)角度編碼很簡(jiǎn)單。每個(gè)特征通過(guò)一個(gè)RY門處理,作用在獨(dú)立的量子比特上:

from qiskit import QuantumCircuit
import numpy as np

class AngleEncoder:
def __init__(self, num_features):
self.num_features = num_features

def encode(self, features):
"""Encode a single feature vector into a quantum circuit."""
qc = QuantumCircuit(self.num_features)
for i, x in enumerate(features):
qc.ry(x, i)
return qc

處理批量樣本只需要遍歷數(shù)據(jù)集:

def batch_encode(encoder, data):
circuits = []
for features in data:
circuits.append(encoder.encode(features))
return circuits

想看編碼后的量子態(tài),Qiskit提供了可視化工具:

from qiskit.visualization import plot_bloch_multivector
from qiskit.quantum_info import Statevector

features = [np.pi/4, np.pi/2]
qc = AngleEncoder(len(features)).encode(features)

state = Statevector.from_instruction(qc)
plot_bloch_multivector(state)

這會(huì)在Bloch球面上畫出每個(gè)量子比特的狀態(tài),讓你直觀看到數(shù)據(jù)是怎么嵌入的。

9131f4fc-91db-11f0-8ce9-92fbcf53809c.jpg

角度編碼的優(yōu)勢(shì)很明顯:特征到量子比特的映射很直接,適用于任何連續(xù)數(shù)據(jù)。但限制也不少,每個(gè)量子比特只能編碼一個(gè)特征作為單個(gè)角度,表達(dá)能力有限。每個(gè)特征只影響一個(gè)量子比特,所以多特征之間的交互沒(méi)法自然表示出來(lái),也抓不到特征間的相關(guān)性。擴(kuò)展到高維數(shù)據(jù)時(shí)需要很多量子比特這在實(shí)際應(yīng)用中是個(gè)大問(wèn)題。


振幅編碼:量子優(yōu)勢(shì)的體現(xiàn)

振幅編碼真正展現(xiàn)了量子計(jì)算的指數(shù)優(yōu)勢(shì)。它不是給每個(gè)特征分配一個(gè)量子比特,而是把整個(gè)特征向量壓縮到量子態(tài)的振幅里。

比如特征向量x = [x?, x?, x?, x?],振幅編碼會(huì)創(chuàng)建量子態(tài)|ψ? = α?|00? + α?|01? + α?|10? + α?|11?,每個(gè)α?對(duì)應(yīng)一個(gè)歸一化的特征值。這里的關(guān)鍵是指數(shù)信息密度:n個(gè)特征只需要log?(n)個(gè)量子比特。256個(gè)特征的向量只要8個(gè)量子比特就夠了,而角度編碼需要256個(gè)。

但這種壓縮有個(gè)硬性要求:Σ|α?|2 = 1,保證量子態(tài)的有效性。你的特征向量必須先歸一化為單位長(zhǎng)度。與角度編碼直接映射不同,振幅編碼需要復(fù)雜的數(shù)學(xué)預(yù)處理,把經(jīng)典向量轉(zhuǎn)換成概率幅。

這種指數(shù)壓縮帶來(lái)了獨(dú)特的量子現(xiàn)象。特征不再獨(dú)立它們存在于疊加態(tài)中,測(cè)量任何量子比特都會(huì)影響整個(gè)系統(tǒng)狀態(tài)。這讓量子算法能處理傳統(tǒng)算法難以應(yīng)對(duì)的特征相關(guān)性和高維模式,但也讓編碼的實(shí)現(xiàn)和理解變得復(fù)雜得多。

振幅編碼面臨兩個(gè)角度編碼沒(méi)有的難題:歸一化復(fù)雜性和電路深度問(wèn)題。

歸一化這步看起來(lái)簡(jiǎn)單,實(shí)際上很要命。你的特征向量必須滿足Σ|α?|2 = 1,這直接影響模型對(duì)數(shù)據(jù)關(guān)系的解釋。用L2歸一化、先做min-max縮放再歸一化,或者基于概率的歸一化,對(duì)同一份經(jīng)典數(shù)據(jù)會(huì)產(chǎn)生完全不同的量子表示。

負(fù)特征值更麻煩。量子概率幅可以是復(fù)數(shù),但實(shí)現(xiàn)復(fù)振幅編碼需要額外的量子比特或者復(fù)雜的相位編碼。很多實(shí)際應(yīng)用把振幅限制為實(shí)數(shù),如果你的特征有重要的負(fù)值信息,就可能丟失關(guān)鍵信息。

電路深度是另一個(gè)坑。創(chuàng)建任意振幅狀態(tài)需要復(fù)雜的量子電路,不像角度編碼每個(gè)特征用一個(gè)RY門就完事。振幅編碼需要一串受控旋轉(zhuǎn)、受控NOT門,還要輔助量子比特。電路深度隨特征數(shù)量對(duì)數(shù)增長(zhǎng),實(shí)現(xiàn)起來(lái)相當(dāng)復(fù)雜。

913e0b48-91db-11f0-8ce9-92fbcf53809c.jpg

用Qiskit的initialize方法可以直接在量子比特上設(shè)置振幅:

from qiskit import QuantumCircuit

class AmplitudeEncoder:
def __init__(self, num_qubits):
self.num_qubits = num_qubits

def encode(self, features):
"""Encode normalized feature vector into quantum circuit."""
qc = QuantumCircuit(self.num_qubits)
qc.initialize(features, qc.qubits)
return qc

處理任意長(zhǎng)度的數(shù)據(jù)集,需要結(jié)合歸一化:

def encode_vector(vector):
vec = normalize(vector)
num_qubits = int(np.ceil(np.log2(len(vec))))
# Pad vector to length 2^num_qubits
pad_len = 2**num_qubits - len(vec)
padded = np.append(vec, [0]*pad_len)
return AmplitudeEncoder(num_qubits).encode(padded)

這樣就能處理任意長(zhǎng)度的向量,編碼器會(huì)自動(dòng)填充到最近的2的冪次。


基礎(chǔ)編碼:簡(jiǎn)單高效的離散表示

基礎(chǔ)編碼把分類數(shù)據(jù)直接映射到計(jì)算基礎(chǔ)狀態(tài)∣0?∣1?。它不依賴疊加或干涉,而是用不同的正交狀態(tài)表示不同類別,測(cè)量時(shí)能完美區(qū)分。

這創(chuàng)建了經(jīng)典標(biāo)簽和二進(jìn)制量子態(tài)的一對(duì)一映射。2量子比特系統(tǒng)有四個(gè)基礎(chǔ)狀態(tài):∣00?,∣01?,∣10?,∣11?,可以表示四個(gè)類別。編碼就是把分類標(biāo)簽轉(zhuǎn)成二進(jìn)制,然后初始化量子比特匹配這個(gè)二進(jìn)制模式。類別"A"可能對(duì)應(yīng)∣00?,類別"B"對(duì)應(yīng)∣01?,測(cè)量時(shí)能100%確定地恢復(fù)原類別。

數(shù)學(xué)上很優(yōu)雅:n個(gè)類別只需要 [log?(n)] 個(gè)量子比特,對(duì)離散數(shù)據(jù)非常高效。

Qiskit實(shí)現(xiàn)基礎(chǔ)編碼很直接,把量子比特準(zhǔn)備到對(duì)應(yīng)的基礎(chǔ)狀態(tài):

class BasisEncoder:
def __init__(self, num_qubits):
self.num_qubits = num_qubits

def encode(self, binary_string):
"""Prepare qubits in basis state from a binary string."""
qc = QuantumCircuit(self.num_qubits)
for i, bit in enumerate(binary_string):
if bit == "1":
qc.x(i) # Apply X gate to flip |0? → |1?
return qc

多類問(wèn)題可以把整數(shù)標(biāo)簽映射成二進(jìn)制字符串:

def int_to_basis(n, num_qubits):
return format(n, f"0{num_qubits}b")

encoder = BasisEncoder(3)
qc = encoder.encode(int_to_basis(5, 3)) # Encodes integer 5 as |101?

基礎(chǔ)編碼對(duì)分類變量很合適,但處理連續(xù)或高維數(shù)據(jù)就效率太低了。編碼大數(shù)據(jù)集會(huì)消耗太多量子比特,不實(shí)用。對(duì)數(shù)值特征,角度或振幅編碼是更好的選擇。


如何選擇編碼方式

選擇哪種編碼方式主要看你的具體需求。

如果你在學(xué)習(xí)量子機(jī)器學(xué)習(xí)基礎(chǔ),特征之間相對(duì)獨(dú)立,需要簡(jiǎn)單易懂的電路,或者在NISQ設(shè)備上工作,角度編碼是最好的起點(diǎn)。

如果你有高維連續(xù)數(shù)據(jù),特征相關(guān)性很重要,能接受電路復(fù)雜度,想要最大化量子優(yōu)勢(shì),振幅編碼更合適。

如果數(shù)據(jù)主要是分類或離散的,需要完美的可解釋性,要求最小電路深度,處理的是分類問(wèn)題,基礎(chǔ)編碼是理想選擇。

量子數(shù)據(jù)編碼不只是預(yù)處理步驟,它從根本上定義了量子模型能學(xué)到什么、怎么學(xué)。選對(duì)編碼方式,你的量子算法就有了成功的基礎(chǔ);選錯(cuò)了,再先進(jìn)的量子算法也可能表現(xiàn)平平。

作者:Aadish Parate

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 量子
    +關(guān)注

    關(guān)注

    0

    文章

    495

    瀏覽量

    26216
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8528

    瀏覽量

    135852
  • 量子電路
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    1915
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    宏塊分裂的多描述視頻編碼方法

    宏塊分裂的多描述視頻編碼方法
    發(fā)表于 09-11 00:59

    求一準(zhǔn)循環(huán)LDPC碼的快速編碼方法

    LDPC碼的通用編碼方法有哪些?準(zhǔn)循環(huán)LDPC碼的快速編碼方法是什么?
    發(fā)表于 04-25 07:16

    實(shí)用的混沌保密編碼方法

    基于實(shí)用符號(hào)動(dòng)力學(xué)的基礎(chǔ)理論,提出了一實(shí)用的混沌保密編碼方法,該方法借助于單峰的logistic映射處于混沌吸引子狀態(tài)時(shí)產(chǎn)生的符號(hào)序列作為密鑰,對(duì)信源編碼信號(hào)進(jìn)行加密
    發(fā)表于 11-18 00:17 ?12次下載

    數(shù)據(jù)編碼技術(shù)

    2.2  數(shù)據(jù)編碼技術(shù)2.2.1  數(shù)字數(shù)據(jù)的數(shù)字信號(hào)編碼2.2.2  數(shù)字數(shù)據(jù)的模擬信號(hào)編碼2.2.3&nb
    發(fā)表于 06-27 21:45 ?0次下載

    宏塊分裂的多描述視頻編碼方法

    宏塊分裂的多描述視頻編碼方法:多描述編碼是近年來(lái)提出的用于不可靠網(wǎng)絡(luò)的視頻編碼方法。本文在塊基編碼的基礎(chǔ)上,提出了一
    發(fā)表于 08-08 08:29 ?19次下載

    實(shí)用的混沌保密編碼方法

    實(shí)用的混沌保密編碼方法 基于實(shí)用符號(hào)動(dòng)力學(xué)的基礎(chǔ)理論,提出了一實(shí)用的混沌保密編碼方法,該方法借助于單峰的logistic映射處于混沌
    發(fā)表于 11-18 10:55 ?10次下載

    定點(diǎn)小數(shù)的編碼方法

    定點(diǎn)小數(shù)的編碼方法  用定點(diǎn)小數(shù)引出數(shù)值的三種編碼(原碼、補(bǔ)碼和反碼)方法是最方便的。   (1) 原碼表示法,是用機(jī)器數(shù)的最高一位代表
    發(fā)表于 10-13 17:19 ?3735次閱讀
    定點(diǎn)小數(shù)的<b class='flag-5'>編碼方法</b>

    整數(shù)的編碼方法

    整數(shù)的編碼方法   與定點(diǎn)小數(shù)的三種編碼方法類似,整數(shù)也可以用原碼、補(bǔ)碼和反碼三種不同的編碼方法表示。區(qū)別主要表現(xiàn)在:
    發(fā)表于 10-13 17:19 ?5683次閱讀

    DNA計(jì)算中的單模板編碼方法改進(jìn)研究

    如何避免各種不期望的雜交是DNA 計(jì)算以及微陣列技術(shù)中的一個(gè)關(guān)鍵問(wèn)題. 為了得到穩(wěn)定可靠的雜交,必須探索一可靠的、魯棒性的編碼方法. 單模板編碼方法是Arita 提出的另一模板編
    發(fā)表于 08-18 15:24 ?0次下載
    DNA計(jì)算中的單模板<b class='flag-5'>編碼方法</b>改進(jìn)研究

    低耦合翻轉(zhuǎn)的數(shù)據(jù)總線編碼方法

    低耦合翻轉(zhuǎn)的數(shù)據(jù)總線編碼方法
    發(fā)表于 01-07 20:32 ?2次下載

    新的基于素?cái)?shù)的XML動(dòng)態(tài)編碼方法_田帥

    新的基于素?cái)?shù)的XML動(dòng)態(tài)編碼方法_田帥
    發(fā)表于 03-19 11:45 ?0次下載

    改進(jìn)的分形圖像編碼方法

    傳統(tǒng)圖像編碼方法一般已成定式,發(fā)展?jié)摿Σ淮蟆7中螆D像編碼方法思想新穎,是極具發(fā)展?jié)摿Φ膲嚎s方法,但分形編碼存在編碼耗時(shí)過(guò)長(zhǎng)的缺點(diǎn)。本文基于分
    發(fā)表于 12-20 13:56 ?2次下載

    常見(jiàn)的11個(gè)分類變量編碼方法

    機(jī)器學(xué)習(xí)算法只接受數(shù)值輸入,所以如果我們遇到分類特征的時(shí)候都會(huì)對(duì)分類特征進(jìn)行編碼,本文總結(jié)了常見(jiàn)的11個(gè)分類變量編碼方法。
    的頭像 發(fā)表于 11-28 15:45 ?4612次閱讀

    串行通信的三種數(shù)字編碼方式

    有關(guān)串行通信的知識(shí),介紹了串行通信的幾種數(shù)字編碼方式,共有三種,一是NRZ編碼,二是曼徹斯特(Manchester)編碼是微分曼徹斯特
    的頭像 發(fā)表于 06-29 16:55 ?5008次閱讀

    機(jī)器學(xué)習(xí)算法入門 機(jī)器學(xué)習(xí)算法介紹 機(jī)器學(xué)習(xí)算法對(duì)比

    機(jī)器學(xué)習(xí)算法入門 機(jī)器學(xué)習(xí)算法介紹 機(jī)器學(xué)習(xí)算法
    的頭像 發(fā)表于 08-17 16:27 ?1428次閱讀