背景
Web应用程序变得越来越智能。 从网站上使用服务的日子已经一去不复返了,用户不得不填写一个巨大的表格。 假设您有一个适合书迷的网站。 在Web 2.0之前,此类网站曾经以诸如年龄,阅读书籍,喜欢的书籍类型,语言偏好,作者偏好等形式向用户提出各种问题。如今,如今,一种常见的做法是要求用户在自己(个人资料)上写一个段落。 在此注释中,用户表达了一些细节,但是挑战在于,如何从这种自由格式的文本中提取有用的信息,以及如何找到兴趣相似的用户?
这种用例已经变得如此普遍,以至于每个Java开发人员都应该了解一些有关从文本检索信息的技巧。 在本文中,我将引导您完成一种简单而有效的方法。
从文本中提取信息的过程
- 过滤单词 :逐字阅读文本内容并删除不需要的单词。 作为此过滤状态的一部分,请删除所有常用的英语单词。 人们还可以应用审查规则,并删除露骨的色情字词或仇恨言论等。
- 执行词干: “搜索”或“搜索”或“搜索”之类的词都表示“搜索”。 将单词还原为词根的过程称为词干。
- 计算相似度 :经过前两个步骤,我们现在有了一组关键字,它们真实地表示原始文本(在此示例中为用户个人资料)。 我们可以将这些关键字视为一组唯一的单词。 要计算两个用户资料之间的相似度,最好用一个数字来表示相似度,该