專利名稱:基于相關性的圖像選擇的制作方法
技術領域:
本發明總體上涉及標識與搜索項相關的視頻或者其部分。具體而言,本發明的實施例涉及基于視頻的視聽內容來選擇一個或者多個有代表性的縮略像。
背景技術:
媒體托管網站的用戶通常通過輸入關鍵詞或者搜索項以查詢描述媒體內容的文本元數據來瀏覽或者搜索托管的媒體內容。可搜索元數據可以例如包括媒體文件的標題或者媒體內容的描述摘要。這樣的文本元數據經常無法代表視頻的整個內容,在視頻很長并且具有多種場景時尤其如此。換而言之,如果視頻具有大量場景和多種內容,則這些場景中的某一些可能并未在文本元數據中被描述,因此該視頻將不會響應于對很可能描述此類場景的關鍵詞的搜索而被返回。因此,常規搜索引擎經常無法返回與用戶的搜索最相關的媒體內容。常規媒體托管網站的第二問題在于由于托管的媒體內容數量龐大,所以搜索查詢可能響應于用戶查詢來返回數以百計或者甚至數以千計的媒體文件。因而,用戶可能難以評價數以百計或者數以千計的搜索結果中的哪些搜索結果最相關。為了輔助用戶評估哪些搜索結果最相關,網站可以將每個搜索結果與縮略圖一起呈現。傳統上,用來代表視頻的縮略像是來自視頻文件的預定幀(例如,第一幀、中間幀或者最后幀)。然而,以此方式選擇的縮略圖經常沒有代表視頻的實際內容,因為不存在縮略圖的序數位置與視頻的內容之間的關系。另外,縮略圖可能未與用戶的搜索查詢相關。因此,用戶可能難以評價數以百計或者數以千計的搜索結果中的哪些搜索結果最相關。因而,需要用于找到并且呈現媒體搜索結果的將允許用戶容易評估它們的相關性的改進方法。
發明內容
一種系統、計算機可讀存儲介質和計算機實施的方法,用于響應于用戶關鍵詞查詢而找到和呈現視頻搜索結果。視頻托管系統從用戶接收關鍵詞搜索查詢,并且選擇具有與關鍵詞查詢相關的內容的視頻。視頻托管系統使用視頻索引從視頻選擇幀作為代表視頻的內容,該視頻索引存儲多個視頻的幀同與幀相關聯的關鍵詞之間的關鍵詞關聯性得分。 視頻托管系統呈現所選擇的幀作為用于視頻的縮略圖。在一個方面中,一種計算機系統,使用視頻幀的特征與描述視頻內容的關鍵詞之間的關系的機器學習的模型來生成可搜索視頻索引。視頻托管系統接收已標注訓練數據集,該數據集包括媒體項目(例如,圖像或者音頻剪輯)集以及描述媒體項目的內容的一個或者多個關鍵詞。視頻托管系統提取表征媒體項目的內容的特征。訓練機器學習的模型以學習在具體特征與描述內容的關鍵詞之間的相關性。繼而基于視頻的特征和機器學習的模型來生成視頻索引,該視頻索引將視頻數據庫中的視頻幀映射到關鍵詞。有利地,視頻托管系統基于視頻的實際內容而不是僅依賴于文本元數據來找到并且呈現搜索結果。因此,視頻托管系統讓用戶能夠更好地評價搜索結果集合中的視頻的相關性。在本發明內容和以下具體實施方式
中描述的特征和優點并非囊括性的。本領域普通技術人員按照其附圖、說明書和權利要求將清楚諸多附加特征和優點。
圖1是根據一個實施例的視頻托管系統100的高級框圖。圖2是圖示了根據一個實施例的學習引擎140的高級框圖。圖3是圖示了根據一個實施例的用于生成已學習特征-關鍵詞模型的由學習引擎 140執行的步驟的流程圖。圖4是圖示了根據一個實施例的用于生成特征數據集255的由學習引擎140執行的步驟的流程圖。圖5是圖示了根據一個實施例的用于生成特征-關鍵詞矩陣的由學習引擎140執行的步驟的流程圖。圖6是圖示了根據一個實施例的圖像注解引擎160的具體視圖的框圖。圖7是圖示了根據一個實施例的用于找到并且呈現視頻搜索結果的由視頻托管系統100執行的步驟的流程圖。圖8是圖示了根據一個實施例的用于基于視頻元數據為視頻選擇縮略圖的由視頻托管系統100執行的步驟的流程圖。圖9是圖示了根據一個實施例的用于基于用戶搜索查詢中的關鍵詞為視頻選擇縮略圖的由視頻托管系統100執行的步驟的流程圖。圖10是根據一個實施例的用于基于用戶關鍵詞查詢來標識視頻內的具體事件或者場景的由圖像注解引擎160執行的步驟的流程圖。附圖僅出于圖示的目的而描繪本發明的優選實施例。本領域技術人員根據下文討論將容易認識到可以運用這里所示結構和方法的替代實施例而未脫離這里描述的本發明原理。
具體實施例方式系統架構圖1圖示了視頻托管系統100的一個實施例。視頻托管系統100響應于用戶關鍵詞查詢來找到并且呈現視頻搜索結果集合。視頻托管系統100基于視頻的實際視聽內容而不是僅依賴于與視頻關聯的文本元數據來呈現搜索結果。每個搜索結果與代表視頻的視聽內容的縮略圖一起呈現,該縮略圖輔助用戶評價結果的相關性。在一個實施例中,視頻托管系統100包括前端服務器110、視頻搜索引擎120、視頻注解引擎130、學習引擎140、視頻數據庫175、視頻注解索引185和特征-關鍵詞模型195。 視頻托管系統100代表任何允許客戶端設備150的用戶經由搜索和/或瀏覽界面訪問視頻內容的系統。視頻源可以來自用戶的視頻上傳、系統或者其它視頻網站或者數據庫的搜索或者抓取(crawl)等或者其任何組合。例如在一個實施例中,視頻托管系統100可以被配置用于允許用戶上傳內容。在另一實施例中,視頻托管系統100可以被配置用于僅通過抓CN 102549603 A取其它源或者搜索這樣的源從這樣的源來離線(為了構建視頻數據庫)或者在查詢時間獲得視頻。各種部件(或稱模塊,例如前端服務器110、視頻搜索服務器120、視頻注解引擎 130、學習引擎140、視頻數據庫175、視頻注解索引185和特征-關鍵詞模型195,的每一個被實施為具有一個或者多個計算機的服務器類計算機系統的部分,該計算機包括CPU、存儲器、網絡接口、外圍接口和其它公知部件。部件本身優選地運行操作系統(例如LINUX)、具有通用高性能CPU、IG或者更多存儲器和100G或者更多盤儲存器。當然可以使用其它類型的計算機,并且有望隨著將來開發更強大計算機,可以根據這里的教導來配置它們。在這一實施例中,模塊存儲于計算機可讀存儲設備(例如,硬盤)上、加載到存儲器中并且由作為系統100的部分而包括的一個或者多個處理器執行。備選地,硬件或者軟件模塊可以存儲于系統100內的別處。當配置用于執行這里描述的各種操作時,如本領域技術人員理解的那樣,通用計算機變成具體計算機,因為這樣的計算機存儲的特定功能和數據以與如它的底層操作系統和硬件邏輯可以提供的它的本機能力不同的方式配置它。用于實施該系統的適當視頻托管系統100是Y0UTUBE 網站;其它視頻托管系統也已知并且可以適于根據這里公開的教導來操作。將理解這里描述的視頻托管系統100的命名部件代表本發明的一個實施例并且其它實施例可以包括其它部件。此外,其它實施例可以不含這里描述的部件和/ 或以不同方式在模塊之中分布描述的功能。此外,劃歸多個部件的功能可以并入到單個部件中。圖1還圖示了通過網絡160而可通信地耦合到視頻托管系統100的三個客戶端設備150。客戶端設備150可以是能夠支持與系統100的通信接口的任何類型的通信設備。 適當設備可以包括但不限于個人計算機、移動計算機(例如,筆記本計算機)、個人數字助理(PDA)、智能電話、移動電話以及游戲控制臺和設備、具有網絡功能的查看設備(例如,機頂盒、電視機和接收器)。在圖1中示出了僅三個客戶端150以便使描述簡化和清楚。實際上,數以千計或者數以百萬計的客戶端150可以經由網絡160連接到視頻托管系統100。網絡160可以是有線或者無線網絡。網絡160的示例包括因特網、內部網、WiFi網絡、WiMAX網絡、移動電話網絡或者其組合。本領域技術人員將認識到,其它實施例可以具有與這里描述的模塊不同的模塊并且可以用不同方式在模塊之中分布功能。在客戶端設備與系統100之間的通信方法并不限于任何具體用戶接口或者網絡協議,但是在一個典型實施例中,用戶經由客戶端設備150的運用標準網際協議的常規web瀏覽器來與視頻托管系統100交互。客戶端150經由前端服務器110來與視頻托管系統100交互以搜尋視頻數據庫 175中存儲的視頻內容。前端服務器110提供允許用戶輸入搜索查詢(例如,關鍵詞)的控制和元素。響應于查詢,前端服務器110提供與查詢相關的搜索結果集合。在一個實施例中,搜索結果包括指向視頻數據庫175中的相關視頻內容的鏈接列表。前端服務器110可以將鏈接與例如縮略像、標題和/或文本摘要等與視頻內容相關聯的信息一起呈現。 前端服務器110還提供允許用戶從搜索結果選擇視頻用于在客戶端150上查看的控制和元
ο視頻搜索引擎120處理經由前端服務器110接收的用戶查詢,并且生成包括,指向視頻數據庫175中與查詢相關的視頻或者視頻部分的鏈接的結果集合,并且是用于此功能的一個方式。視頻搜索引擎120還可以執行搜索功能,例如根據搜索結果的相關性對搜索結果排名和/或對搜索結果計分。在一個實施例中,視頻搜索引擎120使用各種文本查詢技術基于與視頻關聯的文本元數據來找到相關視頻。在另一實施例中,視頻搜索引擎120基于視頻或者視頻部分的實際視聽內容而不是依賴于文本元數據來搜尋視頻或者視頻部分。 例如,如果用戶錄入搜索查詢“車賽”,則視頻搜索引擎120可以找到并且返回來自電影車賽場景,盡管該場景可能僅僅是電影中未在文本元數據中被描述的簡短部分。下文將參照圖10更具體描述用于使用視頻搜索引擎以基于視頻的視聽內容對視頻的特定場景定位的過程。在一個實施例中,視頻搜索引擎120還選擇縮略像或者縮略像集以與每個取回的搜索結果一起顯示。每個縮略像包括代表視頻的視聽內容并且響應于用戶查詢的圖像幀,并且輔助用戶確定搜索結果的相關性。下文參照圖8-圖9更具體描述用于選擇一個或者多個有代表性的縮略像的方法。視頻注解引擎130利用與來自視頻數據庫175的視頻的幀或者場景的視聽內容相關的關鍵詞注解幀或者場景,并且將這些注解存儲到視頻注解索引185,并且是一種用于執行這一功能的手段。在一個實施例中,視頻注解引擎130根據來自視頻數據庫175的視頻的采樣部分(例如,視頻幀或者簡短音頻剪輯)生成特征向量。視頻注解引擎130繼而將已學習特征-關鍵詞模型195應用于提取的特征向量以生成關鍵詞得分集。每個關鍵詞得分代表在關鍵詞與一個或者多個特征之間的已學習關聯的相對強度。因此,得分可以理解為描述關鍵詞描述幀的內容的相對可能性。在一個實施例中,視頻注解引擎130也根據每個視頻的幀的關鍵詞得分對幀排名,這有助于在查詢時間對視頻計分和排名。視頻注解引擎130將用于每幀的關鍵詞得分存儲到視頻注解引擎185。視頻搜索引擎120可以使用這些關鍵詞得分以確定與用戶查詢最相關的視頻或者視頻部分并且確定代表視頻內容的縮略像。下文參照圖6更具體描述視頻注釋引擎130。學習引擎140使用機器學習來訓練特征-關鍵詞模型195,該模型將圖像或者簡短音頻剪輯的特征與描述它們的可視或者音頻內容的關鍵詞相關聯,并且是一種用于執行這一功能的手段。學習引擎140處理用代表訓練圖像、視頻和/或音頻剪輯(“媒體項目”) 的音頻和/或可視內容的一個或者多個關鍵詞標注的已標注媒體項目的集合。例如,可以用諸如“海豚”、“游泳”、“海洋”等關鍵詞標注在海洋中游泳的海豚的圖像。學習引擎140從已標注訓練數據(圖像、視頻或者音頻)提取特征集,并且分析所提取的特征以確定在具體特征與標注的關鍵詞之間的統計關聯性。例如,在一個實施例中,學習引擎140生成權重、 頻率值或者判別函數的矩陣,以指示在已被用于標注媒體項目的關鍵詞與根據媒體項目的內容而導出的特征之間的關聯性的相對強度。學習引擎140將在關鍵詞與特征之間的導出的關系存儲到特征-關鍵詞模型195。下文參照圖2更具體描述學習引擎140。圖2是圖示了根據一個實施例的學習引擎140的具體視圖的框圖。在所示實施例中,學習引擎包括點通(click-through)模塊210、特征提取模塊220、關鍵詞學習模塊M0、 關聯性學習模塊230、已標注訓練數據集M5、特征數據集255和關鍵詞數據集沈5。本領域技術人員將認識到,其它實施例可以具有與這里描述的模塊不同的模塊并且可以用不同方式在模塊之中分布功能。此外,劃歸各種模塊的功能可以由多個引擎執行。點通模塊210提供用于獲取已標注訓練數據集245的自動化機制并且是一種用于執行這一功能的手段。點通模塊210跟蹤視頻托管系統100上的或者一個或者多個外部媒體搜索網站上的用戶搜索查詢。當用戶執行搜索查詢并且從搜索結果選擇媒體項目時,點通模塊210存儲用戶查詢中的關鍵詞與用戶所選媒體項目之間的正(positive)關聯性。點通模塊210也可以存儲在關鍵詞與未選搜索結果之間的負(negative)關聯性。例如,用戶搜尋“海豚”并且接收圖像結果集合。用戶從列表選擇的圖像可能實際上包含海豚的圖像并且因此提供用于圖像的良好標簽。基于學習的正和/或負關聯性,點通模塊210確定用于隨附于每個圖像的一個或者多個關鍵詞。例如,在一個實施例中,點通模塊210在觀察到圖像與關鍵詞之間的閾值數目的正關聯性之后(例如在搜尋“海豚”的5個用戶從結果集合選擇相同圖像之后)存儲用于媒體項目的關鍵詞。因此,點通模塊210可以基于監視用戶搜索和在選擇搜索結果時的所得用戶動作,在統計上標識關鍵詞與圖像之間的關系。這一方式利用個體用戶對什么內容在他們的搜索行為的普通過程中針對給定關鍵詞作為相關圖像有價值的了解。在一些實施例中,關鍵詞標識模塊240可以使用自然語言技術(例如取詞干和過濾)以預處理搜索查詢數據以便標識和提取關鍵詞。點通模塊210將標注的媒體項目以及與其相關聯的關鍵詞存儲到已標注訓練數據集M5。在一個備選實施例中,已標注訓練數據集M5可以代之以存儲來自外部源四1 (例如,已標注儲備圖像或者音頻剪輯數據庫)的訓練數據。在一個實施例中,從與圖像或者音頻剪輯關聯的元數據(例如文件名、標題或者文本摘要)提取關鍵詞。已標注訓練數據集 245還可以存儲從上文討論的源的組合獲取的數據(例如,使用從點通模塊210和從一個或者多個外部數據庫導出的數據)。特征提取模塊220從已標注訓練數據集245提取特征集,并且是一種用于執行這一功能的手段。特征以這樣的方式來表征媒體的不同方面,即,相似對象的圖像將具有相似的特征并且相似聲音的音頻剪輯將具有相似的特征。為了從圖像提取特征,特征提取模塊 220可以應用文理算法、邊緣檢測算法或者顏色標識算法以提取圖像特征。對于音頻剪輯, 特征提取模塊220可以向聲波應用各種變換(例如,生成聲譜圖)、應用帶通濾波器或者自相關的集合、繼而應用向量量化算法以提取音頻特征。在一個實施例中,特征提取模塊220將訓練圖像分段成“分片(patch) ”并且提取用于每個分片的特征。分片可以有高度和寬度范圍(例如64X64個像素)。分片可以重疊或者不重疊。特征提取模塊220將無監督學習算法應用于特征數據,以標識最有效表征圖像的多數分片的特征子集。例如,特征提取模塊220可以應用聚類算法(例如K均值聚類)以標識彼此相似或者在圖像中共同出現的特征聚類或者組。因此,例如特征提取模塊 220可以標識10,000個最有代表性的特征模式和相關聯的分片。類似地,特征提取模塊220將訓練音頻剪輯分段成簡短“聲音”并且提取用于聲音的特征。與訓練圖像一樣,特征提取模塊220應用無監督學習以標識最有效地表征訓練音頻剪輯的音頻特征子集。關鍵詞標識模塊240基于已標注訓練數據集245來標識頻繁出現的關鍵詞集,并且是一種用于執行這一功能的手段。例如,在一個實施例中,關鍵詞標識模塊240確定已標注訓練數據集中的N個最常用關鍵詞(例如N = 20,000)。關鍵詞標識模塊220在關鍵詞數據集沈5中存儲頻繁出現關鍵詞集。關聯性學習模塊230確定特征數據集255中的特征與關鍵詞數據集265中的關鍵詞之間的統計關聯性,并且是一種用于執行這一功能的手段。例如,在一個實施例中,關聯性學習模塊230以特征-關鍵詞矩陣的形式來表示關聯性。特征-關鍵詞矩陣包括具有m 行和η列的矩陣,其中m行中的每行對應于來自特征數據集255的不同特征向量而η列中的每列對應于關鍵詞數據集沈5中的不同關鍵詞(例如,m = 10,000并且η = 20,000)。 在一個實施例中,特征-關鍵詞矩陣的每個條目包括權重或者得分,該權重或者得分指示特征與訓練數據集中的關鍵詞之間的相關性的相對強度。例如矩陣數據集中的條目可以指示用關鍵詞“海豚”標注的圖像將指示具體特征向量Y的相對可能性。關聯性學習模塊230 將學習的特征-關鍵詞矩陣存儲到已學習特征-關鍵詞模型195。在其它備選實施例中,可以使用不同關聯函數和表示(例如將關鍵詞與可視和/或音頻特征相關的非線性函數)。圖3是圖示了用于生成特征-關鍵詞模型195的方法的一個實施例的流程圖。首先,矩陣學習引擎140例如從外部源或者從如上文描述的點通模塊210接收(30 已標注訓練數據集M5。關鍵詞學習模塊240確定(304)已標注訓練數據對5中的最頻繁出現關鍵詞(例如前20,000個關鍵詞)。特征提取模塊220繼而生成(306)用于訓練數據M5 的特征,并且將有代表性的特征存儲到特征數據集255。關聯性學習模塊230生成(308)將關鍵詞映射到特征的特征-關鍵詞矩陣,并且將該映射存儲到特征-關鍵詞模型195。圖4圖示了用于根據已標準訓練圖像245生成(306)特征的過程的一個示例實施例。在該示例實施例中,特征提取模塊220通過確定代表與圖像分片關聯的顏色數據的顏色直方圖來生成(40 顏色特征。用于給定分片的顏色直方圖存儲該分片內的每個顏色的像素數目。特征提取模塊220還生成(404)紋理特征。在一個實施例中,特征提取模塊220 使用局部二進制模式(LBP)代表每個分片內的邊緣和紋理數據。用于像素的LBP代表鄰近像素的相對像素強度值。例如,用于給定像素的LBP可以是8位代碼(對應于半徑為1個像素的圓中的8個鄰近像素),1指示鄰近像素具有較高強度值,而0指示鄰近像素具有較低強度值。特征提取模塊繼而確定用于每個分片的直方圖,該直方圖存儲給定分片內的LBP 值計數。特征提取模塊220將聚類應用(406)于顏色特征和紋理特征。例如,在一個實施例中,特征提取模塊220將K均值聚類應用于顏色直方圖,以標識最好地代表分片的多個聚類(例如20個)。對于每個聚類,確定代表該聚類的主導顏色的聚類質心(特征向量),由此創建用于所有分片的主導顏色特征集。特征提取模塊220對LBP直方圖單獨聚類,以標識最好地表征分片紋理的紋理直方圖(即紋理特征)子集,由此還標識用于分片的主導紋理特征集。特征提取模塊220繼而生成(408)用于每個特征的特征向量。在一個實施例中, 用于分片的紋理和顏色直方圖被聯合,以形成用于該分片的單個特征向量。特征提取模塊 220將無監督學習算法(例如聚類)應用于用于分片的特征向量積,以生成(410)代表大多數分片的特征向量子集(例如10,000個最有代表性的特征向量)。特征提取模塊220將特征向量子集存儲到特征數據庫255。對于音頻訓練數據,特征提取模塊220可以通過計算美爾頻率倒譜系數(MFCC)來生成音頻特征向量。這些系數基于對數功率譜在非線性頻率標度上的線性預先變換來代表聲音的短期功率譜。音頻特征向量繼而被存儲到特征數據集255,并且可以與圖像特征向量相似地被處理。在另一實施例中,特征提取模塊220通過使用穩定化聽覺圖像(SAI)來生成音頻特征向量。在又一實施例中,一個或者多個帶通濾波器應用于音頻數據,并且基于在聲道之內和之間的相關性來導出特征。在又一實施例中,聲譜圖被用作音頻特征。圖5圖示了用于從特征數據集255和關鍵詞數據集265迭代地學習特征關鍵詞矩陣的示例過程。在一個實施例中,關聯性學習模塊230通過用初始權重填充條目來初始化 (502)特征-關鍵詞矩陣。例如,在一個實施例中,初始權重都設置成零。對于來自關鍵詞數據集265的給定關鍵詞K,關聯性學習模塊230隨機選擇(504)正訓練項目ρ+(即用關鍵詞K標注的訓練項目)并且隨機選擇負訓練項目ρ_(即未用關鍵詞K標注的訓練項目)。 特征提取模塊220如上文描述的那樣確定(506)用于正訓練項目和負訓練項目的特征向量。關聯性學習引擎230通過使用特征-關鍵詞矩陣將特征向量從特征空間變換到關鍵詞空間(例如通過將特征向量與特征-關鍵詞矩陣相乘產生關鍵詞向量)來生成(508)用于正訓練項目和負訓練項目中的每個訓練項目的關鍵詞得分。關聯性學習模塊230繼而確定 (510)在關鍵詞得分之間的差值。如果差值大于預定義閾值(即正和負訓練項目被正確排序),則矩陣不變(512)。否則,矩陣條目被設置(514)使得差值大于閾值。關聯性學習模塊 230繼而確定(516)是否滿足停止標準。如果未滿足停止標準,則矩陣學習用新的正和負訓練項目執行另一迭代520以進一步改進矩陣。如果滿足停止條件,則學習過程停止(518)。在一個實施例中,當先前選擇的正負訓練對的滑動窗上正確排序的對數平均而言超過了預定義閾值時,停止標準得以滿足。備選地,可以通過將學習的矩陣應用于單獨確認數據集來測量學習的矩陣的性能,并且停止標準在性能超過預定義閾值時得以滿足。在一個替代實施例中,為了得分在關鍵詞之間兼容,在學習過程的每次迭代中,針對不同關鍵詞而不是相同關鍵詞K計算并且比較關鍵詞得分。因此,在這一實施例中,選擇正訓練項目ρ+作為用第一關鍵詞K1標注的訓練項目,并且選擇負訓練項目Ρ-作為用不同關鍵詞K2標注的訓練項目。在這一實施例中,關聯性學習模塊230生成用于每個訓練項目 /關鍵詞對(即正對和負對)的關鍵詞得分。關聯性學習模塊230繼而以與上文描述的方式相同的方式比較關鍵詞得分,盡管關鍵詞得分與不同關鍵詞有關。在替代實施例中,關聯性學習模塊230學習不同類型的特征-關鍵詞模型195 (例如,生成模型或者判別模型)。例如,在一個備選實施例中,關聯性學習模塊230導出可以應用于特征集,以獲得與那些特征關聯的一個或者多個關鍵詞的判別函數(即分類器)。在這一實施例中,關聯性學習模塊230將聚類算法應用于與圖像分片或者音頻段相關聯的具體類型的特征或者所有特征。關聯性學習模塊230生成用于關鍵詞數據集265中的每個關鍵詞的分類器。分類器包括判別函數(例如,超平面)和權重或者其它值的集合,其中權重或者值指定特征在區分媒體項目類與另一媒體項目類的判別能力。關聯性學習模塊230將學習的分類器存儲到已學習特征-關鍵詞模型195。在一些實施例中,特征提取模塊220和關聯性學習模塊230迭代地生成用于新訓練數據245的特征集,并且重新訓練分類器直至該分類器收斂。當添加新的訓練特征集基本上未改變與特征集關聯的判別函數和權重時,分類器收斂。在一個具體實施例中,在線支持向量機算法被用來基于與新訓練數據245相關聯的特征值,來迭代地重新計算超平面函數直至超平面函數收斂。在其它實施例中,關聯性學習模塊230定期地重新訓練分類器。在一些實施例中,關聯性學習模塊230在連續基礎上,例如無論何時向已標注訓練數據集Μ5添加新搜索查詢數據(例如來自新點通數據),重新訓練分類器。在任何前述實施例中,所得特征-關鍵詞矩陣代表在(如已經應用于圖像/音頻文件的)關鍵詞與根據圖像/音頻文件導出的特征向量之間的關系的模型。該模型可以理解為在關鍵詞的共同出現和代表圖像/音頻文件的物理特性(例如,顏色、紋理、頻率信息) 方面表達底層物理關系。圖6圖示了視頻注解引擎130的具體視圖。在一個實施例中,視頻注解引擎130 包括視頻采樣模塊610、紋理提取模塊620和縮略圖選擇模塊630。本領域技術人員將認識至IJ,其它實施例可以具有與這里描述的模塊不同的模塊并且可以用不同方式在模塊之中分布功能。此外,劃歸各種模塊的功能可以由多個引擎執行。視頻采樣模塊610從視頻數據庫175中的視頻采樣視頻內容幀。在一個實施例中, 視頻采樣模塊610從視頻數據庫175中的個體視頻采樣視頻內容。采樣模塊610可以按照固定周期速率(例如每10秒1幀)、依賴于內在因素(例如視頻的長度)的速率或者基于外在因素(例如視頻的受歡迎度(例如將按照比基于查看次數的更少受歡迎的視頻更高的頻率對更多受歡迎的視頻采樣))的速率對視頻采樣。備選地,視頻采樣模塊610使用場景分割以基于場景邊界對幀采樣。例如視頻采樣模塊610可以從每幀采樣至少一幀以保證采樣的幀代表視頻的整個內容。在另一備選實施例中,視頻采樣模塊610采樣視頻的全部場景而不是個體幀。特征提取模塊620使用與上文關于學習引擎140描述的特征提取模塊220相同的方法。特征提取模塊620生成用于每個采樣幀或者場景的特征向量。例如,如上文描述的那樣,每個特征向量可以包括10,000個條目,每個條目代表通過向量量化獲得的具體特征。幀注解模塊630生成用于視頻的每個采樣幀的關鍵詞關聯性得分。幀注解模塊 630將已學習特征-關鍵詞模型195應用到用于采樣幀的特征向量,以確定用于該幀的關鍵詞關聯性得分。例如,幀注解模塊630可以使用特征-關鍵詞矩陣來執行矩陣乘法,以將特征向量變換到關鍵詞空間。幀注解模塊630因此生成用于每幀的關鍵詞關聯性得分向量 (“關鍵詞得分向量”),其中關鍵詞得分向量中的每個關鍵詞關聯性得分指定幀與關鍵詞數據集沈5中的頻繁使用關鍵詞集的關鍵詞相關的可能性。幀注解模塊630與幀的標記(例如,幀在幀作為其一部分的視頻中的偏移)和視頻注解索引185中的視頻的標記相關聯地存儲該幀的關鍵詞得分向量。因此,每個采樣幀基于根據幀而導出的特征向量來與描述每個關鍵詞與幀之間的關系的關鍵詞向量得分相關聯。另外,如上文描述的那樣,數據庫中的每個視頻因此與(可以用于縮略圖的)一個或者多個采樣幀相關聯,并且這些采樣幀與關鍵詞相關聯。在備選實施例中,視頻注解引擎130生成用于幀集合(例如場景)而不是每個個體采樣幀的關鍵詞得分。例如,可以針對視頻的具體場景存儲關鍵詞得分。對于音頻特征, 關鍵詞得分可以與跨越具體音頻剪輯的幀集合(如例,來自具體個人的話音)相關聯地存儲。操作和使用當用戶輸入一個或者多個詞的搜索查詢時,搜索引擎120訪問視頻注解索引185 以找到并且呈現相關視頻結果集合(例如通過在索引185中執行查找)。在一個實施例中, 搜索引擎120使用視頻注解索引185中的用于與所選關鍵詞匹配的輸入查詢詞的關鍵詞得分來找到與搜索查詢相關的視頻,并且對結果集合中的相關視頻排名。視頻搜索引擎120 也可以提供用于每個搜索結果的指示與搜索查詢的感知相關性的相關性得分。除了視頻注解索引185中的關鍵詞得分之外或者備選地,搜索引擎120也可以訪問包括與視頻關聯的文本元數據的常規索引以便找到搜索結果、對搜索結果排名和計分。圖7是圖示了用于找到并且呈現視頻搜索結果的由視頻托管系統100執行的主要過程的流程圖。前端服務器Iio從用接收(70 包括一個或者多個查詢項的搜索查詢。搜索引擎120確定(704)滿足關鍵詞搜索查詢的結果集合;可以使用任何類型的搜索算法和索引結果來選擇這一結果集合。結果集合包括指向一個或者多個視頻的鏈接,該視頻具有與查詢項相關的內容。搜索引擎120繼而基于關鍵詞得分從結果集合中的每個視頻選擇(706)代表視頻的內容的一幀(或者多個幀)。對于每個搜索結果,前端服務器Iio呈現(708)所選擇的幀作為一個或者多個有代表性的縮略圖的集合。圖8和圖9圖示了可以用來基于關鍵詞得分來選擇(906)幀的兩個不同實施例。 在圖8的實施例中,視頻搜索引擎120基于與視頻數據庫175中的視頻相關聯地被存儲的文本元數據來選擇代表視頻的縮略圖。視頻搜索引擎120從視頻數據庫選擇(80 視頻以用于縮略圖選擇。視頻搜索引擎120繼而從與視頻數據庫175中的視頻相關聯地被存儲的元數據提取(804)關鍵詞。元數據可以例如包括作者或者其他用戶所提供視頻的視頻標題或者文本摘要。視頻搜索引擎120繼而訪問視頻注解索引185,并且使用提取的關鍵詞來選擇(806)代表視頻的一個或者多個有代表性的幀(例如,通過選擇針對提取的關鍵詞具有最高排名關鍵詞得分的幀或者幀集)。前端服務器110繼而顯示(808)所選擇的幀作為用于搜索結果中的視頻的縮略圖。這一實施例有利地保證所選縮略圖將實際上代表視頻內容。例如考慮標題為“海豚游泳”的視頻,該視頻包括游泳海豚的一些場景,但是其它場景僅為空曠海洋。視頻搜索引擎120將選擇實際上描繪海豚的一個或者多個幀而不是任意選擇縮略圖幀(例如第一幀或者中心幀)。因此,用戶更好地能夠評價搜索結果與查詢的相關性。圖9是圖示了用于選擇縮略圖用于與搜索結果集合中的視頻一起呈現的過程的第二實施例的流程圖。在這一實施例中,一個或者多個所選縮略圖依賴于在用戶搜索查詢中提供的關鍵詞。首先,搜索引擎120基于用戶搜索查詢來標識(902)視頻搜索結果集合。 搜索引擎120從用戶的搜索查詢提取(904)關鍵詞,以用于在選擇用于每個搜索結果的有代表性的縮略圖幀時使用。對于結果集合中的每個視頻,視頻搜索引擎120繼而訪問視頻注解索引185,并且使用提取的關鍵詞來選擇(906)視頻的一個或者多個有代表性的幀(例如通過選擇針對提取的關鍵詞具有最高排名關鍵詞得分的一個或者多個幀)。前端服務器 110繼而顯示(908)所選擇的幀作為用于搜索結果中的視頻的縮略圖。這一實施例有利地保證視頻縮略圖實際上與用戶的搜索查詢有關。例如假設用戶錄入查詢“滑板上的狗”。標題為“玩把戲的動物”的視頻包括由滑板上的狗主演的相關場景、但是也包括無狗或者滑板的若干其它場景。圖9的方法有利地保證呈現的縮略圖代表用戶搜尋的場景(即滑板上的狗)。因此,用戶可以容易評價搜索結果與關鍵詞查詢的相關性。視頻托管系統100的另一特征允許用戶使用視頻注解索引185來搜尋視頻內的具體場景或者事件。例如在長篇動作電影中,用戶可能想要使用查詢項(例如“車賽”或者 “搏斗”)來搜尋搏斗場景或者車賽場景。視頻托管系統100繼而僅取回與查詢相關的一個或者多個具體場景(而不是整個視頻)。圖10圖示了用于找到與關鍵詞查詢相關的場景或者事件的過程的一個示例實施例。搜索引擎120從用戶接收(100 搜索查詢并且從搜索串標識(1004)關鍵詞。使用關鍵詞,搜索引擎120標識視頻注解索引185(例如,通過執行查找功能)以取回針對提取的關鍵詞具有最高關鍵詞得分的多個幀1006 (例如,前10個)。 搜索引擎繼而確定(1008)用于視頻內的相關場景的邊界。例如,搜索引擎120可以使用場景分割技術以找到包括高度相關幀的場景的邊界。備選地,搜索引擎120可以分析周圍幀的關鍵詞得分以確定邊界。例如,搜索引擎120可以返回這樣的視頻剪輯,在該視頻剪輯中的所有采樣幀具有在閾值以上的關鍵詞。搜索引擎120基于關鍵詞得分來選擇(1010)用于結果集合中的每個視頻的縮略像。前端服務器110繼而顯示(1012)所選縮略圖代表的視頻的排名集合。視頻托管系統100的另一特征是有能力基于視頻注解索引185來選擇可以在回放用戶所選視頻之前、期間或者之后顯示的“有關視頻”的集合。在這一實施例中,視頻托管系統100從標題或者其它元數據與所選視頻的回放關聯的關鍵詞。視頻托管系統100使用提取的關鍵詞來查詢視頻注解索引185尋找與關鍵詞相關的視頻;這標識可能在其實際圖像/音頻內容方面與用戶所選的視頻相似而不是僅在其元數據中具有相同關鍵詞的其它視頻。視頻托管系統100繼而如上文描述的那樣選擇用于有關視頻的縮略圖并且在用戶界面顯示的“有關視頻”部分中呈現縮略圖。這一實施例有利地基于回放視頻的內容向用戶提供可能令人感興趣的其它視頻。視頻托管系統100的另一特征是有能力基于使用視頻注解索引185來找到并且呈現可以在回放所選視頻之前、期間或者之后顯示的廣告。在一個實施例中,視頻托管系統 100在用戶查看視頻時實時取回與視頻幀關聯的關鍵詞(即通過使用當前幀索引在注解索引185中執行查找)。視頻托管系統100繼而可以使用取回的關鍵詞來查詢廣告數據庫尋找與關鍵詞相關的廣告。視頻托管系統100繼而可以在視頻回訪時實時顯示與當前幀有關的廣告。上文描述的實施例有利地允許媒體宿主提供與用戶的搜索查詢最相關的視頻內容項目和有代表性的縮略像。通過學習在文本查詢與非文本媒體內容之間的關聯性, 視頻托管系統較僅依賴于文本元數據的系統而言提供改進的搜索結果。已經關于優先數目的實施例具體描述本發明。本領域技術人員將理解還可以在其它實施例中實現本發明。首先,部件的具體命名、術語的大寫、屬性、數據結構或者任何其它編程或者結構方面并非必需或者重要的,并且實施本發明或者它的特征的機制可以具有不同名稱、格式或者協議。另外可以如描述的那樣經由硬件與軟件的組合或者完全在硬件單元中實施系統。功能在這里描述的各種系統部件之間的具體劃分僅為舉例而非必需;單個系統部件執行的功能可以代之以由多個部件執行,而多個部件執行的功能可以代之以由單個部件執行。例如可以在多個或者一個模塊中提供媒體宿主服務的具體功能。上文描述的一些部分在對信息的操作的算法和符號表示呈現本發明的特征。這些算法描述和表示是本領域技術人員用來向本領域其他技術人員最有效傳達他們的工作實質的手段。這些操作盡管在功能或者邏輯上加以描述、但是理解為由計算機程序實施。另外也已經證實將這些操作布置稱為模塊或者代碼設備有時是便利的而不失一般性。然而應當記住所有這些和相似術語將與適當物理數量關聯并且僅為應用于這些數量的便利標志。除非如根據本討論清楚的那樣另有具體明示,理解在說明書全文中,利用諸如“處理”或者“計算”或者“運算”或者“確定”或者“顯示”等術語的討論指代計算機系統的動作和過程或者相似電子計算設備,該計算機系統或者電子計算設備操縱并且變換如在計算機系統存儲器或者寄存器或者其它這樣的信息存儲、傳輸或者顯示設備內表示為物理(電子)數量的數據。本發明的某些特征包括這里以算法的形式描述的過程步驟和指令。所有這樣的過程步驟、指令或者算法由計算設備執行,這些計算設備包括某一形式的處理單元(例如微處理器、微控制器、專用邏輯電路等)以及存儲器(RAM、ROM等)和例如適合用于接收或者提供數據的輸入/輸出設備。 本發明也涉及一種用于執行這里的操作的裝置。這一裝置可以被具體構造用于期望目的,或者它可以包括存儲于計算機中的計算機程序有選擇地激活或者重新配置的通用計算機,在該情況下,通用計算機在結構和功能上等效于專用于執行這里描述的功能和操作的具體計算機。體現計算機可執行數據(例如程序代碼和數據)的計算機程序存儲于有形計算機可讀存儲介質中,該存儲介質例如是但不限于任何類型的盤(包括軟盤、光盤、 CD-ROM、光磁盤)、只讀存儲器(ROM)、隨機存取存儲器(RAM)、EPR0M、EEPR0M、磁卡或者光學卡、專用集成電路(ASIC)或者適合于持久存儲電子編碼指令的任何類型的介質。還應當注意這樣的計算機程序(它們原本作為通過更改物理介質(例如更改或者變化介質的物理結構和/或性質(例如電氣、光學、機械、磁、化學性質))來存儲于這樣的介質中的數據而存在)本身并非抽象想法或者概念或者表示而代之以是物理過程產生的物理人為產品,這些物理過程將物理介質從一個狀態變換成另一狀態(例如電荷改變或者磁極性改變)以便在介質中持久存儲計算機程序。另外,在說明書中提及的計算機可以包括單個處理器或者可以是如下架構,這些架構運用多個處理器設計以求增加的計算能力。
最后應當注意以在說明書中使用的語言已經主要出于可讀性和指導的目的而加以選擇并且可能尚未被選擇用來界定或者限制發明主題內容。因而本發明的公開內容旨在于舉例說明而限制本發明的范圍。
權利要求
1.一種用于創建可搜索的視頻索引的計算機實施的方法,所述方法由計算機系統執行并且包括接收已標注訓練數據集,所述已標注訓練數據集包括媒體項目的集合以及描述所述媒體項目的內容的一個或者多個關鍵詞;提取表征所述媒體項目的所述內容的特征;訓練機器學習的模型以學習所提取的所述媒體項目的所述特征與描述所述內容的所述關鍵詞之間的相關性;以及基于視頻數據庫中的視頻的特征以及所述機器學習的模型,生成將所述視頻數據庫中的所述視頻的幀映射到關鍵詞的所述視頻索引。
2.根據權利要求1所述的方法,其中所述媒體項目包括圖像。
3.根據權利要求1所述的方法,其中所述媒體項目包括音頻剪輯。
4.根據權利要求1所述的方法,其中提取表征所述媒體項目的所述內容的所述特征包括將每個圖像分割成多個分片;生成用于每個所述分片的特征向量;以及應用聚類算法以確定所述已標注訓練數據中的多個最有代表性的特征向量。
5.根據權利要求4所述的方法,其中所述分片至少部分地重疊。
6.根據權利要求4所述的方法,還包括確定所述已標注訓練數據集中的多個最常被找到的關鍵詞。
7.根據權利要求6所述的方法,還包括存儲最有代表性的關鍵詞與最常被找到的特征向量之間的關聯性。
8.根據權利要求6所述的方法,其中存儲最常被找到關鍵詞與最常被找到的特征向量之間的關聯性包括生成關聯函數的集合,每個關聯函數代表所述最有代表性的特征向量之一與所述最常被找到的關鍵詞之一之間的關聯強度。
9.根據權利要求7所述的方法,其中存儲最常被找到的關鍵詞與最常被找到的特征向量之間的關聯性包括生成特征-關鍵詞矩陣,其中所述特征-關鍵詞矩陣的第一維度中的條目每一個對應于所述最有代表性的特征向量中不同的一個,并且其中所述特征-關鍵詞矩陣的第二維度中的條目每個對應于所述最常被找到的關鍵詞中不同的一個。
10.根據權利要求9所述的方法,其中生成所述特征-關鍵詞矩陣包括 通過利用初始權重填充所述條目來初始化所述特征-關鍵詞矩陣;選擇與第一關鍵詞相關聯的正訓練媒體項目以及與第二關鍵詞不相關聯的負訓練媒體項目;提取用于所述正訓練媒體項目和負訓練媒體項目的特征以獲得正特征向量和負特征向量;使用所述特征-關鍵詞矩陣向所述正特征向量應用變換以獲得用于所述正訓練媒體項目的第一關鍵詞得分;使用所述特征-關鍵詞矩陣向所述負特征向量應用變換以獲得用于所述負訓練媒體項目的第二關鍵詞得分;確定用于所述正媒體訓練項目的所述關鍵詞得分是否比用于所述負訓練媒體項目的所述關鍵詞得分至少高出閾值;以及響應于用于所述正媒體訓練項目的所述關鍵詞得分沒有比用于所述負訓練媒體項目的所述關鍵詞得分至少高出閾值,調節所述特征-關鍵詞矩陣中的所述權重。
11.根據權利要求1所述的方法,其中生成所述視頻索引包括 對所述視頻數據庫中的視頻的幀進行采樣;計算代表所述第一采樣幀的內容的所述視頻的第一采樣幀的第一特征向量; 將所述機器學習的模型應用于所述第一特征向量以生成所述第一采樣幀與選擇的關鍵詞之間的關鍵詞關聯性得分;以及將所述關鍵詞關聯性得分與所述第一采樣幀相關聯地存儲在所述視頻索引中。
12.根據權利要求1所述的方法,其中生成所述視頻索引包括 對所述視頻數據庫中的視頻的場景進行采樣;計算代表所述第一采樣場景的內容的所述視頻的第一采樣場景的第一特征向量; 將所述機器學習的模型應用于所述第一特征向量以生成所述第一采樣場景與選擇的關鍵詞之間的關鍵詞關聯性得分;以及將所述關鍵詞關聯性得分與所述第一采樣場景相關聯地存儲在所述視頻索引中。
13.一種用于呈現視頻搜索結果的計算機實施的方法,所述方法由計算機系統執行并且包括接收視頻;使用視頻注解索引從所述視頻選擇幀作為所述視頻的內容的代表,所述視頻注解索引存儲多個視頻的幀同與所述多個視頻的所述幀相關聯的關鍵詞之間的關鍵詞關聯性得分; 以及提供選擇的幀作為所述視頻的縮略圖。
14.根據權利要求13所述的方法,其中從所述視頻選擇所述幀作為所述視頻的內容的代表包括選擇代表期望視頻內容的關鍵詞;訪問所述視頻注解索引以確定所述視頻的幀與選擇的關鍵詞之間的關鍵詞關聯性得分;以及根據所述視頻注解索引來選擇具有與所述選擇的關鍵詞的最高排名關鍵詞關聯性得分的幀。
15.根據權利要求14所述的方法,其中選擇代表所述期望視頻內容的所述關鍵詞包括使用所述視頻的標題作為所述選擇的關鍵詞。
16.根據權利要求14所述的方法,其中選擇代表所述期望視頻內容的所述關鍵詞包括使用所述關鍵詞查詢作為所述選擇的關鍵詞。
17.根據權利要求13所述的方法,其中接收所述視頻包括 從所述用戶接收關鍵詞查詢;以及從視頻數據庫選擇具有與所述關鍵詞查詢相關的內容的視頻。
18.根據權利要求18所述的方法,其中選擇具有與所述關鍵詞查詢相關的內容的所述視頻包括確定具有與來自所述關鍵詞查詢的關鍵詞的高關鍵詞關聯性得分的視頻幀;確定與所述關鍵詞查詢相關的場景的場景邊界,視頻的所述場景包括具有所述高關鍵詞關聯性得分的所述幀;以及選擇所述場景作為所述選擇的視頻。
19.根據權利要求18所述的方法,還包括基于所得集合中的視頻的幀與所述關鍵詞查詢中的關鍵詞之間的所述關鍵詞關聯性得分,在所述所得集合中的多個視頻之中對所述選擇的視頻進行排名。
20.根據權利要求18所述的方法,還包括基于所述視頻的幀與所述關鍵詞查詢中的關鍵詞之間的所述關鍵詞關聯性得分,呈現所述選擇的視頻的相關性得分。
21.一種計算機可讀存儲介質,存儲用于創建可搜索視頻索引的計算機可執行代碼,所述計算機可執行程序代碼在執行時使應用執行以下步驟接收已標注訓練數據集,所述已標注訓練數據集包括媒體項目的集合以及描述所述媒體項目的內容的一個或者多個關鍵詞;提取表征所述媒體項目的所述內容的特征;訓練機器學習的模型以學習所提取的所述媒體項目的所述特征與描述所述內容的所述關鍵詞之間的相關性;以及基于視頻數據庫中的視頻的特征以及所述機器學習的模型,生成將所述視頻數據庫中的所述視頻的幀映射到關鍵詞的所述視頻索引。
22.根據權利要求21所述的計算機可讀存儲介質,其中所述媒體項目包括圖像。
23.根據權利要求21所述的計算機可讀存儲介質,其中所述媒體項目包括音頻剪輯。
24.根據權利要求21所述的計算機可讀存儲介質,其中提取表征所述媒體項目的所述內容的所述特征包括將每個圖像分割成多個分片;生成用于每個所述分片的特征向量;以及應用聚類算法以確定所述已標注訓練數據中的多個最有代表性的特征向量。
25.根據權利要求M所述的計算機可讀存儲介質,其中所述分片至少部分地重疊。
26.根據權利要求M所述的計算機可讀存儲介質,還包括確定所述已標注訓練數據集中的多個最常被找到的關鍵詞。
27.根據權利要求沈所述的計算機可讀存儲介質,還包括存儲最常被找到的關鍵詞與最常被找到的特征向量之間的關聯性。
28.根據權利要求沈所述的計算機可讀存儲介質,其中存儲最常被找到關鍵詞與最常被找到的特征向量之間的關聯性包括生成關聯函數的集合,每個關聯函數代表所述最有代表性的特征向量之一與所述最常被找到的關鍵詞之一之間的關聯強度。
29.根據權利要求27所述的計算機可讀存儲介質,其中存儲最常被找到的關鍵詞與最有代表性的特征向量之間的關聯性包括生成特征-關鍵詞矩陣,其中所述特征-關鍵詞矩陣的第一維度中的條目每一個對應于所述最有代表性的特征向量中不同的一個,并且其中所述特征-關鍵詞矩陣的第二維度中的條目每個對應于所述最常被找到的關鍵詞中不同的一個。
30.根據權利要求四所述的計算機可讀存儲介質,其中生成所述特征-關鍵詞矩陣包括通過利用初始權重填充所述條目來初始化所述特征-關鍵詞矩陣; 選擇與第一關鍵詞相關聯的正訓練媒體項目以及與第二關鍵詞不相關聯的負訓練媒體項目;提取用于所述正訓練媒體項目和負訓練媒體項目的特征以獲得正特征向量和負特征向量;使用所述特征-關鍵詞矩陣向所述正特征向量應用變換以獲得用于所述正訓練媒體項目的第一關鍵詞得分;使用所述特征-關鍵詞矩陣向所述負特征向量應用變換以獲得用于所述負訓練媒體項目的第二關鍵詞得分;確定用于所述正媒體訓練項目的所述關鍵詞得分是否比用于所述負訓練媒體項目的所述關鍵詞得分至少高出閾值;以及響應于用于所述正媒體訓練項目的所述關鍵詞得分沒有比用于所述負訓練媒體項目的所述關鍵詞得分至少高出閾值,調節所述特征-關鍵詞矩陣中的所述權重。
31.根據權利要求21所述的計算機可讀存儲介質,其中生成所述視頻索引包括 對所述視頻數據庫中的視頻的幀進行采樣;計算代表所述第一采樣幀的內容的所述視頻的第一采樣幀的第一特征向量; 將所述機器學習的模型應用于所述第一特征向量以生成所述第一采樣幀與選擇的關鍵詞之間的關鍵詞關聯性得分;以及將所述關鍵詞關聯性得分與所述第一采樣幀相關聯地存儲在所述視頻索引中。
32.根據權利要求21所述的計算機可讀存儲介質,其中生成所述視頻索引包括 對所述視頻數據庫中的視頻的場景進行采樣;計算代表所述第一采樣場景的內容的所述視頻的第一采樣場景的第一特征向量; 將所述機器學習的模型應用于所述第一特征向量以生成所述第一采樣場景與選擇的關鍵詞之間的關鍵詞關聯性得分;以及將所述關鍵詞關聯性得分與所述第一采樣場景相關聯地存儲在所述視頻索引中。
33.一種計算機可讀存儲介質,存儲用于呈現視頻索引結果的計算機可執行代碼,所述計算機可執行程序代碼在執行時使應用執行以下步驟接收視頻;使用視頻注解索引從所述視頻選擇幀作為所述視頻的內容的代表,所述視頻注解索引存儲多個視頻的幀同與所述多個視頻的所述幀相關聯的關鍵詞之間的關鍵詞關聯性得分; 以及提供選擇的幀作為所述視頻的縮略圖。
34.根據權利要求33所述的計算機可讀存儲介質,其中從所述視頻選擇所述幀作為所述視頻的內容的代表包括選擇代表期望視頻內容的關鍵詞;訪問所述視頻注解索引以確定所述視頻的幀與選擇的關鍵詞之間的關鍵詞關聯性得分;以及根據所述視頻注解索引來選擇具有與所述選擇的關鍵詞的最高排名關鍵詞關聯性得分的幀。
35.根據權利要求34所述的計算機可讀存儲介質,其中選擇代表所述期望視頻內容的所述關鍵詞包括使用所述視頻的標題作為所述選擇的關鍵詞。
36.根據權利要求34所述的計算機可讀存儲介質,其中選擇代表所述期望視頻內容的所述關鍵詞包括使用所述關鍵詞查詢作為所述選擇的關鍵詞。
37.根據權利要求33所述的計算機可讀存儲介質,其中接收所述視頻包括 從所述用戶接收關鍵詞查詢;以及從視頻數據庫選擇具有與所述關鍵詞查詢相關的內容的視頻。
38.根據權利要求37所述的計算機可讀存儲介質,其中選擇具有與所述關鍵詞查詢相關的內容的所述視頻包括確定具有與來自所述關鍵詞查詢的關鍵詞的高關鍵詞關聯性得分的視頻幀; 確定與所述關鍵詞查詢相關的場景的場景邊界,視頻的所述場景包括具有所述高關鍵詞關聯性得分的所述幀;以及選擇所述場景作為所述選擇的視頻。
39.根據權利要求37所述的計算機可讀存儲介質,還包括基于所得集合中的視頻的幀與所述關鍵詞查詢中的關鍵詞之間的所述關鍵詞關聯性得分,在所述所得集合中的多個視頻之中對所述選擇的視頻進行排名。
40.根據權利要求37所述的計算機可讀存儲介質,還包括基于所述視頻的幀與所述關鍵詞查詢中的關鍵詞之間的所述關鍵詞關聯性得分,呈現所述選擇的視頻的相關性得分。
41.一種視頻托管系統,用于找到并且呈現與關鍵詞查詢相關的視頻,所述系統包括 前端服務器,配置用于從用戶接收關鍵詞查詢并且呈現結果集合,所述結果集合包括具有與所述關鍵詞查詢相關的內容的視頻以及代表所述視頻的所述內容的縮略像;視頻注解索引,包括關鍵詞與視頻的幀之間的映射,所述映射根據機器學習的模型而被導出;以及視頻搜索引擎,配置用于訪問所述視頻注解索引,以確定具有與所述關鍵詞相關的內容的所述視頻,以及確定代表所述視頻的所述內容的所述縮略像。
42.根據權利要求41所述的系統,還包括視頻數據庫,存儲所述視頻搜索引擎可搜索的視頻,其中在所述視頻注解索引中對所述存儲的視頻的幀編索引,以將所述幀映射到描述其內容的關鍵詞。
43.根據權利要求41所述的系統,還包括視頻注解引擎,配置用于使用通過機器學習獲得的已學習特征-關鍵詞模型來確定視頻數據庫中的視頻的幀與描述其內容的關鍵詞之間的映射。
44.根據權利要求43所述的系統,其中所述視頻注解引擎包括 視頻采樣模塊,配置用于對來自視頻數據庫的視頻的幀進行采樣; 特征提取模塊,配置用于生成代表每個采樣視頻幀的特征向量;以及CN 102549603 A幀注解模塊,配置用于將所述已學習特征-關鍵詞模型應用于所述特征向量,以確定用于每個所述采樣視頻幀的關鍵詞得分,所述關鍵詞得分與相關的采樣幀相關聯地被編索引到所述視頻注解索引中。
45.根據權利要求41所述的系統,還包括學習引擎,配置用于學習特征-關鍵詞模型,所述特征-關鍵詞模型將已標注訓練數據集中的圖像或者音頻剪輯的特征映射到描述其內容的關鍵詞。
46.根據權利要求44所述的系統,其中所述學習引擎包括特征提取模塊,配置用于生成特征數據集,所述特征數據集包括用于所述已標注訓練數據集的多個最有代表性的特征向量;關鍵詞學習模塊,配置用于生成關鍵詞數據集,所述關鍵詞數據集包括所述已標注訓練數據集中的多個最常出現關鍵詞;以及關聯性學習模塊,適于生成所述關鍵詞-特征模型,所述關鍵詞-特征模型映射特征數據集中的所述特征向量與所述關鍵詞數據集中的所述關鍵詞之間的關聯性。
47.根據權利要求46所述的系統,其中所述學習引擎還包括點通模塊,配置用于通過跟蹤媒體搜索網站上的用戶搜索查詢來自動獲取用于所述已標注訓練數據的標簽,以及通過觀察用戶選擇的搜索結果和所述用戶未選擇的搜索結果來學習用于媒體項目的標簽。
48.一種用于呈現廣告的方法,所述方法由計算機執行并且包括使用基于web的視頻播放器來播放選擇的視頻;在回放所述選擇的視頻期間監視視頻的當前幀;使用視頻的所述當前幀來訪問視頻注解索引以確定與所述當前幀關聯的一個或者多個關鍵詞;使用所述一個或者多個關鍵詞來訪問廣告數據庫以選擇與所述一個或者多個關鍵詞關聯的廣告;以及在回放所述當前幀期間提供所述廣告用于播放。
49.根據權利要求48所述的方法,其中所述視頻注解索引根據機器學習的模型將視頻幀映射到一個或者多個關鍵詞。
50.一種用于呈現相關視頻的集合的方法,所述方法由計算機執行并且包括使用基于web的視頻播放器來播放選擇的視頻;提取與所述選擇的視頻相關聯的元數據,所述元數據包括描述所述選擇的視頻的一個或者多個關鍵詞;使用所述一個或者多個關鍵詞來訪問視頻注解索引以確定一個或者多個相關視頻;以及提供所述一個或者多個相關視頻以用于顯示,每個相關視頻由代表其內容的縮略像表示。
51.根據權利要求50所述的方法,其中所述視頻注解索引根據機器學習的模型將關鍵詞映射到視頻數據庫中的視頻。
全文摘要
一種系統、計算機可讀存儲介質和計算機實施的方法,響應于用戶關鍵詞查詢來呈現視頻搜索結果。視頻托管系統使用機器學習過程以學習特征-關鍵詞模型,該特征-關鍵詞模型將來自已標注訓練數據集的媒體內容的特征與描述它們的內容的關鍵詞關聯。該系統使用學習的模型以基于在視頻中找到的特征來提供與關鍵詞查詢相關的視頻搜索結果。另外,該系統使用學習的模型來確定并且呈現代表視頻的一個或者多個縮略像。
文檔編號G06K9/62GK102549603SQ201080042760
公開日2012年7月4日 申請日期2010年8月18日 優先權日2009年8月24日
發明者G·徹奇克, S·本吉奧 申請人:谷歌公司