Scikit-learn выпускает Python GIL? - PullRequest
       4

Scikit-learn выпускает Python GIL?

4 голосов
/ 12 сентября 2011

Я бы хотел обучить несколько SVM одного класса в разных потоках.Кто-нибудь знает, выпускает ли SVM от Scikit GIL?Я не нашел ни одного ответа онлайн.

Спасибо

Ответы [ 2 ]

4 голосов
/ 13 сентября 2011

Нет, scikit-learn не разыгрывает трюки с GIL. Вместо этого он использует joblib для всего своего параллелизма, который порождает несколько процессов для выполнения своей работы. Вы можете достичь желаемого с помощью пользовательской конструкции joblib Parallel.

Если вы собираетесь обучать несколько классификаторов в одном наборе данных с разными настройками, чтобы найти оптимальный, рассмотрите возможность использования класса GridSearchCV, который обрабатывает параллелизм для вас.

3 голосов
/ 08 января 2014

Некоторые классы sklearn Cython действительно выпускают GIL внутри критически важных для производительности разделов, например, деревья решений (например, используемые в случайных лесах) с 0.15 (будет выпущен в начале 2014 г.) и оболочки libsvm.

Это не общее правило, хотя.Если вы идентифицируете критичный к производительности код Cython в sklearn, который можно изменить для выпуска GIL, пожалуйста, не стесняйтесь отправлять запрос на извлечение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...