開源!一文了解阿里一站式圖計算平臺GraphScope

2020-12-20 51CTO

隨著大數據的爆發,圖數據的應用規模不斷增長,現有的圖計算系統仍然存在一定的局限。阿里巴巴擁有全球超大的商品知識圖譜,在豐富的圖場景和真實應用的驅動下,阿里巴巴達摩院智能計算實驗室研發並開源了全球首個一站式超大規模分布式圖計算平臺GraphScope,併入選中國科學技術協會「科創中國」平臺。本文詳解圖計算的原理和應用及GraphScope的架構設計。

一  什麼是圖計算

圖數據對一組對象(頂點)及其關係(邊)進行建模,可以直觀、自然地表示現實世界中各種實體對象以及它們之間的關係。在大數據場景下,社交網絡、交易數據、知識圖譜、交通和通信網絡、供應鏈和物流規劃等都是典型的以圖建模的例子。圖 1 顯示了阿里巴巴在電商場景下的圖數據,其中有各種類型的頂點(消費者、賣家、物品和設備)和邊(表示了購買、查看、評論等關係)。此外,每個頂點還有豐富的屬性信息相關聯。

圖 1:阿里巴巴電商場景圖數據示例

實際場景中的這種圖數據通常包含數十億個頂點和數萬億條邊。除了規模大之外,這個圖的持續更新速度也非常快,每秒可能有近百萬的更新。隨著近年來圖數據應用規模的不斷增長,探索圖數據內部關係以及在圖數據上的計算受到了越來越多的關注。根據圖計算的不同目標,大致可以分為交互查詢、圖分析和基於圖的機器學習三類任務。

1  圖的交互查詢

圖 2:左,金融反欺詐示例;右,圖學習示例。

在圖計算的應用中,業務通常需要以探索的方式來查看圖數據,以進行一些問題的及時定位和分析某個深入的信息,如 圖 2 (左)中的(簡化)圖模型可被用於金融反欺詐(信用卡非法套現)檢測。 通過使用偽造的標識符,「犯罪分子」可以從銀行獲得短期信用(頂點 4)。 他嘗試通過商家(頂點3)的幫助,以虛假購買( 邊 2->3)來兌現貨幣。 一旦從銀行(頂點4)收到付款(邊 4->3),商家再通過其名下的多個帳戶將錢(通過邊 3->1 和 1->2)退還給「犯罪分子」。 這種模式最終形成一個圖上的閉環(2->3->1...->2)。 真實場景中,圖數據在線上的規模可能包含數十億個頂點(例如,用戶)和數千億至萬億條邊(例如,支付交易),並且整個欺詐過程可能涉及到許多實體之間包含各種約束的動態交易鏈,因此需要複雜的實時交互分析才能很好的識別。

2  圖分析

關於圖分析計算的研究已經持續了數十年,產生了很多圖分析的算法。典型的圖分析算法包括經典圖算法(例如,PageRank、最短路徑和最大流),社區檢測算法(例如,最大團/clique、聯通量計算、Louvain 和標籤傳播),圖挖掘算法(例如,頻繁集挖掘和圖的模式匹配)。由於圖分析算法的多樣性和分布式計算的複雜性,分布式圖分析算法往往需要遵循一定的編程模型。當前的編程模型有點中心模型「Think-like-vertex」,基於矩陣的模型和基於子圖的模型等。在這些模型下,湧現出各種圖分析系統,如  Apache Giraph、Pregel、PowerGraph、Spark GraphX、GRAPE 等。

3  基於圖的機器學習

經典的 Graph Embedding 技術,例如 Node2Vec 和 LINE,已在各種機器學習場景中廣泛使用。近年來提出的圖神經網絡(GNN),更是將圖中的結構和屬性信息與深度學習中的特徵相結合。GNN 可以為圖中的任何圖結構(例如,頂點,邊或整個圖)學習低維表徵,並且生成的表徵可以被許多下遊圖相關的機器學習任務進行分類、鏈路預測、聚類等。圖學習技術已被證明在許多與圖相關的任務上具有令人信服的性能。與傳統的機器學習任務不同,圖學習任務涉及圖和神經網絡的相關操作(見圖 2 右),圖中的每個頂點都使用與圖相關的操作來選擇其鄰居,並將其鄰居的特徵與神經網絡操作進行聚合。

