当前,深度学习作为人工智能的热门技术发展迅速,以其强大的非线性和不确定性处理能力在图像识别、语音识别、自然语言处理等领域取得了显著的成效。它是一种端到端的处理方法,在训练算法的指导下,深层神经网络自发地从原始数据中进行抽象,提炼关键特征,对结果做出预报,中间过程不需要人工干预,尤其适合解决样本和结论容易获取但样本导致结论的原因难以清晰界定的问题。

阅读全文点击:《Python实现的深度学习技术在水文水质领域应用》

一、深度学习的基本概念和发展现状

1.1深度学习的基本原理:从生物网络到人工神经网络

一个生物神经元就是一个可以接受、发射脉冲信号的细胞。树突接受其他神经元的脉冲信号,而轴突将输出脉冲传递给其他神经元。人工神经元是把一个神经元看做一个计算单元,对输入进行线性组合,然后通过一个非线性的激活函数作为输出。人工神经网络是对生物神经元的一种模拟,用数值方法模拟人的思维过程。深度学习以人工神经网络为基础,通过构建一个多层的表示学习结构,使用一系列非线性变换操作把从原始数据中提取的简单特征进行组合,从而得到更高层、更抽象的表示。

1.2应用领域

图3 语音、图像、视频、自然语言处理以及交叉领域。

目前在语音、图像、视频、自然语言处理等通用领域发展迅速,在垂直领域,如医药、金融、法律和水文水资源领域有一定的应用。

1.3当前取得的进展

1.4 在水文水质领域的应用

二、Python系列开源软件包基本用法

2.1 Python基础

(1)元组、列表、字典数据类型的定义和基本用法

(2)Python中字符串的处理和数据类型转换

(3)Python读取和写入文本文件方法

2.2 Numpy基本用法

(1)Numpy数组的概念和定义方法

(2)数组数据的访问方法

(3)Numpy中随机数生成、常用的线性代数计算函数

(4)Numpy中文本文件、二进制文件的读取和保存

2.3 Matplotlib基本用法

Matplotlib基本绘图、子图划分、双坐标轴绘图以及颜色、标记、线型、刻度、标签、注解的设置等。

2.4 Openpyxl处理Excel基本用法

(1)加载和保存Excel文件的方法

(2)获取Excel中的数据

(2)读取和写入Excel文件

2.5 scikit-learn

scikit-learn是机器学习中封装好的包,本次课程主要介绍支持向量机和决策树的调用方法。

2.6 TensorFlow基本用法

(1)算子、数据流、张量、占位符、变量基本概念

(2)TensorFlow的应用实例

(3)TensorBoard过程可视化的用法

2.7 cv2、PIL基本用法

(1)读取图片数据

(2)图片和矩阵之间的转换

(3)图片可视化

三、前馈神经网络模型、原理和代码实现三、前馈神经网络模型、原理和代码实现

3.1前馈神经网络原理与结构

(1)数据集的划分:训练集、测试集、验证集;

(2)激活函数:sigmoid函数、双曲正切函数tanh、修正线性单元ReLU;

Sigmoid函数:

Tanh函数:

修正线性单元:

(3)Softmax分类器:分类器通常放在网络的最后一层;

,其中X为输入向量,W,b是参数。

(4)目标函数:衡量预测和实测结果之间差异的函数,通过目标函数进行优化得出模型参数。

(5)正则项:防止模型过拟合的有效方法。

(6)反向传播算法:计算神经网络梯度的经典算法,在实践中计算时由TensorFlow代劳,无需开发者自己推导公式。

(7) 模型训练和参数优化:mini-batch训练策略和梯度下降法。

3.2基于TensorFlow实现的前馈神经网络模板

基于TensorFlow实现前馈神经网络的基本模板设计,在应用过程中,只需要更换数据集,重新调试参数,基本的模型代码不需修改。

四、前馈神经网络模型在水质、水位预测中的应用

4.1 TensorFlow实现多层前馈神经网络,用于水质预测

