我不知道如何组织模型。
我想尝试创建一些算法来帮助分析产品名称(描述)并获取产品属性(类别和一些参数)。
我有树状结构的数据:
Category (name, null parent)
|Category (name, parent)
|Product (name+description)
|Param(key-value)
|Param(key-value)
|Param(key-value)
|...
我使用的模型将分类为产品的最高类别,然后使用另一种模型,该模型针对属于已分类的最高类别的产品进行了训练(因此我可以将第二级类别分类)。
下一步,我对param key
分类的每个param value
使用自己的模型
总的来说,我需要为tree structure
的每一片叶子建立模型以便进行下一步分类吗?
我的想法正确吗?
答案 0 :(得分:1)
那是进行的一种方式。但是,我在方法中存在2个问题:
首先,您将训练数据细分,而最终的分类器可能没有足够的数据来训练。
第二,我猜想参数键值可以在不同的类别和产品之间重复。因此,由于训练数据分段,您正在针对不同产品和类别针对相同事物训练不同的分类器可能不是一个好主意。
有一个用于类别的分类器和一个用于产品的分类器。但是为每个属性设置分类器可能太多了。我建议您查看多类分类。这些算法可以为每个输入处理多个类。因此,您可以使用它们为所有参数键值建模
http://scikit-learn.org/stable/modules/multiclass.html
如果您真的有很多叶子,那么可以尝试极端多标签
“极端多标签学习文本分类”