Mining Model Content for Neural Network Models (Analysis Services - Data Mining)

適用対象:SQL Server 2019 以前の Analysis Services Azure Analysis Services Fabric/Power BI Premium

重要

データ マイニングは SQL Server 2017 Analysis Services で非推奨となり、SQL Server 2022 Analysis Services で停止されました。 非推奨および停止された機能については、ドキュメントの更新は行われません。 詳細については、「Analysis Services 下位互換性」を参照してください。

このトピックでは、Microsoft ニューラル ネットワーク アルゴリズムを使用するモデルに固有のマイニング モデル コンテンツについて説明します。 すべてのモデルの種類で共有される統計と構造、およびマイニング モデル コンテンツに関連する用語の一般的な定義を解釈する方法の詳細については、「 マイニング モデル コンテンツ (Analysis Services - データ マイニング)」を参照してください。

ニューラル ネットワーク モデルの構造について

各ニューラル ネットワーク モデルには、モデルとそのメタデータを表す 1 つの親ノードと、入力属性に関する説明的な統計情報を提供するマージナル統計ノード (NODE_TYPE = 24) があります。 マージナル統計ノードの便利な点は、入力値に関する情報が要約されるため、個々のノードのデータにクエリを実行する必要がないことです。

これら 2 つのノードの下に、少なくとも 2 つのノードがあります。モデルの予測可能属性の数によっては、それ以上のノードが存在する場合もあります。

  • 最初のノード (NODE_TYPE = 18) が常に、入力層の最上位ノードです。 この最上位ノードの下にある入力ノード (NODE_TYPE = 21) に、実際の入力属性とその値が含まれています。

  • 後続のノードには、それぞれ異なる サブネットワーク (NODE_TYPE = 17) が含まれています。 各サブネットワークには、そのサブネットワークの非表示層 (NODE_TYPE = 19) と出力層 (NODE_TYPE = 20) が常に含まれます。

ニューラル ネットワークのモデル コンテンツの

入力層の情報は簡単です。各入力層の最初のノード (NODE_TYPE = 18) は、入力ノード (NODE_TYPE = 21) のコレクションのオーガナイザーの役割を果たします。 次の表では、入力ノードの内容について説明します。

各サブネットワーク (NODE_TYPE = 17) は、特定の予測可能属性に対する入力層の影響の分析を表します。 複数の予測可能な出力がある場合は、複数のサブネットワークがあります。 各サブネットワークの非表示層には、複数の隠しノード (NODE_TYPE = 22) が含まれます。これらの隠しノードには、その特定の隠しノードで終了する各遷移の、重みに関する詳細が含まれます。

出力層 (NODE_TYPE = 20) には出力ノード (NODE_TYPE = 23) が含まれ、各出力ノードには予測可能属性の個別の値が含まれます。 連続する数値データ型の予測可能属性には、出力ノードが 1 つだけ存在します。

注意

ロジスティック回帰アルゴリズムでは、1 つだけの予測可能な出力と多数の入力を持つことができる、ニューラル ネットワークの特別なケースを使用します。 ロジスティック回帰では、非表示層が使用されません。

入力とサブネットワークの構造を確認する場合は、 Microsoft 汎用コンテンツ ツリー ビューアーを使用するのが最も簡単な方法です。 任意のノードをクリックして展開すると、子ノードを表示できます。ノードに含まれている重みやその他の統計情報を表示することもできます。

データを処理したり、モデルと入力および出力との関係性を確認したりするには、 Microsoft ニューラル ネットワーク ビューアーを使用します。 このカスタム ビューアーを使用して、入力属性およびその値をフィルター処理したり、出力への影響をグラフィカルに表示したりできます。 このビューアーのツールヒントには、入力値と出力値の各ペアに関連付けられている確率とリフトが示されます。 詳細については、「 Microsoft ニューラル ネットワーク ビューアーを使用したモデルの参照」を参照してください。

ニューラル ネットワーク モデルのモデル コンテンツ

ここでは、マイニング モデル コンテンツの列のうち、ニューラル ネットワーク モデルに関連する列についてのみ詳細と例を紹介します。 ここでは説明していないスキーマ行セットの汎用列 (MODEL_CATALOGやMODEL_NAMEなど)、またはマイニング モデルの用語の説明については、「 マイニング モデル コンテンツ (Analysis Services - データ マイニング)」を参照してください。

MODEL_CATALOG
モデルが格納されているデータベースの名前。

MODEL_NAME
モデルの名前。

ATTRIBUTE_NAME
このノードに対応する属性の名前です。

