擅长:python、mysql、java
<p>在上面由MaxU发布的友好帮助和解决方案下,这里我展示了完成我试图实现的任务的完整代码。除了<code>MemoryError</code>当我尝试一些“老掉牙”的解决方法时,它还避免了余弦相似性计算中出现的奇怪的nan。在</p>
<p>请注意,下面的代码是一个部分代码片段,从这个意义上说,具有<code>186,134 x 5</code>的大数据帧<code>df_all_export</code>已经在完整代码中构建。在</p>
<p>我希望这能帮助那些试图使用tf-idf向量计算搜索查询和匹配文档之间的余弦相似度的人。对于这样一个常见的“问题”,我很难找到一个明确的解决方案来实现SKLearn和Pandas。在</p>
<pre><code>import pandas as pd
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import paired_cosine_distances as pcd
clf = TfidfVectorizer()
clf.fit(df_all_export['search_term'] + " " + df_all_export['product_title'])
A = clf.transform(df_all_export['search_term'])
B = clf.transform(df_all_export['product_title'])
cosine = 1 - pcd(A, B)
df_all_export['tfidf_cosine'] = cosine
</code></pre>