問題タブ [joblib]
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 - ループを引き起こす Python Joblib
私はjoblibを使ってsklearn分類器をロードしています。クラスにこれがありますが、クラスの__init__
関数を呼び出し続けているようです。以下に図を示します。
何らかの理由で、joblib.load(self.FILENAME) を呼び出すと、pickle はクラス全体を再度インスタンス化しようとします。これにより、__init__
再度呼び出して分類子を再度ロードしようとするため、問題が発生します。
なぜこれが起こっているのかよくわかりません。何か案は?ご協力いただきありがとうございます。さらに説明が必要な場合はお知らせください。
python - If starting unix pipe with Parallel command, pipe commands complain after cntrl-c
If I start a process in parallel with joblib that calls a subprocess with a unix pipe (sed | uniq | blabla
) many of those processes write error messages to the terminal after having sucessfully exited the python process with Ctrl-C.
Is there any way to avoid output like the above using joblib Parallel?
python - Python scikit Learn n_jobs
これは実際の問題ではありませんが、理解したいと思います。
- Win7 4 コア 8 GB システムで Anaconda ディストリビューションから sklearn を実行する
- 200.000 サンプル * 200 値テーブルに KMeans モデルを当てはめます。
- n-jobs = -1: で実行: (この
if __name__ == '__main__':
行をスクリプトに追加した後) スクリプトがそれぞれ 10 スレッドで 4 つのプロセスを開始しているのがわかります。各プロセスは、CPU の約 25% を使用します (合計: 100%)。期待どおりに動作するようです - n-jobs = 1 で実行: 20 スレッドの単一プロセスにとどまり (驚くことではありません)、CPU の 100% も使用します。
私の質問: ライブラリがとにかくすべてのコアを使用している場合、n-jobs (および joblib) を使用するポイントは何ですか? 何か不足していますか?それはWindows固有の動作ですか?
python - scikit-learn で将来使用するために TfidfVectorizer を保存するにはどうすればよいですか?
記事のコレクションをベクトル化し、TfidfVectorizer
続いて機能を選択する があります。
これを保存して、他のプログラムで使用したいと思います。TfidfVectorizer()
トレーニング データセットで と 機能セレクターを再実行したくありません。それ、どうやったら出来るの?を使用してモデルを永続化する方法は知っていますがjoblib
、これはモデルを永続化することと同じでしょうか。
python - Flask + sklearnはjoblib.load AttributeError 'module'オブジェクトに属性がありません
フラスコアプリケーション。joblib.loadを実行してAttributeError 'ManyToOneClassifier'を取得
しようとしています。
しかし、私はすでにすべてのモジュールをクラスでインポートしています。そして、モジュール内のクラスを使用してモジュールにロードしようとすると...再びエラーが発生します。
しかし、__ main __にロードすると、すべてうまくいきます...アップロードすると、uwsgiは__ main __に何も表示されません。私は C# プログラマー (.NET、Microsoft など) で、nginx と Linux の経験はあまりありません。
__初期化__.py
python - インデックスのリストを使用して NumPy 配列を効率的に埋める
joblib
結果としてリストを返す並列ループを実行する方法を知っています。
numpy
ただし、定義済みのマトリックスを並行して埋めることは可能ですか?
次の最小限の例のマトリックスとデータを想像してください。
column_data
ソート済みで一意であることに注意してください。data
長方形の行列ではなく、リストのリストです。
ループ:
このループを並列化することは可能ですか? 並列化を行わないと、70,000 x 10,000
行列への入力は非常に遅くなります。
python - Large Pandas Dataframe 並列処理
グローバル変数として非常に大きな Pandas データフレームにアクセスしています。この変数は、joblibを介して並行してアクセスされます。
例えば。
この方法で元の df にアクセスすると、プロセス間でデータがコピーされるようです。元の df がどのサブプロセスでも変更されていないため、これは予期しないことですか? (またはそれは?)