用法:
cuml.dask.datasets.classification.make_classification(n_samples=100, n_features=20, n_informative=2, n_redundant=2, n_repeated=0, n_classes=2, n_clusters_per_class=2, weights=None, flip_y=0.01, class_sep=1.0, hypercube=True, shift=0.0, scale=1.0, shuffle=True, random_state=None, order='F', dtype='float32', n_parts=None, client=None)
生成一個隨機的n-class 分類問題。
這最初會創建正態分布 (std=1) 的點簇,該點簇圍繞邊長為
2 * class_sep
的n_informative
維超立方體的頂點,並為每個類分配相等數量的簇。它引入了這些特征之間的相互依賴關係,並為數據添加了各種類型的進一步噪聲。不打亂,
X
按以下順序水平堆疊特征:主要的n_informative
特征,然後是信息特征的n_redundant
線性組合,然後是n_repeated
重複,隨機抽取信息和冗餘特征的替換.其餘特征充滿隨機噪聲。因此,無需改組,所有有用的函數都包含在X[:, :n_informative + n_redundant + n_repeated]
列中。- n_samples:int 可選(默認=100)
樣本數。
- n_features:int 可選(默認=20)
特征總數。這些包括
n_informative
信息特征、n_redundant
冗餘特征、n_repeated
重複特征和隨機抽取的n_features-n_informative-n_redundant-n_repeated
無用特征。- n_informative:int 可選(默認=2)
信息特征的數量。每個類由多個高斯簇組成,每個高斯簇位於維度為
n_informative
的子空間中超立方體的頂點周圍。對於每個集群,信息特征是獨立於 N(0, 1) 繪製的,然後在每個集群內隨機線性組合以增加協方差。然後將簇放置在超立方體的頂點上。- n_redundant:int 可選(默認=2)
冗餘特征的數量。這些特征是作為信息特征的隨機線性組合生成的。
- n_repeated:int 可選(默認=0)
從信息和冗餘特征中隨機抽取的重複特征的數量。
- n_classes:int 可選(默認=2)
分類問題的類(或標簽)數。
- n_clusters_per_class:int 可選(默認=2)
每個類的簇數。
- weights:array-like 形狀
(n_classes,)
或(n_classes - 1,)
,(默認=無) 分配給每個類別的樣本比例。如果沒有,那麽類是平衡的。請注意,如果
len(weights) == n_classes - 1
,則會自動推斷最後一個類的權重。如果weights
的總和超過 1,則可能返回超過n_samples
的樣本。- flip_y:浮點數,可選(默認=0.01)
隨機分配類別的樣本的比例。較大的值會在標簽中引入噪聲並使分類任務更加困難。
- class_sep:浮點數,可選(默認=1.0)
乘以超立方體大小的因子。較大的值會分散集群/類並使分類任務更容易。
- hypercube:布爾值,可選(默認 = True)
如果為 True,則將簇放在超立方體的頂點上。如果為 False,則將簇放在隨機多麵體的頂點上。
- shift:浮點數,形狀數組 [n_features] 或無,可選(默認 = 0.0)
按指定值移動特征。如果沒有,則特征將移動 [-class_sep, class_sep] 中繪製的隨機值。
- scale:浮點數,形狀數組 [n_features] 或無,可選(默認 = 1.0)
將特征乘以指定的值。如果為 None,則按 [1, 100] 中繪製的隨機值對特征進行縮放。請注意,縮放發生在移位之後。
- shuffle:布爾值,可選(默認 = True)
Shuffle[洗牌]樣本和特征。
- random_state:int RandomState 實例或無(默認)
確定數據集創建的隨機數生成。傳遞 int 以獲得跨多個函數調用的可重現輸出。請參閱詞匯表。
- order: str, optional (default=’F’):
生成樣本的順序
- dtype:str,可選(默認='float32')
生成樣本的 Dtype
- n_parts:int(默認 = 無)
要生成的分區數(這可以大於工作人員的數量)
- X:dask.array 支持 CuPy 形狀數組 [n_samples, n_features]
生成的樣本。
- y:dask.array 支持 CuPy 形狀數組 [n_samples]
每個樣本的類別成員的整數標簽。
參數:
返回:
注意:
我們如何從單 GPU 版本擴展 dask MNMG 版本:
我們生成形狀為
(n_centroids, n_informative)
的質心我們生成形狀
(n_centroids, n_informative, n_informative)
的信息協方差我們生成形狀
(n_informative, n_redundant)
的冗餘協方差我們為重複特征生成索引我們將上述數組的期貨的引用傳遞給單個 GPU
cuml.datasets.classification.make_classification
,以便每個部分(和工作人員)都可以訪問正確的值以從相同的生成數據協方差
例子:
from dask.distributed import Client from dask_cuda import LocalCUDACluster from cuml.dask.datasets.classification import make_classification cluster = LocalCUDACluster() client = Client(cluster) X, y = make_classification(n_samples=10, n_features=4, n_informative=2, n_classes=2) print("X:") print(X.compute()) print("y:") print(y.compute())
輸出:
X: [[-1.6990056 -0.8241044 -0.06997631 0.45107925] [-1.8105277 1.7829906 0.492909 0.05390119] [-0.18290454 -0.6155432 0.6667889 -1.0053712 ] [-2.7530136 -0.888528 -0.5023055 1.3983376 ] [-0.9788184 -0.89851004 0.10802134 -0.10021686] [-0.76883423 -1.0689086 0.01249526 -0.1404741 ] [-1.5676656 -0.83082974 -0.03072987 0.34499463] [-0.9381793 -1.0971068 -0.07465998 0.02618019] [-1.3021476 -0.87076336 0.02249984 0.15187258] [ 1.1820307 1.7524253 1.5087451 -2.4626074 ]] y: [0 1 0 0 0 0 0 0 0 1]
相關用法
- Python cuml.dask.decomposition.PCA用法及代碼示例
- Python cuml.dask.decomposition.TruncatedSVD用法及代碼示例
- Python cuml.dask.feature_extraction.text.TfidfTransformer用法及代碼示例
- Python cuml.dask.manifold.UMAP用法及代碼示例
- Python cuml.dask.naive_bayes.MultinomialNB用法及代碼示例
- Python cuml.dask.preprocessing.LabelBinarizer用法及代碼示例
- Python cuml.datasets.make_blobs用法及代碼示例
- Python cuml.datasets.make_classification用法及代碼示例
- Python cuml.datasets.make_arima用法及代碼示例
- Python cuml.datasets.make_regression用法及代碼示例
- Python cuml.metrics.pairwise_distances.pairwise_distances用法及代碼示例
- Python cuml.neighbors.KNeighborsClassifier用法及代碼示例
- Python cuml.ensemble.RandomForestRegressor用法及代碼示例
- Python cuml.svm.SVC用法及代碼示例
- Python cuml.svm.SVR用法及代碼示例
- Python cuml.Lasso用法及代碼示例
- Python cuml.tsa.ARIMA.predict用法及代碼示例
- Python cuml.multiclass.OneVsRestClassifier用法及代碼示例
- Python cuml.preprocessing.LabelBinarizer用法及代碼示例
- Python cuml.random_projection.GaussianRandomProjection用法及代碼示例
注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cuml.dask.datasets.classification.make_classification。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。