人工智能 (AI) 应用:一个高精度ASD 诊断和照护支持系统
自闭症谱系障碍(ASD)是一种多方面的神经发育状况,影响全球大约1/100的儿童,而在中国,这一比例高达1.8%(引用自《中国0~6岁儿童孤独症谱系障碍筛查患病现状》),男童为2.6%,女童为0.9%。ASD的特点是社交互动困难、沟通挑战和重复行为。患有ASD的儿童通常会出现感官敏感性,并表现出症状严重程度差异很大的广泛谱系。自闭症患病率的增加使其成为关键的公共卫生问题,突显了早期诊断和干预的必要性。尽管对ASD的理解有所进步,但由于每个个体表现出的多样性,其管理仍然复杂。

ASD的诊断和治疗需要多学科方法,涉及各种医疗专业人员,他们在其中扮演着重要角色。诊断过程通常始于儿科医生根据发育里程碑进行初步筛查。如果发现问题,儿童会被转介给心理学家等专家,使用标准化测试和行为观察进行全面评估。言语治疗师评估和解决沟通困难,而职业治疗师专注于提高日常生活技能和感官处理。精神病学家可能会管理如焦虑或ADHD等共同发生的疾病,心脏病学家可能参与解决任何相关的身体健康问题。这种协作方法对于制定满足每个儿童独特需求的定制治疗计划至关重要。
1 ASD 诊断和治疗的现状
1.1 传统 ASD 诊断方法的局限性
- 主观性: 传统诊断方法主要依赖于临床评估和行为观察,容易受到评估者经验和主观判断的影响,导致诊断结果不一致。
- 缺乏客观指标: 传统诊断方法缺乏客观的生理或生物标志物,难以对 ASD 进行早期和准确的诊断。
- 耗时费力: 传统诊断方法需要多次评估和测试,耗时费力,增加了患者的负担。
1.2 传统 ASD 治疗方法的挑战
- 缺乏个性化: 传统治疗方法往往采用标准化的方案,难以满足每个患者的个体化需求。
- 缺乏持续监测: 传统治疗方法缺乏对患者治疗进展的持续监测和评估,难以及时调整治疗方案。
- 缺乏有效沟通: 医疗专业人员之间缺乏有效的沟通和协调,难以提供连贯的治疗服务。
2 方法
2.1 数据集
本研究使用了包含自闭症儿童和神经典型儿童步态和全身运动分析的 3D 数据集。该数据集使用 Kinect v2 摄像机收集,包括 3D 关节位置、骨架运动视频、关节轨迹视频和三星 Note 9 后置摄像头拍摄的颜色视频。数据集包含 700 个文件夹,其中自闭症儿童和神经典型儿童各占一半,每个群体包含 350 个文件夹。此外,数据集还包含 9 名重度自闭症儿童的颜色视频,以增强科学研究的深度。

2.2 面部和身体表情提取
本研究使用了迁移学习技术,利用多个预训练的卷积神经网络 (CNN) 模型来提取面部和身体表情。主要考虑的模型包括:
- VGG19
- Xception
- ResNet50V2
- MobileNetV2
- EfficientNetB0
这些模型被选择是因为它们在图像分类任务中表现出色。
2.3 数据预处理
- 图像尺寸调整: 将每个图像调整到符合所选 CNN 模型输入要求的尺寸。
- 图像归一化: 将像素值缩放到 0 到 1 的范围,以提高模型的训练效率。
- 数据增强: 使用旋转、翻转和缩放等数据增强技术来增加数据集的大小和多样性,并防止过拟合。
2.4 迁移学习
- 模型初始化: 使用在 ImageNet 数据集上预训练的模型权重初始化 CNN 模型。
- 模型修改: 将模型的最后几层修改为用于二元分类的层,即区分自闭症儿童和神经典型儿童。
2.5 模型训练
- 数据集划分: 将数据集划分为训练集、验证集和测试集。
- 超参数调整: 通过消融研究调整学习率、批大小和训练周期等超参数。
- 优化器选择: 选择 Adagrad 优化器,因为它在处理稀疏数据方面效率较高。
- 损失函数: 使用二元交叉熵损失函数来计算预测值和实际值之间的差异。
- 反向传播: 使用反向传播算法来更新模型权重。
- 早停机制: 使用早停机制来防止过拟合。
2.6 伦理考虑和偏差缓解
本研究采取了以下措施来确保 AI 模型的伦理性和公平性:
- 数据匿名化: 对所有患者数据进行匿名化处理,以保护个人隐私。
- 数据安全: 将数据存储在安全、加密的数据库中,并限制对数据的访问权限。
- 模型透明度: 提供模型算法和方法的详细文档,并使用可解释 AI (XAI) 技术来解释模型的决策过程。
- 偏差缓解: 通过收集多样化的数据集和使用偏差检测和缓解技术来减少模型偏差。
3 评估及结论
3.1 评估指标
- 准确率 (Accuracy): 准确率衡量模型预测结果的总体正确性,计算公式为:准确率 = (真阳性 + 真阴性) / (总样本数)
- 精确率 (Precision): 精确率衡量模型正确识别自闭症儿童的比例,计算公式为:精确率 = 真阳性 / (真阳性 + 假阳性)
- 召回率 (Recall): 召回率衡量模型识别所有自闭症儿童的能力,计算公式为:召回率 = 真阳性 / (真阳性 + 假阴性)
- AUC (Area Under the Curve): AUC 衡量模型区分自闭症儿童和神经典型儿童的能力,取值范围为 0 到 1,值越高表示模型的区分能力越强。
3.2 评估过程
- 数据集划分: 将数据集划分为训练集、验证集和测试集。训练集用于模型训练,验证集用于模型调整,测试集用于最终模型评估。
- 模型训练: 使用训练集训练 AI 模型,并进行超参数调整,以提高模型性能。
- 模型评估: 使用验证集和测试集评估模型性能,并计算准确率、精确率、召回率和 AUC 等指标。
3.3 评估结论

