将大型数据集映射到带评分的类别

正在尝试找出解决这个问题的更好方法。

我有一份包含几十万种食品的列表。我拥有的数据包括:描述(基本是物品名称)、食品类别、成分(食品项目表)。

我试图将每个食品项目与另一个数据集中存在的食品类别进行匹配。这些食品类别划分得略有不同,因此与食品项目表中的食品类别没有一对一的对应关系。这个数据集的字段包括:主类别、子类别和产品示例。(食品类别表)

在食品项目表中,食品类别可能是不正确的或过于概括的。基本上,食品项目表中的食品类别是通用的,而食品类别表中的食品类别则更为具体。

我希望创建一个算法,该算法可以查看食品项目表中的特定食品项目,并将其与食品类别表中的“推荐”条目进行匹配。可能提供前五个选择,并为每个选择提供一个分数(或匹配百分比)。

如果可能的话,我希望这个算法能够根据手动更正/干预、过去的映射等,随着时间的推移进行学习。不确定这里使用“AI”是否是正确的术语。

这些数据存储在SQL Server 2016中。周围的应用程序是用ASP.Net(C#)编写的。

再次寻找解决这个问题的更好方法。


回答:

我猜你已经有一些正确分类的样本数据,可以用作算法的指导。

假设你已经有一些已经分类的食品:

名称          类别    成分
苹果         水果    苹果
奶酪蛋糕     甜点    苹果, 黄油, 面粉, 糖, 奶酪
奶酪汉堡     垃圾食品 面包, 番茄, 奶酪, 肉

算法应该计算每个成分在哪个类别中被分类,并给出一个相对百分比。比如:

成分        类别      百分比
苹果        水果      56
苹果        甜点      34
苹果        沙拉       6
苹果        饮料       4
奶酪        三明治    70
奶酪        垃圾食品  21
奶酪        甜点       7
奶酪        沙拉       2

然后,当你有一个未分类的食品时,你只需将所有成分的百分比相加,并按类别排序。

你应该考虑添加一些权重,使得一个食品的所有成分的总分始终为1。例如,如果你有一个包含4种成分的食品,每个成分的得分仅为0.25。这将降低复杂食谱中成分的重要性。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

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