拡張モデル・ナゲットは、拡張モデル・ノードの実行後に生成され、フロー・キャンバスに配置されます。このナゲットには、モデル作成およびモデル・スコアリングを定義する R スクリプトや Python for Spark スクリプトが含まれます。
デフォルトでは、拡張モデル・ナゲットには、モデル・スコアリングに使用されるスクリプト、データを読み取るためのオプション、および R コンソールまたは Python for Spark からのすべての出力が含まれます。 拡張モデル・ナゲットには、オプションで、グラフ、テキスト出力などの他のさまざまな形式のモデル出力も含めることができます。 拡張モデル・ナゲットが生成され、フロー・キャンバスに追加されると、出力ノードをそれに接続できます。 次に、この出力ノードがフロー内で通常の方法で使用されて、データおよびモデルに関する情報の取得、およびさまざまな形式でのデータのエクスポートが実行されます。
「シンタックス」タブ
「R モデル・スコアリング・シンタックス」。 R を使用する場合は、モデル・スコアリングに使用される R スクリプトがこのフィールドに表示されます。 デフォルトでは、このフィールドは有効になっていますが、編集はできません。 Python モデル・スコアリング・スクリプトを編集するには、「編集」をクリックします。
「Python モデル・スコアリング・シンタックス (Python model scoring syntax)」。 Python for Spark を使用する場合は、モデル・スコアリングに使用される Python スクリプトがこのフィールドに表示されます。 デフォルトでは、このフィールドは有効になっていますが、編集はできません。 Python モデル・スコアリング・スクリプトを編集するには、「編集」をクリックします。
「編集」をクリックしてスコアリング・シンタックス・フィールドを編集可能にすると、スコアリング・シンタックス・フィールドに入力することで、モデル・スコアリング・スクリプトを編集できます。 例えば、拡張モデル・ノードを実行して拡張モデル・ナゲットを生成した後で、モデル・スコアリング・スクリプトにエラーを見つけた場合などに、モデル・スコアリング・スクリプトの編集が必要になることがあります。 拡張モデル・ナゲット内でモデル・スコアリング・スクリプトに加えた変更は、拡張モデル・ノードの再実行によってモデルを再生成すると失われます。
「モデル・オプション」タブ
「データ読み取りオプション」。 これらのオプションは、R にのみ適用され、Python for Spark には適用されません。 これらのオプションにより、欠損値、フラグ型フィールド、および日付形式または日付/時刻形式の変数の処理方法を指定できます。
- 「データをバッチで読み込む」。 処理するデータ量が多い場合 (多すぎて Rエンジンのメモリーに収まらない場合など)、このオプションを使用して、個別に送信および処理できるバッチにデータを分割します。 各バッチに含めるデータ・レコードの最大数を指定します。
拡張変換ノードと拡張モデル・ナゲットのいずれでも、データは R スクリプトを使用して (バッチで) 渡されます。 そのため、Hadoop 環境またはデータベース環境で実行されるモデル・スコアリングとプロセス・ノード用のスクリプトには、ソートや集計など、データ内の複数の行にまたがる操作や、複数の行を結合する操作を含めることはできません。 この制約により、Hadoop 環境や、データベース内マイニングの間に、確実にデータが分割された状態になるよう強制することができます。 拡張の出力ノードおよび拡張モデル・ノードには、この制約はありません。
- 「フラグ型フィールドの変換」。 フラグ型フィールドの処理方法を指定します。 「文字列を因子に、整数および実数を倍精度に」および「論理値 (真、偽)」の 2 つのオプションがあります。 「論理値 (真、偽)」を選択した場合、フラグ型フィールドの元の値は失われます。 例えば、フィールドに「
Male
」および「Female
」という値がある場合、これらの値は「True
」および「False
」に変更されます。 - 「欠損値を R の欠損値 (NA) に変換」。 選択すると、欠損値はすべて R に変換されます。NA移ります。 価値NA欠損値を識別するために R によって使用されます。 使用する R 関数の中には、データに含まれている場合の関数の動作を制御できる引数を持つものがあります。NA例えば、この関数では、以下を含むレコードを自動的に除外することを選択できます。NAこのオプションを選択しない場合、欠損値は変更されずに R に渡され、R スクリプトの実行時にエラーが発生する可能性があります。
- 時間帯を考慮した特殊な制御で日時フィールドを R のクラスに変換: 選択すると、日付形式または日付/時刻形式の変数が R の日付/時刻オブジェクトに変換されます。 次のいずれかのオプションを選択する必要があります。
- R POSIXct. 日付形式または日時形式の変数が R に変換されるPOSIXctオブジェクト。
- R POSIXlt ( リスト)。 日付形式または日時形式の変数は R に変換されます。POSIXltオブジェクト。
注: POSIX 形式は拡張オプションです。 これらのオプションは、ご使用の R スクリプトで、これらの形式を必要とする方法で日付/時刻フィールドを処理するように指定している場合にのみ使用してください。 POSIX 形式は、時刻形式の変数には適用されません。
- 「フラグ型フィールドの変換」は「文字列を因子に、整数および実数を倍精度に」に設定されます。
- 「欠損値を R の欠損値 (NA) に変換」が選択されます。
- 「タイム・ゾーンの特殊制御を使用して日時フィールドを R のクラスに変換」は選択されません。
「コンソール出力」タブ
「コンソール出力」タブには、「シンタックス」タブの R スクリプトまたは Python for Spark スクリプトが実行されたときに受信するすべての出力が含まれます (例えば、R スクリプトを使用する場合、拡張モデル・ナゲットの「シンタックス」タブの「R モデル・スコアリング・シンタックス」フィールドにある R スクリプトが実行されたときに R コンソールから受信する出力が表示されます)。 この出力には、R スクリプトまたは Python スクリプトが実行されたときに生成される R または Python のすべてのエラー・メッセージや警告と、R コンソールからのすべてのテキスト出力が含まれます。 出力は、主にスクリプトをデバッグするために使用できます。
モデル・スコアリング・スクリプトを実行するたびに、R コンソールまたは Python for Spark から受信した出力で「コンソール出力」タブの内容が上書きされます。 コンソール出力は編集できません。