医图顶会 MICCAI‘24 | 向扩散模型中引入先验知识,实现疾病进展预测

医学顶会 MICCAI‘24 | 通过潜在扩散和先验知识增强时空疾病进展模型 作者在这项工作中引入了一种名为BrainLatentProgression(BrLP)的新型时空疾病进展模型,该模型基于潜在扩散。BrLP旨在预测个体水平上3D脑MRI的疾病演变。现有的深度生成模型主要依赖数据驱动,在疾病进展学习方面面临挑战。BrLP通过整合疾病模型的先验知识来提高预测的准确性。为此,我们提出将一个辅助模型整合进来,该模型可以推断不同大脑区域的体积变化。 阅读详情

论文信息

题目:Enhancing Spatiotemporal Disease Progression Models via Latent Diffusion and Prior Knowledge

通过潜在扩散和先验知识增强时空疾病进展模型
源码:https://github.com/LemuelPuglisi/BrLP

摘要

作者在这项工作中引入了一种名为 Brain Latent Progression (BrLP) 的新型时空疾病进展模型,该模型基于潜在扩散。BrLP 旨在预测个体水平上 3D 脑 MRI 的疾病演变。现有的深度生成模型主要依赖数据驱动,在疾病进展学习方面面临挑战。BrLP 通过整合疾病模型的先验知识来提高预测的准确性。为此,我们提出将一个辅助模型整合进来,该模型可以推断不同大脑区域的体积变化。此外,我们还引入了 Latent Average Stabilization (LAS),这是一种提高预测进展时空一致性的新技术。BrLP 在包含来自三个公开可用的阿尔茨海默病 (AD) 纵向研究的 2,805 名受试者的 11,730 个 T1 加权脑 MRI 的大型数据集上进行训练和评估。在我们的实验中,我们将 BrLP 生成的 MRI 扫描与受试者的实际随访 MRI 进行比较,无论是横断面还是纵向设置。BrLP 显示出比现有方法有显著改进,在整个 AD 相关大脑区域的体积准确性提高了 22%,与真实扫描的图像相似性提高了 43%。BrLP 能够在受试者水平生成条件化的 3D 扫描,并且通过整合先验知识来提高准确性的新颖性,代表了疾病进展建模的重大进步,为精准医疗开辟了新的途径。B

关键字

疾病进展 · 扩散模型 · 脑 MRI

3 方法 - Brain Latent Progression (BrLP)

我们现在介绍 BrLP 的架构,包括四个关键组件:LDM、ControlNet、辅助模型和 LAS 块,每个组件在后续段落中描述。这四个组件,在图 1 中总结,共同解决了引言中概述的挑战。特别是,LDM 设计为生成符合特定协变量 的随机 3D 脑 MRI,而 ControlNet 旨在将这些 MRI 扫描专门化到受试者的特定解剖结构。此外,辅助模型利用疾病的先验知识来提高预测特定大脑区域体积变化的精度。最后,LAS 块在推理过程中用于提高时空一致性。有关训练过程和超参数设置的详细信息,请参见表 1。

LDM - 学习脑 MRI 分布。在 [12] 的基础上,我们训练了一个 LDM,旨在生成反映特定协变量 的 3D 脑 MRI,其中 包括受试者特定的元数据(年龄、性别和认知状态),而 包括与 AD 进展相关的进展相关指标,例如大脑区域(海马体、大脑皮层、杏仁核、大脑白质和侧脑室)的体积 [13]。LDM 的构建是一个两阶段过程。最初,我们训练了一个自编码器 ()(图 1 中的块 A),旨在为我们数据集中的每个脑 MRI 生产潜在表示 。随后,我们训练了一个条件 UNet(图 1 中的块 B),表示为 ,其网络参数为 ,旨在估计从 到 的反向扩散步骤中所需的噪声 ,如第 2 节所述。我们通过最小化损失 (公式 1)来训练 。协变量 通过与 [16] 一致的交叉注意力机制作为条件整合到网络中。生成过程首先对随机高斯噪声 进行采样,然后迭代地反转每个扩散步骤 ,对于 。解码最终步骤 的输出 得到一个合成的脑 MRI ,遵循指定的协变量 。

