稀疏矩阵:索引超出范围

时间:2019-11-04 03:00:56

标签: python scipy nlp sparse-matrix

我想对一个大型语料库运行textrank(仅我的开发环境正在使用17K句子)

因此,我使用了scipy dok_matrix。但是,当将第一个值分配给稀疏矩阵(即similarity_matrix[1][0])时,尽管在pycharm调试中看到我的dok_matrix的大小为17K x 17k,但仍收到以下错误。

IndexError: row index (1) out of range

我做错了什么?

 def _score_generator(self, sentences, sentence_vectors):
    sentence_count = len(sentences)
    similarity_matrix = dok_matrix((sentence_count, sentence_count), dtype=np.float32)
    for i in range(len(sentences)):
        for j in range(len(sentences)):
            if i != j:
                similarity_matrix[i][j] = cosine_similarity(sentence_vectors[i].reshape(1, 100), sentence_vectors[j].reshape(1, 100))[0, 0]


    nx_graph = nx.from_scipy_sparse_matrix(similarity_matrix)
    scores = nx.pagerank(nx_graph)
    return scores

1 个答案:

答案 0 :(得分:0)

简单: similarity_matrix[i,j] 如果其他人最终做出与我相同的认知失误,我会把它留在这里