数学建模-最优包衣厚度终点判别法-三(Bayes判别分析法和梯度下降算法)

💞💞 前言
hello hello~ ,这里是viperrrrrrr~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹
💥个人主页:viperrrrrrr的博客
💥 欢迎学习数学建模算法、大数据、前端等知识,让我们一起向目标进发!

基于近红外光谱的肠溶片最优包衣厚度终点判别法

       包衣是将片剂的外表面均匀地包裹上一层衣膜的过程,旨在控制药物在胃肠道中的释放部位和速度,遮盖苦味或不良气味,防潮、避光,改善外观等。然而,包衣膜太薄或太厚都不利于药效,并且包衣终点的判断方法目前存在一定的难度。近红外光谱技术(NIRS)是一种高效、无需试剂、无污染的分析方法,通过近红外光谱仪、化学计量学软件和应用模型,能快速、简便地实现多组分检测。为实现包衣终点的准确判断,对数据进行分析并完成以下问题:

问题一:对药品在不同包衣时间段包衣片剂的近红外光谱进行特征峰提取,选择具有有效信息的波长片段,即波长选择。

问题二:分析药品包衣厚度分类规律,建立合适的模型对药品包衣不同厚度进行划分,给出方法及结果,并进行灵敏度分析。

问题三:对于不同的包衣厚度,通过建立模型分析包衣之间的关联性,判别出最优的包衣厚度。

我们本次主要解决问题三。

  问题三

        依据问题一选取的特征峰数据以及问题二的初始分类建立判别模型进行包衣终点判别,最终达到该判别模型能够根据样本不同包衣时间段在各谱区吸收值准确预测该样本是否为最优包衣厚度。

1、Bayes判别

        针对问题三,本文使用问题一提取的特征峰数据和问题二聚类得到的初始分类作为判别模型的自变量和分组标记。通过Bayes判别对数据在分类,通过对比判别前后的差异反馈判别的正确率。当正确率较大时,说明该判别方法准确有效,能过对未知分组样本做准确的判别即是否为最优包衣厚度判别,达到有效预测的目的。除此之外,本文还通过梯度分析算法,采用Goldstein原则确定最优步长,同时利用Wolfe法线性搜索,确定损失函数,即我们想要优化的目标。 最后通过迭代,不断刷新损失函数的梯度和参数,迭代次数越多,越接近目标值。

对于解决不确定统计分析的问题,每个类别的样本取得不同特征向量的概率,实现依据某个待识别向量计算该样本每个类别的概率。对应关系公式4所示:

表3 部分符号说明

贝叶斯分类

贝叶斯公式

每类样本的整体出现概率

先验概率

每个类中样本取得某个具体特征向量的概率

类条件概率

要计算的样本取得某一个具体特征向量时属于每一类的概率

后验概率

计算公式如下:

     (4)

以问题二的聚类结果为基础数据,对问题一所提取的特征峰数据标记初始分组,通过Bayes准则下的判别分析方法,对数据进行判别再次划分类别,通过比对Bayes判别前后样本所属类别与初始分组是否一致,计算判别的准确性[4]。针对问题三,我们选取问题一提取的特征峰数据,对不同的包衣时间段各谱区的吸收值,最优包衣在谱区的吸收值和素片在谱区的吸收值进行Bayes判别。初始组别是根据问题二的聚类结果分组。其中组别1表示包衣不足,组别3为最优包衣组,组别三表示除组别1和组别2外的其他包衣样本的集合。如下表所示,1组中有一个样本被重新分组到了第3组,第2组和第3组分组完全正确。最终该Bayes判别预测模型的正确率高达99.3%。而且我们特别关注的第3组(最优包衣)不存在误判,说明该模型判别效果较佳,能够作为预测模型对未知分组样本做准确的最优包衣终点判别。

表4 分类结果a

案例的类别号

预测组成员

合计

1

2

3

初始

计数

1

51

0

1

52

2

0

51

0

51

3

0

0

47

47

%

1

98.1

.0

1.9

100.0

2

.0

100.0

.0

100.0

3

.0

.0

100.0

100.0

  1. 已对初始分组案例中的 99.3% 个进行了正确分类。

2、梯度分析算法

在梯度下降算法中,采用Goldstein原则确定最优步长,同时利用Wolfe法线性搜索,确定损失函数(objective function),来代表了我们想要优化的目标。起初,我们需要初始化部分参数,然后开始迭代过程。在每一次迭代中,都会计算出当前参数下损失函数的梯度,并利用该梯度来更新我们的初始参数。因为该方法下迭代次数越多,越接近目标值即包衣终点。

由于样本对不同包衣时间段在各谱区的吸收值存在在线性关系,故建立线性模型如下:

