VSM(向量空间模型)构建流程

VSM是一个比较经典的机器学习模型,有很多比较好的文章已经对这个模型进行了详细的介绍,在此就不在赘述相关的背景及其原理,个人将一些写的比较好的文章整理放在了参考资料:

构建流程:

  1. 数据预处理:将准备用于输入的文档进行去噪、分词、编码格式转换、以及去除停用词等等。
  2. 计算每个文档中每个term的TF值,然后使用公式进行归一化处理:
    这里写图片描述

  3. 再分别计算每个文档中每个term的IDF值:

    这里写图片描述

  4. 最后将每个term的tf值和idf值合并为tf-idf值,为了保证权值不偏向长文档,建议在tfidf值计算后再乘上文档长度的倒数进行归一化处理:
    这里写图片描述

  5. 将每个文档按照权值排序后构建向量,并计算两两向量之间的余弦值(也就是文档相相似度)

    最后,个人编写的样例工程:

样例工程代码:

VSM样例工程

参考资料

https://blog.csdn.net/quicmous/article/details/71263844

https://blog.csdn.net/flying_all/article/details/77152409

http://www.ruanyifeng.com/blog/2013/03/tf-idf.html

http://www.ruanyifeng.com/blog/2013/03/cosine_similarity.html

https://blog.csdn.net/aspirinvagrant/article/details/41250887

http://www.cnblogs.com/biyeymyhjob/archive/2012/07/17/2595249.html

http://www.cnblogs.com/haippy/archive/2011/10/04/2199144.html

你可能感兴趣的:(代码)