大咖眼中的AI開源 | 張建:圖神經網路和DGL的實際應用

亞馬遜雲開發者 發表於 2022-01-18
人工智慧 神經網路

大咖眼中的AI開源 | 張建:圖神經網路和DGL的實際應用

image.png

6月26日,亞馬遜雲科技Community Day在上海舉辦。亞馬遜雲科技首席開發者佈道師、資深資料科學家、資深應用科學家以及亞馬遜雲科技Machine Learning Hero悉數到場,針對AI開源的技術趨勢及落地實踐專案進行分享和討論。

第一期:大咖眼中的AI開源|王宇博:四位一體,構建開源機器學習生態系統

第二期:大咖眼中的AI開源|王敏捷:深圖在人工智慧中的探索和研究

第三期:大咖眼中的AI開源 | 吳磊:大規模機器學習在計算廣告中的應用與落地

本期,我們為大家帶來了亞馬遜雲科技資深資料科學家張建對於圖神經網路和DGL的實際應用的精彩分享。

image.png

📢 想要了解更多亞馬遜雲科技最新技術釋出和實踐創新,敬請關注2021亞馬遜雲科技中國峰會!點選圖片報名吧~

image.png

作為亞馬遜雲科技資深資料科學家,張建博士的一項重要工作是在實際的客戶場景中,使用圖神經網路和DGL作為工具來幫助客戶解決核心業務問題、提升業務價值。在本次分享中,他從資料、模型、速度、解釋四個方面介紹了在圖神經網路和DGL在落地專案中的遇到的挑戰和對此的思考。

你的圖包含足夠的資訊嗎?

在學術圈中,很多學者會用開放的資料去做模型的構建及演算法的增強。在圖神經網路研究領域最常用的資料集是Cora、Citeseer和PubMed。這些圖通常連線性強,同類別的節點聚集在一起。使用這些圖去做模型構建,往往圖神經網路的結果表現良好。而實際業務場景中,受限於收集資料的手段、儲存資料的方式以及處理資料的能力,構建出的圖資料有時會非常稀疏,導致投入很多精力和時間進行模型調優,但效果卻不理想。如果客戶提供的圖連線性太低,使得不管用任何的圖神經網路模型,它們最終都退化成了一個常見的MLP。另外,客戶提供的業務圖還常出現標籤資料特別少的情況,上億個點的圖中,只有十幾萬個節點有標籤,僅有0.01%的標籤資料。這導致很難通過一個帶標籤的點找到其他帶標籤的點構建聯絡,從而大大降低了圖神經網路的有效性。

資料科學家圈有這樣一句話:資料特徵決定了模型效能的上限,模型只是去無限趨近這個天花板。在模型上再花力氣還不如在資料上再想辦法。既然說圖的資訊決定上限?那麼什麼是圖的資訊呢?如何衡量“資訊”?資訊值能指導GNN嗎?還要不要搞圖?這些問題往往是機器學習實踐者甚至開發工程師們所要解決的。張建把這些問題提出來,希望大家集思廣益去解決它。

什麼情況下GNN模型更有優勢?

“我知道你們的圖神經網路有各種各樣的模型,你看看我們的圖用什麼模型合適?”工業界的客戶曾經這樣問張建博士。而這個問題很難回答。首先,模型的設計空間遠遠大於選擇項,其次,不同的業務場景對應不同的業務需求,業務場景裡面的模型設計或者模型選擇如何針對具體業務,並不容易判斷,另外,DGL的核心開發模式是訊息傳遞(MP),在圖類領域,而有些問題已經可以不用MP來實現。我們還看到,在圖機器學習領域,至今還未能出現類似NLP領域裡的GPT這樣的模型,能夠快速解決大部分問題。

張建說,最扎心的還遠不止這些,而是客戶直接質疑:“張博士,你看我們的XGBoost等模型比這個GNN效果好啊!” 曾經有個金融界的客戶,用金融行業的知識圖譜獲取客戶間各種各樣的關係之後,直接用LightGBM,在結合一千多維的特徵後,直接秒殺圖神經網路模型。雖然後續通過一些技術,圖神經網路模型超越了這個客戶的LightGBM模型,但也留下了很多的思考空間。比如,那麼圖神經網路模型比傳統的機器學習模型好在哪兒?什麼情況下更好?

張建認為,傳統的機器學習模型絕大多數基於特徵,而在現實的業務場景裡,並不是每一個點或者每一個特徵都能拿到,尤其隨著隱私保護條例的增強,大資料監管越來越嚴格,收集資料也越來越難。但對於圖神經網路模型來說,儘管沒有特徵,依舊能夠建立起關聯關係,這就是圖神經網路模型的優勢。

