首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我可以使用什么匹配算法?

我可以使用什么匹配算法?
EN

Stack Overflow用户
提问于 2020-12-31 22:09:20
回答 2查看 75关注 0票数 0

我需要一些帮助,因为我不知道可以对以下内容使用什么算法(我使用python):

  • 史蒂夫25岁了,他每天都买橙汁。
  • 玛丽亚23岁了,她喜欢买冰沙,史蒂夫&玛丽亚的口味也差不多。
  • 胡安16岁,他只喝汽水,胡安的口味和史蒂夫和玛丽亚不一样。

====================================================

我想使用一个匹配的算法,将检测用户谁有相同的饮料偏好和接近的年龄。为了继续这个例子,史蒂夫和玛丽亚将被匹配在一起,而不是胡安。我应该用哪一种?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-12-31 22:58:34

我同意@klutt,你的任务相当模糊。有两种方法出现在我的脑海中,但不知道更多关于你的问题的细节确实限制了我可以在我的回答中提供的细节来帮助你。我把这个问题解释成你在接受原始文本,并且可能想要处理更多具有非常相似的语义和句法结构的句子。

算法方法:假设你的单词选择在语义上是静态的(玛丽亚 23 .史提夫 25),我们可以解析每个句子并识别标记,如is相同的,并从本质上对文本执行词法分析。从现在开始,你可以继续思考如何进行匹配等等.但这很复杂..。

神经网络方法:--如果你以句子的形式接受原始文本,用自顶向下的算法解决这个问题是不直接的。你可以用神经网络的方法来训练一个模型来解决你的问题,但是同样的,你似乎要问的是相当复杂的,因为每个句子中都有多个与语义无关的“事实”。例如,你的第二句话指出玛丽亚23岁,但在这句话的末尾,史蒂夫和玛丽亚进行了比较。你的第一句话只说史蒂夫是25岁。即使你把原始文本分割成句子,你也必须有一个非常精细的神经网络结构和大量的训练数据才能远距离接近你的目标。

这两种解决方案都很复杂..。但是,如果您希望创建一个应用程序来收集此数据(通过表单或提示符)并将其放入结构化格式(如json或xml对象),以便将数据组织起来并存储在内存中(可能会将数据写入数据库或文件以便持久存储),那么这可能是一种很好的方法。

这可以作为一个很好的教训,如何思考数据以及。这是一回事,如果你有成千上万的句子,只是原始的数据,你需要组织定量的目的(经典的定性->定量问题)。如果要收集这些数据,这是另一回事。如果您要收集数据,有一个程序来收集和组织名称、年龄和饮料首选项(然后在特定的数据结构中组织这些数据),那么就可以讨论匹配算法。

我还将在这里补充说,如果您有结构化数据,协同过滤 (由Shridhar提到)是一个很好的起点。

票数 1
EN

Stack Overflow用户

发布于 2021-01-01 06:17:08

协同过滤最适合你的需要。

在新的、更狭义的意义上,协作过滤是一种通过收集许多用户的偏好或品味信息(协作)来对用户的兴趣进行自动预测(过滤)的方法。协作过滤方法的基本假设是,如果一个人A在某一问题上的意见与B人相同,则A更有可能在另一个问题上得到B的意见,而不是随机选择的人的意见。例如,针对电视口味的协作过滤推荐系统可以根据用户的喜好(喜欢或不喜欢)的.3部分列表预测用户应该喜欢的电视节目,注意到这些预测是特定于用户的,但使用从许多用户收集到的信息。这与简单的方法不同,即为每一项感兴趣的项目提供平均(非特定的)分数,例如根据其得票数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65525899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档