Node コンテンツ
モデル ルート 空白
マージナル統計 空白
入力層 空白
入力ノード 入力属性名
hidden layer 空白
隠しノード 空白
出力層 空白
出力ノード 出力属性名

NODE_NAME
ノード名。 この列には NODE_UNIQUE_NAME と同じ値が格納されます。

NODE_UNIQUE_NAME
ノードの一意の名前。

モデルに関して名前と ID が表す構造情報の詳細については、「 ノードの名前と ID の使用」のセクションを参照してください。

NODE_TYPE
ニューラル ネットワーク モデルでは次のノードの種類が出力されます。

ノードの種類の ID 説明
1 モデル。
17 サブネットワークのオーガナイザー ノード。
18 入力層のオーガナイザー ノード。
19 非表示層のオーガナイザー ノード。
20 出力層のオーガナイザー ノード。
21 入力属性ノード。
22 非表示層ノード
23 出力属性ノード。
24 マージナル統計ノード。

NODE_CAPTION
ノードに関連付けられたラベルまたはキャプション。 ニューラル ネットワーク モデルでは常に空白です。

CHILDREN_CARDINALITY
ノードの子の推定数。

Node コンテンツ
モデル ルート 子ノードの数を示します。1 つ以上のネットワーク、1 つの必須マージナル ノード、および 1 つの必須入力層が含まれます。 たとえば、値が 5 の場合はサブネットワークが 3 つあります。
マージナル統計 常に 0 です。
入力層 モデルで使用された入力属性と値のペアの数を示します。
入力ノード 常に 0 です。
hidden layer モデルによって作成された隠しノードの数を示します。
隠しノード 常に 0 です。
出力層 出力値の数を示します。
出力ノード 常に 0 です。

PARENT_UNIQUE_NAME
ノードの親の一意な名前です。 ルート レベルのノードには NULL を返します。

モデルに関して名前と ID が表す構造情報の詳細については、「 ノードの名前と ID の使用」のセクションを参照してください。

NODE_DESCRIPTION
ノードについてのわかりやすい説明。

Node コンテンツ
モデル ルート 空白
マージナル統計 空白
入力層 空白
入力ノード 入力属性名
hidden layer 空白
隠しノード 隠しノードの一覧における隠しノードのシーケンスを示す整数。
出力層 空白
出力ノード 出力属性が連続属性の場合は、出力属性名が含まれます。

出力属性が不連続属性または分離された属性の場合は、出力属性名と値が含まれます。

NODE_RULE
ノードに埋め込まれたルールの XML による記述。

Node コンテンツ
モデル ルート 空白
マージナル統計 空白
入力層 空白
入力ノード NODE_DESCRIPTION 列と同じ情報が含まれている XML フラグメント。
hidden layer 空白
隠しノード 隠しノードの一覧における隠しノードのシーケンスを示す整数。
出力層 空白
出力ノード NODE_DESCRIPTION 列と同じ情報が含まれている XML フラグメント。

MARGINAL_RULE
ニューラル ネットワーク モデルでは常に空白です。

NODE_PROBABILITY
このノードに関連付けられている確率。 ニューラル ネットワーク モデルでは常に 0 です。

MARGINAL_PROBABILITY
親ノードからノードに到達する確率です。 ニューラル ネットワーク モデルでは常に 0 です。

NODE_DISTRIBUTION
ノードの統計情報を含む入れ子になったテーブル。 このテーブルのノードの種類ごとの内容の詳細については、「 NODE_DISTRIBUTION テーブル内の情報の解釈」のセクションを参照してください。

NODE_SUPPORT
ニューラル ネットワーク モデルでは常に 0 です。

注意

この種類のモデルの出力は確率論的でないため、サポート確率は常に 0 です。 このアルゴリズムで意味を持つのは重みだけです。したがって、確率、サポート、および分散は計算されません。

特定の値に対するトレーニング ケースでのサポートについて情報を得るには、マージナル統計ノードを参照してください。

MSOLAP_MODEL_COLUMN

Node コンテンツ
モデル ルート 空白
マージナル統計 空白
入力層 空白
入力ノード 入力属性名。
hidden layer 空白
隠しノード 空白
出力層 空白
出力ノード 入力属性名。

MSOLAP_NODE_SCORE
ニューラル ネットワーク モデルでは常に 0 です。

MSOLAP_NODE_SHORT_CAPTION
ニューラル ネットワーク モデルでは常に空白です。

注釈

ニューラル ネットワーク モデルをトレーニングする目的は、入力から中間点へ、および中間点からエンドポイントへの各遷移に関連付けられた重みを特定することです。 したがって、モデルの入力層は、主に、モデルの作成に使用された実際の値を格納するために存在します。 非表示層は、計算された重みを格納し、元の入力属性へのポインターを提供します。 出力層は、予測可能な値を格納し、非表示層内の中間点へのポインターも提供します。

