make_multilabel_classification#

sklearn.datasets.make_multilabel_classification(n_samples=100, n_features=20, *, n_classes=5, n_labels=2, длина=50, allow_unlabeled=True, разреженный=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.

длинаint, по умолчанию=50

Сумма признаков (количество слов, если документы) извлекается из распределения Пуассона с этим ожидаемым значением.

allow_unlabeledbool, по умолчанию=True

Если True, некоторые экземпляры могут не принадлежать ни к одному классу.

разреженныйbool, по умолчанию=False

Если True, возвращает разреженную матрицу признаков.

Добавлено в версии 0.17: параметр, чтобы разрешить разреженный вывод.

return_indicator{'dense', 'sparse'} или False, по умолчанию='dense'

Если 'dense' возвращает Y в формате плотного бинарного индикатора. Если 'sparse' возвращает Y в разреженном двоичном индикаторном формате. False возвращает список списков меток.

return_distributionsbool, по умолчанию=False

Если True, возвращает априорную вероятность класса и условные вероятности признаков при заданных классах, из которых были получены данные.

random_stateint, экземпляр RandomState или None, по умолчанию=None

Определяет генерацию случайных чисел для создания набора данных. Передайте целое число для воспроизводимого результата при нескольких вызовах функции. См. Глоссарий.

Возвращает:
Xndarray формы (n_samples, n_features)

Сгенерированные образцы.

Y{ndarray, sparse matrix} формы (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])]