圖神經網路模型和傳統的機器學習模型,並不是非此即彼的關係,需要根據業務場景和業務問題來決定如何選擇,甚至可以組合起來解決問題。不同GNN模型的適用性是什麼?點/邊的特徵怎麼用?是不是一定要用GNN ?如何組合GNN和其他模型?張建將這些問題留給大家去思考。

圖模型能做實時推斷?

在模型有了效果後,是否能上線進行實時推斷又成了客戶經常詢問的問題?這個問題涉及兩個層面。在圖結構裡面存在著資料之間的關聯性。因此和傳統的CV和NLP相比,資料點不是獨立同分布的。在做圖資料推斷時,有兩種模式,分別是Transductive模式和Inductive模式。Transductive模式下,在訓練階段,要被預測的節點/邊已經存在於圖中,訓練的節點可以“看到”這些節點/邊,這個模式的問題在於,當需要做預測的時候這些點必須已經存在,圖已經構建出來了,幾乎沒有辦法做到實時。因為要想做到實時,模型必須要去應對未來的點。在Inductive模式下,需要預測的節點在訓練階段並不在圖中,是看不見的,只有做推斷時候,再去運用到一張圖上,才能看到這個點。用Inductive模式做看不見點的推斷,會有兩種情況。第一種是做批次預測,比如進行反欺詐,用過去七天的資料構建出一個圖資料訓練模型,在對明天發生的使用者行為做檢測時,需要把明天的資料和前七天的資料組合起來做成一張圖,然後用訓練好的模型進行推斷。這就是批次推斷,它並非實時推斷。真正要做到實時推斷,需要實時將需要預測節點/邊加入已經存在的圖,並抽取出以它N跳子圖交給訓練好的模型用於推斷。

據張建介紹,不光是圖社群,整個機器學習社群,包括大資料社群,都還沒有為圖設計出實時(比如流式)的圖資料的儲存、抽取、查詢的方法。目前已有的圖資料庫往往在進行增和查的時候還不夠快,特別是把一個點/邊作為中心點/邊進行取樣的時候,圖資料庫的取樣的速度還跟不上需要實時推斷的速度。對於實時推斷的系統架構,業界也暫時沒有特別成熟的方法,這是目前需要解決的問題,對於開發者來說,也是個非常大的機會點。

圖模型結果怎麼解釋?

模型上線之後,面臨的一個問題是怎麼去解釋模型的結果?這個問題在學術圈可以看到一些研究結果,但在工業界卻很少能看到這類討論。

比如,利用圖模型得到一個節點的預測後,業務人員問為什麼?告訴他因為跟它相鄰的“鄰居”對它的影響最大,業務人員肯定沒辦法接受。

另外,圖神經網路模型,雖然可以通過圖結構去識別一些模式,但是其中的點都是帶有特徵的,這個特徵最後是一些實數,通過一系列線性變換和非線性變化後,它們間的關係已經大大超出人類對於因果的認知。如何對圖模型的結果進行解釋?對於開發者而言任重而道遠。

圖神經網路的落地面臨多方面的挑戰,張建說,這些挑戰就像是支撐一個登月火箭。資料相當於燃料,模型相當於發動機,所有資料管道和實施架構的問題是整體的火箭設計,而模型的解釋,就像需要一個飛控中心。只有把這四個層面的問題都解決好,火箭才能真正飛向月球。

寫在最後

多年來,亞馬遜雲科技在人工智慧領域積累了眾多專案及實踐經驗,並一直致力於與全球開發者共創,希望為人工智慧領域帶來新的活力。2021亞馬遜雲科技中國峰會上海站已完美落幕,大會以“構建新格局,重塑雲時代”為題,攜手雲端計算行業領先的技術踐行者,共同分享雲時代重塑和構建的故事。同時,上海站也只是本次峰會的先鋒官,亞馬遜雲科技中國峰會還將於9月9日-9月14日線上上與大家見面!

該峰會覆蓋一百多個技術專場,設有人工智慧領域技術分論壇,為您帶來乾貨滿滿、精彩不斷的內容。此外,還將攜手開源社群及技術大咖線上觀點碰撞,釋放活力!

👇 點選下方圖片報名

image.png

點選"閱讀原文",瞭解DGL

大咖眼中的AI開源 | 張建:圖神經網路和DGL的實際應用