- 博客(192)
- 资源 (4)
- 收藏
- 关注

原创 寒假是怎么完美度过的寒假的?
2020年悄悄过去,2021年即将到来。在这难得的寒假假期里,我们勤劳智慧的程序员们准备怎么度过呢?让我们看一看小牛的故事:过节出门旅游,欣赏祖国大好河山,以及全世界的美丽风景。可以在威尼斯的河岸边度过一个美妙的下午,也可以在卢浮宫内感受蒙娜丽莎的微笑,也可以在拉斯维加斯的夜晚来一场世纪豪赌…好好疼一疼自己的女朋友,满足女朋友的各种要求,陪伴她度过一个浪漫又温馨的假期。身为一个程序员,如何利用有限的假期为自己充电呢?1、阅读技术书籍,而且是有选择地去阅读。根据自己的方向和水平,选择适合自己的书
2021-02-16 18:25:32
218
1
原创 Docker配置DL envs教程
总结一下,镜像实际上就是一个虚拟的操作系统,容器是镜像的实例化,在容器里操作和在本地系统的命令行操作没有任何区别,容器如果发生了改变,可以直接commit成新的镜像,方便下一次使用~
2023-04-10 15:55:08
712
原创 农作物地块范围识别(图像分割)
农作物的资产盘点与精准产量预测是实现农业精细化管理的核心环节。当前,我国正处于传统农业向现代农业的加速转型期,伴随着农业的转型升级,政府宏观决策、社会各界对农业数据的需求不断增加,现有农业统计信息的时效性与质量,已不足以为市场各主体的有效决策提供科学依据。在农作物资产盘点方面,传统的人工实地调查的方式速度慢、劳动强度大,数据采集质量受主观因素影响大,统计数据有较大的滞后性,亟待探索研究更高效准确度更高的农业调查统计技术。在产量预测方面,及时准确地获取区域作物单产及其空间分布信息,对作物进行精准的产能预测,对
2022-05-29 17:34:49
398
原创 大规模模型训练tricks集锦
大规模模型训练其实就是在和计算、存储和通信玩的过程,所以我列一下跟这些相关的文章。一. 大规模模型并行策略先来介绍一下几种经典的并行范式,以及他们对应的经典文章1.1 数据并行(Data parallelism)不同设备执行相同模型,不同数据。这个比较简单,贴一篇PyTorch DDP:PyTorch Distributed: Experiences on Accelerating Data Parallel Training代表性工作:Megatron-LM: Efficient
2022-05-29 16:23:35
646
原创 浅谈图像分割调优:一个服饰分割项目的记录(附代码)
项目导读服饰分割的主要场景是对模特进行服饰抠图,要求边缘处理相对平滑,扣取召回和准确率比较高,能够覆盖95%以上的场景case。同时需要考虑模型FLOPs以及结构便宜性,便于后期有压缩的需求。本文记录了一个服饰分割项目的全流程,希望能给大家带来一些帮助。一、序很久没有写过博客了,最近忙于做项目,闭了后简单写一下心得体会。近期主要是在做服饰场景相关的项目,今天简单写写其中做的一个服饰分割。二、背景主要场景就是对模特进行服饰抠图,要求边缘处理相对平滑,扣取召回和准确率比较高,能够覆盖95%以上的场景c
2022-05-29 15:53:16
681
1
原创 多类分类和多标签分类
使用softmax 和sigmoid 激活函数来做多类分类和多标签分类在实际应用中,一般将softmax用作多分类中, sigmoid用作多标签分类中,在图像处理领域中,网络模型抽取图像特征的结构结构基本相同,只是根据不同的任务改变全连接层最后的输出层。softmax激活函数应用于多类分类假设神经网络模型的最后一层的全连接层输出的是一维向量logits=[1,2,3,4,5,6,7,8,9,10],这里假设总共类别数量为10,使用softmax分类器完成多类分类问题,并将损失函数设置为categori
2022-03-06 17:33:55
859
1
原创 打家劫舍3
题目:小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为 root 。除了 root 之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果 两个直接相连的房子在同一天晚上被打劫 ,房屋将自动报警。给定二叉树的 root 。返回 在不触动警报的情况下 ,小偷能够盗取的最高金额 。示例 1:输入: root = [3,2,3,null,3,null,1]输出: 7解释: 小偷一晚能够盗取的最高金额 3
2022-02-28 11:49:40
153
原创 打家劫舍2
题目:你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 ,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警 。给定一个代表每个房屋存放金额的非负整数数组,计算你 在不触动警报装置的情况下 ,今晚能够偷窃到的最高金额。示例 1:输入:nums = [2,3,2]输出:3解释:你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2), 因为他
2022-02-28 10:58:27
118
原创 打家劫舍问题
题目:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。示例 1:输入:[1,2,3,1]输出:4解释:偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3 号房屋 (金额 = 3)。 偷窃到的最高金额 = 1 + 3 = 4 。示例 2:输
2022-02-27 15:38:50
88
原创 多重背包问题
概念:有N种物品和一个容量为V 的背包。第i种物品最多有Mi件可用,每件耗费的空间是Ci ,价值是Wi 。求解将哪些物品装入背包可使这些物品的耗费的空间 总和不超过背包容量,且价值总和最大。多重背包和01背包是非常像的, 为什么和01背包像呢?每件物品最多有Mi件可用,把Mi件摊开,其实就是一个01背包问题了。例如:背包最大重量为10。物品为: 重量 价值 数量物品0 1 15 2物品1 3 20 3物品2 4 30 2问背包能背的物品最大价值是多少?和如下情
2022-02-27 15:16:51
162
原创 单词拆分问题
题目:给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。示例 1:输入: s = “leetcode”, wordDict = [“leet”, “code”]输出: true解释: 返回 true因为 “leetcode” 可以由 “leet” 和 “code” 拼接成。示例 2:输入: s = “applepenapple”, wordDict =
2022-02-27 14:49:15
186
原创 完全平方数
题目:给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而 3 和 11 不是。示例 1:输入:n = 12输出:3解释:12 = 4 + 4 + 4示例 2:输入:n = 13输出:2解释:13 = 4 + 9代码:class Solution { public int numSquares(int n) { int
2022-02-27 13:59:59
1050
原创 零钱税换题目
题目:给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。你可以认为每种硬币的数量是无限的。示例 1:输入:coins = [1, 2, 5], amount = 11输出:3 解释:11 = 5 + 5 + 1示例 2:输入:coins = [2], amount = 3输出:-1 示例 3:输入:coins = [1], amount =
2022-02-26 12:52:52
131
原创 CV中的transformer模型创新思路总结
前言:本文回顾了ViT的结构,总结了计算机视觉中的transformer的主要改进思路:改进分块,改进位置编码,改进Encoder,增加Decoder。每个思路下都介绍了相关的论文,介绍了这些论文的提出出发点和改进思路。本文的目的不在于介绍transformer现在有哪些模型,而在于学习借鉴别人发现问题并改进的思路,从而在自己方向上提出合适且合理的改进。VIT回顾在讲计算机视觉中transformer的模型创新总结之前,先有必要对它整体模型进行回顾。在本文选取了最常用的ViT。如图所示,.
2022-02-26 12:34:53
4517
1
原创 爬楼梯进阶
题目:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。1 阶 + 1 阶2 阶示例 2: 输入: 3 输出: 3 解释: 有三种方法可以爬到楼顶。1 阶 + 1 阶 + 1 阶1 阶 + 2 阶2 阶 + 1 阶代码:class Solution { public int climbStairs(int n) {
2022-02-25 21:19:47
599
原创 求排列数目
给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。题目数据保证答案符合 32 位整数范围。示例 1:输入:nums = [1,2,3], target = 4 输出:7 解释: 所有可能的组合为:(1, 1, 1, 1)(1, 1, 2)(1, 2, 1)(1, 3)(2, 1, 1)(2, 2)(3, 1)请注意,顺序不同的序列被视作不同的组合。示例 2:输入:nums = [9]
2022-02-25 21:11:57
270
原创 零钱税换2
难度:中等给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。示例 1:输入: amount = 5, coins = [1, 2, 5] 输出: 4 解释: 有四种方式可以凑成总金额: 5=5 5=2+2+1 5=2+1+1+1 5=1+1+1+1+1示例 2: 输入: amount = 3, coins = [2] 输出: 0 解释: 只用面额2的硬币不能凑成总金额3。示例 3: 输入: amount = 10, coins = [10] 输
2022-02-25 21:02:02
170
原创 206. 反转链表 反转一个单链表
public class Node{ public int Data; public Node next; public Node(int Data) { this.Data = Data; } public int getData() { return Data; } public void setData(int data) { Data = data; } public Node getNext() { return
2021-10-22 10:14:12
111
原创 Douglas-Peucker算法
Douglas-Peucker算法(该算法名字够吓人,其实思想很简单)在数字化时,要对曲线进行采样,即在曲线上取有限个点,将其变为折线,并且能够在一定程度上保持原有的形状。经典的Douglas-Peucker算法步骤如下(如下图):(1)在曲线首尾两点A,B之间连接一条直线AB,该直线为曲线的弦;(2)得到曲线上离该直线段距离最大的点C,计算其与AB的距离d;(3)比较该距离与预先给定的阈值threshold的大小,如果小于threshold,则该直线段作为曲线的近似,该段曲线处理完毕。
2021-09-24 11:22:09
4127
3
原创 SE-Attention
SENetJie Hu, Li Shen, Gang Sun摘要卷积神经网络顾名思义就是依赖卷积操作,使用局部感受区域(local receptive field)的思想融合空间信息和通道信息来提取包含信息的特征。有很多工作从增强空间维度编码的角度来提升网络的表示能力,本文主要聚焦于通道维度,并提出一种新的结构单元——“Squeeze-and-Excitation(SE)”单元,对通道间的依赖关系进行建模,可以自适应的调整各通道的特征响应值。如果将SE block添加到之前的先进网络中,只会增加很小的
2021-09-21 17:12:47
4313
1
原创 python 转位深 24位转8位
对之前的工作进行整理方便copy使用单张# 单张import osimport cv2imgdir = 'd:/a/'#图片路径savepath = 'd:/a/'#保存路径n = 'a.jpg'#图片名称img = cv2.imread(imdir)img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)cv2.imwrite(savepath + n.split('.')[0]+'_1.png', img)批量#读取整个bacepath文件夹下的
2021-08-07 14:17:53
894
原创 为什么目前感觉大多数论文还是以resnet为主干网络而不是densenet?
因为不像resnet那样简洁吧,但是理论贡献是绝对的。万法归宗,啥都是dense connect。shortcut ,fpn,aspp,unet++ 都是,只是dense的程度不一样而已。**训练一个完全dense的网络,然后在上面剪枝才是最好的方法,unet++如是说。首先谈这两个之间的区别和联系,DenseNet和ResNet都是基于分类任务提出来的网络模型架构,架构思想也基本一致,既从小模块堆积到layer,再堆积layer到网络。现如今的检测和分割模型都是基于分类的模型来做backb
2021-08-05 16:47:35
1041
1
原创 语义分割之模型预测(inference)
小尺寸图像输入一般的图像无需裁剪,便可输入模型,进行端到端的训练。它的预测过程也是比较简单的,以二分类为例,将模型输出的概率图通过一定的方法转化为二值图。有两种方法可实现上述过程,其一,若类别数包括背景类,利用argmax输出各维度相同位置处最大值,其二,若类别数不包括背景类,则利用sigmoid压缩其值至0-1之间,利用阈值法,一般为0.5,大于0.5为正类,小于0.5为背景类。net = torch.load('./model.pth', map_location=lambda storage, l
2021-08-02 14:15:14
1727
原创 nn.Conv2d和nn.ConvTranspose2d区别
nn.Conv2d和nn.ConvTranspose2d参数说明及区别1、nn.Conv2d(in_channels,out_channels,kernel_size,stride=1,padding=0,dilation=1,groups=1,bias=True)in_channels:输入维度out_channels:输出维度kernel_size:卷积核大小stride:步长大小padding:补0dilation:kernel间距groups(int, optional) : 从输入
2021-08-01 14:31:43
911
tensorflow-gpu配置教程
2020-12-04
旅游管理系统(前后台开发)
2020-10-08
._Matplotlib可视化小抄.pdf
2020-08-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人