关键词联想学习算法
Keyword association learning algorithm
为了模拟我的问题,我将使用约会网站作为示例(尽管这不是实际情况)。我的问题是我有一组关键字,用户可以输入他们喜欢的关键字。说 "Tall, dark hair, blue eyes" 等,我想将它们映射到符合该条件的其他用户。然而,不仅如此,我还需要能够从我返回的数据中学习,以便在不那么精确匹配的情况下做出更好的预测。
例如,如果正在寻找 'dark hair' 的人的其他用户喜欢 'black hair' 的用户,或者身高为 6'4 但不提及他们很高。我希望能够在这些相似的关键字之间建立关联,并且也能够建议这些关键字,以便最好 returns 用户想要什么,即使这不是他们所要求的。
我的问题是什么 algorithm/approach 最适合这个?我一直在研究以下领域:
- 决策树,但当没有关键字匹配时,它们似乎会崩溃。
- 朴素贝叶斯,它似乎对丢失的连接更能容忍一些,但需要一些关于连接的先验知识,而且由于关键字可以是任何东西,这似乎是一个障碍
- ANN,但这些似乎不太适合文本输入
- KNN,但我不确定如何处理可能无限的用户分类?
- 某种 A* 地图搜索,每次用户 1 喜欢用户 2,我在用户 1 的喜欢和用户 2 的特征之间建立地图连接,如果该连接已经存在,我就缩短它,然后找到最接近的 N用户。我只是不确定它的可扩展性如何。
欢迎任何意见,
谢谢!
这听起来像是 association rule learning 的一个相当经典的应用:基本上,如果寻找具有 'dark hair' 的合作伙伴的人喜欢很多 'black hair' 个帐户,那么你有一个关联规则他们俩。有算法可以检测到这一点。
至于你的建议,你试过ANN吗?人工神经网络根本不适用于文本输入,但对于大多数机器学习 + 文本任务,您可以将文本转换为数字数据(例如,参见词袋模型)。一旦你有了数字特征,它们就不会做得太差。
例如,您希望您的网络经过培训,能够根据个人资料设置 return 提供足够的建议,对吧?您可以为它提供个人资料设置,如果您有训练数据显示用户正在寻找 'dark hair' 的人喜欢 'black hair' 的用户,ANN 应该了解这种关系。
关联规则听起来很不错。
为了模拟我的问题,我将使用约会网站作为示例(尽管这不是实际情况)。我的问题是我有一组关键字,用户可以输入他们喜欢的关键字。说 "Tall, dark hair, blue eyes" 等,我想将它们映射到符合该条件的其他用户。然而,不仅如此,我还需要能够从我返回的数据中学习,以便在不那么精确匹配的情况下做出更好的预测。
例如,如果正在寻找 'dark hair' 的人的其他用户喜欢 'black hair' 的用户,或者身高为 6'4 但不提及他们很高。我希望能够在这些相似的关键字之间建立关联,并且也能够建议这些关键字,以便最好 returns 用户想要什么,即使这不是他们所要求的。
我的问题是什么 algorithm/approach 最适合这个?我一直在研究以下领域:
- 决策树,但当没有关键字匹配时,它们似乎会崩溃。
- 朴素贝叶斯,它似乎对丢失的连接更能容忍一些,但需要一些关于连接的先验知识,而且由于关键字可以是任何东西,这似乎是一个障碍
- ANN,但这些似乎不太适合文本输入
- KNN,但我不确定如何处理可能无限的用户分类?
- 某种 A* 地图搜索,每次用户 1 喜欢用户 2,我在用户 1 的喜欢和用户 2 的特征之间建立地图连接,如果该连接已经存在,我就缩短它,然后找到最接近的 N用户。我只是不确定它的可扩展性如何。
欢迎任何意见, 谢谢!
这听起来像是 association rule learning 的一个相当经典的应用:基本上,如果寻找具有 'dark hair' 的合作伙伴的人喜欢很多 'black hair' 个帐户,那么你有一个关联规则他们俩。有算法可以检测到这一点。
至于你的建议,你试过ANN吗?人工神经网络根本不适用于文本输入,但对于大多数机器学习 + 文本任务,您可以将文本转换为数字数据(例如,参见词袋模型)。一旦你有了数字特征,它们就不会做得太差。
例如,您希望您的网络经过培训,能够根据个人资料设置 return 提供足够的建议,对吧?您可以为它提供个人资料设置,如果您有训练数据显示用户正在寻找 'dark hair' 的人喜欢 'black hair' 的用户,ANN 应该了解这种关系。
关联规则听起来很不错。