Насколько я знаю, в sklearn api нет функции, которая генерирует выбросы.
Но make_blob
также принимает параметры более детально, чтобы вы могли указать количество выборок для каждого кластера ". центры и стандартное отклонение "для каждой функции. (make_blob
использует распределение Гаусса для генерации наборов данных.)
Решение состоит в том, чтобы генерировать данные в два этапа, один раз для фактических данных и один раз для аномалий с использованием разных центров и стандартного отклонения.
X, y = make_blobs(n_samples=sample_list, centers=center_list, cluster_std=diviation_list,n_features=2,random_state=0)
В приведенном выше коде укажите sample_list
в качестве массива фигуры (1, # NumberOfClusters), center_list
& diviation_list
в качестве массива фигуры (# NumberofClusters, # NumberOfFeatures).