电子鼻毕业论文

面向压埋探测的人体代谢气体识别方法的研究与应用

实现对非目标气体的检测

数据预处理
(1a)标准化
在这里插入图片描述
将采集到的数据先进行变换,统一数量级。其中,xij为第j个传感器的第i个采样值;xj为第 j 个气体传感器的所有采样值,其中i ∈ [1, n],j ∈ [1, m]。m为传感器数目,n为采样总数;`xj表示 xj的平均值;σxj表示xj的标准差。Z-score 标准化法则是使得处理后的数据均值变为0,方差变为 1。这种方法使得数据更容易比较和分析,同时保持了数据原有特性。
(1b)基线特征提取
基线特征,采用相对电阻值(Relative resistance,RV),即当前 i 时刻传感器响应电阻值与传感器初始基线电阻的平均值。其中,vi是每个特定传感器在时间i时的电阻值,v0是每个特定传感器的基线电阻值。计算公式为:
在这里插入图片描述
构造最优特征集合
(2a)提取可用特征
处理后的数据,特征可以分别从原始数据曲线,曲线拟合,变换域中提取,其中原始数据曲线特征的方法即从传感器原始响应曲线中提取零碎特征信号,包括最大值,均值,积分,导数,面积值,上升时间,下降时间,上升斜率,下降斜率等稳态响应和瞬态响应。曲线拟合方法主要有指数函数拟合、正弦函数拟合,傅里叶函数拟合等,变换域主要包括傅里叶变换和小波变换等。在原始数据曲线中最大值,均值最常用,在曲线拟合中通常需要通过对变量间物理概念的学习和对专业知识的深入理解来确定函数的基本类型或者通过观察实验数据曲线的总趋势来确定函数的类型。在变换域中一般使用小波变换。从这三种特征提取方法中选择一定数量的方法进行特征提取。

(2b)使用相关系数法选择特征

训练KPCA+MRVM模型

训练GMM(高斯混合模型)
假设有N种不同的气体标签,P个传感器。则构建高斯混合库需要构建N个高斯混合模型。
使用EM算法训练参数

基于主动学习的气体传感器漂移抑制方法

利用主动学习的方式对数据集进行不断更新,使得分类器始终能使用当前传感器
主动学习是一种机器学习的方法,旨在通过有选择性地标注最有信息价值的样本,从而最小化需要标注的数据量,同时达到最大化分类准确度的目标。
数据样本—(样本选择策略)挑选样本—专家标记----训练
样本选择策略包括不确定策略+随机策略
一般应用流程为:

  1. 使用漂移前样本初始化初始分类器 C。
  2. 当漂移样本达到一定数量后,使用样本选择策略选出高价值的漂移样本,
    即对分类器性能提升最有帮助的样本,将这些样本交给人工专家进行标记,从而
    生成漂移矫正集 L。
  3. 使用漂移校正集 L 对分类器 C 进行更新,从而提升分类器 C 在持续漂移
    环境下的分类性能。
    重复以上步骤,标签获取、漂移校正和识别测试三个核心步骤能够持续循环
    地进行,这样就组成了一个通用的一般主动学习方法下的气体传感器漂移矫正流

首先使用K-means算法进行分类,只保存微簇信息𝑀𝐶 = (𝑳𝑺, 𝑺𝑺, 𝑺, ω, 𝑇)。其中 LS 和 SS 为 n 维向量, LSj代表微簇中类别为 j
的样本的特征值线性和, SSj则为微簇中类别 j 样本的平方和,其计算方法如公式
3-1 和公式 3-2 所示。 S 是由 N 个元素组成的一维向量,其记录了每个类别的样本
数量, S 的所有元素之和即为微簇内样本总数。ω为微簇权重,其主要用于模型
更新阶段评估微簇的重要性,在初始化阶段微簇形成时,设置其初始值为 1。 T
记录模型的创建时间,用来比较微簇间的新旧程度,并用于模型更新阶段的微簇
权重调整机制、微簇合并机制以及微簇删除机制。

分类过程:
将概率第一大的类别与概率第二大的类别的差值与对应的阈值比较,若大于则分类正确,小于且分类正确更改阈值,若分类错误进行重新规划标签,加入缓冲区
更新过程
当缓冲区满了之后,删除或者合并一些簇,为新簇增加空间,包含飘移样本。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java课题笔记~Maven基础

2、Maven 基础 2.1 Maven安装与配置 下载安装 配置:修改安装目录/conf/settings.xml 本地仓库:存放的是下载的jar包 中央仓库:要从哪个网站去下载jar包 - 阿里云的仓库 2.2 创建Maven项目

计算机网络——学习笔记

付费版:直接在上面的CSDN资源下载 免费版:https://wwsk.lanzouk.com/ijkcj13tqmyb 有疑问或者错误的地方可以在评论区指出,我会尽快回复 示例图:

SOC FPGA之HPS模型设计(一)

目录 一、建立HPS硬件系统模型 1.1 GHRD 1.2 从0开始搭建HPS 1.2.1 FPGA Interfaces 1.2.1.1 General 1.2.1.2 AXI Bridge 1.2.1.3 FPGA-to-HPS SDRAM Interface 1.2.1.4 DMA Peripheral Request 1.2.1.5 Interrupts 1.2.1.6 EMAC ptp interface 1.2.2 Peripheral P…

[JAVAee]线程池

目录 线程池的作用 线程池的使用 线程池的创建方式 线程池的解析 ①Executors与ThreadPoolExecutor ②ThreadPoolExecutor线程池的构造方法 ③RejectedExecutionHandler线程池的拒绝策略 固定线程数量线程池的简单模拟实现 线程池的作用 对于线程的使用,可能会频繁的创建…

首批!棱镜七彩通过汽车云-汽车软件研发效能成熟度模型能力评估

2023年7月25-26日,由中国信息通信研究院、中国通信标准化协会联合主办的“2023年可信云大会”隆重召开。会上,在中国信息通信研究院云计算与大数据研究所副所长栗蔚的主持下,中国信通院发布了“2023年上半年可信云评估结果”,并由…

uniapp checkbox radio 样式修改

文章目录 通过查看代码,发现 before部分是设置样式的主要属性 我们要设置的话,就要设置checkbox::before的属性。 其中的content表示内容,比如内部的对勾 那么我们设置的时候,比如设置disabletrue的时候或者checkedtrue的时候&…

onnxruntime (C++/CUDA) 编译安装

一、克隆及编译 git clone --recursive https://github.com/Microsoft/onnxruntime cd onnxruntime/ git checkout v1.8.0如果克隆的时候报错: 执行以下: apt-get install gnutls-bin git config --global http.sslVerify false git config --global h…

Git初始化

查看git版本 git --version 设置Git的配置变量 方法: 修改全局文件(用户主目录下.gitconfig)修改系统文件(如/etc/gitconfig) 用户姓名和邮件地址 修改用户名和邮件地址 git config --global user.name "用…

《JeecgBoot系列》JeecgBoot(ant-design-vue)实现筛选框:支持下拉搜索+下拉多选+表字典(支持条件查询)功能

JeecgBoot(ant-design-vue)实现筛选框:支持下拉搜索下拉多选表字典(支持条件查询)功能 JSearchMultiSelectTag.vue源文件 一、需求介绍 在使用JeectBoot(ant-design-vue)设计表单时,需要实现下拉搜索下拉多选表字典(支持条件查询)。 但是系统目前有两…

PysparkNote006---pycharm加载spark环境

pycharm配置pyspark环境,本地执行pyspark代码 spark安装、添加环境变量不提了 File-Settings-Project-Project Structure-add content root添加如下两个路径 D:\code\spark\python\lib\py4j-0.10.7-src.zipD:\code\spark\python\lib\pyspark.zip 2023-07-26 阴 于…

linux(进程)[6]

管理概念 先描述,再组织 进程 启动一个软件就相当于启动了一个进程 Linux下执行一条命令就在系统层面创建了一个进程!! 如何管理 进程对应的代码和数据 进程对应的PCB结构体 PCB(process control block) 在Linu…

Banana Pi BPI-KVM – 基于 Rockchip RK3568 SoC 的 KVM over IP 解决方案

Banana Pi 已经开始开发基于 Rockchip RK3568 SoC 的 BPI-KVM 盒,但它不是迷你 PC,而是 KVM over IP 解决方案,旨在远程控制另一台计算机或设备,就像您在现场一样,例如能够打开和关闭连接的设备、访问 BIOS 等。 商业…

数据结构之顺序表

一、概念及结构 顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存 储。在数组上完成数据的增删查改。 顺序表一般可以分为: 1. 静态顺序表:使用定长数组存储元素。 2. 动态顺序表:使用动…

【SEO基础】百度权重是什么意思及网站关键词应该怎么选?

百度权重是什么意思及网站关键词应该怎么选? 正文共:3253字 20图 预计阅读时间:9分钟 ​ 1.什么是网站权重? 这段时间和一些朋友聊到网站权重以及关键词,发现蛮多人对于这两个概念的认知还是存在一些错误的&#xf…

数学分析:流形的线性代数回顾

因为是线性的,所以可以把所有的系数都提取出去。这也是多重线性代数的性质。可以看成基本的各项自变量的乘法。 这里可以看到两个不同基向量下,他们的坐标转化关系。 引出了张量积,也就是前面提到的内容。 对偶空间的例子总是比较美好。 因为…

【EI/SCOPUS会议征稿】第三届物联网与机器学习国际学术会议(IoTML 2023)

第三届物联网与机器学习国际学术会议(IoTML 2023) 2023 3rd International Conference on Internet of Things and Machine Learning 2023年物联网与机器学习国际学术会议(IoTML 2023)将于2023年9月15-17日在新加坡召开。会议…

matlab使用教程(5)—矩阵定义和基本运算

本博客介绍如何在 MATLAB 中创建矩阵和执行基本矩阵计算。 MATLAB 环境使用矩阵来表示包含以二维网格排列的实数或复数的变量。更广泛而言,数组为向量、矩阵或更高维度的数值网格。MATLAB 中的所有数组都是矩形,在这种意义上沿任何维度的分量向量的长度…

【Lua学习笔记】Lua进阶——Table(4)继承,封装,多态

文章目录 封装继承多态 封装 // 定义基类 Object {}//由于表的特性,该句就相当于定义基类变量 Object.id 1//该句相当于定义方法,Object可以视为定义的对象,Test可以视为方法名 //我们知道Object是一个表,但是抽象地看&#xff…

Jenkins构建完成后发送消息至钉钉

钉钉群的最终效果: 1、jenkins安装DingTalk插件,安装完成后重启 2、配置钉钉插件 参考官网文档:快速开始 | 钉钉机器人插件 系统管理 拉到最下面,可以看到钉钉配置 按照如下配置钉钉机器人 配置完成可以点击测试按钮&#xff0…