Japanese

Data for Good | SAS Events | Students & Educators
0
第三回Data for Good勉強会 活動レポート

SAS Japanでは昨年末より”Data for Good”を目指す学生コミュニティ「SAS Japan Student Data for Good community」を運営しています。このコミュニティは、Data For Goodを題材にデータサイエンスの一連の流れを体験する場として設立されました。今回紹介する勉強会も、その活動の一環です。詳しくは「Data for Goodを通じて"本物の"データサイエンティストになろう!」の記事をご覧ください。 三回目の勉強会ではヒートアイランド現象をテーマに、課題設定の部分を学びました。   ヒートアイランド対策、”どこ”から? ヒートアイランド現象とは、都市部の気温が周りに比べて高くなる現象です。その要因には、都市化による土地利用の変化や人間活動で排出される熱などがあります。対策事例として人口排熱削減のために次世代自動車の普及をしたり、保水性舗装の普及や屋上緑化を推進して地表面被服の改善を目指したりというものが行われています。 勉強会で取り上げたヒートアイランド対策事例の一つに、リッチモンドのヒートマッピングがあります。ヒートアイランド現象は都市部と郊外を比較して都市部の方が暑いという考え方が一般的です。しかし、植生域より人口被覆域の方が地表面からの大気加熱を大きくすることや、明るい色の舗装より暗い色の舗装の方が熱を吸収して暑くなることから、都市部の中でも暑さに対する強度は場所によって異なります。そこで、リッチモンドでは「都市の中でも特に暑さの影響を受けやすい場所を見分ける」ことで、対策を優先して行うべき場所の判断をサポートするためのプロジェクトを開始しました。そのアプローチとして、 リッチモンドをブロックで分けた各地点の気温・場所・時間のデータを収集する 観測データ+土地利用マップ+住民の収入データ→各地点のヒートアイランドに対する脆弱性レベルを定量化・可視化 に取り組んでいます。このプロジェクトは2017年にリッチモンドで開始し、今では様々な都市に活動の輪を広げています。詳しい内容はこちらの記事(英語)をご覧ください。   解くべき課題を設定する これらの知識を踏まえて、次は「課題設定」を行いました。自分たちでヒートアイランド現象という問題に対して、解くべき課題は何か・解決するために誰のどのような意思決定が必要か・どのようなデータが必要か、についてディスカッションをしました。 議論を進めていく中で、さまざまな意見が飛び交いました。その中には、テーマとして設定していたヒートアイランド現象を解決するというよりも、ヒートアイランド現象が”障壁”となって起きるであろう「熱中症を未然に防ぐ」というものを課題に設定するという意見がありました。その解決策として、リッチモンドの事例を応用した「ある人がいる地点の体感気温+その人の体温のデータをリアルタイムで収集し、熱中症のおそれがある場合に通知するアプリケーションの作成」などの案が出てきました。 ディスカッションをすることで、自分では思いつかない新鮮な発想に触れることができたり、テーマに広がりを持たせることが出来たりすることを感じました。アナリティクスの結果を活用するアクションを考えるための「課題設定」を実際に体験できたディスカッションになりました。   コミュニティメンバー募集中! SAS Japan Student Data for Good communityでは引き続き学生の参加者を募集しております。社会貢献を目指す活動を通してデータサイエンティストの役割である「課題の設定」から「データを用いた解決法の提示」までの一連の流れを経験できます。 興味をお持ちでしたら下記の事項をご記入の上JPNStudentD4G@sas.comまでご連絡ください。 大学名 / 高校名 名前 メールアドレス  

Analytics
0
R言語でSAS ViyaのAI機能活用 第一回「CASサーバーとSWATパッケージ」