ControlNet - 受试者脑 MRI 条件化。LDM 仅通过协变量 提供有限程度的控制生成的脑 MRI,并且不允许对个体解剖结构进行条件化。这个块的目的是扩展 LDM 的能力,以包含这种额外的控制。为此,我们使用 ControlNet [27](图 1 中的块 C),这是一个与 LDM 配合工作的神经网络。我们将 ControlNet 和 LDM 概念化为一个统一的网络 ,其中 表示 LDM 的固定网络参数, 表示 ControlNet 的可训练网络参数。与 LDM 一样, 仍然用于预测反向扩散步骤 中的噪声 ,现在整合了 作为条件,以包含目标大脑 的结构。为了训练 ControlNet,我们使用来自同一患者在不同年龄 A < B 时拍摄的脑 MRI 对的潜在表示 和 。与 相关的协变量 是已知的,并用作目标协变量。每次训练迭代包括:i) 采样 ,ii) 执行 次前向扩散步骤 ,iii) 预测噪声 以反转 ,以及 iv) 最小化损失 (公式 1)。

提出的辅助模型 - 利用疾病先验知识。与 AD 相关的区域随着时间的流逝以不同的速率缩小或扩张 [13]。基于深度学习的时空模型努力从脑 MRI 中直接以黑箱方式学习这些进展速率,这可能非常具有挑战性。为了帮助这一过程,我们提出将有关体积变化的先验知识直接整合到我们的流程中。为此,我们利用一个辅助模型 (图 1 中的块 D),能够预测与 AD 相关的区域体积随时间的变化,并通过进展相关的协变量 将这些信息提供给 LDM。我们的辅助模型的选择针对两种情况,使 BrLP 灵活适用于横断面和纵向数据。对于在年龄 A 时只有一次扫描可用的受试者,我们使用回归模型来估计在年龄 B 时的体积变化 。对于可以访问在年龄 A1, …, An 时的 n 次过去访问的受试者,我们使用疾病进程映射 (DCM) [18,8] 来预测 ,这是一个专门为疾病进展设计的模型。DCM 旨在根据受试者可用的体积变化历史提供更准确的轨迹。虽然我们使用 DCM 作为潜在的解决方案,但任何合适的疾病进展模型都可用于 BrLP。

推理过程。设 为受试者在年龄 A 时的输入脑 MRI,已知受试者特定的元数据 和从 测量的进展相关的体积 。总结在图 1 的块 E 中,为了推断年龄 B > A 时的脑 MRI ,我们执行六个步骤:i) 使用辅助模型预测进展相关的体积 ;ii) 将这些信息与受试者特定的元数据 连接起来,形成目标协变量 ;iii) 计算潜在表示 ;iv) 对随机高斯噪声 进行采样;v) 通过预测噪声 来运行反向扩散过程,以反转每个扩散步骤 ;最后 vi) 使用解码器 D 重建预测的脑 MRI 在成像域中。这个推理过程被总结为一个紧凑的符号 和 。

通过提出的潜在平均稳定化 (LAS) 增强推理。初始值 的变化可能导致推理过程产生的结果出现轻微差异。当在连续的时间步长进行预测时,这些差异尤其明显,表现为进展的不规则模式或非平滑过渡。因此,我们引入了 LAS(图 1 中的块 F),一种通过平均推理过程的不同结果来提高时空一致性的技术。特别是,LAS 基于以下假设:预测 偏离理论均值 。为了估计预期值 ,我们提议重复推理过程 m 次并平均结果:

与之前类似,我们对预测的扫描进行解码 。整个推理过程(其中 m = 4)需要每个 MRI 在消费级 GPU 上大约 4.8 秒。

4 实验和结果

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
  • …

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案
  • …

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

医学顶会 MICCAI‘24 | 条件扩散模型结合空间注意力和潜在嵌入用于医学图像分割 扩散模型已广泛用于高质量图像和视频生成任务。在本文中,作者提出了一种新颖的条件扩散模型,结合空间注意力和潜在嵌入(cDAL),用于医学图像分割。在cDAL中,卷积神经网络(CNN)基的鉴别器在扩散过程的每个时间步骤中使用,以区分生成的标签和真实标签。基于鉴别器学习的特征计算空间注意力图,以帮助cDAL在输入图像中生成更具辨识力区域的更准确分割。此外,作者在模型的每个层中引入了随机潜在嵌入,显著减少了训练和采样时间步骤的数量,从而使其比其他用于图像分割的扩散模型更快。 阅读详情

相关推荐

医学顶会 MICCAI‘24 | DiffDGSS:基于扩散模型的确定性表示进行泛化性视网膜图像分割

