python - 在 spacy 的帮助下合并几乎相似的行
问题描述
如果它们几乎相似,我想合并一些行。
可以使用 spaCy 检查相似性。
东风:
string
yellow color
yellow color looks like
yellow color bright
red color okay
red color blood
输出:
string
yellow color looks like bright
red color okay blood
解决方案:
蛮力方法是 - 对于字符串中的每个项目检查与其他 n-1 项目的相似性,如果大于某个阈值则合并。
还有其他方法吗?
因为我接触的人不多,不知道他们是怎么做的,
我想到的一个想法是——我们可以传递一些函数来合并吗?如果是真的,那么合并,否则不要。
欢迎任何其他流行的方法。
解决方案
我想你还没有想到有可能,例如:
yellow color bright
yellow color I like
yellow color looks like
在这些情况下,您需要决定要做什么:只随机合并其中的 2 个?三个都?
在考虑了这一点之后,您可能会发现您真正想要做的是对词嵌入进行聚类,即将它们分成相似元素的非重叠组(一个组的大小可以等于 1)。
幸运的是,有很多现有的解决方案,每一个都有其优点和缺点。例如,DBSCAN在 O(n log n) 中运行。
推荐阅读
- doxygen - 如何计算 doxygen 中的待办事项列表?
- node.js - Mongoose:访问模式中的自定义存储函数
- ios - iOS 文本意外显示两种不同的日文字体
- python - 在python中为数据框的回归分析创建一个循环
- json - powershell 脚本,用于获取在从 odata 查询 uri 读取 json 文件的应用程序中运行的失败作业的状态
- vba - 如果特定单元格公式更改其值,则清除数据验证单元格内容的宏
- javascript - Jquery UI datepicker 将“未知”选项值添加到输入
- javascript - 使用 setTimeout 更改对象状态的 getDerivedStateFromProps 失败
- java - 在建议没有被执行之前
- django - 自定义权限的定义在哪里?