摘要:針對現(xiàn)有電動汽車共享充電樁推薦算法在大數(shù)據(jù)場景下存在耗時問題,本文提出一種基于哈希學(xué)習(xí)的快速推薦算法。該算法首先采集目標(biāo)范圍內(nèi)充電樁的用戶偏好因素,并利用監(jiān)督離散哈希學(xué)習(xí)模型進(jìn)行訓(xùn)練,得到一組能夠保持原始空間語義相似性的二值哈希編碼。然后,在漢明空間內(nèi)進(jìn)行特征匹配,實現(xiàn)快速推薦。實驗結(jié)果表明,相較于傳統(tǒng)方法,本文方法能夠顯著提高私人共享充電樁的推薦速度。
關(guān)鍵詞:哈希學(xué)習(xí);電動汽車;充電樁推薦;特征匹配
中圖分類號:TP18 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2025)04-0047-04 開放科學(xué)(資源服務(wù)) 標(biāo)識碼(OSID) :
0 引言
為了緩解公共充電樁供應(yīng)量不足與電動汽車充電需求強烈之間的矛盾,工業(yè)界提出將現(xiàn)有的閑置私人充電樁與公共充電樁組成聯(lián)盟,并納入共享充電服務(wù)體系,使私人充電樁和公共充電樁共同為公眾提供服務(wù)。目前,電動汽車市場和充電基礎(chǔ)設(shè)施建設(shè)正處于快速發(fā)展階段,國家政策也對新能源汽車和充電設(shè)施給予了大力扶持,因此電動汽車和充電樁的數(shù)量均呈現(xiàn)出快速增長的態(tài)勢。截至2023年底,全國新能源汽車保有量已達(dá)2 041萬輛,而充電基礎(chǔ)設(shè)施總量達(dá)859.6萬臺。
在充電樁推薦策略方面,目前已取得了一定的研究進(jìn)展。孫哲等[1]提出的充電樁推薦算法的第一步是獲取用戶準(zhǔn)確的地理位置,隨后根據(jù)該位置獲取用戶一定范圍內(nèi)的充電樁編號,并對充電樁的聲譽值、充電單價、距離、等待時間等因素賦予權(quán)重,計算每個充電樁的綜合評分,從而為用戶推薦最佳充電樁。QiaoG H等[2]提出了一種兩階段的異構(gòu)充電樁與電動汽車匹配方案,首先根據(jù)電動汽車的充電需求建立第一階段的雙邊匹配結(jié)果,然后在此基礎(chǔ)上根據(jù)系統(tǒng)總體效用重新分配第一階段的匹配結(jié)果,從而降低匹配過程的復(fù)雜度并提高系統(tǒng)效用。
隨著研究的深入與成熟,深度學(xué)習(xí)技術(shù)也逐漸被應(yīng)用到充電樁推薦領(lǐng)域中。賈鑒等[3]采用雙階段注意力機制的循環(huán)神經(jīng)網(wǎng)絡(luò),提出了基于車輛行駛軌跡預(yù)測的充電樁推薦方法。LI Yujing等[4]則采用深度學(xué)習(xí)方法對到達(dá)充電站的車輛數(shù)量進(jìn)行實時預(yù)測,結(jié)合協(xié)同過濾推薦算法,綜合考慮用戶選擇偏好,為用戶提供充電樁推薦服務(wù)。
然而,電動汽車和私人充電樁數(shù)量的急劇增長使得充電樁推薦存在一定的時延問題。在海量數(shù)據(jù)面前,信息量的激增使得充電樁推薦的時效性成為一項新的挑戰(zhàn)?,F(xiàn)有的充電樁推薦算法大多集中于某一方向的優(yōu)化,例如降低充電價格或提升實時性,但在推薦的時效性方面則鮮有深入研究。
為了解決上述問題,本文利用哈希學(xué)習(xí)強大的學(xué)習(xí)能力及其在檢索速度和存儲開銷方面的優(yōu)越性能,提出了一種基于哈希學(xué)習(xí)的電動汽車充電樁推薦算法。
1 哈希學(xué)習(xí)
哈希學(xué)習(xí)[5]自2007年推廣到機器學(xué)習(xí)領(lǐng)域以來,迅速發(fā)展成為機器學(xué)習(xí)和大數(shù)據(jù)學(xué)習(xí)領(lǐng)域的研究熱點。哈希學(xué)習(xí)通過機器學(xué)習(xí)機制[6]將數(shù)據(jù)映射為二進(jìn)制串形式,在保持?jǐn)?shù)據(jù)相似性的同時,將高維特征映射到低維的哈希碼。由于哈希碼只有-1或1兩種取值,且哈希碼的位數(shù)一般較少,因此使用哈希碼表示數(shù)據(jù)后,所需的存儲空間會被大幅減少,同時計算效率也會顯著提高[7]。
根據(jù)學(xué)習(xí)過程中是否利用原始數(shù)據(jù)的監(jiān)督信息(如類別標(biāo)記等) ,現(xiàn)有的哈希學(xué)習(xí)方法可以分為非監(jiān)督哈希和監(jiān)督哈希。非監(jiān)督哈希學(xué)習(xí)保存了原始特征空間中的度量結(jié)構(gòu),這種度量結(jié)構(gòu)一般是指阿基米德距離,但沒有使用任何監(jiān)督(標(biāo)簽) 信息。然而,原始特征空間的距離度量不能很好地保持語義相似性。而監(jiān)督哈希學(xué)習(xí)利用了監(jiān)督(標(biāo)簽) 信息,從而保存了原始數(shù)據(jù)的語義結(jié)構(gòu)。監(jiān)督信息可以有3種表現(xiàn)形式:點標(biāo)簽、對標(biāo)簽和排序標(biāo)簽。代表性的方法包括核監(jiān)督哈希(Kernel Supervised Hashing, KSH) [8]、監(jiān)督離散哈希(Supervised Discrete Hashing, SDH) [9]、列采樣監(jiān)督離散哈希(Column Sampling based Discrete Super?vised Hashing, COSDISH) [10] 和本地一致哈希(LocallyUniform Hashing, LUH) [11]等。近兩年,涌現(xiàn)出了許多基于深度學(xué)習(xí)的哈希方法。憑借其強大的特征學(xué)習(xí)能力,與基于手工設(shè)計特征的傳統(tǒng)哈希方法相比,這些方法具有更好的特征表達(dá)能力。代表性的深度學(xué)習(xí)哈希方法包括非松弛深度哈希(Non-relaxationDeep Hashing, NRDH) [12]和無監(jiān)督深度三元組哈希(Unsupervised Deep Triplet Hashing, UDTrHash) [13]等。
2 基于哈希學(xué)習(xí)的電動汽車充電樁推薦算法
2.1 模型定義
本文提出的基于哈希學(xué)習(xí)的電動汽車充電樁推薦算法的模型如圖1所示。在訓(xùn)練階段,訓(xùn)練樣本為一定范圍內(nèi)的私人共享充電樁。首先,需要獲取每個充電樁的用戶偏好因素,并將評分最高的因素作為該充電樁的類別標(biāo)簽,然后將數(shù)據(jù)輸入監(jiān)督離散哈希分類器進(jìn)行訓(xùn)練,最終得到一串二進(jìn)制哈希編碼。
在測試階段,首先根據(jù)待充電電動汽車的用戶偏好,計算目標(biāo)充電樁所需因素的評分,并將其作為測試樣本輸入訓(xùn)練好的監(jiān)督離散哈希分類器中進(jìn)行預(yù)測,最終同樣得到一串二進(jìn)制哈希編碼。通過比較測試樣本與訓(xùn)練樣本的二進(jìn)制哈希碼的漢明距離,可以篩選出排名靠前的充電樁。
由于測試樣本可能與多個訓(xùn)練樣本具有相同的漢明距離,本文方法進(jìn)一步選出漢明距離前 10 的訓(xùn)練樣本進(jìn)行更為精確的篩選。具體來說,為每個用戶偏好因素賦予權(quán)重,并使用加權(quán)綜合評分法計算出最優(yōu)充電樁。
2.2 監(jiān)督離散哈希(SDH)
監(jiān)督離散哈希(SDH) 根據(jù)線性分類定義了哈??蚣?,以利用數(shù)據(jù)的標(biāo)簽信息。在優(yōu)化過程中,通過離散循環(huán)坐標(biāo)下降(Discrete Cyclic Coordinate,DCC) 算法對每一個比特位進(jìn)行計算生成哈希碼,這也是后續(xù)離散哈希常用的優(yōu)化策略。
假設(shè)有n 個樣本X = { xi }ni= 1 ∈ Rd × n,第i 列xi 表示一個d 維樣本。哈希學(xué)習(xí)的目標(biāo)是學(xué)習(xí)一組能夠保持原始空間語義相似性的二值編碼B = {bi }ni= 1 ∈ {-1,1}q × n,其中第i 列bi 是原始樣本xi 學(xué)習(xí)到的長度為q比特的二值編碼。通過利用訓(xùn)練樣本的標(biāo)簽信息,使真實類別與預(yù)測類別的差異應(yīng)盡可能小,我們希望學(xué)習(xí)到的二值編碼能夠進(jìn)行最佳的線性分類。監(jiān)督離散哈希(SDH) 采用如下多類別分類優(yōu)化問題:
W = { wk }ck = 1 ∈ Rq × c 是分類權(quán)重矩陣,Y ={ yi }ni= 1 ∈ Rc × n 是原始數(shù)據(jù)的標(biāo)簽矩陣,c 是類別數(shù)量,λ1 是正則參數(shù)。如果yki = 1,說明xi 屬于類別k;如果yki = 0,說明xi不屬于類別k。
上述優(yōu)化問題利用了標(biāo)簽的語義信息,使學(xué)習(xí)到的二值編碼能夠?qū)崿F(xiàn)最佳的線性分類。同時,學(xué)習(xí)得到的二值編碼需要能夠保存原始樣本空間的相似關(guān)系,因此需要定義一個哈希方程H (X ),將樣本的連續(xù)特征映射為二值特征。為了能夠得到更高質(zhì)量的二值哈希編碼,將式(1)重寫為:
需要特別指出的是,式 (3)直接對學(xué)習(xí)到的二值編碼B進(jìn)行離散約束,沒有進(jìn)行松弛操作,這種處理方式稱為離散哈希。式(3)的最后一項表示原始數(shù)據(jù)經(jīng)過哈希方程H (X ) 變換后與二值編碼B的擬合誤差,其中λ2 為懲罰參數(shù)。在實際應(yīng)用中,B與H (X )之間可以存在微小誤差。
哈希方程H (X ) 可以看作是一個投影方程,它將原始特征空間映射為q 比特。一般來說,可以采用任何合適的映射學(xué)習(xí)算法(線性或非線性)來實現(xiàn)這一過程。目前,大多數(shù)哈希方法采用線性投影矩陣,但這種線性投影矩陣無法很好地保存樣本的非線性結(jié)構(gòu)。
為了能夠得到理想的二值哈希編碼,哈希方程的選擇非常重要。SDH采用如下一種非線性形式:
H (X) = PTK (X) (4)
K (X ) ∈ Rm × n是通過RBF核映射得到的一個矩陣。
K (X) 的每一列通過 K (x) = [ exp (-x - x(1) 2/σ),...,exp (-x - x(m) 2/σ) ]計算得到,其中{ x(i) }mi= 1 是從訓(xùn)練樣本中隨機選取的m 個樣本,σ是核的寬度,這些樣本稱為錨點。矩陣P ∈ Rm × q 將數(shù)據(jù)K(X)投影到低維空間,矩陣P也稱為哈希模型矩陣,這是整個監(jiān)督離散哈希訓(xùn)練階段非常重要的輸出矩陣,同時也是測試階段進(jìn)行實際分類的依據(jù)。通過哈希方程H(X)進(jìn)行二值映射,式(3)的最后一項以非線性的方式使學(xué)習(xí)得到的二值編碼盡可能保持原始特征的相似關(guān)系。
式(3)中包含3個變量,分別是B、W和H。根據(jù)式(4),H 的優(yōu)化過程本質(zhì)上求解P。因此,本方法將式(3) 分解為求解B、W和P這3個子問題,并在迭代的過程中交替優(yōu)化這3個子問題。具體來說:當(dāng)W和B固定時,優(yōu)化P;P和B固定時,優(yōu)化W;當(dāng)P和W固定時,優(yōu)化B。
1) P-Step。如果固定式(3)中的B和W,哈希模型矩陣P可以通過回歸計算得出:
P = (K (X) K (X) ) T -1 K (X )BT (5)
2) W-Step。在固定B和P的前提下,可以通過正則化最小二乘問題求解W:
W = (BBT ) + λ1 I -1 BY T (6)
3) B-Step。當(dāng)固定除了B以外的所有變量時,這個子問題可以寫成如下形式:
通過簡單的數(shù)學(xué)變換,式(7)可以寫成:
U = WY + λ2H (X),tr (?)是矩陣的跡。
由于B的離散約束,直接求解B十分困難。但是有一個近似的解決方案:B的每一行可以通過固定其他行求解,即依次學(xué)習(xí)每一個比特,直到所有q 個比特學(xué)習(xí)完畢。根據(jù)這個思路,我們可以通過離散坐標(biāo)輪換的方式依次更新二值編碼矩陣B的每一行。令bi為B的第i 行,i = 1,2,...,q,即bi 是所有n 個樣本的其中一個比特, B?是矩陣B除去bi 后的矩陣。類似地,令ui 為U的第i 行,U?是矩陣U除去ui 后的矩陣,wi 為W的第i行,W?是矩陣W除去wi 后的矩陣。由此可以得到一個近似的解決方案:
bi = sgn(ui - ( B?TW?wiT )T ) (9)
由此,所有樣本每一個比特bi 的計算依賴于B?中已經(jīng)學(xué)習(xí)好的q-1個比特。通過q 次操作可以依次得到全部q 個比特。同時可以迭代t 次,直到程序收斂或達(dá)到最大迭代次數(shù),每一次的迭代產(chǎn)生一組更好的哈希編碼B。通過式(9),離散變量B 的優(yōu)化問題得以解決。
用上述方法得到每個樣本的哈希編碼后,就可以根據(jù)測試樣本與訓(xùn)練樣本的漢明距離進(jìn)行相似性排序。漢明距離越小,代表相似度越高。由于可能存在漢明距離相同的情況,我們挑選出相似性最高的 10 個訓(xùn)練樣本作為備選充電樁,待進(jìn)一步篩選。
2.3 加權(quán)綜合評分
本文將充電樁的用戶偏好因素進(jìn)行量化,并為每個因素賦予權(quán)重。充電樁推薦算法的具體計算過程如公式(10) 所示。
假設(shè)有k 個用戶偏好因素,如充電樁充電單價、聲譽、等待時間、評價等,記作score1, score2,...,scorek,各個因素的權(quán)重為 λ1, λ2,...,λk,本文使用加權(quán)綜合評分法對哈希學(xué)習(xí)篩選出的10個備選充電樁計算綜合評分,計算公式如下:
λ1 score1 + λ2 score2 + ...+ λk scoreks.t. λ1 + λ2 + ...+ λk = 1 (10)
通過式(10),我們計算出備選的10個充電樁的綜合評分,綜合評分最高的充電樁即為最優(yōu)充電樁。
3 實驗結(jié)果
充電樁推薦算法的第一步是獲取用戶準(zhǔn)確的地理位置,接著依據(jù)該位置獲取用戶一定范圍內(nèi)的充電樁。為了模擬海量數(shù)據(jù)的場景,本文隨機生成500~10 000個私人共享充電樁,將這些充電樁作為訓(xùn)練樣本。這些充電樁的用戶偏好因素也隨機生成,并將評分最高的因素作為該充電樁的類別標(biāo)簽,將上述數(shù)據(jù)輸入監(jiān)督離散哈希模型進(jìn)行訓(xùn)練。另一方面,本文隨機生成100~2 000個有充電需求的電動汽車,根據(jù)用戶偏好計算目標(biāo)充電樁所需的因素評分,并將其輸入本文提出的基于哈希學(xué)習(xí)的電動汽車充電樁推薦算法中,最終得出每個電動汽車的最佳充電樁。
圖2和圖3展示了本文提出的基于哈希學(xué)習(xí)的電動汽車充電樁推薦算法與傳統(tǒng)加權(quán)綜合評分方法在充電樁推薦時間上的比較結(jié)果。在圖2所示的實驗中,有充電需求的電動汽車為100輛,每輛車有20個用戶偏好因素,哈希編碼為8位。從圖中可以看出,隨著待匹配充電樁數(shù)量的增多,兩種算法的推薦耗時都在逐漸增加,但本文方法的耗時增量明顯少于傳統(tǒng)方法。
在圖3 所示的實驗中,待匹配的充電樁數(shù)量為5 000個,每輛車有20個用戶偏好因素,哈希編碼為8 位。從圖中可以看出,隨著需要充電的電動汽車數(shù)量的增多,傳統(tǒng)推薦方法的耗時呈指數(shù)級增長,而本文方法的耗時始終保持在較低的水平。這得益于二進(jìn)制哈希編碼通過漢明距離進(jìn)行相似度計算,顯著降低了時間復(fù)雜度。
4 結(jié)論
為了解決大數(shù)據(jù)場景下私人共享充電樁推薦算法的耗時問題,本文將哈希學(xué)習(xí)引入最優(yōu)充電樁推薦算法中。通過將充電樁的充電單價、聲譽、道路距離、用戶等待時間等用戶偏好因素用二進(jìn)制哈希編碼表示,可在漢明空間內(nèi)進(jìn)行特征匹配,從而顯著提高私人共享充電樁的推薦速度。隨著未來電動汽車和充電樁數(shù)據(jù)量的不斷增長,該算法的優(yōu)勢將愈發(fā)明顯。
在未來的工作中,我們將嘗試在推薦算法的準(zhǔn)確性方面進(jìn)行更深入的研究,并希望將哈希學(xué)習(xí)方法應(yīng)用于更多的大數(shù)據(jù)場景。
參考文獻(xiàn):
[1] 孫哲.基于跨鏈的可信高效共享充電服務(wù)研究[D].杭州:浙江工業(yè)大學(xué),2023.
[2] QIAO G H,LENG S P,ZENG M,et al.Matching game approachfor charging scheduling in vehicle-to-grid networks[C]//2017IEEE International Conference on Communications (ICC).May21-25,2017,Paris,F(xiàn)rance.IEEE,2017:1-6.
[3] 賈鑒,劉林峰,吳家皋.基于循環(huán)神經(jīng)網(wǎng)絡(luò)的空載電動出租車的充電樁推薦方法[J].網(wǎng)絡(luò)與信息安全學(xué)報,2020,6(6):152-163.
[4] LI Y J,SU S,ZHAO Y M,et al.Personalized navigation of elec?tric vehicle charging station based on collaborative filtering[C]//2019 IEEE Sustainable Power and Energy Conference (iSPEC).November 21-23,2019,Beijing,China.IEEE,2019:849-855.
[5] 李武軍,周志華.大數(shù)據(jù)哈希學(xué)習(xí):現(xiàn)狀與趨勢[J].科學(xué)通報,2015,60(5):485-490.
[6] 周志華.機器學(xué)習(xí)[M].北京:清華大學(xué)出版社,2016.
[7] 徐暉.基于哈希學(xué)習(xí)的遙感圖像目標(biāo)檢測及應(yīng)用[D].南京:南京理工大學(xué),2017.
[8] LIU W,WANG J,JI R R,et al.Supervised hashing with kernels[C]//2012 IEEE Conference on Computer Vision and PatternRecognition.June 16-21,2012,Providence,RI,USA.IEEE,2012:2074-2081.
[9] SHEN F M,SHEN C H,LIU W,et al.Supervised discrete hashing[C]//2015 IEEE Conference on Computer Vision and PatternRecognition (CVPR).June 7-12,2015,Boston,MA,USA.IEEE,2015:37-45.
[10] KANG W C,LI W J,ZHOU Z H,et al.Column sampling baseddiscrete supervised hashing[C]//Proceedings of the ThirtiethAAAI Conference on Artificial Intelligence.February 12 - 17,2016,Phoenix,Arizona.ACM,2016:1230-1236.
[11] BERCEA I O,BERETTA L,KLAUSEN J,et al.Locally uniformhashing[C]//2023 IEEE 64th Annual Symposium on Founda?tions of Computer Science (FOCS).November 6-9,2023,SantaCruz,CA,USA.IEEE,2023:1440-1470.
[12] LI X F.Non-relaxation deep hashing method for fast image re?trieval[J].IEEE Access,2023(11):17684-17692.
[13] MENG L, ZHANG Q, YANG R, et al. Unsupervised deep trip?let hashing for image retrieval[J]. IEEE Signal Processing Let?ters, 2024(31): 1489-1493.
【通聯(lián)編輯:唐一東】
基金項目:南京理工大學(xué)紫金學(xué)院校級科學(xué)研究項目(2023ZRKX0401010)