(5)

假设其损失函数为:

(6)

下一步对损失函数最小化,即对

求导:

(7)

其中

,所以不难得出:

(8)

结果如下图所示,其中图中黑色曲线表示梯度下降算法下降时的轨迹。

图7 梯度下降算法结果

样本数据通过迭代过程,最终收敛求得反馈数据即为包衣终点判别结果。

5.3.3灵敏度分析

敏感性分析(sensitivity analysis)是指从定量分析的角度研究有关因素发生某种变化对某一个或一组关键指标影响程度的一种不确定分析技术。每个输入的灵敏度用某个数值表示即敏感性指数(sensitivity index)。SALib是一个基于python进行敏感性分析并提供一个解耦的工作流的开源库,负责使用其中一个采样函数(sample functions)生成模型输入,并使用其中一个分析函数(analyze functions)计算模型输出的灵敏度指数。本文使用蒙特卡洛技术实现全局灵敏度分析,基于方差的方法(sabol方法)将输入和输出的不确定性量化为概率分布,并将输出方差分解为可归因于输入变量和和变量组合的部分。因此,通过该输入引起的输出变化量来度量输出对输入变量的敏感度。本文根据不同包衣时间的肠溶片对成分1和成分2波长下的吸收波变化率和包衣时间进行拟合和灵敏度分析,结果如下:

图8 成分1的灵敏度分析

图9 成分2的灵敏度分析

10 灵敏度拟合图

由图可知,在经过二次拟合再三次拟合之后不同包衣时间下的肠溶片对波长的吸收值二阶灵敏度和总灵敏度。(一个二阶灵敏度会涉及两个变量), 而对应他们名字加上_conf 则表示对应的置信度(95%)。从定量分析的角度研究有关因素发生某种变化对某一个或一组关键指标影响程度的一种不确定分析技术。每个输入的灵敏度用某个数值表示即敏感性指数(sensitivity index)每个x对应不同a,b取值下y的均值以及95%置信区间,得到右图为参数a,b的一阶指数。由图可知,再保证其拟合度不变的情况下,随着时间增加其灵敏度越高,但再一定程度之后其灵敏度将会下降。

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

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

相关文章

【算法】bfs解决FloodFill问题

个人主页 : zxctscl 如有转载请先通知 题目 FloodFill算法1. 733. 图像渲染1.1 分析1.2 代码 2. 200. 岛屿数量2.1 分析2.2 代码 3. 695. 岛屿的最大面积3.1 分析3.2 代码 4. 130. 被围绕的区域4.1 分析4.2 代码 FloodFill算法 FloodFill就是洪水灌溉,解…

minio-docker单节点部署SDK测试文件上传下载

目录 一,docker部署minio单节点单磁盘 二,SDK测试上传下载 一,docker部署minio单节点单磁盘 1.拉取镜像 # 下载镜像 docker pull minio/minio 2.查看镜像 docker images 3.启动minio(新版本) 创建本机上的挂载目录,这个可以…

蓝桥杯备赛(C/C++组)

README: 本笔记是自己的备考笔记,按照官网提纲进行复习!适合有基础,复习用。 一、总考点 试题考查选手解决实际问题的能力,对于结果填空题,选手可以使用手算、软件、编程等方法解决,对于编程大…

Cesium 无人机航线规划

鉴于大疆司空平台和大疆无人机app高度绑定,导致很多东西没办法定制化。 从去年的时候就打算仿大疆开发一套完整的平台,包括无人机app以及仿司空2的管理平台,集航线规划、任务派发、实时图像、无人机管理等功能的平台。 当前阶段主要实现了&…

Kubernetes学习笔记12

k8s核心概念:控制器: 我们删除Pod是可以直接删除的,如果生产环境中的误操作,Pod同样也会被轻易地被删除掉。 所以,在K8s中引入另外一个概念:Controller(控制器)的概念,…

STM32电机控制固件架构

目录 一、应用程序剖析 二、面向现场的控制实现体系结构 1、参考计算循环 2、电流调节环路 3、安全回路 一、应用程序剖析 上图显示了由ST MC SDK构建的电机控制应用程序。首先,这样的应用程序是由电机控制工作台生成的软件项目,这要归功于STM32Cube…

中国手机频段介绍

中国目前有三大运营商,分别是中国移动、中国联通、中国电信,还有一个潜在的运营商中国广电,各家使用的2/3/4G的制式略有不同 中国移动的GSM包括900M和1800M两个频段。 中国移动的4G的TD-LTE包括B34、B38、B39、B40、B41几个频段,…

纯css实现switch开关

