2023/3/20粒子群(PSO)算法老师又没来,这说明助教比老师强,男助教能讲算法,女助教讲论文怎么写,说明男助教强大作业相关下周起开始汇报,下周一按照题目第一关键字,顺序号第二关键字讲15分钟,问答5分钟下周一、三讲的组只需要把算法设计讲出来即可上课内容TheParticleSwarmOptimizationAlgorithm(粒子群)Origins:1986年,有人描述这个过程用3个简单的行为。Separation避免人群过于拥挤Alignment朝领头的个体对齐Cohesion(内聚)个体会朝着中间个体走,开始向中间集合结合了自身经验和群体(原文为social)经验Concept:用大
ViT概括论文题目:ANIMAGEISWORTH16X16WORDS:TRANSFORMERSFORIMAGERECOGNITIONATSCALE论文地址:https://openreview.net/pdf?id=YicbFdNTTy作者来自Google亮点:一些有趣的特性:CNN处理不太好但是ViT可以处理好的例子:遮挡数据分布偏移加入对抗性的patch排列作者认为:对于CNN的依赖是不必要的纯Transformer可以做到和CNN媲美的结果Transformer需要更少的训练资源,即使如此,也需要2500TPUv3天数。这里说的少,只是跟更耗卡的模型做对比。在CV使用Transforme
开场多模态串讲的上篇是比较传统的多模态任务多模态最后的模态交互很重要传统的缺点是都用了预训练的目标检测器,训练和部署都很困难。ViLT把预训练的目标检测器换成了一层的PatchEmbedding。因此容易比不过c类的方法ViLT训练很慢认为未来是c类的模型结构Loss:b类(CLIP)仅用对比学习的loss(ImageTextContrastive),比较简单。c类由于有目标检测,因此提了WordPatchAlignmentViLT中发现WPALoss非常慢MLM的LossImageTextMatching效果也很好认为目标函数应该是ITC+ITM+MLM的合体回顾CLIP双塔模型让已有的(图
1.图的概念基础概念顶点集合(vex-set):如上图S(vex)=边集合(arc-set):如上图S(arc)=度(degree):⽆向图中从⼀个点延伸出去的边数就是该点的度;有向图中包含出度和⼊度;出度(out-degree):有多少条边指向某点就是该点的出度;⼊度(in-degree):从某点出发向外指向延伸的边数就是该点的⼊度;图的分类:有向图,无向图,权重图有向图无向图权重图图的储存存储的关键是点集合和边集合;使用邻接矩阵储存:顶点信息存储在⼀维数组中,边信息存储在⼆维数组中(不常用)优点和缺点优点:很容易算出边邻接关系;以及节点的度(不管是出度还是⼊度)缺点:边集合存储空间复杂度⽐
1.图的概念基础概念顶点集合(vex-set):如上图S(vex)=边集合(arc-set):如上图S(arc)=度(degree):⽆向图中从⼀个点延伸出去的边数就是该点的度;有向图中包含出度和⼊度;出度(out-degree):有多少条边指向某点就是该点的出度;⼊度(in-degree):从某点出发向外指向延伸的边数就是该点的⼊度;图的分类:有向图,无向图,权重图有向图无向图权重图图的储存存储的关键是点集合和边集合;使用邻接矩阵储存:顶点信息存储在⼀维数组中,边信息存储在⼆维数组中(不常用)优点和缺点优点:很容易算出边邻接关系;以及节点的度(不管是出度还是⼊度)缺点:边集合存储空间复杂度⽐
配置文件设置setnumber(设置行号)setnocompatible(设置不兼容vi模式,不设置会导致许多vim特性被禁用)setclipboard=unnamed(设置普通的复制粘贴的内容和vim复制的内容相互使用)打开、编辑,查找文件vim+任意文件名,如vimfile.txt,直接编辑文件,不存在则创建文件已经打开了vim的情况,使用:edit+文件名编辑其他文件,:editfile.txt:edit*.txt查找当前目录以txt结尾的文件,使用tab补全提示,左右切换选择文件:edit**/*.txt查找当前项目(多个目录)的所有带txt后缀的文件:edit./列出当前目录所有的文
配置文件设置setnumber(设置行号)setnocompatible(设置不兼容vi模式,不设置会导致许多vim特性被禁用)setclipboard=unnamed(设置普通的复制粘贴的内容和vim复制的内容相互使用)打开、编辑,查找文件vim+任意文件名,如vimfile.txt,直接编辑文件,不存在则创建文件已经打开了vim的情况,使用:edit+文件名编辑其他文件,:editfile.txt:edit*.txt查找当前目录以txt结尾的文件,使用tab补全提示,左右切换选择文件:edit**/*.txt查找当前项目(多个目录)的所有带txt后缀的文件:edit./列出当前目录所有的文
1. 测试真实的应用程序1.1. 应该以实际产品的使用方式进行测试1.2. 所有的基准测试通常都包括一个预热期,在这期间,JVM可以将代码编译到最佳状态1.3. 微基准测试(microbenchmark)1.3.1. 通过测量一小部分代码的性能来确定多种实现中哪个最好1.3.2. 必须读取测试的结果1.3.2.1. 从局部变量改为实例变量(用volatile关键字进行声明)即可测量这个方法的性能1.3.2.2. 即使微基准测试是单线程的,也需要使用volatile变量1.3.3. 必须测试一系列的输入值1.3.3.1. 最好提前算好输入值1.3.4. 必须测量正确的输入值1.3.4.1. 捕获
JavaSE:多线程学习01初识进程1.1Process&Thread1、首先简要介绍程序。程序是指令和数据的有序集合,其本身没有任何运行的含义,只是一个静态的概念。2、进程则是执行程序的一次执行过程,是一个动态的概念。是系统资源分配的单位。3、通常在一个进程中可以包含若干线程。线程是CPU调度和执行的单位。PS:很多线程是模拟出来的,真正的多线程是指有多个CPU,即多核,如服务器。如果是模拟出来的多线程,即在只有一个CPU的情况下,在同一个时间点,CPU只能执行一条代码。由于切换速度很快,所以会出现同时运行的错觉。4、线程:线程就是独立的执行路径;在程序运行时,哪怕没有手动创建线程,后台也会
1. 测试真实的应用程序1.1. 应该以实际产品的使用方式进行测试1.2. 所有的基准测试通常都包括一个预热期,在这期间,JVM可以将代码编译到最佳状态1.3. 微基准测试(microbenchmark)1.3.1. 通过测量一小部分代码的性能来确定多种实现中哪个最好1.3.2. 必须读取测试的结果1.3.2.1. 从局部变量改为实例变量(用volatile关键字进行声明)即可测量这个方法的性能1.3.2.2. 即使微基准测试是单线程的,也需要使用volatile变量1.3.3. 必须测试一系列的输入值1.3.3.1. 最好提前算好输入值1.3.4. 必须测量正确的输入值1.3.4.1. 捕获