日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Contextualizing Airbnb by Building Knowledge Graph

發(fā)布時(shí)間:2025/3/15 编程问答 13 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Contextualizing Airbnb by Building Knowledge Graph 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

我想你去洛杉磯旅行。 第一步是訪問(wèn)A irbnb.com并搜索“洛杉磯”。在后端,查詢“洛杉磯”被翻譯成地圖上的一個(gè)區(qū)塊; 此塊中的可用房屋將在許多搜索結(jié)果頁(yè)面中返回。 這足以讓你制定旅行計(jì)劃嗎?

隨著Airbnb逐漸走向成為端到端的旅行平臺(tái) ,我們?cè)絹?lái)越重要的是提供旅行見解,幫助人們決定何時(shí)旅行,去哪里以及旅行時(shí) 做些什么 。 例如,洛杉磯最受歡迎的地標(biāo)和社區(qū)是什么? 是否有任何即將舉行的音樂(lè)會(huì)或體育賽事可能與我的旅行相符? 哪些Airbnb房源最適合家庭? 去洛杉磯一年中最實(shí)惠的時(shí)間是什么? 所有這些內(nèi)容和背景對(duì)度假計(jì)劃者都有幫助,我們可以提供的準(zhǔn)確,有用的旅行信息越多,我們的用戶就越信任我們。

為了擴(kuò)展我們回答這些旅行查詢的能力,我們需要一種系統(tǒng)的方法來(lái)存儲(chǔ)和提供有關(guān)實(shí)體 (例如城市,地標(biāo),事件等)的高質(zhì)量信息以及它們之間關(guān)系 (例如,城市中最受歡迎的地標(biāo)) ,玉米餅最好的鄰居等)。 為了解決這個(gè)問(wèn)題,我們?cè)谶^(guò)去一年中建立并應(yīng)用了一個(gè)知識(shí)圖表來(lái)存儲(chǔ)和提供結(jié)構(gòu)化數(shù)據(jù) ,這些數(shù)據(jù)連接了我們的庫(kù)存獨(dú)特之處,用戶所尋找的內(nèi)容以及旅行世界所提供的內(nèi)容。

在我們之前的文章中 ,我們分享了對(duì)Airbnb的知識(shí)圖及其工作原理的高級(jí)概述。 在這篇文章中,我們將深入探討如何構(gòu)建知識(shí)圖基礎(chǔ)架構(gòu)并在此過(guò)程中分享我們的知識(shí)。 我們還將介紹如何使用知識(shí)圖對(duì)我們的庫(kù)存進(jìn)行分類并將整個(gè)平臺(tái)置于上下文中。


基礎(chǔ)設(shè)施

下圖說(shuō)明了截至今天Airbnb的知識(shí)圖服務(wù)的架構(gòu)。 它可以分為3個(gè)組件: 圖形存儲(chǔ), 圖形查詢API存儲(chǔ)更改器 。 在本節(jié)中,我們將詳細(xì)介紹每個(gè)細(xì)節(jié)。

知識(shí)圖形基礎(chǔ)結(jié)構(gòu)的體系結(jié)構(gòu)

圖存儲(chǔ)

我們?yōu)橹R(shí)圖基礎(chǔ)架構(gòu)構(gòu)建的第一件事是圖形存儲(chǔ)模塊 。 我們采用了一個(gè)內(nèi)部關(guān)系數(shù)據(jù)存儲(chǔ)作為底層數(shù)據(jù)庫(kù),我們?cè)谄渖蠈?shí)現(xiàn)了一個(gè)節(jié)點(diǎn)存儲(chǔ)邊緣存儲(chǔ) ,以便可以直接在節(jié)點(diǎn)(實(shí)體)上執(zhí)行CRUD(創(chuàng)建,讀取,更新和刪除)操作。邊(關(guān)系),而不是處理數(shù)據(jù)庫(kù)表中的行。 為每個(gè)節(jié)點(diǎn)或邊緣分配全局唯一標(biāo)識(shí)符 (GUID)。 我們可以使用GUID獲取節(jié)點(diǎn)和邊緣; 此外,我們還可以獲取連接某些節(jié)點(diǎn)的特定類型的邊。

為了將本體和關(guān)系構(gòu)建到知識(shí)圖中,圖存儲(chǔ)中的節(jié)點(diǎn)被劃分為不同的節(jié)點(diǎn)類型。 此外,每個(gè)節(jié)點(diǎn)類型都由唯一的模式定義。 例如, 地點(diǎn)節(jié)點(diǎn)由名稱和GPS坐標(biāo)定義,而事件節(jié)點(diǎn)類型由名稱,日期和地點(diǎn)定義。 這些不同的節(jié)點(diǎn)類型存儲(chǔ)在底層數(shù)據(jù)庫(kù)的單獨(dú)表中。

