对于带有用户反馈的产品分类 ML 模型,我应该采取什么方法来提高结果准确性?

数据挖掘 机器学习 nlp 强化学习 真实机器学习用例
2022-03-06 23:11:27

我正在尝试在具有以下结构的数据集上实现产品分类 ML 模型: 数据示例

我希望我的模型能够根据产品描述和名称预测产品应该属于的正确类别。

但是,我将与允许一些用户输入的 GUI 一起实现这一点。

例如,带有描述的新产品名称被添加到表中: 反馈培训之前的新条目

用户将看到以下选项(完全由这些选项组成)并且必须选择一个:

厨房家具 - 65%

家居装饰品 - 29%

厨房用具 - 6%

用户将点击“家居装饰品”。这会反馈给模型。下次模型遇到类似的情况,比如: 反馈训练后的新入口

用户将看到更准确的预测,这一次他们有相同的选项可供选择,但预测的准确度不同:

家居装饰品 - 70%

厨房家具 - 20%

厨房用具 - 10%

因此,该模型从该反馈中学习并变得更加准确。我已经对此进行了一些研究,并指出了强化学习但是,我找不到任何太相似的东西,而且我对 ML 也不是很熟练,所以请在使用哪些 Python 库、查看哪些 ML 模型甚至可能是以前的实现方面为我指明正确的方向。

谢谢!

1个回答

作为第一个近似值,这可以作为一个有监督的学习分类器,在其中,根据输入文本(名称和描述),您可以构建一系列特征来构建您的分类模型。

一种选择是:

  • 标记(拆分为单词)您的文本(名称和描述)
  • 过滤一些无用的(大概)单词,例如前置词和其他所谓的停用词(查看诸如 nltk 之类的库以进行语言处理
  • 根据您迄今为止拥有的所有类别,从您的词袋中选择最常用的词您可以通过查看整个单词数据集的频率条图来发现这一点
  • 找出每个名称描述样本中每个单词的出现频率,其中数据集的每一行可能类似于:
厨房 浴室 贮存 烹饪 微波 烤箱 ... CATEGORY_label
0 0 0 0 2 1 ... 1
1 0 1 0 0 0 ... 3
...

其中标签 1 是您的厨房用具类别,依此类推...

这将最终形成一个多类分类器,因为您正在尝试在几个可能的类别中进行分类。

新条目越多,每个类别的关键词就越多。

这是您可以开始使用的最简单的方法(基于单词计数),因为对于自然语言处理,您可以继续使用其他方法:TF-IDF而不是仅仅计数单词,以及其他更复杂的方法,例如词嵌入