1.一种传染病趋势预测装置,其特征在于,包括数据接收模块、数据存储模块、状态方程构造模块、测量方程构造模块和预测输出模块;其中,数据接收模块,用于从服务器接收传染病历史数据;
数据存储模块,用于存储接收的传染病历史数据和传染病趋势预测值;
状态方程构造模块,用于根据传染病历史数据构造状态方程,通过上一时刻的状态来推测此刻的状态;
测量方程构造模块,用于根据传染病历史数据构造测量方程,用于跟状态方程的值融合;
预测输出模块,用于结合状态方程和测量方程,输出传染病时间预测值;
使用时包括以下步骤:
S1:接收服务器发送的预测传染病趋势的指令,从服务器采集传染病历史数据并存储;
S2:根据传染病历史数据构造状态方程和测量方程;
S3:根据传染病历史数据构造时间序列矩阵,再将时间序列矩阵拆分成第一隐特征矩阵X和第二隐特征矩阵Z;
S4:结合状态方程、测量方程计算构造目标函数,对第一隐特征矩阵X和第二隐特征矩阵Z进行训练,输出第一更新隐特征X(t)和第二更新隐特征Z(t);
S5:计算传染病趋势预测值;
其中,S4包括:
S4‑1:初始化传染病趋势预测过程中所涉及的过程参数;
S4‑2:构造目标损失函数ε,以训练获取隐特征矩阵X、Z的值,目标损失函数ε用以下公式表示:公式(5)中,ε(P)表示时间序列矩阵的目标损失函数;P拆分为X和Z两个隐特征矩阵;t表示o向i输送r个传染病患者的时刻;|T|表示时刻的总数;P(t)o,i表示t时刻第o个城市向第i个城市输入的传染病数值;Γ表示已知数据集即四元组Y;λ表示正则化系数,对优化过程进行约束,防止在优化过程中出现过拟合的问题; 表示预测值,x(t)o表示第一隐特征矩阵中X第o个隐特征向量,o∈I;z(t)i表示第二隐特征矩阵Z中第i个隐特征向量,i∈J;
‖·‖2表示L2范数;
S4‑3:训练第一隐特征矩阵X,输出第一更新隐特征X(t);
X有T个时间片,X(0)、X(1)、X(2)、…、X(t)…X(T),X(0)是迭代前的随机化的初始状态;固定Z对X进行更新,具体的方法为:将状态方程和测量方程根据泰勒公式展开:
公式(6)的意义是状态转移函数在k‑1时刻后验值 点进行泰勒展开,其中,f(Uk‑1)表示k‑1时刻疾病状态的非线性转移函数; 表示k‑1时刻的后验状态值的非线性转移函数; 表示k‑1时刻的后验状态值的非线性转移函数的求导; 表示k‑1时刻的后验值;Uk‑1表示k‑1时刻疾病状态;
公式(7)的意义是测量函数在k时刻通过状态转移函数的先验值未跟此刻测量值融合的数据) 点上进行泰勒展开,其中,h(Uk)表示k时刻疾病状态的非线性测量函数;
表示k时刻先验状态值的非线性测量函数; 表示什么k时刻先验状态值的非线性测量函数的求导;Uk表示k时刻疾病状态; 表示状态转移函数的先验值;
则得到的预测步为:
公式(8)中, 表示k时刻先验值,即还没使用观测值“融合”之前的状态值,通过上一时刻的后验值 经过状态转移函数得到k时刻先验值; 是k时刻的先验方差, 是k‑1时刻的后验方差,Sk表示状态噪声;
则得到的更新步为:
公式(9)中,K表示扩展卡尔曼增益,扩展卡尔曼增益相当于一个权重,判断是更相信状态值还是更相信测量值,让最后的预测值更倾向于状态值还是测量值; 表示K时刻的后验值,即通过“融合”状态值和观测值得到最终的预测值; 表示k时刻的状态值;yk是观测值,即传染病历史数据,h是测量函数; 是K时刻的后验方差即预测方差; 是k时刻的先验方差;
对X进行训练,得到一系列的 即X(t),K∈T,t∈T,T表示数据集中最后的时刻;
S4‑4:训练第二隐特征矩阵Z,输出第二更新隐特征Z(T);
Z有T个时间片,Z(0)、Z(1)、Z(2)、Z(3)…Z(T),Z(0)是迭代前的随机化的初始状态;固定X通过交替二乘法对Z进行更新,构造其目标损失函数ε(Z),公式如下:公式(10)中,ε(Z)表示第二隐特征矩阵Z的目标损失函数;
对Z更新:
公式(11)中,z(1)i表示第二隐特征矩阵第一个时间片中第i个隐特征向量; 表示t=1时刻的测量值集合,维度为维度为1×|P(1)K(i)|; 表示t=1时刻的第一隐特征矩阵,维度为|P(1)K(i)|×|f|;P(1)K(i)表示t=1时刻四元组的数据集合;I为单位矩阵;
S4‑5:在已知数据集合Γ上重复上述训练过程,直至目标损失函数ε在已知数据集合Γ上收敛,判断损失函数ε在Γ上训练迭代过程是否达到终止条件,在达到终止条件后终止。
2.如权利要求1所述的一种传染病趋势预测装置,其特征在于,所述数据存储模块包括第一存储单元和第二存储单元;其中,第一存储单元,用于存储接收的传染病历史数据;
将接受的传染病历史数据以四元组的形式进行存储,四元组表示形式为Y=(o,i,r,t),其中,Y表示传染病历史数据,o表示向外输出传染病的城市,i表示接收传染病的城市,r表示o向i输送传染病的患者个数,t表示o向i输送r个传染病患者的时刻;传染病数据分为市外输入和本土化,若o≠i,表明该传染病由o城市向i城市市外输入;若o=i,表明该传染病是本土化;
第二存储单元,用于存储预测输出模块的传染病趋势预测值。
3.如权利要求1所述的一种传染病趋势预测装置,其特征在于,所述状态方程为:Uk=V(Uk‑1)+Sk (1)
公式(1)的意义是从k‑1的状态值得出k时刻的状态值,用来更新第一隐特征矩阵X中的参数;其中,Uk表示k时刻的状态值;Uk‑1表示k‑1时刻的状态值;V表示状态转移函数;Sk表示+状态噪声; 其中Uk‑1 是k‑1时刻的后验值,即该时刻的状态值和观测值经过“融合”后的值; 是k‑1时刻的后验方差,即该时刻的预测噪声和测量噪声经过“融合”后的值。
4.如权利要求1所述的一种传染病趋势预测装置,其特征在于,所述测量方程为:Qk=W(Uk)+Mk(2)
公式(2)中,Qk表示k时刻的测量值,Uk表示k时刻的状态值;W表示测量函数;Mk表示测量噪声。
5.如权利要求1所述的一种传染病趋势预测装置,其特征在于,所述预测输出模块包括初始化单元、训练单元和计算单元;其中,初始化单元,用于初始化传染病趋势预测过程中所涉及的过程参数,过程参数包括隐特征矩阵X、Z,隐特征维数f,最大训练迭代轮数max_count,迭代轮数控制变量count,收敛终止阈值χ,正则化系数λ;
训练单元,用于结合状态方程、测量方程和过程参数训练计算隐特征矩阵;
计算单元根据得到的隐特征矩阵,计算传染病预测值。
6.基于权利要求1‑5任一项所述一种传染病趋势预测装置的使用方法,其特征在于,具体包括以下步骤:S1:接收服务器发送的预测传染病趋势的指令,从服务器采集传染病历史数据并存储;
S2:根据传染病历史数据构造状态方程和测量方程;
S3:根据传染病历史数据构造时间序列矩阵,再将时间序列矩阵拆分成第一隐特征矩阵X和第二隐特征矩阵Z;
S4:结合状态方程、测量方程计算构造目标函数,对第一隐特征矩阵X和第二隐特征矩阵Z进行训练,输出第一更新隐特征X(t)和第二更新隐特征Z(t);
S5:计算传染病趋势预测值;
所述S2中,
状态方程为:
Uk=V(Uk‑1)+Sk (3)
公式(3)的意义是从k‑1的状态值得出k时刻的状态值,用来更新第一隐特征矩阵X中的参数;其中,Uk表示k时刻的状态值;Uk‑1表示k‑1时刻的状态值;V表示状态转移函数;Sk表示+状态噪声; 其中Uk‑1是k‑1时刻的后验值,即该时刻的状态值和观测值经过“融合”后的值; 是k‑1时刻的后验方差,即该时刻的预测噪声和测量噪声经过“融合”后的值;
测量方程为:
Qk=W(Uk)+Mk(4)
公式(4)中,Qk表示k时刻的测量值,Uk表示k时刻的状态值;W表示测量函数;Mk表示测量噪声。
7.如权利要求6所述的种传染病趋势预测装置的使用方法,其特征在于,所述S3中具体包括:根据传染病历史数据Y=(o,i,r,t)中不同时刻构造时间序列矩阵,P(1)、P(2)、…、P(T),t∈T,T是传染病数据中最后的时刻;时间序列矩阵中的元素P(t)o,i表示t时刻第o个城市向第i个城市输入的传染病数值;
将每个时间序列矩阵拆分成第一隐特征矩阵X和第二隐特征矩阵Z,X大小为|I|×|f|,Z大小为|J|×|f|,f表示隐特征维度。
8.如权利要求6所述的种传染病趋势预测装置的使用方法,其特征在于,所述S5中传染病趋势预测值的计算公式为:公式(12)中, 表示传染病预测值;X(t)表示第一更新隐特征;Z(t)表示第二更新隐特征;E表示转置矩阵。