二  圖計算:下一代人工智慧的基石

不僅僅是阿里巴巴,近年來圖數據和計算技術一直是學術界和工業界的熱點。特別是,在過去的十年中,圖計算系統的性能已提高了 10~100 倍,並且系統仍在變得越來越高效,這使得通過圖計算來加速AI和大數據任務成為了可能。實際上,由於圖能十分自然地表達各種複雜類型的數據,並且可以為常見的機器學習模型提供抽象。與密集張量相比,圖能提供更豐富的語義和更全面的優化功能。此外,圖是稀疏高維數據的自然表達,並且圖卷積網絡(GCN)和圖神經網絡(GNN)中越來越多的研究證明,圖計算是對機器學習的有效補充,在結果的可解釋性、深層次推理因果等方面將扮演越來越重要的作用。

圖 3:圖計算在AI各個領域具有廣闊的應用前景

可以預見,圖計算將在下一代人工智慧的各種應用中發揮重要作用,包括反欺詐,智能物流,城市大腦,生物信息學,公共安全,公共衛生,城市規劃,反洗錢,基礎設施,推薦系統,金融技術和供應鏈等領域。

三  圖計算現狀

經過這些年的發展,已有針對各種圖計算需求的多種系統和工具。例如在交互查詢方面,有圖資料庫Neo4j、ArangoDB和OrientDB等、也有分布式系統和服務JanusGraph、Amazon Neptune和Azure Cosmos DB等;在圖分析方面,有 Pregel、Apache Giraph、Spark GraphX、PowerGraph 等系統;在圖學習上有 DGL、pytorch geometric 等。儘管如此,面對豐富的圖數據和多樣化的圖場景,有效利用圖計算增強業務效果依然面臨著巨大的挑戰:

下面我們通過一個具體的示例看看現有系統的局限性。

1  示例:論文分類預測

數據集 ogbn-mag 是一個來自於微軟學術的數據集。數據中包含四種類型的點,分別表示論文、作者、機構、研究領域;在這些點之間有表示關係的四種邊:分別是作者 「 撰寫 」 了論文,論文 「 引用 」 了另一篇論文,作者 「 隸屬於 」 某個機構,和論文 「 屬於 」 某個研究領域。這個數據很自然的可以用圖來建模。

一個用戶期望在這個圖上對 2014-2020 年間發表的 「 論文 」 做一個分類任務,期望能根據論文在數據圖中的結構屬性、自身的主題特徵、以及 kcore、三角計數 triangle-counting 等團聚度的衡量參數,將其歸類並預測文章的主題類別。實際上,這是一個十分常見和有意義的任務,這個預測由於考慮了論文的引用關係和論文的主題,可以幫助研究人員更好的發現領域內的潛在合作和研究熱點。

讓我們分解一下這個計算任務:首先我們需要對論文及其相關的點邊做一個根據年份的篩選,再需要在這個圖上計算 kcore、triangle-counting 等全圖計算,最後將這兩個參數和圖上的原始特徵一起,放入一個機器學習框架進行分類訓練和預測。我們發現當前已有的系統並不能很好的端到端解決這個問題,我們只能通過將多個系統組織成一個  pipeline 的形式運行:

圖 4:論文分類預測多系統組成的工作流

這個任務看起來是解決了,實際上這樣流水線的方案背後隱藏著許多問題。例如多個系統之間互相獨立和割裂,中間數據頻繁落盤進行系統間的數據傳遞;圖分析的程序不是聲明性語言,沒有固定範式;圖的規模影響機器學習框架的效率等等。這些都是我們在現實圖計算場景中常遇到的問題,總結一下可以概括為以下三點:

為了解決以上的問題,我們設計並研發了一站式開源圖計算系統:GraphScope。

四  GraphScope 是什麼

GraphScope 是阿里巴巴達摩院智能計算實驗室研發並開源的一站式圖計算平臺。依託於阿里海量數據和豐富場景,與達摩院的高水平研究,GraphScope 致力於針對實際生產中圖計算的上述挑戰,提供一站式高效的解決方案。

