誰かがsklearn-classの "n_jobs"を使用していますか?私はAnaconda 3.4 64ビットでsklearnと仕事をしています。 Spyderのバージョンは2.3.8です。私のスクリプトは、いくつかのsklearn-classの "n_jobs"パラメータをゼロ以外の値に設定した後、その実行を終了できません。どうしてですか?n_jobsはsklearn-classで動作しません
4
A
答えて
0
GridSearchCVやcross_val_scoreなどのいくつかのscikit-learnツールは、n_jobs> 1を引数としていくつかのPythonプロセスに実行を並列化するPythonのマルチプロセッシングモジュールに内部的に依存しています。
はSklearnのドキュメントから撮影:
問題はPythonのマルチプロセッシングは、パフォーマンス上の理由からexecシステムコールでそれに従わずにforkシステムコール を行うということです。 OSX、Accelerate/vecLibのような多くのライブラリは、GCCのOpenMPランタイムである (いくつかのバージョン)、nvidiaのCuda(そして おそらく多くの)は、独自の内部スレッドプールを管理します。 forkを呼び出すと、子プロセス内のスレッドプール状態が破損しています。 スレッドプールには多くのスレッドがあると考えられ、メインの スレッド状態だけがforkされていると考えられます。ライブラリ を変更してフォークが発生したことを検出し、その場合にスレッド プールを再初期化することができます:OpenBLAS(0.2.10以降、マスター の上流にマージされています)を行い、GCCのOpenMPランタイム( はまだレビューされていません)。
関連する問題
- 1. コピースクリプトはローカルサーバでは動作しません。リモートサーバでは動作しません。
- 2. は動作しません
- 3. JQueryは動作しませんが、JSFiddleで動作します
- 4. sklearn n_jobs = -1のロジスティック回帰は実際には並列化されません
- 5. Rails "remote:true"はlink_toで動作し、form_tagで動作しません
- 6. php mail()は動作しませんが、sendmailは動作しません。
- 7. googleTranslateElementInitはオペラで動作しません
- 8. client_side_validationsはsimple_nested_formで動作しません
- 9. ライトボックスはIE8で動作しません
- 10. CKEDITORサーバーホスティングでは動作しません
- 11. ElmahはMVC5で動作しません
- 12. jQueryはiFrameで動作しません。
- 13. スクリプトはバックグラウンドで動作しません
- 14. LibreOfficeはCentOSで動作しません
- 15. onkeydownはjavascriptで動作しません
- 16. translateZはFirefoxで動作しません
- 17. ElasticsearchはDockerで動作しません
- 18. AJAXコールは&#で動作しません
- 19. スタティックファイルはDjangoで動作しません
- 20. FloatはIE9で動作しません
- 21. hasRole()はJWTで動作しません
- 22. setImageDrawableはURLで動作しません
- 23. @keyframeはmozillaで動作しません
- 24. Session.Clear()はSafariで動作しません
- 25. jQueryはangularJsで動作しません
- 26. NSDistributedNotificationCenter.DefaultCenter.AddObserverはXamarine.Macで動作しません
- 27. UIBarButtonItemはios11で動作しません
- 28. .hover()はタッチで動作しません
- 29. バットナイフはRXJavaで動作しません
- 30. PCAPはCLIONで動作しません
Windowsの場合、スクリプトに次のものを含めるようにしてください: 'if __name__ ==" __main __ ":'。それは私のためのトリックでした。スクリプトに最初に追加した後、インデントを使用して残りのコードを追加しました。 – sera