類似地,邊緣可以是不同的邊緣類型,以反映實(shí)體之間的不同類型的關(guān)系(例如, 城市中的地標(biāo)和國(guó)內(nèi)的語(yǔ)言 )。 與RDFS中的域和范圍相對(duì)應(yīng),每個(gè)邊類型對(duì)于從其開始和連接的節(jié)點(diǎn)類型具有可配置約束。 例如, 城市中的地標(biāo)必須從地標(biāo)節(jié)點(diǎn)連接到城市節(jié)點(diǎn)。

此外,圖存儲(chǔ)設(shè)計(jì)用于存儲(chǔ)來(lái)自不同數(shù)據(jù)源的邊,以便多個(gè)團(tuán)隊(duì)(作為數(shù)據(jù)所有者)可以向知識(shí)圖提供數(shù)據(jù)。 因此,每個(gè)邊緣還存儲(chǔ)每個(gè)邊緣的源和置信度分?jǐn)?shù) 。 為了保證數(shù)據(jù)所有者的操作不太可能影響其他團(tuán)隊(duì)的數(shù)據(jù),我們將每個(gè)數(shù)據(jù)源的邊緣存儲(chǔ)在底層數(shù)據(jù)庫(kù)的單獨(dú)表中。 存儲(chǔ)還可以存儲(chǔ)邊緣的額外有效載荷; 一個(gè)例子是Home列表與地標(biāo)附近的地標(biāo)之間的距離。

在Airbnb,知識(shí)圖中的數(shù)據(jù)并不總是通過(guò)在線查詢消費(fèi),因此我們還將節(jié)點(diǎn)和邊緣的每日快照轉(zhuǎn)儲(chǔ)到數(shù)據(jù)倉(cāng)庫(kù)中以供離線使用 。 應(yīng)用程序(例如我們的自動(dòng)完成服務(wù))依賴于知識(shí)圖的數(shù)據(jù)轉(zhuǎn)儲(chǔ)來(lái)滿足其產(chǎn)品需求。 此外,我們還在數(shù)據(jù)轉(zhuǎn)儲(chǔ)上應(yīng)用機(jī)器學(xué)習(xí)技術(shù),用于圖形嵌入 , 知識(shí)推理等目的。

最后,我們很樂(lè)意反思我們對(duì)圖形存儲(chǔ)的底層數(shù)據(jù)庫(kù)的選擇。 為什么我們采用關(guān)系數(shù)據(jù)庫(kù)而不是圖數(shù)據(jù)庫(kù) ? 簡(jiǎn)短的回答是操作開銷 。 當(dāng)時(shí),我們?cè)贏irbnb上沒(méi)有生產(chǎn)就緒的圖形數(shù)據(jù)庫(kù),使用現(xiàn)有的關(guān)系數(shù)據(jù)庫(kù)具有以下優(yōu)點(diǎn):

  • 我們的內(nèi)部關(guān)系數(shù)據(jù)庫(kù)因其被廣泛使用而被證明是可靠的。 它還帶有許多有用的功能,例如易于使用的客戶端,架構(gòu)遷移工具,監(jiān)視和警報(bào)以及每日數(shù)據(jù)導(dǎo)出。
  • 使用圖形數(shù)據(jù)庫(kù)意味著我們必須在Airbnb的基礎(chǔ)上進(jìn)行設(shè)置,調(diào)試任何可靠性/性能問(wèn)題,并開發(fā)我們需要的其他功能。 它會(huì)減慢我們的進(jìn)度并分散我們對(duì)知識(shí)圖本身的關(guān)注。

到目前為止,圖存儲(chǔ)與關(guān)系數(shù)據(jù)庫(kù)具有令人滿意的性能。 我們還仔細(xì)地封裝和整合邏輯以一起處理數(shù)據(jù)庫(kù)并將其隱藏在知識(shí)圖代碼庫(kù)的其余部分。 通過(guò)這樣做,我們可以靈活地在將來(lái)需要時(shí)替換底層數(shù)據(jù)庫(kù)。

圖形查詢API

