我关心以下类型数据的监督分类问题。数据包括行(其中不是很大——这不是大数据问题)和列(特征),每一行都有一个我感兴趣的标签。每一行属于一个特定的块,每个块由 1-50 行组成。块的大小取决于块的持续时间(因此每个块中的行是相关的,但可以忽略不同块之间的相关性)。
目的是学习允许对新行或新块进行分类的数据的分类算法。
现在有两件重要的事情:每个块中的标签是恒定的,并且有一些特征可以识别块。
我的问题是:在这种特定类型的数据上学习模型的最佳方法可能是什么?
为了进一步说明这个问题,让我报告一下我在使用随机森林处理数据集时发现的一些问题。
假设我将一部分数据作为验证数据,其中包含整个块。如果我在训练和测试数据中随机拆分剩余的行,则学习到的随机森林的准确度在训练和测试数据上非常高,但在验证数据上却非常低。这是因为随机森林在这种情况下学习识别单个块,并且由于验证数据包含一些未知块,因此准确性下降。这也可以从特征的重要性中看出:最重要的是那些可以很容易地识别循环的特征。
将剩余的数据拆分为训练和测试数据并保留整个块会有所帮助,但并不能完全解决问题。
另一种方法是删除所有允许识别块的特征。但这很难先验,其中一些功能可能对我的问题有重要信息。
克服这些问题的一种简单方法是获取每个块中的行均值并将结果数据用于分类问题。但是,在这种情况下,您会丢失很多信息。
所以我想知道是否有更自然的方法来处理这个尊重数据块结构的分类问题。