ana*_*ana 6 kernel cosine-similarity tfidfvectorizer
使用 linear_kernel 或cosine_similarityfor 时TfIdfVectorizer,出现错误“内核已死亡,正在重新启动”。
我正在为 TfID 方法 Vectorizer 和fit_transform一些文本数据运行 scikit 学习函数,如下例所示,但是当我想计算距离矩阵时,我收到错误"Kernel dead, restarting "。
无论我使用的是cosine_similarity还是linear_kernel函数:
tf = TfidfVectorizer(analyzer='word' stop_words='english')
tfidf_matrix = tf.fit_transform(products['ProductDescription'])
--cosine_sim = linear_kernel(tfidf_matrix, tfidf_matrix)
--cosine_sim = cosine_similarity(tfidf_matrix, tfidf_matrix)
Run Code Online (Sandbox Code Playgroud)
也许问题是我的数据的大小?
我的 tiidf 矩阵是 (178350,143529),它应该生成一个 (178350,178350) cosine_sim 矩阵。
小智 0
据我了解,您想要计算 N x N 相似度表。
在这种情况下(csr矩阵相当大),很难立即计算,我的方法是cosine_similarity(tfidf_matrix[index], tfidf_matrix[:]) * N times。
实际上我是用 pyspark 执行的
def calculate_one_to_all_similarity(index):
...
cosine_similarity(tfidf_matrix[index], tfidf_matrix[:]
rdd.map(lambda r: calculate_one_to_all_similarity(r2index[r]))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2530 次 |
| 最近记录: |