當(dāng)我們開始在生產(chǎn)中使用知識(shí)圖時(shí),我們注意到大多數(shù)產(chǎn)品用例需要遍歷子圖并從遍歷中檢索節(jié)點(diǎn)和邊。 例如,在Airbnb的產(chǎn)品詳細(xì)信息頁(yè)面(PDP或列表頁(yè)面)中,查詢知識(shí)圖以顯示主頁(yè)列表附近的興趣點(diǎn),以及所提及的每個(gè)餐館,博物館或地標(biāo)的照片。 利用圖論中的術(shù)語(yǔ),該查詢需要遍歷(1)連接到特定Home列表節(jié)點(diǎn)的所有場(chǎng)所節(jié)點(diǎn),以及(2)與在前一步驟中獲取的場(chǎng)所節(jié)點(diǎn)連接的照片節(jié)點(diǎn)。

為了支持這些產(chǎn)品需求,除知識(shí)圖API模塊中的節(jié)點(diǎn)和邊緣的CRUD端點(diǎn)外,我們還實(shí)現(xiàn)了圖形查詢端點(diǎn)。 通過(guò)圖形查詢,可以通過(guò)指定路徑來(lái)遍歷圖形,路徑是一系列邊緣類型和數(shù)據(jù)過(guò)濾器 ,從某些節(jié)點(diǎn)開始,并以結(jié)構(gòu)化格式接收遍歷的子圖。 圖形查詢API具有遞歸接口,使得可以通過(guò)多個(gè)步驟遍歷知識(shí)圖。

為了給你一個(gè)品味,讓我們看一個(gè)例子:如果想要找到所有與城市節(jié)點(diǎn)“ Beijing ”連接的地點(diǎn)節(jié)點(diǎn),邊緣類型為“ contains_location” ,那么他們(1)周圍有超過(guò)5,000個(gè)列表和(2) )屬于“ 風(fēng)景 ”類別。 該查詢可以寫成如下。

?

如上所述,知識(shí)圖旨在存儲(chǔ)來(lái)自多個(gè)數(shù)據(jù)源的數(shù)據(jù)。 通過(guò)我們的知識(shí)圖API,可以查詢來(lái)自所有來(lái)源的數(shù)據(jù)。 在圖形查詢中,可以指定要從中查詢數(shù)據(jù)的數(shù)據(jù)源。 同時(shí),我們還在開發(fā)一個(gè)數(shù)據(jù)協(xié)調(diào)層,旨在匯總來(lái)自不同來(lái)源的數(shù)據(jù) , 協(xié)調(diào)沖突,并在用戶不知道要信任哪些數(shù)據(jù)源時(shí)提供一致的數(shù)據(jù)視圖 。

到目前為止,知識(shí)圖可以完美地支持用例,例如在Airbnb上獲取靠近Home的所有地標(biāo) ,因?yàn)樗梢赞D(zhuǎn)換為圖形查詢。 但是,有些用例無(wú)法通過(guò)圖形查詢直接支持 - 例如, 獲取 主頁(yè)周圍 最受歡迎的 地標(biāo)。 我們現(xiàn)在正積極投入努力來(lái)處理這種模糊查詢 ,方法是通過(guò)ML合并地標(biāo)的元數(shù)據(jù)和用戶的個(gè)性化信號(hào) 。

存儲(chǔ)Mutator

對(duì)于我們的許多產(chǎn)品用例,我們需要不斷將數(shù)據(jù)導(dǎo)入圖存儲(chǔ)并將這些突變傳播到下游。 有些情況下,通過(guò)知識(shí)圖API同步寫入數(shù)據(jù)是不理想的,原因如下:

  • 在將數(shù)據(jù)寫入知識(shí)圖的每個(gè)管道中同步調(diào)用知識(shí)圖API是一個(gè)操作負(fù)擔(dān),因?yàn)楣艿朗窃诓煌募夹g(shù)堆棧(例如Airflow , IDL服務(wù)等)中實(shí)現(xiàn)的,并且每個(gè)管道需要處理速率限制,重試異常等問(wèn)題
  • 通過(guò)API編寫數(shù)據(jù)可能會(huì)與知識(shí)圖的其他重要在線用法(例如,搜索,PDP等)進(jìn)行交互,尤其是在寫入流量出現(xiàn)峰值或圖形存儲(chǔ)上的寫入路徑出錯(cuò)時(shí)。

在圖存儲(chǔ)之上,我們構(gòu)建了一個(gè)存儲(chǔ)更改來(lái)解決此問(wèn)題。 除了調(diào)用API之外,數(shù)據(jù)管道還可以通過(guò)向我們的Kafka消息總線發(fā)送具有特定Kafka主題的消息來(lái)向知識(shí)圖發(fā)送變異請(qǐng)求; 突變消費(fèi)者訂閱該主題并在接收消息時(shí)相應(yīng)地將數(shù)據(jù)寫入知識(shí)圖。 這種模式有助于從各種管道將數(shù)據(jù)寫入知識(shí)圖的過(guò)程,現(xiàn)在是我們導(dǎo)入數(shù)據(jù)的主要方式。 我們還計(jì)劃將其用于存儲(chǔ)回滾和第三方數(shù)據(jù)提取等功能 。