获取视网膜图像的全面分割图是开发可解释的视网膜病变诊断工具的初步步骤。然而,视网膜解剖结构和病变的固有复杂性,以及数据异质性和标注稀缺性,对开发准确且具有泛化能力的模型提出了挑战。去噪扩散概率模型(DDPM)最近在各种医学图像应用中显示出了希望。在本文中,作者出于利用强大的预训练DDPM的动机,引入了一个名为DiffDGSS的新颖框架,以利用扩散模型的潜在表示进行领域泛化语义分割(DGSS)。特别是,作者证明了扩散模型的确定性反演产生了稳健的表示,允许强大的领域外泛化。

小白学视觉 192

【技术追踪】通过潜在扩散和先验知识增强时空疾病进展模型(MICCAI-2024)

本文介绍了基于潜在扩散的新型时空疾病进展模型—— Brain Latent Progression(BrLP)。BrLP 旨在预测个体在三维脑 MRI 上的疾病进展。为完成这一任务而开发的现有深度生成模型主要以数据驱动为主,面临学习疾病进展的挑战。BrLP 通过结合疾病模型的先验知识来增强预测的准确性,解决了这些挑战。为了实现这一点,本文建议整合一个辅助模型来推断不同脑区的体积变化。

风巽·剑染春水的博客 1199

医学顶会 MICCAI‘24 | Diff3Dformer:利用切片序列扩散增强3D CT分类的Transformer网络

不同患者肺部疾病症状的表现在不同深度可能有所不同,这突出了3D信息在CT扫描中医学图像分类的重要性。尽管视觉Transformer(ViT)在图像分类任务中表现出比卷积神经网络(CNN)更优越的性能,但它们的效果通常在足够大的2D数据集上得到证明,而在小型医学图像数据集上容易遇到过拟合问题。

小白学视觉 204

医图顶会 MICCAI‘24 | MMFusion: 多模态扩散模型在食管癌淋巴结转移诊断中的应用

食管癌是全球最常见的癌症类型之一,其癌症相关死亡率排名第六。准确的计算机辅助癌症进展诊断可以帮助医生有效定制个性化治疗方案。目前,基于CT的癌症诊断方法因其全面检查患者状况的能力而受到广泛关注。然而,基于多模态的方法可能会引入信息冗余,导致性能不佳。此外,多模态表示之间的有效互动需要进一步探索,缺乏对多模态特征中预后相关性的深入探索。在本项工作中,作者介绍了一种基于CT图像以及临床测量和放射组学数据的淋巴结转移诊断的多模态异构图基于条件特征引导的扩散模型。

xx_nm98的博客 1201

MICCAI‘24 | Diff3Dformer:利用切片序列扩散增强3D CT分类的变换器网络

与肺部疾病相关的症状在不同患者中的不同深度表现不一,这突显了3D信息在CT扫描中医学图像分类的重要性。尽管视觉Transformer(Vision Transformer)在图像分类任务中显示出优于卷积神经网络的性能,但它们的效果通常在足够大的2D数据集上得到证明,并且在小型医学图像数据集上容易遇到过拟合问题。

小白学视觉 139

基于深度学习的图像识别技术在农业领域中的应用

是识别"病害种类"还是"病害严重度分级"?前者是分类,后者常需分割或分级回归。是叶片级(离体叶片图像)、植株级(田间单株)、地块级(无人机俯拍)?视角不同,模型差异巨大。实时无人机巡检可能要求 < 50 ms/帧(Jetson Orin),而离线测报可接受秒级推理。类别标签、结构化 JSON、GIS 图斑、报警事件?

AI天才研究院 2174

2024年AI落地十大工程级论文实战指南

大模型与AI技术正从学术前沿加速走向工业现场,但‘可复现性’和‘硬件亲和力’成为横亘在实验室与产线之间的核心鸿沟。本文聚焦AI工程化落地的关键路径:解析轻量化知识蒸馏、FlashAttention-3硬件感知优化、Chain-of-Verification事实校验等真实可用的技术原理,强调其在低资源医疗影像、边缘工业质检、实时客服等场景中的模块化集成能力与显存/延迟实测表现。不谈SOTA排名,只讲哪些代码能今天clone、哪些组件可即插即用、哪些思路能直接迁移进你手头的项目——让算法工程师少踩坑,让CTO敢

cunbei2644的博客 424

「文智助手」全场景办公AI助理AI+OPC全流程实践方案(大赛作品)

「文智助手」全场景办公AI助理AI+OPC全流程实践方案(大赛作品)

jks212454的博客 399

视频隐私脱敏工程化:CSRT/KCF追踪算法在本地推理中的实现与边界

