如何使用监督机器学习方法处理不同维度的输入?

我目前正在处理训练和测试数据集(一组数组),这些数组的长度不一,如下所示:

a: {true, [1,3, 4, 5, 5, 8 ,10 ,10]}b: {true, [1,3, 25, 18 ,1 ,10]}c: {false, [1, 8 ,10]}d: {false, [1,3  ,10 ,10]}

我是机器学习领域的新手,目前卡在了如何将这些长度不一的输入数组转换为等长数组,以便更容易利用现有的机器学习算法上。

目前我想到可以使用最长公共子序列(LCS)来找出不同长度输入数组之间的相似性。

但是在获得LCS信息后,我该如何将输入数组转换为等长数组呢?

我走的方向对吗?谁能给我一些帮助?


回答:

对于这种任务,没有通用的解决方案。一切都取决于你的数据实际代表什么。有数十种特征提取技术可以很好地处理不同长度的数据,但具体选择哪一种取决于具体任务。没有,也不可能有一个通用的方法将可变长度表示转换为固定长度表示。LCS看起来是一个非常奇怪的方法,应该会产生非常错误的结果(至少在一般情况下是这样,也许在这个特定问题中它有意义)。如果LCS确实有意义,那么它将返回新表示的一个维度。它只是你新向量的一个特征。你需要更多特征才能应用任何合理的机器学习技术。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

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