本發(fā)明涉及視頻處理技術(shù)領(lǐng)域,特別涉及一種視頻索引分級方法及裝置。
背景技術(shù):
隨著用戶的需求提高,視頻搜索引擎需要提供高頻和高并發(fā)的在線服務,即同時讓不同的用戶在極低的響應時間內(nèi)搜索到滿意的視頻。視頻搜索引擎根據(jù)用戶的視頻搜索請求,在索引中進行搜索。
隨著用戶數(shù)、訪問數(shù)的增長帶來視頻搜索引擎QPS(Query Per Second,每秒查詢率)負載的提升,即每秒須同時處理的請求數(shù)更多,另外,每天網(wǎng)絡(luò)上不斷有新的視頻產(chǎn)生,造成搜索引擎索引量的數(shù)量巨大,為了保證視頻搜索的召回率,所有視頻均需建立索引,容納一套索引需要的服務器內(nèi)存空間會越來越大。但服務器由于帶寬等限制,單臺服務器所能承擔的QPS負載是有限的,服務器的內(nèi)存空間也是有限的,為了滿足QPS負載和索引量的不斷增長,現(xiàn)有的方法是增加服務器的數(shù)量,但這種方法會導致在線服務器的數(shù)量龐大。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例的目的在于提供一種視頻索引分級方法及裝置,以節(jié)省在線服務器的數(shù)量。
為達到上述目的,本發(fā)明實施例公開了一種視頻索引分級方法,所述方法包括:
將全部視頻中滿足預設(shè)規(guī)則的視頻對應的索引加入到一級索引中,并將全部視頻對應的索引加入到二級索引中;
對除所述一級索引包含的索引對應的視頻之外的其他視頻,抽取用于確定視頻的索引是否需要加入到所述一級索引中的特征數(shù)據(jù);
根據(jù)所述特征數(shù)據(jù),訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型;
針對除所述一級索引包含的索引對應的視頻之外的每一視頻,根據(jù)訓練好的所述分類模型,確定是否需要將所述視頻的索引加入到所述一級索引中;
將所確定的索引加入到所述一級索引中。
較佳的,所述方法還包括:
接收用戶的視頻搜索請求,所述視頻搜索請求中至少包含請求結(jié)果數(shù);
估計利用所述一級索引進行視頻搜索返回的第一結(jié)果數(shù),以及利用所述二級索引進行視頻搜索返回的第二結(jié)果數(shù);
根據(jù)所述請求結(jié)果數(shù)、所述第一結(jié)果數(shù)以及所述第二結(jié)果數(shù),確定用于進行視頻搜索的索引級別;
利用所確定級別的索引,進行視頻搜索。
較佳的,所述根據(jù)所述特征數(shù)據(jù),訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型,包括:
根據(jù)所述特征數(shù)據(jù),利用梯度下降法,訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型。
較佳的,所述根據(jù)所述請求結(jié)果數(shù)、所述第一結(jié)果數(shù)以及所述第二結(jié)果數(shù),確定用于進行視頻搜索的索引級別,包括:
判斷所述第一結(jié)果數(shù)是否不小于所述請求結(jié)果數(shù);
如果是,將所述一級索引確定為用于進行視頻搜索的索引;
如果否,判斷所述第二結(jié)果數(shù)是否不小于所述請求結(jié)果數(shù);如果是,將所述二級索引確定為用于進行視頻搜索的索引;如果否,將所述一級索引確定為用于進行視頻搜索的索引。
較佳的,在將所述一級索引確定為用于進行視頻搜索的索引、且所述第一結(jié)果數(shù)不小于所述請求結(jié)果數(shù)的情況下,所述方法還包括:
判斷利用所述一級索引,進行視頻搜索返回的實際搜索結(jié)果數(shù)是否小于所述請求結(jié)果數(shù);
如果是,利用所述二級索引,繼續(xù)進行視頻搜索。
較佳的,在將所述一級索引確定為用于進行視頻搜索的索引、且所述第一結(jié)果數(shù)不小于所述請求結(jié)果數(shù)的情況下,所述方法還包括:
針對利用所述一級索引,進行視頻搜索返回的每一搜索結(jié)果,計算所述搜索結(jié)果與所述視頻搜索請求的相關(guān)度;
根據(jù)所述相關(guān)度,確定滿足所述視頻搜索請求的結(jié)果數(shù)量;
判斷所述結(jié)果數(shù)量是否小于所述請求結(jié)果數(shù);
如果是,利用所述二級索引,繼續(xù)進行視頻搜索。
為達到上述目的,本發(fā)明實施例還公開了一種視頻索引分級裝置,所述裝置包括:
加入模塊,用于將全部視頻中滿足預設(shè)規(guī)則的視頻對應的索引加入到一級索引中,并將全部視頻對應的索引加入到二級索引中;
抽取模塊,用于對除所述一級索引包含的索引對應的視頻之外的其他視頻,抽取用于確定視頻的索引是否需要加入到所述一級索引中的特征數(shù)據(jù);
訓練模塊,用于根據(jù)所述特征數(shù)據(jù),訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型;
第一確定模塊,用于針對除所述一級索引包含的索引對應的視頻之外的每一視頻,根據(jù)訓練好的所述分類模型,確定是否需要將所述視頻的索引加入到所述一級索引;
所述加入模塊,還用于將所確定的索引加入到所述一級索引。
較佳的,所述裝置還包括:
接收模塊,用于接收用戶的視頻搜索請求,所述視頻搜索請求中至少包含請求結(jié)果數(shù);
估計模塊,用于估計利用所述一級索引進行視頻搜索返回的第一結(jié)果數(shù),以及利用所述二級索引進行視頻搜索返回的第二結(jié)果數(shù);
第二確定模塊,用于根據(jù)所述請求結(jié)果數(shù)、所述第一結(jié)果數(shù)以及所述第二結(jié)果數(shù),確定用于進行視頻搜索的索引級別;
搜索模塊,用于利用所確定級別的索引,進行視頻搜索。
較佳的,所述訓練模塊,具體用于:
根據(jù)所述特征數(shù)據(jù),利用梯度下降法,訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型。
較佳的,所述第二確定模塊,具體用于:
判斷所述第一結(jié)果數(shù)是否不小于所述請求結(jié)果數(shù);
如果是,將所述一級索引確定為用于進行視頻搜索的索引;
如果否,判斷所述第二結(jié)果數(shù)是否不小于所述請求結(jié)果數(shù);如果是,將所述二級索引確定為用于進行視頻搜索的索引;如果否,將所述一級索引確定為用于進行視頻搜索的索引。
較佳的,所述裝置還包括:第一處理模塊,其中,
所述第一處理模塊,用于在將所述一級索引確定為用于進行視頻搜索的索引、且所述第一結(jié)果數(shù)不小于所述請求結(jié)果數(shù)的情況下,判斷利用所述一級索引,進行視頻搜索返回的實際搜索結(jié)果數(shù)是否小于所述請求結(jié)果數(shù);如果是,利用所述二級索引,繼續(xù)進行視頻搜索。
較佳的,所述裝置還包括:第二處理模塊,其中,
所述第二處理模塊,用于在將所述一級索引確定為用于進行視頻搜索的索引、且所述第一結(jié)果數(shù)不小于所述請求結(jié)果數(shù)的情況下,針對利用所述一級索引,進行視頻搜索返回的每一搜索結(jié)果,計算所述搜索結(jié)果與所述視頻搜索請求的相關(guān)度;根據(jù)所述相關(guān)度,確定滿足所述視頻搜索請求的結(jié)果數(shù)量;判斷所述結(jié)果數(shù)量是否小于所述請求結(jié)果數(shù);如果是,利用所述二級索引,繼續(xù)進行視頻搜索。
由上述技術(shù)方案可見,本發(fā)明實施例提供一種視頻索引分級方法及裝置,所述方法包括:將全部視頻中滿足預設(shè)規(guī)則的視頻對應的索引加入到所述一級索引中;對除所述一級索引包含的索引對應的視頻之外的其他視頻,抽取用于確定視頻的索引是否需要加入到所述一級索引中的特征數(shù)據(jù);根據(jù)所述特征數(shù)據(jù),訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型;針對除所述一級索引包含的索引對應的視頻之外的每一視頻,根據(jù)訓練好的所述分類模型,確定是否需要將所述視頻的索引加入到所述一級索引中;將所確定的索引加入到所述一級索引中;將全部視頻對應的索引加入到二級索引中。
應用本發(fā)明實施例,通過建立兩級索引,容納一級索引所需要的服務器的數(shù)量小于容納二級索引所需要的服務器的數(shù)量,而且一級索引能夠承擔大部分QPS負載,二級索引只需較少的服務器數(shù)量承擔剩余小部分QPS負載,所以,在相同索引量和QPS負載下,節(jié)省了在線服務器的數(shù)量。
當然,實施本發(fā)明的任一產(chǎn)品或方法必不一定需要同時達到以上所述的所有優(yōu)點。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供的一種視頻索引分級方法的流程示意圖;
圖2為本發(fā)明實施例提供的另一種視頻索引分級方法的流程示意圖;
圖3為本發(fā)明實施例提供的一種視頻索引分級裝置的結(jié)構(gòu)示意圖;
圖4為本發(fā)明實施例提供的另一種視頻索引分級裝置的結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
為了解決現(xiàn)有技術(shù)問題,本發(fā)明實施例提供了一種視頻索引分級方法及裝置。下面首先對本發(fā)明實施例所提供的一種視頻索引分級方法進行介紹。
圖1為本發(fā)明實施例提供的一種視頻索引分級方法的流程示意圖,方法可以包括:
S101:將全部視頻中滿足預設(shè)規(guī)則的視頻對應的索引加入到一級索引中,并將全部視頻對應的索引加入到二級索引中。
需要說明的是,預設(shè)規(guī)則可以根據(jù)具體情況而定,可以是將具有明顯特征的視頻對應的索引加入到一級索引,這里所說的明顯特征可以為視頻的名稱、視頻的類型、時長、站點、上線時間、在預設(shè)時間內(nèi)被搜索或點擊的次數(shù)等等,可以根據(jù)實際需要選擇上述所說的明顯特征中的一種或多種組成預設(shè)規(guī)則,對視頻進行篩選。例如,可以將視頻的時長超過預設(shè)值作為預設(shè)規(guī)則,將滿足該預設(shè)規(guī)則的視頻的索引加入到一級索引;還可以將在預設(shè)時間內(nèi)被搜索或點擊的次數(shù)排名在預設(shè)排名內(nèi)的視頻的索引加入到一級索引。示例性的,可以將上線時間是2016年的視頻對應的索引加入到一級索引中。
本領(lǐng)域人員可以理解的是,為了保證視頻的召回率,需要建立全部視頻的索引,將全部視頻對應的索引加入到二級索引中。
S102:對除所述一級索引包含的索引對應的視頻之外的其他視頻,抽取用于確定視頻的索引是否需要加入到所述一級索引中的特征數(shù)據(jù)。
本領(lǐng)域技術(shù)人員可以理解的是,抽取視頻的特征數(shù)據(jù),這里所抽取的特征數(shù)據(jù)可以分為三類:一是視頻本身的屬性,例如時長、上線時間、碼率等等;二是通過搜索日志統(tǒng)計的視頻搜索點擊的相關(guān)特征,例如各時間維度上的搜索次數(shù)、點擊次數(shù)等等;三是人工構(gòu)建特征,例如視頻的搜索趨勢等等。
在實際應用中,需要對抽取的特征數(shù)據(jù)進行處理,去除噪音數(shù)據(jù),如將時長為0的視頻對應的特征數(shù)據(jù)刪除,將去除噪聲數(shù)據(jù)后的特征數(shù)據(jù)進行歸一化處理,歸一化的目的為了加快訓練的收斂性。本發(fā)明實施例中的歸一化處理為:去掉特征數(shù)據(jù)的量綱,并將去掉量綱的特征數(shù)據(jù)變?yōu)?0,1)之間的特征數(shù)據(jù)。
在實際應用中,還需要針對除一級索引包含的索引對應的視頻之外的其他視頻設(shè)置標簽,設(shè)置標簽的方法為:根據(jù)當天的搜索日志,判斷視頻在當天是否被搜索展示,如果是,將該視頻的標簽設(shè)置為第一預設(shè)標識,如果否,將該視頻的標簽設(shè)置為第二預設(shè)標識。例如,第一預設(shè)標識可以為1,第二預設(shè)標識可以為0;或者,第一預設(shè)標識可以為A,第二預設(shè)標識可以為B等等。設(shè)置標簽會對視頻對應的索引是否可以加入一級索引產(chǎn)生影響。日志是發(fā)生在網(wǎng)站服務器上的所有事件的記錄,包括用戶訪問記錄,搜索引擎抓取記錄,這里所說的搜索日志是搜索的記錄。
S103:根據(jù)所述特征數(shù)據(jù),訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型。
具體的,所述根據(jù)所述特征數(shù)據(jù),訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型,可以包括:
根據(jù)所述特征數(shù)據(jù),利用梯度下降法,訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型。
需要說明的是,梯度下降法又被稱為最速下降法(Steepest descend method),其理論基礎(chǔ)是梯度的概念,利用負梯度方向來決定每次迭代的新的搜索方向,使得每次迭代能使待優(yōu)化的目標函數(shù)逐步減小。梯度下降法是機器學習算法的其中一種。機器學習算法的本質(zhì)就是如何對問題抽象建模,使一個學習的問題變?yōu)橐粋€可求解的優(yōu)化問題,機器學習就是尋找輸入特征與輸出之間的映射關(guān)系,在尋找映射關(guān)系時,重要的原則就是使得尋找到的映射結(jié)果與原始輸出之間的誤差最小。利用梯度下降法訓練分類模型是現(xiàn)有技術(shù),在這里不進行贅述。需要說明的是,實際應用中,分類模型可以是邏輯回歸模型。邏輯回歸(Logistic Regression)模型是機器學習中的一種分類模型,由于算法的簡單和高效,在實際中應用非常廣泛。
S104:針對除所述一級索引包含的索引對應的視頻之外的每一視頻,根據(jù)訓練好的所述分類模型,確定是否需要將所述視頻的索引加入到所述一級索引中。
本領(lǐng)域技術(shù)人員可以理解的是,訓練好的分類模型可以根據(jù)視頻的特征數(shù)據(jù)或根據(jù)特征數(shù)據(jù)和設(shè)置的標簽,對視頻標記一個數(shù)值,如果這個數(shù)值不小于預設(shè)數(shù)值,則該視頻的索引為確定的索引,否則,該索引不是所確定的索引。
S105:將所確定的索引加入到所述一級索引中。
本領(lǐng)域技術(shù)人員可以理解的是,在將所確定的索引加入到一級索引后,需要判斷一級索引是否能承擔預設(shè)閾值的QPS負載,如果不能,根據(jù)實際情況增加一級索引的索引量,直至一級索引能承擔預設(shè)閾值的QPS負載。例如,可以擴大預設(shè)規(guī)則的范圍,將滿足擴大后的預設(shè)規(guī)則的視頻,將該視頻的索引加入到一級索引,假設(shè),原先預設(shè)規(guī)則為將上線時間為2016年的視頻的索引加入到一級索引,現(xiàn)在可以將上線時間為2016年擴大為2015年和2016年;或者,調(diào)整S104中的預設(shè)數(shù)值的大小,使更多的視頻標記的數(shù)值可以不小于預設(shè)數(shù)值。當然,并不僅限于此,在這里不進行一一贅述。
本領(lǐng)域人員技術(shù)人員可以理解的是,因每天都有新的視頻產(chǎn)生,為了保證召回率,需要在預設(shè)時間內(nèi),更新一級索引和二級索引。
應用本發(fā)明實施例,通過建立兩級索引,容納一級索引所需要的服務器的數(shù)量小于容納二級索引所需要的服務器的數(shù)量,而且一級索引能夠承擔大部分QPS負載,二級索引只需較少的服務器數(shù)量承擔剩余小部分QPS負載,所以,在相同索引量和QPS負載下,節(jié)省了在線服務器的數(shù)量。
下面對減少服務器數(shù)量的原因進行具體說明。
為了滿足用戶的需求,索引需盡可能包含更多的視頻,讓任何用戶在搜索時都能找到自己想看的視頻,即有較高的召回率才能保證搜索服務的質(zhì)量,這就需要把從創(chuàng)建時間較早到最新的所有視頻全部收入索引中。現(xiàn)在每天都會產(chǎn)生新視頻,不斷的添加新的視頻到索引中,造成索引量越來越大。但是,從搜索日志中可以發(fā)現(xiàn),每天用戶搜索到和點擊觀看的視頻只占全部索引包含視頻的小部分,還有很多視頻由于用戶興趣轉(zhuǎn)移,被搜索展示到的機會逐漸減小;從全部索引中劃分出來部分索引,作為一級索引,以全部的視頻作為二級索引,就可節(jié)省大量的服務器。根據(jù)實際情況可知,建立的一級索引可以滿足大部分的視頻搜索請求,但是相較于全部視頻的二級索引,一級索引的容量較小,所以一套一級索引所需的服務器個數(shù)也比全量索引所需服務器數(shù)量少,如果可以用一級索引滿足大部分在線請求,這部分視頻搜索請求對應的服務器就可減少許多,達到節(jié)省服務器的目的,同理,在相同服務器成本下,也可以容納更多的索引量,負載更多的QPS。假設(shè),當前QPS負載總量為Q,需要n套容納全部索引的服務器組可滿足需求,一套服務器組包含p臺服務器,則當前線上所需服務器總數(shù)為n×p,設(shè)一級索引可承擔80%的QPS負載,且一級索引的大小為全部索引的25%,則索引分級所需的服務器總數(shù)為:
n×0.8×(p×0.25)+n×(1-0.8)×p=0.4×n×p
相同索引量和QPS負載下可節(jié)約60%的服務器。因此,應用本發(fā)明實施例,根據(jù)視頻搜索請求估計是在一級索引中搜索還是在二級索引中搜索,根據(jù)估計的結(jié)果,確定用于進行視頻搜索的索引級別,在確定的索引級別中,進行視頻搜索。由于本發(fā)明實施例中一級索引包含全部視頻中部分視頻的索引,而且該一級索引能夠承擔QPS負載,容納一級索引的服務器相對于容納二級索引的服務器的數(shù)量要少;相較于現(xiàn)有技術(shù)中,二級索引承擔全部的QPS,二級索引由于一級索引的分擔QPS負載,為了滿足QPS負載,需要容納二級索引的服務器也減少。在QPS負載和索引量相同的情況下,減少服務器的數(shù)量,同理,在服務器的數(shù)量相同的情況下,相較于現(xiàn)有技術(shù),可以容納更大的索引量和更高的QPS負載。
圖2為本發(fā)明實施例提供的另一種視頻搜索方法的流程示意圖,本發(fā)明圖2所示實施例在圖1所示實施例的基礎(chǔ)上,增加S106、S107、S108和S109。
S106:接收用戶的視頻搜索請求,所述視頻搜索請求中至少包含請求結(jié)果數(shù)。
本領(lǐng)域技術(shù)人員可以理解的是,當接收到的視頻搜索請求,需要對視頻搜索請求進行識別,根據(jù)識別后的視頻搜索請求可以獲得請求結(jié)果數(shù),請求結(jié)果數(shù)是用戶自定義需要返回的搜索結(jié)果的數(shù)量。
S107:估計利用所述一級索引進行視頻搜索返回的第一結(jié)果數(shù),以及利用所述二級索引進行視頻搜索返回的第二結(jié)果數(shù)。
在實際應用中,每個視頻搜索請求針對的視頻在一級索引中都有對應的統(tǒng)計數(shù)量,可以根據(jù)統(tǒng)計數(shù)量針對該視頻搜索請求估計如果在一級索引中進行搜索反饋的第一結(jié)果數(shù);同理,每個視頻搜索請求針對的視頻在二級索引中都有對應的統(tǒng)計數(shù)量,可以根據(jù)統(tǒng)計數(shù)量針對該請求估計如果在二級索引中進行搜索反饋的第二結(jié)果數(shù)。例如,視頻搜索請求要求搜索的是“極限挑戰(zhàn)”,在一級索引中統(tǒng)計的“極限挑戰(zhàn)”的數(shù)量為15,那么,第一結(jié)果數(shù)為15;在二級索引中統(tǒng)計的“極限挑戰(zhàn)”的數(shù)量為23,那么,第二結(jié)果數(shù)為23。
S108:根據(jù)所述請求結(jié)果數(shù)、所述第一結(jié)果數(shù)以及所述第二結(jié)果數(shù),確定用于進行視頻搜索的索引級別。
具體的,所述根據(jù)所述請求結(jié)果數(shù)、所述第一結(jié)果數(shù)以及所述第二結(jié)果數(shù),確定用于進行視頻搜索的索引級別,可以判斷所述第一結(jié)果數(shù)是否不小于所述請求結(jié)果數(shù);如果是,將所述一級索引確定為用于進行視頻搜索的索引;如果否,判斷所述第二結(jié)果數(shù)是否不小于所述請求結(jié)果數(shù);如果是,將所述二級索引確定為用于進行視頻搜索的索引;如果否,將所述一級索引確定為用于進行視頻搜索的索引。
本領(lǐng)域技術(shù)人員可以理解的是,當?shù)谝唤Y(jié)果數(shù)小于請求結(jié)果數(shù),說明如果在一級索引中進行搜索,搜索結(jié)果可能會滿足請求結(jié)果數(shù),則直接在一級索引中進行搜索,如果在一級索引中進行搜索,搜索結(jié)果肯定不滿足請求結(jié)果數(shù),為了提高搜索效率,需要進一步地判斷第二結(jié)果數(shù)是否不小于請求結(jié)果數(shù)。在第二結(jié)果數(shù)也小于請求結(jié)果數(shù)的情況下,為了提高服務效率,直接在一級索引中進行搜索。
例如,第一結(jié)果數(shù)為10,第二結(jié)果數(shù)是20,在請求結(jié)果數(shù)為5的情況下,在一級索引中進行視頻搜索很有可能返回搜索結(jié)果滿足請求結(jié)果數(shù),則將一級索引確定為用于進行視頻搜索的索引;在請求結(jié)果數(shù)為25的情況下,在一級索引和二級索引中進行視頻搜索很有可能返回搜索結(jié)果都不能滿足請求結(jié)果數(shù),則將一級索引確定為進行視頻搜索的索引;在請求結(jié)果數(shù)為15的情況下,在一級索引中進行視頻搜索很有可能返回搜索結(jié)果不能滿足請求結(jié)果數(shù),在二級索引中進行視頻搜索很有可能返回搜索結(jié)果能滿足請求結(jié)果數(shù),則將二級索引確定為進行視頻搜索的索引。
S109:利用所確定級別的索引,進行視頻搜索。
本領(lǐng)域技術(shù)人員可以理解的是,如果一級索引為所確定的索引,則根據(jù)視頻搜索請求,利用一級索引進行視頻搜索;如果二級索引為所確定的索引,則根據(jù)視頻搜索請求,利用二級索引進行視頻搜索。
進一步的,在將所述一級索引確定為用于進行視頻搜索的索引、且所述第一結(jié)果數(shù)不小于所述請求結(jié)果數(shù)的情況下,還可以(圖2為示出):
判斷利用所述一級索引,進行視頻搜索返回的實際搜索結(jié)果數(shù)是否小于所述請求結(jié)果數(shù);
如果是,利用所述二級索引,繼續(xù)進行視頻搜索。
本領(lǐng)域技術(shù)人員可以理解的是,當利用一級索引進行視頻搜索的結(jié)果數(shù)小于請求結(jié)果數(shù)時,為了提高服務質(zhì)量,需要利用二級索引進行視頻搜索。因為二級索引是全部視頻的索引,如果利用二級索引,進行視頻搜索返回的實際搜索結(jié)果數(shù)無論是否小于請求結(jié)果數(shù),都會將實際搜索結(jié)果向用戶進行展示。
進一步的,在將所述一級索引確定為用于進行視頻搜索的索引、且所述第一結(jié)果數(shù)不小于所述請求結(jié)果數(shù)的情況下,還可以(圖2為示出):
針對利用所述一級索引,進行視頻搜索返回的每一搜索結(jié)果,計算所述搜索結(jié)果與所述視頻搜索請求的相關(guān)度;
根據(jù)所述相關(guān)度,確定滿足所述請求的結(jié)果數(shù)量;
判斷所述結(jié)果數(shù)量是否小于所述請求結(jié)果數(shù);
如果是,利用所述二級索引,繼續(xù)進行視頻搜索。
需要說明的是,在將一級索引確定為用于進行視頻搜索的索引、第一結(jié)果數(shù)不小于請求結(jié)果數(shù)的情況下,需要進一步的對搜索結(jié)果進行檢查。計算每一搜索結(jié)果與視頻搜索請求的相關(guān)度,在實際應用中,可以根據(jù)不同的需求,計算相關(guān)度的函數(shù)可以不同。例如,可以將根據(jù)實際情況,將視頻搜索請求中的針對視頻的全部或部分特征賦予不同的權(quán)重,將搜索到的視頻中與視頻搜索請求中相同的特征標記為一個數(shù)字,將不同的特征標記為另一個數(shù)字,根據(jù)標記的結(jié)果和相關(guān)度的函數(shù),可以計算出該視頻與視頻搜索請求的相關(guān)度。如果搜索結(jié)果中的視頻與請求的相關(guān)度不小于預設(shè)閾值,則該視頻為滿足請求的視頻,針對搜索結(jié)果中的每一視頻,都要計算相關(guān)度并判斷相關(guān)度是否不小于預設(shè)閾值,統(tǒng)計相關(guān)度不小于預設(shè)閾值對應的視頻的數(shù)量,如果統(tǒng)計得到的數(shù)量小于請求結(jié)果數(shù),為了提高服務質(zhì)量,需要對二級索引進行搜索,如果統(tǒng)計得到的數(shù)量不小于請求結(jié)果數(shù),則說明利用一級索引進行視頻搜索就能滿足用戶的要求。
需要說明的是,將在第一結(jié)果數(shù)小于請求結(jié)果數(shù)且第二結(jié)果數(shù)小于請求結(jié)果數(shù)的情況下,利用一級索引進行視頻搜索返回的實際搜索結(jié)果,或在利用二級索引進視頻搜索返回的實際搜索結(jié)果直接向用戶展示,不需要將實際搜索結(jié)果數(shù)與請求結(jié)果數(shù)進行比較,也不需要在實際搜索結(jié)果數(shù)不小于請求結(jié)果數(shù)的情況下,計算實際搜索結(jié)果中的每一視頻與視頻搜索請求的相關(guān)度。當然,如果利用一級索引或二級索引進行視頻搜索返回的實際搜索結(jié)果數(shù)量太多,可以按照一定的規(guī)則篩選出預期數(shù)量的搜索結(jié)果。
應用本發(fā)明實施例,通過建立兩級索引,容納一級索引所需要的服務器的數(shù)量小于容納二級索引所需要的服務器的數(shù)量,而且一級索引能夠承擔大部分QPS負載,二級索引只需較少的服務器數(shù)量承擔剩余小部分QPS負載,所以,在相同索引量和QPS負載下,節(jié)省了在線服務器的數(shù)量。因為視頻索引分級而造成了服務質(zhì)量下降,本發(fā)明實施例還通過估計利用分級后的索引進行視頻搜索返回的結(jié)果數(shù),確定用于進行視頻搜索的索引級別,在所確定的索引中進行視頻搜索,可以保證服務質(zhì)量。
圖3為本發(fā)明實施例提供的一種視頻索引分級裝置的結(jié)構(gòu)示意圖,所述裝置可以包括:加入模塊201、抽取模塊202、訓練模塊203和第一確定模塊204。
加入模塊201,用于將全部視頻中滿足預設(shè)規(guī)則的視頻對應的索引加入到所述一級索引中,并將全部視頻對應的索引加入到二級索引中。
加入模塊201,還用于將所確定的索引加入到所述一級索引。
抽取模塊202,用于對除所述一級索引包含的索引對應的視頻之外的其他視頻,抽取用于確定視頻的索引是否需要加入到所述一級索引中的特征數(shù)據(jù)。
訓練模塊203,用于根據(jù)所述特征數(shù)據(jù),訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型。
具體的,所述訓練模塊203,可以用于:
根據(jù)所述特征數(shù)據(jù),利用梯度下降法,訓練用于確定視頻的索引是否需要加入到所述一級索引中的分類模型。
第一確定模塊204,用于針對除所述一級索引包含的索引對應的視頻之外的每一視頻,根據(jù)訓練好的所述分類模型,確定是否需要將所述視頻的索引加入到所述一級索引。
應用本發(fā)明實施例,通過建立兩級索引,容納一級索引所需要的服務器的數(shù)量小于容納二級索引所需要的服務器的數(shù)量,而且一級索引能夠承擔大部分QPS負載,二級索引只需較少的服務器數(shù)量承擔剩余小部分QPS負載,所以,在相同索引量和QPS負載下,節(jié)省了在線服務器的數(shù)量。
圖4為本發(fā)明實施例提供的另一種視頻搜索裝置的結(jié)構(gòu)示意圖,本發(fā)明圖4所示實施例在圖3所示實施例的基礎(chǔ)上,增加接收模塊205、估計模塊206、第二確定模塊207和搜索模塊208。
接收模塊205,用于接收用戶的視頻搜索請求,所述搜索請求中至少包含請求結(jié)果數(shù)。
估計模塊206,用于估計利用所述一級索引進行視頻搜索返回的第一結(jié)果數(shù),以及利用所述二級索引進行視頻搜索返回的第二結(jié)果數(shù)。
第二確定模塊207,用于根據(jù)所述請求結(jié)果數(shù)、所述第一結(jié)果數(shù)以及所述第二結(jié)果數(shù),確定用于進行視頻搜索的索引級別。
具體的,所述第二確定模塊207,可以用于:
判斷所述第一結(jié)果數(shù)是否不小于所述請求結(jié)果數(shù);
如果是,將所述一級索引確定為用于進行視頻搜索的索引;
如果否,判斷所述第二結(jié)果數(shù)是否不小于所述請求結(jié)果數(shù);如果是,將所述二級索引確定為用于進行視頻搜索的索引;如果否,將所述一級索引確定為用于進行視頻搜索的索引。
搜索模塊208,用于利用所確定級別的索引,進行視頻搜索。
進一步的,還可以包括第一處理模塊(圖4未示出):
其中,第一處理模塊,用于在將所述一級索引確定為用于進行視頻搜索的索引、且所述第一結(jié)果數(shù)不小于所述請求結(jié)果數(shù)的情況下,判斷利用所述一級索引,進行視頻搜索返回的實際搜索結(jié)果數(shù)是否小于所述請求結(jié)果數(shù);如果是,利用所述二級索引,繼續(xù)進行視頻搜索。
進一步的,還可以包括第二處理模塊(圖4未示出):
其中,第二處理模塊,用于在將所述一級索引確定為用于進行視頻搜索的索引、且所述第一結(jié)果數(shù)不小于所述請求結(jié)果數(shù)的情況下,針對利用所述一級索引,進行視頻搜索返回的每一搜索結(jié)果,計算所述搜索結(jié)果與所述視頻搜索請求的相關(guān)度;根據(jù)所述相關(guān)度,確定滿足所述視頻搜索請求的結(jié)果數(shù)量;判斷所述結(jié)果數(shù)量是否小于所述請求結(jié)果數(shù);如果是,利用所述二級索引,繼續(xù)進行視頻搜索。
應用本發(fā)明實施例,通過建立兩級索引,容納一級索引所需要的服務器的數(shù)量小于容納二級索引所需要的服務器的數(shù)量,而且一級索引能夠承擔大部分QPS負載,二級索引只需較少的服務器數(shù)量承擔剩余小部分QPS負載,所以,在相同索引量和QPS負載下,節(jié)省了在線服務器的數(shù)量。因為視頻索引分級而造成了服務質(zhì)量下降,本發(fā)明實施例還通過估計利用分級后的索引進行視頻搜索返回的結(jié)果數(shù),確定用于進行視頻搜索的索引級別,在所確定的索引中進行視頻搜索,可以保證服務質(zhì)量。
需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
本說明書中的各個實施例均采用相關(guān)的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于裝置實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述方法實施方式中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以存儲于計算機可讀取存儲介質(zhì)中,這里所稱得的存儲介質(zhì),如:ROM/RAM、磁碟、光盤等。
以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。