绿水青山就是金山银山,在环境保护日益受到政府各部门重视的情况下,水污染尤其是水质状况的发展趋势研究就显得极为重要。本部分使用多层前馈神经网络开展水质预测研究,根据某流域重点河段重点监测点位 1986—1995年 DO 的实际监测值开展实验。使用1986-1994年的检测结果作为训练集,对1995年的值做出预测。

深入理解前馈神经网络的原理和基于TensorFlow的实现方法,为后续实现卷积神经网络和循环神经网络打好基础。

4.2 TensorFlow实现多层前馈神经网络,用于水位预测

水库建成以后,为了在枯水期蓄满库容,充分发挥发电效益,通常会减少下泄流量,容易导致下游河道湖泊的来流量减少,引发干旱,导致生态环境问题。本实例研究某水库建成后,其下泄流量与下游某湖泊水位之间的关系,根据水库下泄流量预测湖泊水位。

五、卷积神经网络模原理、结构和应用,与支持向量机进行比较

5.1卷积操作

5.2池化操作

5.3卷积网络的基本结构

5.4卷积神经网络在水质综合评价中的应用

卷积神经网络主要处理图像类数据。本部分使用的数据集是某地区多个罗非鱼池塘的水样数据,包含水产专家按照水色判断水质分类的数据以及用数码相机按照标准进行水色采集的数据,每个水质图片命名规则为“类别_编号.jpg”。本任务是根据这些图像数据,利用图像处理技术,通过水色图像实现水质的综合评价。本数据集共有203张图片,共5个类别。

5.5支持向量机的基本原理和应用

介绍支持向量机的原理,并使用5.4中的水色图像数据进行分类,与卷积神经网络进行对比分析。

六、循环神经网络原理与结构

6.1循环神经网络结构

循环神经网络是最适合时间序列预测任务的模型,在每一步合成计算过程中,它都能够考虑到前面时间节点的信息,非常适合处理水文方面的任务以及研究。图13-15是经典的循环神经网络结构。

6.2 循环神经网络在水质预测中的应用

案例二:根据长江流域主要城市水质监测报告提供的数据,建立适当的循环神经网络模型,对长江干流水质各指标趋势预测。

七、循环神经网络在水质综合评价和水文预报中的应用

7.1 循环神经网络在水文预报中的应用

在大型河网中,下游站点的流量通常由上游干、支流控制站点的流量以及区间降雨构成。但由于水雨情的不同,上游站点流量和降雨到达下游站点的时间处于变化中,难以精确测量和计算。本实验借助时间窗口的概念,扩展模型对不同水雨情的适应能力,同时使用RNN和Attention机制在历史数据中挖掘流量传播机制,开展水文预报。具体内容包含以下几个方面:

(1) 使用python实现传统的合成流量法;

(2) 基于时间窗口概念,使用python实现多维度的合成流量法,并与传统合成流量法进行比较;

(3) 构建深度神经网络模型,以各个上游站点的流量过程为模型的输入,结合时间窗口的概念,对下游站点的流量开展预报;

(4) 在第(3)步的基础上,增加attention机制,并与(3)中的方法进行比较

在本部分的研究过程中,将详细介绍模型的实现细节,以便使学员能够理解并掌握模型的精髓,能够根据实际问题设计模型,而不是照搬照抄式的套用模型,只有这样才具备一定的创新能力。

