关注公众号,一起学算法

作者:刘才权

编辑:黄俊嘉

基于word2vec的词语相似度计算


应用场景

假设你有一个商品的数据库,比如:

基于word2vec的词语相似度计算

现在通过用户的输入来检索商品的价格,最简单的方法就是通过字符串进行匹配,比如,
用户输入“椅子”,就用“椅子”作为关键字进行搜索,很容易找到椅子的价格就是200元/个。
但有时用户输入的是“凳子”,如果按照字符串匹配的方法,只能返回给用户,没有此商品。但实际上可以把“椅子”的结果返回给用户参考。这种泛化的能力,通过简单的字符串匹配是显然不能实现的。


词语相似度计算

在上面的例子中,“凳子”跟“椅子”的语意更相近,跟“香蕉”或“冰箱”的语意相对较远。在商品搜索的过程中,可以计算用户输入的关键字与数据库中商品名间的相似度,在商品数据库中找出相似度最大的商品,推荐给用户。这种相近的程度就是词语的相似度。在实际的工程开发中可以通过word2vec实现词语相似度的计算。


代码实现

基于word2vec的词语相似度计算基于word2vec的词语相似度计算


运行结果

基于word2vec的词语相似度计算


调试技巧

在开发调试的过程中,会出现错误,需要重新运行程序。如果每次修改后,都从头开始执行,肯定会消耗很多无用的时间。比如,预处理后的文本结果和word2vec的训练参数,这些中间结果可以保持下来,当遇到问题时,就可以从文件中读取结果,而不需要每次都从头开始。


源码下载地址

https://github.com/CaiquanLiu/MachineLearning


代码参考

《Python机器学习及实践:从零开始通往Kaggle竞赛之路》


查看更加详细的代码请点击下方的阅读原文


基于word2vec的词语相似度计算

▼点击阅读原文

相关文章:

  • 2021-10-17
  • 2021-07-09
  • 2021-05-28
  • 2022-12-23
  • 2021-12-02
  • 2021-12-13
  • 2021-09-26
猜你喜欢
  • 2022-12-23
  • 2021-09-25
  • 2022-01-24
  • 2021-08-07
  • 2021-10-17
  • 2021-08-09
相关资源
相似解决方案