Machine Learning

Get the latest machine learning algorithms and techniques

Advanced Analytics | Machine Learning
Wayne Thompson 0
Why you should add statistical learning to your machine learning tool kit

Data scientists naturally use a lot of machine learning algorithms, which work well for detecting patterns, automating simple tasks, generalizing responses and other data heavy tasks. As a subfield of computer science, machine learning evolved from the study of pattern recognition and computational learning theory in artificial intelligence. Over time, machine learning has borrowed from many

Advanced Analytics | Analytics | Machine Learning
Sophia Rowland 0
SAS and R Integration for Machine Learning

SAS Viya is a cloud-enabled, in-memory analytics engine which allows for rapid analytics insights. Viya utilizes the SAS Cloud Analytics Services (CAS) to perform various actions and tasks. Best of all, CAS is accessible from various interfaces including R. In this blog, I will go through a few blocks one of my notebooks, which moves through an analytics workflow using R and SAS.

Advanced Analytics | Analytics | Artificial Intelligence | Machine Learning
Ivan Fernando Herrera 0
Policías y ladrones: la inteligencia artificial contra el delito

Por Juan Sebastián Niño Customer Advisory Analytics SAS Colombia En Colombia, y probablemente en toda América Latina, existe un juego para niños llamado Policías y ladrones. Dentro del juego, un grupo de niños son los ladrones y el otro grupo son los policías. Mientras que los ladrones deben correr a

Analytics | Machine Learning
Carlos Hernández 0
¿Por qué es importante el Deep Learning?

Empecemos por aclarar un concepto que hoy se presta fácilmente a confusiones. El Aprendizaje Profundo (Aprendizaje Profundo o “AP”) es un tipo de Aprendizaje Automático que entrena una computadora para que adquiera algunas capacidades de los seres humanos, como el reconocimiento del habla, la identificación de imágenes o plantear predicciones.

Advanced Analytics | Analytics | Learn SAS | Machine Learning | Programming Tips
Nelson Grajales 0
Machine learning with SASPy: Exploring and preparing your data (part 1)

SASPy is a powerful Python library that interfaces with SAS and can help with your machine-learning solutions. SASPy was created for Python programmers to leverage the power of SAS within their Python scripts. If you are not familiar with SASPy, see the following resources: Introducing SASPy: Use Python code to

Artificial Intelligence | Internet of Things | Machine Learning
Isabelle Wirth 0
Miele interview: Why are networks important for digitisation in IoT?

IoT projects show through their versatility again and again how important interdisciplinary cooperation and partnership formation between companies is nowadays. In order to guarantee success, organisations must pay special attention to the interaction of hardware, software and research. The European 4.0 Transformation Center (E4TC) on the campus of Aachen University, Germany,

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

Advanced Analytics | Machine Learning
Tim Clark 0
Can the artificial intelligence of things make the supply chain intelligent?

As you will have read in my last blog, businesses are demanding better outcomes, and through IoT initiatives big data is only getting bigger. This presents a clear opportunity for organisations to start thinking seriously about how to leverage analytics with their other investments. Demands on supply chains have also

Advanced Analytics | Analytics | Artificial Intelligence | Machine Learning
Charlie Chase 0
How do I explain a flat-line forecast to senior management?

How do you explain flat-line forecasts to senior management? Or, do you just make manual overrides to adjust the forecast?    When there is no detectable trend or seasonality associated with your demand history, or something has disrupted the trend and/or seasonality, simple time series methods (i.e. naïve and simple

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

1 6 7 8 9 10 18

Back to Top