翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Gremlin 推論クエリで使用される Neptune ML 述語
Neptune#ml.deterministic
この述語は、帰納的推論クエリ、つまり Neptune#ml.inductiveInference 述語を含むクエリではオプションです。
誘導推論を使用する場合、Neptune エンジンはトレーニング済みGNNモデルを評価するための適切なサブグラフを作成し、このサブグラフの要件は最終モデルのパラメータによって異なります。具体的には、 num-layer
パラメータはターゲットノードまたはエッジからのトラバーサルホップの数を決定し、 fanouts
パラメータは各ホップでサンプリングする近隣の数を指定します (HPOパラメータ を参照)。
デフォルトでは、帰納的推論クエリは非決定論的モードで実行されます。このモードでは、Neptune は近傍をランダムに構築します。予測を行う場合、この通常のランダム近傍サンプリングによって予測が異なる場合があります。
帰納的推論クエリに Neptune#ml.deterministic
を含めると、Neptune エンジンは、同じクエリを複数回呼び出しても毎回同じ結果が返されるように、決定論的な方法で近傍をサンプリングしようとします。ただし、基礎となるグラフの変更や分散システムのアーティファクトによって変動が生じる可能性があるため、結果が完全に決定的であることは保証できません。
次のように、クエリに Neptune#ml.deterministic
述語を含めます。
.with("Neptune#ml.deterministic")
Neptune#ml.deterministic
述語が Neptune#ml.inductiveInference
も含まないクエリに含まれている場合は、単に無視されます。
Neptune#ml.disableInductiveInferenceMetadataCache
この述語は、帰納的推論クエリ、つまり Neptune#ml.inductiveInference 述語を含むクエリではオプションです。
帰納的推論クエリでは、Neptune は Amazon S3 に保存されているメタデータファイルを使用して、近傍を構築する際のホップ数とファンアウトを決定します。Neptune は通常、Amazon S3 からファイルを繰り返し取得しないように、このモデルメタデータをキャッシュします。クエリに Neptune#ml.disableInductiveInferenceMetadataCache
述語を含めることでキャッシュを無効にできます。Neptune が Amazon S3 から直接メタデータを取得するのが遅くなる場合がありますが、再トレーニングまたは変換後に SageMaker エンドポイントが更新され、キャッシュが古くなった場合に役立ちます。
次のように、クエリに Neptune#ml.disableInductiveInferenceMetadataCache
述語を含めます。
.with("Neptune#ml.disableInductiveInferenceMetadataCache")
Jupyter ノートブックでサンプルクエリがどのように表示されるかを次に示します。
%%gremlin g.with("Neptune#ml.endpoint", "ep1") .with("Neptune#ml.iamRoleArn", "arn:aws:iam::123456789012:role/NeptuneMLRole") .with("Neptune#ml.disableInductiveInferenceMetadataCache") .V('101').properties("rating") .with("Neptune#ml.regression") .with("Neptune#ml.inductiveInference")
Neptune#ml.endpoint
Neptune#ml.endpoint
述語は、必要に応じて、with()
手順に従い推論エンドポイントを指定するために使用します。
.with("Neptune#ml.endpoint", "
the model's SageMaker inference endpoint
")
エンドポイントは、 id
またはその によって識別できますURL。例:
.with( "Neptune#ml.endpoint", "node-classification-movie-lens-endpoint" )
または:
.with( "Neptune#ml.endpoint", "https://runtime.sagemaker.us-east-1.amazonaws.com/endpoints/node-classification-movie-lens-endpoint/invocations" )
注記
Neptune DB クラスターneptune_ml_endpointパラメータグループの パラメータをエンドポイントid
または に設定した場合URL、各クエリにNeptune#ml.endpoint
述語を含める必要はありません。
Neptune#ml.iamRoleArn
Neptune#ml.iamRoleArn
は、必要に応じて SageMaker 実行IAMロールARNの を指定するwith()
ステップで使用されます。
.with("Neptune#ml.iamRoleArn", "
the ARN for the SageMaker execution IAM role
")
SageMaker 実行IAMロールを作成する方法については、「」を参照してくださいカスタム NeptuneSageMakerIAMRoleロールを作成する。
注記
Neptune DB クラスターneptune_ml_iam_roleパラメータグループの パラメータを実行 SageMaker IAMロールARNの に設定した場合、各クエリにNeptune#ml.iamRoleArn
述語を含める必要はありません。
Neptune#ml。inductiveInference
Gremlin では、トランスダクティブ推論はデフォルトで有効です。リアルタイムの帰納的推論クエリを作成するには、次のように Neptune#ml.inductiveInference
述語を含めます。
.with("Neptune#ml.inductiveInference")
グラフが動的な場合、多くの場合、機能的推論は最善の選択ですが、グラフが静的な場合、トランスダクティブ推論の方が速くて効率的です。
Neptune#ml.limit
Neptune#ml.limit
述語は、必要に応じてエンティティごとに返される結果の数を制限します。
.with( "Neptune#ml.limit",
2
)
デフォルトでは、上限は 1 であり、設定できる最大数は 100 です。
Neptune#ml.threshold
Neptune#ml.threshold
述語はオプションで、結果スコアの切り捨てしきい値を設定します。
.with( "Neptune#ml.threshold",
0.5D
)
これにより、指定したしきい値を下回るスコアを持つすべての結果を破棄できます。
Neptune#ml.classification
Neptune#ml.classification
述語は、ノード分類モデルの SageMaker エンドポイントからプロパティを取得する必要があることを確認するproperties()
ステップにアタッチされます。
.properties( "
property key of the node classification model
" ).with( "Neptune#ml.classification" )
Neptune#ml.regression
Neptune#ml.regression
述語は、ノード回帰モデルの SageMaker エンドポイントからプロパティを取得する必要があることを確認するproperties()
ステップにアタッチされます。
.properties( "
property key of the node regression model
" ).with( "Neptune#ml.regression" )
Neptune#ml.prediction
Neptune#ml.prediction
述語は、これがリンク予測クエリであることを確立するために in()
および out()
ステップに添付されています。
.in("
edge label of the link prediction model
").with("Neptune#ml.prediction").hasLabel("target node label
")
Neptune#ml.score
Neptune#ml.score
述語は Gremlin ノードまたはエッジ分類クエリで、機械学習の信頼スコアを取得するために使用されます。Neptune#ml.score
述語は、ノードまたはエッジ分類クエリの ML 信頼度スコアを取得するために、properties()
ステップでクエリ述語とともに渡されます。
ノード分類の例については、その他のノード分類の例で、また、エッジ分類セクションのエッジ分類の例でご確認いただけます。