变透明的黑匣子:UCLA 开发可解释神经网络 SNN 预测山体滑坡

内容一览:由于涉及到多种时空变化因素,山体滑坡预测一直以来都非常困难。深度神经网络 (DNN) 可以提高预测准确性,但其本身并不具备可解释性。本文中,UCLA 研究人员引入了 SNN。SNN 具有完全可解释性、高准确性、高泛化能力和低模型复杂度等特点,进一步提高了滑坡风险的预测能力。
关键词:山体滑坡 SNN DNN

本文首发自 HyperAI 超神经微信公众平台~

山体滑坡的发生受到多种因素的综合影响,如地形、坡度、土壤、岩石等物质特征,以及气候、降雨、水文等环境条件。因此,相关预测一直以来都非常困难。通常情况下,地质学家使用物理和统计模型来估计滑坡发生的风险。虽然这些模型可以提供相当准确的预测,但训练物理模型需要大量的时间和资源,并不适合大规模应用。

近年来,研究人员一直在训练机器学习模型用于预测山体滑坡,特别是深度神经网络 (Deep Neural Network, DNN)。DNN 作为一个高精度预测模型,在图像识别、语音识别、自然语言处理、计算生物、金融大数据等多个领域效果显著,但它输入层和输出层之外有多层隐藏结构,缺乏可解释性,这种黑盒问题一直困扰着研究人员。

近期,加利福尼亚大学洛杉矶分校 (UCLA) 的研究人员开发了一种可叠加神经网络 (Superposable Neural Network,SNN)。与 DNN 不同,SNN 可以将不同数据输入的结果分开,更好地分析自然灾害中的影响因素。SNN 模型在性能上优于物理和统计模型,并且达到了与最先进 DNN 相似的性能。目前,该研究成果已发表在《Communications Earth & Environment》期刊上,标题为《Landslide susceptibility modeling by interpretable neural network》。

 图 1:该研究成果已发表在《Communications Earth & Environment》

阅读完整论文:

https://www.nature.com/articles/s43247-023-00806-5#Sec4

选取喜马拉雅山最东部滑坡数据

研究人员通过数据分析发现,2004-2016 年山体滑坡造成人员伤亡的情况集中发生在亚洲。喜马拉雅山最东部地区极易发生陡坡滑坡、极端降水、洪水等事件。 研究人员通过将手动划定滑坡区域与半自动检测算法相结合,生成了喜马拉雅山最东部的滑坡清单(滑坡事件的记录或数据集)。在整个 4.19 × 109 平方米的研究区域内,测绘滑坡总数为 2,289 处,面积范围为 900 至 1.96 × 106 平方米。

图 2:喜马拉雅山最东部的研究区域

颜色代表海拔,黄色框表示 N-S (Dibang)、NW-SE(range front)和 E-W (Lohit) 方向的研究区域。

插图表示喜马拉雅东部地区,黑框表示研究区域,深灰色线表示国家边界(右上角)。

如上图所示,研究人员在喜马拉雅山最东部选择了 3 个环境条件不同的地区(Dibang, Lohit 和 range front)测试 SNN 模型的性能和应用。下文中,Dibang、Lohit 和 range front 地区分别被称为 N-S、E-W 和 NW-SE。

数据集地址:

https://doi.org/10.25346/S6/D5QPUA

模型开发:6 步训练一个 SNN

本研究中,为了在保证精确度的同时,规避 DNN 缺乏可解释性问题,研究人员结合模型提取 (model extraction) 和基于特征的方法,生成了一种完全可解释的 additive ANN 优化框架。Additive ANN 是广义加性模型 (generalized additive models, GAM) 的一种。模型提取方法旨在训练一个可解释的 student 模型来模仿 teacher 模型。基于特征的方法旨在分析和量化每个输入特征的影响。

