当前位置: 首页 > news >正文

基于逻辑回归和支持向量机的前馈网络进行乳腺癌组织病理学图像分类

CNN(卷积神经网络)通过使用反向传播方法来学习特征,这种方法需要大量的训练数据,并且存在梯度消失问题,从而恶化了特征学习。

CNN卷积神经网络

CNN由一个多层神经网络组成,该网络从标记的训练数据集中学习一组卷积滤波器。传统上,滤波器学习是通过迭代优化过程(反向传播算法)来实现的,该算法逐步更新滤波器,直到分类误差达到预定于的阈值。

①难以对大量超参数(层数、滤波器的数量和大小)进行调优;②滤波器学习过程缓慢,并且需要庞大的训练图像数据集;③用于学习滤波器的反向传播算法存在梯度消失问题。

由于组织病理学图像的固有特征(高视觉可变性),最先进的CNN方法需要大量的计算资源,以及可用的标记组织病理学图像数据集的规模较小,仍然存在大量的开放研究领域。

组织病理学图像分类

传统的方法是基于从这些图像中提取的手工特征进行分类,通常提取三种类型的特征:

低级、对象级和高级。

低级特征与纹理、强度和颜色有关;

对象级技术提取组织学对象的形状和形态信息;

高级技术提取组织学对象之间的空间关系。

用于组织病理学图像分类的传统分类方法:支持向量机、随机森林、Adaboost、朴素贝叶斯、集成学习、决策树和KNN分类器。

前向传播方法使用预定义的 滤波器 或者在模型外部学习的滤波器以前馈方式应用。

两种前馈方法的适用性:卷积逻辑回归网络(CLR)组织病理学图像的卷积支持向量机网络(CSVM-H),两种方法能够有效地从少量乳腺癌图像中学习表示,减少了全切片组织病理学图像分类中的内存占用。

主要研究内容

  1. 采用卷积支持向量机网络对组织病理学图像进行分类
  2. 提出了两种基于前向传播卷积网络的组织病理学图像分类方法。使用逻辑回归和支持向量机学习网络中的滤波器
  3. 在小型数据集上使用前馈方法优于反向传播

相关工作

CNN使用了两种滤波器学习方法:反向传播方法和前向传播方法

反向传播方法

在反向传播方法中,卷积滤波器权重最初被赋予随机值,这些值以前馈方式跨网络层应用,然后将得到的预测值与真值进行比较。执行反向滤波器更新过程以纠正计算出的预测误差。

前向传播方法

首先在模型外部学习滤波器,然后以前馈方式应用于提取特征。将提取到的特征输入到分类器中对组织病理学图像进行分类。

SQUH数据集

该数据集由158个不同患者的图像组成。采集标本作为手术活检和切除标本,用厚度为3 μm的切片机进行转化;然后将它们安装在载玻片上,使用苏木精和伊红(HE)染色。染色过程后,每个样品都用盖盖安装。SQUH的解剖病理学分析师在光学显微镜下通过对组织切片的视觉分析确定了每张幻灯片中的肿瘤区域。数据集的每张图像都有4种放大倍数(4倍、10倍、20倍和40倍)。在这项工作中,我们使用了所有的放大图像。该数据集由158张1920 × 1200大小的组织病理图像组成,其中58张为良性肿瘤,100张为恶性肿瘤。

网络的主要模块

滤波器学习、特征提取层、分类层

滤波器学习

滤波器是从输入训练图像提取的补丁中学习的。首先,从训练集中提取p个补丁,x_{1},x_{2},\dots x_{p}及其对应的标签。补丁大小与目标滤波器大小相同,然后随机选择r个补丁进行滤波器学习。通过最小化目标函数来学习滤波器:

min_{F,b_{0}}\frac{1}{2}F^{T}F+C\sum_{i=1}^{r}l(F,b_{0};x_{i},y_{i})

其中C>0为正则化参数,F和b_{0}分别为滤波器和偏置,{(xi, yi)}为patch及其标签的集合,l(F,b_{0};x_{i},y_{i})是损失函数

对于CSVM-H模型

min_{F,b_{0}}\frac{1}{2}F^{T}F+C\sum_{i=1}^{r}max(1-y(tr(F^{T}x_{i})),0)

对于CLR模型

min_{F,b_{0}}\frac{1}{2}F^{T}F+C\sum_{i=1}^{r}log(1+e^{-y_{i}(tr(F^{T}x_{i}))})

特征提取层

从滤波器学习阶段学习到的滤波器与图像(来自前一层的训练图像或特征映射)进行卷积,然后将ReLU激活函数应用于结果,以处理类的非线性可分性,并强制结果的稀疏性,从而促进泛化,最后加入池化操作,在不丢失重要信息的情况下减小特征映射的大小。然后,引入全局池化层提取最终的特征。

分类层

进行滤波器的学习之后,可以将训练过程应用到分类层。