GraphScope 提供 Python 客戶端,能十分方便的對接上下遊工作流,具有一站式、開發便捷、性能極致等特點。它具有高效的跨引擎內存管理,在業界首次支持 Gremlin 分布式編譯優化,同時支持算法的自動並行化和支持自動增量化處理動態圖更新,提供了企業級場景的極致性能。在阿里巴巴內部和外部的應用中,GraphScope 已經證明在多個關鍵網際網路領域(如風控,電商推薦,廣告,網絡安全,知識圖譜等)實現重要的業務新價值。

GraphScope 集合了達摩院的多項學術研究成果,其中的核心技術曾獲得資料庫領域頂級學術會議 SIGMOD2017 最佳論文獎、VLDB2017 最佳演示獎、VLDB2020 最佳論文提名獎、世界人工智慧創新大賽SAIL獎。GraphScope 的交互查詢引擎的論文也已被  NSDI 2021 錄用,即將發表。還有其它圍繞 GraphScope 的十多項研究成果發表在領域頂級的學術會議或期刊上,如 TODS、SIGMOD、VLDB、KDD 等。

1  架構介紹

圖 5:GraphScope 系統架構圖

GraphScope 的底層是一個分布式內存數據管理系統 vineyard[1]。vineyard 也是我們開源的一個項目,它提供了高效和豐富的 IO 接口負責與更底層的文件系統交互,它提供了高效和高層次的數據抽象(包括但不限於圖,tensor,vector 等),支持管理數據的分區、元數據等,可以為上層應用提供本機零拷貝的數據讀取。正是這一點支持了 GraphScope 的一站式能力:在跨引擎之間,圖數據按分區的形式存在於 vineyard,由 vineyard 統一管理。

中間是引擎層,分別由交互式查詢引擎 GIE,圖分析引擎 GAE,和圖學習引擎 GLE 組成,我們將在後續的章節中詳細介紹。

最上層是開發工具和算法庫。GraphScope 提供了各類常用的分析算法,包括連通性計算類、社區發現類和 PageRank、中心度等數值計算類的算法,後續會不斷擴展算法包,在超大規模圖上提供與 NetworkX 算法庫兼容的分析能力。此外也提供了豐富的圖學習算法包,內置支持 GraphSage、DeepWalk、LINE、Node2Vec 等算法。

2  重解問題:論文分類預測

有了一站式計算平臺 GraphScope,我們可以用一種更簡單的方式解決前面示例中的問題。

