1

SAS サーバーで K-Means クラスタリング アルゴリズムを実行するタスクがありますが、メモリが不足しています。データセットは 500G です。メモリに収まるようにサンプリングできることはわかっていますが、データ全体でモデルを実行したい場合、Oracle R Enterprise (ORE) は問題の解決に役立ちますか?

ORE と ORCH に関するその他の関連する質問:

  1. Oracle R Packageにはクラスタリング・アルゴリズムが含まれていますか? 利用可能な Oracle R パッケージのリストはありますか?
  2. Oracle R Enterprise で kmeans アルゴリズム (R CRAN パッケージ) を実行すると、メモリの問題も発生しますか?
  3. 分散型 Hadoop クラスターで実行するように作成された、BDA で利用可能な R クラスター化パッケージはありますか?

ありがとう

4

2 に答える 2

2

最善の策は、Hadoop で Mahout を使用することです。ここで説明されているように、Mahout は K-Means クラスタリングをサポートしており、Hadoop での Mahout のセットアップは非常に簡単です。

数台のマシンで独自の Hadoop クラスターを構築できる場合、Mahout の実行には 30 分ほどかかります。数日前に試したとき、このブログは非常に役に立ちました。

同じことができ、多くのお金と時間を節約できます。

ここでは Oracle R の使用については触れていません。まず、Oracle R についてはあまり詳しくありませんが、Hadoop の Mahout が他の方法よりもはるかに役立つことは知っています。方法に関するリソースがたくさんあるからです。短時間で済ませるためです。本当にOracle Rを探しているなら、これは答えではありません。

于 2012-06-01T05:35:54.923 に答える
0

数日前に ORE を使い始めたばかりなので、まだ専門家ではありませんが、K-means 関数があることは簡単にわかります。ここでORE 1.3 ドキュメントを参照し、 ore.odmKMeans 関数を検索してください。私はすでにチェックしました、それはそこにあります。したがって、最初の質問に対する答えはイエスです。ORE には K-means 関数があります。

メモリの問題に関する2番目の質問について。ORE を使用するには、Oracle データベースが必要です。さらに優れた Exadata Oracle マシン (これらは通常、約 1Tb のメモリを備えています) であり、ORE R 関数の多くは、データベース レベルで SQL として実行するように実装されているため、データベース上で実行され、 R のメモリにデータをロードするよりもメモリが少なく、SQL プッシュダウンを使用しないが、より通常の R メソッドを使用する関数でさえ、データベース マシンのメモリを使用します。データベース マシンは通常、どの R マシンよりも多くのメモリを持っています。正直なところ、私は ORE K-means の実装をまだ見ていないので、この関数の場合がどうなるかわかりません。

于 2013-02-26T03:36:01.480 に答える