在此过程中,训练数据集的图像在输入到分类器之前经过两次转换:

①使用学习到的滤波器进行特征提取

②然后进行全局池化以提取判别性高级特征(提取特征图与两种类别之间存在的相关性,避免过拟合)

CSVM-H和CLR的体系结构是基于对几种体系结构的实证分析而选择的,这些体系结构是通过改变以下超参数产生的:(i)网络中的总层数,(ii)过滤器的总数,以及(iii)过滤器的大小。

我们提出了一种基于前馈的CNN方法用于组织病理学图像的分类。该方法在小数据集上优于常用的反向传播方法VggNet-16、ResNet-50。所提出的方法得到的结果总体上优于VggNet-16、CSVM和最先进的方法ResNet-50。我们将我们的结果与最先进的工作进行了比较,并说明了所提出模型的局限性和未来的工作。对于二元分类任务,所提模型获得了最佳的AUC和灵敏度,优于所有其他深度学习模型。

相关文章:

基于逻辑回归和支持向量机的前馈网络进行乳腺癌组织病理学图像分类

CNN(卷积神经网络)通过使用反向传播方法来学习特征,这种方法需要大量的训练数据,并且存在梯度消失问题,从而恶化了特征学习。 CNN卷积神经网络 CNN由一个多层神经网络组成,该网络从标记的训练数据集中学习…...

35-4 fastjson漏洞复现

