ついにグラフ構造を機械学習できるAmazon Neptune MLがリリースされました

re:Invent 2020 Machine Learningキーノートで発表されたAmazon Neptune MLについて速報レビューします
2020.12.13

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

HIRANO@おんせん県おおいたです

みんな、温泉入ってますかー? (挨拶

re:InventのMachine LearningキーノートでAmazon Neptune MLが発表されましたので、紹介します。

Amazon Neptune とは

Amazon Neptuneはグラフ構造に特化したマネージドデータベースです。グラフ構造とは、ノードとノードの関係性を表現するデータ構造です。例えば、SNSの各ユーザがノードで、フォーロが関係性になります。つまり大規模で複雑なネットワーク構造をデータベースに格納、検索できるのがAmazon Neptuneになります。

大規模なネットワーク構造から、目的のものを検索することは簡単です。例えば、Aさんのフォロワーの一覧を取り出すことは簡単にできます。しかし、ネットワーク構造を俯瞰的に見て何か新しいパターンを見つける、というのは人間による作業が必要でした。

Amazon Neptune に機械学習を組み合わせることで、大規模なグラフネットワークにから、新しい価値を生み出すことができます。

Amazon Neptune ML

そこで登場したのがAmazon Neptune MLです。公式ブログに掲載されている例を簡単に紹介します

ノード分類(Node classification)の例

学習結果より、ノード自体を分類します。例えば、銀行アプリにおけるグラフデータから、不正なカードやデバイスを判断する、ということが可能になります

出典:https://aws.amazon.com/jp/blogs/database/announcing-amazon-neptune-ml-easy-fast-and-accurate-predictions-on-graphs/

ターゲットノードの予測(Target node prediction)

学習結果より、ある関係性を持つ新しいノードを見つけます。例えば、ビデオストリーミングダービスで、あるユーザが高い評価をするであろう映画を推測することできます。

出典:https://aws.amazon.com/jp/blogs/database/announcing-amazon-neptune-ml-easy-fast-and-accurate-predictions-on-graphs/

Amazon Neptune ML の構築

Amazon Neptune MLの環境構築には、公式ドキュメントに準備されているCloudFormationのスタックセットの利用が便利です。

今回これを使って構築してみました。「Launch Stack」を選択するとスタック作成の画面になりますので、パラメータを選んで構築します。今回は基本デフォルトで構築しましたが、インスタンスは最小のものを選択しました(DbInstanceType=>db.t3.medium NotebookInstanceType=>ml.t2.medium)。

約30分で必要な展開が完了します。

確認すると、IAMの設定も含め、約70のリソースが構築されていました。

まとめ

Amazon Neptune ML にはこれまでの機械学習から一つ飛躍したワクワク感を感じます。今後の展開にも注目です。

AWS re:Invent 2020 は現在絶賛開催中です!

随時さまざまな新機能、セッション、アップデートが発表されています。

参加がまだの方は、この機会に是非こちらのリンクからレジストレーションして豊富なコンテンツを楽しみましょう!

AWS re:Invent | Amazon Web Services