All Posts
SASが提供する大学講義「アナリティクス入門」のブログ・シリーズ、1回目の前回はイントロダクションとして「アナリティクスとは」についてまとめました。今日は4つのアナリティクスのレベルの1つ目、記述的アナリティクスについてまとめます。 前回も書いたように、記述的アナリティクスは、過去に何が起こったか、いま何が起こっているかを知るためのアナリティクスです。データの集計し、統計量を計算したり、集計結果を表やグラフを用いて可視化したりすることで、データを理解したり情報伝達をすることが目的です。 納得して仕事をするために 私の娘が小学校を卒業するとき、「卒業式は友達みんな袴を着るって言ってるよ!」と言い出しました。つまり、だから自分も袴を着たいと主張しているわけです。「小学校の卒業式なんて一生に一回だしな…」なんてよくわからない理屈でレンタルしましたが、蓋を開けてみると、3割ぐらいの女子しか着ていませんでした。小学生の言う「みんな」は信じてはいけません。 ところで、SAS Japan では、毎年夏休みに「親子でデータサイエンス」というイベントを開催しています。小学生とその保護者が、一緒にデータを活用したポスターを作るイベントです。何年か前、自分のおこづかいが少ないと感じた小学生が、おこづかいアップを目指すためのポスターを制作しました。学校のお友達に毎月のおこづかいの金額をアンケートし、集計した結果をヒストグラムに表し、平均値、中央値、最頻値を算出して、親を説得するための材料にしたのです。「みんな私よりおこづかい多いよ!」という主観的で非定量的な主張より、このようにデータとグラフで示されると、親は納得せざるを得ません。 子供が親を説得するのに限らず、組織として多くの人が関わる仕事では、ある種の同意を形成する必要があります。そこには納得感が必要であり、そのためには客観的なデータを示すことが役に立ちます。同意が形成されていることを、英語で “be on the same page” と表現しますが、同じページの同じ図表を見ていることが重要なのです。おそらく、どこの会社でも同様のものがあると思いますが、SAS Japan では毎月、全社員が参加する(ことになっている)ミーティングのなかで、現在の売上の状況が報告されます。どの部門が目標に対してどれぐらいの位置にいて、来月以降はどの程度の売上を予測しているのか、図表を使って全社員に共有します。そのことにより、全員が同じ目標に向かって活動することができます。 可視化の役割 データサイエンスという言葉には、人工知能や機械学習のイメージが強いかもしれませんが、実際の社会におけるデータ活用では、まだまだこのような可視化の役割が大きいと感じています。多くの人の同意を得るために客観的なデータを提示するだけでなく、日常的なデータをモニタリングし、非日常的な変化を検知してアラートを上げることができます。例えば新型コロナウイルスの陽性者は毎日報告されて、その遷移が可視化されています(例: 東京都のページ)。これにより、「感染者が増えてきたな」と感じることができますし、数値が基準を超えると、まん延防止措置や緊急事態宣言などの対策が取られることになります。 他にも、例えば工場のカーボン・フットプリントの総量が規制されているような場合、各ラインが毎日どれぐらいエネルギーを消費しているかについての情報を管理することが必要になります。このためには、データを集計し、報告する必要があります。毎日することですので、手作業で実施するのは大変です。データ取得から報告書作成までを自動化できれば、仕事の効率を上げることができます。そのためには、どんな分析をするか、だけではなく、いつデータを持ってきて、分析結果をどこにどのタイミングで出力するかを考慮してシステムを設計する必要があります。世の中には、まだまだこのように記述的アナリティクスにより解決できる課題が多く残っていると思われます。 可視化をサービスの透明性の確保のために行っている例もあります。米国のダーラム市の事例では、警察が市民の信頼を得るために、警察官の活動データを可視化して市民が閲覧できるようにしました。逮捕、出勤、苦情、トレーニングなどのデータを集め、指標をダッシュボードに表示します。市民が自分でダッシュボードを操作して「分析」することができれば、より「自分が調べている」感が出て納得しやすくなり気がします。 記述的アナリティクスとデータ準備、データ探索 記述的アナリティクスは記述統計量を計算したり、データをグラフで表したりするだけだから簡単だ、と思われるかもしれませんが、実際はそうではありません。可視化も含めたデータ分析のためには準備が必要で、この工程に80%もの時間が使われることも珍しくありません。データはどこにあるのか、どのようにアクセスするのか、そのデータの項目は何を意味しているのか、入力漏れはないか、ありえない値が入力されていないか、表記は統一されているか、複数のデータソースに整合性はあるか、など、正しいデータ分析のために必要な準備は多岐にわたります。これについては、データの管理と準備の回で詳細を紹介します。 逆に、データの準備のために記述的アナリティクスが活用されることもあります。例えば、記述統計量やヒストグラムにより各変数の分布を調べることで、それが想定している分布と一致しているか、おかしな値が入力されていないかをチェックすることができます。変数間の相関を見たり、散布図を描いたりすることで、異常値を発見しやすくなることもあります。 また、このようなデータ探索は、診断的アナリティクスや予測的アナリティクスのような、さらなるデータ分析のための準備にも使われます。変数の分布をみることで、どのような統計モデルを当てはめるかを検討することができます。機械学習の精度を上げるためには、変数を操作して適切な特徴量をつくることが必要ですが、そのために変数の分布や欠損をチェックし、変数変換や補完を行うかどうかを決定します。 このように記述的アナリティクスは、データの準備から高度なアナリティクスまで、幅広いフェーズに活用される基礎的なスキルです。 記述的アナリティクスの学習 SASソフトウェアで記述的アナリティクスを実践するときは、SAS Visual Analytics を活用するのが便利です。マウス操作でデータの可視化とレポート作成、データ分析を行うことができます。 学生であれば、学習用ポータル Skill Builder for Students に登録して、e-learningで学ぶことができます。「SAS Visual Analytics 1 for SAS Viya: Basics」というコースでは、データ準備と可視化、レポーティングを学ぶことができます。ぜひご活用ください。
The addition of the PYTHON procedure and Python editor in SAS Viya enables users to execute Python code in SAS Studio. This new capability in SAS Viya adds another tool to SAS's existing collection. With this addition I thought, how can I utilize this new found power? In this example,
More than 100 volunteers from the SAS Young Professionals Network (YPN) led sessions at Wake Forest Elementary school for the annual week-long Hour of Code initiative during Computer Science Education Week (CSEdWeek) to teach kids to code. Students were challenged to work in groups and navigate a Sphero robot through
Payment Fraud는 금융기관의 지속적인 도전 과제입니다. 디지털 결제방식이 다양화되고 실시간 결제 금액이 증가함에 따라 실시간 사기 탐지 및 예방이 필수적인 시대가 되었습니다. 동시에 고객은 마찰 없는 고객 경험을 요구하기 때문에 사기 탐지 시스템은 사기 탐지 성능과 고객 불편 간의 균형이 잘 유지되도록 충분히 정교하게 운영되어야 합니다. 규칙기반(Rule Base) 탐지가 좋은
SAS' Bari Lawhorn introduces you to the MFILE option as a way to home in on errors and warnings in your macros.
Conocer las limitaciones es importante a la hora de comenzar cualquier proyecto de mejora. Desarrollar una estrategia en analítica figura entre las cosas que pueden generar mucho valor para una empresa, pero es crucial entender lo que nos impide hacerlo. En este artículo quiero recomendar, a las compañías que están
Change is hard and can be a bit scary. We tend to resist change as we get comfortable with our routines and how things work. However, many times we fail to see the benefits of that something new. Imagine if we didn't move from MS DOS to Windows? If we'd
Anuja Nagpal and Yonglin Zhu of SAS R&D reveal how, MLPA – without any code and within a given timeframe – finds an effective pipeline for a data set after applying data preprocessing, feature engineering and modeling with hyperparameter tuning.
Throughout the year our Work/Life Weekly newsletter has featured a Question of the Week segment. Our goal was to provide a simple resource to help grow the relationships in your life. Also, by now it should be clear that I love a good conversation question. I have compiled all the
SASのビジョンは「データがあふれる世界をインテリジェンスに満たされる世界に変える」ですが、そのためにはデータの活用について知っている人材が世の中でさまざまな役割を担うことが重要だと考えています。そこで、SASはグローバルで教育・アウトリーチ活動を実施しています。 SAS Japanでは、アナリティクスを学習するための入門編として、同志社大学や上智大学で講義を提供しています。この講義では、SAS社員が講師となり、アナリティクスの基本的な考え方や各業界での活用事例、アナリティクスを実現するためのテクノロジーなどを紹介します。SASソフトウェアを活用した実際のデータ分析に取り組む前に、アナリティクスがどこで活用されているのか、何のために使われているのかについて、データサイエンティストを目指す学生以外にも知ってほしいと考えて講義を構成しました。実際は90分×15回程度の講義なのですが、このブログ・シリーズでは講義の内容をまとめて紹介します。 アナリティクスとは 「アナリティクス(analytics)」はanalysisから派生した言葉ですが、analysisの語源としては、「ばらばらにする」という意味があるそうです。analysisの日本語訳である「分析」も、「分ける」「析(さ)く」という意味の漢字から成り立っていますから、analysisと同じ意味合いですね。近代以降の還元主義的な考え方によれば、「分ける」ことはすなわち「理解する」ことにつながります。分解することにより、ものごとを理解しようというのがanalysisの言葉的な意味になります。 近代の科学では、対象の理解のために観察や実験といった方法が採られてきました。そこには、データが必須です。対象を分解し、データを比較することがスタートです。比較対象をできるだけシンプルにすることが研究の基本的な態度ですが、対象が複雑になったり大規模になったりすると、多くのデータが必要になります。そのため、複雑で多様なデータから情報を引き出し、ものごとを理解するための技術が発展しました。それがアナリティクスです。analyticsを直訳すると「分析学」であり、analysisに関する知識や技術の総称になります。SASのWebページには次のように書いています。 アナリティクスは包括的かつ多面的な分野であり、記録されたデータに潜む有意義なパターンや知識を発見するために、数学、統計学、予測モデリング、機械学習などの手法を活用します。 SASはアナリティクスのソフトウェアとサービスを提供している企業ですが、単なる「技術」を売っているとは考えていません。人間が対象を理解しようとしているのは、その理解から利益を得たいからです。今日、世界中の組織でアナリティクスやデータサイエンスが活用されているのは、それが組織の役に立つからです。SASにはこんな言葉があります。 Data doesn’t drive your organization, Decisions do. データは組織を駆動しない。意識決定が駆動する。 アナリティクスはデータを分析し、インサイトを得るための技術ですが、それが人間の意思決定につながらない限りは組織の利益にはなりません。 意思決定をしてみよう 「意思決定」と言っても、べつに特別なことではありません。我々は日常的に意思決定をしています。少し例を上げてみましょう。 今日、傘を持っていくか? 週末のイベントに参加するか?(コロナ禍) ワクチンを接種するか? 運動会のリレーのクラス代表を誰にするか? どの授業に登録するか? みなさんは、これらの課題に対し、どのように意思決定をしますか? 傘を持っていくかどうかの判断は、天気予報を見て決めるでしょう。天気予報は、気象庁や気象予報士が過去のデータと現在の観測データ(衛星や気象観測所、各種センサーなど)を用いて未来の天気を予測しています。週末のイベントに参加するかどうかは、新型コロナウイルスの感染者の動向を見て決めるでしょう。ニュースやWebサイトでは、感染者の遷移がわかりやすく可視化されています。ワクチンを接種するかどうかは、ワクチンに効果があるかどうか、副反応が許容できる範囲かどうかを考慮して決めるでしょう。ワクチンの効果は、厳密にデータと統計学によって検証されます。運動会のリレーのクラス代表は、体育の授業の50m走のタイムを見て決めると納得しやすいです。1回だけだと「たまたま」かもしれないので、何回かの平均タイムを比較するかもしれません。どの授業に登録するかは、学部・学科の履修ガイドラインもさることながら、過去にその授業を受けた先輩が残したデータを参考にするでしょう(筆者の学生時代は、単位の取りやすさがA-Dにランク付けされたリストが出回っていました)。このように、みなさんは日常的に意思決定をしていますし、そこではデータを役立てていることが多いことがわかります。 みなさんのなかには、データサイエンティストを目指している人もいるかもしれません。組織のなかでアナリティクスを活用するには、この意思決定をどのように支援するかを考えることが重要です。データを取得し、分析し、その結果を意思決定者であるユーザーに提示するサービスを設計する必要があります。この「ユーザー」はアナリティクス・ソフトウェアのユーザーではなく、意思決定サービスのユーザーという意味です。データサイエンティストは、データがあるからとりあえず分析してみるのではなく、ユーザーが意思決定をする際の課題をいかにデータ分析により手助けするかをプランすることも役割の一つになります。 4つのアナリティクス ガートナーによると、アナリティクスは、データ分析をしてから意思決定にいたるまで、どの程度人間が介在するかによって4つのレベルに分けられます。 記述的アナリティクス … 過去に何が起こったか、いま何が起こっているかを知る。データの集計や平均値などの統計量の計算、グラフを用いた可視化など。 診断的アナリティクス … 事象なぜ起こったかを分析する。要因分析・効果検証・統計的因果推論など。 予測的アナリティクス … 未知の事象を過去のデータや入手できる情報から予測する。統計モデル・機械学習モデルを活用。 指示的アナリティクス … 次に何をすべきかを指し示す。数理最適化の手法を活用。 例えば、上記の意思決定の例であれば、イベントへの参加を検討するためにコロナ感染者の推移をグラフで見たり、リレーのクラス代表者を50m走のタイムで決めたりするのは、記述的アナリティクスに該当します。情報を解釈して判断する大部分を意思決定者自身が担います。ワクチンの効果を検証するのは診断的アナリティクスです。ランダム化比較実験や統計的因果推論の手法を用います(次回以降で解説します)。天気予報は、予測的アナリティクスに当たります。過去のデータと現在の観測情報から未来の天気を予測します。指示的アナリティクスでは、例えば最適な配送経路を計算するのに数理最適化の手法を用います。 次回以降は、これら4つのアナリティクスを詳しく見ていきましょう。
„Obraz wart tysiąca słów” to dość popularne powiedzenie, na które powołuje się wiele osób przy różnych okazjach. Skąd się wzięło? Jedni przypisują go Napoleonowi Bonaparte, który miał stwierdzić, że „dobry szkic jest lepszy niż długa mowa”. Inni wskazują na Leonarda da Vinci, któremu przypisuje się stwierdzenie, że poeta zostanie „pokonany
Welcome back to my SAS Users blog series CAS Action! - a series on fundamentals. The previous posts show how to use the simple.freq CAS action to generate, save and group simple frequency tables. In this post I will show you how to use the freqTab.freqTab CAS action to generate more advanced
Dzisiaj poświęcę parę słów klasycznej metodzie analizy śledczej znanej jako Search & Discovery. Wymaga ona punktu zaczepienia, którym może być na przykład informacja pochodząca od sygnalisty, hipoteza własna analityka, czy też konieczność uzupełnienia posiadanych informacji w ramach bieżącej analizy. W takim przypadku pierwszym krokiem jest sprawdzenie, jakie informacje na interesujący
一、背景の紹介 "データアナリストのようなヘビーユーザと利用頻度が低いユーザや参照系のユーザなど、さまざまなユーザがおり、SASプログラムを実行する際に利用するCPUとメモリなどの計算リソースを、ユーザタイプごとに割り当てる設定をしたい"。これは、多くのViyaユーザ様が持つ課題です。これを実現するためには、次の2つのステップが必要です 1.異なるタイプのユーザごとに利用できる計算リソースを設定します。 2.異なるタイプのユーザに対して、権限を個別に割り当てる必要があります。 本記事では、まずViyaのシステム管理者に向けて、ユーザが利用できる計算リソースの上限値の変更方法を紹介していきます。 二、準備 設定方法を紹介する前に、まずViyaでSASプログラムを実行時に計算リソースを調達する方法を説明します。ここでは、viyaのアーキテクチャとk8sの知識が必要になるので、なるべくわかりやすく解説していきたいと思います。 まず、ユーザがSAS Studioを使用する際、Viyaはそのユーザのみが使用できるセッションを作成します。 ユーザは、実行が必要なSASアプリケーションごとに個別のセッションを作成することができ、各セッションはバックグラウンドでk8sクラスタ上に対応するポッドを持ちます。 各ポッドには使用できるCPUとメモリの上限があり、デフォルトでは2vcpusと2Giのメモリが使用できます。Viyaがユーザのセッションのためにポッドを生成するとき、ポッドテンプレート(podTemplate)と呼ばれるものを参照します。ポッドテンプレートはviyaがデプロイされるときにyamlファイルで定義されるものです。そのため、ユーザセッションが利用できる計算リソースを変更したい場合は、viyaのデプロイに使用するポッドテンプレートのyamlファイルを変更する必要があります。また、ユーザの種類によって異なる計算リソースの制限を設定したい場合は、既存のポッドテンプレートをコピーして、名前と数値を変更するだけです。 デプロイメントファイルとK8sクラスターに変更を加える必要があるため、以下を準備する必要があります。基本的にViyaをデプロイ時に必要なものと同じですので、もし下記に対して不明なところがある場合、ご利用のViya環境のデプロイ担当者にお問い合わせください。 ・k8sクラスターのAPIサーバーに接続できる作業用のサーバー、OSはLinux系がおすすめです。 ・k8sクラスターに接続用コンフィグファイル(管理者権限が必要)。~/.kube/configとして保存します。 ・k8sのコマンドラインツール:kubectl ・Viyaデプロイメントアセットのコンパイル用ツール:kutomize ・Viyaをデプロイ時に使ったkustomization.yamlやsite-configフォルダを含めたファイルアセット 三、計算リソース上限値の修正方法 計算リソースの調達方法を簡単に紹介した後、次は、そのリソースを変更する方法について説明します。ここでは、主に以下の2つの方式を採用しています。以下はLinux OSを使用することを前提に説明します。 以下はこの章の項目の一覧です。読者は以下のリンクを使って興味のあるセクションに直接ジャンプすることができます。 1.デプロイ用ポッドテンプレートファイルを修正し、再デプロイでリソースの設定を更新する方法 2.K8sクラスター内にデプロイされたポッドテンプレートをそのまま修正する方法 3.設定後の検証方法 1.デプロイ用ポッドテンプレートファイルを修正し、再デプロイでリソースの設定を更新する方法 この方法のメリットは、デプロイメントファイルに対して変更を加えるため、後にViya環境のバージョンアップや設定変更があった場合でも、計算リソースの設定の変更が保持されることです。 デメリットは、設定時にデプロイメント手順を再実行する必要があるため、比較的面倒ではあるが、長期的には管理しやすいので、おすすめです。 ①まず、Viya のデプロイメントアセットを含むパスの一番下に移動する必要があります。 このパスを/opt/viyainstallと仮定して、以下のコマンドを実行する必要があります。 deploy=/opt/viyainstall cd $deploy パス$deployの下の構造は、おおよそ次のようになっているはずです。下記のファイルやフォルダが含まれていない場合、パスが正しいか、Viyaのデプロイに使用するファイルが欠落していないかを確認することが重要です。 ②次に、ポッドテンプレート内で定義されているcpuとmemoryの制限を変更するために、site-configフォルダに以下のファイルを作成する必要があります。実際には、設定したいCPUやメモリの上限値に合わせて、下記のコマンド内のvalueの値を変更する必要があります。下記のコマンドの例では、ユーザが利用できる計算リソースの上限を31vcpu/240Giに設定しました。 cat <<EOF > $deploy/site-config/modify-podtemplate.yaml #メモリの上限値を修正 - op: add path: "/metadata/annotations/launcher.sas.com~1default-memory-limit" value: 240Gi #利用できるメモリの上限値 - op:
It is difficult – one might even say impossible – to talk about partners without mentioning innovation. The two go hand in hand, which is why we regularly honor our partners who demonstrate outstanding innovation in our Excellence in Innovation Award. This year’s winner and finalists innovated across industries and