解决时间序列分类问题的最佳方法?

数据挖掘 Python 喀拉斯 时间序列 多类分类 多标签分类
2022-03-01 13:34:33

我有一个数据集,其中输入是 ICU 患者的数据集,其中每个 ICU 停留有 40 个特征(20 个生命体征,20 个实验室值)和多个时间步长(停留的长度在 6 到 19 个时间步长之间)。输出是 20 个实验室值(表示为二进制数,其中 1 表示实验室值在范围内,0 表示超出范围)。任务是预测输入 ICU 停留的未来输出。我试图使它成为一个序列到序列的问题,其中输出是一个单步移动的序列。然而,结果还不够好。问题是有没有办法更好地解决这个问题?(比如开窗?)

1个回答

由于我没有看到数据,也无法完全理解数据格式,所以我只是提供一些一般性建议。但首先,我应该提到,将每个输出(每个 20 元素数组)视为时间序列是没有意义的,除非它们之间有优先级(优先级,我的意思是如果你知道之前获得了特定的实验室值其他)

因此,如果您有 20 元素的二进制数数组作为输出,您可能会发现没有两个输出完全相同,或者可能只有少数观察值具有完全相同的输出(因为您可以220组合!)。因此,假设您有 N 个观察值,并且您可能还会看到 N 个不同的输出数组。因此,您可以先将标签聚类为 k 个组,并为每个组分配新标签(第 i 个组的标签为 i)。然后,找到您的查询与每个组之间的最近距离,这样您就可以找到合适的类。然后,您可以预测数组格式的输出(例如,假设您意识到您的查询属于一组 20 个成员)。因此,您可以说,输出是按元素方式输出数组的预期值。因此,例如,您的 20 元素输出数组的第一个元素可能是 0.9。或者,您可以更精确,在找到合适的组后,根据您的查询和成员之间的距离定义权重,并找到该组的输出数组的加权平均值!