- 博客(55)
- 收藏
- 关注
原创 java面试-数据库
一般情况下,我们创建的表类型是InnoDB。不重启MySQL,如果新增一条记录,id是8;重启,ID是6;因为InnoDB表只把自增主键的最大ID记录在内存中,如果重启,已删除的最大ID会丢失。如果表类型是MyISAM,重启之后,最大ID也不会丢失,ID是8;InnoDB必须有主键(建议使用自增主键,不用UUID,自增主键索引查询效率高)、支持外键、支持事务、支持行级锁。系统崩溃后,MyISAM很难恢复;综合考虑,优先选择InnoDB,MySQL默认也是InnoDB。
2023-03-30 10:31:57 375
原创 java面试-java框架
IOC:就是对象之间的依赖关系由容器来创建,对象之间的关系本来是由我们开发者自己创建和维护的,在我们使用Spring框架后,对象之间的关系由容器来创建和维护,将开发者做的事让容器做,这就是控制反转。BeanFactory接口是Spring Ioc容器的核心接口。DI:我们在使用Spring容器的时候,容器通过调用set方法或者是构造器来建立对象之间的依赖关系。控制反转是目标,依赖注入是我们实现控制反转的一种手段。
2023-03-29 20:52:33 554
原创 java面试-计算机网络
当前任务在执行完 CPU 时间片切换到另一个任务之前会先保存自己的状态,以便下次再切换回这个任务时,可以再加载这个任务的状态。任务从保存到再加载的过程就是一次上下文切换。XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript解决方案:对提交的所有内容进行过滤,对url中的参数进行过滤,过滤掉会导致脚本执行的相关内容。
2023-03-29 19:55:47 521
原创 【java面试】多线程
Sync可以说是 ReentrantLock 的亲儿子,它寄托了全村的希望,完美的继承了 AbstractQueuedSynchronizer,是 ReentrantLock 的核心,后面的 NonfairSync 与 FairSync 都是基于 Sync 扩展出来的子类, 亦即通过二者实现了公平锁和非公平锁。当要对变量进行修改时,先会将内存位置的值与预期的变量原值进行比较,如果一致则将内存位置更新为新值,否则不做操作,无论哪种情况都会返回内存位置当前的值!调用 sleep 不会释放对象锁。
2023-03-22 20:55:26 636
原创 java面试-jvm
在 java 中一般是指无用的对象因为错误的引用关系不能被 GC 回收处理如果存在严重的内存泄漏问题,随着时间推移必会引发内存溢出。内存泄漏一般是指资源管理问题和程序 BUG,内存溢出一般是指内存空间不足和内存泄漏的最终结果GC 前要做的三件事哪些内存需要回收?什么时候回收?怎么回收?
2023-03-10 21:37:12 411
原创 java面试-java集合
(JDK1.6 之前为循环链表,JDK1.7 取消了循环),Vector 是 List 的古老实现类,底层用 Object[] 存储。序,在用 Iterator 遍历 LinkedHashMap 时,先得到的记录肯定是先插入的. 也可以在构造时用带。LinkedList 底层使用的是双向链表。LinkedHashMap 是 HashMap 的一个子类,额外持有一个双向链表,维保存了记录的插入顺。TreeMap 实现 SortMap 接口,能够把它保存的记录根据键排序, 默认是按键值的升序排序,也。
2023-03-10 16:06:14 472
原创 [行人重识别论文阅读]DomainMix: Learning Generalizable Person Re-Identification Without Human Annotations
论文地址项目地址本篇论文解析引自1.论文摘要1.提出利用有标签的合成数据集A和无标签的真实数据集B训练出能泛化到未知场景C的模型。2.为了实现A+B->C,论文提出了一个新的方法DomainMix2.DomainMix框架1.该框架由基于聚类的动态训练数据集生成和域不变的行人再识别特征学习两部分组成。2.动态训练数据集生成部分,我们设计了三个准则用于筛选聚类结果,由此动态生成可靠的训练集3.在域不变的行人再识别特征学习部分我们分为训练前和训练时两个阶段。训练前对分类层动态的初始化,可
2021-11-25 11:11:41 2491
原创 [行人重识别论文专栏阅读导向]
本篇文章为目前专栏中总结论文的索引:1.换衣方向COCAS A Large-Scale Clothes Changing Person Dataset for Re-identificationPerson Re-identification by Contour Sketch under Moderate Clothing ChangeFine-Grained Shape-Appearance Mutual Learning for Cloth-Changing Person Re-Identif
2021-11-24 16:09:20 1910
原创 [深度学习基础知识]优化器 optimizer 加速神经网络训练
本片内容引自莫烦Python常用的优化器有SGDMomentumAdaGradRMSPropAdamSGD下图是不使用优化器情况下,所有的数据直接抛给卷积神经网络去计算,这样会带来巨大的运算量。所以我们提出了SGD的方式,将DATA分成一批一批的数据喂入网络,加速了神经网络的训练。Momentum传统的学习方式,W减去学习率成一个校正值,这种方法如下图一样,曲曲折折最终才能到达最优点。我们提出Momentum对传统的方式进行改变,使其能平滑的即更快速的到达最优点。AdaGr
2021-11-20 10:15:00 1442
原创 [行人重识别论文阅读]Meta Batch-Instance Normalization for Generalizable Person Re-Identification
论文地址:论文代码:预备知识:meta-learning[李宏毅老师的讲解笔记]1 文章思想BN(batch normalization):图像增强方法,相对于IN来说是增强了不同域间的差异IN( instance normalization):DG(Domain generation)中常用的方法,用来消除域之间的风格差异我们可以从描述中看出BN与IN是对立的存在,单独使用BN与IN会分别带来Under-style-normalization以及Over-style-normalization
2021-11-17 08:27:22 3430 2
原创 [行人重识别论文阅读]Fine-Grained Shape-Appearance Mutual Learning for Cloth-Changing Person Re-Identification
论文地址论文代码:暂无文章思想在上篇文章中我们引入了sketch(行人轮廓图)的思想去解决换衣问题,但是我们会在实践中发现sketch的优劣性严重影响了最后实验结果的好坏。此篇论文的核心思想就提高行人轮廓图的图片质量。方法一:利用行人标签提高轮廓图质量想法很简单就是如果该行人轮廓图能够正确的预测出行人的标签,那么其行人轮廓图的质量就会非常不错。虽然这种方法很好但是会出现一个问题:如上图的(c)所示除了轮廓以外的其它细节也被引入,其它细节虽然会提高模型的预测准确率 但是我们只是想要行人的轮廓,
2021-11-03 09:55:02 955 2
原创 [行人重识别论文阅读]Person Re-identification by Contour Sketch under Moderate Clothing Change
论文地址: https://arxiv.org/abs/2002.02295论文代码: 没有官方代码,准备日后复现,先空在这里本文思想去除掉行人的衣服特征,利用行人的轮廓来识别行人。但是这样就会产生一个问题就是不同行人之间的轮廓太为相似,所以我们必须在使用全局轮廓图的同时将轮廓图的局部信息引入。但是我们又如何充分的利用局部信息呢?方法如下图所示:如上图(b)我们以轮廓图的中心为极点,通过不断的变化θ与r来扫描到整个人的所有轮廓信息。整体流程图具体方法SPT我们将RGB图像进行空间极性
2021-11-02 16:44:21 582 1
原创 [行人重识别论文阅读]Invariance Matters: Exemplar Memory for Domain AdaptivePerson Re-identification
论文链接:https://arxiv.org/abs/1904.01990代码:https://github.com/zhunzhong07/ECNAbstract1.传统的无监督方法只关注于缩小源域与目标域之间的gap,而忽略了目标域内的变量变化,这个变化很大程度上影响了性能。2.我们提出了三种不变性:exemplar-invariance, camera-invariance and neighborhood-invariance。3.为了实现我们的目标,我们引入了一个 exemplar me
2021-10-20 15:07:53 1227
原创 [行人重识别论文阅读]无监督学习发展与小结
Unsupervised domain adaptation (UDA) for person re-ID.UDA methods have attracted much attention because their capability of saving the cost of manual annotations. There are three main categories of methods.UDA方法由于节省了手工标注的花费而吸引了许多关注,这里主要有三种方法:The first c
2021-10-18 20:39:12 1880 1
原创 [行人重识别论文阅读]Mutual Mean-Teaching: Pseudo Label Refinery for Unsupervised Domain Adaptation on Person
论文地址:https://openreview.net/forum?id=rJlnOhVYPS代码地址:https://github.com/yxgeee/MMT文章的主要核心思想顾名思义就是解决伪标签噪声问题。看到网上有很好的解析文章:https://zhuanlan.zhihu.com/p/116074945/Abstract1.最先进的无监督领域自适应人再识别方法通过在目标域上使用聚类算法生成的伪标签进行优化,将学习到的知识从源域转移到目标域,但忽略了不可避免的标签噪声的聚类过程。2.我
2021-10-18 10:41:14 1243
原创 [行人重识别论文阅读]COCAS A Large-Scale Clothes Changing Person Dataset for Re-identification
论文地址:https://arxiv.org/pdf/2005.07862.pdf注:首先这篇论文是基于自己的数据集COCAS下的,COCAS数据集目前没有官方获取途径Abstract1.query 包括 衣服模板和行人穿着其它衣服的图片。2.我们提出了一种叫BC-Net的网络,在我们的设置下可以有效的结合衣服特征和生物特征。1.Introduction下图展示了我们的搜索方法,query以及gallery的模式传统行人重识别的不足:1.模型都是基于穿着同样衣服的行人训练出来的2.生物特
2021-10-15 17:15:03 366
原创 [行人重识别论文阅读]Global Distance-distributions Separation for Unsupervised Person Re-identification
论文地址:https://arxiv.org/abs/2006.00752注:无监督看的第一篇Abstract有监督学习在现实世界的应用中由于数据标注的缺失和领域空白,使其具有局限性。而无监督学习通过领域适应去学习,这对人很有吸引力,但是却充满挑战。现阶段的无监督学习方法在通过距离正确辩别正样本和负样本的方法下,经常失败。因为这两种样本往往具有很大的重叠性,不容易分开。为了解决这个问题,我们提出了一种叫做GDS的方法,我们从全局的角度区分开正样本和负样本。我们对两个全局距离以高斯分布的方法进行建模并且
2021-10-10 16:30:59 627
原创 [行人重识别论文阅读]Relation Network for Person Re-identification
论文地址:https://arxiv.org/pdf/1911.09318v1.pdf代码:https://github.com/cvlab-yonsei/RRIDAbstractwe propose a new relation network for person reID that considers relations between individual body parts and the rest of them.Our model makes a single part-level f
2021-10-08 20:19:54 363
原创 [行人重识别论文阅读]AlignedReID: Surpassing Human-Level Performance in Person Re-Identification
论文地址:代码地址:Abstract摘要部分明确提出了本文的重要思想,利用局部特征学习影响全局特征学习,并指出局部特征的学习方法是通过计算局部特征间的最短距离进而aligned局部特征。原文:Global feature learning benefits greatlyfrom local feature learning, which performs an align-ment/matching by calculating the shortest path between twosets
2021-10-06 17:15:12 697
原创 计算机视觉学习之路之tensorflow学习-02程序实现鸢尾花数据集分类
数据集回顾先回顾鸢尾花数据集,其提供了 150 组鸢尾花数据,每组包括鸢尾花的花萼长、花萼宽、花瓣长、花瓣宽 4 个输入特征,同时还给出了这一组特征对应的鸢尾花类别。类别包括狗尾鸢尾、杂色鸢尾、弗吉尼亚鸢尾三类, 分别用数字0、1、2 表示。使用此数据集代码如下:from sklearn.datasets import load_irisx_data = datasets.load_iris().data # 返回 iris 数据集所有输入特征y_data = datasets.load_iris(
2021-06-19 16:24:18 575
原创 计算机视觉学习之路之tensorflow学习-01基本概念与常用函数
框架中的基本概念tensor张量是多维数组,用阶表示张量的维数。0阶张量叫做标量,表示的是一个单独的数,如 123;1阶张量叫作向量,表示的是一个一维数组如[1,2,3];2阶张量叫作矩阵,表示的是一个二维数组,它可以有 i 行 j列个元素,每个元素用它的行号和列号共同索引到,如在[[1,2,3],[4,5,6],[7,8,9]]中,2 的索引即为第 0 行第 1 列;注:张量的阶数与方括号的数量相同,0 个方括号即为 0 阶张量,1 个方括号即为 1 阶张量。故张量可以表示0 阶到 n
2021-06-19 15:36:49 199
原创 计算机视觉学习之路04-相机模型与相机畸变
坐标系针孔相机模型存在四个坐标系:世界坐标系、摄像机坐标系、图像物理坐标系和图像像素坐 标系。假设:• 世界坐标系的坐标为Pw(Xw,Yw,Zw),• 对应的摄像机坐标系坐标为Po(x,y,z),• 对应的图像物理坐标系的坐标为P’(x’,y’),• 对应的图像像素坐标系的坐标为p(u,v)。名称定义世界坐标系是客观三维世界的绝对坐标系,也称客观坐标系。就是物体在真实世界中的坐标。 世界坐标系是随着物体的大小和位置变化的,单位是长度单位。相机坐标系以相机的光心为坐
2021-06-17 10:07:04 429
原创 计算机视觉学习之路03-特征选择与特征提取
1.特征选择定义: 从N个特征中选择其中M(M<=N)个子特征,并且在M个子特征中,准则函数可以达到最优解。目的: 选择尽可能少的子特征,模型的效果不会显著下降,并且结果的类别分布尽可能的接近真实的类别分别。1.1 特征在一些实际问题中,我们得到的样本数据都是多个维度的,即一个样本是用多个特征来表征的。比如在预测房价的问题中,影响房价y的因素有房子面积x1、卧室数量x2等,我们得到的样本数据就是(x1,x2)
2021-05-09 15:46:33 1084
原创 计算机视觉学习之路02-图像和视频
图像和视频1.图像提到图像我们就不得不提到关于图像的若干专业词汇名词解释数字图像计算机保存的图像都是一个一个的像素点,称为数字图像。像素是分辨率的基本单位,是构成位图的基本单元,每个像素都有自己的颜色分辨率(解析度)图像分辨率就是单位英寸内的像素点数。单位为PPI(Pixels Per Inch)灰度表示图像像素明暗程度的数值,也就是黑白图像中点的颜色深度。范围一般为0-255。白色为 255,黑色为0。色调色调是指图像的相对明暗程度,在彩色图像上
2021-05-08 13:07:32 732 1
原创 计算机视觉学习之路01-人工智能与计算机视觉简介
人工智能与计算机视觉人工智能简介什么是人工智能?人工智能就是通过机器来模拟人类认知能力的技术人工智能最核心的能力就是根据给定的输入做出预判或预测。人工智能的三大要素数据,算法,算力数据 : 顾名思义,人工智能就是靠数据的训练来完成智能的预测算法 : 当你交给计算机一个任务的时候,不但要告诉它做什么,还要告诉他怎么做。怎么做的一系列指令就叫做算法。算力 : 高性能芯片组成的计算能力人工智能关系圈人工智能包含机器学习但不完全是机器学习,除机器学习以外还有由人工编程指定逻辑和算
2021-05-07 16:20:53 850 1
原创 [java源码解析]CopyOnWriteArrayList
本篇文章来源于慕课网收费专栏,本文纯为自己保留,删减大量部分,CopyOnWriteArrayList简介在 ArrayList 的类注释上,JDK 就提醒了我们,如果要把 ArrayList 作为共享变量的话,是线程不安全的,推荐我们自己加锁或者使用 Collections.synchronizedList 方法,其实 JDK 还提供了另外一种线程安全的 List,叫做 CopyOnWr...
2020-03-09 10:32:30 98
原创 [java数据结构分析]HashSet , TreeSet分析
HashSet简介:底层实现基于 HashMap,所以迭代时不能保证按照插入顺序,或者其它顺序进行迭代;add、remove、contanins、size 等方法的耗时性能,是不会随着数据量的增加而增加的,这个主要跟 HashMap 底层的数组数据结构有关,不管数据量多大,不考虑 hash 冲突的情况下,时间复杂度都是 O (1);线程不安全的,如果需要安全请自行加锁,或者使用 Co...
2020-03-08 20:33:51 203
原创 [面试题]List源码问题
1.1 说说你自己对 ArrayList 的理解?很多面试官喜欢这样子开头,考察面试同学对 ArrayList 有没有总结经验,介于 ArrayList 内容很多,建议先回答总体架构,再从某个细节出发作为突破口,比如这样:ArrayList 底层数据结构是个数组,其 API 都做了一层对数组底层访问的封装,比如说 add 方法的过程是……(这里可以引用我们在 ArrayList 源码解析中...
2020-03-08 16:11:16 569
原创 [java虚拟机]5.垃圾回收算法,垃圾回收器
引用博文:https://blog.csdn.net/yrwan95/article/details/82829186垃圾回收算法1.标记-清除算法用法:1.标记可回收的垃圾2.清除需要被回收的垃圾问题:容易产生内存碎片,当内存碎片过多时,想要放入一个大的对象无法放入。2.复制算法复制算法其实就是解决了标记清除算法中内存碎片的问题。在YongGc的过程实际就是利用的copy...
2020-03-08 00:13:05 148
原创 [设计模式分析]结构型模式之适配器模式
应用场景:一提到适配器模式,肯定就会提到兼容性。没错,适配器模式就是为了解决兼容性问题而提出的。分类:主要分为三类:类适配器模式,接口适配器模式,对象适配器模式工作原理:类适配器:核心就是这个类适配器:实现5v接口,继承220v接口//适配接口public interface IVoltage5V { public int output5V();}//被适配的类pu...
2020-02-22 23:13:05 117
原创 [设计模式分析]结构型模式之桥接模式
应用场景桥接模式最典型的一个应用就是解决类爆炸的问题。如下问题:传统解决方案造成类爆炸:桥接模式解决问题:提到桥接模式就会反复的提到一句话:将抽象与实现分离开来!简单点说:就是指在一个软件系统的抽象化和实现化之间使用关联关系(组合或者聚合关系)而不是继承关系,从而使两者可以相对独立地变化,这就是桥接模式的用意举一个简单例子:该图其实就体现了 抽象与 实现之间的解耦!//Ac...
2020-02-22 22:45:02 89
原创 [算法练习]leetcode01
求给定二叉树的最小深度。最小深度是指树的根结点到最近叶子结点的最短路径上结点的数量。public class Solution { public int run(TreeNode root) { if(root==null) { return 0; } if(root.left==null&&...
2020-02-22 14:58:15 156
原创 [设计模式分析]创建型模式之原型模式
应用场景先看这样一个问题:传统的方式:缺点所在:很明显,我们克隆一只羊都需要将另一只羊的属性每次都复制一遍,这样很麻烦。解决方案1.实现Cloneable 接口 ,二 就是重写clone方法。public class Sheep implements Cloneable { private String name; private int age; private Stri...
2020-02-20 17:37:15 94
原创 [设计模式分析]创建型模式之建造者模式
应用场景我觉得建造者模式的应用场景拿来与工厂模式做比较是最好的,工厂模式侧重的是解决创建实例对象产生的冗余问题,侧重的是创建对象结果,而我们的建造者模式侧重的是创建过程,下面我们引出一个问题描述:传统的解决方案:一个抽象的房子类封装各种方法,构造CommonHouse继承实现构造CommonHouse的操作,构造HighBuilding同理。问题所在:耦合性过于强,我们将房子和建房的...
2020-02-20 17:09:04 138
原创 [操作系统]linux常用知识点
文件权限首先文件的权限分为可读,可写,可执行。我们可以为自己,群组,其它用户分别设置不同的权限。例:chmod 777 /etc/squid 运行命令后,squid文件夹(目录)的权限就被修改为777(可读可写可执行)。第一个数代表自己权限,第二个数代表群组权限,第三个数则代表其它用户权限读写可执行421依照上面的表格,权限组合就是对应权限值求和,如下...
2020-02-20 14:21:20 160
转载 [数据库分析]redis入门
基础数据类型String> set hello worldOK> get hello"world"> del hello(integer) 1> get hello(nil)
2020-02-20 11:34:02 96
原创 [设计模式分析]创建型模式之工厂模式
应用场景在软件开发中,当我们会用到大量的创建某种对象时,就会使用工厂模式。具体问题分析我们现在提出一个需求,一个披萨店,分为希腊披萨和奶酪披萨,完成订购披萨的功能。传统解决方案:仅展示OrderPizza代码:如上述代码就暴露了传统模式的缺陷,当有大量对象的时候,并且创建pizza的对象好多功能都需要用到(此题功能较少,意思就是如果有多个OrderPizza),导致每创建一个类似P...
2020-02-20 10:45:41 187
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人