GraphScope 提供 Python客戶端, 讓數據科學家可以在自己熟悉的環境中完成所有圖計算相關的工作。打開 Python 後,我們首先需要建立一個 GraphScope 會話。

  1. import graphscope 
  2. from graphscope.dataset.ogbn_mag import load_ogbn_mag 
  3.  
  4.  
  5. sess = graphscope.sesson() 
  6. g = load_ogbn_mag(sess, "/testingdata/ogbn_mag/"

在上面的代碼中,我們建立了一個 GraphScope 的 session,並載入了圖數據。

GraphScope 面向雲原生設計,一個 session 的背後對應了一組 k8s 的資源,該session 負責這個會話中所有資源的申請和管理。具體來說,在用戶這行代碼的背後,session首先會請求一個後端總入口 Coordinator 的 pod。Coordinator 負責跟 Python 客戶端的所有通信,在完成自身的初始化後,它會拉起一組引擎 pod。這組 pod 中每一個 pod 都有一個 vineyard 實例,共同組成一個分布式內存管理層;同時,每一個 pod 中都有 GIE、GAE、GLE 三個引擎,它們的啟停狀態由 Coordinator 在後續按需管理。當這組 pod 拉起並與 Coordinator 建立穩定連接、完成健康檢查後,Coordinator 會返回狀態到客戶端,告訴用戶,session 已拉起成功,資源就緒可以開始載圖或計算了。

  1. interactive = sess.gremlin(g) 
  2.  
  3.  
  4. # count the number of papers two authors (with id 2 and 4307) have co-authored 
  5. papers = interactive.execute("g.V().has('author', 'id', 2).out('writes').where(__.in('writes').has('id', 4307)).count()").one() 

首先我們在圖 g 上建立了一個交互式查詢對象 interactive 。這個對象在引擎 pod 中拉起了一組交互式查詢引擎 GIE。接著下面是一個標準的 Gremlin 查詢語句,用戶想在這個數據中查看兩個具體作者的合作論文。這個 Gremlin 語句會發送給 GIE 引擎進行拆解和執行。

GIE 引擎由並行化 Compiler、內存和調度管理、Operator 運行時、自適應的遊歷策略和分布式 Dataflow 引擎等核心組件組成。在收到交互式查詢的語句後,該語句首先會被 Compiler 拆分,編譯成多個運行算子。這些算子再以分布式數據流的模型被驅動和執行,在這個過程中,每一個持有分區數據的計算節點都跑一份該數據流的拷貝,並行處理本分區的數據,並在過程中按需進行數據交換,從而並行化的執行 Gremlin 查詢。

Gremlin 複雜的語法下,遊歷策略至關重要並影響著查詢的並行度,它的選擇直接影響著資源的佔用和查詢的性能。只靠簡單的 BFS 或是 DFS 在現實中並不能滿足需求。最優的遊歷策略往往需要根據具體的數據和查詢動態調整和選擇。GIE 引擎提供了自適應的遊歷策略配置,根據查詢數據、拆解的 Op 和 Cost 模型選擇遊歷策略,以達到算子執行的高效性。

  1. # extract a subgraph of publication within a time range 
  2. sub_graph = interactive.subgraph("g.V().has('year', inside(2014, 2020)).outE('cites')"
  3.  
  4.  
  5. # project the projected graph to simple graph. 
  6. simple_g = sub_graph.project_to_simple(v_label="paper", e_label="cites"
  7.  
  8.  
  9. ret1 = graphscope.k_core(simple_g, k=5
  10. ret2 = graphscope.triangles(simple_g) 
  11.  
  12.  
  13. # add the results as new columns to the citation graph 
  14. sub_graph = sub_graph.add_column(ret1, {"kcore""r"}) 
  15. sub_graph = sub_graph.add_column(ret2, {"tc""r"}) 

在通過一系列單點查看的交互式查詢後,用戶通過以上語句開始做圖分析任務。

首先它通過一個 subgraph 的操作子從原圖中根據篩選條件抽取了一個子圖。這個操作子的背後,是交互式引擎 GIE 執行了一個查詢,再將結果圖寫入了 vineyard。

然後用戶在這個新圖上抽取了 label 為論文的點和他們之間關係為引用(cites)的邊,產出了一張同構圖,並在上面調用了 GAE 的內置算法 k-core 和三角計數 triangles 在全圖做了分析型計算。產出結果後,這兩個結果被作為點上的屬性加回了原圖。這裡,藉助於 vineyard 元數據管理和高層數據抽象,新的 sub_graph 是通過原圖上新增一列的變換來生成的,不需要重建整張圖的全部數據。

GAE 引擎核心繼承了曾獲得 SIGMOD2017 最佳論文獎的 GRAPE 系統[2]。它由高性能運行時、自動並行化組件、多語言支持的 SDK 等組件組成。上面的例子用到了 GAE 自帶的算法,此外,GAE 也支持用戶十分簡單的編寫自己的算法並在其上即插即用。用戶以基於子圖編程的 PIE 模型編寫算法,或者重用已有圖算法,而不用考慮分布式細節,由 GAE 來做自動並行化,大幅降低了分布式圖計算對用戶的高門檻。目前,GAE 支持用戶通過C++、Python(後續將支持 Java)等多語言編寫自己的算法邏輯,即插即用在分布式環境。GAE 的高性能運行時基於 MPI,對通訊、數據排布,硬體特徵做了十分細緻的優化,以達到極致性能。

  1. # define the features for learning 
  2. paper_features = [] 
  3. for i in range(128): 
  4.     paper_features.append("feat_" + str(i)) 
  5.  
  6.  
  7. paper_features.append("kcore"
  8. paper_features.append("tc"
  9.  
  10.  
  11. # launch a learning engine. 
  12. lg = sess.learning(sub_graph, nodes=[("paper", paper_features)], 
  13.                   edges=[("paper""cites""paper")], 
  14.                   gen_labels=[ 
  15.                       ("train""paper"100, (175)), 
  16.                       ("val""paper"100, (7585)), 
  17.                       ("test""paper"100, (85100)) 
  18.                   ]) 

接下來我們開始用圖學習引擎為論文分類。首先我們配置將數據中論文類節點的 128 維特徵以及我們在上一步中計算出的 kcore 和 triangles 兩個屬性共同作為訓練特徵。然後我們從 session 中拉起圖學習引擎 GIE。在拉起 GIE中 圖 lg 時,我們配置了圖數據,特徵屬性,指定了哪一類的邊,以及將點集劃分為了訓練集、驗證集和測試集。

  1. from graphscope.learning.examples import GCN 
  2. from graphscope.learning.graphlearn.python.model.tf.trainer import LocalTFTrainer 
  3. from graphscope.learning.graphlearn.python.model.tf.optimizer import get_tf_optimizer 
  4.  
  5.  
  6. # supervised GCN. 
  7.  
  8.  
  9. def train_and_test(config, graph): 
  10.     def model_fn(): 
  11.         return GCN(graph, config["class_num"], ...) 
  12.  
  13.  
  14.     trainer = LocalTFTrainer(model_fn, 
  15.                              epoch=config["epoch"]...) 
  16.     trainer.train_and_evaluate() 
  17.  
  18.  
  19. config = {...} 
  20.  
  21.  
  22. train_and_test(config, lg) 

然後我們通過上面的代碼選用模型以及做一些訓練相關的參數配置就可以十分便捷的用 GLE 開始做圖分類任務。

GLE 引擎包含 Graph 與 Tensor 兩部分,分別由各種 Operator 構成。Graph 部分涉及圖數據與深度學習的對接,如按 Batch 迭代、採樣和負採樣等,支持同構圖和異構圖。Tensor 部分則由各類深度學習算子構成。在計算模塊中,圖學習任務被拆解成一個個算子,算子再被運行時分布式的執行。為了進一步優化採樣性能,GLE 將緩存遠程鄰居、經常訪問的點、屬性索引等,以加快每個分區中頂點及其屬性的查找。GLE 採用支持異構硬體的異步執行引擎,這使 GLE 可以有效地重疊大量並發操作,例如 I/O、採樣和張量計算。GLE 將異構計算硬體抽象為資源池(例如 CPU 線程池和 GPU 流池),並協作調度細粒度的並發任務。

五  性能

GraphScope 不僅在易用性上一站式的解決了圖計算問題,在性能上也達到極致,滿足了企業級需求。我們使用 LDBC Benchmark 對 GraphScope 的性能進行了評估和對比測試。

如圖 6 所示,在交互式查詢測試 LDBC SNB Benchmark上,單節點部署的 GraphScope 與開源系統 JanusGraph 相比,多數查詢快一個數量級以上;在分布式部署下,GraphScope 的交互式查詢基本能達到線性加速的擴展性。

圖 6:GraphScope 交互式查詢性能

在圖分析測試 LDBC GraphAnalytics Benchmark 上,GraphScope 與 PowerGraph 以及其他最新系統比較,幾乎在所有算法和數據集的組合中居於領先水平。在某些算法和數據集上,跟其他平臺比較最低也有五倍的性能優勢。局部數據見下圖。

圖 7:GraphScope 圖分析性能

關於實驗的設定、重現和完整的性能比較可以參見交互式查詢性能[3]和圖分析性能[4]。

六  擁抱開源

GraphScope 的白皮書、代碼已經在 github.com/alibaba/graphscope 開源[5],項目遵守 Apache License 2.0。 歡迎大家 star、試用,參與到圖計算 中來。 也歡迎大家貢獻代碼,一起打造業界最好的圖計算系統。 我們的目標是持續更新該項目,不斷提升功能的完整性和系統的穩定性。 也歡迎大家關注網站 graphscope.io 來跟進項目的最新狀態。

【編輯推薦】

【責任編輯:

張燕妮

TEL:(010)68476606】

點讚 0

相關焦點

  • 阿里發布圖計算平臺GraphScope,即將向全社會開源
    11月9日,在第二屆世界科技與發展論壇上,阿里發布全球首個一站式超大規模分布式圖計算平臺GraphScope,併入選中國科學技術協會「科創中國」平臺。GraphScope可處理萬億規模的圖數據,能在一毫秒內遍歷全部中國路網,其提供的高效、易用的一站式開發環境,極大降低圖計算門檻。GraphScope將於12月開源。  (圖說:阿里發布一站式圖計算平臺GraphScope)  圖可自然表達數據之間複雜的關聯與結構特徵,圖計算能有效挖掘和利用這種關聯信息,成為數字原生時代的關鍵技術之一。
  • 阿里巴巴開源 Graph-Learn:大家都能玩的 GNN
    小嘰導讀:GNN 是 AI 領域中非常熱門的子領域,被研究者們給予了很高的期待。
  • HugeGraph發布可視化平臺Hubble首個版本
    該版本全面升級平臺可視化工具,打造一站式圖服務,從數據建模,到數據快速導入,再到數據的在線、離線分析,以及圖的統一管理,實現了圖應用全流程的嚮導式操作,旨在提升社區用戶的使用順暢度,降低使用門檻,提供更為高效易用的使用體驗。
  • 代碼搜尋引擎和代碼瀏覽器 Sourcegraph 宣布開源
    知名流行的代碼查看工具 Sourcegraph 日前已宣布開源(Apache License),代碼託管在 GitHub 上 https
  • 阿里開源量子模擬器 「太章 2.0」
    近日,阿里巴巴達摩院宣布開源自研量子計算模擬器 「太章 2.0」及一系列量子應用案例,集成到阿里雲量子開發平臺
  • 阿里正式開源通用算法平臺Alink,「雙11」將天貓推薦點擊率提升4%
    整理 | 若名近日,阿里雲計算部門已在 GitHub 上發布了其 Alink 平臺的「核心代碼」,並上傳了一系列算法庫,它們支持批處理和流處理,這對支持機器學習任務至關重要。 Alink 是基於 Flink 的通用算法平臺,由阿里巴巴計算平臺 PAI 團隊研發。
  • 阿里10 年風雨開源路,致敬所有開源人!
    來源:阿里巴巴他指出,過去,這些開源項目的成長更多是依靠阿里巴巴內部員工與開源社區的溝通和交流;如今,阿里意識到這不能僅僅依靠開發者的一腔熱血,而需要一套成熟的方法論幫助開發者更多地參與開源、、貢獻開源,並從組織上提供一系列支持與保障,這就是阿里巴巴成立開源委員會的初心。
  • 深度學習——你需要了解的八大開源框架
    下面讓我們一起來認識目前深度學習中最常使用的八大開源框架:一.TensorFlowTensorFlow是一款開源的數學計算軟體,使用數據流圖(Data Flow Graph)的形式進行計算。TensorFlow最初是由研究人員和Google Brain團隊針對機器學習和深度神經網絡進行研究所開發的,目前開源之後可以在幾乎各種領域適用。Data Flow Graph: 使用有向圖的節點和邊共同描述數學計算。graph中的nodes代表數學操作,也可以表示數據輸入輸出的端點。
  • 一文了解雲計算,全世界一臺計算機
    在了解三大開源PaaS框架之前,還要了解什麼是Docker容器和容器化軟體開發與部署。Docker翻譯成中文是「碼頭搬運工」的意思,那麼「碼頭搬運工」搬運的是什麼?是標準化的「貨櫃」,這個標準化「貨櫃」裡裝的是應用程式。
  • 寫在阿里Blink正式開源之際
    阿里最近要正式將內部Blink開源,搞Blink 的大牛也在 AI 前線公眾號上推了文章,介紹Blink的優勢  重磅!
  • 阿里計算平臺掌門人賈揚清:我對人工智慧方向的一點淺見
    經過多年的沉澱,成為「阿里新人」的他,對人工智慧又有何看法?最近,賈揚清在阿里內部分享了他的思考與洞察,歡迎共同探討、交流。賈揚清,浙江上虞人,畢業於清華大學自動化系,在加州大學 Berkeley 分校獲得計算機博士學位,目前擔任阿里計算平臺掌門人。最近幾年深度學習的流行,大家一般認為是從2012年 AlexNet 在圖像識別領域的成功作為一個裡程碑。
  • 雙十一快遞配送的背後:圖計算正在多個場景中應用
    近日,阿里巴巴集團達摩院資深數據科學家曾凱在接受人民網採訪時,詳細介紹了阿里巴巴一站式圖計算平臺GraphScope的具體應用場景及其長期價值。  人民網:提到圖計算,很多人沒有概念,請您舉個具體的應用場景案例。  曾凱:生活中,「圖」可以用來表示各種複雜的關係。
  • 已開源!GraphVite 超高速圖表示學習系統,1 分鐘可學百萬節點
    在社交平臺上公布了這個圖表示學習系統開源的消息。GraphVite 可以幫助用戶實現:在統一的平臺上重現學習算法對圖形或高維數據進行快速可視化對大規模圖形或知識圖譜進行學習提高原型設計與模型調整的效率目前,GraphVite 已為 3 種任務提供了完整的訓練和評估流程,包括:
  • 假期薦讀:一文看盡2019-2020各大頂會 Graph Neural Network 論文(附連結)
    其次,提出了一種新的圖匹配網絡模型,該模型以一對圖作為輸入,通過一種新的基於注意力的交叉圖匹配機制,對圖對進行聯合推理,計算出圖對之間的相似度評分。https://github.com/jermainewang/dglNGra是由北京大學和微軟亞洲研究院開發和維護一款GNN平臺。
  • 百度開源平臺上線,聚合百度開源項目
    百度公司近日上線「百度開源平臺」,該平臺主要用來展示百度的開源項目。 目前該平臺列出了10款百度公司的開源項目,分別有: Terminator:一款伺服器虛擬化解決方案 Itest:面向service接口的自動化測試工具
  • 阿里新一代實時計算引擎:Blink
    ),所以一般數據的處理是按照時間區間處理的,這叫離線計算,但是,從業務場景上來說,離線計算不能滿足所有業務的需求。在許多的業務場景上,比如在實時大數據分析、風控預警、實時預測、金融交易等諸多業務場景領域,以銀行的交易系統為例,可靠性要達到 4個 9,甚至 5個 9的地步,而流計算作為一類針對流數據的實時計算模型,可有效地縮短全鏈路數據流時延、實時化計算邏輯、平攤計算成本,最終有效滿足實時處理大數據的業務需求。2015 年是流計算百花齊放的時代,各個流計算框架層出不窮。
  • PyTorch Tips(FLOPs計算/參數量/計算圖可視化/相關性分析)
    準確的FLOPS 計算網上開源的很多計算flops的工具只支持計算PyTorch內置層的flops,不能有效計算出自定義操作的flops。Facebook日前開源了一個面向PyTorch的CV工具包,內置了flops_count函數,支持細粒度的flops計算,包括torch.einsum,torch.bmm等操作均可計算。
  • 阿里雲彈性計算負責人蔣林泉:億級場景驅動的技術自研之路|問底...
    為此,阿里雲彈性計算一直堅持為不同行業及企業提供垂直實例產品,提高用戶體驗,有針對性地解決行業特色問題並且帶來最優的性價比。阿里雲彈性計算負責人蔣林泉本期《問底中國IT技術演變》,我們有幸採訪到阿里雲彈性計算負責人蔣林泉先生,就彈性計算的應用現狀、技術解析、垂直產品以及未來趨勢等方面,解剖阿里雲彈性計算的技術演進過程,以此探析整個行業的發展趨勢。
  • 中科院計算所開源Easy Machine Learning:讓機器學習應用開發簡單...
    機器之心編譯今日,中科院計算所研究員徐君在微博上宣布「中科院計算所開源了 Easy Machine Learning 系統,其通過交互式圖形化界面讓機器學習應用開發變得簡單快捷,系統集成了數據處理、模型訓練、性能評估、結果復用、任務克隆、ETL 等多種功能,此外系統中還提供了豐富的應用案例,歡迎大家下載使用。」
  • 阿里為什麼要拿下Flink?
    據Data Artisans官網介紹,其dA平臺由Apache Flink和dA Application Manager組成,「包括與容器編排、持續集成/持續交付(CI/CD)、日誌記錄、度量指標和狀態存儲整合的隨時可用的功能,為公司客戶提供了單一視圖,以便了解所有的數據流處理應用。」