Версия 1.1#
Для краткого описания основных особенностей выпуска, пожалуйста, обратитесь к Основные изменения в выпуске scikit-learn 1.1.
Легенда для списков изменений
Основная функция что-то большое, что вы не могли сделать раньше.
Функция что-то, что вы не могли делать раньше.
Эффективность существующий признак теперь может не требовать столько вычислений или памяти.
Улучшение различные мелкие улучшения.
Исправление то, что ранее не работало, как задокументировано – или согласно разумным ожиданиям – теперь должно работать.
Изменение API вам потребуется изменить свой код, чтобы добиться того же эффекта в будущем; или функция будет удалена в будущем.
Версия 1.1.3#
Октябрь 2022
Этот выпуск с исправлением ошибок включает только исправления для совместимости с последним релизом SciPy >= 1.9.2. К значительным изменениям относятся:
Исправление Включить
msvcp140.dllв колесах scikit-learn, так как он был удалён в последних колесах SciPy. #24631 by Кьяра Мармо.Улучшение Создать wheels для Python 3.11. #24446 by Кьяра Мармо.
Другие исправления ошибок будут доступны в следующем выпуске 1.2, который выйдет в ближайшие недели.
Обратите внимание, что поддержка 32-битного Python в Windows была прекращена в этом выпуске. Это связано с тем, что SciPy 1.9.2 также прекратил поддержку этой платформы. Пользователям Windows рекомендуется установить 64-битную версию Python.
Версия 1.1.2#
Август 2022
Измененные модели#
Следующие оценщики и функции, при обучении на тех же данных и параметрах, могут создавать модели, отличные от предыдущей версии. Это часто происходит из-за изменений в логике моделирования (исправления ошибок или улучшения) или в процедурах случайной выборки.
Исправление
manifold.TSNEтеперь вызываетValueErrorпри обучении сperplexity>=n_samplesдля обеспечения математической корректности алгоритма. #10805 by Mathias Andersen и #23471 by Meekail Zain.
Журнал изменений#
Исправление Представление по умолчанию в HTML показано для мета-оценщиков с недопустимыми параметрами. #24015 by Томас Фан.
Исправление Добавлена поддержка F-смежных массивов для оценщиков и функций, чей бэкенд был изменён в версии 1.1. #23990 by Julien Jerphanion.
Исправление Теперь доступны колеса для MacOS 10.9 и выше. #23833 by Томас Фан.
sklearn.base#
Исправление The
get_paramsметодbase.BaseEstimatorкласс теперь поддерживает оценщики сtype-type параметры, которые имеютget_paramsметод. #24017 by Генри Сорски.
sklearn.cluster#
Исправление Исправлена ошибка в
cluster.Birchчто может вызвать ошибку при разделении узла, если в наборе данных есть дубликаты. #23395 by Жереми дю Буаберранже.
sklearn.feature_selection#
Исправление
feature_selection.SelectFromModelпо умолчанию использует порог выбора 1e-5, когда оценщик является либоlinear_model.ElasticNetилиlinear_model.ElasticNetCVсl1_ratioравно 1 илиlinear_model.LassoCV. #23636 by Hao Chun Chang.
sklearn.impute#
Исправление
impute.SimpleImputerиспользует dtype, наблюдаемый вfitдляtransformкогда dtype является object. #22063 by Томас Фан.
sklearn.linear_model#
Исправление Использовать допуски, учитывающие тип данных, для проверки матриц Грама (переданных пользователями или предвычисленных). #22059 by Malte S. Kurz.
Исправление Исправлена ошибка в
linear_model.LogisticRegressionсsolver="newton-cg",fit_intercept=True, и один признак. #23608 by Tom Dupre la Tour.
sklearn.manifold#
Исправление
manifold.TSNEтеперь вызываетValueErrorпри обучении сperplexity>=n_samplesдля обеспечения математической корректности алгоритма. #10805 by Mathias Andersen и #23471 by Meekail Zain.
sklearn.metrics#
Исправление Исправлено сообщение об ошибке
metrics.coverage_errorдля одномерного массива на входе. Текущее состояние кодовой базы scikit-learn не соответствует всем этим рекомендациям, но мы ожидаем, что применение этих ограничений ко всем новым вкладам улучшит общее качество кодовой базы. by Hao Chun Chang.
sklearn.preprocessing#
Исправление
preprocessing.OrdinalEncoder.inverse_transformправильно обрабатывает случаи использования, когдаunknown_valueилиencoded_missing_valueявляетсяnan. #24087 by Томас Фан.
sklearn.tree#
Исправление Исправлена ошибка недопустимого доступа к памяти во время обучения в
tree.DecisionTreeRegressorиtree.DecisionTreeClassifier. #23273 by Томас Фан.
Версия 1.1.1#
Май 2022
Журнал изменений#
Улучшение Сообщение об ошибке улучшено при импорте
model_selection.HalvingGridSearchCV,model_selection.HalvingRandomSearchCV, илиimpute.IterativeImputerбез импорта экспериментального флага. #23194 by Томас Фан.Улучшение Добавлено расширение в doc/conf.py для автоматической генерации списка оценщиков, обрабатывающих значения NaN. #23198 by Lise Kleiber, Zhehao Liu и Кьяра Мармо.
sklearn.datasets#
Исправление Избегать таймаутов в
datasets.fetch_openmlне передаваяtimeoutаргумент, #23358 by Loïc Estève.
sklearn.decomposition#
Исправление Избежать ложного предупреждения в
decomposition.IncrementalPCAкогдаn_samples == n_components. #23264 by Lucy Liu.
sklearn.feature_selection#
Исправление The
partial_fitметодfeature_selection.SelectFromModelтеперь проводит валидацию дляmax_featuresиfeature_names_inпараметры. #23299 by Long Bao.
sklearn.metrics#
Исправление Исправления
metrics.precision_recall_curveдля вычисления точности-полноты при 100% полноте. Кривая точности-полноты теперь отображает последнюю точку, соответствующую классификатору, который всегда предсказывает положительный класс: полнота=100% и точность=баланс классов. #23214 by Стефан Колло и Max Baak.
sklearn.preprocessing#
Исправление
preprocessing.PolynomialFeaturesсdegreeравным 0 вызовет ошибку, когдаinclude_biasустановлен в False и выводит единый постоянный массив, когдаinclude_biasустановлено в True. #23370 by Zhehao Liu.
sklearn.tree#
Исправление Исправляет регрессию производительности с признаками низкой мощности для
tree.DecisionTreeClassifier,tree.DecisionTreeRegressor,ensemble.RandomForestClassifier,ensemble.RandomForestRegressor,ensemble.GradientBoostingClassifier, иensemble.GradientBoostingRegressor. #23410 by Loïc Estève.
sklearn.utils#
Исправление
utils.class_weight.compute_sample_weightтеперь работает с разреженными даннымиy. #23115 by kernc.
Версия 1.1.0#
Май 2022
Минимальные зависимости#
Версия 1.1.0 scikit-learn требует python 3.8+, numpy 1.17.3+ и scipy 1.3.2+. Опциональная минимальная зависимость - matplotlib 3.1.2+.
Измененные модели#
Следующие оценщики и функции, при обучении на тех же данных и параметрах, могут создавать модели, отличные от предыдущей версии. Это часто происходит из-за изменений в логике моделирования (исправления ошибок или улучшения) или в процедурах случайной выборки.
Эффективность
cluster.KMeansтеперь по умолчаниюalgorithm="lloyd"вместоalgorithm="auto", что было эквивалентноalgorithm="elkan". Алгоритм Ллойда и алгоритм Элкана сходятся к одному и тому же решению, с точностью до ошибок округления, но в целом алгоритм Ллойда использует гораздо меньше памяти и часто быстрее.Эффективность Обучение
tree.DecisionTreeClassifier,tree.DecisionTreeRegressor,ensemble.RandomForestClassifier,ensemble.RandomForestRegressor,ensemble.GradientBoostingClassifier, иensemble.GradientBoostingRegressorв среднем на 15% быстрее, чем в предыдущих версиях, благодаря новому алгоритму сортировки для нахождения наилучшего разделения. Модели могут отличаться из-за другого подхода к обработке разделений со связанными значениями критерия: как старый, так и новый алгоритмы сортировки являются неустойчивыми алгоритмами сортировки. #22868 by Томас Фан.Исправление Инициализация собственных векторов для
cluster.SpectralClusteringиmanifold.SpectralEmbeddingтеперь сэмплирует из гауссовского распределения при использовании'amg'или'lobpcg'решатель. Это изменение улучшает численную устойчивость решателя, но может привести к другой модели.Исправление
feature_selection.f_regressionиfeature_selection.r_regressionтеперь будет возвращать конечную оценку по умолчанию вместоnp.nanиnp.infдля некоторых крайних случаев. Вы можете использоватьforce_finite=Falseесли вы действительно хотите получить не конечные значения и сохранить старое поведение.Исправление DataFrames библиотеки Panda со всеми нестроковыми столбцами, такими как MultiIndex, больше не предупреждают при передаче в Estimator. Estimator продолжат игнорировать имена столбцов в DataFrames с нестроковыми столбцами. Для
feature_names_in_чтобы быть определенными, столбцы должны состоять только из строк. #22410 by Томас Фан.Исправление
preprocessing.KBinsDiscretizerизменена обработка границ бинов немного, что может привести к другому кодированию с теми же данными.Исправление
calibration.calibration_curveизменена обработка границ бинов, что может привести к другой выходной кривой при тех же данных.Исправление
discriminant_analysis.LinearDiscriminantAnalysisтеперь использует правильный коэффициент масштабирования дисперсии, что может привести к другому поведению модели.Исправление
feature_selection.SelectFromModel.fitиfeature_selection.SelectFromModel.partial_fitтеперь можно вызывать сprefit=True.estimators_будет глубокой копиейestimatorкогдаprefit=True. #23271 by Guillaume Lemaitre.
Журнал изменений#
Эффективность Низкоуровневые процедуры для редукций на попарных расстояниях для плотных наборов данных float64 были переработаны. Следующие функции и оценщики теперь получают улучшенную производительность с точки зрения аппаратной масштабируемости и ускорения:
Например
sklearn.neighbors.NearestNeighbors.kneighborsиsklearn.neighbors.NearestNeighbors.radius_neighborsмогут быть соответственно до ×20 и ×5 быстрее, чем ранее, на ноутбуке.Более того, реализации этих двух алгоритмов теперь подходят для машин со многими ядрами, что делает их пригодными для наборов данных, состоящих из миллионов образцов.
#21987, #22064, #22065, #22288 и #22320 by Julien Jerphanion.
Улучшение Все модели scikit-learn теперь генерируют более информативное сообщение об ошибке, когда некоторые входные данные содержат неожиданные
NaNили бесконечные значения. В частности, сообщение содержит имя входных данных (“X”, “y” или “sample_weight”) и если неожиданноеNaNзначение найдено вX, сообщение об ошибке предлагает потенциальные решения. #21219 by Оливье Гризель.Улучшение Все модели scikit-learn теперь генерируют более информативное сообщение об ошибке при установке недопустимых гиперпараметров с помощью
set_params. #21542 by Оливье Гризель.Улучшение Удаляет случайные уникальные идентификаторы в HTML-представлении. С этим изменением jupyter notebooks воспроизводимы, пока ячейки запускаются в том же порядке. #23098 by Томас Фан.
Исправление Оценщики с
non_deterministicтег установлен вTrueпропустит обаcheck_methods_sample_order_invarianceиcheck_methods_subset_invarianceтесты. #22318 by Zhehao Liu.Изменение API Опция использования логарифмической потери, также известной как биномиальное или мультиномиальное отклонение, через
lossпараметров стала более согласованной. Предпочтительный способ — установка значения в"log_loss". Старые названия опций всё ещё действительны и создают те же модели, но устарели и будут удалены в версии 1.3.Для
ensemble.GradientBoostingClassifier,lossпараметр «deviance» устарел в пользу нового названия «log_loss», которое теперь используется по умолчанию. #23036 by Christian Lorentzen.Для
ensemble.HistGradientBoostingClassifier,lossимена параметров "auto", "binary_crossentropy" и "categorical_crossentropy" устарели в пользу нового имени "log_loss", которое теперь используется по умолчанию. #23040 by Christian Lorentzen.Для
linear_model.SGDClassifier,lossимя параметра “log” устарело в пользу нового имени “log_loss”. #23046 by Christian Lorentzen.
Изменение API Богатое HTML-представление оценщиков теперь включено по умолчанию в Jupyter блокнотах. Его можно отключить, установив
display='text'вsklearn.set_config. #22856 by Жереми дю Буаберранже.
sklearn.calibration#
Улучшение
calibration.calibration_curveпринимает параметрpos_labelдля указания метки положительного класса. #21032 by Guillaume Lemaitre.Улучшение
calibration.CalibratedClassifierCV.fitтеперь поддерживает передачуfit_params, которые направляются кbase_estimator. #18170 by Бенджамин Боссан.Улучшение
calibration.CalibrationDisplayпринимает параметрpos_labelчтобы добавить эту информацию на график. #21038 by Guillaume Lemaitre.Исправление
calibration.calibration_curveтеперь более последовательно обрабатывает границы бинов. #14975 by Андреас Мюллер и #22526 by Meekail Zain.Изменение API
calibration.calibration_curve’snormalizeпараметр теперь устарел и будет удален в версии 1.3. Рекомендуется использовать правильную вероятность (т.е. predict_proba положительный класс) используется дляy_prob. #23095 by Джордан Силк.
sklearn.cluster#
Основная функция
cluster.BisectingKMeansвведение алгоритма Bisecting K-Means #20031 by Михал Кравчик, Tom Dupre la Tour и Жереми дю Буаберранже.Улучшение
cluster.SpectralClusteringиcluster.spectral_clusteringтеперь включают новый'cluster_qr'метод, который кластеризует образцы в пространстве вложений как альтернативу существующему'kmeans'и'discrete'методы. См.cluster.spectral_clusteringдля получения дополнительной информации. #21148 by Andrew Knyazev.Улучшение Добавляет get_feature_names_out to
cluster.Birch,cluster.FeatureAgglomeration,cluster.KMeans,cluster.MiniBatchKMeans. #22255 by Томас Фан.Улучшение
cluster.SpectralClusteringтеперь вызывает согласованные сообщения об ошибках при передаче недопустимых значений дляn_clusters,n_init,gamma,n_neighbors,eigen_tolилиdegree. #21881 by Хьюго Васард.Улучшение
cluster.AffinityPropagationтеперь возвращает центры кластеров и метки, если они существуют, даже если модель не полностью сошлась. При возврате этих потенциально вырожденных центров кластеров и меток появляется новое предупреждающее сообщение. Если центры кластеров не были построены, то центры кластеров остаются пустым списком, а метки устанавливаются в-1и исходное предупреждающее сообщение отображается. #22217 by Meekail Zain.Эффективность В
cluster.KMeans, значение по умолчаниюalgorithmтеперь"lloyd"который является полным классическим алгоритмом в стиле EM. Оба"auto"и"full"устарели и будут удалены в версии 1.3. Теперь они являются псевдонимами для"lloyd". Предыдущим значением по умолчанию было"auto", который полагался на алгоритм Элкана. Алгоритм Ллойда использует меньше памяти, чем алгоритм Элкана, он быстрее на многих наборах данных, и его результаты идентичны, отсюда и изменение. #21735 by Орельен Жерон.Исправление
cluster.KMeans’sinitпараметр теперь правильно поддерживает ввод в виде массива и строковые скаляры NumPy. #22154 by Томас Фан.
sklearn.compose#
Исправление
compose.ColumnTransformerтеперь удаляет ошибки валидации из__init__иset_paramsметоды. #22537 by iofall и Ариса Я..Исправление get_feature_names_out функциональность в
compose.ColumnTransformerбыл сломан, когда столбцы были указаны с помощьюslice. Это исправлено в #22775 и #22913 by randomgeek78.
sklearn.covariance#
Исправление
covariance.GraphicalLassoCVтеперь принимает массив NumPy для параметраalphas. #22493 by Guillaume Lemaitre.
sklearn.cross_decomposition#
Улучшение the
inverse_transformметодcross_decomposition.PLSRegression,cross_decomposition.PLSCanonicalиcross_decomposition.CCAтеперь позволяет восстановитьXцелевая переменная, когдаYпараметр задан. #19680 by Robin Thibaut.Улучшение Добавляет get_feature_names_out ко всем преобразователям в
cross_decompositionмодуль:cross_decomposition.CCA,cross_decomposition.PLSSVD,cross_decomposition.PLSRegression, иcross_decomposition.PLSCanonical. #22119 by Томас Фан.Исправление Форма coef_ атрибут
cross_decomposition.CCA,cross_decomposition.PLSCanonicalиcross_decomposition.PLSRegressionизменится в версии 1.3, с(n_features, n_targets)to(n_targets, n_features), для согласованности с другими линейными моделями и для работы с интерфейсом, ожидающим определенную форму дляcoef_(например,feature_selection.RFE). #22016 by Guillaume Lemaitre.Изменение API добавить атрибут fitted
intercept_tocross_decomposition.PLSCanonical,cross_decomposition.PLSRegression, иcross_decomposition.CCA. Методpredictдействительно эквивалентноY = X @ coef_ + intercept_. #22015 by Guillaume Lemaitre.
sklearn.datasets#
Функция
datasets.load_filesтеперь принимает список игнорирования и список разрешения на основе расширений файлов. #19747 by Тони Аталла и #22498 by Meekail Zain.Улучшение
datasets.make_swiss_rollтеперь поддерживает необязательный аргумент hole; при установке в True возвращает набор данных swiss-hole. #21482 by Sebastian Pujalte.Улучшение
datasets.make_blobsбольше не копирует данные в процессе генерации, поэтому использует меньше памяти. #22412 by Zhehao Liu.Улучшение
datasets.load_diabetesтеперь принимает параметрscaled, чтобы позволить загрузку немасштабированных данных. Масштабированная версия этого набора данных теперь вычисляется из немасштабированных данных и может давать немного другие результаты, чем в предыдущей версии (в пределах абсолютной погрешности 1e-4). #16605 by Мэнди Гу.Улучшение
datasets.fetch_openmlтеперь имеет два необязательных аргументаn_retriesиdelay. По умолчанию,datasets.fetch_openmlповторит попытку 3 раза в случае сбоя сети с задержкой между каждой попыткой. #21901 by Rileran.Исправление
datasets.fetch_covtypeтеперь безопасен для параллельного выполнения: данные загружаются во временный каталог перед перемещением в каталог данных. #23113 by Илион Бейст.Изменение API
datasets.make_sparse_coded_signalтеперь принимает параметрdata_transposedдля явного указания формы матрицыX. Поведение по умолчаниюTrueзаключается в возврате транспонированной матрицыXсоответствующий(n_features, n_samples)форма. Значение по умолчанию изменится наFalseв версии 1.3. #21425 by Gabriel Stefanini Vicente.
sklearn.decomposition#
Основная функция Добавлен новый оценщик
decomposition.MiniBatchNMF. Это более быстрая, но менее точная версия неотрицательного матричного разложения, лучше подходящая для больших наборов данных. #16948 by Кьяра Мармо, Patricio Cerda и Жереми дю Буаберранже.Улучшение
decomposition.dict_learning,decomposition.dict_learning_onlineиdecomposition.sparse_encodeсохранить dtype дляnumpy.float32.decomposition.DictionaryLearning,decomposition.MiniBatchDictionaryLearningиdecomposition.SparseCoderсохранить dtype дляnumpy.float32. #22002 by Takeshi Oura.Улучшение
decomposition.PCAпредоставляет параметрn_oversamplesнастроитьutils.extmath.randomized_svdи получать точные результаты, когда количество признаков велико. #21109 by Smile.Улучшение The
decomposition.MiniBatchDictionaryLearningиdecomposition.dict_learning_onlineбыли переработаны и теперь имеют критерий остановки, основанный на небольшом изменении словаря или целевой функции, контролируемом новымmax_iter,tolиmax_no_improvementпараметров. Кроме того, некоторые из их параметров и атрибутов устарели.the
n_iterпараметр обоих устарел. Используйтеmax_iterвместо этого.the
iter_offset,return_inner_stats,inner_statsиreturn_n_iterпараметрыdecomposition.dict_learning_onlineслужат внутренним целям и устарели.the
inner_stats_,iter_offset_иrandom_state_атрибутыdecomposition.MiniBatchDictionaryLearningслужат внутренним целям и являются устаревшими.значение по умолчанию для
batch_sizeпараметр обоих изменится с 3 на 256 в версии 1.3.
Улучшение
decomposition.SparsePCAиdecomposition.MiniBatchSparsePCAсохранить dtype дляnumpy.float32. #22111 by Takeshi Oura.Улучшение
decomposition.TruncatedSVDтеперь позволяетn_components == n_features, еслиalgorithm='randomized'. #22181 by Zach Deane-Mayer.Улучшение Добавляет get_feature_names_out ко всем преобразователям в
decompositionмодуль:decomposition.DictionaryLearning,decomposition.FactorAnalysis,decomposition.FastICA,decomposition.IncrementalPCA,decomposition.KernelPCA,decomposition.LatentDirichletAllocation,decomposition.MiniBatchDictionaryLearning,decomposition.MiniBatchSparsePCA,decomposition.NMF,decomposition.PCA,decomposition.SparsePCA, иdecomposition.TruncatedSVD. #21334 by Томас Фан.Улучшение
decomposition.TruncatedSVDпредоставляет параметрn_oversamplesиpower_iteration_normalizerнастроитьutils.extmath.randomized_svdи получать точные результаты, когда количество признаков велико, ранг матрицы высок, или другие особенности матрицы затрудняют низкоранговую аппроксимацию. #21705 by Jay S. Stanley III.Улучшение
decomposition.PCAпредоставляет параметрpower_iteration_normalizerнастроитьutils.extmath.randomized_svdи получать более точные результаты, когда низкоранговое приближение затруднено. #21705 by Jay S. Stanley III.Исправление
decomposition.FastICAтеперь проверяет входные параметры вfitвместо__init__. #21432 by Ханна Боле и Марен Вестерманн.Исправление
decomposition.FastICAтеперь принимаетnp.float32суммы предсказанных вероятностей, что рекомендуется дляfitиfit_transformи основные обученные атрибуты используют тип данных той же точности, что и обучающие данные. #22806 by Джихан Беннис и Оливье Гризель.Исправление
decomposition.FactorAnalysisтеперь проверяет входные параметры вfitвместо__init__. #21713 by Haya и Крум Арнаудов.Исправление
decomposition.KernelPCAтеперь проверяет входные параметры вfitвместо__init__. #21567 by Мэгги Чеге.Исправление
decomposition.PCAиdecomposition.IncrementalPCAболее безопасно вычислять точность с использованием обратной матрицы ковариации, еслиself.noise_variance_равно нулю. #22300 by Meekail Zain и #15948 by @sysuresh.Исправление Значительно снижено пиковое использование памяти в
decomposition.PCAпри вызовеfitилиfit_transform. #22553 by Meekail Zain.Изменение API
decomposition.FastICAтеперь поддерживает единичную дисперсию для отбеливания. Значение по умолчанию для егоwhitenаргумент изменится сTrue(который ведет себя как'arbitrary-variance') в'unit-variance'в версии 1.3. #19490 by Facundo Ferrin и Julien Jerphanion.
sklearn.discriminant_analysis#
Улучшение Добавляет get_feature_names_out to
discriminant_analysis.LinearDiscriminantAnalysis. #22120 by Томас Фан.Исправление
discriminant_analysis.LinearDiscriminantAnalysisтеперь использует правильный коэффициент масштабирования дисперсии, что может привести к другому поведению модели. #15984 by Okon Samuel и #22696 by Meekail Zain.
sklearn.dummy#
Исправление
dummy.DummyRegressorбольше не переопределяетconstantпараметр во времяfit. #22486 by Томас Фан.
sklearn.ensemble#
Основная функция Добавлена дополнительная опция
loss="quantile"toensemble.HistGradientBoostingRegressorдля моделирования квантилей. Уровень квантиля может быть указан с помощью нового параметраquantile. #21800 и #20567 by Christian Lorentzen.Эффективность
fitofensemble.GradientBoostingClassifierиensemble.GradientBoostingRegressorтеперь вызываетutils.check_arrayс параметромforce_all_finite=Falseдля последующих запусков с теплым стартом, так как это уже было проверено ранее. #22159 by Geoffrey Paris.Улучшение
ensemble.HistGradientBoostingClassifierбыстрее, для бинарных и особенно для многоклассовых задач благодаря новому модулю приватной функции потерь. #20811, #20567 и #21814 by Christian Lorentzen.Улучшение Добавлена поддержка использования предварительно обученных моделей с
cv="prefit"вensemble.StackingClassifierиensemble.StackingRegressor. #16748 by Siqi He и #22215 by Meekail Zain.Улучшение
ensemble.RandomForestClassifierиensemble.ExtraTreesClassifierиметь новыйcriterion="log_loss", что эквивалентноcriterion="entropy". #23047 by Christian Lorentzen.Улучшение Добавляет get_feature_names_out to
ensemble.VotingClassifier,ensemble.VotingRegressor,ensemble.StackingClassifier, иensemble.StackingRegressor. #22695 и #22697 by Томас Фан.Улучшение
ensemble.RandomTreesEmbeddingтеперь имеет информативный get_feature_names_out функция, которая включает как индекс дерева, так и индекс листа в имена выходных признаков. #21762 by Zhehao Liu и Томас Фан.Эффективность Обучение
ensemble.RandomForestClassifier,ensemble.RandomForestRegressor,ensemble.ExtraTreesClassifier,ensemble.ExtraTreesRegressor, иensemble.RandomTreesEmbeddingтеперь работает быстрее в многопроцессорной среде, особенно для последующих подгонок сwarm_startвключено. #22106 by Pieter Gijsbers.Исправление Изменить параметр
validation_fractionвensemble.GradientBoostingClassifierиensemble.GradientBoostingRegressorчтобы ошибка возникала, если в качестве аргумента передано что-либо, кроме числа с плавающей точкой. #21632 by Genesis Valencia.Исправление Устранен потенциальный источник переподписки CPU в
ensemble.HistGradientBoostingClassifierиensemble.HistGradientBoostingRegressorкогда использование ресурсов ЦП ограничено, например, с использованием квот cgroups в контейнере docker. #22566 by Жереми дю Буаберранже.Исправление
ensemble.HistGradientBoostingClassifierиensemble.HistGradientBoostingRegressorбольше не предупреждает при обучении на pandas DataFrame с нестандартнымscoringпараметр и early_stopping включен. #22908 by Томас Фан.Исправление Исправляет HTML repr для
ensemble.StackingClassifierиensemble.StackingRegressor. #23097 by Томас Фан.Изменение API Атрибут
loss_ofensemble.GradientBoostingClassifierиensemble.GradientBoostingRegressorбыл устаревшим и будет удален в версии 1.3. #23079 by Christian Lorentzen.Изменение API Изменено значение по умолчанию для
max_featuresдо 1.0 дляensemble.RandomForestRegressorи для"sqrt"дляensemble.RandomForestClassifier. Обратите внимание, что они дают те же результаты подгонки, что и раньше, но их гораздо легче понять. Старое значение по умолчанию"auto"был устаревшим и будет удален в версии 1.3. Те же изменения также применяются дляensemble.ExtraTreesRegressorиensemble.ExtraTreesClassifier. #20803 by Brian Sun.Эффективность Улучшена производительность времени выполнения
ensemble.IsolationForestпропуская повторяющиеся проверки входных данных. #23149 by Zhehao Liu.
sklearn.feature_extraction#
Функция
feature_extraction.FeatureHasherтеперь поддерживает PyPy. #23023 by Томас Фан.Исправление
feature_extraction.FeatureHasherтеперь проверяет входные параметры вtransformвместо__init__. #21573 by Ханна Боле и Марен Вестерманн.Исправление
feature_extraction.text.TfidfVectorizerтеперь не создаётfeature_extraction.text.TfidfTransformerв__init__как требуется нашим API. #21832 by Guillaume Lemaitre.
sklearn.feature_selection#
Функция Добавлен автоматический режим в
feature_selection.SequentialFeatureSelector. Если аргументn_features_to_selectявляется'auto', выбирайте признаки, пока улучшение оценки не превысит аргументtol. Значение по умолчанию дляn_features_to_selectизменено сNoneto'warn'в 1.1 и станет'auto'в 1.3.Noneи'warn'будет удалено в версии 1.3. #20145 by murata-yu.Функция Добавлена возможность передавать вызываемые объекты в
max_featuresоценок.feature_selection.SelectFromModel. Также введен новый атрибутmax_features_который выводится изmax_featuresи данные во времяfit. Еслиmax_featuresявляется целым числом, тогдаmax_features_ = max_features. Еслиmax_featuresявляется вызываемым объектом, тоmax_features_ = max_features(X). #22356 by Meekail Zain.Улучшение
feature_selection.GenericUnivariateSelectсохраняет тип float32. #18482 by Тьерри Гамейро и Даниэль Харса и #22370 by Meekail Zain.Улучшение Добавить параметр
force_finitetofeature_selection.f_regressionиfeature_selection.r_regression. Этот параметр позволяет принудительно сделать выход конечным в случае, когда признак или целевая переменная постоянны или когда признак и целевая переменная идеально коррелированы (только для F-статистики). #17819 by Juan Carlos Alfaro Jiménez.Эффективность Улучшена производительность времени выполнения
feature_selection.chi2с булевыми массивами. #22235 by Томас Фан.Эффективность Сниженное использование памяти
feature_selection.chi2. #21837 by Louis Wagner.
sklearn.gaussian_process#
Исправление
predictиsample_yметодыgaussian_process.GaussianProcessRegressorтеперь возвращают массивы правильной формы в случаях с одной целью и несколькими целями, и для обоихnormalize_y=Falseиnormalize_y=True. #22199 by Guillaume Lemaitre, Айдар Шакеримов и Тенави Накамура-Циммер.Исправление
gaussian_process.GaussianProcessClassifierвызывает более информативную ошибку, еслиCompoundKernelпередается черезkernel. #22223 by MarcoM.
sklearn.impute#
Улучшение
impute.SimpleImputerтеперь предупреждает с именами признаков, когда признаки пропускаются из-за отсутствия наблюдаемых значений в обучающем наборе. #21617 by Christian Ritter.Улучшение Добавлена поддержка для
pd.NAвimpute.SimpleImputer. #21114 by Ying Xiong.Улучшение Добавляет get_feature_names_out to
impute.SimpleImputer,impute.KNNImputer,impute.IterativeImputer, иimpute.MissingIndicator. #21078 by Томас Фан.Изменение API The
verboseпараметр был устаревшим дляimpute.SimpleImputer. При удалении пустых столбцов всегда будет выдаваться предупреждение. #21448 by Oleh Kozynets и Christian Ritter.
sklearn.inspection#
Функция Добавьте отображение для построения границы решений классификатора с помощью метода
inspection.DecisionBoundaryDisplay.from_estimator. #16061 by Томас Фан.Улучшение В
inspection.PartialDependenceDisplay.from_estimator, разрешитьkindдля принятия списка строк, указывающих, какой тип графика рисовать для каждого взаимодействия признаков. #19438 by Guillaume Lemaitre.Улучшение
inspection.PartialDependenceDisplay.from_estimator,inspection.PartialDependenceDisplay.plot, иinspection.plot_partial_dependenceтеперь поддерживают построение центрированных кривых индивидуального условного ожидания (cICE) и центрированных кривых частных зависимостей (PDP), управляемых установкой параметраcentered. #18310 by Johannes Elfner и Guillaume Lemaitre.
sklearn.isotonic#
Улучшение Добавляет get_feature_names_out to
isotonic.IsotonicRegression. #22249 by Томас Фан.
sklearn.kernel_approximation#
sklearn.linear_model#
Функция
linear_model.ElasticNet,linear_model.ElasticNetCV,linear_model.Lassoиlinear_model.LassoCVподдержкаsample_weightдля разреженного вводаX. #22808 by Christian Lorentzen.Функция
linear_model.Ridgeсsolver="lsqr"теперь поддерживает обучение на разреженных входных данных сfit_intercept=True. #22950 by Christian Lorentzen.Улучшение
linear_model.QuantileRegressorподдерживает разреженный ввод для решателей на основе highs. #21086 by Venkatachalam Natchiappan. Кроме того, эти решатели теперь используют CSC-матрицу с самого начала, что ускоряет обучение. #22206 by Christian Lorentzen.Улучшение
linear_model.LogisticRegressionбыстрее дляsolvers="lbfgs"иsolver="newton-cg", для бинарных и в частности для многоклассовых задач благодаря новому приватному модулю функции потерь. В многоклассовом случае потребление памяти также было уменьшено для этих решателей, так как целевая переменная теперь кодируется метками (преобразуется в целые числа) вместо бинаризации меток (one-hot кодирования). Чем больше классов, тем больше преимущество. #21808, #20567 и #21814 by Christian Lorentzen.Улучшение
linear_model.GammaRegressor,linear_model.PoissonRegressorиlinear_model.TweedieRegressorбыстрее дляsolvers="lbfgs". #22548, #21808 и #20567 by Christian Lorentzen.Улучшение Переименовать параметр
base_estimatortoestimatorвlinear_model.RANSACRegressorдля улучшения читаемости и согласованности.base_estimatorустарел и будет удалён в версии 1.3. #22062 by Adrian Trujillo.Улучшение
linear_model.ElasticNetи другие классы линейных моделей, использующие координатный спуск, показывают сообщения об ошибках, когда создаются неконечные веса параметров. #22148 by Christian Ritter и Норберт Прейнинг.Улучшение
linear_model.ElasticNetиlinear_model.Lassoтеперь выдают согласованные сообщения об ошибках при передаче недопустимых значений дляl1_ratio,alpha,max_iterиtol. #22240 by Arturo Amor.Улучшение
linear_model.BayesianRidgeиlinear_model.ARDRegressionтеперь сохраняют тип данных float32. #9087 by Arthur Imbert и #22525 by Meekail Zain.Улучшение
linear_model.RidgeClassifierтеперь поддерживает многоклассовую классификацию. #19689 by Guillaume Lemaitre.Улучшение
linear_model.RidgeCVиlinear_model.RidgeClassifierCVтеперь выдают согласованное сообщение об ошибке при передаче недопустимых значений дляalphas. #21606 by Arturo Amor.Улучшение
linear_model.Ridgeиlinear_model.RidgeClassifierтеперь выдают согласованное сообщение об ошибке при передаче недопустимых значений дляalpha,max_iterиtol. #21341 by Arturo Amor.Улучшение
linear_model.orthogonal_mp_gramсохраняет dtype дляnumpy.float32. #22002 by Takeshi Oura.Исправление
linear_model.LassoLarsICтеперь правильно вычисляет AIC и BIC. Теперь выдается ошибка, когдаn_features > n_samplesи когда дисперсия шума не предоставлена. #21481 by Guillaume Lemaitre и Андрес Бабино.Исправление
linear_model.TheilSenRegressorтеперь проверяет входной параметрmax_subpopulationвfitвместо__init__. #21767 by Марен Вестерманн.Исправление
linear_model.ElasticNetCVтеперь выдает корректное предупреждение, когдаl1_ratio=0. #21724 by Yar Khine Phyo.Исправление
linear_model.LogisticRegressionиlinear_model.LogisticRegressionCVтеперь устанавливаетn_iter_атрибут с формой, соответствующей строке документации и согласованной с формой, полученной при использовании других решателей в настройке "один против всех". Ранее он записывал только максимальное количество итераций для каждой бинарной подзадачи, тогда как теперь записываются все из них. #21998 by Оливье Гризель.Исправление Свойство
familyoflinear_model.TweedieRegressorне проверяется в__init__больше не используется. Вместо этого это (приватное) свойство устарело вlinear_model.GammaRegressor,linear_model.PoissonRegressorиlinear_model.TweedieRegressor, и будет удалён в 1.3. #22548 by Christian Lorentzen.Исправление The
coef_иintercept_атрибутыlinear_model.LinearRegressionтеперь корректно вычисляются при наличии весов выборок, когда входные данные разрежены. #22891 by Жереми дю Буаберранже.Исправление The
coef_иintercept_атрибутыlinear_model.Ridgeсsolver="sparse_cg"иsolver="lbfgs"теперь корректно вычисляются при наличии весов образцов, когда входные данные разреженные. #22899 by Жереми дю Буаберранже.Исправление
linear_model.SGDRegressorиlinear_model.SGDClassifierтеперь правильно вычислять ошибку валидации при включенном раннем останове. #23256 by Zhehao Liu.Изменение API
linear_model.LassoLarsICтеперь предоставляетnoise_varianceкак параметр, чтобы предоставить оценку дисперсии шума. Это особенно актуально, когдаn_features > n_samplesи оценщик дисперсии шума не может быть вычислен. #21481 by Guillaume Lemaitre.
sklearn.manifold#
Функция
manifold.Isomapтеперь поддерживает соседей на основе радиуса черезradiusаргумент. #19794 by Zhehao Liu.Улучшение
manifold.spectral_embeddingиmanifold.SpectralEmbeddingподдержкаnp.float32dtype и сохранит этот dtype. #21534 by Andrew Knyazev.Улучшение Добавляет get_feature_names_out to
manifold.Isomapиmanifold.LocallyLinearEmbedding. #22254 by Томас Фан.Улучшение добавлен
metric_paramstomanifold.TSNEконструктор для дополнительных параметров метрики расстояния, используемой в оптимизации. #21805 by Jeanne Dionisi и #22685 by Meekail Zain.Улучшение
manifold.trustworthinessвызывает ошибку, еслиn_neighbours >= n_samples / 2чтобы обеспечить правильную поддержку функции. #18832 by Hong Shao Yang и #23033 by Meekail Zain.Исправление
manifold.spectral_embeddingтеперь использует гауссовское вместо предыдущего равномерного на [0, 1] случайного начального приближения к собственным векторам в eigen_solverslobpcgиamgдля улучшения их численной устойчивости. #21565 by Andrew Knyazev.
sklearn.metrics#
Функция
metrics.r2_scoreиmetrics.explained_variance_scoreиметь новыйforce_finiteпараметр. Установка этого параметра вFalseвернет фактический неконечный балл в случае идеальных предсказаний или постоянныхy_true, вместо конечной аппроксимации (1.0и0.0соответственно) в настоящее время возвращаются по умолчанию. #17266 by Sylvain Marié.Функция
metrics.d2_pinball_scoreиmetrics.d2_absolute_error_scoreвычислить \(D^2\) оценка регрессии для потерь пинбола и абсолютной ошибки соответственно.metrics.d2_absolute_error_scoreявляется частным случаемmetrics.d2_pinball_scoreс фиксированным параметром квантиляalpha=0.5для удобства использования и обнаружения. \(D^2\) оценки являются обобщениямиr2_scoreи может интерпретироваться как доля объяснённого отклонения. #22118 by Ohad Michel.Улучшение
metrics.top_k_accuracy_scoreвызывает улучшенное сообщение об ошибке когдаy_trueявляется бинарным иy_scoreявляется двумерным. #22284 by Томас Фан.Улучшение
metrics.roc_auc_scoreтеперь поддерживаетaverage=Noneв многоклассовом случае, когдаmulticlass='ovr', который вернёт оценку для каждого класса. #19158 by Nicki Skafte.Улучшение Добавляет
im_kwпараметр дляmetrics.ConfusionMatrixDisplay.from_estimatormetrics.ConfusionMatrixDisplay.from_predictions, иmetrics.ConfusionMatrixDisplay.plot.im_kwпараметр передается вmatplotlib.pyplot.imshowвызов при построении матрицы ошибок. #20753 by Томас Фан.Исправление
metrics.silhouette_scoreтеперь поддерживает целочисленный ввод для предварительно вычисленных расстояний. #22108 by Томас Фан.Исправление Исправлена ошибка в
metrics.normalized_mutual_info_scoreкоторый может возвращать неограниченные значения. #22635 by Жереми дю Буаберранже.Исправление Исправления
metrics.precision_recall_curveиmetrics.average_precision_scoreкогда все истинные метки отрицательные. #19085 by Varun Agrawal.Изменение API
metrics.SCORERSустарел и будет удален в версии 1.3. Пожалуйста, используйтеmetrics.get_scorer_namesдля получения имён всех доступных оценщиков. #22866 by Адрин Джалали.Изменение API Параметры
sample_weightиmultioutputofmetrics.mean_absolute_percentage_errorтеперь являются только ключевыми словами, в соответствии с SLEP009. Был введен цикл устаревания. #21576 by Paul-Emile Dugnat.Изменение API The
"wminkowski"метрикаmetrics.DistanceMetricустарел и будет удален в версии 1.3. Вместо этого существующий"minkowski"метрика теперь принимает необязательныйwпараметр для весов. Это устаревание направлено на сохранение согласованности с соглашением SciPy 1.8. #21873 by Yar Khine Phyo.Изменение API
metrics.DistanceMetricаргумента для использования коэффициента корреляции Мэттьюса (MCC).sklearn.neighborstosklearn.metrics. Используяneighbors.DistanceMetricдля импортов всё ещё действителен для обратной совместимости, но этот псевдоним будет удалён в версии 1.3. #21177 by Julien Jerphanion.
sklearn.mixture#
Улучшение
mixture.GaussianMixtureиmixture.BayesianGaussianMixtureтеперь можно инициализировать с помощью k-means++ и случайных точек данных. #20408 by Gordon Walsh, Alberto Ceballos и Андрес Риос.Исправление Исправлена ошибка, которая правильно инициализирует
precisions_cholesky_вmixture.GaussianMixtureпри указанииprecisions_initвзяв его квадратный корень. #22058 by Guillaume Lemaitre.Исправление
mixture.GaussianMixtureтеперь нормализуетweights_более безопасно, предотвращая ошибки округления при вызовеmixture.GaussianMixture.sampleсn_components=1. #23034 by Meekail Zain.
sklearn.model_selection#
Улучшение теперь можно передавать
scoring="matthews_corrcoef"ко всем инструментам выбора модели сscoring. Из-за его реализации в #22203 by Оливье Гризель.Улучшение вызвать ошибку при перекрестной проверке, когда подгонки для всех разделов не удались. Аналогично вызвать ошибку при поиске по сетке, когда подгонки для всех моделей и всех разделов не удались. #21026 by Loïc Estève.
Исправление
model_selection.GridSearchCV,model_selection.HalvingGridSearchCVтеперь проверяет входные параметры вfitвместо__init__. #21880 by Mrinal Tyagi.Исправление
model_selection.learning_curveтеперь поддерживаетpartial_fitс регрессорами. #22982 by Томас Фан.
sklearn.multiclass#
Улучшение
multiclass.OneVsRestClassifierтеперь поддерживаетverboseпараметр, чтобы можно было видеть прогресс обучения. #22508 by Chris Combs.Исправление
multiclass.OneVsOneClassifier.predictвозвращает правильные предсказания, когда внутренний классификатор имеет только predict_proba. #22604 by Томас Фан.
sklearn.neighbors#
Улучшение Добавляет get_feature_names_out to
neighbors.RadiusNeighborsTransformer,neighbors.KNeighborsTransformerиneighbors.NeighborhoodComponentsAnalysis. #22212 by Meekail Zain.Исправление
neighbors.KernelDensityтеперь проверяет входные параметры вfitвместо__init__. #21430 by Десислава Василева и Lucy Jimenez.Исправление
neighbors.KNeighborsRegressor.predictтеперь работает корректно при передаче массиво-подобного ввода, еслиKNeighborsRegressorсначала создается с вызываемым объектом, переданным вweightsпараметр. #22687 by Meekail Zain.
sklearn.neural_network#
Улучшение
neural_network.MLPClassifierиneural_network.MLPRegressorпоказывать сообщения об ошибках, когда оптимизаторы выдают неконечные веса параметров. #22150 by Christian Ritter и Норберт Прейнинг.Улучшение Добавляет get_feature_names_out to
neural_network.BernoulliRBM. #22248 by Томас Фан.
sklearn.pipeline#
Улучшение Добавлена поддержка "passthrough" в
pipeline.FeatureUnion. Установка трансформера в "passthrough" оставит признаки неизменными. #20860 by Shubhraneel Pal.Исправление
pipeline.Pipelineтеперь не проверяет гиперпараметры в__init__но в.fit(). #21888 by iofall и Ариса Я..Исправление
pipeline.FeatureUnionне проверяет гиперпараметры в__init__. Проверка теперь обрабатывается в.fit()и.fit_transform(). #21954 by iofall и Ариса Я..Исправление Определяет
__sklearn_is_fitted__вpipeline.FeatureUnionдля возврата корректного результата сutils.validation.check_is_fitted. #22953 by randomgeek78.
sklearn.preprocessing#
Функция
preprocessing.OneHotEncoderтеперь поддерживает группировку редких категорий в один признак. Группировка редких категорий включается указанием способа выбора редких категорий с помощьюmin_frequencyилиmax_categories. #16018 by Томас Фан.Улучшение Добавляет
subsampleпараметр дляpreprocessing.KBinsDiscretizer. Это позволяет указать максимальное количество выборок для использования при обучении модели. Опция доступна только когдаstrategyустановлено вquantile. #21445 by Фелипе Биду и Аманда Д'Суза.Улучшение Добавляет
encoded_missing_valuetopreprocessing.OrdinalEncoderдля настройки закодированного значения пропущенных данных. #21988 by Томас Фан.Улучшение Добавлен
get_feature_names_outметод и новый параметрfeature_names_outtopreprocessing.FunctionTransformer. Вы можете установитьfeature_names_outв 'one-to-one', чтобы использовать имена входных признаков как имена выходных признаков, или вы можете установить его в вызываемый объект, который возвращает имена выходных признаков. Это особенно полезно, когда трансформер изменяет количество признаков. Еслиfeature_names_outравно None (что является значением по умолчанию), тогдаget_output_feature_namesне определён. #21569 by Орельен Жерон.Улучшение Добавляет get_feature_names_out to
preprocessing.Normalizer,preprocessing.KernelCenterer,preprocessing.OrdinalEncoder, иpreprocessing.Binarizer. #21079 by Томас Фан.Исправление
preprocessing.PowerTransformerсmethod='yeo-johnson'лучше поддерживает значительно негауссовские данные при поиске оптимального лямбда. #20653 by Томас Фан.Исправление
preprocessing.LabelBinarizerтеперь проверяет входные параметры вfitвместо__init__. #21434 by Крум Арнаудов.Исправление
preprocessing.FunctionTransformerсcheck_inverse=Trueтеперь предоставляет информативное сообщение об ошибке, когда входные данные имеют смешанные типы. #19916 by Zhehao Liu.Исправление
preprocessing.KBinsDiscretizerтеперь более последовательно обрабатывает границы бинов. #14975 by Андреас Мюллер и #22526 by Meekail Zain.Исправление Добавляет
preprocessing.KBinsDiscretizer.get_feature_names_outподдержка, когдаencode="ordinal". #22735 by Томас Фан.
sklearn.random_projection#
Улучшение Добавляет
inverse_transformметод иcompute_inverse_transformпараметр дляrandom_projection.GaussianRandomProjectionиrandom_projection.SparseRandomProjection. Когда параметр установлен в True, псевдообратная компонентов вычисляется во времяfitи сохраняется какinverse_components_. #21701 by Орельен Жерон.Улучшение
random_projection.SparseRandomProjectionиrandom_projection.GaussianRandomProjectionсохранить dtype дляnumpy.float32. #22114 by Takeshi Oura.Улучшение Добавляет get_feature_names_out ко всем преобразователям в
sklearn.random_projectionмодуль:random_projection.GaussianRandomProjectionиrandom_projection.SparseRandomProjection. #21330 by Loïc Estève.
sklearn.svm#
Улучшение
svm.OneClassSVM,svm.NuSVC,svm.NuSVR,svm.SVCиsvm.SVRтеперь предоставляютn_iter_, количество итераций процедуры оптимизации libsvm. #21408 by Хуан Мартин Лойола.Улучшение
svm.SVR,svm.SVC,svm.NuSVR,svm.OneClassSVM,svm.NuSVCтеперь вызывает ошибку, когда оценка двойного разрыва дает неконечные веса параметров. #22149 by Christian Ritter и Норберт Прейнинг.Исправление
svm.NuSVC,svm.NuSVR,svm.SVC,svm.SVR,svm.OneClassSVMтеперь проверяет входные параметры вfitвместо__init__. #21436 by Haidar Almubarak.
sklearn.tree#
Улучшение
tree.DecisionTreeClassifierиtree.ExtraTreeClassifierиметь новыйcriterion="log_loss", что эквивалентноcriterion="entropy". #23047 by Christian Lorentzen.Исправление Исправление ошибки в критерии разделения Пуассона для
tree.DecisionTreeRegressor. #22191 by Christian Lorentzen.Изменение API Изменено значение по умолчанию для
max_featuresдо 1.0 дляtree.ExtraTreeRegressorи для"sqrt"дляtree.ExtraTreeClassifier, который не изменит результат обучения. Исходное значение по умолчанию"auto"был устаревшим и будет удален в версии 1.3. Установкаmax_featuresto"auto"также устарел дляtree.DecisionTreeClassifierиtree.DecisionTreeRegressor. #22476 by Zhehao Liu.
sklearn.utils#
Улучшение
utils.check_arrayиutils.multiclass.type_of_targetтеперь принимаетinput_nameпараметр, чтобы сделать сообщение об ошибке более информативным при передаче недопустимых входных данных (например, с NaN или бесконечными значениями). #21219 by Оливье Гризель.Улучшение
utils.check_arrayвозвращает ndarray с плавающей точкой сnp.nanкогда переданFloat32илиFloat64массив расширения pandas сpd.NA. #21278 by Томас Фан.Улучшение
utils.estimator_html_reprпоказывает более полезное сообщение об ошибке при запуске в jupyter notebook, который не является доверенным. #21316 by Томас Фан.Улучшение
utils.estimator_html_reprотображает стрелку в верхнем левом углу HTML-представления, чтобы показать, как элементы являются кликабельными. #21298 by Томас Фан.Улучшение
utils.check_arrayсdtype=Noneвозвращает числовые массивы при передаче pandas DataFrame со смешанными типами данных.dtype="numeric"также лучше определит тип данных, когда DataFrame имеет смешанные типы данных. #22237 by Томас Фан.Улучшение
utils.check_scalarтеперь имеет улучшенные сообщения при отображении типа. #22218 by Томас Фан.Исправление Изменяет сообщение об ошибке
ValidationErrorвызваноutils.check_X_yкогда y равен None, чтобы он был совместим сcheck_requires_y_noneпроверка оценщика. #22578 by Claudio Salvatore Arcidiacono.Исправление
utils.class_weight.compute_class_weightтеперь требует только, чтобы все классы вyиметь вес вclass_weight. Ошибка все еще возникает, когда класс присутствует вyно не вclass_weight. #22595 by Томас Фан.Исправление
utils.estimator_html_reprимеет улучшенную визуализацию для вложенных мета-оценщиков. #21310 by Томас Фан.Исправление
utils.check_scalarвызывает ошибку, когдаinclude_boundaries={"left", "right"}и границы не установлены. #22027 by Marie Lanternier.Исправление
utils.metaestimators.available_ifкорректно возвращает ограниченный метод, который можно сериализовать. #23077 by Томас Фан.Изменение API
utils.estimator_checks.check_estimatorаргумент теперь называетсяestimator(предыдущее название былоEstimator). #22188 by Матюрен Массиас.Изменение API
utils.metaestimators.if_delegate_has_methodустарел и будет удалён в версии 1.3. Используйтеutils.metaestimators.available_ifвместо этого. #22830 by Жереми дю Буаберранже.
Участники кода и документации
Благодарим всех, кто внес вклад в поддержку и улучшение проекта с версии 1.0, включая:
2357juan, Abhishek Gupta, adamgonzo, Adam Li, adijohar, Aditya Kumawat, Aditya Raghuwanshi, Aditya Singh, Adrian Trujillo Duron, Adrin Jalali, ahmadjubair33, AJ Druck, aj-white, Alan Peixinho, Alberto Mario Ceballos-Arroyo, Alek Lefebvre, Alex, Alexandr, Alexandre Gramfort, alexanmv, almeidayoel, Amanda Dsouza, Aman Sharma, Amar pratap singh, Amit, amrcode, András Simon, Andreas Grivas, Andreas Mueller, Andrew Knyazev, Andriy, Angus L’Herrou, Ankit Sharma, Anne Ducout, Arisa, Arth, arthurmello, Arturo Amor, ArturoAmor, Atharva Patil, aufarkari, Aurélien Geron, avm19, Ayan Bag, baam, Bardiya Ak, Behrouz B, Ben3940, Benjamin Bossan, Bharat Raghunathan, Bijil Subhash, bmreiniger, Brandon Truth, Brenden Kadota, Brian Sun, cdrig, Chalmer Lowe, Chiara Marmo, Chitteti Srinath Reddy, Chloe-Agathe Azencott, Christian Lorentzen, Christian Ritter, christopherlim98, Christoph T. Weidemann, Christos Aridas, Claudio Salvatore Arcidiacono, combscCode, Daniela Fernandes, darioka, Darren Nguyen, Dave Eargle, David Gilbertson, David Poznik, Dea María Léon, Dennis Osei, DessyVV, Dev514, Dimitri Papadopoulos Orfanos, Diwakar Gupta, Dr. Felix M. Riese, drskd, Emiko Sano, Emmanouil Gionanidis, EricEllwanger, Erich Schubert, Eric Larson, Eric Ndirangu, ErmolaevPA, Estefania Barreto-Ojeda, eyast, Fatima GASMI, Federico Luna, Felix Glushchenkov, fkaren27, Fortune Uwha, FPGAwesome, francoisgoupil, Frans Larsson, ftorres16, Gabor Berei, Gabor Kertesz, Gabriel Stefanini Vicente, Gabriel S Vicente, Gael Varoquaux, GAURAV CHOUDHARY, Gauthier I, genvalen, Geoffrey-Paris, Giancarlo Pablo, glennfrutiz, gpapadok, Guillaume Lemaitre, Guillermo Tomás Fernández Martín, Gustavo Oliveira, Haidar Almubarak, Hannah Bohle, Hansin Ahuja, Haoyin Xu, Haya, Helder Geovane Gomes de Lima, henrymooresc, Hideaki Imamura, Himanshu Kumar, Hind-M, hmasdev, hvassard, i-aki-y, iasoon, Inclusive Coding Bot, Ingela, iofall, Ishan Kumar, Jack Liu, Jake Cowton, jalexand3r, J Alexander, Jauhar, Jaya Surya Kommireddy, Jay Stanley, Jeff Hale, je-kr, JElfner, Jenny Vo, Jérémie du Boisberranger, Jihane, Jirka Borovec, Joel Nothman, Jon Haitz Legarreta Gorroño, Jordan Silke, Jorge Ciprián, Jorge Loayza, Joseph Chazalon, Joseph Schwartz-Messing, Jovan Stojanovic, JSchuerz, Juan Carlos Alfaro Jiménez, Juan Martin Loyola, Julien Jerphanion, katotten, Kaushik Roy Chowdhury, Ken4git, Kenneth Prabakaran, kernc, Kevin Doucet, KimAYoung, Koushik Joshi, Kranthi Sedamaki, krishna kumar, krumetoft, lesnee, Lisa Casino, Logan Thomas, Loic Esteve, Louis Wagner, LucieClair, Lucy Liu, Luiz Eduardo Amaral, Magali, MaggieChege, Mai, mandjevant, Mandy Gu, Manimaran, MarcoM, Marco Wurps, Maren Westermann, Maria Boerner, MarieS-WiMLDS, Martel Corentin, martin-kokos, mathurinm, Matías, matjansen, Matteo Francia, Maxwell, Meekail Zain, Megabyte, Mehrdad Moradizadeh, melemo2, Michael I Chen, michalkrawczyk, Micky774, milana2, millawell, Ming-Yang Ho, Mitzi, miwojc, Mizuki, mlant, Mohamed Haseeb, Mohit Sharma, Moonkyung94, mpoemsl, MrinalTyagi, Mr. Leu, msabatier, murata-yu, N, Nadirhan Şahin, Naipawat Poolsawat, NartayXD, nastegiano, nathansquan, nat-salt, Nicki Skafte Detlefsen, Nicolas Hug, Niket Jain, Nikhil Suresh, Nikita Titov, Nikolay Kondratyev, Ohad Michel, Oleksandr Husak, Olivier Grisel, partev, Patrick Ferreira, Paul, pelennor, PierreAttard, Piet Brömmel, Pieter Gijsbers, Pinky, poloso, Pramod Anantharam, puhuk, Purna Chandra Mansingh, QuadV, Rahil Parikh, Randall Boyes, randomgeek78, Raz Hoshia, Reshama Shaikh, Ricardo Ferreira, Richard Taylor, Rileran, Rishabh, Robin Thibaut, Rocco Meli, Roman Feldbauer, Roman Yurchak, Ross Barnowski, rsnegrin, Sachin Yadav, sakinaOuisrani, Sam Adam Day, Sanjay Marreddi, Sebastian Pujalte, SEELE, SELEE, Seyedsaman (Sam) Emami, ShanDeng123, Shao Yang Hong, sharmadharmpal, shaymerNaturalint, Shuangchi He, Shubhraneel Pal, siavrez, slishak, Smile, spikebh, sply88, Srinath Kailasa, Stéphane Collot, Sultan Orazbayev, Sumit Saha, Sven Eschlbeck, Sven Stehle, Swapnil Jha, Sylvain Marié, Takeshi Oura, Tamires Santana, Tenavi, teunpe, Theis Ferré Hjortkjær, Thiruvenkadam, Thomas J. Fan, t-jakubek, toastedyeast, Tom Dupré la Tour, Tom McTiernan, TONY GEORGE, Tyler Martin, Tyler Reddy, Udit Gupta, Ugo Marchand, Varun Agrawal, Venkatachalam N, Vera Komeyer, victoirelouis, Vikas Vishwakarma, Vikrant khedkar, Vladimir Chernyy, Vladimir Kim, WeijiaDu, Xiao Yuan, Yar Khine Phyo, Ying Xiong, yiyangq, Yosshi999, Yuki Koyama, Zach Deane-Mayer, Zeel B Patel, zempleni, zhenfisher, 赵丰 (Zhao Feng)