| レボスケールR | |
|---|---|
| 原作者 | マイクロソフト |
| 初回リリース | 2016 (2016年) |
| 書かれた | パイソン |
| プラットフォーム | Windows、Linux |
| 入手可能な | R |
| Webサイト | docs |
RevoScaleRは、 Microsoftが開発したR言語の機械学習パッケージです。Microsoft SQL Server 2016のMachine Learning Server、Microsoft R Client、およびMachine Learning Servicesの一部として利用できます。
このパッケージには、線形モデル、ロジスティック回帰、ランダムフォレスト、決定木、ブースティング決定木、K平均法を作成するための関数に加えて、データの検査と視覚化のためのいくつかの要約関数が含まれています。[ 1 ]
Pythonパッケージにはrevoscalepyという同等のパッケージがあります。もう一つの関連パッケージは MicrosoftML で、RevoScaleRにはないニューラルネットワークやSVMなどの機械学習アルゴリズムが含まれています。
2021年6月、マイクロソフトはRevoScaleRおよびrevoscalepyパッケージをオープンソース化し、MITライセンスの下で自由に利用できるようにすると発表しました。[ 2 ]
多くのRパッケージは、マシンのメモリに収まるデータを分析するように設計されており、通常は並列処理を利用しません。RevoScaleRはこれらの制限に対処するために設計されました。RevoScaleRの関数は、ユーザーが指定できる3つの主要な抽象化概念に基づいており、メモリに収まらない可能性のある大量のデータを処理し、並列リソースを活用して分析を高速化します。
計算コンテキストとは、データに対する計算が行われる場所を指します。これは「ローカル」(クライアントマシン上)または「リモート」(SQLサーバーやSparkなどのデータプラットフォーム上)のいずれかです。計算をリモートサーバーにプッシュすることで、リモートマシンが持つより豊富な計算リソースを活用できます。分析対象のデータが同じマシン上に存在する場合、リモート計算コンテキストを使用することで、ネットワークを介してクライアントマシンにデータを取得する必要がなくなります。[ 3 ]
データソースは、データの取得元を定義します。RevoScaleRでは、テキストデータ、XDFデータ、SQL内データ、Sparkデータフレームなど、様々なデータソースを利用できます。ユーザーはデータをデータソースオブジェクトにラップし、それを使用して様々なコンピューティングコンテキストで分析を実行できます。利用可能なデータソースはコンピューティングコンテキストによって異なります。例えば、コンピューティングコンテキストがSQL Serverに設定されている場合、使用できるデータソースはSQL内データソースのみになります。
RevoScaleR の分析関数は、データソースオブジェクト、計算コンテキスト、そしてロジスティック回帰の式や決定木におけるツリーの数など、特定のモデルを構築するために必要なその他のパラメータを受け取ります。これらのパラメータに加えて、各プロセスにおけるデータチャンクのサイズやモデル構築に必要なプロセス数など、並列処理のレベルも指定できます。ただし、並列処理は Express 版以外でのみ利用可能です。
このパッケージは、主にSQLサーバーやその他のリモートマシンで使用することを目的としています。大規模データセットの処理に使用される抽象化を最大限に活用するには、リモートサーバーとExpress版ではない無料版のパッケージが必要です。多くのオープンソースRパッケージのように「install.packages("RevoScaleR")」を実行するだけで簡単にインストールすることはできません。データサイエンス向けRのディストリビューションであるMicrosoft R Client、SQLサーバーに接続されていないスタンドアロン版のMicrosoft Machine Learning Server、またはSQLサーバーサービスであるMicrosoft Machine Learning Servicesを通じてのみ利用可能です。ただし、Express版の無料版のパッケージでも分析機能は利用可能です。