2. 杭州市妇产科医院, 杭州 310008
2. Hangzhou Women’s Hospital, Hangzhou 310008, China
预测胎儿体重是产前监护的重要内容, 是医生对孕妇进行临床处理的重要依据. 近年来研究显示, 低体重儿的存活率和扛感染能力相对低下[1], 并且与低智商有密切联系[2]. 而巨大儿则会引起胎儿宫内窘迫、新生儿窒息、肩难产[3,4]等. 产前预测胎儿体重, 对于避免新生儿体重异常, 恰当选择分娩方式具有重要意义. 孕妇的产前体检记录属于特殊的电子病历. 围产医学规定的产前体检、孕妇个人的健康状况和高危妊娠的随访等使得孕妇的体检次数和体检时间间隔各不相同. 因而造成了体检事件在妊娠时间上的不均匀时间间隔分布. 图1是孕妇产前体检示意图. 矩形表示妊娠起点, 3个圆点表示孕妇的前3次产前体检记录, 倒三角表示分娩. 以上事件以时间顺序在数轴上从左往右排列, 事件之间的距离大小表示时间间隔的长短. 妊娠时间用
2 相关工作
在临床工作中, 产科医生经常采用宫高腹围测量法[5–8]和超声测量法[9,10]估算胎儿体重. 两者根据孕妇的检查数据为参数, 通过公式来估计胎儿体重. 宫高腹围法简单快捷无副作用, 孕妇可在家中自行测量. 超声法则以其更精确的优点成为目前应用最广泛的方法. 但是, 这两种方法均存在不同的弊端. 首先, 由于产科工作的特殊性, 在一些紧急情况下不能及时为孕妇完成超声检查, 此时使用宫高腹围法便成为一个很好的选择. 超声法是目前较为准确的测量方法, 但是, 多次做超声检查是否有副作用存在争议, 一般情况下, 孕妇产前的超声检查仅为3–4次. 除以上两种公式估算方法外, 机器学习方法也可以将孕妇的宫高、腹围, 胎儿的双顶径、头围、腹围、股骨长等数据为参数预测胎儿体重, 在刁晓娣等的研究中[11], 使用人工神经网络预测胎儿体重, Xu ZP等[12]在人工神经网络中添加了正则化条件来预测胎儿体重. 虽然, 机器学习方法已应用到胎儿体重预测任务中, 但是其方法大多为人工神经网络, 不同的研究虽对人工神经网络有不同的修改, 但其本质仍旧是MLP(多层感知机). 无论是宫高腹围法、超声测量法还是经典机器学习方法, 仅取孕妇分娩前一周内的数据作为估算或预测参数, 而忽略了孕妇在多次体检记录中反映出来的变化. 其次, 在胎儿体重预测的研究中, 尚未将孕妇的高危妊娠和疾病信息考虑进去. 因此, 此类研究不具有普适性.
3 变长时间间隔LSTM模型孕妇在孕周时间上的体检统计分布如图2所示, 横轴表示妊娠周, 深色的小矩形表示孕妇在对应的妊娠周做了体检, 每一横行表示孕妇体检周的一种统计分布, 纵轴表示每一种统计分布的人数. 例如, 孕妇a的体检时间周是序列[16, 20, 24, 28, 30, 32, 34, 35, 36, 37, 38, 39], 序列中的每一项是做体检的妊娠周, 这串序列为一种体检周统计分布, 假设孕妇b与孕妇a的体检时间周完全一致, 即, 孕妇b的体检妊娠周也为[16, 20, 24, 28, 30, 32, 34, 35, 36, 37, 38, 39], 那么, 符合该统计分布的孕妇的数量加1, 反映在图2中是最上方的第一横行, 横坐标为[16, 20, 24, 28, 30, 32, 34, 35, 36, 37, 38, 39]处是深色矩形. 每一横行在左边对应的纵坐标上的数值是体检的妊娠周完全符合该统计分布的孕妇人数, 即, 体检孕周是[16, 20, 24, 28, 30, 32, 34, 35, 36, 37, 38, 39]统计分布的孕妇共有21人. 10 473个孕妇共有9480种统计分布. 按照每种分布的孕妇人数降序排列,图2绘制了人数最多的前30种统计分布. 根据图2可知, 在9480种体检统计分布中, 人数最多的仅有21人, 由于大部分孕妇的体检周的分布差异巨大, 因此, 孕妇的体检记录在妊娠周时间上无法对齐, 需要在传统的LSTM中引入时间信息.
本文用
$\Delta T_k^i = t_k^i$ | (1) |
$ \Delta t_k^i = t_k^i - t_{k - 1}^i, \;\; {\rm{s.t.}}\;\;\;k \in {N^ + },t_0^i = 0 $ | (2) |
本文的目标是根据Mi, 输出胎儿出生体重的预测值. 在标准的RNN和LSTM中, 第
变长时间间隔LSTM模型即为Variable Time Interval-LSTM (VTI-LSTM). 标准的LSTM模型的表达式[13]如式(3)–式(7):
${i_k} = {\sigma _i}({x_k}{W_{xi}} + {h_{k - 1}}{W_{hi}} + {w_{ci}} \odot {c_{k - 1}} + {b_i})$ | (3) |
${f_k} = {\sigma _f}({x_k}{W_{xf}} + {h_{k - 1}}{W_{hf}} + {w_{cf}} \odot {c_{k - 1}} + {b_f})$ | (4) |
${c_k} = {f_k} \odot {c_{k - 1}} + {i_k} \odot tan{h_c}({x_k}{W_{xc}} + {h_{k - 1}}{W_{hc}} + {b_c})$ | (5) |
${o_k} = {\sigma _o}({x_k}{W_{xo}} + {h_{k - 1}}{W_{ho}} + {w_{co}} \odot {c_k} + {b_o})$ | (6) |
${h_k} = {o_k} \odot {\sigma _h}({c_k})$ | (7) |
LSTM模型结构如图3(a)所示. 我们将妊娠时间
$T{1_k} = {\sigma _{t1}}({x_k}{W_{xT}} + {\sigma _{tt1}}(\Delta {T_k}{W_{tt1}}) + {b_{t1}})$ | (8) |
$T{2_k} = {\sigma _{t2}}({x_k}{W_{xt}} + {\sigma _{tt2}}(\Delta {t_k}{W_{tt2}}) + {b_{t2}})$ | (9) |
然后, 本文分别向Standard LSTM模型的“输入门”和“遗忘门”中以时间门控的方式引入妊娠时间
$ \begin{split} &{c_k} = (1 - T{2_k}) \odot {f_k} \odot {c_{k - 1}}\\ &\quad +{i_k} \odot T{1_k} \odot tan{h_c}({x_k}{W_{xc}} + {h_{k - 1}}{W_{hc}} + {b_c}) \end{split}$ | (10) |
对于式(10)中
研究表明, 胎儿体重不仅与孕妇的宫高[15]、腹围[16]相关, 而且与身高体重[17,18]、胎次[19]、年龄、糖尿病[20]等因素有关. 本研究中, 本文选取孕妇的宫高腹围和高危因素等方便获取的参数作为模型的输入特征. 根据数据中的特征, 计算各项特征与胎儿体重的皮尔森相关系数和P值. 皮尔森相关系数计算公式如式(11).
$\rho = \frac{{\displaystyle \sum\limits_{i = 1}^N {({x_i} - \bar x)} ({y_i} - \bar y)}}{{(n - 1){s_x}{s_y}}}$ | (11) |
其中,
$t = \frac{{\rho \sqrt {n - 2} }}{{\sqrt {1 - {\rho ^2}} }}$ | (12) |
${P_{\rm{value}}} = 2 \times P(T > t)$ | (13) |
其中, T服从n–2自由度的t分布, Pvalue即为P值. 计算结果如表1所示, 保留3位有效数字. 我们选择P值低于0.05的特征, 包含妊娠周、年龄、身高、体重、宫高、腹围、胎次、早产史、胎盘异常、胎位不正、胎膜早破、糖尿病、辅助生殖、多胎共14个特征. 其中, 妊娠周、年龄、身高、体重、宫高、腹围、胎次属于数值型数据, 早产史、胎盘异常、胎位不正、胎膜早破、糖尿病、辅助生殖、多胎属于类别型数据.
4.2 数据预处理
将胎儿体重以小于2500 g、在2500 g和4000 g之间、大于4000 g为标准分别划分为低体重儿、正常体重儿、巨大儿, 如表2所示, 可以看出, 低体重儿和巨大儿样本量与正常体重儿数量差距较大, 因此在分类任务的训练集中, 将低体重儿和巨大儿样本做过采样处理, 在总体的回归任务上不做过采样处理. 为避免数据中不同的量纲对模型造成影响, 本文采用归一化的方式处理数值型数据. 绘制胎儿体重分布图, 如图4所示, 横坐标表示胎儿体重, 纵坐标表示与该体重对应的胎儿数量. 根据横坐标间距和样本数量, 将样本划分为3段, 分别用倒三角、圆点、正三角表示. 观察可得, 胎儿体重大多集中在中间圆点的区域, 两边倒三角和正三角区域则较为稀疏, 并且胎儿体重在横坐标上跨度较大, 使用常规的归一化方法必然导致中间区域大量样本的归一化结果差异非常小, 导致模型表现较差. 因此, 我们采用分段缩放的方法, 牺牲小样本上横坐标的间距, 放大大量样本的横坐标间距. 倒三角样本点、圆样本点、正三角样本点分布的横坐标区间分别记为
$D1 = \frac{{C1}}{{I1}}$ | (14) |
$D2 = \frac{{C2}}{{I2}}$ | (15) |
$D3 = \frac{{C3}}{{I3}}$ | (16) |
在区间I1上, 对样本进行一次线性归一化, 如式(17):
$V_{\rm{new}}^{I1} = \frac{{V_{\rm{origin}}^{I1} - V_{\rm{min}}^{I1}}}{{V_{\rm{max}}^{I1} - V_{\rm{min}}^{I1}}}$ | (17) |
其中,
$I{1_{\rm{new}}} = D1 \times V_{\rm{new}}^{I1}$ | (18) |
$I{2_{\rm{new}}} = D2 \times V_{\rm{new}}^{I2} + D1$ | (19) |
$I{3_{\rm{new}}} = D3 \times V_{\rm{new}}^{I3} + D1 + D2$ | (20) |
将
经过上述分段缩放和归一化计算, 最终, 数值类型数据的间隔相对均匀, 且保留了各子区间内的线性关系, 可提升模型效果. 我们对身高、体重、宫高、腹围、胎儿体重5个数值型数据做了上述计算, 其他数值型数据分布较为均匀, 仅做简单的线性归一化. 对于类别型数据, 本文采用one-hot的编码方式, 当某一孕妇的体检记录包含多种类别型数据, 那么与该孕妇对应的类别信息为multi-hot向量.
孕妇的体检次数如图5所示, 横坐标表示孕妇体检次数, 纵坐标表示孕妇人数. 最少体检次数为1次, 最多体检次数为24次, 孕妇的体检记录是一个变长序列. 对于时序模型, 需要将孕妇的体检记录做填充. 上面提到的特征筛选中, 孕妇的一次体检记录共有14维. 本文用1×14的0向量将孕妇的体检记录填充至24次, 0向量不参与模型计算. 因此, 10 473个孕妇的122 462条体检记录转化为一个三维矩阵, 第一维度表示最大体检次数, 第二维度表示每条体检记录的特征数量, 第三维度表示孕妇总人数.
4.3 实验设置本文将产前的体检记录作为模型的输入, 胎儿出生体重作为预测目标, 10 473个孕妇的最后一次体检记录与分娩时间在同一周内. 实验分为公式法和机器学习方法2部分. 公式法是选取4个不同的胎儿体重估算公式[5–8]作为对照, 4个估算公式如式(21)~式(24), 分别对应公式法1~公式法4. 其中, BW是胎儿的出生体重(单位为g), FH是宫高(单位为cm), AG是腹围(单位为cm).
$ BW = - 1.515 + 0.092 \times FH + 0.016 \times AG $ | (21) |
$ BW = 13.3 \times FH - 943 $ | (22) |
$ BW = (AG - 67.87)/7.2 $ | (23) |
$ BW = - 2700 + 123 \times FH + 20 \times AG $ | (24) |
机器学习方法采用GBDT、MLP、SVR、RNN、LSTM、VTI-LSTM等6种模型, 损失函数采用二次代价函数, 如式(25):
$L = \frac{1}{{2N}}\sum\limits_{i = 1}^N {{{({y_i} - {{\hat y}_i})}^2}} $ | (25) |
其中,
$MRE = \frac{1}{M}\sum\limits_{j = 1}^M {\frac{{|{y_j} - {{\hat y}_j}|}}{{{{\hat y}_j}}}} \times 100\% $ | (26) |
其中,
(1)对低体重儿、正常体重儿、巨大儿的分类. 分类按照表2划分为3类, 我们从低体重儿、正常体重儿、巨大儿中各抽取50个作为分类任务的测试集, 根据分类预测结果计算各类体重的MRE并绘制混淆矩阵. 由于胎儿体重的各类样本数量不平衡, 因此需要对训练集中的低体重儿和巨大儿做过采样处理.
(2) 计算总体上的回归误差, 训练集不做过采样处理, 总体回归的测试集保持数据中原始的各类体重儿的比例. 训练集和测试集按照10: 1划分.
5 实验结果和讨论胎儿体重预测结果的平均相对误差如表3所示. 其中, 实验结果的前3列是分类任务在低体重儿、正常体重儿、巨大儿的预测上的MRE. 第4列是总体回归任务的误差, 也即, 前3列的机器学习方法中, 对训练集中的小样本做了过采样处理, 第4列的机器学习方法中, 对训练集中的小样本没有做过采样处理, 保留原始数据中各类样本的比例. 公式法无训练集, 直接在测试集上计算即可. 总体来看4个公式法预测的结果弱于机器学习方法. 式(21)、式(24)方法包含宫高腹围两个参数, 式(22)仅有宫高参数, 式(23)仅有一个腹围参数, 所以, 式(23)法容易受到孕妇腹部脂肪的干扰, 结果较差, 式(22)相对式(23)较好, 但弱于式(21)和式(24). 式(21)的预测结果偏向于正常体重儿, 在所有的方法中取得最小的正常体重儿预测结果误差. GBDT、MLP、SVR等3种经典的机器学习模型的预测结果并无较大差异. RNN、LSTM、VTI-LSTM等3种时序模型方法中, LSTM结果仅次于VTI-LSTM, RNN结果较差, 说明仅使用简单的递归循环难以学习到孕妇多次体检的变化. VTI-LSTM在低体重儿和巨大儿MRE上取得最好的预测结果, 而在正常体重儿MRE上弱于式(21).
由于在分类任务中, 我们对小样本做了过采样处理, 所以导致机器学习模型牺牲正常体重儿的结果, 偏向低体重儿和巨大儿. 观察第4列的结果, 不做小样本过采样处理的总体回归误差仍旧是VTI-LSTM效果最好, 根据表2的统计结果, 占据样本大多数的正常体重儿的体重范围是2500~4000 g, 区间跨度并不大, 所以导致机器学习模型的总体MRE结果相差较小. 由于我们采用的是MRE作为误差度量的方式, 根据图4可以看出, 低体重儿的多样性比巨大儿丰富, 并且低体重儿计算MRE公式的分母较小, 所以在所有的方法中, 低体重儿的MRE高于巨大儿.
分类预测结果的混淆矩阵如图6所示. 纵坐标表示真实类别, 横坐标表示预测类别. L表示低体重儿(low birth-weight infant), N表示正常体重儿(normal birth-weight infant), M表示巨大儿(macrosomia). 公式法1、公式法2、公式法4中, 将大部分样本分类到正常体重中, 仅使用腹围作为预测参数的公式法3则倾向于将样本分类到巨大儿中, 预测结果受到了孕妇腹部脂肪的影响. GBDT、MLP、SVR三者中, MLP结果相对较差, GBDT和SVR无明显差异. RNN的分类结果与公式法接近, LSTM和VTI-LSTM明显优于其他方法, LSTM与VTI-LST相比, LSTM偏向于分类到正常体重儿中, VTI-LSTM则在低体重儿和巨大儿的分类中取得最好的结果, 说明不均匀离散时间在“输入门”和“遗忘门”上的嵌入表征起到了很大的作用. 上述的方法和模型中, 无论是哪一种, 对低体重儿和巨大儿的分类仍旧是一个挑战. 根据表2中的数据, 低体重儿和巨大儿分别仅占新生儿总数的3.41%和3.27%, 各类样本比例失衡, 虽然在训练集中我们采取了对小样本过采样的预处理方式, 但仍旧难以避免小样本数据缺乏多样性的问题. 另外, 体重低于2 000 g的低体重儿和体重高于4 500 g的巨大儿分别占低体重儿和巨大儿较小的比例, 导致低体重儿、正常体重儿、巨大儿的分类间隔较小. 对比低体重儿和巨大儿的分类, 低体重儿的分类结果明显优于巨大儿. 原因有如下两点: 第一, 在我们的特征中, 包含孕周信息, 分娩低体重儿的孕妇的妊娠时间普遍少于正常的妊娠时长. 第二, 由于现代社会生活水平普遍较高, 胎儿体重偏大, 在孕36周时, 许多胎儿已经发育成熟, 且体重在正常范围内, 这类胎儿和足月儿相比会提前1–2周分娩, 增加了模型识别巨大儿的难度.
6 结论
本研究在胎儿体重预测任务上分别使用了4种公式法和3种经典的机器学习方法以及3种时序模型方法. 其中, 本研究提出的VTI-LSTM模型在低体重儿和巨大儿的分类预测中取得了较好的结果并在总体的误差回归上取得最小的MRE. 传统的公式法弱于经典的机器学习模型和时序模型. 而时序模型中的LSTM可以学习到孕妇每次体检的变化以及胎儿的生长速率, 预测结果有大幅提升. VTI-LSTM将每次体检的时间间隔和体检的妊娠时间在模型层面上表征, 模型可以学习到孕妇体检记录的不均匀时间间隔, 又在LSTM的基础上得到提升. 综上, 本研究可为医生和孕妇判断胎儿生长发育提供一个相对准确的参考.
[1] |
McIntire DD, Bloom SL, Casey BM, et al. Birth weight in relation to morbidity and mortality among newborn infants. The New England Journal of Medicine, 1999, 340(16): 1234-1238. DOI:10.1056/NEJM199904223401603 |
[2] |
Matte TD, Bresnahan M, Begg MD, et al. Influence of variation in birth weight within normal range and within sibships on IQ at age 7 years: Cohort study. British Medical Journal, 2001, 323(7308): 310-314. DOI:10.1136/bmj.323.7308.310 |
[3] |
Modanlou HD, Dorchester WL, Thorosian A, et al. Macrosomia–Maternal, fetal, and neonatal implications. Obstetrics and Gynecology, 1980, 55(4): 420-424. |
[4] |
Oral E, Cağdaş A, Gezer A, et al. Perinatal and maternal outcomes of fetal macrosomia. European Journal of Obstetrics & Gynecology and Reproductive Biology, 2001, 99(2): 167-171. |
[5] |
Woo JSK, Ngan HYS, Au KKL, et al. Estimation of fetal weight in utero from symphysisfundal height and abdominal girth measurements. Australian and New Zealand Journal of Obstetrics and Gynaecology, 1985, 25(4): 268-271. DOI:10.1111/j.1479-828X.1985.tb00742.x |
[6] |
Ghaemmaghami F, Jamal A, Soleimani MR, et al. Parturient fundal height and birth weight estimation. Archives of Iranian Medicine, 2002, 5(2): 80-83. |
[7] |
Mohanty C, Das BK, Mishra OP. Parturient abdominal circumference as a predictor of low birthweight. Journal of Tropical Pediatrics, 2000, 46(6): 363-364. DOI:10.1093/tropej/46.6.363 |
[8] |
凌萝达. 难产理论与实践. 重庆: 重庆出版社, 2006.
|
[9] |
Hadlock FP, Harrist RB, Carpenter RJ, et al. Sonographic estimation of fetal weight. The value of femur length in addition to head and abdomen measurements. Radiology, 1984, 150(2): 535-540. DOI:10.1148/radiology.150.2.6691115 |
[10] |
Shepard MJ, Richards VA, Berkowitz RL, et al. An evaluation of two equations for predicting fetal weight by ultrasound. American Journal of Obstetrics and Gynecology, 1982, 142(1): 47-54. DOI:10.1016/S0002-9378(16)32283-9 |
[11] |
刁晓娣, 江志斌, 刘瑾. 根据孕妇参数预测胎儿体重的神经网络方法. 中国生物医学工程学报, 1999, 18(2): 155-158. DOI:10.3969/j.issn.0258-8021.1999.02.006 |
[12] |
Xu ZP, Shen AF. A new model of estimating fetal macrosomia based on neural network. Proceedings of 2010 Ninth International Symposium on Distributed Computing and Applications to Business, Engineering and Science. Hong Kong, China. 2010. 689–692.
|
[13] |
Graves A. Generating sequences with recurrent neural networks. arXiv: 1308.0850, 2013.
|
[14] |
Zhu Y, Li H, Liao YK, et al. What to do next: Modeling user behaviors by time-LSTM. Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence. Melbourne, Australia. 2017. 3602–3608.
|
[15] |
Bothner BK, Gulmezoglu AM, Hofmeyr GJ. Symphysis fundus height measurements during labour: A prospective, descriptive study. African Journal of Reproductive Health/LaRevue Africaine de la Santé Reproductive, 2000, 4(1): 48-55. |
[16] |
Smith GCS, Smith MFS, McNay MB, et al. The relation between fetal abdominal circumference and birthweight: Findings in 3512 pregnancies. BJOG: An International Journal of Obstetrics and Gynaecology, 1997, 104(2): 186-190. DOI:10.1111/j.1471-0528.1997.tb11042.x |
[17] |
Viswanathan M, Siega-Riz AM, Moos MK, et al. Outcomes of maternal weight gain. Evidence Report/technology Assessment, 2008(168): 1-223. |
[18] |
Yu CKH, Teoh TG, Robinson S. Obesity in pregnancy. BJOG: An International Journal of Obstetrics and Gynaecology, 2006, 113(10): 1117-1125. DOI:10.1111/j.1471-0528.2006.00991.x |
[19] |
Shah PS. Parity and low birth weight and preterm birth: A systematic review and meta-analyses. Acta obstetricia et gynecologica Scandinavica, 2010, 89(7): 862-875. DOI:10.3109/00016349.2010.486827 |
[20] |
HAPO Study Cooperative Research Group. Hyperglycemia and adverse pregnancy outcomes. New England Journal of Medicine, 2008, 358(19): 1991-2002. DOI:10.1056/NEJMoa0707943 |