在短视频内容合规审查中,动态遮挡(Dynamic Masking)是高频且高耗时的环节。传统手动关键帧打码不仅效率低下,且在目标快速移动或遮挡时极易出现遮罩漂移。本文从计算机视觉工程角度,解析基于CSRT与KCF算法的目标追踪方案在视频隐私处理中的技术路径、性能权衡及落地实践。

Mysssone的博客 379

NXP实战笔记(五):S32K3xx基于RTD-SDK在S32DS上配置ADC的硬件触发同步采样与软件采样过程

恩智浦 S32K3xx 系列汽车微控制器器件具有 15 位分辨率逐次逼近模数转换器(SAR ADC),可用于模拟输入信号的采集和数字化。-15 位的分辨率。转换数据总是15 位宽,与所选转换分辨率无关(每转换数据 14、12、10、8 个有效位,减少这个数字会加快数据转换,因为 SAR 算法的执行步骤会更少)。-每个输入通道捕获的转换数据放在单独寄存器中。-可使用“ 平均法” 提高精度,即通过计算最高 32 次转换数据的平均数来提供最终结果。-正常转换触发转换多个。

梦想技术家 3846

保姆级教程:用ROS2 Humble + Gazebo Classic 从零搭建一个能键盘控制的差分AGV模型

本文提供了一份详细的ROS2 Humble与Gazebo Classic教程,指导用户从零开始搭建一个键盘控制的差分AGV模型。内容涵盖环境配置、Xacro文件设计、Gazebo仿真集成以及键盘控制实现,特别针对常见问题提供解决方案,帮助开发者快速掌握ROS2机器人仿真技术。

weixin_30387423的博客 169

AI 问数真的能替代 BI 报表吗?

AI问数赋能自然语言查询,提升临时分析效率,但无法替代传统报表。报表适用于稳定输出与持续监控,AI则擅长探索性提问。企业用好AI问数,关键在于夯实数据模型、统一指标口径、健全权限体系与结果校验机制。合理组合报表、仪表板与AI,才能实现高效、准确的业务洞察。

葡萄城技术团队博客 298

USART+DMA+循环队列接收不定长数据

GD32F130之FreeRTOS环境下USART+DMA接收不定长数据

luliplus的博客 7994

AI Agent之核心框架

A: 显式 Thought 有三类价值:可解释性(便于人类审计)、可调试性(定位哪一步选错工具)、学习信号(可做监督微调或评估中间步骤质量)。ReAct 把推理与 可执行行动 绑定,每一步行动后都有 真实 Observation 反馈,从而用工具结果约束生成,降低闭卷幻觉。做完不等于结束——还要 评估做得好不好,把 教训 记下来,下次 带着教训重试,反思作为 记忆,影响后续尝试的策略。工作流程:Action → Evaluation → Reflection → Retry。A: 普通 CoT 只在。

剑雨巍巍的博客 263

华为 MetaERP 集成盘古大模型、天筹 AI 求解器等生成式 AI 相关技术能力,结合华为云数智融合平台的支撑,在供应链预测中围绕需求预测、物料匹配

华为 MetaERP 集成盘古大模型、天筹 AI 求解器等生成式 AI 相关技术能力,结合华为云数智融合平台的支撑,在供应链预测中围绕需求预测、物料匹配、风险预警等核心场景开展实践,大幅提升了供应链预测的精准度与效率,以下是具体实践内容及成效: 动态需求预测,降低库存偏差华为供应链涉及数万种采购物料,物料清单层级高,且市场需求波动大。MetaERP 集成华为云 ModelArts 等工具构建专属动态需求预测模型,融合深度学习算法,纳入市场趋势、历史销售、产能数据等多维度信息进行综合预测。在华为自身供应链应

金牌架构师 703

DRV8311HRRWR直流无刷(BLDC)电机驱动原理图设计

DRV8311HRRWR集成三个MOSFET 半H桥,用于驱动三相无刷直流电机(BLDC),适用于5V、9V、12V或18V直流电源轨或1S至4S电池供电应用。内部集成三个具有集成电流感测功能的电流感测放大器(CSA),可感测BLDC电机的三相电流,从而实现FOC和电流控制系统设计方案。集成保护特性:VM 欠压锁定 (UVLO)、 电荷泵欠压 (CPUV)、过流保护 (OCP)、热警告和热关断 (OTW/OTSD)、故障条件指示引脚 (nFAULT)支持 1.8V、3.3V 和 5V 逻辑输入。

zhusl6688的博客 1229

ChatGPT、Perplexity、Gemini 与 AI Overviews 引用对比:谁的引用更可信

