EncoderVersion :グローバル
EncoderVersion API は、予測インテリジェンス ストアで使用されるスクリプト可能なオブジェクトを提供します。
この API には 予測インテリジェンス プラグイン (com.glide.platform_ml) が必要で、 sn_ml 名前空間内で提供されます。
この API は、エンコーダー ストア内のエンコーダー API オブジェクトに基づくエンコーダー バージョンを操作するために使用されます。
バージョンのソリューションをアクティブ化 エンコーダー トレーニング完了時に最新バージョンのソリューションをアクティブ化し、一度にアクティブにできるのは 1 つのバージョンのみです。ただし、予測に使用する、以前にトレーニングしたバージョンをアクティブ化することはできます。
EncoderVersion:getProperties()
エンコーダーオブジェクトのプロパティ およびバージョン番号を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| オブジェクト | データセットのコンテンツと エンコーダー の詳細。結果は、オブジェクトプロパティの設定によって異なります。 |
| <Object>.algorithmConfig | オプション。 アルゴリズム構成プロパティを含む JavaScript オブジェクト。
データタイプ:オブジェクト。 |
| <Object>.algorithmConfig.algorithm | このエンコーダーをトレーニングするためのアルゴリズムの名前。 可能な値:
データタイプ:文字列。 |
| <Object>.datasetsProperties | エンコーダーに関連付けられている DatasetDefinition() プロパティのリスト。
データタイプ:アレイ。 |
| <Object>.datasetsProperties.tableName | データセットのテーブルの名前。たとえば、「 tableName」:「インシデント」です。 データタイプ:文字列。 |
| <Object>.datasetsProperties.fieldNames | 指定されたテーブルのフィールド名を文字列としてリストします。例:"fieldNames" : ["short_description", "priority"]。 データタイプ:アレイ。 |
| <Object>.datasetsProperties.fieldNames.fieldDetails | フィールドのプロパティを指定する JavaScript オブジェクトのリスト。
データタイプ:アレイ。 |
| <Object>.datasetsProperties.fieldNames.fieldDetails.<object>.名前 | このデータセットを制限する情報のタイプを定義するフィールドの名前。 データタイプ:文字列。 |
| <Object>.datasetsProperties.fieldDetails.<object>。タイプ | 機械学習フィールドタイプ。 データタイプ:文字列。 |
| <Object>.datasetsProperties.fieldDetails.encodedQuery | 標準の Glide 形式でエンコードされたクエリ文字列。「 エンコードされたクエリ文字列」を参照してください。 データタイプ:文字列。 |
| <Object>.domainName | このデータセットに関連付けられたドメイン名。「 ドメインセパレーション」および 予測インテリジェンスを参照してください。 データタイプ:文字列。 |
| <Object>.isActive | このバージョンがアクティブかどうかを示すフラグ。 有効な値:
データタイプ:文字列 |
| <Object>.label | 予測タスクを識別します。
データタイプ:文字列。 |
| <Object>.name | システムによって割り当てられた名前。 データタイプ:文字列。 |
| <Object>.predictedFieldName | 予測可能性のためにトレーニングするフィールドを識別します。 データタイプ:文字列。 |
| <Object>.processingLanguage | 2 文字の ISO 639-1 言語コード形式の処理言語。 データタイプ:文字列。 |
| <Object>.scope | オブジェクトスコープ。現時点で有効な値は グローバル値のみです。データタイプ:文字列 |
| <Object>.stopwords | オプション。languageプロパティ設定に基づいてシステムが自動的に生成する文字列のプリセットリスト。詳細については、「 カスタムストップワードリストの作成」を参照してください。 データタイプ:アレイ。 |
| <Object>.trainingFrequency | モデルを再トレーニングする頻度。 可能な値:
データタイプ:文字列。 |
| <Object>.versionNumber | のバージョン番号 Encoder オブジェクト。 データタイプ:文字列。 |
次の例では、ストア内のアクティブなオブジェクトバージョンのプロパティを取得します。
// Get properties
var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
gs.print(JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getProperties()), null, 2));
出力:
*** Script: {
"datasetsProperties": [
{
"tableName": "incident",
"fieldNames": [
"assignment_group",
"short_description",
"description"
],
"encodedQuery": "activeANYTHING"
}
],
"domainName": "global",
"isActive": "true",
"label": "my encoder definition",
"name": "ml_x_snc_global_global_my_encoder_definition",
"processingLanguage": "en",
"stopwords": [
"Default English Stopwords"
],
"versionNumber": "1"
}
EncoderVersion:getSentenceVectors(アレイ入力)
各入力センテンスのベクトルを返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | アレイ | ベクトルを受け取る文としての文字列の配列。 |
| タイプ | 説明 |
|---|---|
| 文字列 | 文ベクトルの配列。 |
次の例は、1 つの文のベクトルを返す方法を示しています。
var myEncoderName = 'GloVe';
var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
var input = ["I like to code."];
var vectors = myEncoder.getActiveVersion().getSentenceVectors(input);
gs.print(vectors);
出力:
*** Script: [-0.16243751347064972,0.30614474415779114,0.08489049971103668,
-0.48100000619888306,-0.170997753739357,0.08779674768447876,-0.07848624140024185,-0.15123701095581055,
-0.07843250036239624,-1.9505999088287354,0.3007825016975403,-0.07804800570011139,-0.04779449850320816,
0.04803549498319626,0.09848674386739731,0.2427891194820404,-0.41138750314712524,0.10880374908447266,
… ,
0.21227750182151794,0.18478751182556152,-0.3113832473754883,-0.16560424864292145,0.09052124619483948]
EncoderVersion:getSimilarWords(アレイ入力、オブジェクトオプション)
各入力単語に類似する単語を類似度の降順で返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | アレイ | 類似の単語を検索するための単語のアレイ。 |
| オプション | オブジェクト | マップして結果を絞り込みます。 |
| options.topN | 文字列 | 指定した場合、指定された数までの上位結果を返します 言葉の。たとえば、最も類似している上位 10 個の単語を返すには 、「10」 を使用します。 |
| タイプ | 説明 |
|---|---|
| アレイ | 対応する位置に入力単語の類似した単語を含む要素のリスト。これらの類似した単語は 、[単語、類似性スコア] 形式のペアのアレイによって表されます。 |
次の例は、 GloVe エンコーダーを使用して類似の単語を取得する方法を示しています。
var myEncoderName = 'GloVe';
var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
var input = ["apple"];
var options = {"topN":"5"};
gs.print(myEncoder.getActiveVersion().getSimilarWords(input, options));
出力:
*** Script: [[["iphone",0.5987],["macintosh",0.5836],["ipod",0.5761],["microsoft",0.5664],["ipad",0.5628]]]
EncoderVersion:getStatus(ブール値 includeDetails)
トレーニング完了ステータスを取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| includeDetails | ブール | ステータスを details にするかどうかを示すフラグ。 有効な値:
デフォルト値:False |
| タイプ | 説明 |
|---|---|
| オブジェクト | のトレーニングステータス情報を含む JavaScript オブジェクトEncoder オブジェクト。 |
| <Object>.state | トレーニング完了ステータス。トレーニングジョブがターミナルステータスに達しても、ジョブはそのステータスを終了しません。ステータスが [ターミナル] の場合、 hasJobEnded プロパティは true に設定されます。可能な値:
データタイプ:文字列 |
| <Object>.hasJobEnded | トレーニングが完了したかどうかを示すフラグ。 有効な値:
データタイプ:文字列としてのブール値 |
| <Object>.percentComplete | トレーニング完了率。完了率が 100 未満の場合、ジョブはターミナル状態である可能性があります。たとえば、トレーニングがタイムアウトした場合などです。 データタイプ:文字列としての数値 範囲:0〜100 |
| <Object>.details | 追加のトレーニング詳細のリストを含むオブジェクト。 データタイプ:オブジェクト |
次の例は、トレーニングが完了した正常な結果を示しています。
// Get status
var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
gs.print(JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getStatus(true), null, 2)));
出力:
{
"state":"solution_complete",
"percentComplete":"100",
"hasJobEnded":"true",
"details":{"stepLabel":"Encoder Complete"} // This information is only returned if getStatus(true);
}
次の例は、トレーニング完了での失敗の結果を示しています。
// Get status
var encoderName = 'ml_x_snc_global_global_encoder';
var mlEncoder = sn_ml.EncoderStore.get(encoderName);
var trainingStatus = mlEncoder.getLatestVersion().getStatus();
gs.print(JSON.stringify(JSON.parse(trainingStatus), null, 2));
出力:
{
"state":"solution_error",
"percentComplete":"100",
"hasJobEnded":"true"
}
EncoderVersion:getVersionNumber()
のバージョン番号を取得します ソリューションオブジェクト。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | バージョン番号。 |
次の例は、バージョン番号を取得する方法を示しています。
// Get version number
var mlEncoder = sn_ml.EncoderStore.get('ml_incident_categorization');
gs.print("Version number: "+JSON.stringify(JSON.parse(mlEncoder.getActiveVersion().getVersionNumber()), null, 2));
出力:
Version number: 1
EncoderVersion:getWordVectors(アレイ入力)
各入力単語のベクトルを返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | アレイ | ベクトルを受け取る単語としての文字列のリスト。 |
| タイプ | 説明 |
|---|---|
| アレイ | 指定された各単語のベクトルのリスト。 |
次の例は、「 hello」という単語からベクトルを取得する方法を示しています。
var myEncoderName = 'GloVe';
var myEncoder = sn_ml.EncoderStore.get(myEncoderName);
var input = ["hello"];
gs.print(myEncoder.getActiveVersion().getWordVectors(input));
出力:
*** Script: [[-0.337119996547699,-0.2169100046157837,-0.006636499892920256,
-0.41624999046325684,-1.2554999589920044,-0.0284659992903471,-0.7219499945640564,
-0.5288699865341187,0.0072085000574588776,0.3199700117111206,0.02942500077188015,
-0.013236000202596188,0.4351100027561188,0.2571600079536438,0.3899500072002411,
… ,
0.3384299874305725,0.4055800139904022,0.18073000013828278,0.6424999833106995]]