私は、Moore-Penrose擬似逆関数の使用を必要とするSparkの極端な学習機種のニューラルネットワークを開発しています。これはSparkライブラリでは使用できませんので、Spreeデータ構造をBreezeマトリックスに変換する必要があるBreezeを使用しています。 beta = pinv(H) * T
までは、すべてがOOM例外(私はSparkでは可能ではないと思っていた)で失敗します。なぜどんなアイデア?Breeze pinv(Moore-Penrose)疑似逆関数は、Sparkを使用してOutOfMemoryエラーを返します。
pinv
は、BreezeのMoore-Penrose擬似逆行列です。 Hは、35,000行10列の行列です。 SVDはこれに対処できなければなりません。それは特に大きなデータセットではなく、30Mbしか必要としません。私はラップトップでローカルにすべてを実行していますが、クラウドには何もありません。私はノートパソコン(MacBook Air)に8Gのメモリを持っています。
私はあなたが火花シェルコマンドを使用してドライバのメモリ容量を増やすことができることを読んで私はこれを行う方法がわからない、またはそれはSparkSession
val spark: SparkSession = SparkSession
.builder()
.master("local[*]")
.appName("ELMPipelineTest")
.getOrCreate()`
を設定し、私のIDEのコードとリンクする方法を
よろしくお願いします。次に何を考えていますか?これは私のラップトップで動作するには大きすぎると言っていますか? SVDはアルゴリズムに不可欠であり、それがなければ動作しません。あなたはドライバーの記憶を増やすことが効果をもたらすと思いますか?私は実際にどのようにメモリを変更するかわからない、指示は初心者のためにかなり不透明です。ご協力いただきありがとうございます! – LucieCBurgess