ノードの名前と ID の使用

ニューラル ネットワーク モデルのノードの名前付けでは、非表示層と入力層との間、および出力層と非表示層との間の関連をわかりやすくするため、ノードの種類に関する追加情報が提供されます。 次の表に、各層のノードに割り当てられる ID の規則を示します。

ノードの種類 ノード ID の規則
モデル ルート (1) 00000000000000000.
マージナル統計ノード (24) 10000000000000000
入力層 (18) 30000000000000000
入力ノード (21) 60000000000000000 から開始
サブネットワーク (17) 20000000000000000
非表示層 (19) 40000000000000000
隠しノード (22) 70000000000000000 から開始
出力層 (20) 50000000000000000
出力ノード (23) 80000000000000000 から開始

特定の非表示層ノードに関連付けられた入力属性を確認するには、隠しノード (NODE_TYPE = 22) の NODE_DISTRIBUTION テーブルを表示します。 NODE_DISTRIBUTION テーブルの各行には、入力属性ノードの ID が含まれています。

同様に、出力属性に関連付けられた非表示層を確認するには、出力ノード (NODE_TYPE = 23) の NODE_DISTRIBUTION テーブルを表示します。 NODE_DISTRIBUTION テーブルの各行には、非表示層ノードの ID と、関連付けられた係数が含まれています。

NODE_DISTRIBUTION テーブル内の情報の解釈

ノードによっては、NODE_DISTRIBUTION テーブルが空の場合があります。 しかし、入力ノード、非表示層ノード、および出力ノードの NODE_DISTRIBUTION テーブルには、モデルに関する重要かつ興味深い情報が格納されます。 情報を解釈しやすいよう、NODE_DISTRIBUTION テーブルの各行の VALUETYPE 列には、ATTRIBUTE_VALUE 列の値が不連続値 (4)、分離された値 (5)、連続値 (3) のいずれであるかが表示されます。

入力ノード

入力層には、モデルで使用された属性の値ごとに 1 つのノードが含まれます。

不連続属性: 入力ノードには、属性名とその値だけが ATTRIBUTE_NAME 列と ATTRIBUTE_VALUE 列に格納されます。 たとえば、列が [勤務シフト] の場合、モデルで使用されたその列の値 (AM や PM など) ごとに個別のノードが作成されます。 各ノードの NODE_DISTRIBUTION テーブルには、属性の現在の値だけが表示されます。

分離された数値属性 : 入力ノードには、属性名と値 (値の範囲または特定の値) が格納されます。 [問題ごとの時間] の値については、すべての値が式 ('77.4 - 87.4' や ' < 64.0' など) で表されます。 各ノードの NODE_DISTRIBUTION テーブルには、属性の現在の値だけが表示されます。

連続属性 : 入力ノードには、属性の平均値が格納されます。 各ノードの NODE_DISTRIBUTION テーブルには、属性の現在の値だけが表示されます。

非表示層ノード

非表示層には可変数のノードが含まれます。 各ノードの NODE_DISTRIBUTION テーブルには、非表示層から入力層のノードへのマッピングが含まれます。 ATTRIBUTE_NAME 列には、入力層のノードに対応するノード ID が含まれます。 ATTRIBUTE_VALUE 列には、入力ノードと非表示層ノードの組み合わせに関連付けられた重みが含まれます。 テーブルの最終行には、非表示層内のその隠しノードの重みを表す係数が含まれます。

出力ノード

出力層には、モデルで使用された出力値ごとに 1 つの出力ノードが含まれます。 各ノードの NODE_DISTRIBUTION テーブルには、出力層から非表示層のノードへのマッピングが含まれます。 ATTRIBUTE_NAME 列には、非表示層のノードに対応するノード ID が含まれます。 ATTRIBUTE_VALUE 列には、出力ノードと非表示層ノードの組み合わせに関連付けられた重みが含まれます。

属性の型に応じて、NODE_DISTRIBUTION テーブルには次の追加情報が含まれます。

不連続属性: NODE_DISTRIBUTION テーブルの最後の 2 行には、ノード全体の係数と、属性の現在の値が含まれます。

分離された数値属性 : 属性の値が値の範囲である点を除くと、不連続属性と同じです。

連続属性: NODE_DISTRIBUTION テーブルの最後の 2 行には、属性の平均、ノード全体の係数、および係数の分散が含まれます。

参照

Microsoft ニューラル ネットワーク アルゴリズム
Microsoft Neural Network Algorithm Technical Reference
Neural Network Model Query Examples