algorithm - 是否有针对数据的一对多分类算法(1 :n) relationship?

标签 algorithm machine-learning data-mining classification database-relations

数据挖掘领域是否有关于对具有一对多关系的数据进行分类的研究?

例如,对于这样的问题,假设我试图根据学生的类(class)成绩和个人信息来预测哪些学生会从大学辍学。显然,学生的个人信息与他们在类里面取得的成绩之间存在一对多的关系。

明显的方法包括:

  1. 聚合 - 可以通过某种方式将多个记录聚合在一起,从而将问题简化为基本分类问题。在学生分类的情况下,他们的平均成绩可以与他们的个人数据相结合。虽然此解决方案很简单,但通常会丢失关键信息。例如,如果大多数学习有机化学但成绩低于 C- 的学生最终退学,即使他们的平均成绩高于 B+ 也会怎样。

  2. 投票 - 创建多个分类器(通常是弱分类器)并让它们投票以确定相关数据的总体类别。这就像构建了两个分类器,一个用于学生的类(class)数据,一个用于他们的个人数据。每个类(class)记录都会被传递给类(class)分类器,分类器会根据成绩和类(class)名称,单独使用该类(class)记录来预测学生是否会退学。个人数据记录将使用个人数据分类器进行分类。然后将所有类(class)记录预测连同个人信息记录预测一起投票。这种投票可以通过多种不同的方式进行,但最有可能会考虑分类器的准确性以及分类器对投票的确定性。显然,该方案允许比聚合更复杂的分类模式,但涉及很多额外的复杂性。此外,如果投票表现不佳,准确性很容易受到影响。

所以我正在寻找其他可能的解决方案来对具有一对多关系的数据进行分类。

最佳答案

为什么不将每个等级视为同一模型的一个单独特征?

student['age'] = 23
student['gender'] = 'male'
 ... 
student['grade_in_organic_chemistry'] = 'B+'
student['grade_in_classical_physics'] = 'A-'

我想我不明白为什么当成绩只是不同的特征时你会想要“聚合”或连接多个分类器?

(请原谅上面蹩脚的伪代码,但只是想证明我的观点)

关于algorithm - 是否有针对数据的一对多分类算法(1 :n) relationship?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4764298/

相关文章:

python - python中的最小子数组差异

algorithm - 以价格和距离为约束的具有多条路线的节点之间的优化

artificial-intelligence - 请帮助我选择正确的分类器

algorithm - 找到对列表进行排序的替换

python - 如何处理分类器中不平衡的类?

matlab - 自由能强化学习实现

python - 无法安装 fancyimpute 以在 Jupyter 中使用

python - 如何在python中的sklearn中获取GridSearchCV中的选定特征

通过调整和交叉验证进行随机森林优化

c++ - 复制指针数组并跳过某些索引