劉宇松
摘 要:Web代理緩存對(duì)提高萬(wàn)維網(wǎng)的性能起著關(guān)鍵性的作用。然而,在確定哪些Web對(duì)象在隨后的網(wǎng)絡(luò)訪問(wèn)中會(huì)被再一次訪問(wèn)非常困難,這仍然是現(xiàn)有Web代理緩存技術(shù)所面臨的一個(gè)大問(wèn)題。利用支持向量機(jī)對(duì)Web代理日志數(shù)據(jù)的學(xué)習(xí),可以很好地解決Web代理緩存技術(shù)的相關(guān)問(wèn)題,從而使代理緩存的利用率更高。
關(guān)鍵詞:支持向量機(jī);代理緩存;高維度空間;Web緩存技術(shù)
中圖分類(lèi)號(hào):TP333 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.15913/j.cnki.kjycx.2016.21.099
網(wǎng)絡(luò)對(duì)我們的生活產(chǎn)生了巨大的影響。在許多領(lǐng)域,比如教育、娛樂(lè)、醫(yī)學(xué)等,網(wǎng)絡(luò)已經(jīng)成為一個(gè)十分有用的工具。這些跡象表明,互聯(lián)網(wǎng)用戶的快速增長(zhǎng),導(dǎo)致互聯(lián)網(wǎng)經(jīng)?!皳矶隆?,最終,互聯(lián)網(wǎng)用戶受到了緩慢的響應(yīng)時(shí)間的影響,尤其是在瀏覽特別流行的網(wǎng)站。最流行的基于軟件的解決方案是Web緩存技術(shù),Web緩存有3個(gè)層次,分別是客戶端層、代理層和原始服務(wù)器層。代理服務(wù)器在用戶與網(wǎng)站之間起著紐帶作用,它可以縮短用戶請(qǐng)求的響應(yīng)時(shí)間,節(jié)省網(wǎng)絡(luò)帶寬。因此,為了實(shí)現(xiàn)更短的響應(yīng)時(shí)間,一個(gè)有效的緩存應(yīng)該建立在代理服務(wù)器上。
由于緩存空間的限制,需要一個(gè)智能的方式來(lái)有效管理Web緩存內(nèi)容。傳統(tǒng)的緩存策略是無(wú)效的,因?yàn)槠渲豢紤]一個(gè)因素,而忽略了其他對(duì)Web緩存效率有影響得因素。因此,現(xiàn)在有許多緩存策略提出,并獲得了很好的效果。
支持向量機(jī)是一種監(jiān)督式的學(xué)習(xí)方法,它有許多良好的品質(zhì),使其成為了最流行的算法之一,在許多分類(lèi)應(yīng)用中,比如文本分類(lèi)、網(wǎng)頁(yè)分類(lèi)等的應(yīng)用比其他算法更快、更準(zhǔn)確。
本文提出了用支持向量機(jī)來(lái)預(yù)測(cè)稍后可重新訪問(wèn)的Web對(duì)象,將這些預(yù)測(cè)的Web對(duì)象存儲(chǔ)在代理緩存空間上,以更有效地利用代理緩存空間。
1 支持向量機(jī)
支持向量機(jī)(Support Vector Machine,SVM)是Corinna Cortes和Vapnik等人于1995年首先提出的,其在解決小樣本、非線性及高維模式識(shí)別中表現(xiàn)出許多特有的優(yōu)勢(shì),并能推廣應(yīng)用到函數(shù)擬合等其他機(jī)器的學(xué)習(xí)中。
支持向量機(jī)的主要思想是使用一個(gè)高維度空間,在這個(gè)空間中找到一個(gè)錯(cuò)誤率最小的超平面,進(jìn)而用來(lái)對(duì)兩個(gè)類(lèi)進(jìn)行二元?jiǎng)澐?。支持向量機(jī)是一個(gè)學(xué)習(xí)模型,需要通過(guò)學(xué)習(xí)來(lái)運(yùn)行。在學(xué)習(xí)階段,支持向量機(jī)學(xué)會(huì)發(fā)現(xiàn)幾個(gè)代表學(xué)習(xí)數(shù)據(jù)的支持向量。因此,支持向量機(jī)根據(jù)學(xué)習(xí)模型對(duì)一個(gè)給定的未知的數(shù)據(jù)集進(jìn)行分類(lèi)。
然而,對(duì)于許多現(xiàn)實(shí)生活中的問(wèn)題,想要找到一個(gè)超平面的數(shù)據(jù)進(jìn)行分類(lèi)很困難。對(duì)于處理非線性可分?jǐn)?shù)據(jù),在線性情況下仍然可使用相同的公式和方法,輸入的數(shù)據(jù)只從其原始空間轉(zhuǎn)換到另一個(gè)高維度空間。在這個(gè)空間里,一個(gè)線性決策邊界可以分離出正面和負(fù)面樣本,我們將這個(gè)空間稱(chēng)為特征空間。因此,支持向量機(jī)的基本思想是將輸入空間中的數(shù)據(jù)通過(guò)一個(gè)非線性映射將數(shù)據(jù)映射到一個(gè)特征空間里。
綜上所述,非線性決策邊界通過(guò)轉(zhuǎn)換將原始數(shù)據(jù)轉(zhuǎn)換到一個(gè)更高維度的特征空間中。然而,這種轉(zhuǎn)換卻從來(lái)都沒(méi)有明確的實(shí)施過(guò)。相反,支持向量機(jī)的核心函數(shù)在學(xué)習(xí)過(guò)程中不需要了解變換功能就可以計(jì)算所有的數(shù)據(jù)點(diǎn)。支持向量機(jī)有多個(gè)核心函數(shù)供用戶選擇,以解決不同的問(wèn)題。不同的核心函數(shù)適用于不同的問(wèn)題類(lèi)型。
2 基于支持向量機(jī)的分類(lèi)方法
本文提出一個(gè)基于支持向量機(jī)的對(duì)Web代理緩存內(nèi)容進(jìn)行分類(lèi)的分類(lèi)器方法框架,如圖1所示。該方法包括數(shù)據(jù)收集、預(yù)處理和學(xué)習(xí)階段。因此,Web緩存是可以通過(guò)經(jīng)過(guò)學(xué)習(xí)的支持向量機(jī)分類(lèi)器來(lái)管理的。
2.1 數(shù)據(jù)收集
Web代理日志文件可以提供用戶在登錄到服務(wù)器后所進(jìn)行的一切操作信息。筆者認(rèn)為,Web代理日志文件是完整的知識(shí)體系,是可以作為學(xué)習(xí)數(shù)據(jù)來(lái)使用的,可有效預(yù)測(cè)下一個(gè)Web對(duì)象。
2.2 數(shù)據(jù)預(yù)處理
在支持向量機(jī)學(xué)習(xí)階段之前,需要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,使數(shù)據(jù)可被支持向量機(jī)學(xué)習(xí)。數(shù)據(jù)預(yù)處理包括數(shù)據(jù)跟蹤準(zhǔn)備和數(shù)據(jù)集準(zhǔn)備兩方面。
由于在日志文件中有一些無(wú)效的條目和不相關(guān)的條目,在數(shù)據(jù)跟蹤準(zhǔn)備時(shí)需要?jiǎng)h除這些條目。數(shù)據(jù)跟蹤準(zhǔn)備分為以下3步:①數(shù)據(jù)分析。明確日志文件中連續(xù)記錄之間的邊界以及每條記錄中的不同字段。②數(shù)據(jù)過(guò)濾。了解不相關(guān)的輸入,比如非緩存請(qǐng)求、錯(cuò)誤的HTTP狀態(tài)碼輸入等,只考慮正確的輸入。③數(shù)據(jù)定型。消除不必要的字段,將數(shù)據(jù)確定為最終適合支持向量機(jī)學(xué)習(xí)的格式。
2.3 學(xué)習(xí)階段
支持向量機(jī)已被廣泛應(yīng)用于解決各種分類(lèi)問(wèn)題中。在核心函數(shù)學(xué)習(xí)的幫助下,支持向量機(jī)已經(jīng)應(yīng)用到了許多領(lǐng)域中,并取得了成功。
3 結(jié)束語(yǔ)
Web緩存是提高Web系統(tǒng)可擴(kuò)展性的有效解決方案之一。本文提出了基于支持向量機(jī)的預(yù)測(cè)Web對(duì)象的智能方案,用支持向量機(jī)預(yù)測(cè)Web對(duì)象隨后是否可以重新訪問(wèn)。因此,支持向量機(jī)可以有效地優(yōu)化代理緩存的使用,具有良好的性能。
參考文獻(xiàn)
[1]郎宇寧,藺娟如.基于支持向量機(jī)的多分類(lèi)方法研究[J].中國(guó)西部科技,2010(17).
[2]劉成忠.兩種不確定支持向量機(jī)分類(lèi)性能的對(duì)比研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2011(11).
[3]張松蘭.支持向量機(jī)的算法及應(yīng)用綜述[J].江蘇理工學(xué)院學(xué)報(bào),2016(02).
[4]張超群.代理緩存關(guān)鍵技術(shù)的研究[J].計(jì)算機(jī)工程與科學(xué),2007(02).
〔編輯:張思楠〕