谷歌的Dataset Search開放至今,為什麼還搜不到我的資料集?
本月早些時候,谷歌推出了資料集搜尋專用引擎 Dataset Search,這是一個建立在元資料上的搜尋引擎,可以對網路上數千個儲存庫中的數百萬個數據集進行搜尋。谷歌團隊稱其為「Google Scholar for data」。本文將介紹構建 Dataset Search 的一些技術細節,概述有助於開發開放資料生態系統的內容。此外,谷歌還解決了自 Dataset Search 啟動以來反饋最多的問題——「為什麼我的資料集沒有出現在谷歌 Dataset Search 中?」
概述
谷歌 Dataset Search 高度依賴大大小小的資料集提供者,利用開放 schema.org/Dataset 標準在自己的站點上新增結構化的元資料。元資料指定了每個資料集的顯著屬性:名稱和描述、空間和時間覆蓋、出處資訊等。Dataset Search 利用這一元資訊,將其與谷歌上的其他可用資源連線,併為這個豐富的元資料語料庫建立索引。建好索引之後就可以開始響應使用者檢索,並找出最符合檢索的結果。
谷歌 Dataset Search 技術概覽
利用來自資料集提供者的結構化元資料
當谷歌的搜尋引擎處理帶有 schema.org/Dataset 標記的網頁時,它知道那裡有資料集元資料,並處理那個結構化元資料以建立描述頁面上每個標註資料集的「記錄」。schema.org 的使用允許開發人員將這種結構化資訊嵌入到 HTML 中,而不影響頁面的外觀,同時使資訊的語義對所有搜尋引擎可見。
然而,無論 schema.org 定義或指引有多麼精確,一些元資料將不可避免地不完整、錯誤或完全缺失。此外,某些欄位之間的區別可能很模糊:資料集儲存庫屬於資料集的釋出者還是提供者?如何區分引用描述資料集建立的科學論文和描述資料集使用的論文?事實上,許多這樣的問題都會激發熱烈的學術討論。
儘管存在這些問題,Dataset Search 必須在前端提供統一、可預測的使用者體驗。因此,在某些情況下,我們用更通用的欄位名(如「provided by」)來顯示來自多個其他欄位(如「publisher」、「creator」等)的值。在其他情況下,我們根本無法使用某些欄位:如果資料集提供者在闡釋某個特定欄位時出現了各種各樣的錯誤,谷歌就暫時繞過該欄位,並與社群一起理清指引。每一項決策中都有一個特定的問題用於解決困難——「最有助於資料發現的因素是什麼?」這種對正在處理的任務的關注使得一些問題比最初看起來容易。
連線重複資料集
對於流行的資料集,在多個資源庫中重複出現是很常見的事情。谷歌使用了多種訊號來確定兩個資料集是否重複。例如,schema.org 可以通過(schema.org/sameAs)中指出的某種方法明確兩個資料集之間的聯絡,即利用明確指示條目標識的參考網頁的 URL(例如,條目的維基百科頁面、維基資料條目或官方網站的 URL)。這是將不同重複資料集連線起來並指向規範資料集來源的最好方法。其它訊號還包括兩個資料集的描述指向相同的規範頁面,具有相同 DOI,共享資料集下載連結,或者在其它元資料欄位中有大量重疊。這些訊號都不是完全獨立的,因此谷歌將它們結合起來以得到資料集重複的最強可能標示。
用谷歌知識圖譜進行協調
谷歌的知識圖譜是一個很強大的平臺,描述和連線了很多實體之間關係的資訊,包括出現在資料集元資料中的資訊:提供資料集的機構、資料集覆蓋範圍的位置 、贊助機構等等。因此,谷歌嘗試用知識圖譜中的條目來協調元資料欄位中提到的資訊。基於兩個原因,谷歌能以很高的精度實現這種協調。首先,我們知道知識圖譜中的條目型別和元資料欄位中的大致期望實體型別。因此,我們可以限制知識圖譜中用於匹配特定元資料欄位值的實體型別。例如,一個數據集的提供者應該匹配知識圖譜中的一個機構實體,而不是匹配覆蓋範圍的位置。其次,網頁資訊的語境可以幫助減少選擇的數量,這對於分辨擁有相同縮略詞的機構尤其有用。例如,縮略詞 CAMRA 可以代表「Chilbolton Advanced Meteorological Radar」,或者「Campaign for Real Ale」。如果我們使用了網頁上的條目,當在網頁上出現諸如「雲」、「蒸汽」和「水」等關鍵詞時,我們可以更容易地確定 CAMRA 實際上是 Chilbolton Radar(Chilbolton 雷達)。
這種協調提供了許多提升使用者搜尋體驗的可能性。例如,Dataset Search 可以通過用與頁面其餘部分相同的語言顯示元資料的協調值來定位結果。此外,它可以使用同義詞,校正拼寫錯誤,擴充套件縮略詞,或使用知識圖譜中的其它關係進行查詢擴充套件。
連線到其它谷歌資源
谷歌擁有很多其它可增強資料集元資料的資料資源,例如 Google Scholar。知道哪個資料集被參考和引用可以實現兩個目的:
-
提供有關資料集重要性和顯著性的有價值資訊;
-
為資料集作者提供檢視引用和獲得榮譽的簡便方式。
實際上,谷歌希望的是,強調使用資料的出版物可以帶來更加健康的資料引用生態。目前,由於缺少描述人們如何引用資料的模型,從 Dataset Search 到 Google Scholar 的連結還是相當近似的。谷歌嘗試使用 DOI 以外的資訊以提供更好的覆蓋範圍預測,但引用一個數據集的文章數量因而變得很不準確。谷歌希望在這個問題上取得更多進展,以得到更高的預測精度。
搜尋和結果的排序
當用戶進行一次查詢時,谷歌進行資料集語料庫的搜尋,其工作方式和 Google Search 搜尋網頁的方式沒多大區別。對於任意一次搜尋,我們需要確定一個文件是否和查詢相關聯,然後對相關文件進行排序。由於對使用者如何搜尋資料集並沒有相應的大規模研究,作為首個近似方案,其利用了谷歌網頁排序方法。然而,資料集排序和網頁排序是不同的,因此谷歌添加了一些涉及元資料質量、引用等的額外資訊。隨著 Dataset Search 被使用者更頻繁地使用,谷歌將能更好地理解使用者的資料集搜尋行為,從而顯著提升排序質量。
更好的開放資料生態
谷歌構建 Dataset Search 的目的是為資料發現帶來積極的影響。該搜尋引擎的標記決策依賴於開放的標準(schema.org、W3C DCAT、JSON-LD),因為 Dataset Search 僅能做到和其支援的開放資料生態一樣好的程度。因此,谷歌的 Dataset Search 希望支援一個強大的開放資料生態,通過鼓勵:
-
廣泛支援描述釋出資料的開放元資料格式;
-
進一步發展描述更多資料型別和更多細節的開放元資料格式;
-
發展類似引用研究文獻的引用資料文化,為建立和釋出資料的作者提供應有的榮譽;
-
發展利用該元資料的工具,以實現資料的更好發現和利用。
開放元資料標準的採用與資料集搜尋的持續發展相結合,可促進更健康的開放資料生態系統。在這個生態系統中,資料是研究的「一等公民」。
那麼你的資料集為什麼搜不到呢?
現在大致理清了一個思路,即 Dataset Search 的質量與網頁上元資料的質量息息相關。對於「為什麼某些資料集沒有出現在谷歌的搜尋結果中」這一問題,最常見的答案是:該資料集沒有任何標記。只要將該頁面彈出到結構化資料測試工具中,就可以看到標記是否存在。如果沒有看到任何標記,並且你有該頁面的修改許可權,那麼你可以新增標記,如果沒有頁面的修改許可權,你可以讓有許可權的人執行這一步驟,這將使他們的頁面更容易被每個人發現。
谷歌希望 Dataset Search 對社群有所幫助,幫助使用者有所發現從而節省時間,幫助科學研究人員節省資料檢索時間,從而讓他們有更多的時間去利用資料。
原文連結:https://ai.googleblog.com/2018/09/building-google-dataset-search-and.html
產業 谷歌 資料集 搜尋引擎
相關資料
Knowledge graph
知識圖譜本質上是語義網路,是一種基於圖的資料結構,由節點(Point)和邊(Edge)組成。在知識圖譜裡,每個節點表示現實世界中存在的“實體”,每條邊為實體與實體之間的“關係”。知識圖譜是關係的最有效的表示方式。通俗地講,知識圖譜就是把所有不同種類的資訊(Heterogeneous Information)連線在一起而得到的一個關係網路。知識圖譜提供了從“關係”的角度去分析問題的能力。 知識圖譜這個概念最早由Google提出,主要是用來優化現有的搜尋引擎。不同於基於關鍵詞搜尋的傳統搜尋引擎,知識圖譜可用來更好地查詢複雜的關聯資訊,從語義層面理解使用者意圖,改進搜尋質量。比如在Google的搜尋框裡輸入Bill Gates的時候,搜尋結果頁面的右側還會出現Bill Gates相關的資訊比如出生年月,家庭情況等等。
來源:機器之心

機器之心是國內領先的前沿科技媒體和產業服務平臺,關注人工智慧、機器人和神經認知科學,堅持為從業者提供高質量內容和多項產業服務。