IBM BobによるSPSS Modelerクラスター解釈の自動化
はじめに
IBM SPSS Modelerでクラスタリング分析を行った後、各クラスターの特徴を解釈する作業は時間がかかり、専門知識も必要です。本記事では、IBM Bobを活用して、クラスター解釈を自動化する方法を紹介します。
対象読者
- IBM SPSS Modelerを使用している方
- クラスタリング分析の結果解釈に時間をかけている方
- IBM Bobを使用している方
テスト環境
- SPSS Modeler: 19.0
- IBM Bob: 1.16.0
- OS: Windows 11
サンプルストリーム
在庫クラスタリング分析.str
サンプルデータ
分析データの概要
今回使用するデータは、商品在庫データです。以下のような情報が含まれています:
- 商品名
- 予測月次出荷数量
- 現在庫数量
- 海外仕入れ品フラグ
- 廃番フラグ
- 後継品ありフラグ
このデータをもとに、商品を特性に応じて分類していきます。
クラスタリング分析の実行
SPSS Modelerでクラスタモデルを(TwoStep Cluster)を作成した結果、商品は4つのクラスターに分類されました。
通常であれば、ここから各クラスターの特徴を手動で確認し、以下のような作業を行う必要があります:
- 各変数の平均値や分布を確認
- クラスター間の違いを比較
- ビジネス的な意味づけを行う
- クラスターに適切な名前を付ける
この作業をBobに自動で行わせてみます。
PMMLのエクスポート
Bobでクラスタリング結果を読み込めるようにするため、SPSS ModelerからPMML形式でモデルをエクスポートします。
- SPSS Modelerのメニューから「ファイル」→「PMMLをエクスポート」を選択
- 保存先を指定してエクスポート
これでBobが読み込める形式でモデルが保存されました。
Bobによるクラスター解釈
エクスポートしたPMMLファイルをBobに読み込ませ、クラスター解釈を依頼します。
@/TwoStep.xml の各クラスターの解釈をして
解釈結果
Bobは各クラスターを解釈してくれました。以下はクラスター4の解釈の例です:
解釈の検証
SPSS Modelerで実際のデータを確認すると、Bobの解釈は正確であることが確認できました。
例えばクラスター4については:
- 出荷が極端に少ない
- 後継品が存在する
- かなりの在庫数量を保有している
という特徴がよく捉えられています。SPSS Modelerのわかりやすいグラフで確認することでハルシネーションではないことを確認できます。
ビジネス的な推奨アクション
Bobはさらに、各クラスターに対するビジネス的な推奨アクションも提示してくれました。
クラスター名の付与
分析を続けるため、Bobに各クラスターに名前を付けてもらい、SPSS ModelerのCLEM式を作成してもらいます。
プロンプト例
各クラスターに名前をつけて、フィールド作成ノードのCLEM式を作成し、構文確認も行ってください。
生成されたCLEM式
Bobは以下のようなCLEM式を生成してくれました:
if TSC_Cluster = 1 then "海外仕入れ中心の中位在庫"
elseif TSC_Cluster = 2 then "季節商材"
elseif TSC_Cluster = 3 then "高回転商品群"
elseif TSC_Cluster = 4 then "後継品ありの滞留在庫"
else "未分類"
endif
SPSS Modelerでの適用
- フィールド作成ノードを追加
- 新しいフィールド名を「クラスター名」として設定
- 生成されたCLEM式をコピー&ペースト
- 実行して結果を確認
これにより、各商品にわかりやすいクラスター名が付与されました。
まとめ
IBM Bobを活用することで、以下のような作業を自動化できました:
- クラスタリング結果の特徴抽出
- 各クラスターの解釈とネーミング
- ビジネス的な推奨アクションの提案
- SPSS ModelerのCLEM式の自動生成
これにより、データサイエンティストはより高度な分析や意思決定に時間を使えるようになります。
参考リンク
- SPSS Modeler ノードリファレンス 5-15 TwoStep(クラスター)
- IBM Documentation検索MCPサーバー #IBMBob - Qiita
クラスタの解釈やCLEM式の作成ではIBMのDocumentを参照させると精度が高まります。








