python 中使用 LSTM 进行疾病风险预测 - 输入形状问题

Disease risk prediction with LSTM in python - input shape problem

我是使用 python 进行机器学习的新手。我不知道如何重塑我的数据集以用作 LSTM 模型的输入,该模型将预测未来患病的风险。更具体地说,我的数据集如下所示:

enter image description here

PatientID MeasurementDate Parameter1 Parameter2 HasDisease
1 1/1/2021 106 1 0
1 1/2/2021 105,9 1 0
1 1/3/2021 107 1 1
2 2/1/2021 100 0 1
2 2/2/2021 100,5 0 1
2 2/3/2021 104 0 1
3 3/1/2021 97 1 0
3 3/2/2021 97 1 1
3 3/3/2021 97 0 1
4 4/1/2021 99 0 0
4 4/2/2021 109 1 0
4 4/3/2021 110 0 0

我应该如何重塑这个以用作 LSTM 中的输入并且看起来像 (batch_size、time_steps、seqeuence_len)? 我希望我的 LSTM 模型 return 类似于 PatientId :1 风险评分:80% 这意味着患者 1 有 80% 的概率在 3 个月后患病。 谢谢。

取每位患者的平均值。

我假设输入是参数 1 和参数 2。因此你的输入形状是 (num_rows, 1, 2),你的 LSTM 输入形状应该是 LSTM(100, input_shape=(1, 124)

如果您想将此问题视为时间序列问题,则需要每个患者的数据更多。 一种方法是尝试使用可用数据训练 LSTM 模型来预测 Parameter1 和 Parameter2。另外,训练一个简单的二元分类模型。然后是预测参数和分类模型来定义目标 (HasDisease)。

谢谢。

我通过观看此视频成功获得了预期的结果 https://www.youtube.com/watch?v=CcGf_Uo7NMw&ab_channel=KnowledgeCenter 并将其调整为我的数据集。 批量大小作为患者数量 时间步长作为跟进次数 Sequence_len 作为输入的属性数。 它最终成为一个 nD 数组。