本申請涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種視頻對挖掘方法及裝置。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,用戶能夠通過網(wǎng)絡(luò)獲取到的也越來越多,如,通過網(wǎng)絡(luò)獲取視頻。
目前,為了能夠更好的為用戶提供服務(wù),在為用戶提供用戶當(dāng)前向服務(wù)器請求的視頻(也即,用戶當(dāng)前想要觀看的視頻)時(shí),服務(wù)器中的視頻推薦系統(tǒng)還會為用戶推薦與用戶當(dāng)前向服務(wù)器請求的視頻相關(guān)的視頻,后續(xù),用戶在觀看當(dāng)前向服務(wù)器請求的視頻的同時(shí),如果在推薦的視頻中有用戶所需的視頻,用戶也會點(diǎn)擊該視頻,在本申請中,將用戶當(dāng)前向服務(wù)器發(fā)送請求而獲取用戶所要觀看的視頻定義為請求視頻,將根據(jù)請求視頻為用戶推薦的視頻中被用戶觀看的視頻為點(diǎn)擊視頻,并將一個(gè)請求視頻與一個(gè)點(diǎn)擊視頻共同組成視頻對。
進(jìn)一步的,為了更好的為用戶推薦點(diǎn)擊視頻,因此,通常都會基于一些訓(xùn)練特征(如,針對歷史上出現(xiàn)的視頻對,根據(jù)視頻對中的請求視頻為用戶推薦該視頻對中的點(diǎn)擊視頻被用戶觀看的次數(shù)與該視頻對中的請求視頻對請求的次數(shù)的比值、用戶信息等)訓(xùn)練出相應(yīng)的視頻點(diǎn)擊概率預(yù)測模型,后續(xù),在給出用戶當(dāng)前的請求視頻后,視頻推薦系統(tǒng)根據(jù)該視頻點(diǎn)擊概率預(yù)測模型,預(yù)測待推薦的視頻的點(diǎn)擊概率,將所有的待推薦的視頻的點(diǎn)擊概率由高到低進(jìn)行排序,并將點(diǎn)擊概率大于預(yù)設(shè)的閾值的待推薦的視頻推薦給用戶。
但是,在整個(gè)模型訓(xùn)練以及預(yù)測視頻的點(diǎn)擊概率的過程中,所使用針對歷史上出現(xiàn)的視頻對,根據(jù)視頻對中的請求視頻為用戶推薦該視頻對中的點(diǎn)擊視頻被用戶觀看的次數(shù)與該視頻對中的請求視頻對請求的次數(shù)的比值(在本申請中,該比值可以定義為點(diǎn)擊視頻的點(diǎn)擊率)這一特征時(shí),包含的視頻對都是歷史上出現(xiàn)過的視頻對,而在實(shí)際應(yīng)用中,在給定某個(gè)請求視頻的情況下,有可能存在從來沒有推薦給用戶的視頻,但沒有推薦給用戶的視頻卻與包含該請求視頻的視頻對中的點(diǎn)擊視頻存在視頻對的關(guān)系的情況,也就是說,該請求視頻與沒有推薦給用戶的視頻是存在一定關(guān)聯(lián)的,也可以說,是存在請求點(diǎn)擊關(guān)系的,可以是視頻對的關(guān)系,如,視頻對1中包含請求視頻A以及點(diǎn)擊視頻B,視頻對2中包含請求視頻B以及點(diǎn)擊視頻C,其中,點(diǎn)擊視頻B與請求視頻B是同一個(gè)視頻,可以從中看出,請求視頻A與點(diǎn)擊視頻C是存在一定的請求點(diǎn)擊關(guān)系的,也就是說,當(dāng)用戶在觀看請求視頻A的同時(shí),如果服務(wù)器向該用戶推薦視頻C的話,用戶有可能會去點(diǎn)擊視頻C。
為了更好的訓(xùn)練更優(yōu)的模型,并進(jìn)行更準(zhǔn)確的預(yù)測待推薦的視頻的點(diǎn)擊概率,可挖掘這些潛在的視頻對的關(guān)系,以此來增加在給定歷史上出現(xiàn)的視頻對中的請求視頻的情況下,該視頻對中的點(diǎn)擊視頻被點(diǎn)擊的次數(shù)與該視頻對中請求視頻被請求的次數(shù)的比值這一訓(xùn)練特征中包含的數(shù)據(jù)內(nèi)容,而現(xiàn)在技術(shù)中,對于挖掘這些潛在的視頻對,還有相應(yīng)的手段來實(shí)現(xiàn),因此,挖掘潛在的視頻對成為了一個(gè)亟待解決的問題。
技術(shù)實(shí)現(xiàn)要素:
本申請實(shí)施例提供一種視頻對挖掘方法及裝置,用以解決現(xiàn)有技術(shù)中還沒有相應(yīng)的手段來實(shí)現(xiàn)挖掘潛在的視頻對,也就是,挖掘具有間接請求點(diǎn)擊關(guān)系的視頻對的問題。
本申請實(shí)施例提供的一種視頻對挖掘方法,所述方法包括:
獲取各視頻對樣本數(shù)據(jù),其中,所述視頻對樣本數(shù)據(jù)中包含有請求視頻的視頻標(biāo)識、點(diǎn)擊視頻的視頻標(biāo)識以及用戶觀看請求視頻的情況下點(diǎn)擊視頻的點(diǎn)擊率;
根據(jù)所述請求視頻的視頻標(biāo)識、所述點(diǎn)擊視頻的視頻標(biāo)識以及所述點(diǎn)擊視頻的點(diǎn)擊率,確定概率矩陣;
計(jì)算所述概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣,其中,所述N為大于1的整數(shù);
根據(jù)計(jì)算出的N步轉(zhuǎn)移矩陣以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對,
其中,視頻對由請求視頻和點(diǎn)擊視頻組成,點(diǎn)擊視頻是根據(jù)請求視頻為用戶推薦的視頻中被用戶觀看的視頻。
本申請實(shí)施例提供的一種視頻對挖掘裝置,所述裝置包括:
獲取模塊,用于獲取各視頻對樣本數(shù)據(jù),其中,所述視頻對樣本數(shù)據(jù)中包含有請求視頻的視頻標(biāo)識、點(diǎn)擊視頻的視頻標(biāo)識以及用戶觀看請求視頻的情況下點(diǎn)擊視頻的點(diǎn)擊率;
確定模塊,用于根據(jù)所述請求視頻的視頻標(biāo)識、所述點(diǎn)擊視頻的視頻標(biāo)識以及所述點(diǎn)擊視頻的點(diǎn)擊率,確定概率矩陣;
計(jì)算模塊,用于計(jì)算所述概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣,其中,所述N為大于1的整數(shù);
挖掘模塊,用于根據(jù)計(jì)算出的N步轉(zhuǎn)移矩陣以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對,其中,視頻對由請求視頻和點(diǎn)擊視頻組成,點(diǎn)擊視頻是根據(jù)請求視頻為用戶推薦的視頻中被用戶觀看的視頻。
本申請實(shí)施例提供一種視頻對挖掘方法及裝置,該方法獲取包含有請求視頻的視頻標(biāo)識、點(diǎn)擊視頻的視頻標(biāo)識以及用戶觀看請求視頻的情況下點(diǎn)擊視頻的點(diǎn)擊率各視頻對樣本數(shù)據(jù),根據(jù)該請求視頻的視頻標(biāo)識、該點(diǎn)擊視頻的視頻標(biāo)識以及該點(diǎn)擊視頻的點(diǎn)擊率,確定概率矩陣,并計(jì)算該概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣,根據(jù)計(jì)算出的N步轉(zhuǎn)移矩陣以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對。通過上述方法,可以有效的挖掘潛在的視頻對,也就是說,有效的挖掘具有間接請求點(diǎn)擊關(guān)系的視頻對,進(jìn)而豐富視頻推薦系統(tǒng)中視頻對的數(shù)量,也可提高視頻推薦系統(tǒng)推薦的準(zhǔn)確性。
附圖說明
此處所說明的附圖用來提供對本申請的進(jìn)一步理解,構(gòu)成本申請的一部分,本申請的示意性實(shí)施例及其說明用于解釋本申請,并不構(gòu)成對本申請的不當(dāng)限定。在附圖中:
圖1為本申請實(shí)施例提供的視頻對挖掘過程示意圖;
圖2為本申請實(shí)施例提供的概率矩陣結(jié)果示意圖;
圖3為本申請實(shí)施例提供的視頻對挖掘裝置結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本申請的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請具體實(shí)施例及相應(yīng)的附圖對本申請技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例僅是本申請一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾堉械膶?shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本申請保護(hù)的范圍。
圖1為本申請實(shí)施例提供的視頻對挖掘過程,具體包括以下步驟:
S101:獲取各視頻對樣本數(shù)據(jù)。
在本申請中,為了能夠挖掘潛在的視頻對,首先需要獲取各視頻對樣本數(shù)據(jù)。
在此需要說明的是,所獲取的各視頻對樣本數(shù)據(jù)是歷史上已經(jīng)出現(xiàn)過的視頻對數(shù)據(jù),也就是說,該歷史上出現(xiàn)的視頻對是由用戶當(dāng)前向服務(wù)器發(fā)送請求而獲取用戶所要觀看的視頻定(即,請求視頻)以及根據(jù)請求視頻為用戶推薦的視頻中被用戶觀看的視頻(即,點(diǎn)擊視頻)組成的,一個(gè)視頻對中只包含有一個(gè)請求視頻以及一個(gè)點(diǎn)擊視頻。
而視頻對數(shù)據(jù)是由請求視頻的視頻標(biāo)識、點(diǎn)擊視頻的視頻標(biāo)識以及用戶觀看請求視頻的情況下點(diǎn)擊視頻的點(diǎn)擊率組成的,其中,所述點(diǎn)擊視頻的點(diǎn)擊率是針對某一視頻對,根據(jù)視頻對中的請求視頻為用戶推薦該視頻對中的點(diǎn)擊視頻被用戶觀看的次數(shù)與該視頻對中的請求視頻對請求的次數(shù)的比值。
S102:根據(jù)所述請求視頻的視頻標(biāo)識、所述點(diǎn)擊視頻的視頻標(biāo)識以及所述點(diǎn)擊視頻的點(diǎn)擊率,確定概率矩陣。
由于本申請主要通過轉(zhuǎn)移矩陣來確定需要挖掘的視頻對,而要想得到轉(zhuǎn)移矩陣,首先需要建立概率矩陣,因此,在本申請中,當(dāng)獲取到各視頻對樣本數(shù)據(jù)后,可根據(jù)各視頻對樣本數(shù)據(jù),建立概率矩陣。
進(jìn)一步的,本申請?zhí)峁┝艘环N建立概率矩陣的方式,具體的是根據(jù)各視頻對樣本數(shù)據(jù),建立概率矩陣,具體的,將各請求視頻對應(yīng)的視頻標(biāo)識作為概率矩陣的行,將各點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識作為概率矩陣的列,將各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率作為概率矩陣的元素值確定概率矩陣,如,假設(shè)存在三個(gè)視頻對數(shù)據(jù),分別是包含有1(1為該請求視頻的標(biāo)識)和9(9為點(diǎn)擊視頻的標(biāo)識)以及點(diǎn)擊視頻的點(diǎn)擊率0.2的視頻對A、包含有3(3為該請求視頻的標(biāo)識)和10(10為點(diǎn)擊視頻的標(biāo)識)以及點(diǎn)擊視頻的點(diǎn)擊率0.5的視頻對B、包含有5(5為該請求視頻的標(biāo)識)和6(6為點(diǎn)擊視頻的標(biāo)識)以及點(diǎn)擊視頻的點(diǎn)擊率0.7的視頻對C,因此,將各請求視頻對應(yīng)的視頻標(biāo)識作為概率矩陣的行,將各點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識作為概率矩陣的列,將各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率作為概率矩陣的元素值確定概率矩陣具體如圖2所示。
在此需要說明的是,概率矩陣中如果有的元素位置沒有視頻對,可直接填0。
通常情況下,由于請求視頻的標(biāo)識以及點(diǎn)擊視頻的標(biāo)識有可能是達(dá)到上萬甚至上億,但是實(shí)際上,針對某一請求視頻,與該請求視頻有聯(lián)系的點(diǎn)擊視頻所形成的視頻對可能只有幾十或幾百,這樣根據(jù)上述給出的建立概率矩陣的方式,會造成整個(gè)矩陣的行的數(shù)量以及列的數(shù)量會達(dá)到上萬甚至上億,后續(xù)會造成計(jì)算機(jī)計(jì)算上的運(yùn)算量和壓力,因此,在本申請中,可以從各視頻對樣本數(shù)據(jù)中提取不重復(fù)的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識(也就是說,提取出的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識是兩兩不重復(fù)的),對提取出的各請求視頻對應(yīng)的視頻標(biāo)識以及點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識進(jìn)行編號,并生成請求視頻對應(yīng)的視頻標(biāo)識與編號的對應(yīng)關(guān)系以及點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識與編號的對應(yīng)關(guān)系,根據(jù)編號后的各請求視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號、點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號以及點(diǎn)擊視頻的點(diǎn)擊率,確定概率矩陣,這樣可以有效的降低概率矩陣的行和列的數(shù)量,后續(xù)降低計(jì)算機(jī)在處理概率矩陣的計(jì)算量和壓力,如,假設(shè)上述例子中,分別從三個(gè)視頻對(即,各視頻對樣本數(shù)據(jù))中提取不重復(fù)的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識,即,1(1為該請求視頻的標(biāo)識)、9(9為點(diǎn)擊視頻的標(biāo)識)、3(3為該請求視頻的標(biāo)識)、10(10為點(diǎn)擊視頻的標(biāo)識)、5(5為該請求視頻的標(biāo)識)以及6(6為點(diǎn)擊視頻的標(biāo)識),并對提取出的各請求視頻對應(yīng)的視頻標(biāo)識以及點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識進(jìn)行編號,即,1(請求視頻的標(biāo)識1對應(yīng)的編號)、2(點(diǎn)擊視頻的標(biāo)識9對應(yīng)的編號)、3(請求視頻的標(biāo)識3對應(yīng)的編號)、4(點(diǎn)擊視頻的標(biāo)識10對應(yīng)的編號)、5(請求視頻的標(biāo)識5對應(yīng)的編號)、6(點(diǎn)擊視頻的標(biāo)識6對應(yīng)的編號)。
在此需要說明的是,在對請求視頻的標(biāo)識以及點(diǎn)擊視頻的標(biāo)識進(jìn)行編號的過程中,可以進(jìn)行連續(xù)編號,如,2、3、4、5,也可以進(jìn)行不連續(xù)編號,如,2、4、6、8,但是這樣的編號方式都不是概率矩陣的行和列的數(shù)量是最少的,而最優(yōu)的編號方式則是,從1開始對所有的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識進(jìn)行連續(xù)編號,這樣建立完成的概率矩陣的行和列的數(shù)量是最少,需要注意的是,雖然理論上是從1開始編號,但是在計(jì)算機(jī)運(yùn)行處理中,編號需要從0開始編號,其實(shí)0代表概率矩陣中的第一行或第一列,相當(dāng)于理論中的數(shù)字1,這樣可有效的降低計(jì)算機(jī)后續(xù)的計(jì)算量和壓力。
進(jìn)一步的,在根據(jù)編號后的各請求視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號、點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號以及點(diǎn)擊視頻的點(diǎn)擊率,確定概率矩陣的過程中,本申請給出了一種實(shí)施方式,具體的,將各請求視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號作為概率矩陣的行,將各點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號作為概率矩陣的列,將各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率作為概率矩陣的元素值確定概率矩陣。
S103:計(jì)算所述概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣。
在建立完成概率矩陣后,需要計(jì)算該概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣,其中,N是大于1的整數(shù)。
但是,根據(jù)步驟S102中所建立起來的概率矩陣通常是有效的行數(shù)和有效的列數(shù)不一致(在此需要說明的是,非零元素中所處的最大行數(shù)即為有效的行數(shù),非零元素中所處的最大列數(shù)即為有效的列數(shù)),因此,當(dāng)概率矩陣的有效行數(shù)與有效列數(shù)不一致時(shí)是無法直接進(jìn)行N步轉(zhuǎn)移矩陣的計(jì)算,基于此,本申請?jiān)谟?jì)算概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣之前,需要對概率矩陣進(jìn)行擴(kuò)充行或列的數(shù)量,如果行的數(shù)量大于列的數(shù)量,則需要增加列的數(shù)量,使得列的總數(shù)量等于行的總數(shù)量,如果列的數(shù)量大于行的數(shù)量,則需要增加行的數(shù)量,使得行的總數(shù)量等于列的總數(shù)量,所增加的行中的元素或者增加的列中的元素均填0即可,但是在實(shí)際計(jì)算機(jī)存儲時(shí),為了減少額外的存儲開銷,概率矩陣中所有為0的元素實(shí)際是不存儲的,只存儲那些非零元素。
另外,在此需要說明的是,本申請中N的設(shè)定可根據(jù)實(shí)際情況來設(shè)定,通常情況下,是如果想挖掘一層間接請求點(diǎn)擊關(guān)系就將N設(shè)定為2即可,如,請求視頻A與點(diǎn)擊視頻B是視頻對,而請求視頻B與點(diǎn)擊視頻C時(shí)視頻對,其中,請求視頻B與點(diǎn)擊視頻B是同一視頻,這樣,請求視頻A與點(diǎn)擊視頻C只有一層間接請求點(diǎn)擊關(guān)系,如果想挖掘N層間接請求點(diǎn)擊關(guān)系,就將N設(shè)定為N+1即可。
另外,由于將N個(gè)概率矩陣進(jìn)行連乘,需要進(jìn)行N-1次相乘的運(yùn)算,因此,為了降低相乘的運(yùn)算次數(shù),可以將N個(gè)所述概率矩陣進(jìn)行分組,其中,分組后的各組中,至少有兩個(gè)組包含概率矩陣的數(shù)量相同,去除包含概率矩陣的數(shù)量重復(fù)的各組,并針對任一剩余的組,將該組內(nèi)包含的所有概率矩陣進(jìn)行相乘,將分組后的所有組對應(yīng)的相乘后得到的矩陣進(jìn)行相乘,將分組后的所有組進(jìn)行相乘后得到的矩陣作為所述概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣。如,假設(shè)需要計(jì)算7步轉(zhuǎn)移矩陣,且M代表概率矩陣,因此,可以將7個(gè)概率矩陣分為四組,也就是,第一組包含兩個(gè)概率矩陣,第二組包含兩個(gè)概率矩陣,第三組包含兩個(gè)概率矩陣,第四組包含一個(gè)概率矩陣,去除包含概率矩陣的數(shù)量重復(fù)的各組,即,第一組或第二組或第三組中的任意兩組,這是因?yàn)槠渲杏腥齻€(gè)組中的概率矩陣的數(shù)量是相同的重復(fù)的,因此,只需要將其中任意一組中包含的概率矩陣進(jìn)行相乘即可,直接將相乘后得到的矩陣作為其他兩組的矩陣,不用重復(fù)將其他兩個(gè)組中包含的概率矩陣進(jìn)行相乘,再第四組中的包含的所有概率矩陣進(jìn)行相乘,最后直接將分組后的所有組對應(yīng)的相乘后得到的矩陣進(jìn)行相乘,也即,將第一組對應(yīng)的相乘后得到的矩陣乘以第二組對應(yīng)的相乘后得到的矩陣乘以第三組對應(yīng)的相乘后得到的矩陣乘以第四組對應(yīng)的相乘后得到的矩陣,將分組后的所有組進(jìn)行相乘后得到的矩陣作為所述概率矩陣對應(yīng)的7步轉(zhuǎn)移矩陣,這樣只需要做四次運(yùn)算就可得到7步轉(zhuǎn)移矩陣,降低了運(yùn)算次數(shù)。
另外,本申請中還給出一段計(jì)算機(jī)在計(jì)算一次概率矩陣相乘的計(jì)算機(jī)代碼,具體如下:
//讀取數(shù)據(jù)
valcoorMatrix=MTUtils.loadCoordinateMatrix(sc.args(0))
//轉(zhuǎn)換格式CoordinateMatrix→DenseVecMatrix
valdenseVecMatrix=coorMatrixTODenseVecMatrix(coorMatrix,row,cols)
//轉(zhuǎn)換格式CoordinateMatrix→SparseVecMatrix
valsparseVecMatrix=denseVecMatrixtoSparseVecMatrix
valleftMatrix=SparseVecMatrix
valrightMatrix=leftMatrix
//矩陣相乘
valmultiplyResult=leftMatrix.multiplySparse(rightMatrix)
在上述計(jì)算機(jī)代碼中,coorMatrixTODenseVecMatrix是自定義重新實(shí)現(xiàn)的函數(shù),主要強(qiáng)制指定變換矩陣的行列數(shù),避免實(shí)際數(shù)據(jù)中邊界位置有效數(shù)據(jù)不存在導(dǎo)致原變換方式所得矩陣行列小于期望值,導(dǎo)致后續(xù)相乘時(shí)矩陣維度不一致,對應(yīng)操作如下:
S104:根據(jù)計(jì)算出的N步轉(zhuǎn)移矩陣以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對。
在得到N步轉(zhuǎn)移矩陣后,需要根據(jù)N步轉(zhuǎn)移矩陣進(jìn)行還原,也就是,根據(jù)N步轉(zhuǎn)移矩陣,建立視頻對數(shù)據(jù)。
進(jìn)一步的,在根據(jù)N步轉(zhuǎn)移矩陣,建立視頻對數(shù)據(jù)的過程中,如果在執(zhí)行步驟S102確定概率矩陣時(shí)采用的是將各所述請求視頻對應(yīng)的視頻標(biāo)識作為概率矩陣的行,將各所述點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識作為概率矩陣的列,將各視頻對樣本數(shù)據(jù)中的所述點(diǎn)擊視頻的點(diǎn)擊率作為概率矩陣的元素值確定概率矩陣,那么根據(jù)N步轉(zhuǎn)移矩陣,建立視頻對數(shù)據(jù)的過程如下所示:針對所述N步轉(zhuǎn)移矩陣中不為0的每個(gè)元素,根據(jù)確定的各請求視頻對應(yīng)的視頻標(biāo)識對應(yīng)的矩陣概率的行,確定該元素對應(yīng)的請求視頻對應(yīng)的視頻標(biāo)識,根據(jù)確定的各點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識對應(yīng)的列,確定該元素對應(yīng)的點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識,并將該元素值作為該元素對應(yīng)的點(diǎn)擊視頻的點(diǎn)擊率,根據(jù)確定出的所述請求視頻對應(yīng)的視頻標(biāo)識、所述點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識以及所述點(diǎn)擊視頻的點(diǎn)擊率,建立視頻對數(shù)據(jù),根據(jù)建立的視頻對數(shù)據(jù)以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對。
如果在執(zhí)行步驟S102確定概率矩陣時(shí)采用的是將各請求視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號作為概率矩陣的行,將各點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號作為概率矩陣的列,將各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率作為概率矩陣的元素值確定概率矩陣,那么根據(jù)N步轉(zhuǎn)移矩陣,建立視頻對數(shù)據(jù)的過程如下所示:針對所述N步轉(zhuǎn)移矩陣中不為0的每個(gè)元素,根據(jù)該元素對應(yīng)的行號,確定該元素對應(yīng)的請求視頻的編號,根據(jù)該元素對應(yīng)的列號,確定該元素對應(yīng)的點(diǎn)擊視頻的編號,并根據(jù)該元素的數(shù)值,確定該元素對應(yīng)的點(diǎn)擊視頻的點(diǎn)擊率,根據(jù)生成的請求視頻對應(yīng)的視頻標(biāo)識與編號的對應(yīng)關(guān)系,確定所述請求視頻的編號對應(yīng)的請求視頻的視頻標(biāo)識,根據(jù)生成的點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識與編號的對應(yīng)關(guān)系,確定所述點(diǎn)擊視頻的編號對應(yīng)的點(diǎn)擊視頻的視頻標(biāo)識,根據(jù)確定出的所述請求視頻的視頻標(biāo)識、所述點(diǎn)擊視頻的視頻標(biāo)識以及所述點(diǎn)擊視頻的點(diǎn)擊率,建立視頻對數(shù)據(jù),根據(jù)建立的視頻對數(shù)據(jù)以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對。
進(jìn)一步的,當(dāng)根據(jù)N步轉(zhuǎn)移矩陣,建立視頻對數(shù)據(jù)后,需要根據(jù)建立的視頻對數(shù)據(jù)以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對,具體的,將建立的視頻對數(shù)據(jù)與獲取的各視頻對樣本數(shù)據(jù)進(jìn)行匹配,在建立各視頻對數(shù)據(jù)中,確定與獲取的各視頻對樣本數(shù)據(jù)不一致的視頻對數(shù)據(jù)。
而本申請?jiān)诖_定與獲取的各視頻對樣本數(shù)據(jù)不一致的視頻對數(shù)據(jù)時(shí),主要有兩種情況,第一種情況是建立的視頻對數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率與獲取的各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率不同的視頻對數(shù)據(jù),因此,在確定與獲取的各視頻對樣本數(shù)據(jù)不一致的視頻對數(shù)據(jù)時(shí),可確定建立的視頻對數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率與獲取的各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率不同的視頻對數(shù)據(jù),后續(xù),可根據(jù)確定的視頻對數(shù)據(jù)中的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識,在包含各視頻對樣本數(shù)據(jù)的視頻推薦系統(tǒng)中查找到該確定的視頻對數(shù)據(jù)對應(yīng)的視頻對樣本數(shù)據(jù),將該確定的視頻對數(shù)據(jù)替換掉該確定的視頻對數(shù)據(jù)對應(yīng)的視頻對樣本數(shù)據(jù)。
在此需要說明的是,將該確定的視頻對數(shù)據(jù)替換掉該確定的視頻對數(shù)據(jù)對應(yīng)的視頻對樣本數(shù)據(jù)的過程中,可以將視頻對數(shù)據(jù)中的請求視頻的視頻標(biāo)識、點(diǎn)擊視頻的視頻標(biāo)識以及點(diǎn)擊視頻的點(diǎn)擊率均替換掉該確定的視頻對數(shù)據(jù)對應(yīng)的視頻對樣本數(shù)據(jù)中的請求視頻的視頻標(biāo)識、點(diǎn)擊視頻的視頻標(biāo)識以及點(diǎn)擊視頻的點(diǎn)擊率,也可以將視頻對數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率替換掉該確定的視頻對數(shù)據(jù)對應(yīng)的視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率。
第二種情況是確定建立的視頻對數(shù)據(jù)中的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識有至少一個(gè)與獲取的各視頻對樣本數(shù)據(jù)中的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識不同的視頻對數(shù)據(jù),因此,在確定與獲取的各視頻對樣本數(shù)據(jù)不一致的視頻對數(shù)據(jù)時(shí),確定建立的視頻對數(shù)據(jù)中的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識有至少一個(gè)與獲取的各視頻對樣本數(shù)據(jù)中的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識不同的視頻對數(shù)據(jù),后續(xù),可添加該確定的視頻對數(shù)據(jù)到視頻推薦系統(tǒng)中。
通過上述方法,可以有效的挖掘潛在的視頻對,也就是說,有效的挖掘具有間接請求點(diǎn)擊關(guān)系的視頻對,進(jìn)而豐富視頻推薦系統(tǒng)中視頻對的數(shù)量,也可提高視頻推薦系統(tǒng)推薦的準(zhǔn)確性。
另外,在實(shí)際應(yīng)用中,視頻推薦系統(tǒng)中的視頻對的數(shù)量進(jìn)行豐富和擴(kuò)展后,不僅僅只可用于提高視頻推薦系統(tǒng)的準(zhǔn)確性,也可以在用戶觀看請求視頻時(shí),增加用戶推薦視頻的數(shù)量,因?yàn)?,在對視頻對進(jìn)行挖掘后,可能某一請求視頻對應(yīng)的點(diǎn)擊視頻會增多,如,用戶在觀看某一請求視頻時(shí),假設(shè)網(wǎng)站會推薦給該用戶十個(gè)與請求視頻有關(guān)系的點(diǎn)擊視頻,但是在挖掘視頻對之前,視頻推薦系統(tǒng)里只有五個(gè)點(diǎn)擊視頻與該請求視頻有關(guān)系,因此,視頻推薦系統(tǒng)會將這五個(gè)點(diǎn)擊視頻推薦給用戶的同時(shí),還會再找五個(gè)與該請求視頻無關(guān)系的視頻推薦給用戶,在挖掘視頻對之后,與該請求視頻有關(guān)系的點(diǎn)擊視頻就有可能超過十個(gè),這樣視頻推薦系統(tǒng)可以將十個(gè)與該請求視頻有關(guān)系的點(diǎn)擊視頻推薦給用戶,從而避免了因視頻推薦系統(tǒng)使用的預(yù)測模型而得到的推薦的視頻的數(shù)量不夠的情況。
以上為本申請實(shí)施例提供的視頻對挖掘方法,基于同樣的思路,本申請實(shí)施例還提供一種視頻對挖掘裝置,如圖3所示。
圖3為本申請實(shí)施例提供的視頻對挖掘裝置結(jié)構(gòu)示意圖,所述裝置包括:
獲取模塊201,用于獲取各視頻對樣本數(shù)據(jù),其中,所述視頻對樣本數(shù)據(jù)中包含有請求視頻的視頻標(biāo)識、點(diǎn)擊視頻的視頻標(biāo)識以及用戶觀看請求視頻的情況下點(diǎn)擊視頻的點(diǎn)擊率;
確定模塊202,用于根據(jù)所述請求視頻的視頻標(biāo)識、所述點(diǎn)擊視頻的視頻標(biāo)識以及所述點(diǎn)擊視頻的點(diǎn)擊率,確定概率矩陣;
計(jì)算模塊203,用于計(jì)算所述概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣,其中,所述N為大于1的整數(shù);
挖掘模塊204,用于根據(jù)計(jì)算出的N步轉(zhuǎn)移矩陣以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對,其中,視頻對由請求視頻和點(diǎn)擊視頻組成,點(diǎn)擊視頻是根據(jù)請求視頻為用戶推薦的視頻中被用戶觀看的視頻。
所述確定模塊202具體用于,將各請求視頻對應(yīng)的視頻標(biāo)識作為概率矩陣的行,將各點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識作為概率矩陣的列,將各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率作為概率矩陣的元素值確定概率矩陣。
所述確定模塊202具體用于,從各視頻對樣本數(shù)據(jù)中提取不重復(fù)的請求視頻的視頻標(biāo)識,點(diǎn)擊視頻的視頻標(biāo)識,對提取出的各請求視頻對應(yīng)的視頻標(biāo)識以及點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識進(jìn)行編號,并生成請求視頻對應(yīng)的視頻標(biāo)識與編號的對應(yīng)關(guān)系以及點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識與編號的對應(yīng)關(guān)系,根據(jù)編號后的各請求視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號、點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號以及點(diǎn)擊視頻的點(diǎn)擊率,確定概率矩陣。
所述確定模塊202具體用于,將各請求視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號作為概率矩陣的行,將各點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識對應(yīng)的編號作為概率矩陣的列,將各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率作為概率矩陣的元素值確定概率矩陣。
所述計(jì)算模塊203具體用于,將N個(gè)所述概率矩陣進(jìn)行分組,其中,分組后的各組中,至少有兩個(gè)組包含概率矩陣的數(shù)量相同,去除包含概率矩陣的數(shù)量重復(fù)的各組,并針對任一剩余的組,將該組內(nèi)包含的所有概率矩陣進(jìn)行相乘,將分組后的所有組對應(yīng)的相乘后得到的矩陣進(jìn)行相乘,將分組后的所有組進(jìn)行相乘后得到的矩陣作為所述概率矩陣對應(yīng)的N步轉(zhuǎn)移矩陣。
所述挖掘模塊204具體用于,針對所述N步轉(zhuǎn)移矩陣中不為0的每個(gè)元素,根據(jù)確定的各請求視頻對應(yīng)的視頻標(biāo)識對應(yīng)的矩陣概率的行,確定該元素對應(yīng)的請求視頻對應(yīng)的視頻標(biāo)識,根據(jù)確定的各點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識對應(yīng)的列,確定該元素對應(yīng)的點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識,并將該元素值作為該元素對應(yīng)的點(diǎn)擊視頻的點(diǎn)擊率,根據(jù)確定出的所述請求視頻對應(yīng)的視頻標(biāo)識、所述點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識以及所述點(diǎn)擊視頻的點(diǎn)擊率,建立視頻對數(shù)據(jù),根據(jù)建立的視頻對數(shù)據(jù)以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對。
所述挖掘模塊204具體用于,針對所述N步轉(zhuǎn)移矩陣中不為0的每個(gè)元素,根據(jù)該元素對應(yīng)的行號,確定該元素對應(yīng)的請求視頻的編號,根據(jù)該元素對應(yīng)的列號,確定該元素對應(yīng)的點(diǎn)擊視頻的編號,并根據(jù)該元素的數(shù)值,確定該元素對應(yīng)的點(diǎn)擊視頻的點(diǎn)擊率,根據(jù)生成的請求視頻對應(yīng)的視頻標(biāo)識與編號的對應(yīng)關(guān)系,確定所述請求視頻的編號對應(yīng)的請求視頻的視頻標(biāo)識,根據(jù)生成的點(diǎn)擊視頻對應(yīng)的視頻標(biāo)識與編號的對應(yīng)關(guān)系,確定所述點(diǎn)擊視頻的編號對應(yīng)的點(diǎn)擊視頻的視頻標(biāo)識,根據(jù)確定出的所述請求視頻的視頻標(biāo)識、所述點(diǎn)擊視頻的視頻標(biāo)識以及所述點(diǎn)擊視頻的點(diǎn)擊率,建立視頻對數(shù)據(jù),根據(jù)建立的視頻對數(shù)據(jù)以及獲取的各視頻對樣本數(shù)據(jù),挖掘視頻對。
所述挖掘模塊204具體用于,將建立的視頻對數(shù)據(jù)與獲取的各視頻對樣本數(shù)據(jù)進(jìn)行匹配,在建立各視頻對數(shù)據(jù)中,確定與獲取的各視頻對樣本數(shù)據(jù)不一致的視頻對數(shù)據(jù)。
所述挖掘模塊204具體用于,確定建立的視頻對數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率與獲取的各視頻對樣本數(shù)據(jù)中的點(diǎn)擊視頻的點(diǎn)擊率不同的視頻對數(shù)據(jù),根據(jù)確定的視頻對數(shù)據(jù)中的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識,在包含各視頻對樣本數(shù)據(jù)的視頻推薦系統(tǒng)中查找到該確定的視頻對數(shù)據(jù)對應(yīng)的視頻對樣本數(shù)據(jù),將該確定的視頻對數(shù)據(jù)替換掉該確定的視頻對數(shù)據(jù)對應(yīng)的視頻對樣本數(shù)據(jù)。
所述挖掘模塊204具體用于,確定建立的視頻對數(shù)據(jù)中的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識有至少一個(gè)與獲取的各視頻對樣本數(shù)據(jù)中的請求視頻的視頻標(biāo)識以及點(diǎn)擊視頻的視頻標(biāo)識不同的視頻對數(shù)據(jù),添加該確定的視頻對數(shù)據(jù)到視頻推薦系統(tǒng)中。
在一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲器,隨機(jī)存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術(shù)來實(shí)現(xiàn)存儲。可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲器(SRAM)、動態(tài)隨機(jī)存取存儲器(DRAM)、其他類型的隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設(shè)備或任何其他非傳輸介質(zhì),可用于存儲可以被計(jì)算設(shè)備訪問的。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號和載波。
還需要說明的是,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。
本領(lǐng)域技術(shù)人員應(yīng)明白,本申請的實(shí)施例可提供為方法、系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品。因此,本申請可采用完全硬件實(shí)施例、完全軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
以上所述僅為本申請的實(shí)施例而已,并不用于限制本申請。對于本領(lǐng)域技術(shù)人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請的權(quán)利要求范圍之內(nèi)。