我在哪里可以找到具有大量特征(100000)但样本较少(100-1000)的数据集?

数据挖掘 分类 大数据 数据集
2021-10-09 02:24:53

我正在为具有高特征样本比的数据集研究降维算法。我需要具有大约 100000 个或更多特征的数据集和 100-1000 个带有类标签的样本来评估我的算法的性能。

此外,这些特征应该是真实的,而不是像 Dorothea 数据集中的二进制。

3个回答

只需获取具有大量特征的数据集并忽略所需的数据即可获得所需的比率。例如,使用 imagenet,但每类随机选择 100 个样本。

如果可以选择合成数据集,您可以在 python 中使用 sklearn 创建它:

sklearn.datasets.make_classification

生成一个随机的 n 类分类问题。这最初创建关于 2 * class_sep 边超立方体顶点的正态分布点簇(std=1),并为每个类分配相等数量的簇。它引入了这些特征之间的相互依赖关系,并为数据添加了各种类型的进一步噪声。

例子:

from sklearn.datasets import make_classification
 
n_classes = 5
n_samples = 100*n_classes
n_informative = 100
 
X, y = make_classification(n_samples=n_samples, 
                          n_features=n_features, 
                          n_informative=n_informative,
                          n_classes=n_classes)

更多的:

sklearn.datasets.make_classification

Scikit-learn 有简单的数据集,您可以在其中指定特征的数量。

from sklearn.datasets.samples_generator import make_blobs
X, y = make_blobs(n_samples=100, centers=2, n_features=100000, random_state=42)

有关此数据集的统计属性的更多信息,请查看文档