翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
モデルトレーニング設定を調整する additionalParams ために でパラメータを使用する例
次の例は、プロパティグラフモデルとRDFデータモデルでadditionalParams「」機能を使用して、Neptune ML アプリケーションのモデルトレーニングプロセスのさまざまな側面を設定する方法を示しています。この例では、トレーニング/検証/テストデータのデフォルトの分割レートの指定、ノード分類、回帰、リンク予測タスクの定義、数値バケット、テキスト埋め込み、日時、カテゴリデータなどのさまざまな機能タイプの設定など、さまざまな機能について説明します。これらの詳細な設定により、機械学習パイプラインを特定のデータとモデリング要件に合わせて調整し、Neptune ML 機能の可能性を最大限に引き出すことができます。
目次
- additionalParams を使用したプロパティグラフの例
- モデルトレーニングコン構成のデフォルトの分割レートの指定
- モデルトレーニング構成のノード分類タスクの指定
- モデルトレーニング構成のマルチクラスノード分類タスクの指定
- モデルトレーニング構成のノード回帰タスクの指定
- モデルトレーニング構成のエッジ分類タスクの指定
- モデルトレーニング構成のマルチクラスエッジ分類タスクの指定
- モデルトレーニング構成のエッジ回帰の指定
- モデルトレーニング構成のノード回帰タスクの指定
- 数値バケット特徴の指定
- Word2Vec 特徴の指定
- FastText 特徴の指定
- Sentence BERT 特徴の指定
- TF-IDF 特徴の指定
- datetime 特徴の指定
- category 特徴の指定
- numerical 特徴の指定
- auto 特徴の指定
- RDF を使用した例 additionalParams
additionalParams を使用したプロパティグラフの例
モデルトレーニングコン構成のデフォルトの分割レートの指定
次の例で、split_rate
パラメーターは、モデルトレーニングの既定の分割率を設定します。デフォルトの分割レートが指定されていない場合、トレーニングでは [0.9, 0.1, 0.0] の値が使用されます。ターゲット単位でデフォルト値を上書きするには、各ターゲットに対して split_rate
を指定します。
次の例は、default split_rate
フィールドは、ターゲット単位で上書きしない限り [0.7,0.1,0.2]
の分割レートが使用されることを示します。
"additionalParams": { "neptune_ml": { "version": "v2.0", "split_rate": [0.7,0.1,0.2], "targets": [
(...)
], "features": [(...)
] } }
モデルトレーニング構成のノード分類タスクの指定
トレーニング目的でラベル付きの例が含まれているノードプロパティがどれかを示すには、ノード分類要素を targets
配列に追加し、"type" :
"classification"
を使用します。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
次の例で、node
ターゲットは、各 Movie
ノードの genre
プロパティはノードクラスラベルとして扱われることを示しています。split_rate
値は、デフォルトの分割レートを上書きします。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "node": "Movie", "property": "genre", "type": "classification", "split_rate": [0.7,0.1,0.2] } ], "features": [
(...)
] } }
モデルトレーニング構成のマルチクラスノード分類タスクの指定
トレーニング目的で複数のラベル付き例が含まれているノードプロパティがどれかを示すには、次のようにしてターゲット配列にノード分類要素を追加します。"type" :
"classification"
、および separator
を使用し、ターゲットプロパティ値を複数のカテゴリ値に分割するために使用できる文字を指定します。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
次の例で、node
ターゲットは、各 Movie
ノードの genre
プロパティはノードクラスラベルとして扱われることを示しています。separator
フィールドは、各ジャンルプロパティに複数のセミコロン区切り値が含まれていることを示します。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "node": "Movie", "property": "genre", "type": "classification", "separator": ";" } ], "features": [
(...)
] } }
モデルトレーニング構成のノード回帰タスクの指定
トレーニング目的でラベル付きの例が含まれているノードプロパティがどれかを示すには、"type" : "regression"
を使用してノード分類要素をターゲット配列に追加します。デフォルトの分割レートを上書きする場合は、split_rate フィールドを追加します。
次の node
ターゲットは、各 rating
ノードの Movie
プロパティは回帰ラベルとして扱われることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "node": "Movie", "property": "rating", "type" : "regression", "split_rate": [0.7,0.1,0.2] } ], "features": [
...
] } }
モデルトレーニング構成のエッジ分類タスクの指定
トレーニング目的のラベル付きの例が含まれているエッジプロパティがどれかを示すには、エッジ要素を targets
配列に追加し、"type" : "regression"
を使用します。デフォルトの分割レートを上書きする場合は、split_rate フィールドを追加します。
次の edge
ターゲットは、各 knows
エッジの metAtLocation
プロパティはエッジクラスラベルとして扱われることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "edge": ["Person", "knows", "Person"], "property": "metAtLocation", "type": "classification" } ], "features": [
(...)
] } }
モデルトレーニング構成のマルチクラスエッジ分類タスクの指定
トレーニング目的で複数のラベル付き例が含まれているエッジプロパティを指定するには、エッジ要素を targets
配列に追加し、"type" : "classification"
、および separator
フィールドを使用して、ターゲットプロパティ値を複数のカテゴリ値に分割するために使用される文字を指定します。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
次の edge
ターゲットは、各 repliedTo
エッジの sentiment
プロパティはエッジクラスラベルとして扱われることを示しています。セパレータフィールドは、各センチメントプロパティに複数のカンマ区切り値が含まれていることを示します。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "edge": ["Person", "repliedTo", "Message"], "property": "sentiment", "type": "classification", "separator": "," } ], "features": [
(...)
] } }
モデルトレーニング構成のエッジ回帰の指定
トレーニング目的のラベル付き回帰の例が含まれているエッジプロパティがどれかを示すには、edge
要素を targets
配列に追加し、"type" : "regression"
を使用します。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
次の edge
ターゲットは、各 rating
エッジの reviewed
プロパティはエッジ回帰として扱われることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "edge": ["Person", "reviewed", "Movie"], "property": "rating", "type" : "regression" } ], "features": [
(...)
] } }
モデルトレーニング構成のノード回帰タスクの指定
リンク予測トレーニングの目的でどのエッジが使用されるかを示すには、"type" : "link_prediction"
を使用してターゲット配列にエッジ要素を追加します。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
次の edge
ターゲットは、cites
エッジがリンク予測に使用されることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "edge": ["Article", "cites", "Article"], "type" : "link_prediction" } ], "features": [
(...)
] } }
数値バケット特徴の指定
ノードプロパティの数値データ特徴を指定するには、"type": "bucket_numerical"
を features
配列に追加します。
次の node
特徴は、それぞれの Person
ノード の age
プロパティが数値バケット特徴として処理されることを示しています。
"additionalParams": { "neptune_ml": { "targets": [
...
], "features": [ { "node": "Person", "property": "age", "type": "bucket_numerical", "range": [1, 100], "bucket_cnt": 5, "slide_window_size": 3, "imputer": "median" } ] } }
Word2Vec
特徴の指定
"type": "text_word2vec"
を features
配列に追加することでノードプロパティの Word2Vec
特徴を指定できます。
次の node
特徴は、それぞれの Movie
ノード の description
プロパティが Word2Vec
特徴として処理されることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [
...
], "features": [ { "node": "Movie", "property": "description", "type": "text_word2vec", "language": "en_core_web_lg" } ] } }
FastText
特徴の指定
"type": "text_fasttext"
を features
配列に追加することでノードプロパティの FastText
特徴を指定できます。language
フィールドは必須であり、次のいずれかの言語コードを指定する必要があります。
en
(英語)zh
(中国語)hi
(ヒンディー語)es
(スペイン語)fr
(フランス語)
text_fasttext
エンコーディングでは、1 つの機能で同時に複数の言語を処理できないことに注意してください。
次の node
機能は、それぞれの Movie
ノード のフランス語の description
プロパティが FastText
機能として処理されることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [
...
], "features": [ { "node": "Movie", "property": "description", "type": "text_fasttext", "language": "fr", "max_length": 1024 } ] } }
Sentence BERT
特徴の指定
"type": "text_sbert"
を features
配列に追加することでノードプロパティの Sentence BERT
特徴を指定できます。このメソッドは多言語言語モデルを使用してテキストフィーチャを自動的にエンコードするため、言語を指定する必要はありません。
次の node
特徴は、それぞれの Movie
ノード の description
プロパティが Sentence BERT
特徴として処理されることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [
...
], "features": [ { "node": "Movie", "property": "description", "type": "text_sbert128", } ] } }
TF-IDF
特徴の指定
"type": "text_tfidf"
を features
配列に追加することでノードプロパティの TF-IDF
特徴を指定できます。
次の node
特徴は、それぞれの Person
ノード の bio
プロパティが TF-IDF
特徴として処理されることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [
...
], "features": [ { "node": "Movie", "property": "bio", "type": "text_tfidf", "ngram_range": [1, 2], "min_df": 5, "max_features": 1000 } ] } }
datetime
特徴の指定
エクスポートプロセスにより、datetime
日付プロパティの特徴が自動的に推論されます。ただし、通常は auto
特徴として処理されるプロパティが明示的に datetime
特徴として処理されるように datetime
特徴に使用される datetime_parts
を制限する、または特徴仕様を上書きする場合は、"type": "datetime"
特徴を追加します。
次の node
特徴は、それぞれの Post
ノード の createdAt
プロパティが datetime
特徴として処理されることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [
...
], "features": [ { "node": "Post", "property": "createdAt", "type": "datetime", "datetime_parts": ["month", "weekday", "hour"] } ] } }
category
特徴の指定
エクスポートプロセスにより、文字列プロパティおよび複数の値を含む数値プロパティの auto
特徴が自動的に推論されます。単一の値を含む数値プロパティの場合、numerical
特徴を推論します。します。日付のプロパティについては、datetime
特徴を推論します。
プロパティがカテゴリ特徴として扱われるように、特徴仕様を上書きする場合は、"type": "category"
を特徴配列に追加します。プロパティに複数の値が含まれている場合は、separator
フィールドを含めます。例:
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [
...
], "features": [ { "node": "Post", "property": "tag", "type": "category", "separator": "|" } ] } }
numerical
特徴の指定
エクスポートプロセスにより、文字列プロパティおよび複数の値を含む数値プロパティの auto
特徴が自動的に推論されます。単一の値を含む数値プロパティの場合、numerical
特徴を推論します。します。日付のプロパティについては、datetime
特徴を推論します。
プロパティを numerical
特徴として処理するために特徴仕様を上書きしたい場合は、"type": "numerical"
を特徴配列に追加します。プロパティに複数の値が含まれている場合は、separator
フィールドを含めます。例:
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [
...
], "features": [ { "node": "Recording", "property": "duration", "type": "numerical", "separator": "," } ] } }
auto
特徴の指定
エクスポートプロセスにより、文字列プロパティおよび複数の値を含む数値プロパティの auto
特徴が自動的に推論されます。単一の値を含む数値プロパティの場合、numerical
特徴を推論します。します。日付のプロパティについては、datetime
特徴を推論します。
プロパティを auto
特徴として処理するために特徴仕様を上書きしたい場合は、"type": "auto"
を特徴配列に追加します。プロパティに複数の値が含まれている場合は、separator
フィールドを含めます。例:
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [
...
], "features": [ { "node": "User", "property": "role", "type": "auto", "separator": "," } ] } }
RDF を使用した例 additionalParams
モデルトレーニングコン構成のデフォルトの分割レートの指定
次の例で、split_rate
パラメーターは、モデルトレーニングの既定の分割率を設定します。デフォルトの分割レートが指定されていない場合、トレーニングでは [0.9, 0.1, 0.0] の値が使用されます。ターゲット単位でデフォルト値を上書きするには、各ターゲットに対して split_rate
を指定します。
次の例は、default split_rate
フィールドは、ターゲット単位で上書きしない限り [0.7,0.1,0.2]
の分割レートが使用されることを示します。
"additionalParams": { "neptune_ml": { "version": "v2.0", "split_rate": [0.7,0.1,0.2], "targets": [
(...)
] } }
モデルトレーニング構成のノード分類タスクの指定
トレーニング目的のラベル付きの例が含まれているノードプロパティがどれかを示すには、ノード分類要素を targets
配列に追加し、"type" :
"classification"
を使用します。ノードフィールドを追加して、ターゲットノードのノードタイプを指定します。predicate
フィールドを追加して、ターゲットノードのターゲットノード特徴として使用されるリテラルデータを定義します。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
次の例で、node
ターゲットは、各 Movie
ノードの genre
プロパティはノードクラスラベルとして扱われることを示しています。split_rate
値は、デフォルトの分割レートを上書きします。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "node": "http://aws.amazon.com/neptune/csv2rdf/class/Movie", "predicate": "http://aws.amazon.com/neptune/csv2rdf/datatypeProperty/genre", "type": "classification", "split_rate": [0.7,0.1,0.2] } ] } }
モデルトレーニング構成のノード回帰タスクの指定
トレーニング目的でラベル付きの例が含まれているノードプロパティがどれかを示すには、"type" : "regression"
を使用してノード分類要素をターゲット配列に追加します。node
フィールドを追加して、ターゲットノードのノードタイプを指定します。predicate
フィールドを追加して、ターゲットノードのターゲットノード特徴として使用されるリテラルデータを定義します。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
次の node
ターゲットは、各 rating
ノードの Movie
プロパティは回帰ラベルとして扱われることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "node": "http://aws.amazon.com/neptune/csv2rdf/class/Movie", "predicate": "http://aws.amazon.com/neptune/csv2rdf/datatypeProperty/rating", "type": "regression", "split_rate": [0.7,0.1,0.2] } ] } }
特定のエッジのリンク予測タスクの指定
リンク予測トレーニングの目的に使用するエッジを指定するには、"type" : "link_prediction"
を使用してターゲット配列にエッジ要素を追加します。subject
、predicate
および object
フィールドを追加して、エッジタイプを指定します。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
次の edge
ターゲットは、Directors
を Movies
に接続する directed
エッジがリンク予測に使用されることを示しています。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "subject": "http://aws.amazon.com/neptune/csv2rdf/class/Director", "predicate": "http://aws.amazon.com/neptune/csv2rdf/datatypeProperty/directed", "object": "http://aws.amazon.com/neptune/csv2rdf/class/Movie", "type" : "link_prediction" } ] } }
すべてのエッジのリンク予測タスクの指定
リンク予測トレーニングの目的に使用するエッジを指定するには、"type" :
"link_prediction"
を使用してターゲット配列に edge
要素を追加します。subject
、predicate
または object
フィールドは追加しません。デフォルトの分割レートを上書きする場合は、split_rate
フィールドをの追加します。
"additionalParams": { "neptune_ml": { "version": "v2.0", "targets": [ { "type" : "link_prediction" } ] } }