背景数据描述

胆固醇、高血脂、高血压是压在广大中年男性头上的三座大山,如何有效的监控他们,做到早发现、早预防、早治疗尤为关键,趁着这个假期我就利用TF2.0构建了一套时序预测模型,一来是可以帮我预发疾病,二来也可以体验下TF2.0的特性

先来看下数据结构:

  • date表示的是测量日期
  • cholesterol代表胆固醇数值
  • blood_fat代表血脂
  • blood_pressure代表血压

整个的建模思路就是将这三个数值一起构建时序模型,因为这三个指标不能独立来看,他们是相互有影响的,互为特征和目标值。

代码详解

废话不多说,我们先看下完整的代码,代码比较长,我把整个代码分为数据探查、网络构建、模型训练、模型保存和预测这4个模块进行拆分并讲解,可以参见代码中的注释进行模块区分。环境使用的是python3.7、TensorFlow2.0版本。(完整代码见文末)

1数据探查

在数据探查模块使用了pandas将数据读取进来,然后用diff函数构建了时序数据的增长率曲线图,因为做时序数据预测,更多地是去看数据的增长或者降低趋势。通过matplotlib可以把数据的成长曲线画出来:

2网络结构构建

使用的是标准的lstm网络结构,可以通过model.summary函数将深度学习网络结构打印出来,如下图所示:

3模型训练

在模型训练环节主要是构建了收敛函数MSPE,MSPE是一种残差收敛算法,具体计算公式比较简单:

(y_true - y_pred)**2/(tf.maximum(y_true**2,1e-7))

4模型存储和预测

第四部分先使用model.save这个TF的官方模型保持函数将模型保存到本地,建议尽量使用这种官方的模型保持方案。

然后load模型对象,用model.predict函数对下一阶段的3个指标数据做一个预测。最终的预测结果存放在arr_predict对象中,预测结果为:

[[0.26552328,0.33151102,0]]

以上预测的是数据的增长率,假设最后一阶段的三个指标的数据分别为4.5、3.2、119,那么最终下一阶段的预测值就是:

[[4.5+0.26552328,3.2+0.33151102,119+0]]

完整代码如下,有兴趣的同学可以跑一跑玩一玩。

import 

深度学习loss值变为0_利用TensorFlow2.0为胆固醇、血脂、血压数据构建时序深度学习模型(python源代码)...相关推荐

  1. 利用TensorFlow2.0为胆固醇、血脂、血压数据构建时序深度学习模型(python完整源代码)

    背景数据描述 胆固醇.高血脂.高血压是压在广大中年男性头上的三座大山,如何有效的监控他们,做到早发现.早预防.早治疗尤为关键,趁着这个假期我就利用TF2.0构建了一套时序预测模型,一来是可以帮我预发疾 ...

  2. python血压测量程序代码_利用TensorFlow2.0为胆固醇、血脂、血压数据构建时序深度学习模型(python源代码)...

    背景数据描述 胆固醇.高血脂.高血压是压在广大中年男性头上的三座大山,如何有效的监控他们,做到早发现.早预防.早治疗尤为关键,趁着这个假期我就利用TF2.0构建了一套时序预测模型,一来是可以帮我预发疾 ...

  3. python测量血压_利用TensorFlow2.0为胆固醇、血脂、血压数据构建时序深度学习模型(python完整源代码)...

    import numpy as np import pandas as pd? import matplotlib.pyplot as plt import tensorflow as tf? fro ...

  4. 深度学习环境配置Win10+CUDA+cuDNN+Tensorflow2.0+PyTorch1.2+Python3.7.6

    系统环境:Win10 Python版本:3.7.6 CUDA版本:10.0 cuDNN版本:7.6.5 Tensorflow-gpu版本:2.0.1 PyTorch版本:1.2.0 深度学习环境配置W ...

  5. 【深度学习】利用tensorflow2.0卷积神经网络进行卫星图片分类实例操作详解

    本文的应用场景是对于卫星图片数据的分类,图片总共1400张,分为airplane和lake两类,也就是一个二分类的问题,所有的图片已经分别放置在2_class文件夹下的两个子文件夹中.下面将从这个实例 ...

  6. diskgeniusv4.4.0_入门TensorFlow2.0

    今天老师带领我们入门TensorFlow2.0.至于tensorflow2.0是啥嘛,详细的可以度娘一下.我简述一下,就是一个end-to-end machine-Learning open sour ...

  7. 神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<2>python)

    数组元素的切片 一维数组 #一维数组 #切片方法和Python序列数据结构的切片一样 a=np.array([0,1,2,3,4],dtype=np.int64)#占用新的内存 #不包括结束位置 pr ...

  8. 神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)

    多维数组 形状(Shape): 是一个元组,描述数组的维度,以及各个维度的长度. 长度(Length): 某个维度中的元素个数. 数字 单门课程成绩 1*课程成绩 一维数组 多门课程成绩 n*课程成绩 ...

  9. 强化学习 11 —— REINFORCE 算法推导与 tensorflow2.0 代码实现

    在上篇文章强化学习--Policy Gradient 公式推导介绍了 Policy Gradient 的推导: ∇ θ J ( θ ) ≈ 1 m ∑ i = 1 m R ( τ i ) ∑ t = ...

最新文章

  1. linux 内核按键抖动,Tiny4412 Linux驱动之按键(定时器防抖动) | 技术部落
  2. 判断为空:null、undefined、空字符串、中文空格
  3. php自定义函数出现乱码,php的imagettftext 函数出现乱码的解决方法
  4. 阿里当初50亿美元收购UC,现在看来是不是亏大了?
  5. Office转PDF,Aspose太贵,怎么办?
  6. antd listView中onEndReached()失效
  7. 十分钟上手 ES 2020 新特性
  8. mysql 解压缩安装_[mysql] MySQL解压缩安装步骤
  9. 【连载】如何掌握openGauss数据库核心技术?秘诀二:拿捏执行器技术(2)
  10. Linux创建软连接
  11. 能在手机播放的Flash代码
  12. android 判断手机计步_Android_基于G-Sensor的计步算法
  13. 梯度散度旋度常用基本关系
  14. 【论文阅读-表情捕捉】High-quality Real Time Facial Capture Based on Single Camera
  15. 虚拟机SSH免密登录配置
  16. mysql 3个表左连接查询_MySQL数据库三个表的左连接查询(LEFT JOIN)
  17. mac打开注册机显示“您没有权限来打开应用程序
  18. Unity 智能语音助手
  19. 一文看完计算机基础知识总结
  20. 华为路由器:ipsec技术

热门文章

  1. C、C++申请指针内存的问题
  2. Matlab在坐标点上按顺序标序号
  3. opencv中的矩阵拼接
  4. AUTOSAR从入门到精通100讲(七十九)-AUTOSAR基础篇之DTC
  5. 少儿编程150讲轻松学Scratch(十一)-用Scratch算法给矩形工具填充颜色
  6. java log4j 写日志_Java log4j同时写入文本日志和数据库日志
  7. Bash脚本教程之目录堆栈
  8. 计算机共享盒子,电脑之间如何共享文件
  9. abd shell关闭所有程序_一个 Shell 脚本逆袭的规范,拿走不谢
  10. 阿里90后工程师,如何用AI程序写出双11打call歌?