Python实现的深度学习技术在水文水质领域应用相关推荐

  1. Python机器学习、深度学习技术提升气象、海洋、水文领域实践应用

    Python是功能强大.免费.开源,实现面向对象的编程语言,在数据处理.科学计算.数学建模.数据挖掘和数据可视化方面具备优异的性能,这些优势使得Python在气象.海洋.地理.气候.水文和生态等地学领 ...

  2. Python机器学习、深度学习技术提升气象、海洋、水文领域实践应用能力

    Python是功能强大.免费.开源,实现面向对象的编程语言,能够在不同操作系统和平台使用,简洁的语法和解释性语言使其成为理想的脚本语言.除了标准库,还有丰富的第三方库,Python在数据处理.科学计算 ...

  3. 搜狗深度学习技术在广告推荐领域的应用

    内容来源:2017年4月17日,搜狗移动搜索广告策略研究组负责人舒鹏在七牛云和QCon联合主办的深度学习论坛"深度学习最新进展与实践"上进行<搜狗深度学习技术在广告推荐领域的 ...

  4. Python机器学习、深度学习技术提升气象、海洋、水文领域应用

    Python是功能强大.免费.开源,实现面向对象的编程语言,能够在不同操作系统和平台使用,简洁的语法和解释性语言使其成为理想的脚本语言.除了标准库,还有丰富的第三方库,Python在数据处理.科学计算 ...

  5. 基于Python机器学习、深度学习技术提升气象、海洋、水文领域实践应用

     Python是功能强大.免费.开源,实现面向对象的编程语言,能够在不同操作系统和平台使用,简洁的语法和解释性语言使其成为理想的脚本语言.除了标准库,还有丰富的第三方库,Python在数据处理.科学计 ...

  6. 基于Python机器学习、深度学习技术提升气象、海洋、水文领域实践应用能力

    目录 专题一.Python软件的安装及入门 专题二.气象常用科学计算库 专题三.气象海洋常用可视化库 专题四.爬虫和气象海洋数据 专题五.气象海洋常用插值方法 专题六.机器学习基础理论和实操 专题七. ...

  7. 为恶意文件“画像” 瀚思科技基于深度学习技术快速锁定未知威胁

    至顶网安全频道 07月26日 北京报道:"阿尔法狗"(AlphaGo)的一战成名让很多人记住了人工智能.深度学习.大数据分析等一系列新兴科技热词,而真正要把这些新技术应用到商业领域 ...

  8. opencv与python学哪一个好_教你如何用OpenCV、Python和深度学习技术对图像和实时视频进行神经风格迁移...

    编者按:在这篇教程中,作者AdrianRosebrock将教你如何用OpenCV.Python和深度学习技术对图像和实时视频进行神经风格迁移. 2015年,Gatsys等人在论文ANeuralAlgo ...

  9. 如何用 Python 进行基于深度学习的计算机视觉项目开发?

    令人惊喜的"智能"年代 深度学习有着广阔的前景 我们正处在一个"智能"的年代,比如智能手机中的语音助手.机器翻译和人脸识别:战胜过日本将棋冠军.国际象棋冠军, ...

最新文章

  1. Eclipse不自动编译 设置后重新编译仍然没有编译
  2. uifont 字体详解
  3. 做人不能太忽悠 评淘宝团购 续集
  4. u盘安装linux双系统6,用U盘安装Centos6.5 + Win7 双系统
  5. 【效率】这个神器可以摆脱变量命名纠结!
  6. CommonJS/AMD/CMD/UMD
  7. hive 和mysql配置_Hive学习和配置Mysql
  8. 三维ICP-SVD配准
  9. 微型计算机中外储存器比内储存器,计算机笔试复习题集共23页.doc
  10. 比较两个文本中数据不同的行
  11. 【VS开发】使用CTabView分割多页卡窗口
  12. 抖音海外版tiktok404 amp; 简洁国际版apk
  13. 关于tomcat启动出现To prevent a memory leak, the JDBC Driver has been forcibly unregistered.问题
  14. UE4虚幻引擎4多人联机基础知识和客户端服务器通信机制详解
  15. 《University Calculus》-chaper8-无穷序列和无穷级数-比值审敛法
  16. 一种基于傅里叶变换的相位配准算法phase correlation approach,利用互功率谱得到时空的平移。
  17. 16位rgb2gray算法verilog移植
  18. 人行征信密码控件卸载后残留,导致fiddler自动关闭解决办法
  19. Unicode blocks 统计
  20. 深入浅出理解什么是HTAP

热门文章

  1. Android创建一个无启动页服务
  2. 怎样将dwg转换成pdf格式?
  3. springMVC使用multipart实现Ctrl建批量上传图片
  4. Pytorch 数据增广(Data Augmentation)
  5. powershell 下汉字转拼音
  6. app性能测试与弱网测试
  7. python用于pmc排产可以吗_生产计划管理PMC如何有效实施?
  8. [Mattermost]安装Docker版
  9. python教程cos_带有Python示例的math.cos()方法
  10. POJ - 3278抓牛牛