algorithm - 多维数据分类

标签 algorithm machine-learning classification training-data supervised-learning

我想对一些多维数据进行分类:

输入数据如下:

Data1: [[a1,b1,f1], [a2,b2,f2], ... [an,bn,fn]] where: fn = F(an,bn) --> ClassA
Data2: [[c1,d1,g1], [c2,d2,g2], ... [cn,dn,gn]] where: gn = G(cn,dn) --> ClassB
...

因此,给定 Datax,如下所示,我们想将其分类为我们拥有的有限类之一:

Datax: [[x1,y1,z1], [x2,y2,z2], ... [xn,yn,zn]] where: zn = Z(xn,yn) --> which class?

我可能会为每条记录展平数组并训练我的分类器:

Data1: [a1,b1,f1,a2,b2,f2,...,an,bn,fn]

但我认为因为第三个值本身是前两个值的函数(例如 fn = F(an,bn)),所以我应该在训练中考虑这种关系而不是去追求平面阵列。

这有什么区别吗?或者解决这个问题的最佳方法是什么?

最佳答案

如果每个元组的第三个数据是相同确定性函数的乘积(每行可以不同,但​​行的每个三元组必须相同) 那么您可以简单地删除 zn,因为它不会带来任何新信息。

例如:z1 = 3x1 + 2y1 ; z2 = 3x1 + 2y1 ; [...]; zn = 3xn + 2yn

如果不是这样,那么你应该离开 z1。

说到这里,我认为您可以展平数组,因为大多数模型会自动理解这些类型的依赖关系。

关于algorithm - 多维数据分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43389891/

相关文章:

python - 以最小差异大于 Python 列表中的值对大多数数字进行采样的最快方法

algorithm - 判断线性时间是否存在众数

python Pandas : How to replace values in a Dataframe based on another array in conditional base

machine-learning - 使用 Huggingface 的蒸馏器模型生成文本

python - scikit-learn 中 predict 与 predict_proba 的区别

java - 二进制 SVM 中的错误分类

algorithm - 将数组拆分为具有相似权重的子数组

machine-learning - 根据人口统计数据对用户进行分类

python-2.7 - 如何使用pycharm编辑器加载预训练的graph.pb和重新训练的label.text

c - 删除长度为 N 的字符串中第 k 个字符的最佳算法是什么?