本發(fā)明涉及通信領(lǐng)域的設(shè)備識別技術(shù),尤其涉及一種終端識別方法和識別服務(wù)器。
背景技術(shù):
隨著蜂窩通信技術(shù)的發(fā)展,用戶友好型移動終端類型越來越多,能夠應(yīng)用于移動終端的應(yīng)用也越來越多,移動終端已經(jīng)成為人們生活不可或缺的一部分。
由于移動終端的廣泛應(yīng)用,使得通信網(wǎng)絡(luò)中進(jìn)行傳輸?shù)木W(wǎng)頁數(shù)據(jù)較多,但是不同的移動終端能夠接收和處理的網(wǎng)頁類型可能不同,使用不同移動終端的用戶的使用習(xí)慣也不同,例如,有些使用諾基亞的用戶喜歡瀏覽美食類網(wǎng)頁,有些使用三星的用戶喜歡瀏覽體育網(wǎng)頁,還有些使用蘋果的用戶喜歡瀏覽娛樂網(wǎng)頁。運(yùn)營商為了精準(zhǔn)的為使用不同類型移動終端的用戶提供不同的服務(wù),需要根據(jù)用戶的瀏覽歷史識別移動終端的類型。具體的,識別服務(wù)器可以從海量的超文本傳輸協(xié)議(hypertexttransferprotocol,http)請求報頭的跟蹤區(qū)域(trackingareacode,tac)碼中檢索不同網(wǎng)頁對應(yīng)的移動終端類型。為了實(shí)現(xiàn)從ua信息中檢索移動終端類型,標(biāo)準(zhǔn)組織制定了兩種規(guī)范,一種是萬維網(wǎng)聯(lián)合會制定的cc/pp標(biāo)準(zhǔn),另一種是利用開放移動聯(lián)盟制定的cc/pp詞典。根據(jù)這兩種規(guī)范設(shè)置的移動終端的格式,可以被識別服務(wù)器識別。
但是,基于cc/pp標(biāo)準(zhǔn)規(guī)范檢索移動終端信息的方法需要限定http中攜帶移動終端類型的字節(jié)位置以及移動終端類型的書寫方式,由于市場多樣性,很多移動終端并不遵循cc/pp標(biāo)準(zhǔn)規(guī)范,使得終端識別的準(zhǔn)確率較低。
技術(shù)實(shí)現(xiàn)要素:
為解決上述技術(shù)問題,本發(fā)明實(shí)施例期望提供一種終端識別方法和識別服務(wù)器,能夠提高終端識別的準(zhǔn)確率。
本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
一方面,本發(fā)明實(shí)施例提供一種終端識別方法,包括:
獲取現(xiàn)網(wǎng)中的超文本傳輸協(xié)議http訪問日志,所述http訪問日志包括跟蹤區(qū)域碼tac和用戶代理ua信息;
根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞;
當(dāng)所述http訪問日志的ua信息中存在所述關(guān)鍵詞時,確定所述關(guān)鍵詞為所述http訪問日志對應(yīng)的終端類型標(biāo)識。
可選的,在所述獲取現(xiàn)網(wǎng)中的http訪問日志之前,所述方法包括:
從現(xiàn)網(wǎng)中采集多條http訪問日志,每條http訪問日志包括tac碼和ua信息,每個ua信息包括多個ua元素;
根據(jù)每條http訪問日志的tac碼和ua信息中ua元素,組成第一屬性對集合,所述第一屬性對集合包括多個屬性對,每個屬性對包括一個tac碼和與所述tac碼對應(yīng)的ua信息中的一個ua元素;
根據(jù)所述第一屬性對集合,獲取每個tac碼的關(guān)鍵詞,并建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,tac碼的關(guān)鍵詞為所述tac碼對應(yīng)的ua信息中的一個ua元素。
可選的,所述根據(jù)所述第一屬性對集合,獲取每個tac碼的關(guān)鍵詞包括:
計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的杰卡德jacard系數(shù);
選擇每個tac碼對應(yīng)的jacard系數(shù)最大的屬性對包括的ua元素作為對應(yīng)tac碼的關(guān)鍵詞。
可選的,在所述計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)之前,所述方法還包括:
根據(jù)預(yù)設(shè)詞典,篩除所述第一屬性對集合中與終端類型無關(guān)的ua元素對應(yīng)的屬性對,獲取第二屬性對集合;
所述計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)包括:
計(jì)算所述第二屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)。
可選的,在所述計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)之前,所述方法還包括:
計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的相關(guān)系數(shù);
按照所述相關(guān)系數(shù)的由大到小,排列每個tac碼對應(yīng)的屬性對;
選擇排列后每個tac碼對應(yīng)的前預(yù)設(shè)數(shù)量個屬性對組成第三屬性對集合;
所述計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)包括:
計(jì)算所述第三屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)。
另一方面,本發(fā)明實(shí)施例提供一種識別服務(wù)器,包括:
第一獲取單元,用于獲取現(xiàn)網(wǎng)中的超文本傳輸協(xié)議http訪問日志,所述http訪問日志包括跟蹤區(qū)域碼tac和用戶代理ua信息;
第一確定單元,用于根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞;
第二確定單元,用于當(dāng)所述http訪問日志的ua信息中存在所述關(guān)鍵詞時,確定所述關(guān)鍵詞為所述http訪問日志對應(yīng)的終端類型標(biāo)識。
可選的,所述服務(wù)器包括:
采集單元,用于從現(xiàn)網(wǎng)中采集多條http訪問日志,每條http訪問日志包括tac碼和ua信息,每個ua信息包括多個ua元素;
組成單元,用于根據(jù)每條http訪問日志的tac碼和ua信息中ua元素,組成第一屬性對集合,所述第一屬性對集合包括多個屬性對,每個屬性對包括一個tac碼和與所述tac碼對應(yīng)的ua信息中的一個ua元素;
第二獲取單元,用于根據(jù)所述第一屬性對集合,獲取每個tac碼的關(guān)鍵詞,并建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,tac碼的關(guān)鍵詞為所述tac碼對應(yīng)的ua信息中的一個ua元素。
可選的,所述第二獲取單元具體用于:
計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的杰卡德jacard系數(shù);
選擇每個tac碼對應(yīng)的jacard系數(shù)最大的屬性對包括的ua元素作為對應(yīng)tac碼的關(guān)鍵詞。
可選的,所述服務(wù)器還包括:
篩選單元,用于根據(jù)預(yù)設(shè)詞典,篩除所述第一屬性對集合中與終端類型無關(guān)的ua元素對應(yīng)的屬性對,獲取第二屬性對集合;
所述第二獲取單元具體用于:
計(jì)算所述第二屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)。
可選的,所述服務(wù)器還包括:
計(jì)算單元,用于計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的相關(guān)系數(shù);
排列單元,用于按照所述相關(guān)系數(shù)的由大到小,排列每個tac碼對應(yīng)的屬性對;
選擇單元,用于選擇排列后每個tac碼對應(yīng)的前預(yù)設(shè)數(shù)量個屬性對組成第三屬性對集合;
所述第二獲取單元具體用于:
計(jì)算所述第三屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)。
本發(fā)明實(shí)施例提供了一種終端識別方法和識別服務(wù)器,所述終端識別方法包括:獲取現(xiàn)網(wǎng)中的超文本傳輸協(xié)議http訪問日志,所述http訪問日志包括跟蹤區(qū)域碼tac和用戶代理ua信息;根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞;當(dāng)所述http訪問日志的ua信息中存在所述關(guān)鍵詞時,確定所述關(guān)鍵詞為所述http訪問日志對應(yīng)的終端類型標(biāo)識。相較于現(xiàn)有技術(shù),可以預(yù)先建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,然后根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞,即使有的終端未按照標(biāo)準(zhǔn)使用tac碼,也能夠根據(jù)tac碼的關(guān)鍵詞確定http訪問日志對應(yīng)的終端類型,提高了終端識別的準(zhǔn)確率。
附圖說明
圖1為本發(fā)明實(shí)施例提供的一種終端識別方法的流程示意圖1;
圖2為本發(fā)明實(shí)施例提供的一種終端識別方法的流程示意圖2;
圖3為本發(fā)明實(shí)施例提供的一種http訪問日志的格式示意圖;
圖4為本發(fā)明實(shí)施例提供的一種識別服務(wù)器的結(jié)構(gòu)示意圖1;
圖5為本發(fā)明實(shí)施例提供的一種識別服務(wù)器的結(jié)構(gòu)示意圖2;
圖6為本發(fā)明實(shí)施例提供的一種識別服務(wù)器的結(jié)構(gòu)示意圖3;
圖7為本發(fā)明實(shí)施例提供的一種識別服務(wù)器的結(jié)構(gòu)示意圖4。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述。
實(shí)施例一
本發(fā)明實(shí)施例提供一種終端識別方法,應(yīng)用于識別服務(wù)器,如圖1所示,包括:
步驟101、獲取現(xiàn)網(wǎng)中的超文本傳輸協(xié)議http訪問日志,所述http訪問日志包括跟蹤區(qū)域碼tac和用戶代理ua信息。
示例的,終端訪問網(wǎng)絡(luò)時,會產(chǎn)生很多http訪問日志,每條http訪問日志包括tac碼和用戶代理(useragent,ua)信息,其中ua信息作為確定終端的協(xié)議字段,包含了關(guān)于瀏覽器標(biāo)識,終端類型標(biāo)識,操作系統(tǒng)標(biāo)識及其他硬件軟件信息的配置詳情。所述終端可以是手機(jī),pos機(jī),平板電腦等能夠?yàn)g覽網(wǎng)頁的設(shè)備,本發(fā)明實(shí)施例對此不做限定。
步驟102、根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞。
示例的,可以預(yù)先建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,所述tac碼和關(guān)鍵詞的對應(yīng)關(guān)系反應(yīng)了統(tǒng)計(jì)得出的現(xiàn)網(wǎng)中與每個tac碼最相關(guān)的關(guān)鍵詞,由于每條http訪問日志中至少包括tac碼和終端類型標(biāo)識,因此tac碼和關(guān)鍵詞的對應(yīng)關(guān)系表現(xiàn)了每個tac碼和與其最相關(guān)的終端類型標(biāo)識之間的對應(yīng)關(guān)系。當(dāng)識別服務(wù)器從現(xiàn)網(wǎng)中隨機(jī)采集一條http訪問日志后,可以首先獲取該http訪問日志的tac碼,然后查詢tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定該tac碼對應(yīng)的關(guān)鍵詞。
步驟103、當(dāng)所述http訪問日志的ua信息中存在所述關(guān)鍵詞時,確定所述關(guān)鍵詞為所述http訪問日志對應(yīng)的終端類型標(biāo)識。
實(shí)際應(yīng)用中,一些廠商可能采用其他終端的tac碼作為自己產(chǎn)品的tac碼,這樣就會導(dǎo)致同樣的tac碼對應(yīng)兩個終端類型的情況,即根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定出的tac碼對應(yīng)的關(guān)鍵詞不一定指示了該http訪問日志的終端類型,因此可以首先確定http訪問日志的ua信息中是否存在所述關(guān)鍵詞,當(dāng)http訪問日志的ua信息中存在所述關(guān)鍵詞時,說明該http訪問日志的終端類型即為關(guān)鍵詞指示的終端類型;當(dāng)http訪問日志的ua信息中不存在所述關(guān)鍵詞時,說明該http訪問日志的終端類型可能不是關(guān)鍵詞指示的終端類型。
這樣一來,可以預(yù)先建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,然后根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞,即使有的終端未按照標(biāo)準(zhǔn)使用tac碼,也能夠根據(jù)tac碼的關(guān)鍵詞確定http訪問日志對應(yīng)的終端類型,提高了終端識別的準(zhǔn)確率。
進(jìn)一步的,在所述獲取現(xiàn)網(wǎng)中的http訪問日志之前,可以首先從現(xiàn)網(wǎng)中采集多條http訪問日志,每條http訪問日志包括tac碼和ua信息,每個ua信息包括多個ua元素,然后根據(jù)每條http訪問日志的tac碼和ua信息中ua元素,組成第一屬性對集合,所述第一屬性對集合包括多個屬性對,每個屬性對包括一個tac碼和與所述tac碼對應(yīng)的ua信息中的一個ua元素;進(jìn)而根據(jù)所述第一屬性對集合,獲取每個tac碼的關(guān)鍵詞,并建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,tac碼的關(guān)鍵詞為所述tac碼對應(yīng)的ua信息中的一個ua元素。
示例的,按照慣例,多個ua元素會按照其辨識應(yīng)用的重要性的順序來排列,而且各ua元素之間按照一些保留格式進(jìn)行字符斷詞。因此,我們可以采用基于規(guī)則的啟發(fā)式關(guān)鍵詞提取方法來實(shí)現(xiàn)ua元素的提取,例如根據(jù)預(yù)設(shè)字符截取ua信息中的ua元素。在獲取到多個tac碼以及每個tac碼對應(yīng)的ua信息中的ua元素后,按照一個tac碼一個ua元素的格式組成屬性對,假設(shè)識別服務(wù)器共獲取到三條http訪問日志,第一條http訪問日志的tac碼為第一tac碼,ua信息中包括4個ua元素;第二條http訪問日志的tac碼為第二tac碼,ua信息中包括5個ua元素;第三條http訪問日志的tac碼為第三tac碼,ua信息中包括3個ua元素,第一條http訪問日志對應(yīng)四個屬性對,所述四個屬性對為第一tac碼分別與4個ua元素組成的,第二條http訪問日志對應(yīng)五個屬性對,所述五個屬性對為第二tac碼分別與5個ua元素組成的,第三條http訪問日志對應(yīng)三個屬性對,所述三個屬性對為第三tac碼分別與3個ua元素組成的。此時第一屬性對集合中共有4+5+3=12個屬性對。
可選的,在根據(jù)所述第一屬性對集合,獲取每個tac碼的關(guān)鍵詞時,可以首先計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的杰卡德jacard系數(shù),然后選擇每個tac碼對應(yīng)的jacard系數(shù)最大的屬性對包括的ua元素作為對應(yīng)tac碼的關(guān)鍵詞。
示例的,所述jaccard系數(shù)又稱為jaccard相似性系數(shù),用來比較樣本集中的相似性和分散性的概率,等于樣本集交集與樣本集合集的比值,即j=|a∩b|/|a∪b|。當(dāng)tac碼和ua元素完全無關(guān)時,其jacard系數(shù)為最低值0,當(dāng)兩者是完全相同的概念時,其jacard系數(shù)為最高值1。因此當(dāng)tac碼和ua元素相關(guān)性越高,則jacard系數(shù)會越高,并逼近于1。當(dāng)選擇每個tac碼對應(yīng)的jacard系數(shù)最大的屬性對包括的ua元素作為對應(yīng)tac碼的關(guān)鍵詞時,說明該關(guān)鍵詞是與該tac碼最相關(guān)的ua元素,該tac碼對應(yīng)的每條http訪問日志的ua信息中可能都會出現(xiàn)該關(guān)鍵詞,因此該關(guān)鍵詞最可能是tac碼對應(yīng)的每條http訪問日志的ua信息中的終端類型標(biāo)識。
進(jìn)一步的,在所述計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)之前,還可以根據(jù)預(yù)設(shè)詞典,篩除所述第一屬性對集合中與終端類型無關(guān)的ua元素對應(yīng)的屬性對,獲取第二屬性對集合,然后計(jì)算所述第二屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)。
示例的,由于識別服務(wù)器可能在現(xiàn)網(wǎng)中獲取到海量的http訪問日志,因此第一屬性對集合包括的屬性對數(shù)量非常龐大,如果計(jì)算第一屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù),會造成非常大的計(jì)算量,因此可以預(yù)先進(jìn)行篩選??蛇x的,由于ua信息中還可能出現(xiàn)一些與終端類型無關(guān)的ua元素,例如瀏覽器標(biāo)識,終端操作系統(tǒng)標(biāo)識,或者一些隨機(jī)數(shù)字等,因此可以設(shè)置預(yù)設(shè)詞典,所述預(yù)設(shè)詞典中預(yù)先存儲一些與終端類型無關(guān)的詞匯。當(dāng)獲取到第一屬性對集合后,可以首先根據(jù)預(yù)設(shè)詞典,篩除所述第一屬性對集合中與終端類型無關(guān)的ua元素對應(yīng)的屬性對,獲取第二屬性對集合,減少屬性對的數(shù)量,然后計(jì)算第二屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù),由于屬性對數(shù)量的減少,使得計(jì)算jacard系數(shù)時的計(jì)算量減小,節(jié)約了計(jì)算資源。
進(jìn)一步的,在所述計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)之前,還可以計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的相關(guān)系數(shù),按照所述相關(guān)系數(shù)的由大到小,排列每個tac碼對應(yīng)的屬性對,然后選擇排列后每個tac碼對應(yīng)的前預(yù)設(shè)數(shù)量個屬性對組成第三屬性對集合,并計(jì)算所述第三屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)。
示例的,還可以通過計(jì)算相關(guān)系數(shù)的方法減小屬性對的數(shù)量。具體的,可以預(yù)先計(jì)算第一屬性對集合中每個屬性對包括的tac碼和ua元素的相關(guān)系數(shù),然后按照相關(guān)系數(shù)的由大到小選取每個tac碼前預(yù)設(shè)數(shù)量的屬性對組成第三屬性對集合,然后計(jì)算第三屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù),由于屬性對數(shù)量的減少,使得計(jì)算jacard系數(shù)時的計(jì)算量減小,節(jié)約了計(jì)算資源。
本發(fā)明實(shí)施例提供了一種終端識別方法,包括:獲取現(xiàn)網(wǎng)中的超文本傳輸協(xié)議http訪問日志,所述http訪問日志包括跟蹤區(qū)域碼tac和用戶代理ua信息;根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞;當(dāng)所述http訪問日志的ua信息中存在所述關(guān)鍵詞時,確定所述關(guān)鍵詞為所述http訪問日志對應(yīng)的終端類型標(biāo)識。相較于現(xiàn)有技術(shù),可以預(yù)先建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,然后根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞,即使有的終端未按照標(biāo)準(zhǔn)使用tac碼,也能夠根據(jù)tac碼的關(guān)鍵詞確定http訪問日志對應(yīng)的終端類型,提高了終端識別的準(zhǔn)確率。
實(shí)施例二
本發(fā)明實(shí)施例提供一種終端識別方法,應(yīng)用于識別服務(wù)器,如圖2所示,所述終端識別方法包括:
步驟201、獲取每條http訪問日志包括的tac碼和ua信息。
示例的,終端訪問網(wǎng)絡(luò)時,會產(chǎn)生很多http訪問日志,每條http訪問日志包括tac碼和ua信息,其中ua信息作為確定終端的協(xié)議字段,包含了關(guān)于瀏覽器標(biāo)識,終端類型標(biāo)識,操作系統(tǒng)標(biāo)識及其他硬件軟件信息的配置詳情。具體的,如圖3所示,國際移動設(shè)備標(biāo)識(internationalmobileequipmentidentity,imei)的前八位為tac碼,所述tac碼可以反映終端類型;browser表示瀏覽器標(biāo)識;model表示移動終端類型標(biāo)識;operatingsystem表示終端的操作系統(tǒng)標(biāo)識;uiplatform表示用戶界面平臺。由上述內(nèi)容可知,http訪問日志中tac碼和model都可以反映終端類型。如果按照tac碼識別終端類型,要求每個終端都要按照規(guī)范生成對應(yīng)的tac碼,由于市場的多樣化,很多終端廠家都不遵循國際規(guī)范,往往是選擇任意的八位數(shù)作為tac碼,或者直接采用其他終端的tac碼作為本廠產(chǎn)品的tac碼,導(dǎo)致實(shí)際應(yīng)用中終端類型識別不準(zhǔn)確。如果根據(jù)model識別終端類型,由于每條http訪問日志包括的內(nèi)容較多,且model出現(xiàn)的位置都不一樣,因此很難進(jìn)行定位識別。
步驟202、根據(jù)所述每條http訪問日志包括的tac碼和ua信息,獲取第一屬性對集合。
示例的,根據(jù)標(biāo)準(zhǔn)的寬泛指南,記錄在http請求中的ua信息是帶有ua元素的產(chǎn)品標(biāo)記列表。按照慣例,多個ua元素會按照其辨識應(yīng)用的重要性的順序來排列,而且各ua元素之間按照一些保留格式進(jìn)行字符斷詞。因此,我們可以采用基于規(guī)則的啟發(fā)式關(guān)鍵詞提取方法來實(shí)現(xiàn)ua元素的提取。假設(shè)http訪問日志為“3557040223817613nokia5320/ucweb8.1.104/28/999”,該條http訪問日志包括的ua信息中各ua元素之間采用分隔符“/”隔開,因此可以按照分隔符“/”提取ua信息中的ua元素,該ua信息包括的ua元素為“nokia5320”,“ucweb8.1.104”,“28”,“999”。由該條http訪問日志的imei的前八位可知tac碼為“35570402”。根據(jù)tac碼“35570402”和四個ua元素“nokia5320”,“ucweb8.1.104”,“28”,“999”可以組成四個屬性對,分別為<35570402,nokia5320>,<35570402,ucweb8.1.104>,<35570402,28>,<35570402,999>。對于獲取到的每一條http訪問日志均按照上述方法進(jìn)行處理,即可得到第一屬性對集合。
步驟203、通過預(yù)設(shè)詞典,篩除所述第一屬性對集合中與終端類型無關(guān)的ua元素對應(yīng)的屬性對,獲取第二屬性對集合。
示例的,在海量網(wǎng)絡(luò)數(shù)據(jù)環(huán)境中持續(xù)變化的應(yīng)用和不可預(yù)測的行為可以產(chǎn)生豐富的ua信息,每條ua信息包括多個ua元素,并不是每個ua元素都與終端類型密切相關(guān),其中有一些ua元素可能僅是一些網(wǎng)頁數(shù)據(jù),或者隨機(jī)產(chǎn)生的數(shù)字,因此可以將與終端類型完全不相關(guān)的ua元素對應(yīng)的屬性對篩除。具體的,可以設(shè)置預(yù)設(shè)詞典,所述預(yù)設(shè)詞典包括與終端類型完全不相關(guān)的詞匯,例如數(shù)字,無意義的代碼,各個操作系統(tǒng)的名稱等詞匯。實(shí)際應(yīng)用中,所述預(yù)設(shè)詞典可以是初始化時根據(jù)經(jīng)驗(yàn)設(shè)置的,也可以在應(yīng)用的過程中根據(jù)具體情況添加或修改。根據(jù)該預(yù)設(shè)詞典,可以將第一屬性對集合中與終端類型完全不相關(guān)的ua元素對應(yīng)的屬性對篩除,得到第二屬性對集合,減小了獲取終端類型對應(yīng)的關(guān)鍵詞的計(jì)算量,進(jìn)而節(jié)約了計(jì)算資源,節(jié)省了處理時間。
步驟204、計(jì)算第二屬性對集合包括的每個屬性對中tac碼和ua元素的相關(guān)系數(shù)。
示例的,假設(shè)第二屬性對集合包括m個屬性對,所述m個屬性對包括的tac碼為p個,ua元素為q個,則第二屬性對集合的全域r可以表示為:
r={<r1(t),r1(k)>,…,<ri(t),ri(k)>,…,<rp(t),rp(k)>};
其中,所述r1(t)至rp(t)表示第二屬性對集合包括的p個tac碼,分別采用t1至tp表示,r1(k)表示tac碼t1對應(yīng)的多個ua元素組成的向量;ri(k)表示tac碼ti對應(yīng)的多個ua元素組成的向量;同樣的,rp(k)表示tac碼tp對應(yīng)的多個ua元素組成的向量;所述i大于或等于1小于或等于p。tac碼ti對應(yīng)的屬性對可以表示為<ti,kj>;所述j大于或等于1,小于或等于q。較佳的,可以采用概率方法來衡量關(guān)鍵詞和設(shè)備類型之間的相關(guān)性。例如,以屬性對<ti,kj>為例,可以將條件概率p(kj|ti)定義為kj和ti之間的相關(guān)系數(shù),根據(jù)公式(1)計(jì)算p(kj|ti):
所述公式(1)為:
其中,可以根據(jù)公式(2)計(jì)算p(ti,kj),所述公式(2)為
根據(jù)上述公式,可以依次計(jì)算出每個tac碼和與其對應(yīng)的ua元素的相關(guān)系數(shù)。
步驟205、按照相關(guān)系數(shù)的由大到小,排列所述第二屬性對集合中每個tac碼對應(yīng)的屬性對的順序。
示例的,依次計(jì)算出tac碼t1和與其對應(yīng)的多個ua元素之間的相關(guān)系數(shù);tac碼t2和與其對應(yīng)的多個ua元素之間的相關(guān)系數(shù);直到計(jì)算出tac碼tp和與其對應(yīng)的多個ua元素之間的相關(guān)系數(shù)。然后按照相關(guān)系數(shù)的由大到小,依次排列每個tac碼對應(yīng)的屬性對的順序。例如,按照相關(guān)系數(shù)的由大到小,排列tac碼t1對應(yīng)的屬性對的順序;按照相關(guān)系數(shù)的由大到小,排列tac碼t2對應(yīng)的屬性對的順序;同樣的,按照相關(guān)系數(shù)的由大到小,排列tac碼tp對應(yīng)的屬性對的順序。
步驟206、獲取排列后第二屬性對集合中每個tac碼對應(yīng)的前預(yù)設(shè)數(shù)量的屬性對組成第三屬性對集合。
示例的,若tac碼與某一個ua元素之間的相關(guān)系數(shù)較小,說明該ua元素可能不是ua信息表示終端類型的可選元素,可以將該ua元素和該tac碼對應(yīng)的屬性對刪除。實(shí)際應(yīng)用中,可以設(shè)置預(yù)設(shè)數(shù)量,然后獲取按照相關(guān)系數(shù)的由大到小排列后的每個tac碼對應(yīng)的前預(yù)設(shè)數(shù)量的屬性對組成第三屬性對集合。例如,假設(shè)預(yù)設(shè)數(shù)量為5,則可以依次獲取tac碼t1的前5個的屬性對,tac碼t2的前5個的屬性對,同樣的,可以獲取tac碼tp的前5個的屬性對,然后將獲取得到的屬性對組成第三屬性對集合。
步驟207、獲取第三屬性對集合包括的所有tac碼組成tac集合,tac碼對應(yīng)的ua元素組成該tac碼的可選詞集合。
示例的,第三屬性對集合的全域w可以表示為:
w={<r1(t),r1(g)>,…,<ri(t),ri(g)>,…,<rp(t),rp(g)>};
其中,所述r1(t)至rp(t)表示第二屬性對集合包括的p個tac碼,r1(g)表示tac碼t1對應(yīng)的預(yù)設(shè)數(shù)量個ua元素組成的向量;ri(g)表示tac碼ti對應(yīng)的預(yù)設(shè)數(shù)量個ua元素組成的向量;同樣的,rp(g)表示tac碼tp對應(yīng)的預(yù)設(shè)數(shù)量個ua元素組成的向量;所述i大于或等于1小于或等于p。
步驟208、計(jì)算tac碼與對應(yīng)的每個ua元素之間的jacard系數(shù)。
示例的,為了在每個tac碼對應(yīng)的預(yù)設(shè)數(shù)量個ua元素中確定能夠唯一代表tac碼的關(guān)鍵詞,可以依次計(jì)算第三屬性對集合中每個tac碼和與其對應(yīng)的ua元素之間的jacard系數(shù)。例如,假設(shè)預(yù)設(shè)數(shù)量為5,以屬性對<ti,gz>為例,所述z大于或等于1,小于或等于5,可以根據(jù)公式(4)計(jì)算屬性對<ti,gz>的jacard系數(shù)jacard_cof(ti,gz),所述公式(4)為:
其中,可以參考計(jì)算所述p(ti,kj)的公式(2)計(jì)算所述p(ti,gz);按照公式(3)計(jì)算所述p(ti);根據(jù)公式(5)計(jì)算所述p(gz),所述公式(5)為
當(dāng)ti和gz完全無關(guān)時,jacard_cof(ti,gz)為最低值0,當(dāng)兩者是完全相同的概念時,jacard_cof(ti,gz)為最高值1。因此當(dāng)ti和gz相關(guān)性越高,則jacard_cof(ti,gz)會越高,并逼近于1。
按照上述方法依次計(jì)算每個tac碼和與其對應(yīng)的5個ua元素之間的jacard系數(shù)。
步驟209、獲取與tac碼對應(yīng)的jacard系數(shù)最大的ua元素,作為該tac碼的關(guān)鍵詞,并組成關(guān)鍵詞對集合。
示例的,可以按照jacard系數(shù)的由大到小排列tac碼對應(yīng)的5個ua元素,然后選擇排列后第一個ua元素作為該tac碼的關(guān)鍵詞,由于該關(guān)鍵詞與tac碼的jacard系數(shù)最大,說明該關(guān)鍵詞與tac碼的相關(guān)性最高,該關(guān)鍵詞很可能是ua信息中反映終端類型的元素,比如終端類型標(biāo)識。例如,以tac碼t1為例,可以按照jacard系數(shù)的由大到小排列tac碼t1對應(yīng)的5個ua元素的順序,然后選擇排列后第一個ua元素作為tac碼t1的關(guān)鍵詞。由此可知,可以依次獲取t1至tp每個tac碼的關(guān)鍵詞,進(jìn)而組成關(guān)鍵詞對集合o,所述o={<t1,f1>,…,<ts,fs>,…,<tp,fp>},反應(yīng)了已知的tac碼和關(guān)鍵詞的對應(yīng)關(guān)系;其中,f1為tac碼t1的關(guān)鍵詞,fs為tac碼ts的關(guān)鍵詞,同樣的,fp為tac碼tp的關(guān)鍵詞。
在實(shí)際應(yīng)用中,獲取到http訪問日志很多,計(jì)算中也可能出現(xiàn)不可預(yù)知的錯誤,很有可能出現(xiàn)獲取到的關(guān)鍵詞并非ua信息中的終端類型標(biāo)識。因此可以通過不斷采集現(xiàn)網(wǎng)http訪問日志,并利用上述方法進(jìn)行多次計(jì)算,得到的集合o不斷迭代,最終得到無限逼近于真實(shí)結(jié)果的關(guān)鍵詞對集合o。
步驟210、確定關(guān)鍵詞對集合中是否存在從現(xiàn)網(wǎng)獲取到的任一http訪問日志的tac碼;當(dāng)關(guān)鍵詞對集合中存在所述http訪問日志的tac碼,執(zhí)行步驟211;當(dāng)關(guān)鍵詞對集合中不存在所述http訪問日志的tac碼,執(zhí)行步驟202。
示例的,當(dāng)獲取到關(guān)鍵詞對集合o之后,由于集合o反應(yīng)了tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,因此可以根據(jù)關(guān)鍵詞對集合o確定現(xiàn)網(wǎng)中http訪問日志對應(yīng)的終端類型。但是現(xiàn)網(wǎng)中的http訪問日志的數(shù)量很多,難免出現(xiàn)一些新加入的終端在現(xiàn)網(wǎng)中的產(chǎn)生訪問日志,新加入的終端可能使用新的tac碼,不一定會是之前統(tǒng)計(jì)到的tac碼,此時關(guān)鍵詞對集合o中不存在該tac碼的關(guān)鍵詞對,因此可以首先判斷關(guān)鍵詞對集合o中是否存在所述http訪問日志的tac碼。當(dāng)http訪問日志的ua信息中不存在與其tac碼對應(yīng)的關(guān)鍵詞時,可以重新按照獲取tac碼對應(yīng)的關(guān)鍵詞的方法,獲取該tac碼對應(yīng)的關(guān)鍵詞。
步驟211、根據(jù)所述http訪問日志的tac碼和關(guān)鍵詞對集合,識別所述http訪問日志的終端類型。
示例的,查找該http訪問日志的tac碼,然后根據(jù)該tac碼在關(guān)鍵詞對集合o中查找對應(yīng)的關(guān)鍵詞對,該關(guān)鍵詞對中的關(guān)鍵詞即為該http訪問日志對應(yīng)的終端類型標(biāo)識。
需要說明的是,本發(fā)明實(shí)施例提供的終端識別方法步驟的先后順序可以進(jìn)行適當(dāng)調(diào)整,步驟也可以根據(jù)情況進(jìn)行相應(yīng)增減,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化的方法,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi),因此不再贅述。
本發(fā)明實(shí)施例提供了一種終端識別方法,相較于現(xiàn)有技術(shù),可以預(yù)先建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,然后根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞,即使有的終端未按照標(biāo)準(zhǔn)使用tac碼,也能夠根據(jù)tac碼的關(guān)鍵詞確定http訪問日志對應(yīng)的終端類型,提高了終端識別的準(zhǔn)確率。
實(shí)施例三
本發(fā)明實(shí)施例提供一種識別服務(wù)器40,如圖4所示,包括:
第一獲取單元401,用于獲取現(xiàn)網(wǎng)中的超文本傳輸協(xié)議http訪問日志,所述http訪問日志包括跟蹤區(qū)域碼tac和用戶代理ua信息。
第一確定單元402,用于根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞。
第二確定單元403,用于當(dāng)所述http訪問日志的ua信息中存在所述關(guān)鍵詞時,確定所述關(guān)鍵詞為所述http訪問日志對應(yīng)的終端類型標(biāo)識。
這樣一來,可以預(yù)先建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,然后根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞,即使有的終端未按照標(biāo)準(zhǔn)使用tac碼,也能夠根據(jù)tac碼的關(guān)鍵詞確定http訪問日志對應(yīng)的終端類型,提高了終端識別的準(zhǔn)確率。
可選的,如圖5所示,所述服務(wù)器40包括:采集單元404,用于從現(xiàn)網(wǎng)中采集多條http訪問日志,每條http訪問日志包括tac碼和ua信息,每個ua信息包括多個ua元素;組成單元405,用于根據(jù)每條http訪問日志的tac碼和ua信息中ua元素,組成第一屬性對集合,所述第一屬性對集合包括多個屬性對,每個屬性對包括一個tac碼和與所述tac碼對應(yīng)的ua信息中的一個ua元素;第二獲取單元406,用于根據(jù)所述第一屬性對集合,獲取每個tac碼的關(guān)鍵詞,并建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,tac碼的關(guān)鍵詞為所述tac碼對應(yīng)的ua信息中的一個ua元素。
可選的,所述第二獲取單元406具體用于:計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的杰卡德jacard系數(shù);選擇每個tac碼對應(yīng)的jacard系數(shù)最大的屬性對包括的ua元素作為對應(yīng)tac碼的關(guān)鍵詞。
可選的,如圖6所示,所述服務(wù)器40還包括:篩選單元407,用于根據(jù)預(yù)設(shè)詞典,篩除所述第一屬性對集合中與終端類型無關(guān)的ua元素對應(yīng)的屬性對,獲取第二屬性對集合;所述第二獲取單元406具體用于:計(jì)算所述第二屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)。
可選的,如圖7所示,所述服務(wù)器40還包括:計(jì)算單元408,用于計(jì)算所述第一屬性對集合中每個屬性對包括的tac碼和ua元素的相關(guān)系數(shù);排列單元409,用于按照所述相關(guān)系數(shù)的由大到小,排列每個tac碼對應(yīng)的屬性對;選擇單元410,用于選擇排列后每個tac碼對應(yīng)的前預(yù)設(shè)數(shù)量個屬性對組成第三屬性對集合;所述第二獲取單元406具體用于:計(jì)算所述第三屬性對集合中每個屬性對包括的tac碼和ua元素的jacard系數(shù)。
需要說明的是,第一,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對應(yīng)過程,在此不再贅述。
第二,所述第一獲取單元401、第一確定單元402、第二確定單元403、采集單元404、組成單元405、第二獲取單元406、篩選單元407、計(jì)算單元408、排列單元409和選擇單元410均可由位于識別服務(wù)器40中的中央處理器(centralprocessingunit,cpu)、微處理器(microprocessorunit,mpu)、數(shù)字信號處理器(digitalsignalprocessor,dsp)、或現(xiàn)場可編程門陣列(fieldprogrammablegatearray,fpga)等實(shí)現(xiàn)。
本發(fā)明實(shí)施例提供一種識別服務(wù)器,包括:第一獲取單元,用于獲取現(xiàn)網(wǎng)中的超文本傳輸協(xié)議http訪問日志,所述http訪問日志包括跟蹤區(qū)域碼tac和用戶代理ua信息。第一確定單元,用于根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞。第二確定單元,用于當(dāng)所述http訪問日志的ua信息中存在所述關(guān)鍵詞時,確定所述關(guān)鍵詞為所述http訪問日志對應(yīng)的終端類型標(biāo)識。相較于現(xiàn)有技術(shù),可以預(yù)先建立tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,然后根據(jù)tac碼和關(guān)鍵詞的對應(yīng)關(guān)系,確定所述http訪問日志的tac碼對應(yīng)的關(guān)鍵詞,即使有的終端未按照標(biāo)準(zhǔn)使用tac碼,也能夠根據(jù)tac碼的關(guān)鍵詞確定http訪問日志對應(yīng)的終端類型,提高了終端識別的準(zhǔn)確率。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用硬件實(shí)施例、軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學(xué)存儲器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲器中,使得存儲在該計(jì)算機(jī)可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。