問題タブ [h2o]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R - データ変更とスケーラブルなコード
こんにちは、ここ数日、私は小さな/大きな問題を抱えていました。
100 万行と 2 つの列 (クライアント ID と製品 ID) を持つトランザクション データセットがあり、これをバイナリ マトリックスに変換したいと考えています。reshape と spread 関数を使用しましたが、どちらの場合も 64MB の RAM を使用し、Rstudio/R がダウンしました。私は 1 つの CPU しか使用していないため、処理に多くの時間がかかります。私の質問は、スモール データとビッグ データの間のこの移行における新たな前進は何ですか? 誰がより多くのCPUを使用できますか?
検索していくつかの解決策を見つけましたが、専門家の意見が必要です
1 - Spark R を使用していますか?
2 - H20.ai ソリューション? http://h2o.ai/product/enterprise-support/
3 - 革命分析? http://www.revolutionanalytics.com/big-data
4 - クラウドに移行しますか? マイクロソフトの紺碧のような?
必要に応じて、多くのコアを備えた仮想マシンを使用できます..しかし、このトランザクションをスムーズに行う方法を知る必要があります
私の特定の問題
私はこのdata.frameを持っています(ただし、100万行あります)
そして私はしました:
これは小さなデータセットで機能します..しかし、100万行では、これには長い時間(12時間)がかかり、最大RAMが64MBであるためダウンします。助言がありますか?
python - h2o: 行を繰り返す
h2o の内部データ モデルが列指向であることは知っています (つまり、H2OFrame は H2OVec のコレクションです)。ただし、使用したいライブラリでは、H2OFrame の行を反復処理する必要があります。
行にイテレータを取得するクリーンな方法はありますか、または次のようなインデックス作成に頼る必要がありますか
遅くなることはわかっていますが、h2o.h2o.export_file
可能な場合は使用しています。
java - Java から H2O ライブラリ関数を直接使用できますか、それとも H2O の唯一のオプションは R ですか?
Javaで機械学習アルゴリズムを使いたいです。Hadoop を使用した Mahout は遅すぎ、weka はデータサイズが大きいため機能しません。JavaからH2Oライブラリを呼び出すことは可能ですか、またはJavaで利用可能な他のより良いオプションはありますか?
r - R の H2O Deeplearning で MSE にプログラムでアクセスする
私はRでH2Oの現在のバージョンを使用しており、以前のバージョンで作成されたはずの「ディープラーニング」の例に従っています。
古いサンプルコードを適応させる際に私が抱えている課題は、次のようなコードを使用して MSE のような相互検証統計にプログラムでアクセスできないことです。
cvmodel@model$valid_sqr_error
H2O モデル オブジェクトの構造を調べると、MSE とその他の統計情報がここにあります。
しかし、これらの数値の 1 つだけをプログラムで取得するための構文がわかりません。
r - R で h2o.init() を開始するときのエラー
h2o を起動しようとするとエラーが発生します。次の起動コマンドを実行します。
次のエラーが発生します。
特に啓発的ではありません。誰が問題が何であるかについてのヒントを持っていますか? システムには Java がインストールされていますが、ここでの質問とは異なり、 Java の警告は表示されません。
system("java -version") を実行すると、次のようになります。
sessionInfo() の出力は次のとおりです。
java - h2oでメモリサイズよりも大きなデータをロードする
h2oのメモリサイズよりも大きなデータをロードして実験しています。
H2oブログの言及:A note on Bigger Data and GC: We do a user-mode swap-to-disk when the Java heap gets too full, i.e., you’re using more Big Data than physical DRAM. We won’t die with a GC death-spiral, but we will degrade to out-of-core speeds. We’ll go as fast as the disk will allow. I’ve personally tested loading a 12Gb dataset into a 2Gb (32bit) JVM; it took about 5 minutes to load the data, and another 5 minutes to run a Logistic Regression.
R
接続するコードは次のh2o 3.6.0.8
とおりです。
与える
169 MB の csv を h2o に読み込もうとしました。
エラーをスローした、
これは、メモリ不足エラーを示しています。
質問: H2o がそのメモリ容量よりも大きなデータ セットをロードすることを約束している場合 (上記のブログの引用にあるように、ディスクへのスワップ メカニズム)、これはデータをロードする正しい方法ですか?