- 博客(217)
- 收藏
- 关注
原创 DilateFormer: Multi-Scale Dilated Transformer for Visual Recognition 中的空洞自注意力机制
本文针对DilateFormer中的空洞自注意力机制原理和代码进行详细介绍,最后通过流程图梳理其实现原理。
2024-07-27 13:33:03 935
原创 SwinTransformer的相对位置索引的原理以及源码分析
如下图,假设输入的feature map高宽都为2,那么首先我们可以构建出每个像素的绝对位置(左下方的矩阵),对于每个像素的绝对位置是使用行号和列号表示的。比如上面的相对位置索引中有(0,−1)和(−1,0)在二维的相对位置索引中明显是代表不同的位置,但如果简单相加都等于-1那不就出问题了吗?因为后面我们会根据相对位置索引去取对应的参数。这样即保证了相对位置关系,而且不会出现上述0 + ( − 1 ) = ( − 1 ) + 0 0+(-1)=(-1)+00+(−1)=(−1)+0的问题了,是不是很神奇。
2024-07-06 17:03:10 766
原创 搭建ASPP:多尺度信息提取网络
ASPP(Atrous Spatial Pyramid Pooling),空洞空间卷积池化金字塔。简单理解就是个至尊版池化层,其目的与普通的池化层一致,尽可能地去提取特征。ASPP 的结构如下:如图所示,ASPP 本质上由一个1×1的卷积(最上) + 池化金字塔(中间三个) + ASPP Pooling(最下面三层)组成。而池化金字塔各层的膨胀因子可自定义,从而实现自由的多尺度特征提取。
2024-06-28 21:01:46 418
原创 信息量、香农熵、交叉熵、KL散度的意义
对于一个事件:信息量的计算公式:I(x)=log2(1p(x))=−log2(p(x))\begin{aligned}&I(x)=log_2(\frac{1}{p(x)})=-log_2(p(x))\end{aligned}I(x)=log2(p(x)1)=−log2(p(x))举例:①均匀的硬币②不均匀的硬币:服从某一概率分布的平均信息量(期望),也是一种不确定度的计算方式。香农熵的计算公式:H(p)=∑piIip=∑pilog2(1pi)=−∑pilog2(pi)\begin{align
2024-06-19 17:18:41 1042
原创 深度学习中torch.max函数的作用
是 PyTorch 中的一个函数,用于在张量中沿指定维度计算最大值。② 如果提供两个输入张量,则返回两个张量中对应位置的较大值。
2024-06-05 12:56:28 511
原创 Bidirectional Copy-Paste for Semi-Supervised Medical Image Segmentation
文章目录1. 模型图2. 模型的训练流程图1. 模型图2. 模型的训练流程图
2024-06-03 17:36:48 237
原创 Rethinking Data Perturbation and Model Stabilization for Semi-supervised Medical Image Segmentation
逐步增加策略(Ramp-Up Policy)指在训练初期逐步增加未标注数据一致性损失的权重,而不是从一开始就给予其很高的权重。这种策略能够帮助模型在初期阶段专注于学习标注数据的可靠信息,同时逐步引入未标注数据的一致性约束。逐步增加策略在半监督学习中起着至关重要的作用,通过逐步引入未标注数据一致性损失,可以帮助模型平稳过渡,逐步学习未标注数据中的信息,从而提高模型的整体性能。合理选择逐步增加函数和动态调整训练策略是实现这一目标的关键。
2024-05-28 09:37:10 863
原创 论文中图片的格式要求说明
1、“颜色格式”:彩色图片可以选择“24位色”,一般的黑白图片可以选择“16位灰度”。设置文件名,点击“保存”,会弹出名为“TIFF输出选项”的对话框,再在里面设置即可。点击“文件”->“另存为”,在“文件类型”的下拉菜单中选择“Tag图像文件格式(不同的工具中均有设定图形长宽的命令,首先确保一篇文章中所有的程序出图大小一致。最后输出时需要导出tif格式,分辨率,300*300 DPI。3、“大小”,也可以自定义或者选“源”。300,默认的单位就是“像素/英寸”。2、“分辨率”:选“自定义”,300。
2024-04-12 14:46:12 949
原创 【学习笔记】java项目—苍穹外卖day12
Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目。简单来说就是,我们可以使用 POI 在 Java 程序中对Miscrosoft Office各种文件进行读写操作。一般情况下,POI 都是用于操作 Excel 文件。银行网银系统导出交易明细各种业务系统导出Excel报表批量导入业务数据。
2024-04-07 14:31:18 601
原创 【学习笔记】java项目—苍穹外卖day11
Apache ECharts 是一款基于 Javascript 的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。1). 柱形图2). 饼形图3). 折线图不管是哪种形式的图形,最本质的东西实际上是数据,它其实是对数据的一种可视化展示。
2024-04-07 10:25:19 669
原创 【学习笔记】java项目—苍穹外卖day10
是Spring框架提供的任务调度工具,可以按照约定的时间自动执行某个代码逻辑。定时任务框架定时自动执行某段Java代码为什么要在Java程序中使用Spring Task?1). 信用卡每月还款提醒2). 银行贷款每月还款提醒3). 火车票售票系统处理未支付订单4). 入职纪念日为用户发送通知只要是需要定时处理的场景都可以使用Spring TaskWebSocket 是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性。
2024-04-04 17:04:12 1281
原创 【学习笔记】java项目—苍穹外卖day09
在admin包下创建OrderController。资料来源:b站黑马程序员。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。接口设计:参见接口文档。
2024-04-03 15:18:36 1243
原创 【学习笔记】java项目—苍穹外卖day08
前面的课程已经实现了用户下单,那接下来就是订单支付,就是完成付款功能。支付大家应该都不陌生了,在现实生活中经常购买商品并且使用支付功能来付款,在付款的时候可能使用比较多的就是微信支付和支付宝支付了。在苍穹外卖项目中,选择的就是微信支付这种支付方式。要实现微信支付就需要注册微信支付的一个商户号,这个商户号是必须要有一家企业并且有正规的营业执照。只有具备了这些资质之后,才可以去注册商户号,才能开通支付权限。
2024-04-03 10:56:23 1044
原创 【学习笔记】java项目—苍穹外卖day07
Spring Cache 是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。EHCacheCaffeineRedis(常用)</</</</
2024-04-02 19:09:12 513
原创 【学习笔记】java项目—苍穹外卖day06
HttpClient 是Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。发送HTTP请求接收响应数据为什么要在Java程序中发送Http请求?有哪些应用场景呢?当我们在使用扫描支付、查看地图、获取验证码、查看天气等功能时。
2024-04-01 21:07:53 1267
原创 学习笔记】java项目—苍穹外卖day05
Redis是一个基于内存的key-value结构数据库。Redis 是互联网技术领域使用最为广泛的存储中间件。key-value结构存储:基于内存存储,读写性能高适合存储热点数据(热点商品、资讯、新闻)企业应用广泛Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,官方提供的数据是可以达到100000+的QPS(每秒内查询次数)。它存储的value类型比较丰富,也被称为结构化的NoSql数据库。NoSql(Not Only SQL),不仅仅是SQL,泛指。
2024-03-30 15:06:19 854
原创 【学习笔记】java项目—苍穹外卖day04
setmeal_dish表为套餐菜品关系表,用于存储套餐和菜品的关联关系。setmeal表为套餐表,用于存储套餐的信息。资料来源:b站黑马程序员。
2024-03-30 14:49:54 1070
原创 【学习笔记】java项目—苍穹外卖day02
文章目录苍穹外卖-day02课程内容1. 新增员工1.1 需求分析和设计1.1.1 产品原型1.1.2 接口设计1.1.3 表设计1.2 代码开发1.2.1 设计DTO类1.2.2 Controller层1.2.3 Service层接口1.2.4 Service层实现类1.2.5 Mapper层1.3 功能测试1.3.1 接口文档测试1.3.2 前后端联调测试1.4 代码完善1.4.1 问题一1.4.2 问题二1.4.3 ThreadLocal1.5 代码提交2. 员工分页查询2.1 需求分析和设计2.1.
2024-03-29 11:36:34 1378
原创 【学习笔记】java项目—苍穹外卖day01
作为一名软件开发工程师,我们需要了解在软件开发过程中的开发流程, 以及软件开发过程中涉及到的岗位角色,角色的分工、职责, 并了解软件开发中涉及到的三种软件环境。那么这一小节,我们将从 软件开发流程、角色分工、软件环境 三个方面整体介绍一下软件开发。在开发苍穹外卖这个项目之前,我们需要全方位的来介绍一下当前我们学习的这个项目。接下来,我们将从项目简介、产品原型、技术选型三个方面来介绍苍穹外卖这个项目。
2024-03-28 19:44:51 1444
原创 python实现:图像分割指标的计算
Dice系数和IOU的计算方式略有不同,但它们的主要区别在于Dice系数对预测结果和真实标签的交集和并集的贡献是相等的,而IOU更加关注预测结果与真实标签的交集。其中,TP(True Positive)表示预测为正样本且标签为正样本的像素数量,FP(False Positive)表示预测为正样本但标签为负样本的像素数量,FN(False Negative)表示预测为负样本但标签为正样本的像素数量。Dice系数的取值范围在0到1之间,其值越接近1,表示预测结果与真实标签的重叠度越高,相似度越高。
2024-03-22 16:26:00 1389
原创 【项目笔记】java微服务:黑马头条(day04)
文章目录自媒体文章-自动审核1)自媒体文章自动审核流程2)内容安全第三方接口2.1)概述2.2)准备工作2.3)文本内容审核接口2.4)图片审核接口2.5)项目集成3)app端文章保存接口3.1)表结构说明3.2)分布式id3.3)思路分析3.4)feign接口4)自媒体文章自动审核功能实现4.1)表结构说明4.2)实现4.3)单元测试4.4)feign远程接口调用方式4.5)服务降级处理5)发布文章提交审核集成5.1)同步调用与异步调用5.2)Springboot集成异步线程调用6)文章审核功能-综合测试
2024-03-16 15:49:47 1833
原创 【项目笔记】java微服务:黑马头条(day03)
文章目录自媒体文章发布1)自媒体前后端搭建1.1)后台搭建1.2)前台搭建2)自媒体素材管理2.1)素材上传2.2.1)需求分析2.2.2)素材管理-图片上传-表结构2.2.3)实现思路2.2.4)接口定义2.2.5)自媒体微服务集成heima-file-starter2.2.6)具体实现2.2)素材列表查询2.2.1)接口定义2.2.2)功能实现3)自媒体文章管理3.1)查询所有频道3.1.1)需求分析3.1.2)表结构3.1.3)接口定义3.1.4)功能实现3.1.5)测试3.2)查询自媒体文章3.2.
2024-03-15 11:18:09 1488
原创 【项目笔记】java微服务:黑马头条(day02)
文章目录app端文章查看,静态化freemarker,分布式文件系统minIO1)文章列表加载1.1)需求分析1.2)表结构分析1.3)导入文章数据库1.3.1)导入数据库1.3.2)导入对应的实体类1.4)实现思路1.5)接口定义1.6)功能实现1.6.1):导入heima-leadnews-article微服务,资料在当天的文件夹中1.6.2):定义接口1.6.3):编写mapper文件1.6.4):编写业务层代码1.6.5):编写控制器代码1.6.6):swagger测试或前后端联调测试2)freem
2024-03-07 09:40:44 1261
原创 【项目笔记】java微服务:黑马头条(day01)
随着智能手机的普及,人们更加习惯于通过手机来看新闻。由于生活节奏的加快,很多人只能利用碎片时间来获取信息,因此,对于移动资讯客户端的需求也越来越高。黑马头条项目正是在这样背景下开发出来。黑马头条项目采用当下火热的微服务+大数据技术架构实现。本项目主要着手于获取最新最热新闻资讯,通过大数据分析用户喜好精确推送咨询新闻。
2024-03-05 17:44:51 1620 1
原创 【数据结构(十三·程序员常用的10种算法)】下
普利姆(Prim)算法求最小生成树,也就是在包含nnn个顶点的连通图中,找出只有&(n-1)&条边包含所有nnn个顶点的连通子图,也就是所谓的极小连通子图。普利姆的算法如下:① 设GVEG=(V,E)GVE是连通网,TUDT=(U,D)TUD是最小生成树,VUV,UVU是顶点集合,EDE,DED是边的集合② 若从顶点uuu开始构造最小生成树,则从集合VVV中取出顶点uuu放入集合UUU中,标记顶点vvv的visite。
2024-02-28 20:34:36 696
原创 【数据结构(十三·程序员常用的10种算法)】上
前面我们讲过了二分查找算法,是使用递归的方式,下面我们讲解二分查找算法的非递归方式二分查找法只适用于从有序的数列中进行查找(比如数字和字母等),将数列排序后再进行查找二分查找法的运行时间为对数时间Olog2nO(log_2n)Olog2n,即查找到需要的目标位置最多只需要log2nlog_2nlog2n步,假设从 [0, 99] 的队列(100 个数,即 n=100)中寻到目标数 30,则需要查找步数为log2100log_2100log2。
2024-01-23 17:28:40 891
原创 【JavaWeb后端开发-第八章】Maven高级
Web开发讲解完毕之后,我们再来学习Maven高级。其实在前面的课程当中,我们已经学习了Maven。我们讲到 Maven 是一款构建和管理 Java 项目的工具。经过前面 10 多天 web 开发的学习,相信大家对于 Maven 这款工具的基本使用应该没什么问题了。我们掌握了 Maven 工具的基本使用之后,其实对于一些简单的项目的构建及管理基本上就没什么问题了。但是如果我们需要开发一些中大型的项目,此时仅凭我们前面所学习的 Maven 的基础知识就比较难以应对了。
2024-01-19 21:28:58 1231
原创 【JavaWeb后端开发-第七章】SpingBoot原理
在前面的所有章节当中,我们学习的都是web开发的技术使用,都是面向应用层面的,我们学会了怎么样去用。而我们今天所要学习的是web后端开发的最后一个篇章springboot原理篇,主要偏向于底层原理。本章节的安排包括三个部分:1.配置优先级:Springboot项目当中属性配置的常见方式以及配置的优先级2.Bean的管理3.剖析Springboot的底层原理。
2024-01-19 11:13:20 1071
原创 【JavaWeb后端开发-第六章(4)】SpringBootWeb案例—事务&AOP
我们接着继续学习@Transactional注解当中的第二个属性,这个属性是用来配置事务的传播行为的。什么是事务的传播行为呢?♦ 就是当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行事务控制。例如:两个事务方法,一个A方法,一个B方法。在这两个方法上都添加了@Transactional注解,就代表这两个方法都具有事务,而在A方法当中又去调用了B方法。
2024-01-18 09:34:24 1060
原创 【JavaWeb后端开发-第六章(3)】SpringBootWeb案例—登录认证
在前面的章节中,我们已经实现了部门管理员工管理的基本功能,但是大家会发现,我们并没有登录,就直接访问到了Tlias智能学习辅助系统的后台。这是不安全的,所以我们今天的主题就是登录认证。最终我们要实现的效果就是用户必须登录之后,才可以访问后台系统中的功能。什么是会话?♦ 在我们日常生活当中,会话指的就是谈话、交谈。♦ 在web开发当中,会话指的就是浏览器与服务器之间的一次连接,我们就称为一次会话。在用户打开浏览器第一次访问服务器的时候,这个会话就建立了,直到有任何一方断开连接,此时会话就结束了。
2024-01-17 09:59:37 1291
原创 【JavaWeb后端开发-第六章(2)】SpringBootWeb案例
前面我们已经实现了员工信息的条件分页查询以及删除操作。关于员工管理的功能,还有两个需要实现:♦ 新增员工♦ 修改员工首先我们先完成"新增员工"的功能开发,再完成"修改员工"的功能开发。而在"新增员工"中,需要添加头像,而头像需要用到"文件上传"技术。当整个员工管理功能全部开发完成之后,我们再通过配置文件来优化一些内容。综上所述,我们今天的课程内容包含以下四个部分:♦ 新增员工♦ 文件上传♦ 修改员工♦ 配置文件。
2024-01-15 22:20:08 1291
原创 【JavaWeb后端开发-第六章(1)】SpringBootWeb案例
前面我们已经讲解了Web前端开发的基础知识,也讲解了Web后端开发的基础(HTTP协议、请求响应),并且也讲解了数据库MySQL,以及通过Mybatis框架如何来完成数据库的基本操作。那接下来,我们就通过一个案例,来将前端开发、后端开发、数据库整合起来。而这个案例呢,就是前面提到的Tlias智能学习辅助系统。在这个案例中,前端开发人员已经将前端工程开发完毕了。我们需要做的,就是参考接口文档完成后端功能的开发,然后结合前端工程进行联调测试即可。本章节的主要内容如下:♦ 准备工作♦ 部门管理。
2024-01-13 16:55:14 1206
原创 【JavaWeb后端开发-第五章(2)】Mybatis 进阶学习
预编译SQL有两个优势:1. 性能更高2. 更安全(防止SQL注入)性能更高:预编译SQL,编译一次之后会将编译后的SQL语句缓存起来,后面再次执行这条语句时,不会再次编译。(只是输入的参数不同)更安全(防止SQL注入):将敏感字进行转义,保障SQL的安全性。在页面原型中,列表上方的条件是动态的,是可以不传递的,也可以只传递其中的1个或者2个或者全部。而在我们刚才编写的SQL语句中,我们会看到,我们将三个条件直接写死了。如果页面只传递了参数姓名name字段,其他两个字段性别和。
2024-01-11 18:30:53 1136
原创 【JavaWeb后端开发-第五章(1)】Mybatis入门基础
在前面我们学习MySQL数据库时,都是利用图形化客户端工具(如:idea、datagrip),来操作数据库的。在客户端工具中,编写增删改查的SQL语句,发给MySQL数据库管理系统,由数据库管理系统执行SQL语句并返回执行结果。增删改操作:返回受影响行数查询操作:返回结果集(查询的结果)做为后端程序开发人员,通常会使用Java程序来完成对数据库的操作。Mybatis。什么是MyBatis?♦ MyBatis是一款优秀的持久层框架,用于简化JDBC的开发。♦ MyBatis本是。
2024-01-09 16:21:34 1303
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人