SAS Japan

活用事例からデータ分析のテクニックまで、SAS Japanが解き明かすアナリティクスの全て
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

1 2 3 4 5 31