近年、AIや機械学習がブームとなり、キーワードだけが先走りしている傾向にあります。結果、「AI・機械学習を活用する」こと自体が目的化し、ツールや環境を導入したものの、ビジネス価値創出に至らないケースも多いようです。 その最大の要因は、肝となる「アナリティクス・ライフサイクル」の欠如にあります。 まず、業務課題を明確化した上で、その課題を解決するためにはデータ分析が必要であり、分析には元となるデータが必要になります。必要なデータを準備し、その中身を探索し、その結果に基づいて予測モデルを開発し、作成されたモデルを業務に実装する、このサイクルを素早く回し続ける、これが、企業が抱える業務課題を解決し、ビジネス価値(収益の拡大、コストの削減、リスクの低減、など)を創出するための鍵なのです。 アナリティクス・ライフサイクルを構成する3つの要素: アナリティクス・ライフサイクルを素早く回すためには、上記3つの要素がシームレスに連携する必要があります。しかし、多くの企業では、従来から、複数の異なるベンダーの異なる商用ソフトウエアや環境、あるいはオープンソースソフトウエアなどを継ぎ接ぎして分析環境を構築してきたため、このサイクルを回すためには多大な時間を擁してしまい、変化への素早い対応は困難な状況にありました。 この課題に対して、AIプラットフォーム SAS® Viya®では、アナリティクス・ライフサイクルに必要な機能要素を網羅した上で、それぞれがシームレスに連携し、高速に回し続けることが可能となっています。 そして、SAS Viyaには、分析者のスキルレベルに応じて、プログラミングインターフェースとグラフィカルインターフェースの両方が備わっています。 データサイエンティストであれば、データの準備から探索、そしてモデル生成までをお好みの言語(SAS, Python, R, Java, Lua)を使用して実施することができます。 一方で、コーディングスキルを持たないビジネスユーザーであれば、統合グラフィカルユーザーインターフェース上でアナリティクス・ライフサイクルをシームレスかつ高速に回し続けることが可能となっています。 企業が、その企業の競合企業よりも早く、正確に、アナリティクス・ライフサイクルを回すことによって、以下が実現されます。: より多くの反応率の高いマーケティングキャンペーンをより早く実施し、より多くの新規顧客を獲得し、既存顧客の離反を防止 より早く正確に、より多くの製造設備の異常予兆を検出し、設備のダウンタイムを最小化し、生産量を最大化 より多くの種類の不正をより早く正確に検知し、不正により齎されるリスクや損失を低減し、企業の信頼度を向上 企業を取り巻く環境の変化に、より素早く対応 …など Data:データの準備 異なる分析要件ごとに、分析者自身で、分析に必要なデータは都度準備する必要があります。SAS Viyaでは、分析者自身で分析に必要なデータをセルフサービス型で準備することができるようになっています。 マウスのポイント&クリック操作だけで、データのプロファイリングからクレンジング、加工・変換・結合などを自由自在に行うことができ、分析プロセス全体の中で7、8割の工数を占めると言われるデータ準備工数や時間を大幅に削減することが可能となります。 Discovery:データの探索とモデル生成 次に、準備したデータの中身を探索します。SAS Viyaでは、コーディングスキルを持たないビジネスユーザーでもマウスの簡単操作だけで、データの探索や分析が可能になっています。単一の画面内で、過去の見える化から高度な機械学習までもが可能で、できあがった画面をレポートやダッシュボードとして即座に全社に公開し、共有することもできます。 データサイエンティストであれば、モデル生成の手前のビジュアルなデータ探索手段として活用することができます。 データ探索の結果に基づき、予測モデルを構築します。 SAS Viyaでは、ビジュアルなUIからマウスのドラッグ&ドロップ操作で、機械学習、時系列予測、テキスト解析の各種モデル生成プロセスをグラフィカルなフロー図(パイプライン)として描き、実行することが可能になっています。 このモデル生成パイプラインは、ドラッグ操作で一から作り上げることもできますし、SASの長年のベストプラクティスに基づき、予め用意されているパイプラインのテンプレートを使用して、精度の高い予測モデルを自動生成することも可能です。 Deployment:モデルの業務実装 生成されたモデルは統合的に管理した上で、業務に実装することができます。 モデル管理画面では、モデルにテストデータを当てはめてスコアリングテストの実施や、モデルのデプロイ(業務実装)、業務に実装後のモデル精度のモニタリング、再学習を実行し、モデル精度を改善、そしてバージョン管理など、モデルを統合管理することができます。 管理されたモデルは、異なる業務要件ごとに異なる環境へデプロイ(業務実装)することができます。 REST API:既存のアプリケーションからREST APIを通じて、SAS Viyaサーバー上にあるモデルにデータを当てはめてスコアリング(予測処理)を行い、結果を受け取ることができます。 インデータベース:モデルをデータベース内にデプロイし、データベース内で直接スコアリングを実施することができます。これによって、スコアリング対象の大量のデータを転送する必要が無くなり、処理の効率化や意思決定の迅速化も図れます。 インストリーム:SAS Viyaには、オンライン機械学習・リアルタイム処理向けにストリーミングのエンジンも実装されています。SAS Viyaのリアルタイムプロセスにモデルをデプロイすることで、リアルタイム・スコアリングも実現されます。 以上のように、企業が業務課題を解決し、ビジネス価値を創出するためには、「アナリティクス・ライフサイクル」が肝であり、このサイクルをシームレスかつ素早く回し続けることが、企業の変化対応力、競争力強化に直結するということです。 従来からSASを活用し、ビジネス価値を出している企業はすべてこのサイクルを回し続けています。そして、AIプラットフォームSAS Viyaでは、これを強力に支援することができるということです。
Tag: SAS Viya
This post rounds out the year and my series of articles on SAS REST APIs. You can read all of my posts on this topic here. The first two articles in the series: Using SAS Viya REST APIs to access images from SAS Visual Analytics and Using SAS Cloud Analytics
Sie lebt in der Cloud und ist sehr genügsam. Als Allesfresser nimmt sie jegliche Art von Daten dankbar entgegen. Seien das nun strukturierte oder unstrukturierte Daten in allen Formen und Facetten … Sie ist einerseits mit sehr wenig zufrieden und holt das Bestmögliche aus wenigen Daten heraus, kann allerdings, wenn
Find out about this new set of tools designed to be used in conjunction with the sas-admin command line interfaces.
PythonからSAS Viyaの機能を利用するための基本パッケージであるSWATと、よりハイレベルなPython向けAPIパッケージであるDLPyを使用して、Jupyter NotebookからPythonでSAS Viyaのディープラーニング機能を使用した時系列予測を試してみました。 大まかな処理の流れは以下の通りです。 1.必要なパッケージ(ライブラリ)のインポート 2.Sin波データの生成 3.セッションの作成 4.RNN向け時系列データセットの作成 5.モデル構造の定義 6.モデル生成(学習) 7.予測 1.必要なパッケージ(ライブラリ)のインポート swatやdlpyなど、必要なパッケージをインポートします。 import numpy as np import pandas as pd import matplotlib.pyplot as plt import swat.cas.datamsghandlers as dmh from swat import * import dlpy from dlpy import Sequential from dlpy.layers import * from dlpy.model import Optimizer, AdamSolver, Sequence
PythonからSAS Viyaの機能を利用するための基本パッケージであるSWATと、よりハイレベルなPython向けAPIパッケージであるDLPyを使用して、Jupyter NotebookからPythonでSAS Viyaの機能を使用して一般物体検出(Object Detection)を試してみました。 今回は、弊社で用意した数枚の画像データを使用して、処理の流れを確認するだけなので、精度に関しては度外視です。 大まかな処理の流れは以下の通りです。 1.必要なパッケージ(ライブラリ)のインポートとセッションの作成 2.一般物体検出向け学習用データの作成 3.モデル構造の定義 4.モデル生成(学習) 5.物体検出(スコアリング) 1.必要なパッケージ(ライブラリ)のインポートとセッションの作成 swatやdlpyなど、必要なパッケージをインポートします。 from swat import * import sys sys.path.append(dlpy_path) from dlpy.model import * from dlpy.layers import * from dlpy.applications import * from dlpy.utils import * from dlpy.images import ImageTable from dlpy.splitting import two_way_split from dlpy.blocks import *
Disclaimer: this article does not cover or promote any political views. It’s all about data and REST APIs. I am relieved, thankful, elated, glad, thrilled, joyful (I could go on with more synonyms from my thesaurus.com search for 'happy') November 6, 2018 has come and gone. Election day is over.
Prior to distributed DATA Step, DATA Step programmers never had to think about achieving repeatable results because DATA Step ran single-threaded and the source SAS7BDAT dataset was stored on disk. But if you need to obtain repeatable results in DATA Step code that runs distributed in CAS, this post provides a workaround that you'll want to keep handy.
This blog post outlines how to create your own CAS functions using the CAS Language. It also includes a partial list of both CASL built-in and common functions for reference.
Migration, version road maps and configurations were the themes of several questions that came up in a recent webinar about combining SAS Grid Manager and SAS Viya. This blog post gives the answers.
You can communicate with various clients (SAS, Python, Lua, Java, and REST) in the same place using SAS® Cloud Base Analytics Services (CAS) in SAS Viya. But before you can do any analysis in CAS you need some data to work with, and a way to get to it. Check out this dynamic data selection tip using SAS Viya and Python.
In their new book, SAS Viya: the R Perspective, Kevin Smith and Xiangxiang Meng provide an overview of using R with the SAS Viya platform. Read on to see how R programmers can use CAS.
SASでは、従来からオープン・AIプラットフォームであるSAS Viyaの機能をPythonから効率的に活用いただくためのハイレベルなPython向けAPIパッケージであるDLPyを提供してきました。 従来のDLPyは、Viya3.3以降のディープラーニング(CNN)と画像処理(image action set)のために作成された、Python API向けハイレベルパッケージです。 DLPyではKerasに似たAPIを提供し、より簡潔なコーディングで高度な画像処理やCNNモデリングが可能でした。 そして、この度、このDLPyが大幅に機能拡張されました。 最新版DLPy1.0では、以下の機能が拡張されています。 ■ 従来からの画像データに加え、テキスト、オーディオ、そして時系列データを解析可能 ■ 新たなAPIの提供: ・ RNN に基づくタスク: テキスト分類、テキスト生成、そして 系列ラベリング(sequence labeling) ・ 一般物体検出(Object Detection) ・ 時系列処理とモデリング ・ オーディオファイルの処理と音声認識モデル生成 ■ 事前定義ネットワーク(DenseNet, DarkNet, Inception, and Yolo)の追加 ■ データビジュアライゼーションとメタデータハンドリングの拡張 今回はこれらの拡張機能の中から「一般物体検出(Object Detection)」機能を覗いてみましょう。 SAS Viyaでは従来から画像分類(資料画像1.の左から2番目:Classification)は可能でした。例えば、画像に映っている物体が「猫」なのか「犬」なのかを認識・分類するものです。 これに加えて、DLPy1.0では、一般物体検出(資料画像1.の左から3番目:Object Detection)が可能になりました。 資料画像1. (引用:Fei-Fei Li & Justin Johnson & Serena Yeung’s Lecture
This article is the first in a series of three publications covering REST APIs and their use in, and with SAS. Today, I want to cover a basic example using SAS Viya REST APIs to download an image from a report in SAS Visual Analytics.
How do you deploy your model so that business processes can make use of it? This post explores how SAS Viya applications can directly add models to a model repository, and specifically focuses on how to deploy them with SAS Model Manager to Hadoop.
In addition to the many CAS actions supplied by SAS, as of SAS® Viya™ 3.4, you can create your own actions using CASL. Learn how in this post.
With SAS Data Preparation and SAS Decision Manager, you can perform out-of-the-box column and row transformations to increase your data quality and build the foundations for data-driven innovation. This blog will discuss how you can leverage SAS Decision Manager to enrich data when preparing it through SAS Data Preparation.
近年、クラウドファーストを唱える企業が増加し、データ分析のために、クラウド上に展開されている分析サービスを活用したり、クラウド上に独自に分析アプリケーションを構築するケースも増えています。 しかし、クラウド上にある分析サービスやアプリケーションで分析する対象のデータは、オンプレミス上に蓄積されているケースが大半であり、クラウドからこれらのデータにアクセスできるようにするための作業や環境設定は面倒かつ非効率で、膨大なデータをクラウドとやり取りするなどの運用コストも大きく、かつセキュリティのリスク回避も考慮しなければなりません。 こうした課題を解決するために、SAS ViyaではSAS Cloud Data Exchange (CDE)を提供しています。 SAS Cloud Data Exchange (CDE) は、プライベート/パプリックのクラウド上にあるアプリケーション(=SAS Viya)からファイヤーウォールの後ろにある、顧客のオンプレミス上にあるデータに安全かつ確実にアクセスし、大量のデータをクラウドへ高速に転送することを可能とするデータ接続機能です。 CDEは、SAS Viyaのセルフサービス・データ準備向け製品であるSAS Data Preparationに含まれる機能です。 CDEを使用すれば、クラウド上にあるSAS Viyaからオンプレミス上にある様々なデータソース(Oracle, Teradata, Hadoop etc.)へ最小限の手順で容易かつセキュアにアクセスすることが可能になります。 サポート対象データソース: ・DB2, ODBC, Apache Hive, Oracle, Redshift, SQL Server, Postgres, SAP HANA, Teradata, SAS Data Sets CDEでは、最小限の一つのポート(Https port)を使用し、オンプレミス上にあるデータソースにアクセスするための資格情報(ユーザーID /パスワード)も保護された領域に格納し、使用するため、安全性が高められています。 また、クラウド上のSAS Viyaが複数のワーカーノードで分散構成されている場合には、オンプレミス上のデータを並列で高速にSAS Viya環境へロードすることが可能です。 利用手順概要は以下の通りです。 オンプレミス側にSAS Data Agent
Do you work with custom polygon maps in SAS Visual Analytics? Read about a few "gotchas" to help you troubleshoot some common issues you may encounter.
AIプラットフォームSAS Viyaでは、「AI実用化」や「AI民主化」を促進するために、従来から自動予測モデル生成や、機械学習やディープラーニングの判断根拠情報の提供などを可能としていましたが、SAS Visual Analytics on SAS Viyaの最新版8.3では、新たに「自動分析」機能が実装されました。 「自動分析」機能を使用すると、予測(ターゲット)に影響を与えている変数の特定や、変数ごとにどのような条件の組み合わせがターゲットに依存しているのかを「文章(条件文)」で表現して教えてくれます。 この例で使用するデータ「HMEQJ」は、ローンの審査を題材にしたもので、顧客ごとに1行の横持ちのデータです。このデータ内にある「延滞フラグ」が予測対象の項目(ターゲット変数)で、0(延滞なし)、1(延滞あり)の値が含まれています。 データリスト内の「延滞フラグ」を右クリックし、「分析」>「現在のページで分析」を選ぶだけで、「延滞フラグ」をターゲット変数に、その他の変数を説明変数とした分析が自動的に行われ、 以下のような結果が表示されます。 分析結果画面内説明: ① ドロップダウンリストで、予測対象値(0:延滞なし、1:延滞あり)の切り替えが可能です。この例では、「1:延滞あり」を選択し、「延滞する」顧客に関して分析しています。 ② 全体サマリーとして、すべての顧客の内、延滞実績のある顧客は19.95%であり、「延滞する」ことに関して影響度の高い変数が順に表記されています。 ③ 「延滞する」ことに関して影響を与えている変数の度合い(スコア)を視覚的に確認することができます。 ④ 「延滞する」可能性が最も高くなるグループ(条件の組み合わせ)が文章で示されています。この例では、③で「資産に対する負債の割合」が選択され、これに応じて文章内の該当箇所がハイライトしています。 ⑤ この例では、③で「資産に対する負債の割合」が選択され、これに応じて「0:延滞なし、1:延滞あり」別の顧客の分布状況がヒストグラムで表示されています。選択された変数が数値属性の場合は、ヒストグラムで、カテゴリ属性の場合は積み上げ棒グラフで表示されます。 分析に使用する説明変数(要因)に関しては、右側の「データ役割」画面内で選択することができます。 以上のように、分析スキルレベルの高くないビジネスユーザーでも、簡単かつ容易に、そして分かり易くデータから有効な知見を得ることができます。 ※AIプラットフォーム「SAS Viya」を分かり易く学べる「特設サイト」へGO!
La disponibilidad de los datos y la capacidad de almacenar grandes volúmenes de información ha marcado un antes y un después para las compañías de todas las industrias, pues éstas han entendido que poseer datos no es suficiente, si no se cuenta con una estrategia analítica clara para maximizar su
This post goes through the steps to build complex models in SAS Model Studio and publish and run them to Hadoop in SAS Viya.
Un gran número de organizaciones en el mundo están preparándose para emprender el viaje hacia la Inteligencia Artificial (IA). El camino puede ser largo y sinuoso, particularmente si se carece de una estrategia bien definida y de las herramientas que allanen la ruta y aceleren la llegada a tan deseado
Learn how to create measures with different levels of aggregation through selective filtering in SAS Visual Analytics. This post illustrates selective filtering through a "Customer Penetration" example.
How can SAS Grid Manager and SAS Viya work together to process massive volumes of data? Get answers to common questions about how the two interact in this blog post.
ビジュアルパイプラインで予測モデル生成(テンプレート使用編)では、SAS ViyaのModel Studioを使用し、標準で実装されているパイプラインのテンプレートを使用して、予測モデルを自動生成する手順を紹介しました。 今回は、標準実装のテンプレートに含まれている、「自動特徴量エンジニアリングテンプレート」を紹介します。 「特徴」=入力=変数(独立変数、説明変数)であり、 特徴量エンジニアリングとは、予測モデルの精度を高めるために、学習用の生データに基づき、特徴を変換したり、抽出したり、選択したり、新たな特徴を作り出す行為です。 以下は、特徴量エンジニアリングの例です。 ・郵便番号などの高カーディナリティ名義変数のエンコーディング(数値化) ・間隔尺度の変数の正規化、ビニング、ログ変換 ・欠損パターンに基づく変換 ・オートエンコーダー、主成分分析(PCA)、t-SNE、特異値分解(SVD)などの次元削減 ・季節的な傾向を把握するために、日付変数を別々の変数に分解して曜日と月と年の新しい変数を作成 より良い「特徴」を作り出し、選択することで、予測モデルの精度が向上するだけでなく、モデルを単純化し、モデル解釈可能性を高めるのにも役立ちます。 しかし、従来、予測モデリングのプロセスにおいて、データサイエンティストは、その多くの時間を特徴量エンジニアリングに費やしてきました。しかも、特徴量エンジニアリングの良し悪しは、データサイエンティストのスキルに大きく依存してしまいます。 こうした課題に対処するために、SAS Viyaでは、自動特徴量エンジニアリングテンプレートを提供しています。このテンプレートを使用することで、特別なスキルを必要とせず、特徴量エンジニアリングにかける時間を短縮し、より精度の高い予測モデル生成が可能になります。 以下が、SAS ViyaのModel Studioに実装されている「自動特徴量エンジニアリングテンプレート」です。 このテンプレートは、大きく3つのステップで構成されています。 高カーディナリティ変数に対するエンコーディング(数値化) 最良変換、PCA / SVD、オートエンコーダーを使用して新たな特徴を作成 特徴エンジニアリング未/済みデータに基づく予測モデルの精度比較 ステップ1.高カーディナリティ変数に対するエンコーディング(数値化) このステップの最初のノードは、「SASコード高カーディナリティ」という名のSASコードノードです。 SASコードノードを使用することで、SASプログラムをパイプラインに組み込むことができます。 このノードを選択し、右側画面内でコードエディタ:「開く」をクリックすると、その内容を確認できます。 このSASコードノードでは、最初に、20〜1,000レベルのカーディナリティの高い変数(固有値が多すぎる名義変数)を識別します。minlevelsとmaxlevelsの値を更新することで、この範囲を簡単に変更することもできます。次に、数値変換(TRANSFORM = LEVELENCODE)を指定し、これらの変数に対してのみレベル(水準)エンコーディングを行います。実際に変換を行うためには、「データマイニングの前処理」にある「変換」ノードを実行する必要があるため、「変換」ノードが接続されています。 レベルエンコーディングでは、名義を数値に変換します。これは、カーディナリティの高い変数を扱う場合に特に便利です。これらの変数は、ほとんどの機械学習アルゴリズムにおいてコンピューティングリソースの負荷をあげてしまうことが多いからです。最初に名義変数のレベルをアルファベット順に並べ替え、各レベルに昇順に数字(1から始まる)を割り当てます。 ステップ2.最良変換、PCA / SVD、オートエンコーダーを使用して新たな特徴を作成 ステップ2では、以下の3つの異なる自動特徴量エンジニアリング手法が適用されます。 変換-最良(Best):このノードは、「データマイニングの前処理」にある「変換」ノードを使用して、すべての間隔変数に対して「最良(Best)」の変換を行います。この方法では、各間隔変数に対して、ランク付け基準(ターゲットとの相関など)に基づいて、単一変数の変換(逆変換、標準化、センタリング、ログ変換など)を比較し、最も高いランク付けを持つ変換を選択します。 特徴抽出- PCA:このノードは、「データマイニングの前処理」にある「特徴抽出」ノードを使用して、間隔入力変数に対する自動特徴抽出手法として「自動」を指定しています。「自動」では、間隔入力変数の総数が500以下の場合は、主成分分析(PCA)が適用され、それ以外の場合は、特異値分解(SVD)が適用されます。 特徴抽出-自動エンコーダ:このノードでは、オートエンコーダを用いて特徴抽出を行います。この手法では、特徴抽出にすべての入力変数(間隔と名義)を使用します。オートエンコーダーは、入力データを再構成するために使用できる特徴のセットを学習することを目的とした教師なし学習技術です。手短に言えば、ニューラルネットワークは、ターゲット(出力)ニューロンを入力ニューロンと等しく設定することによって訓練されるものです。 このノードでは、中間隠れ層が10に設定されているので、10個の新しい特徴が作成されます。 ステップ3.特徴エンジニアリング未/済みデータに基づく予測モデルの精度比較 最後のステップでは、勾配ブースティングを用いた5つの異なる予測モデルが生成されます。 ・高カーディナリティー変数のレベルエンコーディング+特徴抽出(PCA)を施したデータに基づくモデル ・高カーディナリティー変数のレベルエンコーディング+特徴抽出(オートエンコーダー)を施したデータに基づくモデル ・高カーディナリティー変数のレベルエンコーディング+変換-最良を施したデータに基づくモデル ・高カーディナリティー変数のレベルエンコーディングを施したデータに基づくモデル ・元のデータ(特徴量エンジアリングを施していない)に基づくモデル 5つのモデルを生成後、パフォーマンスを比較します。勾配ブースティングは、非常に効果的な教師あり学習アルゴリズムであり、予測精度の面で他のアルゴリズムより優れていることが多いため、使用しています。
ビジュアルパイプラインで予測モデル生成(基本編)では、SAS ViyaのModel Studioを使用し、パイプラインを一から作成し、予測モデルを生成する手順を紹介しました。 今回は、前回からの続きとして、予め用意されているパイプラインのテンプレートを使用した、モデル生成手順を紹介します。 パイプライン・テンプレートの選択と実行 実行結果(モデル精度)の確認 1.パイプライン・テンプレートの選択と実行 パイプラインの追加アイコンをクリックすると、 「パイプラインの新規作成」ダイアログが表示されます。 パイプラインの名前を入力し、「テンプレート」から「テンプレートの参照…」を選択すると、 標準で実装されているテンプレートのリストが表示されます。 この中から使用したいテンプレートを選択し、「OK」をクリックします。今回は、「分類尺度のターゲット変数の高度なテンプレート」を使用します。 さらに、「保存」をクリックすると、 選択したパイプラインの内容が表示されます。 このテンプレートでは、以下の7つのモデルを生成し、結果を比較することができます。 ・データに対する前処理(欠損値補完と変数選択)後に、ロジスティック回帰(ステップワイズ法)とニューラルネットワークでモデル生成 ・データに対する前処理(欠損値補完)後に、ロジスティック回帰(増加法)でモデル生成 ・データに対する前処理無しで、勾配ブースティング、フォレスト、ディシジョンツリーでモデル生成 ・上記6つのモデルのアンサンブルモデルの生成 ※テンプレートに使用されている機能ノードごとの詳細なオプション内容は右側画面内で確認でき、必要に応じて変更可能です。また、パイプライン内への機能ノードの追加・削除・変更などカスタマイズも可能です。 ※一から作成したパイプラインや、既存テンプレートをカスタマイズしたパイプラインを、その企業独自のテンプレートとして共有し、活用することができます。 ※一つのプロジェクト内に、複数のパイプラインを作成し、結果を比較することができます。 パイプラインの実行アイコンをクリックし、実行します。実行中の機能ノードは時計アイコンがクルクル回転し、正常に完了すると緑のチェックマークが表示されます。 2.実行結果(モデル精度)の確認 パイプラインの実行が完了したら、ビジュアルパイプラインで予測モデル生成(基本編)と同様に、「モデルの比較」ノードのスノーマンアイコンをクリックし、メニューから「結果」を選択し、このパイプラインの実行結果を確認することができます。 また、一つのプロジェクト内で、複数のパイプラインを作成している場合には、パイプライン間でモデル精度を比較し、プロジェクト内でのチャンピオンモデルを確認することができます。 画面上部の「パイプラインの比較」をクリックします。 パイプライン2の勾配ブースティングのモデルの精度が最も高い、チャンピオンモデルであることが示されています。 以上が、パイプラインのテンプレートを使用して、予測モデルを生成する際の手順です。 コーディングスキルを持たないビジネスユーザーでも、まず、学習用のデータを選択し、予測対象の項目を選択し、テンプレートを選んで実行するだけで、精度の高いの予測モデルを自動生成することができるということです。 ※ビジュアルパイプラインのテンプレートを使用したモデル生成は、SAS Viya特設サイトにある動画でもご覧いただけます。
AIプラットフォームであるSAS Viyaでは、SAS言語のみならず、PythonやR、Java、Luaなどの汎用プログラミング言語からViyaのAI&アナリティクスの機能を使用し、予測モデルを生成することができるようになっています。しかし、昨今、「AI民主化」の流れに沿って、予測モデル生成を必要としているのはデータサイエンティスト(以降:DS)だけではなく、業務部門のビジネスアナリストや一般のビジネスユーザーも必要としています。こうしたコーディングスキルを持たないビジネスユーザー向けに、SAS Viyaでは、GUI上でマウスの簡単操作だけで予測モデル生成を可能としています。 もちろん、DSの中にも、コーディングせずに、もっと簡単に精度の高い予測モデルを生成できる手段があれば活用したいと感じている人達もいます。 SAS Viyaでは、Model Studioを使用し、機械学習のモデル、時系列予測のモデル、テキストマイニングのモデルをGUIベースの簡単マウス操作で作成することができます。モデル生成プロセスをグラフィカルなフロー図として描き、実行するだけです。このフロー図のことを「パイプライン」と呼んでいます。 Model Studioで予測モデルを生成するには、大きく2通りの方法があります。 1つは、マウスの簡単ドラッグ操作でパイプラインを一から作成する方法と、もう一つは、予め用意されているパイプラインのテンプレートを使用する方法です。 まずは、パイプラインを一から作成する際の基本的な手順を紹介します。 プロジェクトの新規作成と学習用のデータソース選択 パイプラインの作成と実行 実行結果(モデル精度)の確認 1.プロジェクトの新規作成と学習用のデータソース選択 SAS Viyaの統合GUIのホームページのメニューから「モデルの作成」を選択すると、 Model Studioの画面が表示されます。 「プロジェクトの新規作成」をクリックします。 「プロジェクトの新規作成」画面内で、プロジェクトの名前を入力し、モデルの種類(データマイニングと機械学習 / テキスト分析 / 予測)を選択し、学習用のデータソースを選択します。今回は、「データマイニングと機械学習」を選び、ローンの審査モデルを作成します。HMEQJというデータソースは、顧客ごとに1行の横持ち形式のデータです。 「保存」をクリックすると、ローン審査モデルプロジェクトが作成され、選択したデータソースの変数リストが表示されます。 予測対象の項目(ターゲット変数)を指定します。変数名:BAD(ラベル名:延滞フラグ)を選択し、右画面内で、役割に「ターゲット」を選択します。 延滞フラグには、過去に延滞の実績があればフラグに“1”が、無ければ“0”が設定されています。 2.パイプラインの作成と実行 予測対象の項目を指定後、画面上部にある「パイプライン」をクリックします。 パイプラインには「データ」ノードのみが表示されています。左端の機能ノードアイコンをクリックすると、 パイプラインに追加可能な機能ノードのリストが表示されます。 今回は、欠損値補完を行った上で、勾配ブースティングとランダムフォレストでモデルを生成してみましょう。まず、データに対する前処理として欠損値補完を行います。 「データマイニングの前処理」内にある「補完」を「データ」ノード上にドラッグすると、 「データ」ノードの下に「補完」ノードが追加されます。 同様の手順で、「教師あり学習」内にある「勾配ブースティング」を「補完」ノード上へドラッグすると、「補完」ノードの下に「勾配ブースティング」ノードが追加されます。(同時に「モデルの比較」ノードが自動的に追加されます) このようにドラッグ操作でノードを追加する以外に、パイプライン上のメニューからノードを追加することもできます。 「補完」ノードの右端にある、3つのドットが縦に並んでいる(スノーマン)アイコンをクリックし、「下に追加」>「教師あり学習」>「フォレスト」の順に選択すると、 「補完」ノードの下に、「フォレスト」ノードが追加されます。 機能ノードごとの詳細なオプションの設定は、右側画面内で行います。 パイプラインが完成したら、パイプラインの実行アイコンをクリックし、実行します。実行中の機能ノードは時計アイコンがクルクル回転し、正常に完了すると緑のチェックマークが表示されます。 3.実行結果(モデル精度)の確認 パイプラインの実行が完了したら、「モデルの比較」ノードのスノーマンアイコンをクリックし、メニュー から「結果」を選択します。 モデルの比較結果が表示されます。今回は勾配ブースティングのモデルの精度の方が高い=チャンピオンであると判定されています。 「アセスメント」タブ内では、リフトやROCの情報などを確認することができます。 以上が、ビジュアルパイプラインで予測モデルを一から生成する際の基本的な手順です。 ※ビジュアルパイプラインによるモデル生成(基本)は、SAS Viya特設サイトの「機械学習」トピック内にある動画でもご覧いただけます。
In SAS Viya 3.4, promotion support has been added for many additional SAS 9.4 resources, making it easier to make the leap to Viya. In this blog, SAS' Gerry Nelson reviews this new functionality.
Data in the cloud makes it easily accessible, and can help businesses run more smoothly. SAS Viya runs its calculations on Cloud Analytics Service (CAS). David Shannon of Amadeus Software spoke at SAS Global Forum 2018 on his paper, Come On, Baby, Light my SAS Viya: Programming for CAS.