怎么样判断两个商品相似或者相同

既然有了物品的 ID 了,就可以用这些 ID 作为物品的主键存在数据库里面,然后其他信息作为对应的属性。其实用物品描述信息就可以看两个东西是否相同了。说白了,其实你要做的是比较两段文本的相似度。把每个物品的描述信息当做一篇文章,然后物品 ID 就当做是文章的标题吧。这些有着不同标题的文章的内容大同小异,现在需要做的是处理这些文章,看这些文章的相似度。如果相似度达到了你预先规定的一个阈值,那么就判断这两个物品相似,你可以在数据库里面加一个外键,连接这两个电商网站上得两个 ID。判断文章相似度的具体过程如下:由于计算机算法是不懂中文和英文的,所以要把文字转化为算法可以处理的数字。首先,要对这些文本描述做一些处理,把描述中的中文、英文和数字保留,其他的符号都要去掉(关于数字是否保留,还需要根据你的要求具体决定)。分词,由于中文没有天然的断字,所以需要通过算法把中文的词分开。把物品描述中的常用的没有意义的词去掉,比如「的,地,得」和英文中 "a, the, of" 之类的词,这类词统称为「停用词」,中英文都有对应的列表,找来直接用就好了。建立字典。给每个中文词和英文词分配一个 ID,这样就建立了一个数字与单词之间的对应关系,就可以用数字来表示单词了。将物品描述中的单词都替换成对应的数字。构建特征,由于物品描述都不是很长,所以对每个单词计数,然后利用字典中词的顺序,将每个物品描述都转化为一个向量。如果字典中有1000个词,那么每个物品描述都是一个1000维的向量。对于特定的某一篇物品描述,包含了哪个单词,就在对应的位置上标记这个单词出现的次数,没有出现的就标0。这样,每个物品描述都被表示成一个1000维的向量。计算向量间的余弦距离。如果高于设定的阈值,那么就认为这两个物品描述是一致的。 【怎么样判断两个商品相似或者相同】 上述所说的步骤都可以用 Python 实现,当然其他语言也可以,只是 Python 比较适合处理文本,而且上面所有的步骤早就有人写好了,在网上搜一下就能找到代码,可以直接拿来用。

■网友
根据物品的描述信息(标题中的品牌、型号),涉及分词算法和正则表达式。如果两个电商网站都是大型电商的话,热门商品的匹配率估计还是较高的。


    推荐阅读