大規模なデータセットを扱うための統計およびデータマイニングソフトウェアツール


27

現在、約2,000万件のレコードを分析し、予測モデルを作成する必要があります。これまでのところ、Statistica、SPSS、RapidMiner、Rを試しました。これらの中で、Statisticaはデータマイニングに最も適しているようで、RapidMinerユーザーインターフェイスも非常に便利ですが、Statistica、RapidMiner、およびSPSSは小さなデータセットにのみ適しているようです。

誰もが大規模なデータセットに適したツールを推奨できますか?

ありがとうございます!


6
あなたはもう少し具体的にすることができますか?あなたは実際に何をデータマイニングしたいですか?どのようにそれを行う予定ですか?私はあなたと同じサイズのレコードを分析するためにRを使用しましたが、それはまったく悪い経験ではありませんでした。
suncoolsu

この質問はすぐに日付が付けられます。このようなツールの最新情​​報については、半年ごとのまとめ(wiki)を用意しておくとよいでしょう。
イテレーター

回答:


19

2つ目の@suncoolsuのコメント:データセットの次元は、特定のソフトウェアに向かわせる唯一の基準ではありません。たとえば、教師なしクラスタリングまたはPCAの使用を計画している場合は、ゲノム研究でよく見られるように、大規模なデータセットに対応する専用のツールがいくつかあります。

現在、R(64ビット)は大きなデータを非常にうまく処理し、RAMアクセスの代わりにディスクストレージを使用するオプションがまだありますが、CRAN Task View High-Performance and Parallel Computing with Rを参照してください。標準GLMは、20,000個のobsを簡単に収容します。(以下に示すように、妥当な時間内にspeedglmも参照してください):

> require(MASS)
> n <- 20000
> X <- mvrnorm(n, mu=c(0,0), Sigma=matrix(c(1,.8,.8,1), 2, 2))
> df <- cbind.data.frame(X, grp=gl(4, n/4), y=sample(c(0,1), n, rep=TRUE))
> system.time(glm(y ~ ., data=df))
   user  system  elapsed
  0.361   0.018    0.379

より具体的な説明をするために、Rを使用して大規模な遺伝データ(800人x 800k SNPs、主な統計モデルはいくつかの共変量を持つ層化GLM(2分)を処理および分析しました。これは、効率的なRおよびsnpMatrixパッケージで利用可能なCコード(比較すると、同じ種類のモデルは専用のC ++ソフトウェア(plink)を使用して約8分かかりました。また、臨床研究(12k患者x 50変数)に取り組みました。最後に、私が知る限り、lme4パッケージは、混合効果モデルを不均衡で大規模なデータセットに適合させることができる唯一のソフトウェアです(大規模な教育評価の場合のように)。

Stata / SEは、大きなデータセットを処理できる別のソフトウェアです。SASとSPSSはファイルベースのソフトウェアであるため、大量のデータを処理します。データマイニング用のソフトウェアの比較レビューは、「データマイニングツール:CRMに最適なツール」で参照できます。視覚化には、多くのオプションもあります。多分良いスタートは、大規模なデータセットのグラフィックスです:100万個の視覚化(P MurrellによるJSSでのレビュー)、およびこのサイトのすべての関連スレッド。


@chl:64ビットR向けの効果的な並列コンピューティングソリューションを見つけましたか?私は最後(後半、この夏)見たときのみ非商用のものは唯一の32ビットRに仕事に登場
whuber

1
@whuberいや。大規模な遺伝データセットを管理するために昨年64ビットに切り替える必要がありましたが、使用した統計モデルは並列化を必要としません(私の知る限り)。RにOpenMPバインディングがあると思いましたが、これについては詳しく調査しませんでした。Revolution Analyticsがこの意味で努力していることを知っています(j.mp/d7dFb5)、それでも32ビット(これはおそらくあなたが言及したものです)。その間にR / parallel(rparallel.org)を見つけましたが、それがどれほど信頼できるか、成熟しているかはわかりません。
chl

@chl私はそれらをすべて試しましたが、どれも動作させることができませんでした。
whuber

@Whuber:Windowsまたは* nixボックス(mac、linux、...)を使用していますか
user603

2
ubuntu(google 'download ubuntu')をインストールし、virtualbox(youtube.com/watch?v=KXgKnd-u2R4)を介してubuntu内からWindows専用アプリを実行することをお勧めします。Rおよびlatexエディターは、ubuntu上で魅力的に動作します。
user603

8

Apache Mahoutのほとんどのアルゴリズムは、高次元のデータであっても20Mレコードを超えています。予測モデルのみを構築する必要がある場合、Vowpal Wabbit(http://hunch.net/~vw/)などの特定のツールがあり、単一のマシンで数十億のレコードに簡単に拡張できます。


素晴らしい...私はそれを知りませんでした!
chl

7

ありRHIPEのパッケージ(R-Hadoopの統合が)。Rの大量のデータを分析することが非常に簡単になります(例外あり)。


成功していますか?「はい」の場合、どのような用途向けですか?
chl

はい、RHIPEは素晴らしいです。私の友人の何人かはそれを使ってインターネットトラフィックデータを分析します。彼らの目的の1つは、侵入の試みをモデル化することです。そのような場合、データは膨大で、ペタバイトが一般的です!
suncoolsu

4

どんなモデルを考えているのか知らずに良い答えを出すのは難しいです。

線形回帰では、Rでbiglmパッケージを使用できました。


4

大規模なデータセットから予測モデルを構築しているため、GoogleのBigQuery(Dremelによる大規模なデータセット分析に関するGoogleの研究論文のテクノロジーのホストバージョン)恩恵を受けることができます。たとえば、クエリ結果をCSVとしてエクスポートして、予測分類子に取り込むことができます。

BigQueryには、クエリを実行して結果をエクスポートできるWebUIがあります。BigQueryのベータ(v1)バージョンにはRクライアントが含まれていましたが、本番バージョン(v2)には最終的にRクライアントも含まれます。


3

32GB RAMと4コアのEC2インスタンスで64ビットRを使用して、3.5Mの観測と44の機能をトレーニングしました。ランダムフォレストを使用し、うまく機能しました。トレーニングの前にデータを前処理/操作する必要があることに注意してください。


3

SAS Enterprise Minerバージョン6.2では、2000万件の観測値を処理するのに問題はなく、さまざまなモデルを状況に合わせて調整できます。ただし、SASの問題は通常コストです。SAS EMでできることの概要は次のとおりです 。SAS EM 6.2:新機能



0

RHIPEは優れたソリューションです。この問題が発生した場合は、おそらくこれを選択します。しかし、あなたはNCSSを検討しましたか?私の知る限り、最新バージョン10でこれらのモデルを作成できます。完全版 非常に高価ですが、いくつかのリモートデスクトップサービスでは、わずかな料金でアプリを実行できますが、私は知らない..

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.