机器学习在预测脊髓型颈椎病中的应用:一项28名参与者的事后初步研究
机器学习在预测脊髓型颈椎病中的应用:一项28名参与者的事后初步研究
Machine Learning for the Prediction of Cervical Spondylotic Myelopathy: A Post Hoc Pilot Study of 28 Participants
简单说:训练了两个模型:1)预测脊髓型颈椎病诊断(分类);2)预测CSM严重程度(输出是线性的)。
摘要
方法:共14例脊髓型颈椎病患者和14例对照组接受颈椎影像学检查。训练了两种不同的人工神经网络模型;1)预测脊髓型颈椎病诊断;2)预测CSM严重程度。模型1包括6个输入,包括3个常用的评估脊髓压缩的成像量表,以及3个客观的磁共振成像测量。模型1预测CSM诊断的结果是二元的。模型2由23个输入变量组成,这些输入变量来自压缩区域白质束的概率体积映射测量。模型2的结果是线性的,可以预测改良的日本骨科协会(mJOA)评分。
结果:采用模型1预测脊髓型颈椎病。训练模型的平均交叉验证准确率为86.50%(95%置信区间85.16为87.83%),中位数准确率为90.00%。每次重复计算曲线下面积(AUC)。每次重复的平均AUC为0.947,中位数AUC为1.0。平均敏感度为90.25%,特异度为85.05%,阳性预测值为81.58%,阴性预测值为91.94%。模型2用于mJOA建模。mJOA模型预测分数,平均误差和中值误差分别为0.29 mJOA点和0.08 mJOA点,每批平均误差为0.714 mJOA点。
方法
共有13名脊髓型颈椎病患者和15名对照组接受了颈椎影像学检查。所有入选的脊髓型颈椎病患者都是在一家大型学术机构由经委员会认证的执业神经外科医生根据临床和影像学检查结果诊断的(表1)。入选标准包括以下所有脊髓型颈椎病患者:典型脊髓型颈椎病症状,包括无力、反射亢进或协调性改变的检查结果;脊柱压迫的影像学征象;Nurick等级I-IV18;排除标准包括:年龄<21或>80,共病性神经疾病(如多发性硬化症),怀孕或哺乳期,活动性全身风湿性疾病,活动性周围或血管神经病变,以及迫切需要手术。这项研究是在大学机构审查委员会的批准下进行的。
图像采集与分析
所有成像数据均由配备64通道头/颈线圈的3.0特斯拉西门子Prisma磁共振扫描仪(Siemens, Erlangen, Germany)收集。受试者仰卧于扫描仪床上,通过定位器扫描确定颈椎椎间盘的位置(C2-3、C3-4、C4-5、C5-6、C6-7和C7-T1)。采用多回声梯度回声序列(重复时间¼300 ms,回声时间¼18 ms,反转角度¼30?180年,视野¼?180年,矩阵大小¼384 ?384,平面分辨率¼0.47?0.7 mm2,切片厚度¼4 mm,平均数量¼2)。
模型1:预测CSM诊断
以事后方式审查图像,并使用 3 个常见的文献量表(Kang、Nagata 和 Chang)以及 3 个 MRI 测量值(矢状管宽度、椎体高度与椎间盘高度比,以及C5 椎体矢状面宽度)全部位于 MRI 上最大压缩点。这 6 个特征用于使用 Keras 开源 Python 包(https://keras.io)训练深度神经网络分类模型(图 1)。该模型使用交叉验证进行训练和测试,其中数据被随机划分为训练(n=18)和测试(n=10)数据集。在训练中,18 张训练图像通过一系列 7 层进行馈送,每一层都有不同程度的前向和后向通信节点(神经元)。偶尔引入 Dropout 层,防止一定比例的神经元在训练期间的不同时间点向前或向后通信,以防止过度拟合并保持模型的可推广性。然后使用 4 次和 25 次迭代的批量大小在总共 200 个随机分区中训练和测试模型来训练模型。平均和中位数交叉验证的准确性、敏感性、特异性、阳性预测值和阴性预测值用于评估模型性能。

模型2:预测CSM严重程度
使用脊髓工具箱(3.0.7版本)、https://sourceforge.net/projects/spinalcordtoolbox/ 和前面描述的PAM50脊髓模板对每个横切切片的图像进行进一步分析。对脊髓区域进行分段,收集每个感兴趣区域的体积和横断面测量值。感兴趣的区域包括前/后径、脊髓偏心、腹侧皮质脊髓束、腹侧网状脊髓束、内侧网状脊髓束、外侧皮质脊髓束、侧网状脊髓束、腹侧网状脊髓束、和内侧纵束(每个用体素测量体积,用毫米测量)。以下的性别、年龄、身高、体重、水平和前面提到的参数被输入到我们的深度神经网络中,共包含23个输入变量,唯一的输出变量是mJOA评分(modified Japanese Orthopedic Association)。图2概述了模型2规范。模型的训练数据被划分为2个数据集:训练(n¼78)和测试(n¼26)。与前面描述的类似,78个训练数据点被输入到9层,每层都有不同程度的节点(神经元)。就像模型1中那样添加了零星的退出层,以防止过拟合。完成后,使用3次批量和1250次迭代对模型进行了进一步的培训和测试。类似地,这个过程总共重复了150次,以更好地描述人口数据。输出定义为mJOA分数的数值预测。基于均方误差评估模型性能,并计算后续预测中的平均误差。误差定义为预测mJOA尺度值与实际mJOA尺度值的总差值。

总结
机器学习为脊髓型颈椎病的预测和诊断提供了一种很有前景的方法。在这项初步研究中,在回顾了仅18张图像的特征后,我们的分类模型能够预测来自对照的CSM,中位精度为90%,并且仅使用图像特征预测mJOA得分在0.4分以内。尽管还只是初步研究,但目前的研究表明,使用机器学习来更好地改善脊髓型颈椎病以及其他颈椎疾病的诊断和预测方法是有希望和可行的。
相关文章:
机器学习在预测脊髓型颈椎病中的应用:一项28名参与者的事后初步研究
机器学习在预测脊髓型颈椎病中的应用:一项28名参与者的事后初步研究 Machine Learning for the Prediction of Cervical Spondylotic Myelopathy: A Post Hoc Pilot Study of 28 Participants 简单说:训练了两个模型:1)预测脊髓型颈椎病诊断࿰…...
【智能计算数学】微积分
高数问题解决流程引例:回归回归引例:分类分类线性可分FLD线性不可分智能计算讨论范围下降法为什么要用下降法?- 解析解很难写出公式或很复杂难计算有哪些常用的下降法?- 梯度下降&高斯-牛顿法梯度下降(Gradient De…...
win10+RTX4070ti+libtorch部署
环境cuda 11.7、cudnn8.6.0、libtorch1.13.1cu117 注意: 1)libtorch官网进不去的可直接下载 Release version https://download.pytorch.org/libtorch/cu117/libtorch-win-shared-with-deps-1.13.1%2Bcu117.zip Debug version https://download.pytorch.…...
【Python百日进阶-Web开发-Vue3】Day518 - Vue+ts后台项目5:用户列表
文章目录 一、获取用户列表的数据1.1 定义用户列表和角色列表的接口src/request/api.ts1.2 获取用户列表数据src/views/UserView.vue二、定义用户列表数据类型2.1 src/type/user.ts三、展示用户列表内容3.1 element-plus中的Select 选择器3.2 element-plus中的表格插槽3.3 展示…...
Linux内核转储---kdump原理梳理
文章目录Kexec和Kdump设计的区别kexeckdumpKdump的执行流程kexec的实现用户空间kexec内核空间vmcoreKdump的实现可以分为两部分:内核和用户工具。内核提供机制,用户工具在这些机制上实现各种转储策略,内核机制对用户工具的接口是一个系统调用…...
【C++】从0到1入门C++编程学习笔记 - 实战篇:演讲比赛流程管理系统
文章目录一、演讲比赛程序需求1.1 比赛规则1.2 程序功能1.3 程序效果图:二、项目创建2.1 创建项目2.2 添加文件三、创建管理类3.1创建文件3.2 头文件实现3.3 源文件实现四、菜单功能4.1 添加成员函数4.2 菜单功能实现4.3 测试菜单功能五、退出功能5.1 提供功能接口5…...
04 OpenCV位平面分解
1 基本概念 位平面分解的核心思想是将图像的每一个像素分解为多个二进制位,分别存储在不同的位平面上。例如,如果一个图像是8位深度的,则可以分解为8个位平面,每个位平面上存储一个二进制位。 位平面分解在图像压缩中有着重要的…...
Onvif协议如何判断摄像机支持 —— 筑梦之路
有人就问什么是Onvif协议呢? 全称为:Open Network Video Interface Forum.缩写成Onvif。 翻译过来是:开放型网络视频接口论坛,目的是确保不同安防厂商的视频产品能够具有互通性,这样对整体安防行业才是良性发展。 现…...
情人节new一个对象给你
今天情人节,有没对象的吗?假设你不知道new怎么用,每个人都有两种身份,一种没对象的人,这个时候new一个对象给你,一种是有对象的人,这个delete对象。等你学完这个new和delete知识点,无…...
linux篇【15】:应用层-网络https协议
目录 一.HTTPS介绍 1.HTTPS 定义 2.HTTP与HTTPS (1)端口不同,是两套服务 (2)HTTP效率更高,HTTPS更安全 3.加密,解密,密钥 概念 4.为什么要加密? 5.常见的加密方式…...
索引-性能分析-explain
explain 执行计划 explain 执行计划各字段含义 1)id 就是代表 sql 的执行顺序或者表的执行顺序;id相同从上往下执行,id不同,id值越大越先执行;(注:有子查询时就会出现sql执行顺序)…...
mbedtls加密组件使用示例
1 mbedtls aes组件的使用 1.1 AES ECB加解密接口使用 int main(int argc, char *argv[]) {char key[256];char *inbuf calloc(1, 257);char *outbuf calloc(1, 257);char *buf calloc(1,257);char *tmp_outbuf outbuf;char *tmp_buf buf;mbedtls_aes_context aes_ctx;mb…...
如何量测太阳光模拟器的光谱致合度?
太阳模拟器是根据国际法规JIS、IEC60904、美国材料试验协会开发设计的AAA级太阳模拟器。对于100毫米100毫米和200毫米200毫米的光斑尺寸,光斑强度的输出功率范围可以从0.1到1太阳光强度。此外,还提供了灵活的出光方向,以满足用户的研究需求&a…...
网络安全领域中CISP证书八大类都有什么
CISP注册信息安全专业人员 注册信息安全专业人员(Certified Information Security Professional),是经中国信息安全产品测评认证中心实施的国家认证,对信息安全人员执业资质的认可。该证书是面向信息安全企业、信息安全咨询服务…...
17- 梯度提升回归树GBRT (集成算法) (算法)
梯度提升回归树: 梯度提升回归树是区别于随机森林的另一种集成方法,它的特点在于纠正与加强,通过合并多个决策树来构建一个更为强大的模型。该模型即可以用于分类问题,也可以用于回归问题中。在该模型中,有三个重要参数分别为 n_…...
05 OpenCV色彩空间处理
色彩空间(Color Space)是一种用于描述颜色的数学模型,它将颜色表示为多维向量或坐标,通常由三个或四个独立的分量来表示。不同的色彩空间在颜色的表示方式、可表达颜色的范围、计算速度和应用场景等方面存在差异,不同的…...
【CS224图机器学习】task1 图机器学习导论
前言:本期学习是由datawhale(公众号)组织,由子豪兄讲解的202302期CS224图机器学习的学习笔记。本次学习主要针对图机器学习导论做学习总结。1.什么是图机器学习?通过图这种数据结构,对跨模态数据进行整理。…...
Powershell Install SQL Server 2022
前言 SQL Server 2022 (16.x) 在早期版本的基础上构建,旨在将 SQL Server 发展成一个平台,以提供开发语言、数据类型、本地或云环境以及操作系统选项。 SQL Server Management Studio (SSMS) 是一种集成环境,用于管理从 SQL Server 到 Azure SQL 数据库的任何 SQL 基础结构…...
Jetson NX2 装机过程
1.固态硬盘安装完成后,系统配置 df -h 查看硬盘使用情况 2.查看Jetson NX的IP地址,以下两个都行 ifconfig ip address show 3.Jetson NX2安装arm64的annaconda3,安装有问题报错illegal instruction,未解决。 4.VNC远程登录 …...
初始C++(四):内联函数
文章目录一.内联函数概念二.内联函数用法三.内联函数的特性四.内联函数和宏一.内联函数概念 以inline修饰的函数叫做内联函数,编译时C编译器会在调用内联函数的地方展开,没有函数调用建立栈帧的开销,内联函数提升程序运行的效率。 二.内联函…...
UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
JavaScript 中的 ES|QL:利用 Apache Arrow 工具
作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...
打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用
一、方案背景 在现代生产与生活场景中,如工厂高危作业区、医院手术室、公共场景等,人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式,存在效率低、覆盖面不足、判断主观性强等问题,难以满足对人员打手机行为精…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...