研究人员将这种 additive ANN 架构称为 Superposable Neural Network (SNN) 优化。不同于 DNN 是通过不同层之间的连接来建立特征之间的相互依赖关系,SNN 是通过原始输入特征的乘积函数来建立特征之间的相互依赖关系,两者间的对比如下图所示:

图 3:传统 DNN vs. SNN

x1,x2,…,xn 表示一组 n 个原始特征,χ1,χ2,…,χM 表示一组 M 个组合特征,Y 和 St 分别指 DNN 和 SNN 中的易发性结果。

如图 3 所示,在传统 DNN 中,特征通过网络中的连接来表示和学习,这种依赖关系紧密嵌入在网络结构中,十分复杂并且难以分离。而在 SNN 中,研究人员事先找到并明确地将有助于输出的特征独立输入,每个神经元仅与一个输入相连。

SNN 训练流程图如下:

 图 4:训练 SNN 流程图

图中显示,研究人员采用了两个主要方法, 特征选择模型 (feature-selection model) 和多阶段训练 (multistage training)。特征选择模型用于选择最相关的特征进行后续分析和建模;多阶段训练则指训练过程分为多个阶段,每个阶段都有特定目标和训练策略,逐步优化模型性能。

训练流程可总结为以下步骤:

  1. 多元多项式展开 (Multivariate polynomial expansion):生成复合特征。
  2. 锦标排名 (Tournament ranking):一种自动特征选择方法,用于找出与模型最相关的特征。
  3. 多阶段训练 (MST):一种二阶深度学习技术,用于生成高性能的 teacher 网络。
  4. 分数知识蒸馏 (Fractional knowledge distillation):用于分离每个特征对最终输出的贡献。
  5. 并行知识蒸馏 (Parallel knowledge distillation):将标准的知识蒸馏技术单独应用于与每个特征对应的网络。
  6. 网络叠加 (Network superposition):将与每个特征对应的单层网络合并成一个 SNN。

实验结果

SNN 最高准确率超 99%

根据模型训练中使用的最高级别的复合特征,研究人员将 SNN 分为 3 个不同级别的模型,即 Level-1、Level-2 和 Level-3。实验表明,Level-3 SNN 准确率能达到 SOTA teacher DNN 的 99% 以上,Level-2 SNN 准确率则超过 98%。考虑到两者间准确率的差距很小,研究人员假设 Level-2 SNN 的可解释性对于分析来说是足够的。

接下来研究人员将 Level-1 和 Level-2 SNN 与 SOTA DNN teacher 模型(MST,基于二阶优化的 DNN),以及传统方法(LogR 及 LR)进行比较,所有方法均应用于相同的区域并使用相同的数据,结果如下图所示。

图 5:各模型性能对比

MST: SOTA DNN Teacher 模型

LogR: 逻辑回归 (传统方法)

LR: 似然比(传统方法)

如图所示,SNN 与 MST 模型性能相当,且优于常用的传统模型。3 个研究区域的平均值计算,Level-1 和 Level-2 SNN 的 AUROC 分别为 0.856 和 0.890。Level-2 SNN 的 AUROC 比 LogR (AUROC = 0.848) 和 LR (AUROC = 0.823) 高出约 8%。

AUROC (area under the receiver operating characteristic): 用于评估分类模型的性能指标。AUROC 越接近 1,模型性能越好。

SNN 具备完全可解释性

SNN 是一个完全可解释的模型,其可解释性水平可与线性回归相媲美。

研究人员将研究区域分为滑坡 (ld) 和非滑坡 (nld) 区域。SNN 提供了个体特征对易发性的确切贡献,使量化各特征对滑坡易发性的影响成为可能。通过计算个体特征在 ld 与 nld 区域间的差异,可以确定滑坡的主要控制因素及其相对贡献。

如下图所示,MAP*Slope(平均年降水量和斜坡的乘积)、NEE*Slope(极端降雨事件数量和斜坡的乘积)、Asp*Relief(坡向和局部送风的乘积)及 Asp(坡向)在所有三个区域中都有较大的影响。

