- 博客(52)
- 资源 (2)
- 收藏
- 关注
原创 Faster R-CNN简单解读(一)
Faster R-CNN引言根据以往R-CNN系列的分析,现在影响网络性能的是候选区域提取的部分。比如SS算法,在CPU上处理一张图片大约要2秒。文中提出了一种算法的改进——使用卷积神经网络来生成候选区域,命名为Region Proposal Networks (RPN)。RPN共享现有的目标检测网络的卷积层。这种方法既优雅又高效,几乎是 cost-free 的(每张图片在测试时大约10ms)。使用VGG16作为主干网络,一秒大约处理5帧(张)图片文中观察到,基于区域的目标检测网络产生的特征图
2022-05-26 16:18:47
677
1
原创 SPP-net论文笔记
SPP-net论文笔记论文原文总体概览核心思路:空间金字塔池化。以往做池化操作都是规定好池化窗口大小和步长,这样不同的特征图会得到不同的池化结果。空间金字塔池化则是你对它说,我任意给你一张特征图,你还给我一个固定大小的特征图。两张关键图:1、分类的2、目标检测的分类和检测唯一的区别就是,分类把整个特征图喂给SPP池化层,目标检测只把RoI在特征图上的映射部分喂给SPP池化层。最后一个问题,金字塔在哪?把1x1的,2x2的,3x3的…这些特征图摞起来,就是金字塔了 🐕详细解读
2022-05-13 15:57:23
261
原创 Decoupling Representation and Classifier for Long-Tailed Recognition论文笔记
Decoupling Representation and Classifier for Long-Tailed Recognition论文笔记Facebook出品,ICLR2020会议论文,官方代码摘要视觉世界的长尾分布对基于深度学习的分类模型提出了巨大的挑战,即如何处理类不平衡问题。现有的解决方案通常涉及类平衡策略,例如通过损失重新加权、数据重新采样,或将学习从头尾类转移到尾类,但大多数方案都坚持联合学习表征和分类器的方案。在这项工作中,我们将学习过程分解为表征学习和分类,并系统地探讨了不同的平衡
2022-05-12 15:48:57
747
原创 NCL论文简单解读
NCLNested Collaborative Learning for Long-Tailed Visual Recognition引言论文链接官方代码先看一波实验结果(数据来自paperswithcode,截图时间2022年5月10日)可以看到,两个第一,两个第二,效果海星。请注意,下文中,多专家就是多模型摘要提出了一种嵌套协作学习(NCL),它通过协作学习多个模型来解决这个问题。 NCL由两个核心组件组成,即嵌套个体学习(NIL)和嵌套平衡在线蒸馏(NBOD),分别侧重
2022-05-10 19:57:20
983
原创 R-CNN网络系列(3)
Fast R-CNN论文简单解读(2)书接上回微调先diss一波SPPnetR-CNN和SPPnet网络的训练模型时,每个训练样本(即RoI)来自不同的图像,这就是效率低下的根本原因。每个 RoI 可能有一个非常大的、跨越整个输入图像的感受野。由于前向传递必须处理整个感受野,因此训练输入很大(通常是整个图像)Fast R-CNN提出了一种更有效的训练方法,该方法在训练期间利用特征的共享。 在 Fast RCNN 训练中,随机梯度下降 (SGD) 小批量是分层采样的,首先通过采样 N 个图像,然
2022-05-09 16:27:58
526
原创 Balanced Multimodal Learning via On-the-fly Gradient Modulation论文笔记
Balanced Multimodal Learning via On-the-fly Gradient Modulation论文笔记引言多输入模态有望提高模型性能,但我们实际上发现即使多模态模型优于其单模态模型,它们也没有得到充分利用。 具体来说,在本文中,我们指出现有的多模态判别模型(其中为所有模态设计了统一的目标)可能仍然存在欠优化的单模态表示,这是由某些场景中的另一种主导模态引起的,例如,吹风事件中的声音 ,绘图事件中的视觉等。为了缓解这种优化不平衡,我们提出了动态梯度调制,通过监控它们对学习目
2022-05-09 12:57:48
1703
原创 R-CNN网络系列(2)
文章目录Fast R-CNN论文简单解读引言正文R-CNN的缺点Fast R-CNN的优点模型架构把VGG16调整成Fast R-CNNFast R-CNN论文简单解读引言名称由来:Fast Region-based Convolutional Neural Network (Fast R-CNN)秀肌肉:Fast R-CNN比R-CNN快9倍,在测试时快213倍,在PASCAL VOC 2012上实现了更高的66%的mAP,比R-CNN高4个点。与SPPnet相比,Fast R-CNN训练VGG1
2022-05-07 14:53:14
651
原创 R-CNN网络系列(1)
R-CNN论文简单解读模型架构以现在的标准来看,模型相对来说比较简单。流程分为四步:输入一张图片在图片上使用选择性搜索(Selective Search, SS)提取2k个候选区域对每一个候选区域都经过一个卷积神经网络,提取候选区域的特征(特征向量维度4096)对每个区域使用SVM分类器打分。对于图片中所有经过打分的候选区域,使用非最大值抑制(Non-maxinum suppression, NMS)剔除IoU小于阈值的区域。特点在当时,特征向量的维度更低,用时更少,能分类的类别数目
2022-05-04 20:38:48
126
原创 PAT1146 Topological Order
思路因为对拓扑排序来说,每个可以选择的点的入度都为0,这里只是判断是否是拓扑排序,因此我们可以判断序列中的每个顶点入度是否为0来解决,如果不为0,则不是拓扑排序。代码#include <iostream>#include <vector>using namespace std;vector<int> adj[1005], path(1005), f, inDegree(1005), myDegree(1005);int main(){ int n, m;
2021-03-17 11:02:54
81
原创 PAT1150 Travelling Salesman Problem
文章目录题目代码题目The “travelling salesman problem” asks the following question: “Given a list of cities and the distances between each pair of cities, what is the shortest possible route that visits each city and returns to the origin city?” It is an NP-hard pr
2021-03-15 20:00:44
88
原创 PAT1004 Counting Leaves
文章目录题目思路代码题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805521431773184思路DFS代码#include <iostream>#include <vector>using namespace std;vector<int> in[105];int cnt[105] = {0};int maxLevel = 1;//最大层数 void dfs
2021-03-12 14:05:57
56
原创 PAT1151
文章目录题目思路代码参考文献题目The lowest common ancestor (LCA) of two nodes U and V in a tree is the deepest node that has both U and V as descendants.Given any two nodes in a binary tree, you are supposed to find their LCA.Input Specification:Each input file conta
2021-03-04 22:25:13
138
1
原创 PAT1155
文章目录思路代码参考文献思路回溯代码版本一:#include <iostream>#include <vector>using namespace std;//const int INF = 1e7;const int MAXN = 1005;int in[MAXN];vector<vector<int> > res;void backtrace(int parent, int n, vector<int> &pat
2021-03-04 20:30:01
654
1
原创 PAT1154
文章目录思路:DFS柳神代码:参考文献思路:DFS柳神写的代码让我自惭形秽,我是个菜鸡#include <iostream>#include <vector>#include <set>using namespace std;const int maxn = 10005;vector<int> color(maxn);vector<int> v[maxn];bool visited[maxn] = {false};//int
2021-03-03 21:09:44
68
1
原创 Windows 平台下自己编译 Lua5.3.6 解释器
文章目录一、环境以及安装包1.1 环境以及安装包1.2 安装前的准备工作一、环境以及安装包1.1 环境以及安装包gcc 编译环境(本人选择TDM-GCC9.2.0,下载链接)Lua 源代码(本人选择 lua-5.3.6)1.2 安装前的准备工作将 TDM-GCC 的 bin 目录添加到环境变量进入 TDM-GCC 的 bin 目录,将 把 mingw32-make.exe 复制一份并修改为改为 make.exe,如下图:验证 GCC 环境,输出如下...
2021-02-19 21:48:35
814
3
原创 每天五个Linux命令(6)
文章目录head/tail:打印开头/结尾tee:从 stdin 读取数据并打印到 stdout 和文件echo:显示一行文本history:显示历史命令id:显示用户身份标识head/tail:打印开头/结尾默认查看 10 行使用 -n 选项调整打印行数tail 使用 -f 选项可以实时查看改动tee:从 stdin 读取数据并打印到 stdout 和文件echo:显示一行文本算数拓展:$((算数表达式)),只支持正数运算符描述+?减*/
2021-02-17 20:59:10
78
原创 每天五个Linux命令(5)
文章目录cat:合并文件sort:对文本行排序uniq:报告或删除文件中的重复行wc:字数统计grep:打印匹配行下面是我的学习笔记,里面有很多宝藏等你发掘哦!如果可以帮忙 star 一下就更好了,蟹蟹!!GitHub链接Github Page页面Gitee链接Gitee Page页面当然也可以关注我的微信公众号:细辛编程重定向操作符:>,可以把输出重定向到文件,如果文件已存在,会覆盖原内容重定向符:>>,不会覆盖,只是追加cat:合并文件读取一个或者多个文件,
2021-02-15 21:57:04
94
原创 面试题系列(2)
文章目录1、Java的基本变量有哪些?各占几个字节?2、构造函数能被重写吗?能被重载吗?3、子类的super是重写吗?4、接口和抽象类的区别有哪些?能被实例化吗?里面变量有什么不同吗?方法有什么不同?5、线程的创建方式有哪几种?创建方法说下?内存模型中线程私有的有哪些?6、String abc = new Stirng("abc"),新建了几个对象?abc指向哪?7、TCP/IP有几层?每一层的作用?MAC地址在哪层?8、List和Set区别是什么?Set为什么能去重?9、A继承exception,B又继承
2021-02-15 14:26:13
80
原创 面试题系列(1)
文章目录1、CAP理论2、Reactor(反应器)模式3、分布式如何保证一致性4、死锁和饥饿,死锁的解决方法5、AVL树、平衡树、红黑树、B树6、进程、线程的理解,进程通信,线程通信,线程不安全如何解决7、各种排序算法8、final的使用9、String StringBuffer StringBuilder10、HashMap HashTable 1.7 1.8参考文献1、CAP理论分布式环境下(数据分布)要任何时刻保证数据一致性是不可能的,只能采取妥协的方案来保证数据最终一致性。这个也就是著名的C
2021-02-15 14:21:34
75
原创 每天五个Linux命令(3)
文章目录mv:移除和重命名文件rm:删除文件ln:创建链接type:显示命令类型which:显示可执行程序的位置mv:移除和重命名文件重命名:mv file1 file2移动文件到某个文件夹:mv 多个文件名 目标目录将目录1移到目录2下:mv dir1 dir2rm:删除文件-r 递归删除;-f 强制删除;-v(–verbose,信息,冗长的)删除时显示消息行信息;-i(interactive) 提示用户确认也可以跟多个文件名用来同时删除多个ln:创建链接硬链接:不能引用目录,不能引
2021-02-01 23:03:25
49
原创 每天五个Linux命令(2)
ls:列出目录内容file:确定文件类型file 文件名less:查看文件内容less 文件名mkdir:创建目录mkdir 目录名可以同时创建多个目录cp:复制文件和目录复制目录时需要加 -r-u(–update):更新-i (–interactive 交互的):如果有同名文件,提示用户进行确认cp item1 item2 // 复制文件或者目录 1 到 2cp 多个文件或目录 目标目录 // 复制多个文件或者目录到目标目录,目标目录必须存在l
2021-02-01 23:01:03
50
原创 每天五个Linux命令(1)
date 查看时间cal 查看月历df 查看磁盘可用空间free 查看可用内存pwd 查看当前路径cd 进入目录ls 查看目录
2021-02-01 22:59:22
59
原创 每天五个Linux命令(4)
文章目录help:获取帮助文档man:显示程序手册apropos:通过关键词搜索命令whatis:显示命令概述info:显示程序信息条目alias:创建别名help:获取帮助文档help 命令man:显示程序手册man 命令apropos:通过关键词搜索命令apropos 关键字whatis:显示命令概述info:显示程序信息条目alias:创建别名使用:alias 别名=字符串(单引号括起来)等号前后不能有空格...
2021-02-01 22:58:11
80
原创 二维 Vector 初始化
记录一些,刷题的时候忘记怎么初始化了#include <iostream>#include <algorithm>#include <vector>using namespace std;vector<vector<int> > res;int main(){ int n, m; cin >> n >> m; res.resize(n);// 初始化行 for(int i=0; i
2021-01-23 23:56:22
48
原创 计算机网络-应用层
文章目录网络应用模型C/S 模型P2P 模型域名系统 DNS域名解析过程文件传输协议 FTPHTTP协议HTTP 报文结构参考文献网络应用模型C/S 模型服务器总是打开,总是处于接收请求的状态,如果收到请求,则解析请求,进行必要的处理,并将处理结果发送给客户端特点:客户机地位不均等,服务器可以通过用户权限控制管理客户机客户机不直接通信单个服务器支持的客户机有限P2P 模型各节点既是客户端又是服务器,都可以上传下载,相互之间直接通信优点:减轻了服务器的压力消除对某个服务器的完全依
2021-01-17 14:03:28
87
原创 Win10 环境下编译openjdk15
文章目录前言准备工作软件以及源代码依赖包安装小技巧编译生成配置文件编译结语参考文献前言这篇文章写于2021年1月份。我在Windows 和 Linux 平台上都试着编译过 openjdk,Linux 平台上的一般按照周大大的步骤来,不会有什么问题,不过还是给个建议:使用 Ubuntu18 最佳,因为这样你不需要手动更改 GCC 的版本(Ubuntu18 的 GCC 版本是 7.x,刚好和官方的要求符合),给自己省了点麻烦。当然,如果你是 Linux 使用高手,可以忽略我这一点建议。在 Windows
2021-01-12 11:40:57
687
4
原创 Sublime Text3 设置默认语言为中文
1、第一步肯定是安装软件了,这里就不提供安装包了2、打开软件,如下图所示点击3、进入文件夹以后进入上级目录,如下图4、复制粘贴解压得到的汉化文件,下载地址链接:https://pan.baidu.com/s/1lwwXr4e7-zgzQnU_h5E9KQ 提取码:bbls5、重启软件,之后如下图设置即可如果自己可以挂VPN,可以在命令行内直接下载,请自行搜索,在此不再提供教程。...
2021-01-06 13:37:31
559
原创 Java反射
反射定义JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。反射的作用运行时分析类运行时查看对象编写泛型数组代码利用Method对象的invoke方法调用任意方法Method对象是你想要的调用的方法的对象invoke方法调用包装在当前Method对象中的方法反射相关类Class类所有反射 API 的入口点保存类的所有信息
2021-01-02 21:01:03
90
原创 LeetCode-239
239. 滑动窗口最大值给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7]解释:滑动窗口的位置 最大值--------------- -----[1 3 -1] -3 5 3 6
2021-01-02 20:20:12
91
原创 C++的赋值表达式
在Java核心技术的书里面看到的有意思的一行代码if(x = 0){ //do something}其实这句语句永远不会被执行,因为x=0这个表达式的值为0,所以if条件句不成立给个测试代码:#include <iostream>using namespace std;int main(){ int x; if(x = 0){ cout << "Hello" << endl; } else{ printf("x的值为:%d\n", x);
2020-11-29 18:27:35
771
原创 初始化块和构造函数的执行顺序
问题在Java中,如果初始化块在构造函数之后出现,是会先执行构造函数还是初始化块?结论先直接给结论:初始化块无论在哪里出现,都会先于构造函数执行,初始化块的执行顺序就是在代码中的先后顺序测试代码public class InitialClock { private String name; private int age; { name = "hhh"; age = 23; System.out.println(name +
2020-11-29 18:14:59
748
1
原创 PAT1108
题目链接思路参考柳神,使用sscanf和sprintf,引用下面评论的话就是sscanf和sprintf用的太妙了。当sscanf读入的字符串没有与之匹配的类型的时候,temp的值会是浮点数的0,这样在sprintf将0写到字符数组b后,和字符数组a相比较就会不同。轻松解决了判断是否含有非数字,有几个小数点等,计算小数部分和整数部分的问题来源:评论网友iczfy585代码#include <iostream>#include <cstdio>#include &l
2020-08-31 19:31:10
89
原创 PAT1107
题目题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805361586847744思路首先请把题目读懂,读不懂就多读几次,或者看看别人的题解。如果画图的话,一眼就能看出结果。但是将画图的思路转换成代码,那么考的就是并查集。并查集,简单合并,但是如果按照维斯的数据结构生搬硬套不行,也就是父指针数组初始化为-1在这里不行。推荐柳神的初始化策略,每个数字的父指针都初始化为本身。但是集合的大小就需要另外编程,这时候
2020-08-31 00:11:41
126
原创 PAT1106
题目题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805362341822464思路思路其实就是DFS,找最短的路径即可。其实大家可能会可能对输入有疑问,不知道输入是在说什么。这里的意思其实是给了图的邻接表表示法,第一行代表和编号0邻接的节点有编号为2、3、5的节点。更进一步,你可以认为只是个有向图,示意如下:代码#include <iostream>#include <vec
2020-08-29 20:46:46
92
原创 PAT1105
题目思路其实题目并不难,难点在于如何把数据存进去,关于数据的存储,我并不推荐柳神的方法(可能是我太菜了,感觉那样好麻烦),我更习惯于设置上、下、左、右的边界,这样好理解,也不方便出错代码#include <iostream>#include <cmath>#include <vector>#include <algorithm>using namespace std;bool cmp(int a, int b){ return a
2020-08-26 20:54:15
87
转载 PAT1104
题目思路参考柳神的代码代码#include <bits/stdc++.h>using namespace std;int main(){ int n; long long sum = 0; cin >> n; for(int i=1; i<=n; i++){ double tmp; cin >> tmp; sum = sum + (long long)(1000* tmp
2020-08-25 20:51:17
117
Sublime Text3文件
2019-02-11
Package Control.sublime-package
2019-02-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人