干货 | 基于在线监控数据的非现场监管问题识别模型研究
以下内容整理自2023年夏季学期大数据能力提升项目《大数据实践课》同学们所做的期末答辩汇报。
我们汇报的题目是基于在线监控数据的非现场监管问题识别模型研究,我们的汇报将从五个部分展开。首先是项目背景说明,该项目是为了遏制企业逃避监管行为的发生,快速识别企业可能存在的数据篡改和数据造假的行为,提高识别企业这些行为的效率和准确度。
我们的项目从两个方向进行展开。第一个方向是语义识别,上图展现了我们的整体进度和实施情况,目前已经按照项目前期计划全部完成。首先,我们根据老师给的文本内容划分了水污染、大气污染和其他三种类型,确定了其中弄虚造假的行为,对所有的案例都进行了人工标注和分类并且从这些案例文本中提取了特征作为关键词。
为了提高准确率,我们采用了两种方法,第一种是基于词典匹配的文本分类模型,建立了阴性词典和阳性词典进行全局的精确匹配。建立词典后,我们发现假阴性和假阳性比例较高,因此对词库进行了优化,对数值类和短句类案例文本进行了处理,最后达到了80%的准确率。方法二使用了大语言模型,我们通过调研现有开源的对话类模型可能存在数据泄露及API无法调用的问题,所以我们最后采用了基于RoBERTa的文本分类模型,在我们标注的案例上进行了训练和微调。
接下来是违规行为监控模型。上图是我们模型流程的整体设计,首先对数据进行预处理,通过数理统计模型对整合后污染物排放数据与用电数据进行异常时段分析,并得出异常企业清单进行展示,降低后续的人工筛选负担。机器学习模型主要是对单企业数据异常筛选起到辅助作用,对部分企业的数据异常识别效果良好。
以下是数据预处理部分。这部分问题在于按照原有构想,项目实现的方案为建立污染物排口、排放量及用电数据的一一对应关系,通过识别二者相关性来识别企业是否有弄虚作假现象。但到实际情况中,是无法获得污染物排口到具体用电设备的映射关系的,因此需要对数据进行进一步处理。
我们对数据进行聚合提取,包括对一些污染物排口及用电设备不同类型进行求和处理然后提取出相应的表格。为了便于后续数据统计分析和机器学习,我们对数据进行整合,最终提取出如下的表,每一行是一个样本数据,包括日期、用电量以及各个污染物的数据。
之后首先进行了可视化分析,对单个企业一年内对应的用电与污染数据进行了综合时序分析。结合先验知识,对时序图的部分时段进行了异常特征提取,作为后续判断异常时段的准则。
对于异常判断的算法,我们使用了一种基于滑动窗口的无监督学习方法,判断企业用电数据与污染物排放数据是否出现异常状态。该算法的优点在于其采用无监督的方法对企业数据进行判断,可以不依赖于历史异常规则数据库,从而根据企业需求的特定异常状态进行针对性分析判断,提高准确性。该方法将污染物判断与用电数据多维时间序列全局点异常检测放缩到一个窗口的局部异常检测,并高度利用弄虚作假场景下的相关实际需求完成知识驱动,从而达成目标。
具体的准则就是用电数据正常但污染物排放数据出现连续多日降低,具体的算法是,数据要满足产污端用电数据近d2天数据都大于等于前d1天数据平均值,关键污染物数据中超过m种数据近d2天数据都小于前d1一天数据平均值,此时可以认为用电数据保持正常波动但污染物数据连续多日骤降,认为出现异常。
对于空气污染排放数据中的十余种排放种类,选取了“二氧化硫”、“废气流量”、“氮氧化物”,“非甲烷总烃”四种污染物排放数据作为关键污染物数据进行分析,从企业提供的测试用例中五十余家企业的21234段时间窗口中,最终筛选分析得到了16段时间的异常数据。
之后是机器学习的算法,主要有以下几点问题,不同企业得到的模型泛化性非常差,不同企业污染物种类差异很大,用电量和污染物之间的关系也有很大不同;虽然数据整体量很大,但这是基于多家企业的,实际上单企业一年半的时间跨度只有500条数据;由于第一部分提供的数据量较小,对于同一家公司来说,第一部分提供的标签数据量不足以识别出第二部分的所有异常;实际测试下来还有一部分预测效果并不佳。
我们讨论得出了一些解决方案。首先,在数据预处理和整合阶段,区别于数理统计分析可以针对所有企业,机器学习模型只针对某一家公司构建。第二点,我们经过讨论认定当天用电量基本只与当天污染物排放有关,因此没有采用常见的时序建模,而是采用了常规机器学习模型。我们选定预测用电量这种方法进行异常识别。选取“治污设备总费率”作为标签,使用其他污染物数据以及“产污设备总费率”去预测,当测试集实际偏差大于验证集RMSE时,认为测试集当天数据出现异常;另一方面,我们没有根据精确调参,而是在初步调参的基础上搭建机器学习训练的框架,方便企业后续得到更多优质数据集后训练优质模型。最后,我们使用一个默认的随机森林模型对各个公司数据进行一个初步判断,当初步训练验证集RMSE值较小时认为该企业数据适合机器学习模型。由于不同企业用电量数值波动范围不同,当我们用Ta=RMSE/Xmax这个参数来对比各企业的效果,最终结合具体数据的图像,设定Ta<0.1为企业可考虑使用上述机器学习方法进行异常初步判断的标准,该值越小,识别精确度越高。
上图展示了某公司的部分模型预测数据。从上图可以发现,产污设备总费率以及污染物之间有很明显的一一对应的相关关系,这种数据用机器学习训练的模型Ta值等于0.05,是比较小的,当Ta等于0.2时,该方法效果变得比较差,污染物与产污设备总费率之间也难以看出一一对应的相关关系。
对于效果好的公司数据,我们选择三种机器学习模型进行建模,分别是随机森林、XGboost和MLP,对三种模型分别采用网格搜索法进行初步调参。考虑到目前企业单家公司收集的数据集较少,且无法经过人为筛选,第一部分提供的标签异常量不足,所以我们并未针对现有数据进行进一步调参,而是搭建了用于调参的框架,方便企业后续得到优质数据集后再训练模型。如下图所示,Ta等于0.05公司带异常的测试数据,可以看到2月23号有一个反常的治污用电量增量,通过模型就可以直接识别出来。
最后是项目总结部分。下图分别展示了我们在语义识别和违规监控方向上的成果及未来改进方向。
以上是本次汇报的全部内容。
编辑:文婧
校对:林亦霖
相关文章:

