学生の皆さん、おうち時間をどのようにお過ごしでしょうか。「自宅にいる時間が多くなったけど何を勉強したらいいかわからない」「この機会にSASの認定資格を取ってみたいから勉強の進め方を知りたい」と考えている方に、本記事ではSAS Academic Hubを紹介したいと思います。 SAS Academic Hubには、前回のブログで紹介したSAS Learning Subscriptionに含まれているe-learningやSAS認定資格の申し込みページが集められていて、自分の勉強目的からコースを選択してステップを進めることで知識を習得できたりSASの認定資格の学習ができたりする、学生と教員向けのポータルです。 それでは、SAS Academic Hubについて、学生向けに「どんな学習コースが提供されているのか」「使用するときのポイント」「学生にとってのメリット」を紹介します。 1.学習コースを選択しましょう SAS Academic Hubには合計8個の学習コースがあり、そのうち6個のコースでSASの認定資格のために活用することができるようになっています。ここから自分の興味にあうコースを選択してください。 コースを選択すると、次のページは4つのStepに分かれています。 Step1: ソフトウェアへのアクセスについて Step2: 学習 Step3: 試験対策の紹介と模擬問題 Step4: 実際の認定試験への案内 各ステップにはソフトウェアにアクセスできるウェブページや教材、e-learning、ビデオなどが割り振られています。またそれらにはMore informationが付いていて、そのページに何があるかを簡潔に紹介しています。 2.学習コースを進めましょう 今回は、SAS言語を初めて使う人向けで、プログラミングをする際に意識しておきたいプロセスなどを学習することができるGetting Started with SAS/ SAS Certified Specialist: Base Programming Using SASを例に、実際の学習コースを紹介します。 Step1:ソフトウェアへのアクセス この学習コースで必要なソフトウェアが提供されているページを紹介しています。このステップでそのページからソフトウェアにアクセスすることで、次のステップで学習する内容を自分でも演習することができます。 Step2: 学習 実際にLessonを受講します。ここでは、前回のブログで紹介したSAS Programing1:EssentialがLessonに割り振られています。Lessonの詳しい内容は前回のブログで紹介していますので、是非参考にしてください。 Step3: 試験対策の紹介と模擬問題 受講した学習内容が試験内容に含まれているSASの認定資格の試験対策を紹介しています。模擬問題も提供されています。 Step4:
Tag: オンライン学習
新型コロナウイルスの感染拡大により私たちの日常生活は大きく変化しており、自宅で過ごす時間も増えています。この機に「新しく統計学やプログラミングを勉強し始めたい!」、「SASの認定資格を取りたい」と考えている方も少なくはないのでしょうか。コロナウイルスの影響により在宅を余儀なくされた皆さんに、SASはさまざまなオンライン・コースを含むSAS®トレーニング・リソースを30日間無料で提供しています。(プレスリリース) 本記事では、提供されているオプションの中からSAS Learning Subscriptionの紹介をします。これはVirtual Learning Environment のなかで提供されているSASのe-learningが集まったポータルです。 1.SAS Learning Subscriptionに登録しましょう 最初にSAS Learning Subscriptionの登録手順です。こちらのページにアクセスして、以下の手順で登録してください。 SAS Learning Subscription 登録手順 from SAS Institute Japan 2.Learning Pathを選択しましょう SAS Learning Subscriptionにはオンラインで受講可能なLearning Pathが複数あり、またテーマごとにショートビデオや学習コースが設置されています。本コースの言語は英語で、コース内動画は英語字幕に対応しています。今回は、Learning Pathの中からSAS Programingを実際に学びながらSAS Learning Subscriptionの紹介をしていきます。 先ほどのSAS Learning Subscriptionへの登録を行うと、Virtual Learning Environmentへ移動します。画面左上をクリックして展開し、SAS Learning Subscriptionを選択してください。 ページ中央に上図のようなLearning Pathの一覧が載っています。ここで、自分の興味にあうLearning Pathを選択してください。学習コースにはそれぞれショートムービーやcourse notes、リンクなどが掲載されています。基礎からその利用まで順を追って説明がされるため、プログラミングなどに自信がない方でも取り組みやすい点が特徴です。 3.コースを受講して学習を進めましょう それではSAS Learning Subscriptionの学習コースの中からSAS Programing1: Essentialsを実際に進めてみましょう。以下のスライドで、最初のLessonであるCourse
本記事では、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
前回に引き続き、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 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®
SAS University Edition や SAS OnDemand for Academics は、教育・研究・学習目的に無償で使えるソフトウェアですが、使い方の学習には教材が必要だという方もおられると思います。もちろん、SASはソフトウェアに関する膨大なドキュメントをご用意していますが、「どこから始めたらいいの?」「英語ではちょっと…」という声もあるでしょう。 SAS Japanでは、SAS入門者の方向けに日本語字幕をつけたチュートリアル・ビデオ群をご用意しています。このビデオは、ほとんどが5~10分の短いもので、SASとは何かから始まり、SAS University Edition や SAS OnDemand for Academics のインターフェイスである SAS Studio の解説、他の環境との差、データへのアクセス、データの操作、グラフの作成、基本的な統計解析、時系列分析の手法をサンプルデータを使いながら説明しています。サンプルデータは、標準でSASに付属しているものや、オンラインドキュメントを参考にして作成するものなどがあり、どなたでも、どんな環境でも学習を開始することができます。 これらの SAS Studio の使用法の解説では、主に「タスク」とよばれる機能を用いた操作を行います。「タスク」は、「棒グラフの描画」や「分散分析」などの機能をプログラミングなしで利用するためのインターフェイスで、データやパラメータをマウス等で指定することで、SASのプログラム・コードが自動生成されます。もちろん、SASの機能を最大限引き出すために、ゼロからプログラムを書くことも可能です。自動生成されたプログラムを参考にしながら、SASプログラミングを学習することにも適しています。 実は、これらの日本語字幕付きのビデオは、SASのチュートリアル・ビデオのごく一部で、SAS Video Portal にはより多くのビデオが用意されています。ここでは、SAS製品の紹介や、操作法・プログラミングのチュートリアルに加え、SASのアナリティクスが実際の活用事例を紹介する Analytics in Action ビデオもご覧になれます。音声は英語のみですが、英語や日本語の字幕を表示できるものもあります。まずはビデオから、SASアナリティクスの世界を覗いてみませんか?
前回、SAS OnDemand for Academics (SODA) の Course 機能を活用することで、授業準備の手間が軽減されることをご紹介しましたが、実は、Cource 登録にはもう一つのメリットがあります。 SODA は、SAS Studioを基本のインターフェイスとしていますが、Course 登録により使用できる製品が増えます。 SAS Enterprise Guide : ポイント&クリック操作によるWindowsアプリケーション SAS Enterprise Miner : GUIによるデータマイニング・ツール SAS Forecast Server : 時系列予測の自動作成ツール これらは、統計の学習よりも、実際のビジネス等の現場で素早く統計手法を適用するためのツールで、基礎を学習した上で、より応用に際して活用できるものです。
統計ソフトを大学等の授業で用いる際に問題となるのが、統一的な環境を用意することの難しさです。受講者全員が同じバージョンのソフトウェアを同じ設定で利用し、同じ場所にあるデータにアクセスするような環境を準備しないと、個々の環境の差異から発生する問題に対処するだけで授業時間が終わってしまうでしょう。 また、統計ソフトを利用した演習講義では、プログラミングが必要になる場面が多いと思います。しかし、少ない授業時間を割いてプログラミングに慣れていない学生にコーディングを教えることは、本来その講義で教えるべき内容を削ってしまいかねません。 ご存知の方も多いと思いますが、SASでは、教育・研究および個人学習目的の利用に限り、無償ソフトウェアを提供しています。ダウンロードしてローカルPCの仮想マシンにセットアップするタイプの SAS University Edition と、クラウド上のアプリとして実行するタイプの SAS OnDemand for Academics がありますが、後者を使うと、上述した統計ソフトを利用した講義における統一環境の準備の問題およびプログラミングの問題を解決することができます。 SAS OnDemand for Academics (以下、SODAと略します) の特徴は以下のとおりです。 クラウド上で実施するソフトウェアなので、インターネット接続さえあれば、PC環境を統一させる必要がありません。 教員はWebページ上で「Course」を作成することができ、学生がその「Course」に登録することで、教員が用意したデータに学生の環境からアクセスすることができます。 ポイント&クリックで操作できるインターフェイスにより、プログラミングせずに統計やデータマイニングの機能を利用することができます。 SODAの利用手順: まずはSODAに登録します。登録の方法は、SlideShareの資料を参考にしてください。(※Analytics Uのページがなければ、SODAのページにアクセスし、上記のスライド4から開始してください。) 教員の方は「Course」を作成してください。こちらのページのInstructorsセクションのドキュメントおよびビデオ「Upload Your Course Data」「Invite Students to Your Course」を参考にしてください。 学生は教員から「Course」に参加するためのリンクを取得し、こちらのページのStudentsセクションを参考にCourseに参加してください。 SODAを利用すれば、無料で環境構築・プログラミング教育のためのコスト・リソースを削減し、統計スキルの教育・学習に集中できます。Let’s teach & learn data science!