在存儲(chǔ)mutator中,我們還構(gòu)建了一個(gè)變異發(fā)布者,將數(shù)據(jù)突變傳播到Kafka消息總線。 下游管道可以為其產(chǎn)品用例使用這些消息。 一個(gè)例子是搜索索引管道,其中知識(shí)圖通過(guò)該模式將分類數(shù)據(jù)填充到搜索索引中。 我們將在下一節(jié)中深入研究這個(gè)用例。


運(yùn)用分類法對(duì)旅行世界進(jìn)行分類

如今,Airbnb上有超過(guò)500萬(wàn)家庭。 為了幫助旅行者找到最佳旅行之家,我們首先需要對(duì)我們平臺(tái)上的每個(gè)家庭建立深刻的理解。 例如,哪些房屋最適合家庭,哪些房屋可以24小時(shí)辦理登機(jī)手續(xù)? 為了支持這個(gè)用例,我們?cè)谥R(shí)圖中構(gòu)建了一個(gè)豐富的分類法 ,并將其用于對(duì)Airbnb的所有庫(kù)存進(jìn)行分類 。

在悉尼尋找“海濱”住宅

分類

為了豐富知識(shí)圖中的語(yǔ)義 ,我們構(gòu)建了一個(gè)分類法作為我們本體的一部分,這是我們用來(lái)描述我們的庫(kù)存和我們周圍世界的詞匯。 分類法采用層次結(jié)構(gòu),表示不同粒度級(jí)別的概念,以便我們可以將更高級(jí)別的概念映射到非常具體的概念。 例如,上面屏幕截圖中的“Beachfront”是我們分類中的標(biāo)簽,而其父標(biāo)簽是“Nature Venue”,祖父母標(biāo)簽是“Venue”。

Airbnb的分類標(biāo)準(zhǔn)的子集

我們的分類法甚至在知識(shí)圖之前就開始了,目的是在Airbnb上對(duì)經(jīng)驗(yàn)進(jìn)行分類。 之后,分類法作為一種特殊類型的節(jié)點(diǎn)遷移到知識(shí)圖中。 如今,該分類法被修訂為通用的,適用于Airbnb的所有業(yè)務(wù)垂直( 家庭 , 經(jīng)驗(yàn) , 餐館等)以及存儲(chǔ)在其中的其他類型的實(shí)體(如地點(diǎn) , 事件等)。知識(shí)圖。

鑒于分類法在知識(shí)圖中發(fā)揮的基本作用,我們將分類法節(jié)點(diǎn)與其他類型的節(jié)點(diǎn)區(qū)別對(duì)待。 對(duì)分類標(biāo)準(zhǔn)的任何編輯都需要由一個(gè)由內(nèi)容策略師,產(chǎn)品經(jīng)理和工程師組成的跨職能團(tuán)隊(duì)進(jìn)行討論和批準(zhǔn),然后才能執(zhí)行。

分類

為了對(duì)Airbnb的庫(kù)存進(jìn)行分類,每個(gè)體驗(yàn),家庭或餐館都需要使用分類中的相關(guān)節(jié)點(diǎn)進(jìn)行標(biāo)記。 這個(gè)過(guò)程一直充滿挑戰(zhàn)。 一方面,人力分類昂貴且難以擴(kuò)展; 另一方面,自動(dòng)分類工作需要額外的工作來(lái)確保準(zhǔn)確性。 以下是我們探索過(guò)的幾種不同方法。

Airbnb體驗(yàn)由全球運(yùn)營(yíng)團(tuán)隊(duì)手動(dòng)標(biāo)記。 為了促進(jìn)這一過(guò)程,我們構(gòu)建了一個(gè)管理標(biāo)記工具,其中包含簡(jiǎn)潔的UI。 (將來(lái),我們的主機(jī)可能會(huì)承擔(dān)一些此過(guò)程。)

手動(dòng)分類體驗(yàn)的工具

對(duì)于自動(dòng)分類,我們測(cè)試了幾種不同的方法。 首先,我們直接從庫(kù)存元數(shù)據(jù)中進(jìn)行知識(shí)推斷 。 為了對(duì)具有位置設(shè)施的房屋進(jìn)行分類(例如上面示例中的“海濱”), 供應(yīng)動(dòng)態(tài)團(tuán)隊(duì)正在采用將kd樹應(yīng)用于家庭位置以及從家庭描述和客人評(píng)論中提取文本的組合。 他們還為主機(jī)建立了一個(gè)反饋循環(huán)(見下文),以確認(rèn)他們的推理結(jié)果。