干货 | 基于在线监控数据的非现场监管问题识别模型研究
以下内容整理自2023年夏季学期大数据能力提升项目《大数据实践课》同学们所做的期末答辩汇报。 我们汇报的题目是基于在线监控数据的非现场监管问题识别模型研究,我们的汇报将从五个部分展开。首先是项目背景说明,该项目是为了遏制企业逃避监管行为的发生…...

Spring Cloud Alibaba Gateway 简单使用
文章目录 Spring Cloud Alibaba Gateway1.Gateway简介2. 流量网关和服务网关的区别3. Spring Cloud Gateway 网关的搭建3.1 Spring Cloud Gateway 配置项的说明3.2 依赖导入3.3 配置文件 Spring Cloud Alibaba Gateway 1.Gateway简介 Spring Cloud Gateway是一个基于Spring F…...
两种fifo实现方式的差异
减少数据通路翻转来降低功耗: 以FIFO (当容量较小而使用寄存器作为存储部分)设计为例,虽然理论上可以使用比较简单的数据表项逐次移位的方式,实现FIFO 的先入先出功能,但是却应该使用维护读写指针的方式(数据表项寄存器则不用移位)实现先入先出的功能。因为数据表项逐次…...

孜然单授权系统V1.0[免费使用]
您还在为授权系统用哪家而发愁?孜然单授权系统为您解决苦恼,本系统永久免费。 是的,还是那个孜然,消失了一年不是跑路了是没有空,但是这些都是无关紧要的,为大家带来的孜然单授权系统至上我最高的诚意&…...
kubernetes问题(一)-异常事件
1 pod状态处于Evicted 0/1 现象: 1)kubectl get events发现“failed to garbage collect required amount of images”。 2)同时磁盘空间不足的节点有大量pod处于Evicted 0/1状态,但并未进行重新调度。 原因描述: …...

Android Jetpack组件架构 :LiveData的使用和原理
Android Jetpack组件架构: LiveDate的使用和原理 导言 继Lifecycle组件之后我们接下来要介绍的就是LiveDate组件,所谓LiveDate字面意思上就是有声明的数据,当数据有改动时该组件可以感知到这个操作并将该事件通知到其观察者,这样…...
【学习笔记】Prufer序列
Prufer序列 起源于对 C a y l e y Cayley Cayley定理的证明,但是其功能远不止于此 现在考虑将一棵n个节点的树与一个长度为n-2的prufer序列构造对应关系 T r e e − > P r u f e r : Tree->Prufer: Tree−>Prufer: ①从树上选择编号最小的叶子节点&#x…...