代码比较简单&#xff0c;有需要直接在下边粘贴使用吧~ html: <div class"switch-box"><input id"switch" type"checkbox"><label></label></div> css&#xff1a; .switch-box {position: relative;height: 25px…

SFP光模块和媒体转换器的区别

SFP光模块和媒体转换器都是光电转换设备。它们是否可以互换使用&#xff1f;它们之间有什么区别&#xff1f; SFP光模块与媒体转换器&#xff1a;它们是什么&#xff1f; SFP模块是一种可热插拔的光模块&#xff0c;用于连接网络交换机。它可以将电信号转换为光信号&#xff…

Java - JDK8 下载 安装教程(Mac M芯片)

下载 JDK 安装包 在个人的电脑上&#xff0c;我是比较喜欢使用 zulu 的 JDK&#xff0c;因为它比较早的支持了苹果的 M1 芯片 不论是版本还是功能都非常齐全&#xff0c;各个系统都有对应版本&#xff0c;基于 OpenJDK&#xff0c;免费&#xff0c;下载也方便 官网下载&…

算法——马尔可夫与隐马尔可夫模型

HMM&#xff08;Hidden Markov Model&#xff09;是一种统计模型&#xff0c;用来描述一个隐含未知量的马尔可夫过程&#xff08;马尔可夫过程是一类随机过程&#xff0c;它的原始模型是马尔科夫链&#xff09;&#xff0c;它是结构最简单的动态贝叶斯网&#xff0c;是一种著名…

Qt---控件的基本属性

文章目录 enabled(控件可用状态)geometry(位置和尺寸)简单恶搞程序 windowIcon(顶层 widget 窗口图标)使用 qrc 机制 windowOpacity(窗口的不透明值)cursor(当鼠标悬停空间上的形状)自定义鼠标图标 toolTip(鼠标悬停时的提示)focusPolicy(控件获取焦点的策略)styleSheet(通过CS…

数据集学习

1&#xff0c;CIFAR-10数据集 CIFAR-10数据集由10个类的60000个32x32彩色图像组成&#xff0c;每个类有6000个图像。有50000个训练图像和10000个测试图像。 数据集分为五个训练批次和一个测试批次&#xff0c;每个批次有10000个图像。测试批次包含来自每个类别的恰好1000个随机…

C++的stack和queue类(三):适配所有容器的反向迭代器

目录 前言 list的反向迭代器 list.h文件 ReverseIterator.h文件 test.cpp文件 前言 迭代器按性质分类&#xff1a; 单向&#xff1a;forward_list双向&#xff1a;list随机&#xff1a;vector / deque 迭代器按功能分类&#xff1a; 正向反向const list的反向迭代器…

uni-app web端使用getUserMedia,摄像头拍照

<template><view><video id"video"></video></view> </template> 摄像头显示在video标签上 var opts {audio: false,video: true }navigator.mediaDevices.getUserMedia(opts).then((stream)> {video document.querySelec…

分布式技术---------------消息队列中间件之 Kafka

目录 一、Kafka 概述 1.1为什么需要消息队列&#xff08;MQ&#xff09; 1.2使用消息队列的好处 1.2.1解耦 1.2.2可恢复性 1.2.3缓冲 1.2.4灵活性 & 峰值处理能力 1.2.5异步通信 1.3消息队列的两种模式 1.3.1点对点模式&#xff08;一对一&#xff0c;消费者主动…

架构设计-订单系统之订单系统的架构进化

1、单数据库架构 产品初期&#xff0c;技术团队的核心目标是&#xff1a;“快速实现产品需求&#xff0c;尽早对外提供服务”。 彼时的专车服务都连同一个 SQLServer 数据库&#xff0c;服务层已经按照业务领域做了一定程度的拆分。 这种架构非常简单&#xff0c;团队可以分开…

Pytorch: 利用预训练的残差网络ResNet50进行图像特征提取,并可视化特征图热图

1. 残差网络ResNet的结构 2.图像特征提取和可视化分析 import cv2 import time import os import matplotlib.pyplot as plt import torch from torch import nn import torchvision.models as models import torchvision.transforms as transforms import numpy as npimgname…

汽车咨询|基于SprinBoot的汽车资讯管理系统设计与实现(源码+数据库+文档)

汽车资讯管理系统目录 基于SprinBoot的汽车资讯管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1a;✌️大厂码农|毕设布道师&#xff…

Promise简单概述

一. Promise是什么&#xff1f; 理解 1.抽象表达&#xff1a; Promise是一门新的技术(ES6规范) Promise是JS中进行异步编程的新解决方案(旧方案是单纯使用回调函数) 异步编程&#xff1a;包括fs文件操作&#xff0c;数据库操作(Mysql)&#xff0c;AJAX&#xff0c;定时器 2.具…