- 模型性能: Xception 和 ResNet50V2 模型在提取自闭症儿童面部和身体表情方面表现出色,并取得了较高的诊断准确率。MobileNetV2 模型也表现出良好的泛化能力,但精确率和召回率略低于前两种模型。VGG19 和 EfficientNetB0 模型则存在一定的过拟合问题,需要进一步优化。
- 数据连续性: 本研究强调了连续收集和分析自闭症儿童面部和全身表情数据的重要性,以全面了解 ASD 的行为模式,并为诊断和治疗提供有价值的见解。
4 扩展了解 ASD诊断软件Cognoa Canvas Dx(已获FDA授权)
Canvas Dx成为第一个也是目前唯一一个通过FDA审批的自闭症筛查软件。Canvas Dx用于诊断18个月至5岁儿童的自闭症谱系障碍,以促进自闭症的早期发现和治疗。该软件不能用作独立的诊断设备,而是作为诊断过程的辅助设备,仅供处方使用。
相关文章:
人工智能 (AI) 应用:一个高精度ASD 诊断和照护支持系统
自闭症谱系障碍(ASD)是一种多方面的神经发育状况,影响全球大约1/100的儿童,而在中国,这一比例高达1.8%(引用自《中国0~6岁儿童孤独症谱系障碍筛查患病现状》),男童为2.6%…...
C# 1.方法
方法组成: 1.修饰符:public一般定义共有的 2.方法返回值:void 无返回值; 非void,可以写成其他类型例如int,float,string,string[]等 3.方法名:Add 大驼峰命名法,每一个首字符大写。…...
【C++进阶学习】第七弹——AVL树——树形结构存储数据的经典模块
二叉搜索树:【C进阶学习】第五弹——二叉搜索树——二叉树进阶及set和map的铺垫-CSDN博客 目录 一、AVL树的概念 二、AVL树的原理与实现 AVL树的节点 AVL树的插入 AVL树的旋转 AVL树的打印 AVL树的检查 三、实现AVL树的完整代码 四、总结 前言:…...
px,em,rem之间的关系换算
px,em,rem之间的换算 px:普通大小 em:相对单位,相对于父元素的字体大小 rem:相对单位,相对于根元素(html)的字体大小 <!DOCTYPE html> <html lang"en"> <head>…...
HTTP——POST请求详情
POST请求 【传输实体文本】向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在POST请求体中。POST 请求可能会导致新的资源的建立或已有资源的修改。 场景: 1. 提交用户注册信息。 2. 提交修改的用户信息。 常见的…...
外包干了1个月,技术明显退步。。。
有一种打工人的羡慕,叫做“大厂”。 真是年少不知大厂香,错把青春插稻秧。 但是,在深圳有一群比大厂员工更庞大的群体,他们顶着大厂的“名”,做着大厂的工作,还可以享受大厂的伙食,却没有大厂…...
LeetCode加油站(贪心算法/暴力,分析其时间和空间复杂度)
题目描述 一.原本暴力算法 最初的想法是:先比较gas数组和cost数组的大小,找到可以作为起始点的站点(因为如果你起始点的油还不能到达下一个站点,就不能作为起始点)。当找到过后,再去依次顺序跑一圈,如果剩余的油为负数…...
5.1 软件工程基础知识-软件工程概述
软件工程诞生原因 软件工程基本原理(容易被考到) 软件生存周期 能力成熟度模型 - CMM 能力成熟度模型 - CMMI 真题...
HttpUtil工具
http工具 用到的依赖 <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.13</version></dependency><dependency><groupId>org.apache.httpcomponent…...
并发编程-锁的分类
锁的分类 可重入锁&不可重入锁 可重入:当一个线程获取某个锁后,再次获取这个锁的时候是可以直接拿到的。不可重入:当一个线程获取某个锁之后,再次获取这个锁的时候拿不到,必须等自己先释放锁再获取。synchronized…...
K8S系列-Kubernetes基本概念及Pod、Deployment、Service的使用
一、Kubernetes 的基本概念和术语 一、资源对象 Kubernetes 的基本概念和术语大多是围绕资源对象 Resource Object 来说的,而资源对象在总体上可分为以下两类: 1、某种资源的对象 例如节点 Node) Pod 服务 (Service) 、存储卷 (Volume)。 2、…...
在VSCode上创建Vue项目详细教程
1.前期环境准备 搭建Vue项目使用的是Vue-cli 脚手架。前期环境需要准备Node.js环境,就像Java开发要依赖JDK环境一样。 1.1 Node.js环境配置 1)具体安装步骤操作即可: npm 安装教程_如何安装npm-CSDN博客文章浏览阅读836次。本文主要在Win…...
Go语言入门之流程控制简述
Go语言入门之流程控制简述 1.if语句 if语句和其他语言一样,只不过go语言的if不需要用括号包裹 if 语句的分支代码块的左大括号与 if 关键字在同一行上,这是 go 代码风格的统一要求 简单实例: func main() {// 猜数字a : 2if a > 0 {if a…...
接口测试框架基于模板自动生成测试用例!
引言 在接口自动化测试中,生成高质量、易维护的测试用例是一个重要挑战。基于模板自动生成测试用例,可以有效减少手工编写测试用例的工作量,提高测试的效率和准确性。 自动生成测试用例的原理 为了实现测试用例数据和测试用例代码的解耦&a…...
C++ STL stable_sort用法
一:功能 对区间内元素进行排序,保证相等元素的顺序(稳定排序) 二:用法 #include <iostream>struct Record {std::string label;int rank; };int main() {std::vector<Record> data {{"q", 1},…...
YOLO v8进行目标检测的遇到的bug小结
OSError: [WinError 1455] 页面文件太小,无法完成操作。 我的python环境是放在C盘的: 在“我的电脑”点击鼠标右键,打开“属性”点击高级系统设置点击“设置”找到“高级”点击“更改”分配“虚拟内存”(这里需要重启电脑才能生…...
FastAPI -- 第二弹(响应模型、状态码、路由APIRouter、后台任务BackgroundTasks)
响应模型 添加响应模型 from typing import Anyfrom fastapi import FastAPI from pydantic import BaseModel, EmailStrapp FastAPI()class UserIn(BaseModel):username: strpassword: stremail: EmailStrfull_name: str | None Noneclass UserOut(BaseModel):username: s…...
案例 | 人大金仓助力山西政务服务核心业务系统实现全栈国产化升级改造
近日,人大金仓支撑山西涉企政策服务平台、政务服务热线联动平台、政务网、办件中心等近30个政务核心系统完成全栈国产化升级改造,推进全省通办、跨省通办、综合业务受理、智能审批、一件事一次办等业务的数字化办结进程,为我国数字政务服务提…...
如何用python写接口
如何用python写接口?具体步骤如下: 1、实例化server 2、装饰器下面的函数变为一个接口 3、启动服务 开发工具和流程: python库:flask 》实例化server:server flask.Flask(__name__) 》server.route(/index,met…...
轻量级可扩展易航网址引导系统源码V2.45
由于现在网站行业的不稳定,导致很地址频繁更换,不仅是网站,联系QQ,加群链接等需要更换时,好不容易发展的客户会因为找不到您新的网站地址而流失,有了引导页以后就可以安心地宣传无需担心客户丢失的问题。 …...
观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理
引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
使用Spring AI和MCP协议构建图片搜索服务
目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...
