- 博客(20)
- 收藏
- 关注
原创 c++中的explicit关键字
explicit 的意思是明确的,显式的该关键字用于类的构造函数前,避免默认的隐式类型转换class foo{ public: explicit foo(){} }所谓的隐式类型转换是:class MyString{ public: char *ptr_; foo(int size){ ptr_ = malloc(size+1);//分配内存空间 memset(ptr_,0,size+1);//填充0 } } int main(){
2020-08-08 20:35:21
159
原创 C++中的namespace命名空间和匿名命名空间
命名空间:namespace叫命名空间,用于解决函数/变量重名的问题,如果一个函数/变量被声明在命名空间中,那么使用他们的时候需要加上作用域namespace foo{ int x = 10; } cout<<foo::x<<endl;除了加上作用域,还可以使用using关键字来默认指定命名空间namespace foo{ int x = 10; } using namespace foo; cout<<x<<endl
2020-08-08 17:21:50
859
原创 C++中的左值、右值、左值引用和右值引用
左值:分配了固定内存地址的变量,之所以叫左值是因为它既可以出现在等号左侧也可以出现在等号右侧int x = 3; //x是一个左值,被分配到了一个固定的内存空间 cout<<x<<endl; //程序的其他部分可以访问这个内存空间右值:编译器临时分配了内存空间的变量,访问过一次之后就被删除了。之所以叫右值是因为它只能出现在等号右侧int x = square(5); // x是左值,square(5)是一个右值 int y = 3+4; //3+4 也是一
2020-08-08 16:59:40
173
原创 Paper Reading: Relational Action Forecasting
摘要本论文解决视频中多人场景的动作预测的问题。通过H帧视频,检测并预测随后T帧的动作。我们的方法通过建立一个循环图同时对不同人物之间的时空交互动作进行建模。使用Faster R-CNN得到人物的proposal。我们的方法可以学习选择关系子集而不需要明确的监督,因此可以对付有挑战性的视频数据。我们模型的名字叫做判别关系循环网络。并且在AVA J-HMDB数据集上面做了验证。Introducti...
2019-06-04 00:27:12
560
原创 Paper Reading《Online Detection of Long-Term Daily Living Activities》
paper名字太长,标题放不下,全名是《Online Detection of Long-Term Daily Living Activities by Weakly Supervised Recognition of Sub-Activities》。通过子活动弱监督识别的长时间的日常行为活动的在线监测。摘要解决的问题:由于日常活动的类内差异大,并且对于长时间的日常活动来说,里面所包含的子活动...
2019-05-29 23:38:41
204
原创 C++中的unordered_set
使用时候需要#include <unordered_set>定义:unordered_set<int> myset;存入unordered_set 之中是不重复的数。使用函数:myset.insert(c);//插入某个值it = myset.find(c);当 it==myset.end(),说明没有找到myset.erase(c)//去掉某个值...
2019-05-22 21:24:36
913
原创 C++中的sort函数
C++中的sort函数的使用:sort(start,end,排序方法)start和end是参与排序的序列的起止排序方式是自定义的排序规则,例如升序或者降序等。//按照升序排列static bool cmp(char &a,char &b){ return a<b;}int main(){ string a; cin>>a; sort(a.b...
2019-05-22 19:31:43
191
原创 二分法的本质及应用
如果对于一段序列,我们可以按照某种性质将其分成【具备该性质】和【不具备该性质】的两段子序列,而二分法可以用于寻找这两段子序列的边界。下面给出两段代码//用于寻找具备某性质的子序列的下边界int bsearch_lb(int l, int r)//lowerbound{ while (l < r) { int mid = l + r >> 1...
2019-05-18 12:52:59
532
原创 逆序对的数量
给定一个长度为n的整数数列,请你计算数列中的逆序对的数量。逆序对的定义如下:对于数列的第 i 个和第 j 个元素,如果满 i < j 且 a[i] > a[j],则其为一个逆序对;否则不是。输入格式第一行包含整数n,表示数列的长度。第二行包含 n 个整数,表示整个数列。输出格式输出一个整数,表示逆序对的个数。数据范围1≤n≤1000000输入样例:62 3 4 5...
2019-05-18 11:09:33
1261
原创 机器学习类型及典型算法
按照是否有人监督分类可以分为有监督学习 无监督学习和半监督学习有监督学习给定的训练数据是data-label这样的组合,我们可以通过学习data和label之间的对应关系,得到一个模型,从而可以预测新数据的label常见的算法:k-近邻:这是一种只需要记录样本数据,不需要消耗计算量学习的方法。通过计算待预测数据与已有数据的距离,取最近的k个距离为参考,得到预测的结果。线性回归:线性回归...
2019-05-16 12:29:33
242
原创 Paper Reading: Detecting and Recognizing Human-Object Interactions
AbstractIntroduction得益于深度学习的特征表征方法,基于视觉信号对单独个体进行识别的工作有了很大的提升,如物体检测和人的动作姿态估计。但是,识别单一个体只是机器进行视觉世界理解的一小步,对个体间关系的识别对图像理解尤为重要。本文中我们聚焦于人-物交互关系的研究。人-物交互关系识别的任务可以理解成是对<人,动作,物品>三元组合的检测任务,该任务具有很大的应用价值和...
2019-05-06 23:36:25
420
原创 分类指标:ROC AUC PR F1
ROC计算公式ROC的全称为:接收者操作特征(Receiver Operating Characteristic)横轴:负正类率(False Postive Rate FPR)纵轴:真正类率(True Postive Rate TPR)对于FPR和TPR,他们的计算公式为:TPR=TPTP+FN TPR=\frac{TP}{TP+FN}TPR=TP+FNTPFPR=FPFP+TN ...
2019-05-05 20:46:40
709
原创 交叉熵损失函数
交叉熵损失函数使用神经网络模型的分类问题通常是经过softmax层,将对类别的预测转化为某输入归属于每个类别的概率值,如输出结果为(0.5,0.4,0.1)即表示输入的样本经过网络计算之后,归属于类别1、类别2和类别3的概率分别为0.5,0.4和0.1,这个就是通过神经网络计算之后的结果的概率分布,那么如何评价这个结果的好坏呢?我们假设输入样本对应的真值是类别1,即用独热码表示就是(1,0,0...
2019-05-03 22:25:59
169
原创 python递归需要使用self
在刷剑指offer的时候遇到合并链表的题,使用python尝试用递归方法来解,结果出现了global name 'Merge' is not defined的错误,原因是在递归调用的时候需要使用self.Merge()# class ListNode:# def __init__(self, x):# self.val = x# self.next ...
2019-05-03 16:07:00
1674
1
原创 Paper Reading《Relation Networks for Object Detection》
主流的基于深度学习的物体检测方法是对不同类别进行单独的检测,而本文提出了关系网络的方法,通过对不同物体间的关系进行建模,来优化物体检测任务。主流的物体检测任务流程物体检测任务可以分成:1. 图片特征生成 2.区域特征提取 3.实例识别 4. 多余框的去除 四个部分,而本文提出的Relation Module能够优化后面两个流程,即实例识别和多余框去除。Object Relation Mod...
2019-05-01 19:55:34
186
原创 Paper Reading 《Attention Is All You Need》
目录Query Key 和ValueMulti-head attention整体结构Query Key 和Value首先是对这三个名词的介绍,Key和Value指的是将source中的一句话的每个成分看成是一个一个的元素,而这些元素是由键Key和值Value来表示的。而query是target里面的元素,通过比较query和所有key之间的相似度,来得到每个key的重要程度,即权重。对sour...
2019-05-01 12:46:53
131
原创 深度学习任务中的指标:mAP
mAP的全称是:Mean Average Precision,在讲mAP之前需要先介绍一下AP(Average Precision)平均准确率准确率Precision的计算公式是:precision=TP/(TP+FP)即预测样本中实际正样本数 / 所有的正样本数在分类任务中,测试集的feature map通过全连接层会得到分类的scores, 设定了不同的score阈值会使测试集得到不同...
2019-04-30 21:56:44
1329
原创 查看服务器端的图片
介绍两个查看服务器端的图片的工具方法一:ssh的Xforwarding在运行ssh登录服务器的时候加上-X开启图形界面模式使用nautilus指令可以在打开一个文件浏览器窗口,这样就可以直接点击浏览图片了,超方便还有一个指令是eog xxx.jpg,就是打开一个imageviewer另外,在Xforwarding模式下,也可以使用Python的matplotlib绘图,这样在服务器...
2019-04-30 18:01:08
5477
1
原创 在caffe中添加或修改层
在caffe中添加层主要有下面几个步骤:修改proto文件文件位置在caffe/src/caffe/proto在这个文件中添加或修改层名和层的参数注意数字索引不能重复message BlobProto { optional BlobShape shape = 7; repeated float data = 5 [packed = true]; repeated float ...
2019-04-30 15:21:46
446
原创 使用caffe自带的time命令计算每层消耗的时间
在训练backbone为mobilenet的模型的时候,发现训练过程中每个迭代所需要的时间都很长,于是考虑使用测试工具测试每层所需要的时间,来排查原因.其中caffe自带的net_speed_benchmark工具已经被弃用了Deprecated. Use caffe time --model=... " "[--iterations=50] [--gpu] [--d...
2019-04-29 21:58:06
1203
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人