图 6:各特征对滑坡易发性的影响

(a, d): N-S 研究区域;(b, e): NW-SE 研究区域;(c, f): E-W 研究区域。

(a–c) 中的条形图按降序表示各特征在滑坡 (ld) 和非滑坡 (nld) 区域中的差异大小;(d–f) 中的饼图表示各特征对滑坡 (ld) 和非滑坡 (nld) 区域的平均影响。

平均年降水量 (MAP)、极端降雨事件数量 (NEE)、坡向 (Asp)、海拔 (Elev)、平均曲率 (CurvM)、到河道的距离 (DistC)、所有断层 (DistF) 和主锋面逆冲和裂缝带 (DistMFT),以及局部送风 (Relief)。

星号 * 表示两个特征的代数乘法。

由于 SNN 独有的能力,研究人员可以分离出主要控制特征的空间分布及其局部影响。

 图 7:各特征空间分布

a-c: 主要特征的空间分布。

d-f: 气候与坡度对易发性的影响。

(a, d): N-S 研究区域;(b, e): NW-SE 研究区域;(c, f): E-W 研究区域。

气候影响较大的地方呈蓝色,坡度影响较大的地方呈红色。

平均年降水量 (MAP)、极端降雨事件数量 (NEE)、坡向 (Asp)、海拔 (Elev)、平均曲率 (CurvM)、局部送风 (Relief)。

星号 * 表示两个特征的代数乘法。

如上图 d-f 所示,在 N-S、NW-SE 及 E-W 区域中,分别大约 74%、54% 和 54% 的地点受气候特征(如极端降雨事件数量、平均年降水量和坡向)的影响程度大于坡度的影响程度,在图中表现为蓝色面积大于红色,表明了气候特征在控制喜马拉雅最东部地区山体滑坡的重要性。由于沿喜马拉雅山脉向东降水率逐渐增加,喜马拉雅山脉东部地区垂直气候变化显著。这种气候梯度很可能影响喜马拉雅山脉东部地区的滑坡易发性。

SNN 代码 GitHub 地址:

https://GitHub.com/geosnn/geosnn.git

SNN 突破滑坡预测难题

本研究作者 Louis Bouchard 和 Seulgi Moon 都是 UCLA 的副教授,Khalid Youssef 在 UCLA 进行博士后研究,Kevin Shao 为 UCLA 地球、行星和空间科学博士研究生。

 图 8:从左到右依次为 Louis Bouchard, Seulgi Moon, Khalid Youssef, Kevin Shao

Kevin Shao 谈到 「深度神经网络 (DNN) 可以提供准确的滑坡发生可能性,但无法确定哪些具体的变量会引起滑坡发生及其原因。」共同第一作者 Khalid Youssef 指出 「问题在于 DNN 的各个网络层在学习过程中不断相互影响,因此将其结果分析清楚是不可能的。该研究希望能够清楚地将不同数据输入的结果分离出来,使其在确定影响自然灾害的最重要因素方面更加有用。」

「类似于用尸检来确定死因,确定滑坡的确切触发因素总是需要田野测量和土壤、水文和气候条件的历史记录,如降雨量和强度,这些数据在像喜马拉雅山脉这样的偏远地区很难获取。但是 SNN 可以确定关键变量并量化它们对滑坡易发性的贡献。」 Seulgi Moon 教授说到。Louis Bouchard 则表示 「不像 DNN 需要强大的计算机服务器来进行训练,SNN 的体积小到可以在苹果手表上运行。」

研究人员计划将他们的工作拓展到世界上其他容易发生滑坡的地区,例如加利福尼亚州。在加州,频繁的山火和地震导致滑坡风险加剧,而 SNN 可以帮助开发早期预警系统,综合考虑多种信号并预测其他一系列地表危险。

参考文章:

[1]https://phys.org/news/2023-06-geologists-artificial-intelligence-landslides.html

