避免在SciPy稀疏矩阵表示中自动删除行/列

时间:2018-12-07 14:45:40

标签: python machine-learning scipy sparse-matrix recommender-systems

基本上,我正在尝试在Python中进行 k折叠交叉验证(即使我当前正在开发的示例只是验证)。我有一个 urm_all 稀疏矩阵(稀疏度超过99%),我从中随机采样。训练百分比是:train_perc。

    num_interactions = urm_all.nnz
    urm_all = urm_all.tocoo()

    train_mask = np.random.choice([True, False], num_interactions, [train_perc, 1-train_perc])

    urm_train = sps.coo_matrix((urm_all.data[train_mask], (urm_all.row[train_mask], urm_all.col[train_mask])))

当我构建新矩阵 urm_train 时会出现问题,因为有时会出现空行/列,它们会被表示形式自动删除,因此导致< em>形状不匹配错误。 有什么方法可以避免这种自动删除

0 个答案:

没有答案