SPSS Modeler ヒモトク

【リレー連載】わたしの推しノード –ストリームを変幻自在に整頓活用する超人「スーパーノード」の神業パラメータ処理

記事をシェアする:

   

 

日本アイ・ビー・エムの坂本です。  

 

近年、仏像がブームですが、仏教では、六神通(ろくじんずう、ろくじんつう)と呼ばれる仏・菩薩が持っている6種の神通力があります。その中の一つ、「神足通(じんそくつう)」は、自由自在に自分の思う場所に思う姿で行き来でき、思いどおりに外界のものを変えることのできる力です。(Wikipedia より)

今回、私の推し「スーパーノード」は、その能力を分析者にマウス数クリックで与えてくれる、文字通り、超人的なノードです。 ストリームを作成し使い続けていくと、業務の要求を反映していくうちに、処理が複雑になってきて、後からノードを追加して、プロセスが横に長〜くなってしまいます。いつの間にかカオス状態に陥り、どこで何をしていたのか分からなくなって、途方に暮れる、、、といった状況は私だけでないはず。今回、そんな散らかったストリームを、スーパーノードの神業で瞬時に整頓し、再利用性・汎用性の高いストリームに変幻自在に変えてしまいましょう。  

 

「スーパーノード」でストリームを簡潔化

入出力のデータ例

小売業で顧客単価を店舗で比較するストリームを例にとって見ていきます。 下記のように、入力は顧客コードをキーにした売上明細、出力は店舗ごとに集計した結果です。

 

 

抽出条件を追加

条件抽出ノードをストリーム途中に追加します。

 

 

データ期間のFromとToをセット

一定期間を限定して集計するためFrom日付とTo日付を条件抽出ノードで指定します。

(実際には、期間での条件抽出は、条件抽出ノード1つで 「’2005-07-16′ <= DATE and DATE <= ‘2005-10-01’」 と条件式を記述可能です。 ここでは、便宜上わかりやすいように、期間FromとToの条件抽出ノードを分けています)

 

2つのノードをカプセル化

ここからスーパーノードの出番です。今後、この From – To の2ノード部分はストリームでの配置上は固定しておきたい処理だとします。2ノードを選択した状態で右クリックします。「スーパーノードの作成」を選択します。

 

 

2つのノードがスーパーノードとしてカプセル化されました。(星型のアイコン)

これだけの操作で、ストリーム全体の処理が見やすく簡潔になりました。詳細な条件抽出部分はスーパーノードとして抽象化されています。  

 

スーパーノードにパラメータ設定

そうはいっても、From – to の条件は、都度、対象期間を変えて集計したいです。では実際に、条件設定を変えてみましょう。スーパーノードを選択すると「パラメータ」のタブで設計できるようになっています。

 

 

パラメータを入力した例

fromとtoの2つのパラメータを設定しました。

 

 

スーパーノードの内部でパラメータを対応

パラメータが実効するように、スーパーノードの内部をズームインしてそれぞれのノードに関数を指示します。“$P‐パラメータ名”に該当する文字列や整数が充当されます。

 

 

 

Modeler上のスーパーノードからパラメータを制御

以後、集計期間を変えたいときは、都度スーパーノードをダブルクリックして利用します。

 

 

たった、数クリックの操作で、ストリーム全体の見通しが良くなり、管理しやすくなりました。スーパーノードにすることで、ビジネス・ロジックが分離され、保守や運用のコストも減らせることでしょう。 スーパーノードは、スーパーノード自体をネストさせたり、ライブラリとしてエクスポートしたり、保存して他のストリームで再使用したり、、、といろいろな機能があります。

→※Knowledge Center 詳しくはこちら

自由自在にズームイン、ズームアウト可能なスーパーノードの便利さがお分かりいただけましたでしょうか。 後半は、「推しノード」からはちょっと外れてしまいますが、スーパーノードでパラメータ設定したストリームを、バッチ実行するのに便利な SPSS Collaboration & Deployment Services (CADS : キャズ) のご紹介です。  

 

SPSS CADS でストリームのバッチ処理

SPSS CADS とは?

Modeler で作成したストリームをバッチ、リアルタイムのいずれでも実行可能な運用サーバーです。分析資産を効率的に共有および再利用(コラボレーション)し、予測分析の結果を配信(デプロイメント)します。

 

 CADSサーバーへの接続

Modeler から CADSサーバーに接続し、対象のストリームを格納後、CADSの GUI クライアントのキャンバス画面でジョブを登録します。

 

  ストリームのジョブ登録

ジョブを作成します。

 

指定したスケジュールに合わせて、ジョブが実行されました。

 

以上が、シンプルなジョブ実行の流れです。

 

パラメータ付きでジョブ実行する場合

スーパーノードの記述で例にあったようなストリームをパラメータ付きで実行する場合、CADSでも同様にパラメータ付きでジョブ実行できます。

CADSに表示されたストリームにパラメータを設定します。

※値を ${JobVariable.ジョブ変数で設定した変数名}に変更します ※パラメータが表示されない場合、全般タブからラベルをLATESTにします

 

  ジョブを右クリックし、「オプションありでジョブを実行」します。

 

 

Modeler Clientで実行時と同様、パラメータの値を指定する画面が表示

値を指定してOKをクリックすると、ジョブが実行されます。

 

 

CADSには、上記のバッチ処理に加えて、Modelerストリームを REST API 化してリアルタイム・スコアリングが実行できます。オンラインでアプリケーションと連携して、予測結果をリアルタイムに返す、という実装例もいくつか出てきています。  

 

おわりに

DataOps の考えでは、ビジネス・ゴールに向かって、データ分析のサイクル・タイムをいかに短縮できるか、アジャイルな手法が取り入れられています。分析メンバーやチーム全体の生産性をいかに高められるか、という観点で、今回ご紹介しました、Modeler スーパーノード使用による分析資産の品質向上や、CADS による運用保守管理の容易性といったメリットが享受いただけるものと思います。 次回のリレー連載、推しノード#21は三井住友海上火災の木田様が「シミュレーションノード」について解説されます。

SPSS Modelerの詳細についてはこちら

わたしの推しノード(リレー連載)バックナンバーはこちら     

 

 

坂本 康輔

日本アイ・ビー・エム株式会社
クラウド&コグニティブ・ソフトウェア事業本部
Data and AI事業部
データサイエンス&AI テクニカルセールス

 

 

More SPSS Modeler ヒモトク stories

身近な疑問をヒモトク#05-コロナ禍の教育現場。データでリモート授業をサポートできないか?

Data Science and AI, SPSS Modeler ヒモトク, アナリティクス...

みなさん、こんにちは。AITの西村です。 今回はMicrosoft Teams for Educationのログを利用した教育現場への活用方法についてご紹介します。 学校ではオンライン授業も一般的になりました。対面に比べ ...続きを読む


ブログで学ぶSPSS_Modeler #05- LightGBMや地図表示!拡張ノードでPythonやRの機能を取り込む

Data Science and AI, SPSS Modeler ヒモトク, アナリティクス...

    みなさん、こんにちは。IBMの河田です。SPSSやWatson Studioのテクニカル・セールスをしています。   さて今回は、Modelerの中でPythonやRを使うことができ ...続きを読む


SPSS Modeler の歩き方 2022 春〜データ活用のためのガイドブック〜

Data Science and AI, SPSS Modeler ヒモトク, アナリティクス...

みなさんこんにちは。IBMの京田です。 SPSS Modelerの快適な旅をお楽しみいただくためのツアーガイドを担当します!   2022年の旅程表 本年も春と秋にユーザーイベントを実施します。加えて毎月目的別 ...続きを読む