本シリーズの記事について オープンソースとの統合性はSAS Viyaの一つの重要な製品理念です。SAS言語やGUIだけではなく、R言語やPythonなどのオープンソース言語でも、SAS ViyaのAI&アナリティクス機能を活用することが可能になっています。このシリーズの記事は、R言語からSAS Viyaの機能を活用して、データ準備からモデルの実装までの一連のアナリティクス・ライフサイクル開発をサンプルコードの形で紹介していきます。 CASサーバーとSWATパッケージとは コードの内容を紹介する前に、まずCASサーバーとSWATパッケージに関して、簡単に紹介します。CASはSAS Cloud Analytic Serviceの略称です。SAS Viyaプラットフォームの分析エンジンで、様々な種類のデータソースからデータを読み込み、メモリーにロードし、マルチスレッドかつ分散並列でハイパフォーマンスな分析処理を実行します。現在のCASサーバーは3.4.0以降のバージョンのPythonと3.1.0以降のバージョンのRをサポートしています。 オープンソース言語のクライアントからCASサーバーのインタフェースを使用するために、SASからSWAT(SAS Scripting Wrapper for Analytics Transfer)というパッケージをGithubに公開し、提供しています。RとPythonにそれぞれ対応しているバージョンはありますが、本記事のサンプルコードではR用の SWATをメインで使用します。SWATパッケージを通してCASサーバーと通信し、インタフェースを直接利用することができます。データサイエンティストはSWATパッケージを使用し、RやPythonからSAS Viyaの豊富なAI&アナリティクス機能を活用し、様々なデータ分析処理を行ったり、機械学習や深層学習のモデルを作成したりすることができます。 環境の準備 R言語用SWATパッケージを利用するために必要なRの環境情報は以下の通りです。 ・64-bit版のLinux或いは64-bit版のWindows ・バージョン3.1.0以降の64-bit版のR ・Rパッケージ「dplyr」、「httr」と「jsonlite」がインストールされていること 筆者が使用している環境は64-bit版のWindows 10と64-bit版のR 3.5.3となり、IDEはRstudioです。 パッケージのインストール SWATをインストールするために、標準的なRインストール用関数install.package()を使用します。SWATはGithub上のリリースリストからダウンロードできます。 ダウンロードした後、下記のようなコマンドでSWATをインストールします。 R CMD INSTALL R-swat-X.X.X-platform.tar.gz X.X.Xはバージョン番号であり、platformは使用するプラットフォームと指しています。 或いはRの中から下記のコマンドのようにURLで直接インストールするのもできます。 install.packages('https://github.com/sassoftware/R-swat/releases/download/vX.X.X/R-swat-X.X.X-platform.tar.gz', repos=NULL, type='file') この部分の詳細はR-swatのGitHubのリンクを参考にしてください。 SAS Viyaと一回目の通信をやってみよう 全ての準備作業が完了したら、問題がないことを確認するために、Rから下記のコードを実行してみます。 library("swat") conn <- CAS(server, port, username, password,

Programming Tips
SAS Japan 0
新しいSAS ViyaのPython向けパッケージ :sasctl

なぜ“sasctl”が必要なのか? オープンソースとの統合性はSAS Viyaの一つの重要な製品理念であり、そのための機能拡張を継続的に行っています。その一環として”sasctl”という新しいパッケージがリリースされました。SAS Viyaでは従来から、PythonからViyaの機能を使用するために”SWAT”パッケージを提供しており、SAS Viyaのインメモリー分析エンジン(CAS)をPythonからシームレスに活用し、データ準備やモデリングをハイパフォーマンスで実行することができるようになっていました。しかし、データ準備やモデル開発は、アナリティクス・ライフサイクル(AI&アナリティクスの実用化に不可欠なプロセス)の一部のパートにすぎません。そこで、開発されたモデルをリポジトリに登録・管理して、最終的に業務に実装するためのPython向けパッケージとして”sasctl”が生まれたのです。 sasctlの概要 sasctlで提供される機能は、大まかに、3つのカテゴリーに分けられます。 また、この3つのカテゴリーは、お互いに依存する関係を持っています。 1.セッション sasctlを使用する前に、まずSAS Viyaのサーバーに接続する必要があります。(この接続は、ViyaマイクロサービスのRESTエンドポイントに対して行われることに注意してください) SAS Viyaのサーバーへの接続は、セッションのオブジェクトを生成することにより行われます。 >>> from sasctl import Session >>> sess = Session(host, username, password) この時点で、sasctlはViya環境を呼び出して認証し、この後のすべての要求に自動的に使用される認証トークンを受け取りました。 ここからは、このセッションを使用してViyaと通信します。 2.タスク タスクは一般的に使用される機能を意味し、可能な限りユーザーフレンドリーになるように設計されています。各タスクは、機能を実現するために、内部的にViya REST APIを複数回呼び出しています。例えば、register_modelタスクではREST APIを呼び出し、下記の処理を実行しています: リポジトリの検索 プロジェクトの検索 プロジェクトの作成 モデルの作成 モデルのインポート ファイルのアップロード その目的としては、ユーザーがPythonを使って、アナリティクス・ライフサイクルで求められるタスクを実行する際に、sasctlの単一のタスクを実行するだけで済むようにすることです。 >>> from sasctl.tasks import register_model >>> register_model(model, 'My Model', project='My Project') 今後も継続的に新しいタスクを追加していきますが、現在のsasctlには下の2つのタスクを含まれています:

Data for Good | Students & Educators
0
Data for Goodを通じて"本物の"データサイエンティストになろう!

アナリティクスは数多くの課題を解決してきました。ビジネスにおけるデータサイエンスの有用性は周知の通りであり、既に多方面で応用されています。SASはこれを発展させ、データを用いて社会課題を解決する“Data for Good”を推進しています。本記事では、その一環として設立したSAS Japan Student Data for Good Communityについてご紹介します。 SAS Japan Student Data for Good Community データサイエンスにおいて最も重要なのはアナリティクス・ライフサイクルです。これはData・Discovery・Deploymentからなる反復型かつ対話型のプロセスで、このサイクルをシームレスに回し続けることで初めてアナリティクスは価値を発揮します。データを用いたアプローチが可能な課題の発見から、分析結果を活用する具体的なアクションまでを含む一連の流れのもと、そのアクションに「必要な情報」は何か、その情報を導き出すためにはどのようなデータや手法が使えるかと思考をブレークダウンし、議論を重ねることが大切です。しかし、学生の授業や書籍による学習は具体的なデータ分析手法や統計理論にフォーカスされ、上記のようなデータサイエンスの本質的な流れを学習・実践する場が殆どないのが現状です。そこで、学生がData for Goodを題材にデータサイエンスの一連の流れを実践する場としてSAS Japan Student Data for Good Communityを設立しました。本コミュニティの目標は以下の三つです。 学生が主体となって議論・分析を行い、Data for Goodを推進すること。 データサイエンスのスキルを向上させること。 学生間の交流を深めデータサイエンスの輪を広げること。 活動内容 ・Data for Good 山積する社会問題のなかからテーマを選択し議論や分析を通してその解決を目指す、本コミュニティのメインの活動です。議論は主にオンライン上で行いますが、適宜オフラインでの議論や分析の場を設けます。もちろん、社会問題の解決は一般に困難です。データは万能ではなく、アナリティクスが唯一の絶対解とも限りません。しかし、課題をいくつかのステップに区切り、その一部分だけでもデータの力で改善することは十分可能であると考え、そのために学生間で様々な議論を重ねることは非常に有意義だと感じています。そもそもData for Goodの考え方は、「事象の把握にデータを使用すること(Descriptive Analytics)」ではなく、アクションを行う際に「データを用いてより良い意思決定の支援をすること(Predictive/Descriptive Analytics)」です。課題そのものの理解から、いくつかの施策がある中で、データのアベイラビリティなども踏まえて、「アナリティクスで解くべき(解きやすい/解く意味のある)問題」は何かを考える必要があります。これらは確かにChallengingではありますが、他の学生とのアイデアの共有や現場のSAS社員からフィードバックをもとに、協力しながらプロジェクトを進行させられることは本コミュニティの大きなメリットの一つです。将来的には関連NPO法人との連携も計画しています。 ・勉強会 月に一回、SAS六本木オフィスにてコミュニティ内の勉強会を開催します。複数の社会問題をテーマとし、後述するアナリティクス通信を通して学んだ事例・知識に基づき、それらの課題解決にどのようなアプローチ(必要なデータ・有効な分析手法等)が有効であるかについて議論します。社会問題に対する見聞を広めるとともに、「アクション可能な課題を見つける」・「データを用いたアプローチを考える」といったデータサイエンスを進めるうえで重要となる観点を養います。以前開催した勉強会の様子はこちらの記事からご覧ください。(第一回・第二回) ・アナリティクス通信 週に一回、先述の勉強会で議論を進めるために必要な知識やデータをまとめたアナリティクス通信を配信します。コンテンツの内容は、社会問題の背景知識・関連するオープンソースデータ・データサイエンスに関するTipsなどを予定しています。データの見方を養う機会や、意欲あるメンバーが実際に分析を行うきっかけになることを期待します。 ・外部イベントへの参加 データ分析能力の向上や、Data for Goodに応用可能な新たな視点の獲得等を目的とし、有志メンバーでの外部データ分析コンペティションや関連講演会への参加を企画しています。 コミュニティメンバー募集! 上記の活動に加え新規活動案は随時受け付けており、学び溢れるより良いコミュニティを目指していきます。社会問題を解決したい方やデータサイエンスの力を養いたい方など、多くの学生のご参加を期待しています。(学年・専攻等の制限はありません。前提知識も仮定しません。中高生のご参加も歓迎します。)本コミュニティの活動にご興味がおありでしたら下記事項をご記入の上JPNStudentD4G@sas.comまでご連絡ください。 お名前

Advanced Analytics | Analytics | Data Visualization
Makoto Unemi (畝見 真) 0
セルフサービスBIの進化系、拡張アナリティクスの決定版SAS Visual Analytics 8.4 on SAS Viya拡張ポイント

SAS Visual Analytics on SAS Viya(以降VA)の最新版8.4に搭載されている新機能の中から、以下5つの機能に関してダイジェストでご紹介します。 1.AIストーリーテラー機能 2.レポート編集&表示切替の利便性向上 3.閲覧時レポートカスタマイズ&制御 4.分析用ビジュアル候補提示 5.カスタムグループ作成の容易化 6.Visual Analytics SDK 1.AIストーリーテラー(自動分析&解説)機能 VA8.3から搭載されていた機能やUIが拡張されています。 AIストーリーテラー(自動分析&解説)機能では、分析対象の変数(ターゲット)を指定するだけで、その変数に影響を与えているその他の変数の特定や、変数ごとにどのような条件の組み合わせがターゲット変数に依存しているのかを「文章(条件文)」で表現して教えてくれます。 この例で使用するデータ「HMEQJ」は、ローンの審査を題材にしたもので、顧客ごとに1行の横持ちのデータです。このデータ内にある「延滞フラグ」が予測対象の項目(ターゲット変数)で、0(延滞なし)、1(延滞あり)の値が含まれています。 データリスト内の「延滞フラグ」を右クリックし、「説明」>「現在のページで説明」を選ぶだけで、「延滞フラグ」をターゲット変数に、その他の変数の組み合わせを説明変数とした複数の決定木(ディシジョンツリー)が実行され、 以下のような結果が表示され、見つけ出された有用な洞察を説明してくれます。 分析結果画面内説明: ① 予測対象値(0:延滞なし、1:延滞あり)の切り替えが可能です。この例では、「1:延滞あり」を選択し、「延滞する」顧客に関して分析しています。 ② 全体サマリーとして、すべての顧客の内、延滞実績のある顧客は19.95%(5,960件中の1,189件)であることが示されています。 ③ 「延滞する」ことに関して影響を与えている変数の重要度を視覚的に確認することができます。最も影響度の高い変数(今回は「資産に対する負債の割合」)の重要度を1として、1を基準値にした相対重要度が算出され、横棒グラフで表示されます。従来版に比べて、変数ごとの影響度合いの違いを明確に捉えることができます。 ④ 「高」タブには、「延滞する」可能性が高いトップ3のグループ(条件の組み合わせ)が文章で示され、「低」タブには、「延滞する」可能性が低いトップ3のグループ(条件の組み合わせ)が文章で示されます。この例では、③で「資産価値」が選択され、「資産価値」に基づき、延滞する可能性の高い/低いグループのトップ3が表示され、「資産価値」に関する条件部分がハイライトしています。 ⑤ この例では、③で「資産価値」が選択され、これに応じて「0:延滞なし、1:延滞あり」別の顧客の分布状況がヒストグラムで表示されています。選択された変数が数値属性の場合は、ヒストグラムで、カテゴリ属性の場合は積み上げ棒グラフで表示されます。チャートの下端では、チャートから読み取れる内容を文章で解説しています。 以下は、カテゴリ属性の変数を選択した場合の表示例です。 以上のように、分析スキルレベルの高くないビジネスユーザーでも、簡単かつ容易に、そして分かり易くデータから有効な知見を得ることができます。 ※AIストーリーテラー機能に関しては、SAS Viya特設サイトのビジュアライゼーションセクションで動画でもご覧いただけます。 2.レポート編集&表示切替の利便性向上 従来のVAでは、編集モードで作成したレポートを表示モードで確認する際には、メニューから「レポートを開く」を選択し、レポートが表示されるのを少し待つ必要がありました。また、レポート表示モードから編集モードに戻るにもメニューから「編集」を選択する必要がありました。 VA8.4では、編集モードと表示モード切替の利便性が改善され、画面左上のペンシルアイコンをクリックするだけで、編集画面<->表示画面間を瞬時に切り替えられるので作業効率が向上します。 また、ご覧の通り、編集画面と表示画面のレイアウトも統一されています。 3.閲覧時レポートカスタマイズ&制御 一般的にBIツールでは、対象ユーザーを3つの層(管理者、レポート作成者(デザイナ)、レポート閲覧者(コンシューマ))に分類し、それぞれに最適なインターフェースを提供しています。しかし、レポート閲覧者の中には、「基本的には誰かが作成したレポートを見るだけでいいんだけど、自分好みに変更できたらもっといいのにな…」という声も多くあります。このレポートカスタマイズ者層に答えられないために、彼らは、レポートを開き、そのデータをダウンロードし、Excelに取り込んで好みのレポートを作成しようとするのです。 VA8.4では、レポートカスタマイズ者層向けに、作成済みレポートを開いて閲覧中に、簡単操作で好みに合うようにレポートをカスタマイズすることができるようになりました。 以下は、レポート閲覧中に「円グラフ」を他のチャートタイプに変更するメニューが表示されている例です。 また、レポート作成者は、レポートカスタマイズ者向けに、カスタマイズ可能な機能範囲を3段階で制御することが可能です。 これで、レポート作成者の負担も軽減され、レポート閲覧者の痒いところに手が届きそうですね。 4.分析用ビジュアル候補提示 レポート作成の元となるデータソースを選択すると、そのデータソース内の項目に基づき、「こんな分析が有効じゃないの…」と、分析画面の候補を自動的に提示してくれる機能です。 画面左端から電球マークの「候補」アイコンをクリックすると、分析候補がいくつか表示され、提示された分析画面をドラッグ操作でレポートに挿入することができます。 より素早く、効果的な情報を含むレポートを作成することができそうですね。これも一つの自動分析機能です。 5.カスタムグループ作成の容易化 従来版のVAでは、カスタムグループを作成する際には、カスタムグループ作成専用の画面内で、グループに含める要素の選択と、グループ名称を設定し、OKをクリックしてチャートに反映させる必要がありましたが、VA8.4では、チャート上でグループ化対象の要素を選択し、そのグループに名称を設定して、素早くカスタムグループを作成することができるようになりました。 6. Visual Analytics SDK

Analytics | SAS Events
SAS Global Forum 2019 論文紹介シリーズ 第4回「オペレーショナル・アナリティクス for IT」

前回は、ビジネス価値創出につながる「オペレーショナル・アナリティクス for Data Scientist」ユースケースの論文を紹介しました。今回は、企業様にとって、クラウド上のインフラアーキテクチャと分析プラットフォームのデプロイメントについて、ご紹介します。昨今、なぜ「コンテナ」が注目されているのか、そして、クラウドやコンテナ上に分析プラットフォームを移行/構築し、活用することに関心があるのであれば、ぜひ最後までご覧ください。 1.Cows or Chickens: How You Can Make Your Models into Containers モデルは特定の作業(新しいデータをスコアリングして予測を出すこと)として役割を果たしてきています。一方、コンテナは簡単に作成し、廃棄し、再利用できることができます。実際、それらは簡単にインテグレートさせ、パブリッククラウドとオンプレミス環境で実行できます。SASユーザは本論文を通じて、簡単にモデルの機能をコンテナに入れることができます。例えば、パブリッククラウドとオンプレミス環境でのDockerコンテナ。また、SASのModel Managerは様々なソース(オープンソース、SAS、コンテナ等々)からモデルの管理を行うことができます。したがって、この論文はそれらの基本知識と、どのようにSASの分析モデルをコンテナに入れることをメインに紹介します。 2.Orchestration of SAS® Data Integration Processes on AWS この論文では、Amazon Web Services(AWS)S3でのSASデータインテグレーションプロセスの構成について説明します。例としては、現在サポートしているお客様がクレジット報告書を生成するプロセスを毎日実行しています。そして、そのお客様の対象顧客は1カ月ごとに1回その報告を受け取ります。データ量としては、毎日に約20万の顧客情報が処理され、最終的に毎月約600万人の顧客へ報告することとなります。プロセスはオンプレミスデータセンターで始まり、続いてAWSのSASデータインテグレーションでAPR計算が行われ、最後にオンプレミスデータセンターで報告書が生成されます。さらに詳しい情報としては、彼らのアーキテクチャ全体はマイクロサービスを使われていますが、同時にAWS Lambda、簡易通知サービス(SNS)、Amazon Simple Storage Service(Amazon S3)、およびAmazon Elastic Compute Cloud(EC2)などの独立した高度に分離されたコンポーネントも使われています。つまり、それらにより、データパイプラインに対するトラブルシューティングが簡単になっていますが、オーケストレーションにLambda関数を使用することを選択すると、プロセスがある程度複雑になります。ただし、エンタープライズアーキテクチャにとって最も安定性、セキュリティ、柔軟性、および信頼性もあります。S3FやCloudWatch SSMのようなより単純な代替手段がありますが、それらはエンタープライズアーキテクチャにはあまり適していません。 3.SAS® on Kubernetes: Container Orchestration of Analytic Work Loads 現在、Big Dataの時代で、Advanced analyticsのためのインフラストラクチャに対するニーズが高まっています。また、分析自体に対して、最適化、予測が最も重要領域であり、小売業、金融業などの業界ではそれぞれ、分析に対する独自の課題を抱えています。この論文では、Google Cloud

Advanced Analytics | Analytics
Makoto Unemi (畝見 真) 0
SAS Viya: ビジュアルパイプラインで需要分類&予測

「ビジュアルパイプラインで将来予測」では、SAS ViyaのModel Studioを使用した時系列予測の基本的な手順を紹介しました。 今回は、需要予測の精度を高める代表的な一つの手法として、需要分類をご紹介します。 例えば、お菓子の販売に関する需要を予測する場合を考えてみましょう。 ポテトチップスやおかきのように通年を通して売れる商品もあれば、アイスクリームのように夏季に需要が増加する商品、チョコレートのようにバレンタインデーの直前と当日に需要が急増する商品、お盆やお彼岸などの際にお供え用にときどき購入される商品などなど、お菓子の種類によって需要のパターンは異なってきます。 これらの異なる需要パターンの商品に対して、一律同じアルゴリズムを適用しても予測精度は高まりません。 こうした課題に対処するために、SAS Viyaの時系列予測では、自動的に需要のパターンを分析し、予測の精度を高めるような仕組みも搭載されています。 SAS ViyaのModel Studioで時系列予測を実行する際に、需要分類を活用する場合は、「需要の分類」テンプレートを使用します。 (使用する時系列データやデータ内の変数に対する役割設定内容は、「ビジュアルパイプラインで将来予測」ブログ内容と同様です。) 以下は、「需要の分類」パイプライン・テンプレートを選択し、実行した後の画面です。 「需要の分類プロファイル」ノードでは、統計解析等の手法を使用して、時系列データを解析し、需要のパターンを検出します。冒頭にお話しした通り、予測対象によって需要のパターンは様々です。 こうした多様なパターンを見極めた上で、適した予測アルゴリズムを用いることが肝要になります。 今回のデータでは、地域×製品ラインのセグメントごとに需要のパターンが検出され、分類されます。 「需要の分類プロファイル」ノードのメニューから「開く」を選択すると、 分類結果が表示されます。 地域×製品ラインでは、5つの組み合わせ=セグメントが存在するので、これらのセグメントごとにパターンが検出され、結果としては、1つのセグメントは「YEAR_ROUND_NON_SEASONAL:長期間の非季節性需要」として、4つのセグメントは「YEAR_ROUND_SEASONAL:長期間の季節性需要」として分類されていることがわかります。 上記の2種類を含め10種類の需要パターン+その他、に分類されます。 次の「需要の分類モデリング」ノードでは、分類されたセグメントごとに最適なアルゴリズムが選択され、予測が実行されます。 「需要の分類モデリング」ノードのメニューから「開く」を選択すると、 実行結果が表示されます。検出された需要パターンに応じて、最適なアルゴリズムを適用したパイプライン(以下の「パプライン」列)が選択され、実行されます。 「YEAR_ROUND_NON_SEASONAL:長期間の非季節性需要」のセグメントには「非季節予測」モデルのパイプライン・テンプレートが適用され、「YEAR_ROUND_SEASONAL:長期間の季節性需要」のセグメントには「季節予測」モデルのパイプライン・テンプレートが適用され、それぞれ実行されています。「WMAPE」列には加重MAPEの値が表示されています。 セグメントを選択し、画面右上の「パイプラインを開く」アイコンをクリックすると、 そのセグメントに適用され、実行されたパイプラインが表示されます。 加重MAPEの値や、このパイプラインの予測結果を確認し、精度をさらに改善したい場合は、従来通りの操作性でこのパイプラインをカスタイズ(アルゴリズムを変更したり、パラメータをチューニングしたり)することもできます。 最後の「セグメントのマージ」ノードでは、各セグメントの予測実行結果をマージします。 「セグメントのマージ」ノードのメニューから「予測ビューア」を選択すると、 予測結果のチャートが表示されます。 以下チャート内のオレンジ色の破線は、5つのセグメントの中の、地域:Region1×製品ライン:Line1に関する予測結果です。 以上のように、SAS ViyaのModel Studio上でビジュアルパイプラインを用いた時系列予測では、需要のパターンに基づく、より精度の高い予測モデリング戦略の自動実行も可能なんですね。 ※ビジュアルパイプラインでの需要分類&予測は、SAS Viya特設サイト内の「ビジュアライゼーション」及び「機械学習」セクションにて動画をご覧いただけます。 ※需要予測精度の向上に関しては、「ビジネスで「需要予測機能」を活用するために必要な3つの要素」ブログも参考にしてください。 ※Enterprise Open Analytics Platform 「SAS Viya」 を知りたいなら「特設サイト」へGO!

Data for Good | Students & Educators
0
社会課題の解決に向けて一緒に考えてみよう~GatherIQの魅力~(第三回)

前回の記事ではData for GoodのためにSASが提供するアプリ GatherIQをご紹介し、そのトピックとして「男女平等」「健康」について取り上げました。第三回となる今回は、「生命の源である水」と「衛生」の2つのテーマについてGatherIQの提供するデータを基に取り上げてみたいと思います。 “生命の源である海” 多くの人もご存知かと思いますが、海は地球上の大部分を覆っており、その占有率は70%を超え、これにより地球上の水分の97%は海上に存在しています。また、海には現在20万種の生物が生息しており、その種類は100万種を超えるとさえ言われています。まさに海は生命の源といえるでしょう。 それだけでなく、海は温暖化にも関与しており、大気中の30%の二酸化炭素は海水に吸収されることで緩衝液としての役割も果たしていると述べられています。このように、海は地球にとって非常に重要な要素であることがわかります。 汚染 温暖化を緩和している一方で、海に溶けている二酸化炭素の量は増加します。これにより海水のpHが上昇し、これがカルシウムイオンと炭酸イオンが結合することを阻害します。カルシウムイオンと炭酸イオンは結合すると炭酸カルシウムになります。貝や魚の体の主成分である炭酸カルシウムの減少は、彼らの身体構造の形成を阻害し、結果的に魚や貝は減少の一途を辿ります。また、私たち一般人が捨てたゴミによる汚染被害も甚大です.一部のゴミは、私たちがゴミ箱にゴミを捨てる際に零れ落ちた物であり、これらの捨て損ねられたゴミ達は排水溝へと落ち、水に乗って海へと流れつきます。 "Ocean Trash is a Problem You Can Solve" Ocean Conservancy 記事によると、海の40%が深刻な汚染状況にあります。 マイクロプラスチック マイクロプラスチックもまた、海の汚染の大きな要因となっていることで近年メディアで度々取り上げられていますが、その恐ろしさについてはご存知でしょうか。マイクロプラスチックはプラスチック製品の原料となる小さなプラスチックが工場の排水や輸出船からの漏出によって海に流れたものを主とし、その大きさは目で見える小さな大きさの物から、顕微鏡でしか見えない大きさの物まで様々です。また、人の捨てたゴミは潮流で合流し、衝突しあい、紫外線や海水にさらされて風化し、粉々になります。これらもマイクロプラスチックとなり、海を漂うのです。マイクロプラスチックはその安定性から重宝されていましたが、皮肉なことに、その能力故に、彼らは海の中を非常に長い期間漂い続けることができます。カラフルで小さなマイクロプラスチックは魚卵などと間違われ、魚に食べられて消化されることもなく魚の胃の中に残留します。マイクロプラスチックの恐ろしい点は、これを摂取した魚が一切食事を取っていないにも関わらず、胃の中に残るマイクロプラスチックによって満腹感を得て飢餓状態となってしまい、最終的に餓死してしまうという点です。 "The Nurdles' Quest for Ocean Dominance" TED Ed 動画では、かわいい見た目のマイクロプラスチック達による地球侵略計画というイメージでこの問題を説明している。 人間への影響 では、マイクロプラスチックと海水の汚染や酸性化は人間の生活にどのような影響を持つのでしょうか。まず、酸性化による牡蠣、あさり、サンゴ、ウニなどの魚介類 の減少により、価格は上昇し、これらを食べることが困難になります。彼らを主食とする人は世界に1億人いるとされており、その人達の主要なタンパク質源が消え、健康被害が出ると考えられます。また。マイクロプラスチックに関して、これを食べた魚が餓死するだけでなく、マイクロプラスチックを食べた魚をさらに上位の捕食者が食べることで食物連鎖を辿り、捕食者の胃にマイクロプラスチックが残り、捕食者共々餓死していくという負のループが完成していきます。これにより海の生態系は壊滅状態になり、魚類は減少し、魚類を食べられなくなる可能性が高くなります。 "Ocean Acidification Explained in 2 Minutes" Grist 私たちができること マイクロプラスチックに関して、私たちも改善に向けて協力することができると私は考えています。マイクロプラスチックは安定性が高いですが、永久に海に留まることはできません。GatherIQに挙げられた動画には、マイクロプラスチックを減らしていくために、まずプラスチックの使用を避けていくことから始めて行くべきだと述べられています。リサイクルを行い、プラスチックをガラスや紙に代替して少しずつプラスチックの使用を減らすことができれば、将来的に海水中を漂うマイクロプラスチックは消えていくことが示唆されています。日常で一時的に使用するプラスチックは、予めカバンに持ち運ぶことで使用せずとも良い物が多いということにお気付きでしょうか。ここでいう一時的に使用するプラスチックとは、コンビニで商品を入れるための袋や、カフェでコーヒーを入れてもらう際のコップやストロー、食品を保存する時に使用するラップ、などを指します。上記の物でいえば、マイバッグの持参で私たちが普段使用しているコンビニの袋が不要になり、カフェでコーヒーを飲む時も、ストロー付きのタンブラーを持参していればプラスチックの容器は不要になります。また、ミツバチの蜜蝋でコーティングされたエコラップは、繰り返し洗って使用できるラップであり、これを使用すればラップはもう必要ありません。このように、少しずつ、小さなことから私たちにできる行動は確かに存在します。 しかし、現状を知らなければ具体的に何が必要で何をしなければならないかもわかりません。GatherIQに集められたデータ達は、そのような「現状」を理解する手助けが少しでも出来たら、という思いがもととなり提供されています。 “衛生” 上記で記載した地球上の水分の内、海水ではない残りの3%の水分は飲み水として利用できる安全な水です。私たちが普段生活の中で使用する水(飲料水以外の、トイレの水や蛇口から出る水)は、この3%の水から使用されています。 途上国と先進国、各々の課題 さて、現在でも清潔で安定な水を使用できない人は多く存在します。世界中で、8.4億人以上の人が安全な飲料水を獲得できておらず、これは計算すると、総人口の内、9人に1人が安全な水を得られていないことになります。 "The Human

Advanced Analytics | Analytics | SAS Events
SAS Global Forum 2019 論文紹介シリーズ 第3回「オペレーショナル・アナリティクス for Data Scientist」

今回は「オペレーショナル・アナリティクス for Data Scientist」をメインテーマとしてご紹介します。企業で分析業務を行うデータサイエンティストの皆様はご存知の通り、モデルは開発しただけでは意味がありません。そのモデルを業務に実装(デプロイ)してはじめて、ビジネス課題を解決し、価値を創出することができるわけです。SASが長年蓄積してきたナレッジをご覧ください。 1.Using SAS® Viya® to Implement Custom SAS® Analytics in Python: A Cybersecurity Example この論文は、SASの分析機能により支えられているプロダクションレベルのアナリティクスソリューションを開発しようとしているデータサイエンティストを対象としています。本文では、SAS ViyaとCloud Analytics Service(CAS)に基づく、CASの構築基盤とサイバーセキュリティを説明します。そして、SASアナリティクスを本番環境でPythonで実装する方法を説明します。 2.What’s New in FCMP for SAS 9.4 and SAS Viya この論文では、下記いくつかポイントをメインとして議論していきます。まず、SASが提供しているFunctionコンパイラー(FCMP)の新しい特徴を紹介し、それから主にFCMPアクションセットを中心とし、リアルタイムアナリティクススコアリングコンテナ(ASTORE)とPythonのインテグレーションについても説明します。それらの説明により、SASの新しいテクノロジーに対し、更なる理解を頂けることを期待しています。 3.Influencer Marketing Analytics using SAS® Viya® この論文はSAS Viyaを使って、マーケティングアナリティクスを行う事例を紹介します。近来、マーケティングはますますインフルエンサーが大きな役割をしめるようになってきています。それらのインフルエンサーたちはソーシャルメディアのコンテンツ作成者であり、多くのフォロワーを持ち、人々の意見に影響を与え、購入を検討する人々にも影響を与えています。インフルエンサーマーケティングは、より伝統的なマーケティングチャンネルと同じようにコストがかかるため、企業にとって最も効果的なインフルエンサーを選択することは非常に重要です。 こういった背景において、この論文では、ソーシャルメディアで本当に影響力をもつ人、そしてその影響程度はなにかについて分析することを目指しています。ケーススタディは、感情面の影響を与えることに焦点を当てています。また、多くのフォロワーを持つインフルエンサーとその色んな投稿とアクティビティを分析します。実施するには、Pythonのライブラリとコードが使用されます。次に、彼らのアクティビティとネットワークを分析して、それらの影響範囲を分析します。これらの分析には、SAS Viyaのテキストおよびネットワーク分析機能が使用されます。データ収集ステップ(Python)はクライアントとしてJupyter Notebookを使用していますが、分析ステップは主にSAS Visual Text Analytics(Model Studio)とSAS Visual Analyticsを使用して行われています。 4.Take

Advanced Analytics | Analytics
Makoto Unemi (畝見 真) 0
SAS Viya: ビジュアルパイプラインで将来予測(フォーキャスティング)

Enterprise Open Analytics PlatformであるSAS Viyaでは、コーディングスキルを持たないビジネスアナリストやビジネスユーザーでも、Model Studioを使用し、機械学習のモデル、時系列予測のモデル、テキストマイニングのモデルをGUIベースの簡単マウス操作で作成することができるようになっています。モデル生成プロセスをグラフィカルなフロー図として描き、実行するだけです。このフロー図のことを「パイプライン」と呼んでいます。 これまで、ビジュアルパイプラインを用いた機械学習のモデル生成は紹介してきましたが、今回は、時系列予測の基本的な手順を紹介します。 Model Studioで時系列予測を実行する基本的な手順は以下の通りです。 ① プロジェクトの新規作成 ② 学習用の時系列データ内項目へ役割設定 ③ パイプラインの作成と実行 ④ 予測結果確認 ⑤ 予測値のオーバーライト(必要に応じて) ① プロジェクトの新規作成 SAS Viyaの統合GUIのホームページのメニューから「モデルの作成」を選択し、表示されるModel Studioの画面から「プロジェクトの新規作成」をクリックします。 「プロジェクトの新規作成」画面内で、プロジェクトの名前を入力し、モデルの種類(データマイニングと機械学習 / テキスト分析 / 予測)から「予測」を選択します。使用するパイプライン・テンプレートとして、デフォルトでは、「自動予測」が選択されていますが、必要に応じてテンプレートを変更することができます。 今回は、「自動予測」テンプレートを使用してみましょう。 学習用の時系列データを選択し、「保存」をクリックします。 すると、指定したデータソース内の変数リストが表示されます。 ② 学習用の時系列データ内項目へ役割設定 表示された「データ」タブ内で、変数ごとに右側画面内で役割を選択します。 ・注文日:時間 <-日付属性データ項目には自動的に“時間”役割が設定されます。 ・売上:従属 <-予測対象の項目 ・原価:独立 <-予測対象に影響を及ぼす項目 ・販売地域と製品ライン:BY変数 <-地域別や製品ライン別で予測結果を見ることができます。 「テーブルの表示」アイコンをクリックすると、データの中身を確認できます。 ご覧の通り、このデータは年月ごと、販売地域、製品ライン、製品ごとの売上や原価、などの情報を持つ時系列データです。 注. 今回使用するデータでは、時系列データとその属性データ(地域、製品ライン、製品)が一つにマージされているデータを使用していますが、時系列データと属性データをそれぞれ別データとして取り込むことも可能です。そうすれば、メモリーにロードするデータ量を削減することができます。 ③ パイプラインの作成と実行 役割を設定後、「パイプライン」タブをクリックすると、「自動予測」のパイプラインが表示されます。 右側画面には「自動予測」ノードのオプションが表示されています。ご覧の通り、自動予測では、ESM(指数平滑化)とARIMAの2つの手法で予測を実行し、その中から最良のモデルが使用されます。 必要に応じて、IDM(間欠需要モデル)とUCM(観測不能成分モデル)を追加することも可能です。 左画面内のノードリストから必要な機能をドラッグ操作でパイプラインへ追加することができます。 その中にはニューラルネットワークに基づく手法も用意されています。 今回は、「ナイーブモデル予測」を加えてみましょう。 左側のノードリスト内から「ナイーブモデル予測」をパイプラインの「データ」ノードにドラッグするだけです。 それでは、パイプラインの右上の「パイプラインの実行」ボタンをクリックして、このパイプラインを実行しましょう。 正常に完了するとすべてのノード上に緑のチェックマークが表示されます。 「データ」ノードのメニューから「時系列ビューア」を選択すると、 学習データ内容を時系列チャートで確認することができます。 役割にBY変数を指定した、販売地域と製品ラインで絞り込んで見ることもできます。 以下は、地域:Region2、製品ライン:Line3に絞り込んだチャートです。 ④ 予測結果確認

Data for Good | Students & Educators
0
社会課題の解決に向けて一緒に考えてみよう~GatherIQの魅力~(第二回)

前回の記事で、Data for GoodのためにSASが提供するアプリ GatherIQをご紹介し、そのトピックの一つとして「教育」について取り上げました。今回は、「男女平等」と「健康」の2つのテーマについてGatherIQの提供するデータを基に取り上げてみたいと思います。 “男女平等” 皆さんは性別による格差を感じることはあるでしょうか。日本ではしばしば女性が男性と不平等に扱われていることで問題となりますが、それもここ数年でだいぶ変化してきたと私は感じております。今でも女性が差別に対し立ち上がることは難しくはありますが、以前であれば声を上げることですら不可能であったように思われます。日本、そして世界の性別によるギャップはどのような事態に置かれているのでしょうか。 日本と世界の違い GatherIQによると、性別におけるギャップの少ない国では、日本は世界的に見て111位であり、東南アジア及び太平洋周辺では下から4番目の順位です。これは、中国が99位、フィリピンが7位であることを踏まえると、日本は性別に関して非常に平等性が低いことは明らかです。 一方、性別におけるギャップがない国で上位に位置しているのはアイスランド、ノルウェー、フィンランドなどの北欧の国々でした。 しかし世界経済フォーラムは、未だ尚、世界のどの国も性格差のない平等な国とは言えないと述べます。 こちらのリンク先では、地域や指標を指定することで様々な順位分けを示してくれます。GatherIQではこのように、皆さんがデータや表のインタラクティブな操作が可能です。 データで見る「格差」 性別における格差は女性差別に関するものが主なようです。その分野は、教育、雇用、肩書き、暴力など、多岐にわたります。 雇用や肩書きでは、主要な役職や収入などの点で女性が男性に比べ平等に扱われていないと述べられています。 2017年における女性の平均収入は男性のおよそ半分である。CEOを務めるJohnという名の男性の数よりもCEOを務める女性の数は少ない。 暴力の点では性別における格差は更に深刻です。女性の内35%が虐待にあった経験があり、この中身としては、結婚を強制される、暴行を受けるという内容から人身売買という内容まで、多様です。 また、教育の現場においては家庭事情や学校での出来事により女性が教育を受けられない場合が多いようです。家の家事をしなければならない、学校でセクシュアルハラスメントを受けてから怖くて行けなくなった、などの理由が述べられていました。 平等による利益 では、男女平等であることによるメリットは何でしょうか。女性が平等に生きられる。これは確かに重要なことです。しかし、男女平等により得られる利益は女性だけに限ったものではないとGatherIQでは記載されています。男女平等に努める国は、武力に訴える傾向が低く、平和を維持しやすいようです。この傾向は、GDPの高い国や民主主義の国よりも高いと述べられています。また、こうした格差の少ない国では子供の人生における満足度や幸福度が非常に高く、そのため、男女平等である国は暴力による死者も少数です。 格差を生まないためにどう行動すればよいのだろうか? では、格差を少なくするにはどのようにすればよいのでしょうか。GatherIQには解決の糸口の一つが示されています。 “Boys and young men need to be educated and encouraged to be agents of change--to fight for the girls in their communities and prevent violence.” 「若い男性が主体的に変化を起こすことができるように教育し、勇気付けることが必要である。―彼らがコミュニティの中で女性のために戦い、暴力を防げるようになるために。」 私たちができることは、これからの世代に、今までの歴史や努力を伝えること、そして人類の発展のために男女平等が重要であると教えていくことではないか、と感じます。 “健康” 2つ目のテーマとして、健康についてお話をします。長く生きていくために、健康は不可欠な要素でしょう。GatherIQによると、健康の指標となりうる平均寿命の長い国では、健康な人が貢献することでより発展しやすいと言われています。

Data for Good | Students & Educators
0
社会課題の解決に向けて一緒に考えてみよう~GatherIQの魅力~(第一回)

現在、世界規模の大きな問題が多く存在しています。その問題は、飢餓、貧困、差別、異常気象など、どれも解決が困難なものばかりだと思われます。SASでは、これらの問題の解決に向けて多くの人の助けを借りるための手段の一つとして、GatherIQというアプリの提供を行っています。今回はこのGatherIQについて、その内容に触れつつご紹介します。 GatherIQとは何か? GatherIQはData for Goodの一環で作製されたアプリです。まず、Data for Goodとは、世界的に解決の困難な問題を取り扱うNPO団体などを通じて得られたデータを分析し、世界の課題を解決してより人々を幸せにする取り組みのことです。GatherIQの最大の特徴は一般人参加型のアプリケーションとなっているという点であり、これによりPCからの利用のみならず、アプリのダウンロードによりスマートフォンからの利用も可能となっています。また、NPO団体等から得たデータを分析したものを自由に取得できるため、研究の題材としたり、自身の学習に使用したりすることができるようになっています。 その内容は具体的にどのようなものなのか? GatherIQでは「貧困の根絶」や「男女平等」、「健康」などの多岐にわたった17のテーマを扱って世界の課題を解決する糸口の提供を行っています。GatherIQのデータは、様々な形式で提供されています。 テーマごとにデータが分けられており、その形式も様々である。 これらの形式はその使用場面に応じて特化しています。つまり、テーマの概要を知りたい時にはOverview、気軽に見たい時は動画やクイズ、データをより多く知りたい時にはデータストーリーの閲覧を、というように多様な用途での使用が可能となっています。 さて、今回はGatherIQの提供しているデータの中から、「教育品質」のテーマについて取り上げてみたいと思います。 教育はなぜ大事なのか? 社会を繁栄させるには、働き手の潜在的な知識レベルが高いことが必要不可欠であるといわれています。多くの専門家は、教育が発展的な進化を遂げているとき国は繁栄すると発言しており、経済の安定性と成長率が教育と直接的に結びついているとも発言しています。特に、初等教育である計算力や識字力は将来経済成長の際に必要とされる技術を見通す力を得るために必要不可欠であるとされています。教育の水準の上昇により、個々人の知識のレベルが上がるため、雇用率が上昇します。そのため、結果的に経済及び、国全体が発展します。 "Inclusive Education - Education Equity Now" UNICEF Europe & Central Asia 何が課題なのか? 未だ尚、学校に行くことのできない子供や、教育を受けることのできない子供は一定数存在します。世界規模で見て、小学校に行くことのできない子供は2015年の時点で6,300,000人存在し、これは1975年と比べると半分にまで減少しましたが、それでもまだたくさんの子供が必要最低限の教育すら受けられていないことがわかります。全ての子供が必要最低限の教育を平等に受けられるようになるには、まだまだ及んでいないということがこのデータからわかります。 変化しつつある各国の意識 しかし、グローバルな視点から見ると、世界的には教育を推進する傾向にあると考えられます。世界的な識字率は過去30年の内に劇的に上昇していることが判明していますが、この背景には多くの国がinclusive education(全ての子供が平等に教育を受けられ、個性を尊重して学ぶ教育方法)を取り入れているからであると言われています。 特に、北アフリカや中東では一世代の違いだけで識字率の上昇が著しくなっています。一方で、世界的に見た教育レベルとしては、一部の先進国は低迷状態にあるようにも感じられます。USAは教養のある国としては、世界6位に位置していますが、計算力と識字力のテストスコアランキングでは世界31位となっています。 教養のある国ランキング(上図)ではUSAは6位だが、計算力と識字力のスコアランキング(下図)ではUSAは31位である。 ここから、USAは他の国に比べて計算及び識字の習熟度において遅れを取っていることが示唆されています。GatherIQの記事では、教育を推進するためには、教育者や生徒を確実に支援するための政策を制定することが第一であると述べられています。生産の効率化や経済成長を促すためには、各国がより真摯に、子供たちに教育を享受させる取り組みについて熟慮することが必要不可欠でしょう。 このように、GatherIQを用いて一般の人でもデータを用いて考察や現状認知を行うことが可能です。他にも、教育のテーマに対して、これから子育てを行う主婦の方や教育関係者の方にとっては、GatherIQのデータから初等教育が国にとっても当人にとっても非常に重要であることが読み取ることができるかも知れません。そこから、初等教育を受ける子供たちに念入りに教育を促す動きが生まれる可能性は容易に予測できると思います。 以上がGatherIQの御紹介でした。GatherIQについて更に知りたいという方はこちらからアクセスください。また、SASのWebページやブログではData for Goodに関する考察や情報も公開していますので、併せて御覧ください。 SAS JapanではStudent Data for Good communityを開催し、Data for Goodの達成を目指す学生の参加を募集しています。 興味をお持ちでしたらJPNStudentD4G@sas.comまでご連絡ください。

Advanced Analytics | Machine Learning | SAS Events
SAS Global Forum 2019 論文紹介シリーズ 第2回「PythonからSAS9を活用するコーディング事例紹介」

前回に引き続き、SAS Global Forum 2019で公開された論文をご紹介します。今回は、SASユーザを含め、SAS言語とオープンソース言語の機能を共に活用することで、様々なビジネス課題に対応できるようなコーディング事例をいくつかピックアップします。 1.Deep Learning with SAS® and Python: A Comparative Study ご存知の通り、SASはディープランニングに関する専門性の高いかつ豊富な機能と製品を提供しています。この論文では、SASとPythonに対し、それぞれ違うデータタイプ(例えば:構造化と非構造化、イメージ、テキスト、シーケンシャルデータ等々)を使ったディープラーニングのモデリングを比較する論文となります。主にSAS環境でのディープランニングフレームワーク、そして、SASとPython言語のディープランニングプログラミングの違いによって、それぞれのメリットとデメリットの紹介となります。 2.Utilization of Python in clinical study by SASPy Pythonは近年最も使われているプログラミング言語になってきました。そして現在、機械学習とAI領域でもよく使われています。Pythonの一番のアドバンテージはその豊かなライブラリを通じ、多種多様な分析をインプリメントできることです。SASは臨床研究領域で最も強力な分析製品でありながら、さらにPythonを使うことによって、そのレポーティング機能、例えば、データ管理、データ可視化を拡張できます。これもSASプログラマーユーザのキャリアに対し、潜在的なメリットです。その様な背景において、SASPyはその可能性を実現します。SASPyはPythonコードの中でSASのセッションをスタートできるPythonパッケージライブラリとなります。この論文では、基本的なSASPyの使用方法とSASのデータセットを処理するヒントについて紹介しています。そして、Pythonを使って、臨床研究で使えそうなレポーティング機能について検討します。 3.Everything is better with friends: Executing SAS® code in Python scripts with SASPy SASPyはSASがPythonプログラミング用に開発したモジュールで、SASシステムに代わるインタフェースを提供しています。SASPyを通じて、SASプロシージャはPythonスクリプトと構文で実行することができ、かつ、SASデータセットとそれに相当するPythonデータフレームの間にデータを転送することも可能です。それにより、SASプログラマーはPythonの柔軟性を利用してフロー制御を行うことができ、PythonプログラマーはSAS分析をスクリプトに組み込むこともできます。この論文では、Pythonスクリプト内で通常のSASコードとSASPyの両方を使用した一般的なデータ分析タスクの例を幾つか紹介し、それぞれの重要なトレードオフを強調し、多種プログラミング言語ユーザになれることの価値を強調しています。SAS University Edition用のJupyterLabインタフェースを使用し、それらの例を再現するための説明も含まれています。それらのSASとPythonのインテグレーション例はJupyter Notebookとしてダウンロードできます。 ダウンロード:https://github.com/saspy-bffs/sgf-2019-how 4.Modeling with Deep Recurrent Architectures: A Case Study of

Analytics
SAS Global Forum 2019 論文紹介シリーズ 第1回「OSS言語から活用できるオープンなSASプラットフォーム」

例年と同様に、SAS Instituteはグローバル各国でフォーラムを開催しました。日本ではSAS Forum Japanと題して6月11日に東京の六本木で開催され、また、アメリカSAS本社はダラスでSAS Global Forum 2019を開催(4/28~5/1)し、その中では多数の論文が発表されています。本シリーズでは、これらの論文の中から、OSSとSASプラットフォーム製品のユースケース、OSSコーディング開発・運用事例、クラウドアーキテクチャの設計と運用等々の注目された内容を選別した上で、4回に分けて紹介していきます。 第1回「OSS言語から活用できるオープンなSASプラットフォーム」 近年、OSS(オープンソースソフトウェア)プログラミング言語が数多くのデータサイエンティストや企業によって利用され、分析モデルが開発されています。PythonやR、Luaなどデータサイエンティストや開発者たちに好かれたプログラミング言語はアナリティクス業界に革新をもたらしました。SASはそれらのOSSユーザと企業の要望に応じ、従来のSASユーザとOSSプログラミングユーザーたちが共同作業、かつ連携できるようなプラットフォームを提供しています。 今回は、OSSユーザがどのような方法を利用し、SASプラットフォーム上で自由自在なデータ分析を行えるのかをテーマとし、SAS Global Forumで公開した論文をご紹介します。 1.Open Visualization with SAS® Viya® and Python この論文では、オープンソース言語の一つであるPythonに関し、SAS ViyaのSWAT(Scripting Wrapper for Analytics Transfer)を通じて、メインにオープンソースのグラフィックテクノロジー、特にPythonのMatplotライブラリ、そして現在主流となっているD3の可視化フレームワークとのインテグレーション技術について紹介しています。本文で用いた例は、統計プログラミングのサンプルを使って、Jupyter NotebookからSAS Viyaの機能を呼び出し、最終的に、mpld3で作られた静的なグラフを動的グラフに変更した例となります。 2.SWAT’s it all about? SAS Viya® for Python Users SASは2016の7月にPythonライブラリSWATをリリースしました。それにより、PythonユーザはSASのCASに接続して、SAS Viyaの各種機能を使えるようになりました。SWATを利用することで、SAS言語バックグラウンドを持っていないユーザには、SAS言語ユーザと同じくCASとSAS Viyaの各種機能を使用できるようになります。この論文では、Python SWATを通じて、CASセッションへ接続し、PythonからCASへデータをロードし、さらにCASアクションで実行して分析する一連作業をデモンストレーションの形で紹介します。使用するデータは、SASほかのアプリケーション、例えばVisual Analyticsなどでも利用できる様子を紹介します。 3.Deploying Models Using SAS® and Open Source 近来、機械学習と人工知能の議論はほとんどの時間がモデル開発の議論に費やされています。しかし、モデルによって得られる洞察をどのように効率的にビジネス価値創出に適用するかに関してはほとんど議論されていません。この論文では、モデルの構築に応じ、Docker、Flask、Jenkins、Jupyter、Pythonなどのオープンソースプロジェクトとの組み合わせで、SASを使用してモデルを展開するためのDevOpsプリンシパルの使用例を紹介します。例に使われている関連アプリケーションはグローバルなユーザベースを持つ資産上のレコメンド・エンジンとなります。この使用例は、セキュリティ、待ち時間、スケーラビリティ、再現性に直面する必要があることをめぐってディスカッションします。最後に、その解決策となるソリューションとその課題となる部分を含めて説明します。 4.SAS®

Artificial Intelligence
SAS Viya:セマンティック・セグメンテーション(Semantic Segmentation)を試してみた

PythonからSAS Viyaの機能を利用するための基本パッケージであるSWATと、よりハイレベルなPython向けAPIパッケージであるDLPyを使用して、Jupyter NotebookからPythonでSAS Viyaの機能を使用してセマンティック・セグメンテーション(Semantic Segmentation)を試してみました。 大まかな処理の流れは以下の通りです。 1. 必要なパッケージ(ライブラリ)のインポートとセッションの作成 2. 画像データ内容の確認とセグメンテーション用データセットの作成 3. モデル構造の定義 4. モデル生成(学習) 5. セグメンテーション(スコアリング) 1. 必要なパッケージ(ライブラリ)のインポートとセッションの作成 swatやdlpyなど、必要なパッケージをインポートします。 %matplotlib inline # SWAT パッケージのインポート import swat as sw import sys   # DLPy パッケージのインポート import dlpy from dlpy.network import * from dlpy.utils import * from dlpy.applications import * from dlpy.model

SAS Events | Students & Educators
0
第4回「データサイエンティストのキャリアと活躍のかたち」レポート

データサイエンティストを目指す学生向けのセミナー「データサイエンティストのキャリアと活躍のかたち」の第四回が7/25(木)に開催されました。第一回・第二回・第三回に引き続き、今回も大変多くの学生の皆様に参加していただき、有意義なセミナーとなりました。本記事では、当日の様子についてご紹介します。 本セミナーでは、データサイエンティストのキャリアと活躍の場や、ビジネス上でアナリティクスがどのように活用されるかについて、スピーカーがこれまでの経験をもとに紹介しました。 SHIONOGIにおける開発領域のData Scientistとは? はじめに、データサイエンティストのキャリアについて、塩野義製薬株式会社の木口さんのご講演です。木口さんはSHIONOGIのData Science Groupに所属されている方です。Data Science Groupは主にデータサイエンティストやプログラマーで構成され、生物統計家やデータマネージャーと協業して医薬品開発を行っています。 最初に、医薬品開発におけるデータ活用の様子について紹介していただきました。医薬品開発領域では1つの医薬品が世の中で販売されるまでに、臨床試験を何度も繰り返して仮説を検証します。Data Science Groupは、この過程にデータ活用とデータ駆動型医薬品開発を取り入れています。 医薬品開発で活用されるデータには、生物統計家が仮説の推定・検定を行うための臨床試験データやデータサイエンティストが新たな仮説を設定するためのリアルワールドデータ、仮想臨床試験などをするためのシミュレーションデータがあります。これらのデータを組み合わせて活用して医薬品開発の効率化を行っています。 次にデータサイエンティストに求められる役割とスキルについてです。SHIONOGI医薬品開発領域が考えるデータサイエンティストの役割は、科学的にデータを活用するスペシャリストとして、データ駆動型の業務改善を行い、製品価値最大化のためのデータ駆動型医薬品開発をすることであると伝えていただきました。 また、製品価値最大化のためのデータ駆動型医薬品開発はデータサイエンティストが社内外のデータに基づく仮説の導出をし、その仮説をもとに生物統計家が計画立案をして臨床研究で検証するというサイクルがうまく動くことが理想形であると伝えていただいきました。 この役割を果たすために必要なスキルには、統計理論の知識やプログラミングの技術、ITスキルなどもありますが、木口さんは特にチームの中で自分の思っていることを伝える・相手の意思を受け入れるといった「ビジネススキル」が大切であるとおっしゃっていました。 実際にSHIONOGIの様々な分野の技術を組み合わせた活動事例の紹介をしていただいた最後に、「仕事は、多くの失敗から得たヒントをパズルのように組みあわせ、成功に導くこと」であるというメッセージを学生の皆さんに伝えていただきました。ピースは個人が持つ得意な部分・とがった知識でもあり、それらを組み合わせることで新しい仮説を導くことが役割であるという言葉が印象的でした。 不正・犯罪対策におけるアナリティクスの活用 続いて、不正・犯罪対策の分野おいて活用されるアナリティクスについて、SAS Japanの新村による講演です。 今回の講演では、「不正・犯罪対策」の一例としてマネーミュール(知らずのうちに不正な送金に加担してしまう人)を金融機関とのやり取りから検知する活用例を紹介しました。 怪しいお金のやり取りを不正犯罪の被害者口座から見つけるためには、フィルタリングや異常値検知、機械学習、ネットワーク分析など様々な手段が使われています。それぞれの手段には特徴と難点があるため、SASでは複数の適切な手法を組み合わせて効率的に活用し、高精度な不正検知と新たな不正への対応を実現する(ハイブリットアプローチ)を取り入れています。 後半には、不正検知におけるアナリティクスの特徴をいくつか紹介しました。まず、サービス設計によるモデル・チューニング方針について、 ・本当に不正が起きていて、その不正を予測できる検出率を高める ・本当は不正が起きていないのに、それを不正と予測してしまう誤検知を減らす の両方について考えなければならなりません。また、不正検知はビジネスにおいて対外的な説明を求められるため、誰が見ても検知結果を理解できるような可視化をすることが重要です。さらに、不正対策コストと不正被害額の差を考慮するために経済合理性と理想のバランスが求められることも特徴です。 今回の講演内容はどちらも“データサイエンス”の分野としてイメージが浮かびにくいものだったように思われます。「いい医薬品を開発する」ことや「不正・犯罪を検知する」ためのアナリティクスについて知るきっかけになる、とても貴重な講演でした。 SAS student Data for Good communityの紹介 最後に、学生のデータサイエンスの学びの場としてSAS Student Data for Good communityと Data for Good 勉強会について紹介しました。 Data for Goodとは様々な社会問題に対し、データを用いて解決する取り組みです。今回はData for Goodの具体例としてシアトルの交通事故改善を紹介しました。学生が主体となってこの活動をより推進するため、SASではと「Data for Good勉強会」と「SAS Student

Data Management
SAS Japan 0
アナリティクス・ライフサイクルにおけるデータ準備 ─ データ準備の重要性

この記事はSAS Institute Japanが翻訳および編集したもので、もともとはIvor G. Moanによって執筆されました。元記事はこちらです(英語)。 Webセミナー「Data Preparation in the Analytical Life Cycle」について このWebセミナーでは「アナリティクス・ライフサイクルにおけるデータ準備」というテーマを取り上げ、データ準備の定義と、このライフサイクルの各ステップについて論じています。最初に現在の市場状況とデータ準備に関する人々の見方を考慮に入れた上で、議論の対象は、アナリティクス・ライフサイクルを構成する様々な領域と、データ準備が果たす役割へと移ります。そして最後に、データ・ガバナンスの役割を検討します。この簡潔版のブログ投稿シリーズでは、同Webセミナーから、いくつかの主題を取り上げて論じています。 データ準備の概念と重要性 「データ準備」とは、アナリティクスやビジネスインテリジェンス(BI)で利用するためのデータを収集/処理/クレンジングする工程に含まれる全てのタスクを指します。したがって、データ準備には、アクセス、ロード、構造化、パージ、結合(ジョイン)、データタイプの調整、フィールド値の整合性チェック、重複のチェック、データの統一化(例:1人の人物に2つの誕生日が存在する場合)などが含まれます。 データの量やソースの数が増えるにつれ、適切なデータ準備を行う取り組みは、コストと複雑性がともに増大していきます。そのため、データ準備は今、市場を形成しつつある新たなパラダイムとなっています。また、データ準備は事実上、セルフサービス型のデータ管理の取り組みと化しています。従来のデータ管理プロセスは、ある程度まではデータ統合および準備を実行できますが、今では、ダイナミックかつ詳細な作業や最終段階の作業に関しては、データ準備ツールを用いてセルフサービス方式で実行されるようになりつつあります。 明らかなことは、データを整形し、アナリティクスに適した状態にする上でデータ準備がますます重要になりつつある、ということです。今では、以前よりも多くの企業がデータドリブン(データ駆動型)を実現しています。それらの企業はデータに基づいて意思決定を行いますから、「データに素早くアクセスし、分析に適した状態に準備できること」が極めて重要です。Hadoopなどのビッグデータ環境は、「それらの環境からデータを移動することが不可能」ということを意味します(が、それは問題とはなりません)。その代わり、「アナリティクス向けにデータを準備する工程の一環として、ビッグデータを適切な場所で適切に処理し、その結果のデータを他のソースと組み合わせること」が重要となります。 したがって、データ準備は、あらゆるアナリティクス・プロジェクトの不可欠な構成要素と言えます。適切なデータを取得し、それを適切な状態に準備することによってこそ、アナリティクスの疑問に対して優れた答えを得ることが可能になるのです。質の低いデータや不適切に準備されたデータを使用すると、分析結果が「信頼に足るもの」になる可能性は低下してしまいます。 アナリティクス・ライフサイクルにおけるデータ準備を理解する アナリティクス・ライフサイクルには「ディスカバリー」および「デプロイメント」という2つの主要なフェーズが存在します。「ディスカバリー」プロセスは、イノベーションを生み出すビジネス上の疑問を提起することによって推進されます。したがって最初のステップは、ビジネスにおいて何を知る必要があるかを定義することです。その後、ビジネス上の疑問は「問題を説明する表現」へと変換され、その結果、予測的アナリティクスを用いてその問題を解決することが可能になります。 そして言うまでもなく、予測的アナリティクスを利用するためには、適切に準備された適切なデータが必要不可欠です。Hadoopや高速化・低価格化するコンピューターといったテクノロジーの進歩により、従来では考えられなかったほど大量かつ多様なデータを蓄積し利用することが可能になっています。しかしながら、この動向は、多種多様なフォーマットのソースデータを結合する必要性や、生データを “予測モデルへの入力として利用できる状態” に変換する必要性を増大させたにすぎません。コネクテッド・デバイスが生成する新しいタイプのデータ(例:マシンセンサー・データやオンライン行動のWebログなど)の出現により、「データ準備」段階は以前にも増して難しい課題領域となっています。多くの組織は依然として、「データ準備タスクに過大な時間を費やしており、場合によっては[全作業時間の]最大80%を占めている」と報告しています。 データ準備は継続的なプロセスである データ探索では、対話操作型かつセルフサービス型のビジュアライゼーションツール群を活用します。これらのツールは、統計知識を持たないビジネスユーザーから、アナリティクスに通じたデータサイエンティストまで、幅広いユーザーに対応している必要があります。また、これらのユーザーが関係性/トレンド/パターンを洗い出し、データに関する理解を深めることを可能にしなければなりません。言い換えると、このステップ(=探索)では、プロジェクト初期の「疑問提起」段階で形成された疑問やアプローチを洗練させた上で、そのビジネス課題を解決する方法についてアイディアの開発とテストを行います。ただし、より照準を絞ったモデルを作成するために変数の追加/削除/結合が必要になる可能性もあり、その場合は当然、「データ準備」を再び実行することになります。 「モデル作成」段階では、分析モデルや機械学習モデルを作成するためのアルゴリズムを使用します。その目的は、データ内に潜む関係性を浮き彫りにし、ビジネス上の疑問を解決するための最良のオプションを見つけ出すことです。アナリティクス・ツールは、データとモデリング手法をどのように組み合わせれば望ましい結果を高い信頼性で予測できるかを特定するために役立ちます。常に最高のパフォーマンスを発揮する唯一万能のアルゴリズムは存在しません。そのビジネス課題を解決するための “最良” のアルゴリズムが何であるかは、そのデータによって決まります。最も信頼性の高い解を見つけるためのカギは実験を繰り返すことです。適切なツールでモデル作成を自動化することにより、結果が得られるまでの時間が最小化され、アナリティクス・チームの生産性が向上します。そして、ここでも再び、さらなるデータが追加される可能性があります。 常に最高のパフォーマンスを発揮する唯一万能のアルゴリズムは存在しません。そのビジネス課題を解決するための “最良” のアルゴリズムが何であるかは、そのデータによって決まります。 「実装」段階へ もちろん、モデルの作成が済んだら、それらをデプロイ(=業務システムに組み込んで運用)する必要があります。しかし、その後も「データ準備」の取り組みは停止しません。モデルの良否はそれが利用するデータに左右されるため、モデル(およびデータ)については鮮度を維持し続けなければなりません。データ準備とデータ管理は、極めて継続的なプロセスなのです。

Data Management
SAS Japan 0
アナリティクス・ライフサイクルにおけるデータ準備 ─ ガバナンス、品質、準備

この記事はSAS Institute Japanが翻訳および編集したもので、もともとはIvor G. Moanによって執筆されました。元記事はこちらです(英語)。 Webセミナー「Data Preparation in the Analytical Life Cycle」について 我々は最近、「アナリティクス・ライライクルにおけるデータ準備」に関するWebセミナーを録画しました。このセミナーでは、データ準備の定義と、アナリティクス・ライフサイクルの各ステップの概要を押さえた上で、現在の市場状況とデータ準備に関する人々の見方を確認します。その後、議論の対象は、アナリティクス・ライフサイクルを構成する様々な領域と、データ準備が果たす役割へと移ります。そして最後に、データガバナンスの役割を検討します。 この簡潔版のブログ投稿シリーズでは、同Webセミナーから、いくつかの主題を取り上げて論じています。 昨今では、欧州連合(EU)の「一般データ保護規則(General Data Protection Regulation: GDPR)」やその他の規制の結果として、データ管理に関する新たなガバナンス要件が出現しています。これらの要件はデータ準備プロセスに対し、いくつかの興味深い影響を及ぼしています。この投稿はデータ準備に関する投稿シリーズの第3弾であり、この分野に見られる最近の変化と、それらが業務にどのように影響を与えているかに注目します(シリーズ第1弾はこちら、第2弾はこちら)。また今回は、「アナリティクス・ライフサイクルにおけるデータ準備」工程を整備する取り組みに関して、いくつかの重要な教訓を引き出します。 データガバナンスは必須であり、「データ準備」工程もその対象である これは非常に重要なポイントです。データ準備は、多くの企業や組織にとって目新しい領域かもしれません。特に、これを独立した領域として扱うアプローチに関しては、馴染みが薄いでしょう。しかしながら、データ準備のプロセスが組織のデータガバナンス・プロセスおよびルールに準拠しなければならない点が変わるわけではありません。これはデータ統合/データ管理ソリューションにも当てはまります。言い換えると、全てのデータ関連プロセスは、組織の総合的なデータガバナンス・プロセスに適合しなければなりません。 データ準備はなぜ重要なのでしょうか? 第一の理由は、アナリティクスの取り組みの大部分が、アナリティクス・ライフサイクル全体にわたって様々なユーザーグループ(例: IT部門、データサイエンティスト、ビジネスユーザー)の協働作業によって行われるからです。全てのユーザーが同じデータと同じ原則を用いて作業する必要があり、さもないと、分析モデルの作成結果は、最良の場合でも「あいまい」となり、最悪の場合は「全くの的外れ」となりかねません。 ガバナンスは用語集の整備を促進し、透明性の向上を実現することができます。 このコラボレーションは、データガバナンス原則に従わなければならず、また、この原則によって推進されなければなりません。これは言い換えると、データガバナンスは、このプロセス[=アナリティクス・ライフサイクル]の重要な構成要素であり、また、相互協力や協働作業の向上を実現するために活用されるべきである、ということです。データガバナンスは決して、「ありとあらゆる手を尽くして克服または迂回する必要のある障害物」と見なされるべきではありません。 ガバナンスは用語集の整備を促進し、透明性の向上を実現することができます。これは実際問題としては、「毎日データを用いて作業するわけではない非技術系のビジネスユーザーでも、自律的に取り組むことができ、セルフサービス操作でデータ品質を心配することなく必要な情報を取得できるようになる」ということを意味します。また、組織の側では「全てのユーザーが高品質なデータを取得していること」、そして「データが法的または倫理的な要件に則して適切に利用されていること」を確信できるようになります。 データ準備は継続的なプロセスである データ探索では、対話操作型かつセルフサービス型のビジュアライゼーションツール群を活用します。これらのツールは、統計知識を持たないビジネスユーザーから、アナリティクスに通じたデータサイエンティストまで、幅広いユーザーに対応している必要があります。また、これらのユーザーが関係性/トレンド/パターンを洗い出し、データに関する理解を深めることを可能にしなければなりません。言い換えると、このステップ(=探索)では、プロジェクト初期の「疑問提起」段階で形成された疑問やアプローチを洗練させた上で、そのビジネス課題を解決する方法についてアイディアの開発とテストを行います。ただし、より照準を絞ったモデルを作成するために変数の追加/削除/結合が必要になる可能性もあり、その場合は当然、「データ準備」を再び実行することになります。 セルフサービスとデータ準備 したがって、現代のデータ準備ツールは、セルフサービスを加速できるようにデータガバナンス機能と緊密に連携しなければなりません。セルフサービス・アナリティクスが機能するのは、セルフサービス型のデータ準備環境と一緒に運用される場合のみです。残念なことですが、「セルフサービス・アナリティクスへのアクセスを与えられても高品質なデータを利用できない状況に置かれたビジネスユーザーは、利用できるソースが何であれ、そこから単純に品質を検討することなく、自身が必要とするデータを引き出すだけであり、その場合でも結果は良好だろうと思い込んで疑わない」というのは真実です。また、アナリティクス・ライフサイクルが真に機能するのは、あらゆる場所にセルフサービスを整備した場合のみです。 したがって、「アナリティクス・ライフサイクルにおけるデータ準備」については、2つの重要なメッセージがあります。 恐らく最も重要なのは、アナリティクス・ライフサイクルは統合型のプロセスである、と理解することです。このプロセス内で活動するユーザーグループは多岐にわたり、このライフサイクルの様々な段階で運用されるツールも多種多様です。そのため、「調和のとれたコラボレーション」と「各段階間の遷移の容易さ」が極めて重要なのです。 恐らく最も重要なのは、アナリティクス・ライフサイクルは統合型のプロセスである、と理解することです。 私は、アナリティクスとデータ準備 ── ここでの「データ準備」とはデータ品質、データ統合、データガバナンスを確保するプロセスを意味します ── の両方をカバーする統合アナリティクス・プラットフォームこそがアナリティクス・ライフサイクル全体を促進する、と考えます。これは非常に重要なポイントです。アナリティクス・プロセスを加速したいとお考えのお客様の場合は特に、統合プラットフォームが優れた効果を発揮します。 第二の重要ポイントは、データガバナンスが担う中心的役割です。私の経験によると、ガバナンスは、アナリティクス・ライフサイクル内でセルフサービスを実現するために不可欠なサポート機能です。ユーザーが自立して行動し、例えば用語集を利用して、あるいはメタデータ管理機能を通じて、利用したいデータや適切なコンテキストに即したデータについて自身が必要とする知識を入手できる、ということは極めて重要です。したがって、ガバナンスはアナリティクス・ライフサイクルの必要不可欠な構成要素である、と言えるのです。 詳しい情報については、「アナリティクス・ライフサイクルにおけるデータ準備」について論じているWebセミナー(英語)をご覧ください(視聴にはユーザー登録が必要です)。

Data Management
SAS Japan 0
アナリティクス・ライフサイクルにおけるデータ準備 ─ 準備作業のトレンド

この記事はSAS Institute Japanが翻訳および編集したもので、もともとはIvor G. Moanによって執筆されました。元記事はこちらです(英語)。 Webセミナー「Data Preparation in the Analytical Life Cycle」について このWebセミナーでは「アナリティクス・ライフサイクルにおけるデータ準備」というテーマを取り上げ、データ準備の定義と、このライフサイクルの各ステップについて論じています。最初に現在の市場状況とデータ準備に関する人々の見方を考慮に入れた上で、議論の対象は、アナリティクス・ライフサイクルを構成する様々な領域と、データ準備が果たす役割へと移ります。そして最後に、データ・ガバナンスの役割を検討します。この簡潔版のブログ投稿シリーズでは、同Webセミナーから、いくつかの主題を取り上げて論じています。 この投稿は、アナリティクス・ライフサイクルにおけるデータ準備の役割に関するWebセミナーに基づく投稿シリーズの第2弾です。第1弾では、データ準備がアナリティクス・ライフサイクルの中にどのようにフィットするかを論じました。この投稿では、データ準備に関するいくつかのトレンドと、その結果として進化を遂げた構造やプロセスのいくつかを取り上げて検討します。現在のデータ準備パターンの形成を推進してきた主な課題は2つあります。それは、顧客需要に関する課題とデータ品質に関する課題です。 顧客需要 データ準備に関する現状の大部分は、データ量とデータソース数の増大によって推進されています。ビッグデータの出現は、データ・フォーマットの種類の増加や、ソーシャルメディアやマシンセンサーのような新しいデータソースの出現と相まって、データの保管や利用が難しくなることを意味しました。それと同時に、組織や企業は「意思決定をサポートするためにデータを効果的に活用することが、ますます必要不可欠になっている」ということを認識するようになりました。 ユーザーはより一層多くのデータを必要としています。彼らは手元のデータと外部のデータの両方を分析に含められるようになりたいと考えています。セルフサービスの人気が高まっているのは、柔軟性と自律性が高く、より低コストで、より高速であることに加え、統制も容易だからです。また、他の部門のために行う作業が減少します。 ガードナー社は以前、次のようにコメントしました。「セルフサービス型のデータ準備ソフトウェアの市場は、2019年までに10億ドル(1,100億円、1ドル110円換算)に達し、16.6%の年間成長率を示すと想定されます。潜在的なターゲット・ユーザーにおける現在の導入率は5%であり、これが2020年までには10%以上に成長すると想定されます。ベンダーは自社のビジネス戦略を計画する際に、この市場機会を理解しなければなりません」。しかしながら、セルフサービスのこうした急速な普及は、データサイエンティストにとって頭痛の種を生み出します。セルフサービスは高品質なデータ準備を必要としますが、残念ながら、それには時間がかかり、近道はほとんど存在しません。 データ準備工程からアナリティクス工程へのスムーズな遷移は極めて重要です。その実現には強力なアナリティクス機能とビジュアライゼーション機能が必要となりますが、ユーザーが必要な情報をデータから素早く引き出せるようにするためには強力なデータ管理も必要です。 データ準備工程からアナリティクス工程へのスムーズな遷移は極めて重要です。その実現には強力なアナリティクス機能とビジュアライゼーション機能が必要となりますが、ユーザーが必要な情報をデータから素早く引き出せるようにするためには強力なデータ管理も必要です。動きの速い市場では、俊敏な企業になる必要があります! こうした状況を受け、多くの企業では、データ準備やソフトウェア・エンジニアリングを担当するデータエンジニアという新たな職務役割が台頭しています。データエンジニアの仕事は、分析モデルの作成を行うデータサイエンティストにデータを渡す前に行われます。 データ品質の重要性 この新しい台頭中のデータエンジニアという仕事の役割は、データ品質が不可欠であるという事実の認識が広がっていることの証と言えます。言い換えると、データ管理とは、データの収集や整形を行うことだけでなく、データの品質が適切である状態を確保することでもある、ということです。したがって、データ品質は、データ準備の領域においても必要不可欠なテーマとなりつつあります。 SASは以前から、この領域の先頭を走り続けてきました。我々は相当以前から、「データ準備は単なるデータ読み込みに留まらない工程であり、データ品質の問題も含める必要のある工程である」と認識していました。アナリティクス手法はその入力として、価値の高いデータを必要とします。入力データがクリーンかつ高品質でない場合、出力はそれに応じて劣悪なものとなります。なぜなら、アナリティクス手法には、「ゴミを入れれば、ゴミしか出てこない」という格言がまさに当てはまるからです。 入力データがクリーンかつ高品質でない場合、出力はそれに応じて劣悪なものとなります。なぜなら、アナリティクス手法には、「ゴミを入れれば、ゴミしか出てこない」という格言がまさに当てはまるからです。 データの確認と修正 例えばSAS® Data Preparationでは、ユーザーは、どのようなデータがインポート済みで、どのようなデータが利用できるかを見ることができます。ユーザーはデータのサンプルを見てその感触を得ることができ、初見の段階で全てが一目瞭然です。しかも、ユーザーはデータ・プロファイルを見れば、もう少し詳しい情報を確認することもできます。プロファイルには、データが様々な形態で保管されている(例:正式名称と略語が混在している)という情報が示される可能性があります。こうしたデータ状態は、分析モデルに深刻な問題を引き起こしかねないため、複数の異なるデータソースを統合する前の段階で解決されなければなりません。 したがって基本的には、そのデータには今すぐ修正や標準化が必要です。この目的のために利用できる可能性のある解決手段は、いくつも存在します。例えば時系列分析の場合、我々はデータをフィルタリングし、欠損値を含む全ての項目を除去することができます。あるいは、データの表記法に一貫性がない場合には、異常値や重複を除去するために、そのデータを訂正およびクレンジングする必要があります。こうした操作の全てがデータ準備の重要な構成要素であり、それに関する認識と重要性がともに高まり続けているのです。 将来に向かって進むために これら2つの領域(顧客需要とデータ品質)は、データ準備とデータ管理の領域において、および、そこで利用可能なツールにおいて、近年の発展を非常に強力に推進してきました。セルフサービス型のツールは、ますますユビキタスな存在となっており、データ品質を確保する機能要素との組み合わせによって、あらゆる領域で最良のソリューションを実現しています。 次回の投稿では、データ管理に関する新たな規制やガバナンス要件を取り上げます。  

Analytics | Data Management
SAS Japan 0
データ品質を改善する7つのアナリティクス手法

この記事はSAS Institute Japanが翻訳および編集したもので、もともとはGerhard Svolbaによって執筆されました。元記事はこちらです(英語)。 データサイエンティストはデータの取り扱いに多くの時間を費やします。データ品質は、ビジネス課題を解決するために機械学習を適用したり、AIモデルをトレーニングしたりする上での必須要件です。しかし、アナリティクスとデータサイエンスは、データ品質に関する要件を引き上げるだけではありません。データ品質の改善に多大な貢献を果たすこともできます。 欠損値の補完と複雑な外れ値の検出は、恐らくデータ品質に関して最もよく知られた2大アナリティクス機能ですが、決してこの2つだけがそうした機能というわけではありません。本稿では、アナリティクスでデータ品質を改善できる7つの方法についてご説明します 1. 外れ値の検出 アナリティクスは、標準偏差や分位数のような統計的指標に基づく外れ値検出において重要な役割を果たします。これにより、各変量ごとの外れ値の検出が可能になります。また、外れ値検出には、クラスター分析や距離尺度の手法を含めることもできます。これらの手法は、多変量の観点からデータ内の外れ値や異常値を特定することを可能にします。 予測モデルや時系列手法を用いた個々の外れ値検出は、許容範囲や最適な修正値を個別に計算することを可能にします。全体平均は、望ましくないバイアスを分析に混入させる恐れがありますが、グループ内平均はそれに代わる優れた選択肢となる可能性があります。 アナリティクスとデータサイエンスは、外れ値や妥当性の無い値の検出や特定を実行するための手法を提供するだけでなく、代わりに使用すべき最も蓋然性の高い値に関する提案も行います。 2. 欠損値の補完 アナリティクスは、横断的データや時系列データの中の欠損値に対する代替値を提供することができます。平均ベースの手法から、個別の補完値を生成する手法まで、様々な補完手法が存在しますが、いずれも決定木や、時系列向けのスプライン補完のようなアナリティクス手法に基づいています。欠損値の補完により、不完全なデータセットでも分析に使用することが可能になります。 3. データの標準化と重複除去 分析するに当たってユニークキーが利用できないデータベースの中で重複を特定および排除するタスクは、レコード間の類似度を記述する統計的手法に基づいて実行することが可能です。これらの手法は、住所、氏名、電話番号、口座番号のような情報に基づき、レコード間の近接度や類似度に関する指標を提供します。 4. 様々に異なるデータ量のハンドリング アナリティクスを活用すると、サンプルサイズの設計と検定力分析が求められる対照実験のための最適なサンプルサイズの設計が容易になります。予測モデル作成時にサンプルが小さい場合や、イベント数が少ない場合のために、アナリティクスは希少イベントをモデル化するための手法を提供します。時系列予測に関しても、アナリティクスでは、いわゆる「間欠需要モデル」を利用できます。このモデルは、不定期かつ低頻度に発生する非ゼロ数量のみを用いて時系列をモデル化します。 5. アナリティクスに基づく入力変数変換 アナリティクス手法は、選択した分析手法に適合するように、分布に対する変数変換を実行できます。対数変換や平方根変換は、例えば、「右に裾を引いているデータ」を正規分布に変換するために使用されます。 多くのカテゴリーを伴う変数に関しては、アナリティクスでは、カテゴリを組み合わせるための複数の手法を利用できます。この場合、複数のカテゴリーに対する組み合わせロジックは、各カテゴリー内のオブザベーション数と、ターゲット変数に対する関係とに左右されます。この手法の例としては、決定木や根拠の重み(WOE)計算があります。 テキストマイニングを利用すると、自由形式のテキストを、アナリティクス手法で処理可能な「構造化された情報」に変換することができます。 6. 予測モデル作成のための変数選択 変数選択のための手法は数多く存在します。これらを利用すると、予測モデルを作成する際に、ターゲット変数と強い関係を持つ変数のサブセットを特定することができます。これらの手法の例としては、R2(=決定係数)のようなシンプルな指標や、LARS、LASSO、ELASTIC NETのような高度な指標があります。 多くのアナリティクス手法は、分析モデル自体の中で変数選択のための様々なオプションが利用可能です。例えば、回帰における変数増加法、変数減少法、ステップワイズ法によるモデル選択などが挙げられます。 7. モデル品質やwhat-if分析の評価 アナリティクス・ツールはしばしば、モデルの作成や検証を支援するように設計されています。予測モデルの作成時には、例えば、利用可能なデータが持つ予測力を初期段階で素早く洞察することが重要となるケースは多々あります(これを「高速予測モデリング」と呼ぶこともあります)。 また、これらのツールは、モデルの品質やwhat-if分析用の特徴量を迅速に評価する手段も提供します。what-if分析は、変数や変数グループの重要度を判断する際に特に役立ちます。what-if分析は、特定の変数群が利用できない場合にモデルの予測力がどのように変化するか推計します。 これらの例の出典は、SAS Pressの書籍『Data Quality for Analytics Using SAS』(SASで実現するアナリティクス向けのデータ品質) です。ガーハード(Gerhard)氏によるコンテンツは、Github、SAS Support Communities、同氏のデータサイエンス関連書籍でも見つかります。

Artificial Intelligence
SAS Viya:Python API向けパッケージ:DLPyの最新版1.1拡張機能とは

SAS Viyaのディープラーニング機能をPythonから利用するためのハイレベルAPIパッケージの最新版であるDLPy1.1では、主にCNN(Convolutional Neural Network)に関連する機能が拡張されています。 主な拡張機能: ・新たに3つのネットワーク構造に対応 【U-Net】 元々は、医療用画像のセグメンテーション向けに開発されたネットワークです。 (出典:https://lmb.informatik.uni-freiburg.de/people/ronneber/u-net/) 【MobileNet】 モバイル端末のようなリソースの少ない環境でも、畳み込み計算を分割(Depthwise Separable Convolution)することで、軽快に、素早く、そして精度の高い結果を得ることができると言われているネットワークです。 左が一般的な畳み込み構造。右が、MobileNetの構造。(出典:https://arxiv.org/pdf/1704.04861.pdf) 【ShuffleNet】 MobileNet同様に軽量軽快なネットワークですが、MobileNetでの畳み込みの分割に加えて、その名の通り、チャンネルをシャッフルしてチャンネル間での畳み込みを行い、特徴抽出を効率化するネットワーク構造です。 (出典:https://arxiv.org/pdf/1707.01083.pdf) ・上記ネットワーク構造に伴う、畳み込み層機能の拡張 【transpose convolution(転置畳み込み)】 Deconvolution(逆畳み込み)とも言われ、元となる画像に0 paddingして拡大してから畳み込む手法です。(上記U-Netに関連) 【group convolution(グループ化畳み込み)】 入力層をチャンネル方向にグループ分割して、グループごとに畳み込みを行い、最後に結合して出力する手法です。分割することで計算量を小さくすることができます。(上記MobileNet、ShuffleNetに関連) ・画像解析手法の拡張 【物体検出(Object Detection)手法にFaster R-CNNを追加】 R-CNNからFast R-CNN、そしてFaster R-CNNへと処理時間の短縮と精度向上が図られ進化してきているアルゴリズムです。 (出典:https://arxiv.org/pdf/1506.01497.pdf) DLPyの従来版からサポートしているYOLOに比べると処理時間はかかりますが、より高い精度を得ることができます。 【新たにセグメンテーション(Semantic Segmentation)に対応】 セグメンテーションは、画像中に存在する複数の物体や領域に対して、ピクセルレベルで推定する問題です。画像を入力すると、各画素に対して識別結果が付与された画像を出力します。一般的には、 Nクラスのセグメンテーションモデルは、Nチャンネルの出力画像を出力し、各チャンネルの画素値は各クラスの確率を表します。(上記U-Netに関連) 以上のように、PythonユーザーがDLPyを通して活用することができる、SAS Viyaのディープラーニング(CNN)機能が拡張されています。 ※DLPyの詳細に関しては、Githubサイトでご覧いただけます。 ※Enterprise Open Analytics Platform 「SAS Viya」 を知りたいなら「特設サイト」へGO!

Machine Learning | Students & Educators
0
オンラインコース「Machine Learning Using SAS Viya」のご紹介(Week5・6)

本記事では、SASのオンライン学習コース「Machine Learning Using SAS Viya」について引き続きご紹介します。このコースはGUI上で機械学習理論を学習できる無料のプログラムです。ご登録方法やWeek1・2については前々回の記事を、Week3・4については前回の記事をご参照ください。最終回となる本記事では、Support Vector Machineを扱うWeek5と、Model Deploymentを扱うWeek6をご紹介します。 Week5:Support Vector Machines Week1・2、Week3・4と同様に、通信事業会社の顧客解約率をテーマに機械学習の具体的手法について学習します。Week5ではサポートベクターマシンという手法を用い、解約可能性に基づき顧客を分類するモデルを作成します。 ・Building a Default Support Vector Machine Model Week5で扱うトピックはサポートベクターマシン(SVM)です。画像認識や文字認識、テキストマイニングで用いられることが多い手法で、複雑なパターンもフレキシブルに表現できるものの、結果の解釈が難しいという特徴を持ちます。分類問題に用いられることが多く、最も簡単な例としては、下の画像のように二種類の出力を分ける直線が挙げられます。この例では分類可能な直線は何通りも考えられますが、マージン最大化という手法を用いて最適な分類線を選択します。本セクションではこれらのSVMの基礎を学習しましょう。 ・Modifying the Model Methods of Solution 本セクションでは、あるデータセットが通常のSVMで分類できない場合に用いるソフトマージンという手法を学習します。通常のSVMとは異なり、この手法は分類の誤りをある範囲内で許容しますが、それぞれの誤りに対しペナルティを課します。合計のペナルティを最小化する境界を最適な分離平面とみなし、ラグランジュの未定係数法を用いて所望の境界を推定します。ペナルティに関するパラメータを変更しながら、モデルの性能を確認しましょう。 ・Modifying the Model Kernel Function 線形分離不可能なデータでも、ある写像により超平面での分離可能な高次元の特徴空間上の点に変換することでSVMが適用可能になります。この際、その特徴空間内における内積は、カーネル関数と呼ばれるものの評価に置き換えられる(カーネルトリック)という性質を用いると、計算量の爆発を防ぎSVMが実装可能です。このカーネル法を用いて、モデルの性能を改善してみましょう。SVMで扱うのはあくまで超平面であるため幾何的な解釈可能性があると言われるものの、多くの場合、依然として十分に複雑で結果の解釈が困難です。そこで解釈を助ける指標としてICEプロットや変数の重要度について学習します。 Week6:Model Deployment Week1~5ではデータの前処理やモデルの作成について学習してきました。最終回となるWeek6では、Analytics LifecycleのDeploymentの段階を学習します。 ・Model Comparison and Selection 今まで複数のモデルを学習してきましたが、すべての状況において最適なモデルは存在しません。様々な観点でモデル間比較を行い最も高性能なモデルをチャンピオンモデルとして採用します。主に数値的スコアに基づく比較が行われますが、その際、ROC曲線・AUC値を用いたモデル間性能比較や、ゲインチャート(CPHチャート)・LIFTチャートを用いたモデルの採用・不採用の間での比較などが行われます。これらの指標に加えて、ビジネスの文脈に応じ、学習や評価のスピード・実装可能性・ノイズへの頑健性・解釈可能性などを判断基準にすることも考えられます。 ・Model Scoring and Governance Week1ではData, Discovery, DeploymentからなるAnalytics Lifecycleの概要を学習しました。これまで顧客の解約予測モデルを作成してきましたが、Analyticsはそのモデルを使用して終わりではありません。ビジネスの状況は刻一刻と変化し、それに伴って新たなデータが蓄積されていきます。先ほど決定したチャンピオンモデルがいかに高性能であっても、一定期間後に同様の性能を持つかは決して自明ではなく、モデルのモニタリングを通して性能を逐一確認する必要があります。並行して、新たな状況に関してDataの段階から分析します。その際、新たなチャレンジャーモデルを作成し、現行のチャンピオンモデルとの性能比較によりモデルを改善する手法や、新たに入手したデータを用いて逐一モデルのパラメータを調整するオンラインアップデートという手法が用いて、モデルを高性能に維持します。モデル作成後も継続してDataやDiscoveryの作業を行うことが、Analytics

Machine Learning | Students & Educators
0
オンラインコース「Machine Learning Using SAS Viya」のご紹介(Week3・4)

前回に引き続き、SASのオンライン学習コース、「Machine Learning Using SAS Viya」についてご紹介します。これはGUI上で機械学習理論を学習できる無料のプログラムです。ご登録方法やWeek1・2に関しては前回の記事をご参照ください。本記事ではWeek3・4の内容をご紹介します。Week3ではDecision Treeについて、Week4ではNeural Networkについて取り扱います。 Week3:Decision Tree and Ensemble of Trees Week1・2と同様に、通信事業会社の顧客解約率をテーマに機械学習の具体的手法について学習します。Week3では、ディシジョンツリーという手法を用いて、解約しそうな顧客を分類するモデルを作成します。 ・Building a Default Decision Tree Model Week3は右図のようなディシジョンツリーについて学習します。これは、図のように各ノードに与えらえた条件式に基づき入力データを分類するモデルです。結果の解釈が容易である点が大きな特徴ですが、オーバーフィッティングに陥りやすいという欠点もあります。デモを参考に基本的なディシジョンツリーを作成しましょう。   ・Modifying the Model Tree Structure ディシジョンツリーはパラメータとして木の構造を変更する事ができます。最大の深さや子ノードの数を変えると木の大きさが変わり、葉の最大要素数を減らすと分割が細かくなります。データの複雑さや過学習などの観点から各パラメータの及ぼす影響を学習し、実際に条件を変更して結果を比べてみましょう。 ・Modifying the Model Recursive Partitioning ディシジョンツリーの作成手順について学習します。まず、ある一つの集合を複数の集合へ分割する基準(不等式など)を作成します。この際、すべての分割方法を考え、その中から要素を最も適切にグループ化できる基準を選択します。例えば動物をグループ化する下の例については、多くの動物が混じっている上の状態よりも、シマウマの比率が高い下の状態のほうが適切とみなせます。ジニ係数やエントロピーを用いると、このような複数のグループの純度を数値的に比較できます。以上のようなグループ化手順を順々に繰り返し、最終的に一つの木構造を作成します。再帰的分割と言われるこの手法の詳細や、分割選択基準となるエントロピー・ジニ係数について学習し、ディシジョンツリーの理論的構造を把握しましょう。 ・Modifying the Model Pruning ディシジョンツリーは、サイズが過度に大きいとオーバーフィッティングを引き起こし、逆に過度に小さいと十分な汎化性能が得られません。そこで、まず最大のツリーを作成した後、重要でないノードを切り落としていくことでサイズを段階的に小さくし、最終的にバリデーションデータに対するスコアが最大となるサイズのツリーを採用します。プルーニングと言われるこの手法を実践しましょう。ツリーの大きさなどモデルに対して外部から設定する条件はハイパーパラメータと言われ、モデルの性能を高めるにはその最適化(チューニング)が不可欠ですが、本セクションではそれを自動的に行う手法も学習します。   ・Building and Modifying Ensembles of Trees ディシジョンツリーは入力データの影響を受けやすく、微小な変化に対しても大きく構造を変化させるため、安定した構造を取りません。しかし、一般にツリーの構造が変わったとしてもモデルの性能に大きな差が生じないという特徴があります。この性質を活用して、複数の構造のツリーを作成し、その結果を合わせて予測を行うアンサンブルという手法が用いられます。本セクションでは、その代表的手法であるバギング・ブースティング・勾配ブースティング・フォレストについて学習します。また、これらのモデルを実装し、チューニング後のスコアの比較を行います。   Week4: Neural

Machine Learning | Students & Educators
0
オンラインコース「Machine Learning Using SAS Viya」のご紹介(Week1・2)

現在、機械学習が大ブームを巻き起こしており、各種ビジネスへ応用拡大の勢いはとどまるところを知りません。一方で、「“機械学習”という名前は聞くけど、よくわからない…。」、「“機械学習”について学んでみたいけど、プログラミングに自信はない…。」などと考えている方も少なくないはずです。そこで本記事では、煩わしいプログラミングなしで機械学習が学べる「Machine Learning Using SAS Viya」という学習コースについてご紹介します。 「Machine Learning Using SAS Viya」は、オンライン学習プラットフォーム、「Cousera」のコースの一つです。SAS Viya for LearnersというSAS の教育用環境を使用し、オンライン上で実際に手を動かしながら機械学習の基礎を学べます。GUIでの操作が基本であるため、プログラミングに自信のない方でも取り組めることが特徴です。本コースは六週間分のパートに分かれており、無料で教材の内容全ての閲覧が可能です。また、コースを購入すると採点機能の利用や修了証の発行などの機能も利用可能です。コースの言語は英語で、コース内動画は英語字幕に対応しています。 シラバスは以下のとおりです。 Week1:Getting Started with Machine Learning using SAS® Viya® Week2:Data Preparation and Algorithm Selection Week3:Decision Tree and Ensembles of Trees Week4:Neural Networks Week5:Support Vector Machine Week6:Model Deployment 本記事ではWeek1・Week2の内容を各セクションごとにご紹介します。 Week1:Getting Started with Machine Learning using SAS® Viya®

Data for Good | SAS Events | Students & Educators
0
第二回Data for Good勉強会 活動レポート

SAS Japanでは昨年末より”Data for Good”の達成を目指す学生コミュニティ「SAS Japan Student Data for Good community」を運営しています。このコミュニティでは生物の絶滅と人類との関係の分析や通勤ラッシュ時の鉄道混雑緩和など、データを活用した社会課題の解決に取り組んでいます。 二回目となる今回の勉強会では、DataKind社の事例から精神疾患に苦しむ人の生活の向上をテーマに、課題の設定方法をメインに学びました。 精神疾患に苦しむ人々に質の高いケアを提供する 今回扱った事例は、Data for Goodを推進する社会団体であるDataKind社とイリノイ州シカゴで精神疾患の患者を支援している非営利団体であるThresholdsが共同で行ったプロジェクトです。 精神疾患の患者が引き起こす傷害事件や、自殺者の増加、子どもの登校拒否など、精神疾患が原因の社会問題はアメリカにも深刻な影響を与えています。Thereholdsは治療機会や住居の提供を通して精神疾患のある人々の支援を行ってきましたが、資金/人手不足により精神疾患患者に質の高いケアを提供することは困難を極めていました。 そこでDatakind社と共同プロジェクトを開始し、「支援を優先すべき患者を把握する」ことで限られたリソースの中で質の高い支援を行うことを目指しました。このプロジェクトでは、実際のアプローチとして 患者データを一括管理できるデータウェアハウスの構築 支援者が使いやすいダッシュボードの作成 患者間のリスクスコアリングのための予測モデリングの基礎の開発 に取り組んでいます。 3の予測モデリングでは、支援を優先すべき患者を予め把握することで問題解決につなげることを目的にしています。今回のプロジェクトで予測モデリングの土台を築き上げられたことから、今後は精神疾患患者の支援に最良な意思決定のサポートができるようになる見込みです。詳しい内容は記事DataKind社の事例紹介(英語)をご覧ください。 解くべき課題を設定する DataKind社は「支援を優先すべき患者を把握する」ことで資金や人手不足の中でも質の高いケアを提供することに挑みました。 では自分たちならこの問題のどの部分に着目して「課題設定」を行い、その課題を解くにはどのようなアプローチが考えられるのか議論しました。 その中で興味深い意見としては、 課題を「精神疾患の早期発見」と設定し、その解決策として「異変に気付きやすい周りの家族・友人が、簡易的に精神疾患をチェックでき、次にとるべき行動を示してくれるアプリケーション」 といったものがありました。 このアプローチは急な病気やけがの際にインターネット上で緊急度を確認できる救急受診ガイド(東京消防庁)と似た発想であり、どちらも限られたリソースを上手く活用するために機械で判断が可能な部分は機械に任せ、人間がより重要な仕事に時間を割けるようにする取り組みといえます。 上記以外にも様々な意見を交わし、課題の設定方法を学びました。 普段私たちは与えられた課題を解くことはあっても、自分たちで課題を設定する機会はあまりないように思えます。しかしデータ分析において課題の設定は非常に重要で、勉強会を通して意見を共有しながら議論を進められたのは、私たちが取り組んでいるプロジェクトを考える上でも参考になりました。 コミュニティメンバー募集中! SAS Japan Student Data for Good communityでは引き続き学生の参加者を募集しております。社会貢献を目指す活動を通してデータサイエンティストの役割である「課題の設定」から「データを用いた解決法の提示」までの一連の流れを経験できます。 興味をお持ちでしたら下記の事項をご記入の上JPNStudentD4G@sas.comまでご連絡ください。 大学名 / 高校名 名前 メールアドレス また、第4回を迎える学生向けセミナー「データサイエンティストのキャリアと活躍のかたち」 は2019年7月25日(木)19:00~ SAS東京本社(六本木ヒルズ11F)にて開催予定です。 現場で活躍されているデータサイエンティストの方々から、具体的なお仕事の内容や学生の内に学ぶべきこと等をお伝えする予定です。 みなさんのご参加お待ちしております。

Advanced Analytics | Analytics | Artificial Intelligence | Data Visualization | Machine Learning
SAS Viya: ビジュアルパイプラインでスコアリング

SAS Viyaでは、Model Studioを使用し、機械学習のモデル、時系列予測のモデル、テキストマイニングのモデルをGUIベースの簡単マウス操作で作成することができます。モデル生成プロセスをグラフィカルなフロー図として描き、実行するだけです。このフロー図のことを「パイプライン」と呼んでいます。 「SAS Viya: ビジュアルパイプラインで予測モデル生成(基本編)」では、モデル生成と精度評価の基本的な流れを紹介しましたが、今回は、生成したチャンピオンモデルに新しいデータを当てはめてインタラクティブにスコアリングを実行する手順を紹介します。また、スコアリング結果のデータの探索や、エクスポートまで試してみましょう。 「SAS Viya: ビジュアルパイプラインで予測モデル生成(基本編)」で作成したパイプラインでは、勾配ブースティングのモデルの方が精度が高い=チャンピオンモデルだと判断されました。 それでは、このモデルに新しいデータを当てはめてスコアリングを実行してみましょう。 まず、画面左側の機能ノードリストの「その他」セクション内にある「データのスコア」を「勾配ブースティング」ノード上にドラッグすると、「勾配ブースティング」ノードの下に「データのスコア」ノードが追加されます。 「データのスコア」ノードを選択し、画面右側で以下の項目を指定します。 ・モデルに当てはめるデータテーブル名 ・スコアリング結果データの出力先ライブラリとテーブル名 「データのスコア」を右クリックし、表示されるメニューから「実行」をクリックすると、スコアリングが実行されます。 スコアリング処理が完了すると「データのスコア」ノード上に緑色のチェックマークアイコンが表示されます。 それでは、スコアリング結果のデータを見てみましょう。 「データのスコア」ノードを右クリックし、表示されるメニューから「結果」を選択します。 すると、データのスコアの結果画面が表示され、「出力データ」タブ内で、データの中身を確認することができます。「予測:BAD=1」列に、顧客ごとの延滞確率に相当するスコア値が表示されています。 それでは、このデータを探索してみましょう。 「探索とビジュアル化」アイコンをクリックし、 表示される画面内で、このデータを探索用に保存する先のライブラリとテーブル名を指定し、「探索とビジュアル化」ボタンをクリックします。 すると、このデータに基づき、「SAS Visual Analytics – データ探索とビジュアル化」画面が表示され、データ探索やレポーティングが可能になります。 例えば、スコア値である「予測:BAD=1」変数と「資産に対する負債の割合」変数の関係性を探索したり、 スコア値が0.7以上の顧客データをエクスポートして、二次活用したり、等々も簡単です。 以上のように、SAS Viyaでは、データの準備はもとより、モデル生成からスコアリング、そして、スコアリング結果データの探索からエクスポートまでをGUIベースでシームレスに実施することができるんですね。 ※Enterprise Open Analytics Platform 「SAS Viya」 を知りたいなら「特設サイト」へGO! ※「ビジュアルパイプラインでスコアリング」は、SAS Viya特設サイトにデモ動画を近々公開予定です。

Analytics | Data Management
SAS Japan 0
SASのアナリティクスをコンテナ内で実行する8つの理由

この記事はSAS Institute Japanが翻訳および編集したもので、もともとはJames Ochiai-Brownによって執筆されました。元記事はこちらです(英語)。 自己完結型のパッケージ内でソフトウェアを実行するというアイディアは、2013年のDockerの立ち上げと共に広まり始め、今ではアプリケーション開発とDevOpsのコミュニティにおけるホットなトピックとなっています。Red Hat社による最近の調査では、調査対象企業の57%が、いくつかのワークロードにコンテナを利用しており、次の2年間で採用数が2倍近くになると期待している、と回答しています。 SASはこのトレンドを認識しており、現在ではデプロイメント・オプションの一つとしてSAS for Containersを提供しています。これが仮想マシン上でSASを実行する手法の完全なリプレースになるとは思われませんが、そこには顕著なメリットがいくつか存在します。 1. アナリティクスへのセルフサービス型アクセス 組織の中には、「SASを利用したいが、それを手にできない分析担当者」を抱えているところもあります。また、SAS Platformを保有しているものの、そのオンボーディング・プロセスに承認手続きが設けられているビジネス部門も存在します。プラットフォームの運用管理者がファイルシステムやセキュリティモデルに変更を加えなければならない可能性があり、そのプロセスに時間がかかることもあります。 コンテナを利用すると、物事がよりセルフサービス型になります。IT部門はSAS用の標準的なコンテナイメージを準備し、それを社内のユーザー向けに提供します。分析担当者は用途に応じてその中から選択し、自分専用のインスタンスを起動するだけで、数分以内にSASでの作業を開始できます。Domino Data LabとBlueData は、こうした機能を提供するコンテナベースのデータサイエンス・プラットフォームの例です。 2. 様々なソフトウェア・ツールやバージョンに関するニーズへの対応が簡素化 SAS Platformの従来型の実装は、多数のユーザーによって共用されます。ユーザーは設定済みのソフトウェアを使用しなければなりませんが、それが最新バージョンであるとは限りません。コンテナを利用すると、IT部門はデータ分析担当者に対し、SASとオープンソースのソフトウェアを組み合わせた幅広い種類のコンテナイメージを提供することができます。例えば、SAS 9.4、SAS Studio、Jupyter Notebookを組み合わせたコンテナイメージも可能ですし、SAS Studio、Jupyter Notebook、R Studioのいずれからでもアクセスできる形でSAS Viyaの機械学習機能を提供するようなイメージも可能です。IT部門は、試用版ソフトウェアを提供することさえ可能です。開発者は、特定のプロジェクトに必要なソフトウェア・コンポーネントやAPI群を組み合わせて、独自のコンテナイメージを作成することもできるようになります。 3. ソフトウェア・アップデートの容易化 実際には、コンテナ内のSASソフトウェアがアップデートされることはありません。必要なのは、新しいバージョンで別のコンテナイメージを作成し、それを用いて別のコンテナを構築することだけです。つまり、ソフトウェアのアッグレード中にユーザーの作業を邪魔することは一切ありません。週末の作業も不要ですし、アップグレードがうまく進まないときに、どうやってシステムを元に戻せばよいかパニックになることもありません。新しいコンテナをテストし、準備が整った段階でそれをユーザー向けに展開すればよいのです。様々なバージョンのコンテナイメージを保持できるため、ユーザーは時間的な余裕をもって自分のコードを各バージョンでテストしたり、問題がないことを確認した上で新しいバージョンに移行したりできるようになります。 4. スケーラブルかつ柔軟で、隔離された計算処理環境 コンテナ・オーケストレーター(例:Kubernetes)は、多くのコンテナを起動することで、大きなコンピューティング・リソースを割り当てることができます。そのため、オンボードするユーザーが増えても、ジョブがスローダウンすることはありません。リソース消費が特に激しいプロセスを実行する場合でも、それが他のユーザーに影響することはありません。各コンテナは、それぞれのマシンのリソースの範囲内でのみ実行可能です。したがって、より多くのパワーが必要な場合は、コンテナを停止し、より大きなマシン上でそれを起動し直します。作業の完了後にコンテナを終了すると、そのマシンは他のユーザーのために解放されます。 5. アナリティクスをWebアプリに統合することが可能 今や、アナリティクスは分析担当者だけのものでありません。デジタル変革に取り組んでいる組織は、顧客がデジタルチャネルを通じて利用するWebアプリやモバイルアプリの背後にアナリティクスを組み込もうとしています。具体的には、画像処理、レコメンデーション、意思決定支援などを含むAIアプリケーションなどが考えられます。これらのWebアプリは従来の方式で実装されたSAS Platformと組み合わせて機能させることも可能ですが、その一方で、必要なSASソフトウェア、分析モデル、小型の実行エンジンとしてのサポーティング・コードだけで構成した実行エンジンを軽量なコンテナに実装すると複数の利点があります。こうすることで、開発者は、他のユーザーに影響を与えることなく、SASソフトウェアの設定やAPI群を変更する自由を手にします。これは、アプリケーションがPythonまたはJavaで実装される方法に似ています。 6. 自動モデル・チューニング モデルの中には、データが変化するたびに、あるいは新しいフィードバックを受け取るたびに、頻繁に更新する必要があるものもあります。コンテナを利用すると、そうしたモデルを再チューニングし、その結果をコンテナ内にパッケージし、実業務環境にデプロイするまでのプロセスを自動化することができます。 7. DevOpsやCI/CDによるデプロイメントの合理化/効率化 典型的なSASユーザーはDevOpsの世界には馴染みがないかもしれませんが、DevOpsは昨今の主流となりつつあるアプリケーション開発手法です。アナリティクスをWebアプリに統合したい場合、私たちはこのプロセスに沿って進める必要があり、それを最も簡単に行う方法が、コンテナを利用する手法です。SASコードとモデルをコンテナ内にカプセル化すると、アプリ開発者(=Dev)側では、デプロイのために運用チーム(=Ops)側に渡す前に、コンテナに接続しテストを実行できるようになります。「継続的インテグレーション(CI)」と呼ばれる手法では、アプリ(SASのパーツを含むアプリ)の全てのブランチ(分岐)における変更は、それらが一緒に正しく機能する状態を確保するために、定常的にマージされ、自動テストにかけられます。「継続的デリバリー(CD)」と呼ばれる手法は、本番の業務環境へのリリースまでのプロセスを自動化します。これにより、アナリティクス・プリケーションの開発とデプロイを数週間ではなく、数日または数時間で完了することが可能になります。   8. ほぼ全ての場所にデプロイすることが可能 コンテナはポータブル性に優れているため、オンプレミスのデータセンターから、パブリッククラウドや、ドローン/トラック/列車に搭載されたエッジデバイスに至るまで、あらゆる種類の場所でSASの実行エンジンを動かすことが可能です。 コンテナは、イマジネーション豊かなアナリティクス活用を実現可能にする大きなポテンシャルをもたらします。あなたがSAS Viyaのライセンスをお持ちの場合は、SASが運営するDockerイメージ・ライブラリへのアクセス権を有していますから、そこから事前準備済みのコンテナイメージの形でSAS

SAS Events | Students & Educators
0
SAS Global Forum 2019 レポート (4日目)

SAS Global Forum 2019もいよいよ最終日を迎えました。一日目、二日目、三日目に引き続き、最終日の参加レポートを掲載します。   データサイエンティストに必要な倫理 本日は”The Good, The Bad, and The Creepy: Why Data Scientists Need to Understand Ethics”というセッションに参加してきました。数十年前、データの活用はあくまで統計学の中のみのものであり、扱えるデータの数もごく少数でした。しかし、計算機の発展、理論の進歩、機械学習との交わりにより、近年では膨大かつ複雑なデータも処理することができるようになりました。それに伴い、データ分析の際のごく少数のミスもしくは悪意のある行為によって多くの人々に甚大な被害をもたらしてしまう可能性があると指摘しました。データサイエンスは非常に強力ですが、それを適切に活用するためにデータサイエンティストには倫理観が必要不可欠です。特に「引き起こしうる害」を認識し、「同意」に基づいてデータを使用し、「自分が何を分析しているか」を正確に把握することが必要と指摘し、特に三点目の重要性を強調しました。 分析に用いるアルゴリズムは適切かについて、常に気を配らなくてはありません。アルゴリズムが害を引き起こす例として、あるバイアスの持ち主が書いたプログラムにはそのバイアスが含まれている事例を紹介しました。例えば、Webでの検索結果にジェンダーギャップや人種間格差が見受けられるのは、関連するバイアスも持つ人物が書いたアルゴリズム内にそのバイアスが反映されているからかもしれません。他の例として、アルゴリズムに対する根本的な理解不足が問題を引き起こしうる事例を紹介しました。例えば、二つの要素が明らかに無関係と思われる場合でも、あるアルゴリズムが相関関係を見出したという理由でその二要素に関係があると結論付けてしまうのは、そのアルゴリズムについての理解が足りていないということです。数理統計をブラックボックスとみなしてはならず、背景理論について正確に把握し、何を分析しているかを意識し続けることが必要不可欠だと語りました。 また、これらに基づき、将来データサイエンティスト間にヒエラルキーが生じる可能性を指摘しました。基礎的な数学・統計学の知識があるだけでは不十分。倫理や関連法律を理解しそれをアルゴリズムに照らし合わせ、顧客や無関係な人々に害を与えてしまう可能性がないかを吟味し、必要に応じて手法を変えられるデータサイエンティストがヒエラルキーの頂上に来るはずだと主張し、倫理の重要性を強調しました。   SAS Global Forum 2019 に参加して 今回のSAS Global Forum 2019で最も印象に残ったことは「アナリティクスの可能性」です。本日の基調講演で、理論物理学者のミチオ・カク氏は「将来、すべての業界にAIが導入される。人類にとってロケットは大きな革命だったが、今後、データを燃料、アナリティクスをエンジンとして、さらに大きな革命が起ころうとしている。」と語りました。実際、様々なセッションへの参加を通して、アナリティクスが活躍する分野が非常に多岐にわたっていること、そしてそのインパクトが非常に大きいことを改めて実感し、将来私たちの生活がどのように変わっていくのかと想像して心を躍らせました。また、学生向けセッションへの参加を通じて、「アナリティクスを用いて世界を変えたい」という志を抱く同年代の学生が世界各地で切磋琢磨していることを知りました。近い将来、彼らと力を合わせて社会に大きなインパクトをもたらす”何か”をするため、今後も日々精進します。

SAS Events | Students & Educators
0
SAS Global Forum 2019 レポート (3日目)

SAS Global Forum2019 三日目の参加レポートです。一日目、二日目に引き続き本日も数多くの魅力的なセッションが行われました。参加したセッションの中から特に興味深いと感じたものをいくつかピックアップしてご紹介します。 難民支援のためのデータサイエンス 最初にご紹介するセッションは”Data4Good: Helping IOM Forecast Logistics for Refugees in Africa”です。IOM(国際移住機関)と協力しデータを用いた難民支援の事例について説明しました。 今回の分析は主にエチオピアの難民キャンプについて行われました。まず難民キャンプの規模や種類、さらにどのような物資が不足しているかについての情報を、バブルの大きさや色を用いて地図上に可視化します。この結果から安全な水や入浴・洗濯の機会など主に公衆衛生に関する課題をどのキャンプも共通して抱えていることが分かりました。そこで公衆衛生に関する水・石鹸・洗濯などの具体的な要素について、それが不足しているキャンプの数をグラフ化した結果をもとに援助の優先順位を策定し、より効果的な援助を実現しました。次に、キャンプで生活する難民についての分析です。キャンプごとに、老人が多い・女性が多いなどの特徴があり、それに応じて必要とされる支援は変わってきます。しかし流動的なキャンプにおいてその傾向は日々変化することから、支援の過不足が発生していました。適切なタイミングで適切な支援を行うため、年齢や性別などに基づき難民をいくつかのセグメントに分け、それぞれについて一つのキャンプ内にいる人数を予測するモデルを作成しました。このモデルの予測を用いることで支援物資を適切なタイミングで必要量を配分し、無駄を削減しながら必要な支援を届けることが出来ました。さらに、IOMから集めたフィードバックを用いて日々モデルを改善し、よりよい支援を追求しました。 優秀なデータサイエンティストになるには 次に”How to Be an Effective Statistician”というセッションについてご紹介します。データサイエンティストとして20年以上の経験を持ち、第一線で活躍し続けているプレゼンターが、自身の経験を踏まえながら優れた統計家になるためのヒントを伝えました。彼は”Effective Statistician” とは、「適切な分析を、適切な方法で、適切なタイミングに行える統計家」と定義しています。そして、そのためには2つのスキルが重要だと語ります。 一つ目は「リーダーシップ」です。データサイエンティストは主としてチームで分析に取り組みます。データサイエンスには統計のスキルだけでなく、分析分野についての専門知識や根本的なビジネススキルなど様々な能力が必要であり、それらを全て備えている人は多くありません。そこでリーダーの出番です。各メンバーの得意不得意を考慮しながらタスクを割り振り、各々の欠点を補いながら総合力でプロジェクトを進めていきます。しかしここで「独裁的なリーダー」になってはならないと強調しています。ある課題を解決するためのデータを用いたアプローチの仕方は一通りではありません。チーム内でディスカッションを続け、一人一人の意見を尊重することで、課題の本質を理解し、チームとして大きなヴィジョンを描けるのだと語りました。 二つ目は「データを適切に解釈する力」です。データは何らかの解釈が付与されて初めて意味を持ちます。また、それを適切に処理する上でもデータの深い理解は不可欠です。データの表面上の傾向に踊らされず、本質を見抜き適切なアプローチを取るためには、やはりビジネスの知識が役に立つと語っていました。また、データの不足が判明した場合にはそれを収集する仕組みを新たに構築するなど、臨機応変に対応する力も要求されるとのことでした。 セッションの後、データサイエンティストには幅広いスキルが要求されることに呆然としたという学生の発言がありました。それに対し彼は「自分の可能性を制限しているのは多くの場合ネガティブな自己認識。どんなに優秀なデータサイエンティストでも10年後を正確に予測することはほぼ不可能で、10年後の自分を決めるのは自分自身。理想の自分になるため、日々できることを継続することこそ一番の近道。」というメッセージを伝え、学生を勇気づけていました。とても印象に残った言葉でした。 Kick Back Party さて、三日目の夜にはKick Back Partyが開催されました。バンドの演奏やカウボーイ衣装での記念撮影など様々な余興が催され、各々が素敵な時間を過ごしていました。個人的には、本場テキサスでロデオマシーンを楽しめたことが印象に残りました。日本でのパーティーとは一味違うアメリカらしい陽気な雰囲気を味わうことができ、貴重な経験となりました。        

SAS Events | Students & Educators
0
SAS Global Forum 2019 レポート (2日目)

一日目に引き続き、SAS Global Forum 2019 の様子をお伝えします。二日目となる今日は主にStudent Symposium の様子についてレポートします。Student Symposiumはデータ分析スキルを競う学生用のコンペティションで、予選を勝ち抜いた八チームが各々の分析についてのプレゼンテーションを行いました(各チームの発表概要はこちら)。ここでは、特に印象に残った2チームの発表についてご紹介します。 起業を実現させる要因とは 1チーム目はオクラホマ州立大学のチームで、題名は”Exploring the Intensions of Entering Entrepreneurship for SAS® Global Forum 2019”です。起業が米国の資源の一つと言っても過言がないほど起業精神が浸透しているアメリカにおいて、起業を考える人は大勢いますが、全員が実際にビジネスを開始するわけではありません。起業の実現にどのような要素が影響するのかについて、データ分析により解き明かすことを目標とします。まず起業に関係する要素を「経済状況」「社会的要素(人脈など)」「人間性」「人類学的要素(ジェンダーなど)」の4つにカテゴライズし、起業に至った理由の中で最も大きな影響を与えたカテゴリを時系列に基づき分析しました。2008年ごろまでは経済状況が良かったこともあり、経済的必要性で起業する人は少数で、人脈などの社会的要素や人間性、中でも失敗を恐れない性格が起業を実現させる主な要因でした。しかし、2009年以降経済の悪化に伴い、自ら事業を立ち上げる必要性が出てきたことで経済状況に基づく起業が多数派となりました。その後経済が回復傾向になるにつれて再び経済状況の影響力は小さくなり、人類学的要素(ジェンダー)と人間性、特に功名心に基づく起業が増加しました。このように人々がビジネスを始めた理由を分析することで、今後の起業のトレンド予測や起業支援につなげるとのことでした。 バイアスのない公平な記事を書くために 2チーム目も同じくオクラホマ州立大学のチームで、題名は”Identifying Partisanship in Media Article”です。米国には強力な二大政党がありますが、それぞれの主張を対等に報道しているメディアは少なく、多かれ少なかれ偏りが生じています。偏りのある報道に晒され続けることで、盲目的にある党の主張が正しいものと信じ込んでしまい、深く考えずに投票してしまう事例も増えています。そこで、報道のバイアスを測るモデルを作成し、バイアスチェッカーとしての応用を考えることが本発表の目標です。初めに、二つの党の公式声明から、各々の政党の主張の特徴を学習させます。得られたモデルに各メディアの記事から抽出したキーワードのトピックを当てはめ、その記事を出したメディアがどちらの党派かを判別します。その結果、このモデルは90%以上の精度で記事からメディアの党派の判別が可能でした。このモデルを用いると、党派を感知されないような公平な記事を書くことができ、結果として偏りのない情報発信の助けになるとのことでした。 この二チーム以外の発表も面白いアイデアと確かなデータ分析手法に基づく非常に興味深いものであり、自分と同年代の学生がこれほどの研究・発表をしているのかと大いに刺激を受けました。彼らに負けないよう今後も精一杯頑張ろうと思います。       eポスター発表 本日は私もe-Poster Presenterとして分析結果の発表を行う機会を頂きました。”Forecasting CO2 Emissions of Electrical Generation By Using SAS® Software”と題し、発電において必要とされる各種条件を満たしながら、CO2排出量を最小にする電源構成の最適化モデルを構築し、2030年におけるCO2排出量をモデルごとに推定しました。様々な国からの参加者の皆様に発表をお聞きいただき、ディスカッションをしたりフィードバックを頂いたりと、非常に有意義な経験となりました。 詳しくは、6月11日に六本木のグランハイアット東京で開催されるSAS Japan 最大の年次イベントSAS Forum Japan 2019 内、"アナリティクスは営利目的だけじゃない!大学生が挑む Data

1 2 3 5