問題タブ [dask]
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.
python - das プロセスが何らかの理由で終了しない
大きく設定すると (10 など)、dask の子プロセスが何らかの理由で終了しませんnum_workers
。私の仕事は 100 以上のコアのマシンで実行されており、50 GB のファイルのワード カウントに似たコードを実行しています。スタックトレースは次のようになります。
(他の労働者も同様)
何が起こっているのですか?小さい入力 (100MB) で実行されている同じジョブは常に終了します。
python - Python xarray を使用した 'where' によるマスキングが機能しなくなった
アップデート後、困っていxarray
ます。
寸法が次の塩分データセットがあります。
特定のステーションについて、選択した深さ、たとえば -10 m の塩分を取得したいと考えています。ディメンション レイヤーには、時間とともに変化する深さの値が含まれます。つまり、特定のレイヤーには、(水位の変動により) 時間とともに異なる深さの値が含まれます。
以前は、次のことを行っていました。
これはうまく機能していました。
しかし、今、私はこのエラーが発生しています:
誰かがここで何が起こっているのか知っていますか?
または、データセットをスライスするよりスマートな方法はありますか?
私が使用している xarray バージョンは次のとおりです。
xarray 0.7.2
sys.バージョン:
編集: 追加されたデータセットの詳細
python - Dask で Bag.to_textfiles を使用すると、「AttributeError: 'dict' object has no attribute 'endswith'」というエラーが表示されます。
タイトルはそのほとんどを述べていますが、問題のオブジェクトは次のとおりです。
しかし、私がしようとすると
私は得る
ダスクのバージョン: 0.9.0
sys.バージョン
3.5.1 |アナコンダ 4.0.0 (x86_64)| (デフォルト、2015 年 12 月 7 日 11:24:55) [GCC 4.2.1 (Apple Inc. ビルド 5577)]
見てくれてありがとう!
python - Dask Bag.to_textfiles は単一のパーティションでは機能しますが、複数のパーティションでは機能しません
非常に簡単に..これはバグですか、それとも何か不足していますか?
tmp_j
単品で6仕切りのバッグです。ただし、大きなバッグでも同様の反応が得られます。
この特定のバッグは次のもので構成されています。
次のようになります。
再度、感謝します..
正しく動作します(ファイルを書き込みます)が、
与える
注:それは
正常に動作します(ただし、繰り返しますtmp_b.npartitions == 1
)。
洞察に感謝します-ソースを確認しましたが、スマート/怠惰な比率が低すぎることに気付きました。
これを把握したと確信したら、ドキュメントを提出します。
python - dasを使用した大きな行列演算でのメモリの枯渇
現在、私はこの論文を python で学部論文に実装していますが、マハラノビス メトリック学習のみを使用しています (興味がある場合)。
簡単に言えば、整数で構成される 67K*67K のサイズの行列を学習する必要があるときに、numpy.dot(A.T,A)
A がランダムなベクトル サイズ (1,67K) であるという単純な方法で問題に直面します。私のPCには8GBのRAMしかなく、必要なメモリの生の計算はinitに16GBであるため、それを行うと単純にMemoryErrorがスローされます。代替手段を検索してdaskを見つけたよりも。
だから私はこれでdaskに移りました、dask.array.dot(A.T,A)
そしてそれは終わりました。しかし、そのマトリックスにホワイトニング変換を行う必要があるよりも、SVDを取得することで達成できます。しかし、そのSVDを実行するたびに、ipythonカーネルが停止します(メモリ不足が原因だと思います)。
これは、カーネルが死ぬまで、initからこれまでのところ私がしていることです:
私はまだU、S、およびVtを取得していません。
dask を使用している場合でも、この種のことを行うには、私の記憶が単に十分ではないのでしょうか? または実際にはこれは仕様の問題ではなく、メモリ管理が悪いのでしょうか? または、他の何か?
この時点で、他のより大きなスペックの PC で必死に試しているので、32 GB RAM のベアメタル サーバーをレンタルする予定です。そうしてもいいのかな?
arrays - dask.array.reshape 非常に遅い
次のように繰り返し構築する配列があります。
次に、次のように変形します。
これを行うのは、dask.array.atop では (200,200) -> (200,200**2) のような形状から移動できないようだからです。これは、チャンキングと遅延評価に関連しているためだと思います。
step4 を実行して形状を変更しようとすると、dask は形状を変更する前に行列を計算するようになり、その結果、計算時間とメモリが大幅に使用されます。
これを回避する方法はありますか?
リクエストに応じて、ダミーコードをいくつか示します。
python - パンダで適用を使用して多くの(あいまいな)文字列比較を並列化する方法は?
次の問題があります
次のような文を含むデータフレームマスターがあります
Master のすべての行について、別の Dataframeスレーブを検索して、fuzzywuzzy
. 2 つのデータフレーム間で一致する文が少し異なる可能性があるため (余分な文字など)、fuzzywuzzy を使用します。
たとえば、スレーブは
これは、完全に機能し、素晴らしく、コンパクトな作業例です:)
100 万ドルの問題は、上記の適用コードを並列化できるかどうかです。
結局のところ、すべてmaster
の行がすべての行と比較されますslave
(スレーブは小さなデータセットであり、データの多くのコピーを RAM に保持できます)。
複数の比較を実行できなかった理由がわかりません (つまり、同時に複数の行を処理します)。
問題: それを行う方法がわかりません。または、それが可能かどうかもわかりません。
どんな助けでも大歓迎です!