[2]https://newsroom.ucla.edu/releases/artificial-intelligence-can-predict-landslides

[3]https://www.bccn3.com/news/ucla-geologists-develop-ai-model-to-predict-landslides

[4]https://static-content.springer.com/esm/art%3A10.1038%2Fs43247-023-00806-5/MediaObjects/43247_2023_806_MOESM1_ESM.pdf

本文首发自 HyperAI 超神经微信公众平台~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/19741.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3+ts+pinia整合websocket

文章目录 一. 目标二. 前置环境三. websocket通用模板 一. 目标 先有实时数据需要展示. 由于设备量极大且要对设备参数实时记录展示.axios空轮询不太适合. 选择websocket长连接通讯. 使用pinia原因是pinia具备共享数据性质.可以作为消息队列缓存数据,降低渲染压力.同时方便多…

一元三次方程求解

一元三次方程求解 题目描述提示输入输出格式输入格式输出格式 输入输出样例输入样例输出样例 算法分析A C 代码 题目描述 有形如: a x 3 b x 2 c x d 0 ax^3bx^2c^xd0 ax3bx2cxd0一元三次方程。给出该方程中各项的系数 ( a a a, b b b,…

P2141 [NOIP2014 普及组] 珠心算测验

题目背景 NOIP2014 普及 T1 题目描述 珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。 某学校的珠心算老师采用一种快速考察珠心算…

无限遍历,Python实现在多维嵌套字典、列表、元组的JSON中获取数据

目录 背景 思路 新建两个函数A和B,函数 A处理字典数据,被调用后,判断传递的参数,如果参数为字典,则调用自身; 如果是列表或者元组,则调用列表处理函数B; 函数 B处理列表&#x…

TabR:检索增强能否让深度学习在表格数据上超过梯度增强模型?

这是一篇7月新发布的论文,他提出了使用自然语言处理的检索增强Retrieval Augmented技术,目的是让深度学习在表格数据上超过梯度增强模型。 检索增强一直是NLP中研究的一个方向,但是引入了检索增强的表格深度学习模型在当前实现与非基于检索的…

MySQL的使用——【初识MySQL】第二节

MySQL的使用——【初识MySQL】第二节 文章目录 MySQL环境变量的配置(如使用Navicat可忽略)使用命令行连接MySQL(如使用Navicat可忽略)步骤注意 NavicatNavicat的下载Navicat的使用连接MySQL新建表 总结总结 MySQL环境变量的配置&a…

SpringCloudAlibaba之Nacos服务的发现与注册中心(二)配置

在nacos中的雪崩保护 和阈值&#xff08;0~1&#xff09;与spring.cloud.nacos.discovery.ephemeral这个配置有关 ephemeral为false&#xff0c;永久实例 epheme为true&#xff0c;临时实例&#xff08;默认&#xff09; 健康实例数/总实例数<保护阈值的时候&#xff0c;…

【秋招】算法岗的八股文之机器学习

目录 机器学习特征工程常见的计算模型总览线性回归模型与逻辑回归模型线性回归模型逻辑回归模型区别 朴素贝叶斯分类器模型 (Naive Bayes)决策树模型随机森林模型支持向量机模型 (Support Vector Machine)K近邻模型神经网络模型卷积神经网络&#xff08;CNN&#xff09;循环神经…

Redis中缓存穿透、击穿、雪崩以及解决方案

Redis中缓存穿透、击穿、雪崩以及解决方案 Redis作为一个高效的内存数据库&#xff0c;提供了缓存能力使得我们能够快速访问数据。然而&#xff0c;在使用Redis作为缓存时&#xff0c;我们可能会面临缓存穿透、缓存击穿和缓存雪崩的问题。接下来&#xff0c;我将详细解释这些现…

【雕爷学编程】MicroPython动手做(28)——物联网之Yeelight 3

知识点&#xff1a;什么是掌控板&#xff1f; 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片&#xff0c;支持WiFi和蓝牙双模通信&#xff0c;可作为物联网节点&#xff0c;实现物联网应用。同时掌控板上集成了OLED…

Stable Diffusion:网页版 体验 / AI 绘图

一、官网地址 Stable Diffusion Online 二、Stable Diffusion AI 能做什么 Stable Diffusion AI绘图是一种基于Stable Diffusion模型的生成式AI技术&#xff0c;能够生成各种类型的图像&#xff0c;包括数字艺术、照片增强和图像修复等。以下是一些可能的应用&#xff1a; …

AX7A200教程(8): HDMI输入和输出显示1080p视频

文章目录 本章节主要将hdmi输入的1080p视频通过ddr3缓存&#xff0c;然后通过hdmi输出口输出到显示屏上显示 一&#xff0c; 突发读写命令 设置读写突发长度为64 //parameter defineparameter WRITE_LENGTH 64;parameter READ_LENGTH 64;parameter IDLE 3d0; …

C#实现结构体与字节流的相互转化

unity项目中&#xff0c;涉及到与C的相互通信&#xff0c;而通信接口为C封好的动态库。所以&#xff0c;传输信息时&#xff0c;需要向C端发送字节流信息。 对此&#xff0c;需将结构体数据转为字节流&#xff0c;其代码如下&#xff1a; public static byte[] StructToBytes(…

如何用DHTMLX组件为Web应用创建甘特图?(二)

dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表。可满足项目管理应用程序的所有需求&#xff0c;是最完善的甘特图图表库。甘特图仍然是项目管理应用程序中最需要的工具之一&#xff0c;DHTMLX Gantt组件提供了能提升研发甘特图功能所需的重要工具。 在这篇…

Kotlin基础(十):函数进阶

前言 本文主要讲解kotlin函数&#xff0c;之前系列文章中提到过函数&#xff0c;本文是kotlin函数的进阶内容。 Kotlin文章列表 Kotlin文章列表: 点击此处跳转查看 目录 1.1 函数基本用法 Kotlin 是一种现代的静态类型编程语言&#xff0c;它在函数的定义和使用上有一些特点…

什么是互斥锁?怎么运用互斥锁?

1、什么是互斥锁&#xff1f; 互斥锁是&#xff08;Mutex&#xff09;是一种用于多线程编程的同步原语&#xff0c;用于确保在多个线程访问共享资源时的互斥性。 在多线程环境中&#xff0c;当多个线程同时访问共享资源时&#xff0c;可能会导致数据的竞争和不一致问题。为了…

国家之间的标准的语言代码

当涉及到标准的语言代码时&#xff0c;以下是一些常见的国家/地区与其对应的语言代码&#xff1a; 美国英语&#xff1a;en-US英国英语&#xff1a;en-GB加拿大英语&#xff1a;en-CA澳大利亚英语&#xff1a;en-AU法国法语&#xff1a;fr-FR德国德语&#xff1a;de-DE中国普通…

改造 ChatGPT-Next-Web 项目重新生成 Docker 镜像

改造 ChatGPT-Next-Web 项目重新生成 Docker 镜像 0.背景1. 修改代码2. 生成 Docker 镜像3. 上传 Docker 镜像4. 运行 Docker 镜像 0.背景 需要通过 ChatGPT-Next-Web 使用自己搭建的 OpenAI API 兼容的服务器&#xff0c;需要对 ChatGPT-Next-Web 项目的少量代码进行改造。 …

无人机自动返航的关键技术有哪些

无人机的广泛应用使得无人机自动返航技术变得至关重要。在各种应对意外情况的背景下&#xff0c;无人机自动返航技术的发展对确保无人机的安全&#xff0c;以及提高其应用范围具有重要意义。接下来&#xff0c;便为大家详细介绍无人机自动返航所运用到的关键技术。 一、定位与导…

20230802-下载jdk1.8、jre

搜索oracle oracle官网 https://www.oracle.com/cn/