make_multilabel_classification
- sklearn.datasets.make_multilabel_classification(n_samples=100, n_features=20, *, n_classes=5, n_labels=2, length=50, allow_unlabeled=True, sparse=False, return_indicator='dense', return_distributions=False, random_state=None)[исходный код]
-
Создаёт случайную задачу многометочной классификации.
- Для каждого образца процесс генерации выглядит следующим образом:
-
- выбирается количество меток: n ~ Poisson(n_labels)
- n раз выбирается класс c: c ~ Multinomial(theta)
- выбирается длина документа: k ~ Poisson(length)
- k раз выбирается слово: w ~ Multinomial(theta_c)
В описанном выше процессе используется выборка с отбраковкой, чтобы гарантировать, что n никогда не будет равно нулю или больше
n_classes, а длина документа никогда не будет равна нулю. Аналогично, отбраковываются уже выбранные классы.Пример использования см. в разделе Построение графика случайно сгенерированного многометочного набора данных.
Подробнее см. в руководстве пользователя.
- Параметры:
-
- n_samplesint, по умолчанию=100
-
Количество образцов.
- n_featuresint, по умолчанию=20
-
Общее количество признаков.
- n_classesint, по умолчанию=5
-
Количество классов в задаче классификации.
- n_labelsint, по умолчанию=2
-
Среднее количество меток на экземпляр. Точнее, количество меток для каждого образца выбирается из распределения Пуассона с
n_labelsв качестве математического ожидания, но ограничивается (с помощью выборки с отбраковкой) значениемn_classes; кроме того, оно должно быть ненулевым, еслиallow_unlabeledравно False. - lengthint, по умолчанию=50
-
Сумма значений признаков (количество слов, если это документы) выбирается из распределения Пуассона с указанным математическим ожиданием.
- allow_unlabeledbool, по умолчанию=True
-
Если
True, некоторые экземпляры могут не принадлежать ни к одному классу. - sparsebool, по умолчанию=False
-
Если
True, возвращает разреженную матрицу признаков.Добавлено в версии 0.17: параметр для выбора разреженного вывода.
- return_indicator{‘dense’, ‘sparse’} или False, по умолчанию=’dense’
-
Если
'dense', возвращаетYв формате плотного бинарного индикатора. Если'sparse', возвращаетYв формате разреженного бинарного индикатора.Falseвозвращает список списков меток. - return_distributionsbool, по умолчанию=False
-
Если
True, возвращает априорную вероятность классов и условные вероятности признаков для заданных классов, на основе которых были сгенерированы данные. - random_stateint, экземпляр RandomState или None, по умолчанию=None
-
Определяет генерацию случайных чисел при создании набора данных. Передайте int, чтобы получать воспроизводимый результат при нескольких вызовах функции. См. глоссарий.
- Возвращает:
-
- Xndarray формы (n_samples, n_features)
-
Сгенерированные образцы.
- Y{ndarray, разреженная матрица} формы (n_samples, n_classes)
-
Наборы меток. Разреженная матрица должна иметь формат CSR.
- p_cndarray формы (n_classes,)
-
Вероятность выбора каждого класса. Возвращается только если
return_distributions=True. - p_w_cndarray формы (n_features, n_classes)
-
Вероятность выбора каждого признака для каждого класса. Возвращается только если
return_distributions=True.
Примеры
>>> from sklearn.datasets import make_multilabel_classification >>> X, y = make_multilabel_classification(n_labels=3, random_state=42) >>> X.shape (100, 20) >>> y.shape (100, 5) >>> list(y[:3]) [array([1, 1, 0, 1, 0]), array([0, 1, 1, 1, 0]), array([0, 1, 0, 0, 0])]
Примеры в галерее
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.datasets.make_multilabel_classification.html