用於圖形上機器學習的 Amazon Neptune ML - Amazon Neptune

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

用於圖形上機器學習的 Amazon Neptune ML

在大型連線的資料集中通常會有珍貴的資訊,但很難僅根據人類的直覺使用查詢來擷取這些資訊。機器學習 (ML) 技術可以協助在具有數十億個關係的圖形中找出隱藏的關聯性。這些關聯性可能有助於推薦產品、預測信用度,識別詐欺等等。

Neptune ML 功能可讓您在數小時而不是數週的時間內,在大型圖形上建置並訓練有用的機器學習模型。為了達成此目的,Neptune ML 使用 Amazon SageMaker AI 和 Deep Graph Library (GNN) (開放原始碼) 支援的圖形神經網路 () 技術。 DGL圖形神經網路是人工智慧的新興領域 (例如,請參閱圖形神經網路的全面調查)。如需GNNs搭配 使用 的實作教學DGL,請參閱使用 Deep Graph Library 學習圖形神經網路

注意

圖形頂點會在 Neptune ML 模型識別為「節點」。例如,頂點分類會使用節點分類機器學習模型,而頂點迴歸則會使用節點迴歸模型。

Neptune ML 可以做什麼

Neptune 同時支援直推式推論 (根據當時的圖形資料傳回訓練時預先計算的預測) 和直推式推論 (根據目前的資料,即時套用資料處理和模型評估)。請參閱 歸納推論與直推式推論之間的區別

Neptune ML 可以訓練機器學習模型,以支援五種不同類別的推論:

Neptune ML 目前支援的推論任務類型
  • 節點分類 – 預測頂點屬性的類別特徵。

    例如, 鑑於電影 The Shawshank Redemption,Neptune ML 可以從 [story, crime, action, fantasy, drama, family, ...] 的候選集將其 genre 屬性預測為 story

    有兩種類型的節點分類任務:

    • 單一類別分類:在這種任務中,每個節點只有一個目標特徵。例如,Alan Turing 的屬性 Place_of_birth 具有值 UK

    • 多類別分類:在這種任務中,每個節點可有多個目標特徵。例如,影片 The Godfather 的屬性 genre 具有值 crimestory

  • 節點迴歸 – 預測頂點的數值屬性。

    例如,鑑於電影 Avengers: Endgame,Neptune ML 可以預測其屬性 popularity 具有 5.0 一值。

  • 邊緣分類 – 預測邊緣屬性的類別特徵。

    有兩種類型的邊緣分類任務:

    • 單一類別分類:在這種任務中,每個邊緣只有一個目標特徵。例如,使用者與電影之間的評分邊緣可能具有屬性 liked,其值為「Yes」或「No」。

    • 多類別分類:在這種任務中,每個邊緣可有多個目標特徵。例如,使用者與電影之間的評分可能會對「Funny」、「Heartwarming」、「Chilling」等屬性標籤具有多個值。

  • 邊緣迴歸 – 預測邊緣的數值屬性。

    例如,使用者與電影之間的評分邊緣可能具有數值屬性 score,Neptune ML 可以鑑於使用者和電影針對該屬性預測一值。

  • 連結預測 – 為特定來源節點和傳出邊緣預測最有可能的目的地節點,或為給定的目的地節點和傳入邊緣預測最有可能的來源節點。

    例如,透過藥物疾病知識圖譜,假設 Aspirin 作為來源節點,且 treats 作為傳出邊緣,Neptune ML 可以將最相關的目的地節點預測為 heart diseasefever 等等。

    或者,透過 Wikimedia 知識圖譜,假設 President-of 作為邊緣或關聯,且 United-States 作為目的地節點,Neptune ML 可以將最相關的前端預測為 George WashingtonAbraham LincolnFranklin D. Roosevelt 等等。

注意

節點分類和邊緣分類僅支援字串值。這表示不支援數值屬性值 (例如 01),儘管字串等同於 "0""1"。同樣地,布林屬性值 truefalse 不起作用,但 "true""false" 可以。

搭配 Neptune ML,您可以使用分為兩大類的機器學習模型:

Neptune ML 目前支援的機器學習模型類型
  • 圖形神經網路 (GNN) 模型 – 這些模型包括關聯式圖形卷積網路 (R-GCNs)。 GNN模型適用於上述三種類型的任務。

  • 知識圖形內嵌 (KGE) 模型 – 這些模型包括 DistMultTransERotatE模型。它們僅適用於鏈接預測。

使用者定義的模型 – Neptune ML 也可讓您為上面列出的所有類型任務提供您自己的自訂模型實作。您可以使用 Neptune ML 工具組來開發和測試以 python 為基礎的自訂模型實作,然後再API搭配模型使用 Neptune ML 訓練。如需如何建構和組織實作,以便其與 Neptune ML 的訓練基礎結構相容的詳細資訊,請參閱 Neptune ML 中的自訂模型