EncoderVersion - グローバル
EncoderVersion API は、予測インテリジェンスストアで使用されるスクリプト可能なオブジェクトを提供します。
この API には 予測インテリジェンス プラグイン (com.glide.platform_ml) が必要です。この API は sn_ml 名前空間内で提供されます。
この API は、Encoder ストア内の Encoder API オブジェクトに基づいて、Encoder バージョンを操作するために使用されます。
トレーニングを完了すると、最新バージョンの Encoder がアクティブ化され、一度に 1 つのバージョンのみがアクティブになります。ただし、予測を行うために使用したい以前にトレーニングされたバージョンをアクティブ化することができます。
EncoderVersion - getProperties()
Encoder オブジェクトプロパティ バージョン番号 を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| オブジェクト | データセットのコンテンツと Encoder の詳細です。結果はオブジェクトプロパティのセットアップによって異なります。 |
| <Object>.algorithmConfig | オプション。 アルゴリズム設定プロパティを含む JavaScript オブジェクト。
データタイプ:オブジェクト。 |
| <Object>.algorithmConfig.algorithm | このエンコーダーをトレーニングするためのアルゴリズムの名前。 可能な値:
データタイプ:文字列。 |
| <Object>.datasetsProperties | Encoder に関連付けられた DatasetDefinition() プロパティのリストです。
データタイプ:アレイ。 |
| <Object>.datasetsProperties.tableName | データセットのテーブルの名前。例:"tableName" : "Incident" データタイプ:文字列。 |
| <Object>.datasetsProperties.fieldNames | 指定されたテーブルからの文字列としてのフィールド名のリスト。例:"fieldNames" : ["short_description", "priority"] データタイプ:アレイ。 |
| <Object>.datasetsProperties.fieldNames.fieldDetails | フィールドプロパティを指定する JavaScript オブジェクトのリスト。
データタイプ:アレイ。 |
| <Object>.datasetsProperties.fieldNames.fieldDetails.<object>.name | このデータセットを制限する情報のタイプを定義するフィールドの名前。 データタイプ:文字列。 |
| <Object>.datasetsProperties.fieldDetails.<object>.type | 機械学習フィールドタイプ。 データタイプ:文字列。 |
| <Object>.datasetsProperties.fieldDetails.encodedQuery | 標準の Glide 形式のエンコードされたクエリ文字列。「エンコードされたクエリ文字列」を参照してください。 データタイプ:文字列。 |
| <Object>.domainName | このデータセットに関連付けられたドメイン名。ドメインセパレーションおよび予測インテリジェンスを参照してください。 データタイプ:文字列。 |
| <Object>.isActive | このバージョンがアクティブかどうかを示すフラグ。 有効な値:
データタイプ:文字列 |
| <Object>.label | 予測タスクを識別します。
データタイプ:文字列。 |
| <Object>.name | システムによって割り当てられた名前。 データタイプ:文字列。 |
| <Object>.predictedFieldName | 予測可能性についてトレーニングするフィールドを識別します。 データタイプ:文字列。 |
| <Object>.processingLanguage | 2 文字の ISO 639-1 言語コード形式の処理言語。 データタイプ:文字列。 |
| <Object>.scope | オブジェクトスコープ。現在、有効な値は global のみです。データタイプ:文字列 |
| <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(アレイ input)
入力された各文のベクトルを返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | アレイ | ベクトルの取得元の文である文字列のアレイです。 |
| タイプ | 説明 |
|---|---|
| 文字列 | 文のベクトルのアレイです。 |
次の例は、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(アレイ input, オブジェクト options)
入力された各単語の類似単語を類似度が高い順に返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | アレイ | 類似単語を見つけるための単語のアレイです。 |
| オプション | オブジェクト | 結果を絞り込むためのマップです。 |
| options.topN | 文字列 | 指定されている場合、指定された数までの上位の結果を返します ワード数。例えば、最も類似する上位 10 個の単語を返すには、"10" を使用します。 |
| タイプ | 説明 |
|---|---|
| アレイ | 入力された単語の類似単語を対応する位置に含む要素のリストです。これらの類似単語は、[word, similarity score] 形式のペアのアレイによって表されます。 |
次の例は、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 |
| タイプ | 説明 |
|---|---|
| オブジェクト | Encoder オブジェクト のトレーニングステータス情報を含む JavaScript オブジェクト。 |
| <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(アレイ input)
入力された各単語のベクトルを返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 入力 | アレイ | ベクトルの取得元の単語である文字列のリストです。 |
| タイプ | 説明 |
|---|---|
| アレイ | 指定された各単語のベクトルのリストです。 |
次の例は、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]]