- 博客(45)
- 收藏
- 关注
原创 RPC笔记
包含200个类别,17个超类,83739张图片,包括53739张单物品实例图和30000张超市结算图对于识别的场景也分为三个难度每一个图片的分辨率为25921944对于每个类别,一共有160个视觉的图片360/94 = 160(4是top virew,45view 30view horizontal view)评价指标 :表示为第I张图片的,第K个类别的数量和真实的标注的差值表示为第I张图片所有的类别和真实标注的差值。
2023-03-29 21:16:23 428
原创 Locount dataset 记录
当 N= 0 时,只是一个faster-rcnnCLCNet是根据Cascade R-CNN改的N在这个网络里,作者设置的是3,并且设置了实例的数量最大为50关于计数网络部分,作者说如果直接回归出一个数量是很困难的,它定义了一个又粗到细的网络,如图中,N等于3那第一个网络它会取 00,01,10,11即把64(2的6次方>50)分为4部分,然后以一个多分类任务去预测它数量所在的区间。0~1616~3232~4848~64第二个网络就把64 分为16份0~4。
2023-03-28 22:29:00 481
原创 阅读Domain Adaption in One-Shot Learning(记录)
在domain adaption中,训练集为源域,S代表,测试集为目标域,T代表,其数学表示为其中,fθ代表的是一个映射函数,可以将输出的特征做一个映射,让S域到T域之间平滑。其中,Bs和Bt分别为源域和目标域的batch,在后面两个实验中,都设置为1。并且可以看见在对抗领域自适应中,训练过程是无标注的,仅有采样x的输入,并没有label的信息,对抗领域自适应是一个无监督的领域自适应根据其优化策略,给出了K-way one shot learning task的训练伪代码。
2023-03-25 22:43:27 542
原创 改HCP数据集记录
parser.add_argument(‘–set_cost_screenLight’, default=1, type=float,help=“phone cost set”)parser.add_argument(‘–screenLight_loss_coef’, default=1, type=float)#############################################################screenLight_labels.append(torch.tenso
2023-03-12 23:20:56 191
原创 2022_天勤数据结构高分笔记_第二章_算法
3、将顺序表的所有元素逆置void exchange(List &L,int low,int high){ //顺序表置换方法 while(low<high){ L.data[low] = L.data[low]+L.data[high]; L.data[high] = L.data[low]-L.data[high]; L.data[low] =L.data[low]-L.data[high]; low+=1; high-=1;}}4、在顺序表中删除下标i
2021-03-26 22:04:12 1149
原创 ROS控制小车移动
安装语音识别模块首先我们需要安装语音识别的模块,可以选择pocketphinxk开源包但是pocketphinx识别,需要自己导入识别文本 ,很麻烦,因此我们选用科大讯飞SDK。进入科大讯飞注册: https://www.xfyun.cn/?ch=xfow记住APPid 和 linux MSCcd catin_ws/srcgit clone https://github.com/ncnynl/xf-ros.git把CMakeLists.txt修改target_link_libra
2020-12-20 16:43:29 4629 3
原创 BP神经网络实例
前向传播:输出层:同理求得:Out h2 = 0.979164 Out h3 = 0.995275隐含层:求误差:反向传播:如求W7的误差影响:可得:23新的W7 = W7-
2020-12-20 15:34:56 224 1
原创 K-means算法实例
K-means算法:利用相似性度量方法来衡量数据集中所有数据之间的关系,将关系比较密切的数据划分到一个集合中。(1) K-means算法首先需要选择K个初始化聚类中心(2) 计算每个数据对象到K个初始化聚类中心的距离,将数据对象分到距离聚类中心最近的那个数据集中,当所有数据对象都划分以后,就形成了K个数据集(即K个簇)(3)接下来重新计算每个簇的数据对象的均值,将均值作为新的聚类中心(4)最后计算每个数据对象到新的K个初始化聚类中心的距离,重新划分(5)每次划分以后,都需要重新计算初始化聚类中心
2020-12-20 15:30:28 3247 2
原创 朴素贝叶斯算法
贝叶斯算法:假设有一个数据集,由两类组成(简化问题),对于每个样本的分类,我们都已经知晓。现在出现一个新的点new_point (x,y),其分类未知。我们可以用p1(x,y)表示数据点(x,y)属于红色一类的概率,同时也可以用p2(x,y)表示数据点(x,y)属于蓝色一类的概率。那要把new_point归在红、蓝哪一类呢?我们提出这样的规则:如果p1(x,y) > p2(x,y),则(x,y)为红色一类。如果p1(x,y) <p2(x,y), 则(x,y)为蓝色一类。换人类的语言
2020-12-20 15:28:08 235 1
原创 KNN算法
KNN算法重点在于 k值的选取和 点距离的计算K值的选取过小容易过拟合过大容易欠拟合点距离的计算,通常情况下下,使用 欧式距离,如在 二维空间下就有而更高维空间则有 :简单伪代码实例:...
2020-12-20 15:25:46 127 1
原创 人工智能复习资料
人工智能研究什么1、 搜索与求解2、 学习与发现3、 知识与推理4、 发明与创造5、 感知与响应6、 理解与交流7、 记忆与联想8、 竞争与协作9、 系统与建造10、 应用与工程机器学习方法的三大类:监督学习无监督学习强化学习不确定性推理原理:不确定性可以理解为在缺少足够信息的情况下做出判断,是智能问题的本质特征;推理是人类的思维过程,它是从已知事实出发,通过运用相关的知识逐步推出某个结论的过程。所谓不确定性推理原理就是从不确定性初始证据出发,通过运用不确定性的知识,最终推出
2020-12-20 15:16:57 170 1
原创 堆排序
堆排序重点在于第一步构造堆结构后,使用下沉算法,每次把指针指向的索引元素和跟结点交换,再指针-1,每次都把堆结点中最大的元素取出package Mr_math;import java.util.Random;public class Heapsort { /*public int N; private int [] a; public Heapsort(int maxSize) { a = new int[maxSize+1]; for(int i=0;i<=maxSize;
2020-11-08 16:17:58 716
原创 索引优先队列
对于优先队列(堆),定义为每个父结点都要大于两个叶子结点。在优先队列中,元素的添加可以通过将每个元素添加到叶子中,再通过上浮算法swim来不断跟父结点比较,来维护优先队列的完整性。但是对于某些需要删除特定位置的时候,需要从头到尾遍历得到该元素的特定位置,再进行删除。因此索引优先队列就是维护了一个逆序数组,保存了每个元素在优先队列的下标,如 我要删除 6这个元素 ,我能够通过qp[6]得到6在pq的位置下标,再通过将pq[qp[6]]和最后的一个结点进行交换,进行删除,然后下沉sink后,保持优先队列。
2020-11-08 16:09:29 303
原创 java数组实现优先队列
堆定义:结点大于两个子结点的二叉树使用堆来实现优先队列从1开始存储有子结点的2倍为父结点如 a[1] 的子结点为 a[2],a[3],a[2]的子结点为a[4],a[5]队列的入队可以看成叶子结点的上浮队列的出队可以看成跟结点的下沉上浮算法public void swim(int k) { while(k > 1&& a[k/2]<a[k]) { int n = a[k/2]; a[k/2] = a[k]; a[k] = n; k=
2020-11-03 20:56:29 310
原创 union-find 加权union算法
思路给每个触点一个权重,使得总是让小数加到大树上public class UF2 { private int[] id; private int[] sz; private int count; public UF2 (int N) { id = new int[N]; sz = new int[N]; this.count = N; for(int i=0;i<count;i++) { id[i] = i; sz[i] = 1; }
2020-10-24 20:56:45 257
原创 union-find quick_union 实现
思路public int find(int number) { while(number != id[number]) number = id[number]; //获取到索引跟连接分量相同的触点 return number; }寻找到索引跟连接分量相同的为根节点public void quick_union(int p, int q) { int pInt = find(p); int qInt = find(q); if(pInt == qInt) { retur
2020-10-24 17:26:27 99
原创 union-find算法 quick_find实现
定义APIUF(int N) 整数标识N个触点union(int p,int q) 在P Q中添加一条连接connected(int p,int q) 判断两个触点是否连接count() 连通分量的数量初始化矩阵为0 1 2 3 4 5 6 7 8 9第一次归并第二次第三次代码实现package Mr_math;import java.util.Random;import java.util.Scanner;public class UF { private int
2020-10-24 16:17:29 173
原创 安装ROS 排坑记录
一、在ROS中添加源这几天装ROS,也帮及格兄弟装了几次,一直掉坑里,就把所有遇到的坑给罗列一遍。不少博客是无脑复制粘贴,直接把官方源给整过来了如:这样,安装ROS的速度,实测,一天一夜!因此应该使用国内镜像源sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/
2020-09-11 09:20:49 335
转载 VMware 安装 wmware tools 快速
Ubuntu 16.04 下安装VMware Tools:第一行命令:sudo apt-get upgrate第二行命令:sudo apt-get install open-vm-tools-desktop -y第三行命令:sudo reboot
2020-09-09 12:20:33 219
原创 java 实现插入排序
思路插入排序将要排序的数据分为有序区和无序区不断的从无序区取数插入到有序区,直到所有排序完毕如:3,-1,9,10,-2,5,1,8第一轮 3 |-1,9,10,-2,5,1,8第二轮 -1,3|9,10,-2,5,1,8第三轮 -1,3,9|10,-2,5,1,8第四轮 -1,3,9,10|-2,5,1,8第五轮 -2,-1,3,9,10|5,1,8第六轮 -2,-1,3,5,9,10|1,8第七轮 -2,-1,1,3,5,9,10|8第八轮 -2,-1,1,3,5,8,9,10|
2020-08-21 20:46:47 165
原创 java 实现选择排序
选择排序思路第一轮取最小元素放在数组的第一个,第二轮从数组的第一个开始选择最小的元素放在数组的第二个以此类推如:3,-1,9,10,-2,5,1,8第一轮 -2,|-1,9,10,3,5,1,8第二轮 -2,-1|,9,10,3,5,1,8第三轮 -2.-1,1|,10,3,5,9,8第四轮 -2.-1,1,3,|10,5,9.8第五轮 -2,-1,1,3,5|,10,9,8第六轮 -2,-1,1,3,5,8|,9,10第七轮 -2,-1,1,3,5,8,9|,10代码实现pu
2020-08-21 16:41:07 162
原创 java 实现冒泡排序
冒泡排序每次使得最大(最小)的元素移动到最后一位如 3,-1,9,10,-2第一趟1、 -1,3,9,10,-22、 -1,3,9,10,-23、 -1,3,9,-2,10第二趟1、 -1,3,9,-2,102、 -1,3,9,-2,103、 -1,3,-2,9,10第三趟1、 -1,3,-2,9,102、 -1,-2,3,9,10第四趟1、 -2,-1,3,9,10代码实现public static void mai
2020-08-21 11:21:26 156
原创 双向链表实现栈
代码实现:package stack;public class LinkListStackDemo { public static void main(String[] args) { // TODO Auto-generated method stub LinkListStack stack = new LinkListStack(); stack.push(1); stack.push(2); stack.push(3); System.out.println("---
2020-07-21 15:14:30 232
原创 数组栈
数组栈栈类class ArrayStack { private int[] stack; //数组栈 private int MaxSize; //栈的容量 private int top; //栈的指针 public ArrayStack(int MaxSize){ this.MaxSize = MaxSize; stack = new int[this.MaxSize]; top = -1; //栈为空时,指针指向-1 }判断栈满或栈空public bool
2020-07-21 15:12:40 205
原创 循环单向链表解决约瑟夫问题
约瑟夫问题男孩类class Boy{ private int no; private Boy next; public Boy(int no){ this.setNo(no); } public int getNo() { return no; } public void setNo(int no) { this.no = no; } public Boy getNext() { return next; } public void setNext(Boy next
2020-07-18 17:00:07 71
原创 双向链表实现水浒排行增删改查
双向链表与单向链表的不同在于,容易出现空指针异常在添加时:heroNode.pre = temp; if(temp.next!=null){ temp.next.pre = heroNode; heroNode.next = temp.next; } temp.next = heroNode;如果刚好是最后一个里面添加,需要 temp.next!=null的限制在删除时,有两种情况://删除的不是最后一个节点则if(temp.next!=null){
2020-07-17 16:57:02 157
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人