由于找不到msvcr110.dll的5种解决方法
在使用电脑的过程中,我们可能会遇到一些问题,比如打开软件时提示找不到 msvcr110.dll 文件丢失。这通常意味着该文件已被删除或损坏,导致程序无法正常运行。本文将介绍几种解决方案,帮助您解决这个问题。 首先,我们需…...
最长连续递增子序列
给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列。例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8)。 输入格式: 输入第1行给出正整数n(≤105);第2行给出n个整数,…...

Java学习星球,十月集训,五大赛道(文末送书)
目录 什么是知识星球?我的知识星球能为你提供什么?专属专栏《Java基础教程系列》内容概览:《Java高并发编程实战》、《MySQL 基础教程系列》内容概览:《微服务》、《Redis中间件》、《Dubbo高手之路》、《华为OD机试》内容概览&am…...

前端VUE---JS实现数据的模糊搜索
实现背景 因为后端实现人员列表返回,每次返回的数据量在100以内,要求前端自己进行模糊搜索 页面实现 因为是实时更新数据的,就不需要搜索和重置按钮了 代码 HTML <el-dialogtitle"团队人员详情":visible.sync"centerDi…...

Android Studio 的android.jar文件在哪儿
一般在:C:\Users\admin\AppData\Local\Android\Sdk\platforms\android-33下(不一定是33,这个得看你Android Studio->app->builde.gradle的targetSdk是多少) 怎么找: 1.打开Android Studio 粘贴地址后࿰…...

Elasticsearch 部署学习
文章目录 Elasticsearch 部署学习1. 单节点部署 elasticsearch1.1 部署 jdk1.2 下载 elasticsearch1.3 上传文件并修改配置文件1.4 启动1.5 问题总结1.6 浏览器验证 2. 集群部署 elasticsearch3. 常用命令4. Elasticsearch kibana安装:one: 参考部署文档:two: 下载对应版本的安…...

nodejs 如何在npm发布自己的包 <记录>
一、包结构 必要结构: 一个包对应一个文件夹(文件夹名不是包名,但最好与包名保持一致,包名以package.json中的name为主)包的入口文件index.js包的配置文件package.json包的说明文档README.md 二、需要说明的文件 1.配…...
移植RTOS的大体思路
最首先当然是去官网看看是不是已经支持目标芯片啦,没有的话,就需要自己手动移植了 获取源码 一般可以从rtos官网或者GitHub上获取源码 确认源码结构 这种有官方文档说明,需要修改的一般都是BSP和libcpu相关文件夹中的内容 CPU架构移植 …...
FPGA到底是什么?
首先只是凭自己浅略的了解,FPGA好像也是涉及到了开发板,单片机之类的东西,和嵌入式十分相似,但是比嵌入式更高级的东西。 肯定有很多小伙伴如我一样,只是听说过FPGA,听别人说的传呼其神,那么它到…...

算法-单词搜索 II
算法-单词搜索 II 1 题目概述 1.1 题目出处 https://leetcode.cn/problems/word-search-ii/description/?envTypestudy-plan-v2&envIdtop-interview-150 1.2 题目描述 2 DFS 2.1 解题思路 每个格子往上下左右四个方向DFS,拼接后的单词如果在答案集中&…...

怒刷LeetCode的第15天(Java版)
目录 第一题 题目来源 题目内容 解决方法 方法一:哈希表双向链表 方法二:TreeMap 方法三:双哈希表 第二题 题目来源 题目内容 解决方法 方法一:二分查找 方法二:线性搜索 方法三:Arrays类的b…...

Android开发MVP架构记录
Android开发MVP架构记录 安卓的MVP(Model-View-Presenter)架构是一种常见的软件设计模式,用于帮助开发者组织和分离应用程序的不同组成部分。MVP架构的目标是将应用程序的业务逻辑(Presenter)、用户界面(V…...

day2作业
1,输入两个数,完成两个数的加减乘除 #输入两个数,完成两个数的加减乘除 num1int(input("请输入第一个数:")) num2int(input("请输入第二个数:")) print(str(num1)str(num2)str(num1num2)) print(str(num1)-str(num2)str…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...

VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...

uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...

C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...

MySQL 知识小结(一)
一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库,分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷,但是文件存放起来数据比较冗余,用二进制能够更好管理咱们M…...

宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...