基于字符串属性的用户相似性查找

我是一名软件工程专业的学生,对数据挖掘领域还不太熟悉,我想实现一个基于用户兴趣和技能(字符串集合)的相似用户查找解决方案。

我想我不能使用基于编辑距离(如Levenshtein距离等)的K最近邻算法来实现这个功能。

如果有人能在这方面提供帮助,我将不胜感激。


回答:

你首先要做的是将你的数据转换为某种合理的表示形式,这样你就能有一个明确的用户之间距离的概念。

我建议将所有字符串转换为某种标准形式,然后将所有n个不同的技能和兴趣字符串按顺序排列到一个字典D中。现在,对于每个用户u,构造一个包含n个分量的向量v(u),如果字典条目i中的属性存在,则第i个分量设为1,否则设为0。本质上,我们用一个特征向量来表示每个用户的兴趣/技能。

现在你可以使用Jaccard指数(这只是一个例子,你需要自己找出最适合你的方法)来比较用户。一旦有了距离的概念,你就可以开始尝试各种方法了。以下是一些想到的方法:

  • 如果用户数量足够少,可以应用层次聚类;
  • 应用关联规则学习(具体细节留给你自己思考);
  • 等等。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注