AI 引擎的引用机制差异很大:ChatGPT 以行内引用加 Sources 列表呈现来源,Perplexity 几乎逐句可溯源,Gemini 在回答中内嵌相关来源链接,AI Overviews 则把多源聚合答案与来源列表一起放在搜索结果顶部。本文从引用透明度、来源偏好、可干预性 3 个维度对比这 4 个引擎,并给出 GEO 的 3 点启示,帮企业在多引擎环境下提升被引用的概率。

淡然一笑 的专栏 223

亚马逊跨境电商选品数据分析:Python爬虫实战指南

本文将带领大家构建一套完整的亚马逊选品数据采集与分析系统,使用最新的Python技术栈,从零开始爬取亚马逊商品数据,并进行深度分析。

2201_76125261的博客 304

【从零理解 Spring AI · 12】MCP 的两种角色:做客户端还是做服务端

上一篇讲了 MCP 的概念:标准协议、三大角色、M+N 替代 M×N。

nice_lcj520的博客 576

中国国家级地面气象站基本气象要素日值数据集(V3.0)

气温数据TEM, 包括站点编号(sid), 纬度(lat), 经度(long), 高程(elev), 年(year), 月(month),日(day), 平均气温(tmean), 最高气温(tmax), 最低气温(tmin)气压数据PRS, 包括站点编号(sid), 纬度(lat), 经度(long), 高程(elev), 年(year), 月(month),日(day), 平均气压(pmean), 最高气压(pmax), 最低气压(pmin)中国国家级地面气象站基本气象要素日值数据集(V3.0)

J_Giser的博客 3908

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

AI 应用开发工程师技术实践:大模型接入、通用组件封装与性能优化

本文提出AI应用从PoC到生产的核心挑战:模型调用的持续可用、可控与可优化。通过构建统一LLM网关实现多供应商路由与故障转移,封装对话、工具调用与RAG组件以解耦业务逻辑,结合前缀缓存、批处理与流式背压治理等性能优化手段,形成“接通→接稳→接快”的工程路径,最终以工程化能力决定AI应用的生产可用性。

2301_79189962的博客 633

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

抽象主义人工智能和生命体AI的内在联系

彭军辉提出“抽象主义人工智能”作为第四大AI范式,批判符号主义、连接主义、行为主义剥离生命本体的误区,确立“智能是现象,生命是本体”的核心公理。主张原生智能必须依附具备存续诉求的生命本体,提出“生命体AI理论”,构建七层演化阶梯与自闭环工程框架,强调智能不可跳过底层存续机制直接模拟语言。该体系为生成式AI提供科学边界,推动从“仿真表象”向“原生智能”的范式跃迁,开辟硅基人工生命新赛道。

抽象主义人工智能和生命体AI 178

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

OpenAI Control Room 架构拆解:给企业 AI Agent 加一套可审计的急停系统

OpenAI 公开了用于追踪和停止研究模型工作负载的 Control Room。本文拆解 job_id、推理前鉴权、35 秒撤销窗口与 Fail Closed 设计,并给出企业 AI Agent 急停控制面的数据模型、FastAPI 参考实现、缓存撤销策略和故障演练清单。

jerry764的博客 326

OpenClaw 深度调查:把 AI 助手做成你自己的控制平面

对 openclaw/openclaw 的完整技术尽调:Gateway 架构、Agent 运行时、工具与沙箱、30 个消息通道、181 个插件、安全信任边界、工程代价与采用建议。17 章 / 10 张图,全部数字标注口径,数据截至 2026-10-31。

厚积薄发 310

AI赋能智慧港口建设|造形家快速生成港口全要素三维场景

随着智慧港口、港口数字孪生项目的持续推进,港口三维场景的需求日益旺盛。传统港口三维建模,往往需要航拍倾斜摄影采集数据,再人工搭建吊机、岸桥、船舶、集装箱等大量工业设施模型,项目周期长、人力成本高,修改迭代繁琐,制约港口可视化项目落地效率。国产AI三维建模工具,依托卫星影像 AI 识别能力,无需航拍作业,一键快速搭建港口完整三维场景,为港口数字孪生、方案汇报、投标演示提供高效的场景解决方案。

m0_69539167的博客 65
上一篇: 阿里通义 | 开源Omni-Emotion 多模态情感分析
下一篇: 2025年这7种用于构建Agentic RAG系统的架构不可或缺
Python_金钱豹
博客等级 码龄5年 1万+粉丝 2841原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值