环境准备:35-2 fastjson反序列化漏洞介绍 及漏洞环境搭建-CSDN博客 fastjson_tool.jar下载:fastjson_rce_tool: fastjson命令执行自动化利用工具, remote code execute,JNDI服务利用工具 RMI/LDAP (gitee.com) 一、攻击机kali开启nc监听6666端口(或其他端口也行,只要不…...

Qt-控件篇

QPushbutton 1、设置按钮文本 pushButton->setText("按钮"); 2、获取按钮文本 pushButton->text(); 3、设置按钮的大小为特定值(宽度和高度) pushButton->setFixedSize(width,height); 4、设置按钮悬停时的工具提示文本。 pushButto…...

实现 Table 的增加和删除,不依赖后端数据回显

需求 删除前 删除后 分析 首先写一个 Table <a-card style"width:100%"><template#extra><a-button type"text" click"addSelectItem" style"margin-right: 5px">添加</a-button><a-button type&quo…...

个人网站开发记录(七)——三系统后端nodejs+express

前言 这种已经完全工程化了的&#xff08;&#xff09;后端其实已经没啥好说的了&#xff0c;因为就是单纯的写接口然后调用接口就完事了&#xff01; 正文 唯一值得一提的大概是我在写这个系统的时候搞了https的链接&#xff0c;具体来说就是先申请一个ssl证书&#xff0c;…...

C#入门理解设计模式的6大原则

**设计模式的原则是指导设计模式创建和应用的基本原则&#xff0c;这些原则有助于创建灵活、可维护且可扩展的软件系统。**1. 单一职责原则&#xff08;Single Responsibility Principle, SRP&#xff09; 单一职责原则指出一个类应该只有一个引起它变化的原因。换句话说&…...

Linux如何切换root用户

Linux如何切换root用户 sudosudo -i想一直使用root权限&#xff0c;可以使用su命令 sudo 执行命令后&#xff0c;输入用户密码可以短暂的获取root权限 sudo -i 通过此命令直接输入当前管理员用户的密码就可以进入root用户了 想一直使用root权限&#xff0c;可以使用su命令 …...

uniapp小程序编译报错

说明 微信小程序编译每次都出现[ project.config.json 文件内容错误] project.config.json: libVersion 字段需为 string, 解决 找到manifest.json文件 添加&#xff1a;"libVersion": "latest"&#xff0c;重新编译即可。...

van-uploader 在app内嵌的webview中的一些坑

问题&#xff1a; 部分版本在ios 中没有问题&#xff0c;但是安卓中不触发图片选择和拍照&#xff08;之前是可以的&#xff0c;可能是没有锁定版本&#xff0c;重新发版导致的&#xff09;。在ios中下拉文案是英文&#xff0c;html配置lang等于 zh 也没有用&#xff0c;ios里…...

使用Kotlin进行全栈开发 Ktor+Kotlin/JS

首发于Enaium的个人博客 前言 本文将介绍如何使用 Kotlin 全栈技术栈KtorKotlin/JS来构建一个简单的全栈应用。 准备工作 创建项目 首先我们需要创建一个Kotlin项目&#xff0c;之后继续在其中新建两个子项目&#xff0c;一个是Kotlin/JS项目&#xff0c;另一个是Ktor项目。…...

数据结构_带头双向循环链表

List.h 相较于之前的顺序表和单向链表&#xff0c;双向链表的逻辑结构稍微复杂一些&#xff0c;但是在实现各种接口的时候是很简单的。因为不用找尾&#xff0c;写起来会舒服一点。&#xff08;也可能是因为最近一直在写这个的原因&#xff09; #pragma once #include<std…...

常见的垃圾回收器(下)

文章目录 G1ShenandoahZGC 常见垃圾回收期&#xff08;上&#xff09; G1 参数1&#xff1a; -XX:UseG1GC 打开G1的开关&#xff0c;JDK9之后默认不需要打开 参数2&#xff1a;-XX:MaxGCPauseMillis毫秒值 最大暂停的时间 回收年代和算法 ● 年轻代老年代 ● 复制算法 优点…...

网桥的原理

网桥的原理 1.1 桥接的概念 简单来说&#xff0c;桥接就是把一台机器上的若干个网络接口“连接”起来&#xff0c;其结果是&#xff0c;其中一个网口收到的报文会被复制给其他网口并发送出去。以使得网口之间的报文能够互相转发。 交换机有若干个网口&#xff0c;并且这些…...

STM32 CAN过滤器细节

STM32 CAN过滤器细节 简介 每组筛选器包含2个32位的寄存器&#xff0c;分别为CAN_FxR1和CAN_FxR2&#xff0c;它们用来存储要筛选的ID或掩码 四种模式 模式说明32位掩码模式CAN_FxR1存储ID&#xff0c; CAN_FxR2存储哪个位必须要与CAN_FxR1中的ID一致 &#xff0c; 2个寄存器…...

网络编程(现在不重要)

目录 网络编程三要素与InetAddress类的使用 软件架构 面临的主要问题 网络编程三要素&#xff08;对应三个问题&#xff09; InetAddress的使用 TCP与UDP协议剖析与TCP编程案例&#xff08;了解&#xff09; TCP协议 UDP协议 例子 UDP、URL网络编程 URL&#xff1a;&…...

10-菜刀连接木马

找到了漏洞后&#xff0c;并且上传了木马之后才能使用的两款工具 中国菜刀和冰蝎 想办法获取别人的cookie&#xff0c;cookie中有session-id 一、中国菜刀 1、必须提前已经完成木马植入然后才能使用 2、木马必须是POST请求&#xff0c;参数自定义&#xff0c;在菜刀里给出…...

Unity数据持久化—Json存档

项目需求为&#xff1a; 1.实现存档列表&#xff0c;显示存档截图&#xff0c;可以查看之前保存的所有存档 2.点击存档直接加载到场景 首先&#xff0c;定义两个类&#xff0c;用于声明存档列表和存档所需要的List [System.Serializable] public class SaveData {//存储目标…...

基于SSM的在线学习系统的设计与实现(论文+源码)_kaic

基于SSM的在线学习系统的设计与实现 摘要 随着信息互联网购物的飞速发展&#xff0c;一般企业都去创建属于自己的管理系统。本文介绍了在线学习系统的开发全过程。通过分析企业对于在线学习系统的需求&#xff0c;创建了一个计算机管理在线学习系统的方案。文章介绍了在线学习系…...

数据库SQL语言实战(二)

目录 检索查询 题目一 题目二 题目三 题目四 题目五 题目六 题目七 题目八 题目九&#xff08;本篇最难的题目&#xff09; 分析 实现&#xff08;两种方式&#xff09; 模板 总结 检索查询 按照要求查找数据库中的数据 题目一 找出没有选修任何课程的学…...

idea错误地commit后如何处理

如果你想使用命令行重新初始化 Git 仓库&#xff0c;可以按照以下步骤进行&#xff1a; 删除该项目的.git文件夹 打开命令行终端。 切换到项目所在的目录&#xff0c;使用 cd 命令。 在项目目录下运行以下命令来重新初始化 Git 仓库 git init这将在当前目录下创建一个新的 Git …...

【杂谈】-递归进化:人工智能的自我改进与监管挑战

递归进化&#xff1a;人工智能的自我改进与监管挑战 文章目录 递归进化&#xff1a;人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管&#xff1f;3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日&#xff0c;2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席&#xff0c;并作《智能体在安全领域的应用实践》主题演讲&#xff0c;分享了在智能体在安全领域的突破性实践。他指出&#xff0c;百度通过将安全能力…...

python执行测试用例,allure报乱码且未成功生成报告

allure执行测试用例时显示乱码&#xff1a;‘allure’ &#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;ڲ&#xfffd;&#xfffd;&#xfffd;&#xfffd;ⲿ&#xfffd;&#xfffd;&#xfffd;Ҳ&#xfffd;&#xfffd;&#xfffd;ǿ&#xfffd;&am…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement 1. LAB环境2. L2公告策略2.1 部署Death Star2.2 访问服务2.3 部署L2公告策略2.4 服务宣告 3. 可视化 ARP 流量3.1 部署新服务3.2 准备可视化3.3 再次请求 4. 自动IPAM4.1 IPAM Pool4.2 …...