主人可以確認(rèn)他們家的位置設(shè)施

此外, AI Labs團(tuán)隊(duì)還應(yīng)用Airbnb Homes嵌入了Home的描述,Home鄰居的描述和主持人的個(gè)人資料描述。 基于嵌入,他們正在積極致力于推斷Airbnb家庭可能缺少的設(shè)施。 AI實(shí)驗(yàn)室將發(fā)布一篇關(guān)于他們工作細(xì)節(jié)的文章。


為用戶提供旅行環(huán)境

到目前為止,我們已經(jīng)探索了一些產(chǎn)品接觸點(diǎn),以便在預(yù)訂流程中為用戶提供上下文旅行洞察。 以下是Airbnb知識(shí)圖授權(quán)的一些??功能。

鼓勵(lì)用戶選擇目的地

為了幫助用戶選擇目的地開始搜索,我們?cè)谥黜?yè)上推出了一系列鼓舞人心的目的地輪播。 我們?cè)谥R(shí)圖中存儲(chǔ)了數(shù)百?gòu)埬康牡卣掌?#xff0c;然后向用戶提供最相關(guān)的旅行創(chuàng)意。

Airbnb主頁(yè)上的一組熱門歐洲旅游目的地

幫助用戶選擇一個(gè)家庭預(yù)訂

選擇目的地后,用戶開始決定一個(gè)家庭。 為了幫助指導(dǎo)用戶,我們使用知識(shí)圖來(lái)表達(dá)目的地中的住宅的背景和洞察力。 在某些情況下,我們重點(diǎn)介紹熱門設(shè)施(見下文),頂級(jí)地標(biāo)或有趣的社區(qū)。

建議用戶預(yù)訂帶游泳池的房屋,因?yàn)椤叭ツ暝L問(wèn)洛杉磯的客人中有33%搜索了帶游泳池的房屋”

提供有關(guān)房屋的更多背景信息

我們從研究中了解到,用戶經(jīng)常希望找到一個(gè)接近特定興趣點(diǎn)的房屋,無(wú)論是迪斯尼樂(lè)園還是盧浮宮。 為了幫助用戶了解特定列表與關(guān)鍵地標(biāo)的關(guān)系,我們使用知識(shí)圖來(lái)展示特定家庭附近的內(nèi)容,并在PDP上顯示該信息(見下文)。

顯示洛杉磯一個(gè)家的當(dāng)?shù)乇尘?/p>


最后的想法

我們?cè)谥R(shí)圖中的工作已經(jīng)幫助我們極大地增強(qiáng)和個(gè)性化了Airbnb的搜索,供應(yīng)分組和內(nèi)容交付。 也存在挑戰(zhàn),特別是在數(shù)據(jù)質(zhì)量和在線性能方面。

為了解決這些問(wèn)題,我們正在利用最先進(jìn)的機(jī)器學(xué)習(xí),統(tǒng)計(jì),優(yōu)化模型和算法。 具體來(lái)說(shuō),我們正在建立卷積神經(jīng)網(wǎng)絡(luò)(CNN)來(lái)審查標(biāo)記的質(zhì)量。 此外,我們正在部署上下文多臂強(qiáng)盜模型,以推薦在線服務(wù)中的個(gè)性化內(nèi)容。 此外,通過(guò)利用產(chǎn)品,用戶和搜索查詢嵌入技術(shù),我們希望生成以前在人工定義的分類集中不可用的新類別。 目前,這些方法還處于試驗(yàn)階段,敬請(qǐng)期待!


我們開始使用知識(shí)圖,以便為清理,當(dāng)前和完整的有關(guān)我們的庫(kù)存和整個(gè)旅行世界的結(jié)構(gòu)化數(shù)據(jù)提供一致的界面 。 通過(guò)提供連接 的高質(zhì)量數(shù)據(jù),我們相信知識(shí)圖有很大機(jī)會(huì)改善Airbnb的訪客和主機(jī)體驗(yàn)。 在2019年,我們將不斷投資使用我們的知識(shí)圖來(lái)豐富我們對(duì)旅行世界( 分類 )的理解,并在旅行計(jì)劃和決策過(guò)程的每一步為每位旅行者提供更多旅行內(nèi)容( 情境化 )。

?

https://medium.com/airbnb-engineering/contextualizing-airbnb-by-building-knowledge-graph-b7077e268d5a

總結(jié)

以上是生活随笔為你收集整理的Contextualizing Airbnb by Building Knowledge Graph的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。