数据挖掘项目指南

时间:2014-02-18 08:37:54

标签: machine-learning data-mining cluster-analysis

我正在为我的课程开展一个数据挖掘项目,我想对我的想法有一个专家观点:

我拥有的数据是一个非常大的矩阵,其变量多于示例(10,000,000对50),因此存在一个过度拟合的问题。

我想要做的是通过将变量重新组合成“组”来理解这个数据集,因为我觉得这些变量之间应该存在关系(相关性)。为此,我定义了变量之间的“距离”(他们的Pearson Correlation)。

我想对变量应用聚类方法来创建这些变量组(正如我的教授所建议的那样)。

我的问题是这个数据集太大了,我知道任何聚类算法都需要一段时间才能执行。是否有一种可能更适合此问题的聚类方法?

1 个答案:

答案 0 :(得分:0)

您可以尝试应用PCA来减少功能的数量(如果我理解正确,您可以将其称为变量),然后应用任何黑盒聚类算法。

您可以使用PCA from sklearn来实现此目的。

示例代码段如下:

def decomposition_pca(train_data):
    dims_to_keep = #dimensions you want to retain (the # variables)
    """ Linear dimensionality reduction """
    pca = decomposition.PCA(n_components = dims_to_keep, whiten=True)
    train_pca = pca.fit_transform(train_data)
    return train_pca