Версия 1.0#
Для краткого описания основных особенностей выпуска, пожалуйста, обратитесь к Основные новости выпуска scikit-learn 1.0.
Легенда для списков изменений
Основная функция что-то большое, что вы не могли сделать раньше.
Функция что-то, что вы не могли делать раньше.
Эффективность существующий признак теперь может не требовать столько вычислений или памяти.
Улучшение различные мелкие улучшения.
Исправление то, что ранее не работало, как задокументировано – или согласно разумным ожиданиям – теперь должно работать.
Изменение API вам потребуется изменить свой код, чтобы добиться того же эффекта в будущем; или функция будет удалена в будущем.
Версия 1.0.2#
Декабрь 2021
Исправление
cluster.Birch,feature_selection.RFECV,ensemble.RandomForestRegressor,ensemble.RandomForestClassifier,ensemble.GradientBoostingRegressor, иensemble.GradientBoostingClassifierбольше не выдают предупреждение при обучении на pandas DataFrame. #21578 by Томас Фан.
Журнал изменений#
sklearn.cluster#
Исправление Исправлен бесконечный цикл в
cluster.SpectralClusteringпутем перемещения счетчика итераций из try в except. #21271 by Тайлер Мартин.
sklearn.datasets#
Исправление
datasets.fetch_openmlтеперь потокобезопасен. Данные сначала загружаются во временную подпапку, а затем переименовываются. #21833 by Сиаваш Резазаде.
sklearn.decomposition#
Исправление Исправлено ограничение на целевую функцию
decomposition.DictionaryLearning,decomposition.MiniBatchDictionaryLearning,decomposition.SparsePCAиdecomposition.MiniBatchSparsePCAбыть выпуклой и соответствовать упомянутой статье. #19210 by Жереми дю Буаберранже.
sklearn.ensemble#
Исправление
ensemble.RandomForestClassifier,ensemble.RandomForestRegressor,ensemble.ExtraTreesClassifier,ensemble.ExtraTreesRegressor, иensemble.RandomTreesEmbeddingтеперь вызываетValueErrorкогдаbootstrap=Falseиmax_samplesне являетсяNone. #21295 Haoyin Xu.Исправление Исправлена ошибка в
ensemble.GradientBoostingClassifierгде экспоненциальная потеря вычисляла положительный градиент вместо отрицательного. #22050 by Guillaume Lemaitre.
sklearn.feature_selection#
Исправление Исправлено
feature_selection.SelectFromModelпутем улучшения поддержки для базовых оценщиков, которые не устанавливаютfeature_names_in_. #21991 by Томас Фан.
sklearn.impute#
Исправление Исправлена ошибка в
linear_model.RidgeClassifierCVгде методpredictвыполнялargmaxна оценки, полученные изdecision_functionвместо возврата матрицы индикаторов мультиметок. #19869 by Guillaume Lemaitre.
sklearn.linear_model#
Исправление
linear_model.LassoLarsICтеперь правильно вычисляет AIC и BIC. Теперь выдается ошибка, когдаn_features > n_samplesи когда дисперсия шума не предоставлена. #21481 by Guillaume Lemaitre и Андрес Бабино.
sklearn.manifold#
Исправление Исправлена ненужная ошибка при обучении
manifold.Isomapс предварительно вычисленной плотной матрицей расстояний, где граф соседей имеет несколько несвязных компонент. #21915 by Tom Dupre la Tour.
sklearn.metrics#
Исправление Все
sklearn.metrics.DistanceMetricподклассы теперь правильно поддерживают атрибуты буфера только для чтения. Это исправляет регрессию, введенную в версии 1.0.0 по сравнению с 0.24.2. #21694 by Julien Jerphanion.Исправление Все
sklearn.metrics.MinkowskiDistanceтеперь принимает параметр веса, что позволяет писать код, который ведет себя согласованно как с scipy 1.8, так и с более ранними версиями. В свою очередь, это означает, что все оценки на основе соседей (кроме тех, которые используютalgorithm="kd_tree") теперь принимает параметр веса сmetric="minkowski"для получения результатов, которые всегда согласованы сscipy.spatial.distance.cdist. #21741 by Оливье Гризель.
sklearn.multiclass#
Исправление
multiclass.OneVsRestClassifier.predict_probaне выдает ошибку при обучении на постоянных целочисленных целевых значениях. #21871 by Томас Фан.
sklearn.neighbors#
Исправление
neighbors.KDTreeиneighbors.BallTreeправильно поддерживать атрибуты буфера только для чтения. #21845 by Томас Фан.
sklearn.preprocessing#
Исправление Исправляет ошибку совместимости с NumPy 1.22 в
preprocessing.OneHotEncoder. #21517 by Томас Фан.
sklearn.tree#
Исправление Предотвращает
tree.plot_treeот выхода за границы рисунка. #21917 by Томас Фан.Исправление Поддержка загрузки pickle-файлов моделей решающих деревьев, когда pickle был сгенерирован на платформе с другой разрядностью. Типичный пример — обучение и сохранение модели на 64-битной машине и загрузка модели на 32-битной машине для предсказания. #21552 by Loïc Estève.
sklearn.utils#
Исправление
utils.estimator_html_reprтеперь экранирует все описания оценщиков в сгенерированном HTML. #21493 by Орельен Жерон.
Версия 1.0.1#
Октябрь 2021
Фиксированные модели#
Исправление Методы без обучения в следующих классах не вызывают UserWarning при обучении на DataFrames с допустимыми именами признаков:
covariance.EllipticEnvelope,ensemble.IsolationForest,ensemble.AdaBoostClassifier,neighbors.KNeighborsClassifier,neighbors.KNeighborsRegressor,neighbors.RadiusNeighborsClassifier,neighbors.RadiusNeighborsRegressor. #21199 by Томас Фан.
sklearn.calibration#
Исправление Исправлено
calibration.CalibratedClassifierCVучитыватьsample_weightпри вычислении предсказания базового оценщика, когдаensemble=False. #20638 by Жюльен Боне.Исправление Исправлена ошибка в
calibration.CalibratedClassifierCVсmethod="sigmoid"который игнорировалsample_weightпри вычислении байесовских априорных вероятностей. #21179 by Guillaume Lemaitre.
sklearn.cluster#
Исправление Исправлена ошибка в
cluster.KMeans, обеспечивая воспроизводимость и эквивалентность между разреженными и плотными входными данными. #21195 by Жереми дю Буаберранже.
sklearn.ensemble#
Исправление Исправлена ошибка, которая могла вызывать segfault в редких случаях для
ensemble.HistGradientBoostingClassifierиensemble.HistGradientBoostingRegressor. #21130 Christian Lorentzen.
sklearn.gaussian_process#
Исправление Вычислить
y_stdправильно с многозадачностью вsklearn.gaussian_process.GaussianProcessRegressorпозволяя правильную нормализацию в многозадачной сцене. #20761 by Патрик де К. Т. Р. Феррейра.
sklearn.feature_extraction#
Эффективность Исправлен регресс эффективности, введенный в версии 1.0.0 в
transformметодfeature_extraction.text.CountVectorizerкоторая больше не проверяет наличие заглавных символов в предоставленном словаре. #21251 by Жереми дю Буаберранже.Исправление Исправлена ошибка в
feature_extraction.text.CountVectorizerиfeature_extraction.text.TfidfVectorizerпутем вызова ошибки, когда 'min_idf' или 'max_idf' являются числами с плавающей точкой больше 1. #20752 by Алек Лефевр.
sklearn.linear_model#
Исправление Улучшает стабильность
linear_model.LassoLarsдля разных версий openblas. #21340 by Томас Фан.Исправление
linear_model.LogisticRegressionтеперь выдает более понятное сообщение об ошибке, когда решатель не поддерживает разреженные матрицы с индексами int64. #21093 by Tom Dupre la Tour.
sklearn.neighbors#
Исправление
neighbors.KNeighborsClassifier,neighbors.KNeighborsRegressor,neighbors.RadiusNeighborsClassifier,neighbors.RadiusNeighborsRegressorсmetric="precomputed"вызывает ошибку дляbsrиdokразреженные матрицы в методах:fit,kneighborsиradius_neighbors, из-за обработки явных нулей вbsrиdokразреженный граф форматы. #21199 by Томас Фан.
sklearn.pipeline#
Исправление
pipeline.Pipeline.get_feature_names_outкорректно передаёт имена признаков из одного шага конвейера в следующий. #21351 by Томас Фан.
sklearn.svm#
Исправление
svm.SVCиsvm.SVRseqlearn CVE-2020-28975. #21336 by Томас Фан.
sklearn.utils#
Улучшение
utils.validation._check_sample_weightможет выполнять проверку неотрицательности весов выборки. Это можно включить с помощью булева параметра only_non_negative. Оценщики, проверяющие неотрицательные веса, обновлены:linear_model.LinearRegression(здесь предыдущее сообщение об ошибке было вводящим в заблуждение),ensemble.AdaBoostClassifier,ensemble.AdaBoostRegressor,neighbors.KernelDensity. #20880 by Guillaume Lemaitre и András Simon.Исправление Исправлена ошибка в
sklearn.utils.metaestimators.if_delegate_has_methodгде базовая проверка атрибута не работала с массивами NumPy. #21145 by Захлии.
Разное#
Исправление Подгонка оценщика на наборе данных, у которого нет имён признаков, который ранее был подогнан на наборе данных с именами признаков, больше не сохраняет старые имена признаков, хранящиеся в
feature_names_in_атрибут. #21389 by Жереми дю Буаберранже.
Версия 1.0.0#
Сентябрь 2021
Минимальные зависимости#
Версия 1.0.0 scikit-learn требует python 3.7+, numpy 1.14.6+ и scipy 1.1.0+. Опциональная минимальная зависимость - matplotlib 2.2.2+.
Принудительное использование только ключевых аргументов#
В стремлении обеспечить ясное и недвусмысленное использование библиотеки, большинство
параметров конструкторов и функций теперь должны передаваться как ключевые аргументы
(т.е. с использованием param=value синтаксис) вместо позиционного. Если параметр, доступный только по ключевому слову,
используется как позиционный, возникает TypeError теперь вызывается.
#15005 #20002 by Joel Nothman, Адрин Джалали, Томас Фан,
Nicolas Hug, и Tom Dupre la Tour. См. SLEP009
для получения дополнительной информации.
Измененные модели#
Следующие оценщики и функции, при обучении на тех же данных и параметрах, могут создавать модели, отличные от предыдущей версии. Это часто происходит из-за изменений в логике моделирования (исправления ошибок или улучшения) или в процедурах случайной выборки.
Исправление
manifold.TSNEтеперь избегает проблем численного переполнения при вычислении матрицы сходства.Исправление
manifold.Isomapтеперь соединяет отключенные компоненты графа соседей вдоль некоторых пар минимального расстояния, вместо изменения всех бесконечных расстояний на ноль.Исправление Критерий разделения
tree.DecisionTreeClassifierиtree.DecisionTreeRegressorможет быть затронут исправлением в обработке ошибок округления. Ранее могли возникать некоторые дополнительные ложные разделения.Исправление
model_selection.train_test_splitсstratifyпараметр иmodel_selection.StratifiedShuffleSplitможет привести к немного другим результатам.
Подробности перечислены в журнале изменений ниже.
(Хотя мы стараемся лучше информировать пользователей, предоставляя эту информацию, мы не можем гарантировать, что этот список полный.)
Журнал изменений#
Изменение API Опция использования квадратичной ошибки через
lossиcriterionпараметров стала более согласованной. Предпочтительный способ — установка значения в"squared_error". Старые имена опций всё ещё действительны, дают те же модели, но устарели и будут удалены в версии 1.2. #19310 by Christian Lorentzen.Для
ensemble.ExtraTreesRegressor,criterion="mse"устарело, используйте"squared_error"вместо этого, что теперь является значением по умолчанию.Для
ensemble.GradientBoostingRegressor,loss="ls"устарело, используйте"squared_error"вместо этого, что теперь является значением по умолчанию.Для
ensemble.RandomForestRegressor,criterion="mse"устарело, используйте"squared_error"вместо этого, что теперь является значением по умолчанию.Для
ensemble.HistGradientBoostingRegressor,loss="least_squares"устарел, используйте"squared_error"вместо этого, что теперь является значением по умолчанию.Для
linear_model.RANSACRegressor,loss="squared_loss"устарел, используйте"squared_error"вместо этого.Для
linear_model.SGDRegressor,loss="squared_loss"устарел, используйте"squared_error"вместо этого, что теперь является значением по умолчанию.Для
tree.DecisionTreeRegressor,criterion="mse"устарело, используйте"squared_error"вместо этого, что теперь является значением по умолчанию.Для
tree.ExtraTreeRegressor,criterion="mse"устарело, используйте"squared_error"вместо этого, что теперь является значением по умолчанию.
Изменение API Опция использования абсолютной ошибки через
lossиcriterionпараметров стала более согласованной. Предпочтительный способ — установка значения в"absolute_error". Старые имена опций всё ещё действительны, дают те же модели, но устарели и будут удалены в версии 1.2. #19733 by Christian Lorentzen.Для
ensemble.ExtraTreesRegressor,criterion="mae"устарело, используйте"absolute_error"вместо этого.Для
ensemble.GradientBoostingRegressor,loss="lad"устарело, используйте"absolute_error"вместо этого.Для
ensemble.RandomForestRegressor,criterion="mae"устарело, используйте"absolute_error"вместо этого.Для
ensemble.HistGradientBoostingRegressor,loss="least_absolute_deviation"устарел, используйте"absolute_error"вместо этого.Для
linear_model.RANSACRegressor,loss="absolute_loss"устарел, используйте"absolute_error"вместо этого, что теперь является значением по умолчанию.Для
tree.DecisionTreeRegressor,criterion="mae"устарело, используйте"absolute_error"вместо этого.Для
tree.ExtraTreeRegressor,criterion="mae"устарело, используйте"absolute_error"вместо этого.
Изменение API
np.matrixиспользование устарело в версии 1.0 и вызоветTypeErrorв версии 1.2. #20165 by Томас Фан.Изменение API get_feature_names_out был добавлен в API трансформера для получения имён выходных признаков.
get_feature_namesв свою очередь устарел. #18444 by Томас Фан.Изменение API Все оценщики хранят
feature_names_in_при обучении на pandas Dataframes. Эти имена признаков сравниваются с именами, видимыми в не-fitметоды, напримерtransformи вызоветFutureWarningесли они не согласованы, см. также Основные новости выпуска scikit-learn 1.0. ЭтиFutureWarnings станетValueErrors в 1.2. #18010 by Томас Фан.
sklearn.base#
Исправление
config_contextтеперь потокобезопасен. #18736 by Томас Фан.
sklearn.calibration#
Функция
calibration.CalibrationDisplayдобавлено для построения калибровочных кривых. #17443 by Lucy Liu.Исправление The
predictиpredict_probaметодыcalibration.CalibratedClassifierCVтеперь может корректно использоваться на предварительно обученных конвейерах. #19641 by Алек Лефевр.Исправление Исправлена ошибка при использовании
ensemble.VotingClassifierкакbase_estimatorвcalibration.CalibratedClassifierCV. #20087 by Клеман Фошро.
sklearn.cluster#
Эффективность The
"k-means++"инициализацияcluster.KMeansиcluster.MiniBatchKMeansтеперь работает быстрее, особенно в многопоточных настройках. #19002 by Джон Кралл и Жереми дю Буаберранже.Эффективность
cluster.KMeansсalgorithm='elkan'теперь быстрее в многопоточных настройках. #19052 by Yusuke Nagasaka.Эффективность
cluster.MiniBatchKMeansтеперь работает быстрее в многопоточных настройках. #17622 by Жереми дю Буаберранже.Эффективность
cluster.OPTICSтеперь может кэшировать результат вычисления дерева, используяmemoryпараметр. #19024 by Фрэнки Робертсон.Улучшение The
predictиfit_predictметодыcluster.AffinityPropagationтеперь принимают разреженный тип данных для входных данных. #20117 by Venkatachalam NatchiappanИсправление Исправлена ошибка в
cluster.MiniBatchKMeansгде веса образцов частично игнорировались, когда входные данные разреженные. #17622 by Жереми дю Буаберранже.Исправление Улучшенное обнаружение сходимости на основе изменения центра в
cluster.MiniBatchKMeansчто было почти никогда достижимо. #17622 by Жереми дю Буаберранже.Исправление
cluster.AgglomerativeClusteringтеперь поддерживает наборы данных только для чтения с отображением в память. #19883 by Julien Jerphanion.Исправление
cluster.AgglomerativeClusteringкорректно соединяет компоненты, когда connectivity и affinity оба предварительно вычислены и количество связных компонентов больше 1. #20597 by Томас Фан.Исправление
cluster.FeatureAgglomerationне принимает**paramskwarg вfitфункции больше, что приводит к более краткому сообщению об ошибке. #20899 by Adam Li.Исправление Исправлена ошибка в
cluster.KMeans, обеспечивая воспроизводимость и эквивалентность между разреженными и плотными входными данными. #20200 by Жереми дю Буаберранже.Изменение API
cluster.Birchатрибуты,fit_иpartial_fit_, являются устаревшими и будут удалены в версии 1.2. #19297 by Томас Фан.Изменение API значения по умолчанию для
batch_sizeпараметрcluster.MiniBatchKMeansбыл изменен с 100 на 1024 по причинам эффективности.n_iter_атрибутcluster.MiniBatchKMeansтеперь сообщает количество начатых эпох иn_steps_атрибут сообщает количество обработанных мини-пакетов. #17622 by Жереми дю Буаберранже.Изменение API
cluster.spectral_clusteringвызывает улучшенную ошибку при передачеnp.matrix. #20560 by Томас Фан.
sklearn.compose#
Улучшение
compose.ColumnTransformerтеперь записывает выход каждого трансформера вoutput_indices_. #18393 by Luca Bittarello.Улучшение
compose.ColumnTransformerтеперь позволяет входным данным DataFrame иметь измененный порядок столбцов вtransform. Кроме того, столбцы, которые удаляются, не потребуются при преобразовании, а дополнительные столбцы будут проигнорированы, еслиremainder='drop'. #19263 by Томас Фан.Улучшение Добавляет
**predict_paramsключевой аргумент дляcompose.TransformedTargetRegressor.predictкоторый передает именованные аргументы регрессору. #19244 by Рикардо.Исправление
compose.ColumnTransformer.get_feature_namesподдерживает нестроковые имена признаков, возвращаемые любым из его преобразователей. Однако обратите внимание, чтоget_feature_namesустарел, используйтеget_feature_names_outвместо этого. #18459 by Albert Villanova del Moral и Alonso Silva Allende.Исправление
compose.TransformedTargetRegressorтеперь принимает nD-цели с соответствующим трансформером. #18898 by Орас Фонгпанагнам.Изменение API Добавляет
verbose_feature_names_outtocompose.ColumnTransformer. Этот флаг управляет добавлением префиксов к именам признаков в get_feature_names_out. #18444 и #21080 by Томас Фан.
sklearn.covariance#
Исправление Добавляет проверку массивов в
covariance.ledoit_wolfиcovariance.ledoit_wolf_shrinkage. #20416 by Hugo Defois.Изменение API Устаревают следующие ключи в
cv_results_:'mean_score','std_score', и'split(k)_score'в пользу'mean_test_score''std_test_score', и'split(k)_test_score'. #20583 by Томас Фан.
sklearn.datasets#
Улучшение
datasets.fetch_openmlтеперь поддерживает категории с пропущенными значениями при возврате pandas dataframe. #19365 by Томас Фан и Аманда Д'Суза и Эль-Атеиф Сара.Улучшение
datasets.fetch_kddcup99выдает более понятное сообщение при недействительном кэшированном файле. #19669 Томас Фан.Улучшение Замените использования
__file__связанный с вводом-выводом файлов ресурсов сimportlib.resourcesчтобы избежать предположения, что эти файлы ресурсов (например,iris.csv) уже существуют в файловой системе, и, как следствие, для обеспечения совместимости с такими инструментами, какPyOxidizer. Примечание: когда остатки предсказаний имеют нулевое среднее, by Jack Liu.Исправление Сократите имена файлов данных в тестах openml для лучшей поддержки установки на Windows и его ограничения по умолчанию в 260 символов на длину имени файла. #20209 by Томас Фан.
Исправление
datasets.fetch_kddcup99возвращает датафреймы, когдаreturn_X_y=Trueиas_frame=True. #19011 by Томас Фан.Изменение API Устаревает
datasets.load_bostonв 1.0, и он будет удален в 1.2. Предоставлены альтернативные фрагменты кода для загрузки аналогичных наборов данных. Пожалуйста, обратитесь к документации функции для подробностей. #20729 by Guillaume Lemaitre.
sklearn.decomposition#
Улучшение добавлен новый приближенный решатель (рандомизированный SVD, доступный с
eigen_solver='randomized') вdecomposition.KernelPCA. Это значительно ускоряет вычисления, когда количество образцов намного больше желаемого количества компонентов. #12069 by Sylvain Marié.Исправление Исправляет некорректные множественные предупреждения о преобразовании данных при кластеризации булевых данных. #19046 by Surya Prakash.
Исправление Исправлено
decomposition.dict_learning, используемыйdecomposition.DictionaryLearning, чтобы обеспечить детерминированность вывода. Достигается путем изменения знаков вывода SVD, который используется для инициализации кода. #18433 by Bruno Charron.Исправление Исправлена ошибка в
decomposition.MiniBatchDictionaryLearning,decomposition.MiniBatchSparsePCAиdecomposition.dict_learning_onlineгде обновление словаря было некорректным. #19198 by Жереми дю Буаберранже.Исправление Исправлена ошибка в
decomposition.DictionaryLearning,decomposition.SparsePCA,decomposition.MiniBatchDictionaryLearning,decomposition.MiniBatchSparsePCA,decomposition.dict_learningиdecomposition.dict_learning_onlineгде перезапуск неиспользуемых атомов во время обновления словаря работал не так, как ожидалось. #19198 by Жереми дю Буаберранже.Изменение API В
decomposition.DictionaryLearning,decomposition.MiniBatchDictionaryLearning,decomposition.dict_learningиdecomposition.dict_learning_online,transform_alphaбудет равноalphaвместо 1.0 по умолчанию, начиная с версии 1.2 #19159 by Benoît Malézieux.Изменение API Переименовать имена переменных в
decomposition.KernelPCAдля улучшения читаемости.lambdas_иalphas_переименованы вeigenvalues_иeigenvectors_, соответственно.lambdas_иalphas_устарели и будут удалены в версии 1.2. #19908 by Kei Ishikawa.Изменение API The
alphaиregularizationпараметрыdecomposition.NMFиdecomposition.non_negative_factorizationустарели и будут удалены в версии 1.2. Используйте новые параметрыalpha_Wиalpha_Hвместо этого. #20512 by Жереми дю Буаберранже.
sklearn.dummy#
Изменение API Атрибут
n_features_in_вdummy.DummyRegressorиdummy.DummyRegressorустарел и будет удален в версии 1.2. #20960 by Томас Фан.
sklearn.ensemble#
Улучшение
HistGradientBoostingClassifierиHistGradientBoostingRegressorучитывать квоты cgroups при определении количества потоков, используемых OpenMP. Это избегает проблем с производительностью, вызванных переподпиской при использовании этих классов в контейнере Docker, например. #20477 by Томас Фан.Улучшение
HistGradientBoostingClassifierиHistGradientBoostingRegressorбольше не являются экспериментальными. Теперь они считаются стабильными и подчиняются тем же циклам устаревания, что и все другие оценщики. #19799 by Nicolas Hug.Улучшение Улучшить HTML-рендеринг
ensemble.StackingClassifierиensemble.StackingRegressor. #19564 by Томас Фан.Улучшение Добавлен критерий Пуассона в
ensemble.RandomForestRegressor. #19836 by Brian Sun.Исправление Не разрешать вычислять оценку out-of-bag (OOB) в
ensemble.RandomForestClassifierиensemble.ExtraTreesClassifierс многоклассовыми-многомерными целевыми значениями, поскольку scikit-learn не предоставляет метрик, поддерживающих этот тип целевых значений. Было выполнено дополнительное приватное рефакторинг. #19162 by Guillaume Lemaitre.Исправление Улучшение численной точности для взвешенного бустинга в
ensemble.AdaBoostClassifierиensemble.AdaBoostRegressorчтобы избежать потери точности при малых значениях. #10096 by Fenil Suchak.Исправление Исправлен диапазон аргумента
max_samplesбудет(0.0, 1.0]вensemble.RandomForestClassifier,ensemble.RandomForestRegressor, гдеmax_samples=1.0интерпретируется как использование всехn_samplesдля бутстрэппинга. #20159 by @murata-yu.Исправление Исправлена ошибка в
ensemble.AdaBoostClassifierиensemble.AdaBoostRegressorгдеsample_weightпараметр был перезаписан во времяfit. #20534 by Guillaume Lemaitre.Изменение API Удаляет
tol=Noneопция вensemble.HistGradientBoostingClassifierиensemble.HistGradientBoostingRegressor. Пожалуйста, используйтеtol=0для того же поведения. #19296 by Томас Фан.
sklearn.feature_extraction#
Исправление Исправлена ошибка в
feature_extraction.text.HashingVectorizerгде некоторые входные строки приводят к отрицательным индексам в преобразованных данных. #19035 by Liu Yu.Исправление Исправлена ошибка в
feature_extraction.DictVectorizerпутем вызова ошибки с неподдерживаемым типом значения. #19520 by Jeff Zhao.Исправление Исправлена ошибка в
feature_extraction.image.img_to_graphиfeature_extraction.image.grid_to_graphгде одиночные связные компоненты обрабатывались неправильно, что приводило к неверной индексации вершин. #18964 by Bertrand Thirion.Исправление Выдать предупреждение в
feature_extraction.text.CountVectorizerсlowercase=Trueкогда в словарных записях есть символы в верхнем регистре, чтобы избежать тихих пропусков в результирующих векторах признаков. #19401 by Zito Relova
sklearn.feature_selection#
Функция
feature_selection.r_regressionвычисляет коэффициенты корреляции Пирсона R между признаками и целевой переменной. #17169 by Dmytro Lituiev и Julien Jerphanion.Улучшение
feature_selection.RFE.fitпринимает дополнительные параметры оценщика, которые передаются непосредственно вfitметод. #20380 by Иван Пулидо, Фелипе Биду, Gil Rutter, и Адрин Джалали.Исправление Исправлена ошибка в
isotonic.isotonic_regressionгдеsample_weightпереданные пользователем, были перезаписаны во времяfit. #20515 by Карстен Аллефельд.Исправление Изменить
feature_selection.SequentialFeatureSelectorчтобы позволить неконтролируемое моделирование, чтобыfitсигнатура не должна делать никакихyвалидация и разрешение дляy=None. #19568 by Shyam Desai.Изменение API Вызывает ошибку в
feature_selection.VarianceThresholdкогда порог дисперсии отрицательный. #20207 by Tomohiro EndoИзменение API Устаревает
grid_scores_в пользу оценок разделения вcv_results_вfeature_selection.RFECV.grid_scores_будет удален в версии 1.2. #20161 by Shuhei Kayawari и @arka204.
sklearn.inspection#
Улучшение Добавить
max_samplesпараметр вinspection.permutation_importance. Это позволяет выбрать подмножество выборок для вычисления перестановочной важности. Это полезно для сохранения метода вычислительно выполнимым при оценке важности признаков на больших наборах данных. #20431 by Оливер Пфаффель.Улучшение Добавить kwargs для отдельного форматирования линий ICE и PD на графиках частных зависимостей
inspection.plot_partial_dependenceиinspection.PartialDependenceDisplay.plot. #19428 by Mehdi Hamoumi.Исправление Разрешить ввод нескольких оценщиков в
inspection.permutation_importance. #19411 by Симона Маджо.Изменение API
inspection.PartialDependenceDisplayпредоставляет метод класса:from_estimator.inspection.plot_partial_dependenceустарел в пользу метода класса и будет удален в версии 1.2. #20959 by Томас Фан.
sklearn.kernel_approximation#
Исправление Исправлена ошибка в
kernel_approximation.Nystroemгде атрибутcomponent_indices_не соответствовал подмножеству индексов выборок, используемых для генерации приближенного ядра. #20554 by Xiangyin Kong.
sklearn.linear_model#
Основная функция Добавлен
linear_model.QuantileRegressorкоторый реализует линейную квантильную регрессию с L1-штрафом. #9978 by David Dale и Christian Lorentzen.Функция Новый
linear_model.SGDOneClassSVMпредоставляет SGD-реализацию линейного One-Class SVM. В сочетании с методами аппроксимации ядра эта реализация аппроксимирует решение ядерного One Class SVM, выигрывая от линейной сложности по количеству образцов. #10027 by Альберт Томас.Функция Добавлен
sample_weightпараметр дляlinear_model.LassoCVиlinear_model.ElasticNetCV. #16449 by Christian Lorentzen.Функция Добавлен новый решатель
lbfgs(доступно сsolver="lbfgs") иpositiveаргумент дляlinear_model.Ridge. Когдаpositiveустановлено вTrue, принудительно делает коэффициенты положительными (поддерживается толькоlbfgs). #20231 by Тосихиро Накаэ.Эффективность Реализация
linear_model.LogisticRegressionбыл оптимизирован для плотных матриц при использованииsolver='newton-cg'иmulti_class!='multinomial'. #19571 by Julien Jerphanion.Улучшение
fitметод сохраняет dtype для numpy.float32 вlinear_model.Lars,linear_model.LassoLars,linear_model.LassoLars,linear_model.LarsCVиlinear_model.LassoLarsCV. #20155 by Takeshi Oura.Улучшение Проверьте предоставленную пользователем грам-матрицу, переданную в линейные модели через
precomputeаргумент. #19004 by Adam Midvidy.Исправление
linear_model.ElasticNet.fitбольше не изменяетsample_weightна месте. #19055 by Томас Фан.Исправление
linear_model.Lassoиlinear_model.ElasticNetбольше не имеетdual_gap_не соответствует их цели. #19172 by Матюрен МассиасИсправление
sample_weightтеперь полностью учитываются в линейных моделях, когдаnormalize=Trueкак для центрирования признаков, так и для масштабирования признаков. #19426 by Александр Грамфор и Мария Теленчук.Исправление Точки с остатками, равными
residual_thresholdтеперь считаются как выбросы дляlinear_model.RANSACRegressor. Это позволяет идеально обучить модель на некоторых наборах данных, когдаresidual_threshold=0. #19499 by Грегори Струбель.Исправление Инвариантность весов образцов для
linear_model.Ridgeбыл исправлен в #19616 by Oliver Grisel и Christian Lorentzen.Исправление Словарь
paramsвlinear_model.enet_pathиlinear_model.lasso_pathдолжен содержать только параметры решателя координатного спуска. В противном случае будет вызвана ошибка. #19391 by Shao Yang Hong.Изменение API Выдать предупреждение в
linear_model.RANSACRegressorчто с версии 1.2,min_samplesдолжны быть явно установлены для моделей, отличных отlinear_model.LinearRegression. #19390 by Shao Yang Hong.Изменение API : Параметр
normalizeoflinear_model.LinearRegressionустарел и будет удален в версии 1.2. Причина устаревания:normalizeпараметр не действовал, еслиfit_interceptбыл установлен в False и поэтому считался запутанным. Поведение устаревшегоLinearModel(normalize=True)может быть воспроизведен с помощьюPipelineсLinearModel(гдеLinearModelявляетсяLinearRegression,Ridge,RidgeClassifier,RidgeCVилиRidgeClassifierCV) следующим образом:make_pipeline(StandardScaler(with_mean=False), LinearModel()).normalizeпараметр вLinearRegressionбыл устаревшим в #17743 by Мария Теленчук и Александр Грамфор. То же дляRidge,RidgeClassifier,RidgeCV, иRidgeClassifierCV, в: #17772 by Мария Теленчук и Александр Грамфор. То же дляBayesianRidge,ARDRegressionв: #17746 by Мария Теленчук. То же дляLasso,LassoCV,ElasticNet,ElasticNetCV,MultiTaskLasso,MultiTaskLassoCV,MultiTaskElasticNet,MultiTaskElasticNetCV, в: #17785 by Мария Теленчук и Александр Грамфор.Изменение API The
normalizeпараметрOrthogonalMatchingPursuitиOrthogonalMatchingPursuitCVпо умолчанию будет False в версии 1.2 и будет удален в версии 1.4. #17750 by Мария Теленчук и Александр Грамфор. То же дляLarsLarsCVLassoLarsLassoLarsCVLassoLarsIC, в #17769 by Мария Теленчук и Александр Грамфор.Изменение API Проверка ключевых слов перемещена из
__init__иset_paramstofitдля следующих оценщиков, соответствующих соглашениям scikit-learn:SGDClassifier,SGDRegressor,SGDOneClassSVM,PassiveAggressiveClassifier, иPassiveAggressiveRegressor. #20683 by Guillaume Lemaitre.
sklearn.manifold#
Улучшение Реализовать
'auto'эвристика дляlearning_rateвmanifold.TSNE. Это станет стандартным в версии 1.2. Инициализация по умолчанию изменится наpcaв 1.2. Инициализация PCA будет масштабирована до стандартного отклонения 1e-4 в 1.2. #19491 by Dmitry Kobak.Исправление Изменить числовую точность, чтобы предотвратить проблемы с исчезновением порядка во время вычисления матрицы сходства для
manifold.TSNE. #19472 by Dmitry Kobak.Исправление
manifold.Isomapтеперь используетscipy.sparse.csgraph.shortest_pathдля вычисления кратчайшего пути графа. Также соединяет несвязные компоненты графа соседей по некоторым парам минимального расстояния, вместо того чтобы изменять все бесконечные расстояния на нулевые. #20531 by Roman Yurchak и Том Дюпре ла Тур.Исправление Уменьшить числовую стандартную погрешность в вызове lobpcg в
manifold.spectral_embeddingдля предотвращения численной нестабильности. #21194 by Andrew Knyazev.
sklearn.metrics#
Функция
metrics.mean_pinball_lossпредоставляет функцию потерь пинбол для квантильной регрессии. #19415 by Xavier Dupré и Oliver Grisel.Функция
metrics.d2_tweedie_scoreвычисляет регрессионную оценку D^2 для отклонений Твиди с параметром мощностиpower. Это обобщениеr2_scoreи может интерпретироваться как процент объяснённого отклонения Твиди. #17036 by Christian Lorentzen.Функция
metrics.mean_squared_log_errorтеперь поддерживаетsquared=False. #20326 by Uttam kumar.Эффективность Улучшенная скорость
metrics.confusion_matrixкогда метки являются целочисленными. #9843 by Джон Кралл.Улучшение Исправление для вызова ошибки в
metrics.hinge_lossкогдаpred_decisionявляется одномерным, тогда как это многоклассовая классификация или когдаpred_decisionпараметр не согласуется сlabelsпараметр. #19643 by Пьер Аттард.Исправление
metrics.ConfusionMatrixDisplay.plotиспользует правильный максимум для цветовой карты. #19784 by Томас Фан.Исправление Образцы с нулевым
sample_weightзначения не влияют на результаты изmetrics.det_curve,metrics.precision_recall_curveиmetrics.roc_curve. #18328 by Albert Villanova del Moral и Alonso Silva Allende.Исправление избежать переполнения в
metrics.adjusted_rand_scoreс большим объемом данных. #20312 by Дивьяншу Деоли.Изменение API
metrics.ConfusionMatrixDisplayпредоставляет два метода классаfrom_estimatorиfrom_predictionsпозволяя создать график матрицы ошибок с использованием оценщика или предсказаний.metrics.plot_confusion_matrixустарел в пользу этих двух методов класса и будет удалён в версии 1.2. #18543 by Guillaume Lemaitre.Изменение API
metrics.PrecisionRecallDisplayпредоставляет два метода классаfrom_estimatorиfrom_predictionsпозволяя создать кривую точности-полноты с помощью оценщика или предсказаний.metrics.plot_precision_recall_curveустарел в пользу этих двух методов класса и будет удален в версии 1.2. #20552 by Guillaume Lemaitre.Изменение API
metrics.DetCurveDisplayпредоставляет два метода классаfrom_estimatorиfrom_predictionsпозволяя создать график матрицы ошибок с использованием оценщика или предсказаний.metrics.plot_det_curveустарел в пользу этих двух методов класса и будет удалён в версии 1.2. #19278 by Guillaume Lemaitre.
sklearn.mixture#
Исправление Убедитесь, что лучшие параметры установлены соответствующим образом в случае расходимости для
mixture.GaussianMixtureиmixture.BayesianGaussianMixture. #20030 by Тиншань Лю и Бенджамин Педиго.
sklearn.model_selection#
Функция добавлен
model_selection.StratifiedGroupKFold, который объединяетmodel_selection.StratifiedKFoldиmodel_selection.GroupKFold, предоставляя возможность разделять данные, сохраняя распределение классов в каждом разделе, оставляя каждую группу в одном разделе. #18649 by Леандро Эрмида и Rodion Martynov.Улучшение предупреждать только один раз в основном процессе для неудачных подгонок на разделение в перекрестной проверке. #20619 by Loïc Estève
Улучшение The
model_selection.BaseShuffleSplitбазовый класс теперь публичный. #20056 by @pabloduque0.Исправление Избегайте преждевременного переполнения в
model_selection.train_test_split. #20904 by Томаш Якубек.
sklearn.naive_bayes#
Исправление The
fitиpartial_fitметоды дискретных наивных байесовских классификаторов (naive_bayes.BernoulliNB,naive_bayes.CategoricalNB,naive_bayes.ComplementNB, иnaive_bayes.MultinomialNB) теперь корректно обрабатывают вырожденный случай одного класса в обучающей выборке. #18925 by David Poznik.Изменение API Атрибут
sigma_теперь устарел вnaive_bayes.GaussianNBи будет удалена в версии 1.2. Используйтеvar_вместо этого. #18842 by Hong Shao Yang.
sklearn.neighbors#
Улучшение Создание
neighbors.KDTreeиneighbors.BallTreeбыла улучшена для их худшей временной сложности с \(\mathcal{O}(n^2)\) to \(\mathcal{O}(n)\). #19473 by jiefangxuanyan и Julien Jerphanion.Исправление
neighbors.DistanceMetricподклассы теперь поддерживают доступные только для чтения наборы данных, отображаемые в память. #19883 by Julien Jerphanion.Исправление
neighbors.NearestNeighbors,neighbors.KNeighborsClassifier,neighbors.RadiusNeighborsClassifier,neighbors.KNeighborsRegressorиneighbors.RadiusNeighborsRegressorне проверяютweightsв__init__и проверятьweightsвfitвместо этого. #20072 by Juan Carlos Alfaro Jiménez.Изменение API Параметр
kwargsofneighbors.RadiusNeighborsClassifierустарел и будет удалён в версии 1.2. #20842 by Хуан Мартин Лойола.
sklearn.neural_network#
Исправление
neural_network.MLPClassifierиneural_network.MLPRegressorтеперь корректно поддерживает продолжение обучения при загрузке из файла pickle. #19631 by Томас Фан.
sklearn.pipeline#
Изменение API The
predict_probaиpredict_log_probaметодыpipeline.Pipelineтеперь поддерживают передачу аргументов предсказания конечному оценщику. #19790 by Christopher Flynn.
sklearn.preprocessing#
Функция Новый
preprocessing.SplineTransformerявляется инструментом предобработки признаков для генерации B-сплайнов, параметризованных полиномомdegreeсплайнов, количество узловn_knotsи стратегия позиционирования узловknots. #18368 by Christian Lorentzen.preprocessing.SplineTransformerтакже поддерживает периодические сплайны черезextrapolationаргумент. #19483 by Malte Londschien.preprocessing.SplineTransformerподдерживает веса выборок для стратегии положения узлов"quantile". #20526 by Malte Londschien.Функция
preprocessing.OrdinalEncoderпо умолчанию поддерживает пропуск пропущенных значений. #19069 by Томас Фан.Функция
preprocessing.OneHotEncoderтеперь поддерживаетhandle_unknown='ignore'и удаление категорий. #19041 by Томас Фан.Функция
preprocessing.PolynomialFeaturesтеперь поддерживает передачу кортежа вdegree, т.е.degree=(min_degree, max_degree). #20250 by Christian Lorentzen.Эффективность
preprocessing.StandardScalerбыстрее и более эффективно по памяти. #20652 by Томас Фан.Эффективность Изменено
algorithmаргумент дляcluster.KMeansвpreprocessing.KBinsDiscretizerизautotofull. #19934 by Hleb Levitski.Эффективность Реализация
fitдляpreprocessing.PolynomialFeaturesтрансформер теперь работает быстрее. Это особенно заметно на больших разреженных входных данных. Пример того же by Фред Робинсон.Исправление The
preprocessing.StandardScaler.inverse_transformметод теперь вызывает ошибку, когда входные данные одномерны. #19752 by Zhehao Liu.Исправление
preprocessing.scale,preprocessing.StandardScalerи аналогичные масштабаторы обнаруживают почти постоянные признаки, чтобы избежать их масштабирования до очень больших значений. Эта проблема возникает в частности при использовании масштабатора на разреженных данных с постоянным столбцом и весами выборок, в этом случае центрирование обычно отключается. #19527 by Oliver Grisel и Мария Теленчук и #19788 by Жереми дю Буаберранже.Исправление
preprocessing.StandardScaler.inverse_transformтеперь корректно обрабатывает целочисленные типы данных. #19356 by @makoeppel.Исправление
preprocessing.OrdinalEncoder.inverse_transformне поддерживает разреженную матрицу и выдает соответствующее сообщение об ошибке. #19879 by Guillaume Lemaitre.Исправление The
fitметодpreprocessing.OrdinalEncoderне будет вызывать ошибку, когдаhandle_unknown='ignore'и неизвестные категории присваиваютсяfit. #19906 by Zhehao Liu.Исправление Исправлена регрессия в
preprocessing.OrdinalEncoderгде большие числовые значения Python вызвали бы ошибку из-за переполнения при приведении к типу C (np.float64илиnp.int64). #20727 by Guillaume Lemaitre.Исправление
preprocessing.FunctionTransformerне устанавливаетn_features_in_на основе ввода вinverse_transform. #20961 by Томас Фан.Изменение API The
n_input_features_атрибутpreprocessing.PolynomialFeaturesустарел в пользуn_features_in_и будет удалён в версии 1.2. #20240 by Жереми дю Буаберранже.
sklearn.svm#
Изменение API Параметр
**paramsofsvm.OneClassSVM.fitустарел и будет удалён в версии 1.2. #20843 by Хуан Мартин Лойола.
sklearn.tree#
Улучшение Добавить
fontnameаргумент вtree.export_graphvizдля неанглийских символов. #18959 by Ноль и wstates.Исправление Улучшает совместимость
tree.plot_treeс экранами с высоким DPI. #20023 by Томас Фан.Исправление Исправлена ошибка в
tree.DecisionTreeClassifier,tree.DecisionTreeRegressorгде узел мог быть разделен, хотя не должен был из-за некорректной обработки ошибок округления. #19336 by Жереми дю Буаберранже.Изменение API The
n_features_атрибутtree.DecisionTreeClassifier,tree.DecisionTreeRegressor,tree.ExtraTreeClassifierиtree.ExtraTreeRegressorустарел в пользуn_features_in_и будет удалён в версии 1.2. #20272 by Жереми дю Буаберранже.
sklearn.utils#
Улучшение Устаревшее значение по умолчанию для
random_state=0вrandomized_svd. Начиная с версии 1.2, значение по умолчанию дляrandom_stateбудет установлено вNone. #19459 by Синди Безёйденхаут и Clifford Akai-Nettey.Улучшение Добавлен вспомогательный декоратор
utils.metaestimators.available_ifдля обеспечения гибкости в метаоценщиках, делающих методы доступными или недоступными на основе состояния, более читаемым способом. #19948 by Joel Nothman.Улучшение
utils.validation.check_is_fittedтеперь использует__sklearn_is_fitted__если доступно, вместо проверки атрибутов, оканчивающихся на подчёркивание. Это также делаетpipeline.Pipelineиpreprocessing.FunctionTransformerpasscheck_is_fitted(estimator). #20657 by Адрин Джалали.Исправление Исправлена ошибка в
utils.sparsefuncs.mean_variance_axisгде точность вычисленной дисперсии была очень низкой, когда реальная дисперсия равна нулю. #19766 by Жереми дю Буаберранже.Исправление Строки документации свойств, которые украшены
utils.deprecatedтеперь правильно обёрнуты. #20385 by Thomas Fan.Исправление
utils.stats._weighted_percentileтеперь правильно игнорирует наблюдения с нулевым весом, меньшие, чем наименьшее наблюдение с положительным весом дляpercentile=0. Затронутые классы:dummy.DummyRegressorдляquantile=0иensemble.HuberLossFunctionиensemble.HuberLossFunctionдляalpha=0. #20528 by Malte Londschien.Исправление
utils._safe_indexingявно принимает копию dataframe, когда предоставляются целочисленные индексы, избегая вызова предупреждения от Pandas. Это предупреждение ранее вызывалось в утилитах повторной выборки и функциях, использующих эти утилиты (например,model_selection.train_test_split,model_selection.cross_validate,model_selection.cross_val_score,model_selection.cross_val_predict). #20673 by Joris Van den Bossche.Исправление Исправлена регрессия в
utils.is_scalar_nanгде большие числа Python вызовут ошибку из-за переполнения в типах C (np.float64илиnp.int64). #20727 by Guillaume Lemaitre.Исправление Поддержка
np.matrixустарел вcheck_arrayв 1.0 и вызоветTypeErrorв версии 1.2. #20165 by Томас Фан.Изменение API
utils._testing.assert_warnsиutils._testing.assert_warns_messageустарели в версии 1.0 и будут удалены в версии 1.2. Используйтеpytest.warnsменеджер контекста вместо этого. Обратите внимание, что эти функции не были задокументированы и не являются частью публичного API. #20521 by Оливье Гризель.Изменение API Исправлено несколько ошибок в
utils.graph.graph_shortest_path, которая теперь устарела. Используйтеscipy.sparse.csgraph.shortest_pathвместо этого. #20531 by Tom Dupre la Tour.
Участники кода и документации
Благодарим всех, кто внёс вклад в поддержку и улучшение проекта с версии 0.24, включая:
Abdulelah S. Al Mesfer, Abhinav Gupta, Adam J. Stewart, Adam Li, Adam Midvidy, Adrian Garcia Badaracco, Adrian Sadłocha, Adrin Jalali, Agamemnon Krasoulis, Alberto Rubiales, Albert Thomas, Albert Villanova del Moral, Alek Lefebvre, Alessia Marcolini, Alexandr Fonari, Alihan Zihna, Aline Ribeiro de Almeida, Amanda, Amanda Dsouza, Amol Deshmukh, Ana Pessoa, Anavelyz, Andreas Mueller, Andrew Delong, Ashish, Ashvith Shetty, Atsushi Nukariya, Aurélien Geron, Avi Gupta, Ayush Singh, baam, BaptBillard, Benjamin Pedigo, Bertrand Thirion, Bharat Raghunathan, bmalezieux, Brian Rice, Brian Sun, Bruno Charron, Bryan Chen, bumblebee, caherrera-meli, Carsten Allefeld, CeeThinwa, Chiara Marmo, chrissobel, Christian Lorentzen, Christopher Yeh, Chuliang Xiao, Clément Fauchereau, cliffordEmmanuel, Conner Shen, Connor Tann, David Dale, David Katz, David Poznik, Dimitri Papadopoulos Orfanos, Divyanshu Deoli, dmallia17, Dmitry Kobak, DS_anas, Eduardo Jardim, EdwinWenink, EL-ATEIF Sara, Eleni Markou, EricEllwanger, Eric Fiegel, Erich Schubert, Ezri-Mudde, Fatos Morina, Felipe Rodrigues, Felix Hafner, Fenil Suchak, flyingdutchman23, Flynn, Fortune Uwha, Francois Berenger, Frankie Robertson, Frans Larsson, Frederick Robinson, frellwan, Gabriel S Vicente, Gael Varoquaux, genvalen, Geoffrey Thomas, geroldcsendes, Hleb Levitski, Glen, Glòria Macià Muñoz, gregorystrubel, groceryheist, Guillaume Lemaitre, guiweber, Haidar Almubarak, Hans Moritz Günther, Haoyin Xu, Harris Mirza, Harry Wei, Harutaka Kawamura, Hassan Alsawadi, Helder Geovane Gomes de Lima, Hugo DEFOIS, Igor Ilic, Ikko Ashimine, Isaack Mungui, Ishaan Bhat, Ishan Mishra, Iván Pulido, iwhalvic, J Alexander, Jack Liu, James Alan Preiss, James Budarz, James Lamb, Jannik, Jeff Zhao, Jennifer Maldonado, Jérémie du Boisberranger, Jesse Lima, Jianzhu Guo, jnboehm, Joel Nothman, JohanWork, John Paton, Jonathan Schneider, Jon Crall, Jon Haitz Legarreta Gorroño, Joris Van den Bossche, José Manuel Nápoles Duarte, Juan Carlos Alfaro Jiménez, Juan Martin Loyola, Julien Jerphanion, Julio Batista Silva, julyrashchenko, JVM, Kadatatlu Kishore, Karen Palacio, Kei Ishikawa, kmatt10, kobaski, Kot271828, Kunj, KurumeYuta, kxytim, lacrosse91, LalliAcqua, Laveen Bagai, Leonardo Rocco, Leonardo Uieda, Leopoldo Corona, Loic Esteve, LSturtew, Luca Bittarello, Luccas Quadros, Lucy Jiménez, Lucy Liu, ly648499246, Mabu Manaileng, Manimaran, makoeppel, Marco Gorelli, Maren Westermann, Mariangela, Maria Telenczuk, marielaraj, Martin Hirzel, Mateo Noreña, Mathieu Blondel, Mathis Batoul, mathurinm, Matthew Calcote, Maxime Prieur, Maxwell, Mehdi Hamoumi, Mehmet Ali Özer, Miao Cai, Michal Karbownik, michalkrawczyk, Mitzi, mlondschien, Mohamed Haseeb, Mohamed Khoualed, Muhammad Jarir Kanji, murata-yu, Nadim Kawwa, Nanshan Li, naozin555, Nate Parsons, Neal Fultz, Nic Annau, Nicolas Hug, Nicolas Miller, Nico Stefani, Nigel Bosch, Nikita Titov, Nodar Okroshiashvili, Norbert Preining, novaya, Ogbonna Chibuike Stephen, OGordon100, Oliver Pfaffel, Olivier Grisel, Oras Phongpanangam, Pablo Duque, Pablo Ibieta-Jimenez, Patric Lacouth, Paulo S. Costa, Paweł Olszewski, Peter Dye, PierreAttard, Pierre-Yves Le Borgne, PranayAnchuri, Prince Canuma, putschblos, qdeffense, RamyaNP, ranjanikrishnan, Ray Bell, Rene Jean Corneille, Reshama Shaikh, ricardojnf, RichardScottOZ, Rodion Martynov, Rohan Paul, Roman Lutz, Roman Yurchak, Samuel Brice, Sandy Khosasi, Sean Benhur J, Sebastian Flores, Sebastian Pölsterl, Shao Yang Hong, shinehide, shinnar, shivamgargsya, Shooter23, Shuhei Kayawari, Shyam Desai, simonamaggio, Sina Tootoonian, solosilence, Steven Kolawole, Steve Stagg, Surya Prakash, swpease, Sylvain Marié, Takeshi Oura, Terence Honles, TFiFiE, Thomas A Caswell, Thomas J. Fan, Tim Gates, TimotheeMathieu, Timothy Wolodzko, Tim Vink, t-jakubek, t-kusanagi, tliu68, Tobias Uhmann, tom1092, Tomás Moreyra, Tomás Ronald Hughes, Tom Dupré la Tour, Tommaso Di Noto, Tomohiro Endo, TONY GEORGE, Toshihiro NAKAE, tsuga, Uttam kumar, vadim-ushtanit, Vangelis Gkiastas, Venkatachalam N, Vilém Zouhar, Vinicius Rios Fuck, Vlasovets, waijean, Whidou, xavier dupré, xiaoyuchai, Yasmeen Alsaedy, yoch, Yosuke KOBAYASHI, Yu Feng, YusukeNagasaka, yzhenman, Zero, ZeyuSun, ZhaoweiWang, Zito, Zito Relova