自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 【黑马云盘 Debug】ASSERT: “i >= 0 && i < size()“

上传文件时,报错ASSERT: “i >= 0 && i < size()”tmp 是一个空字符串,这将导致数组越界错误,要设置一下。

2023-10-27 23:14:25 180

原创 【黑马云盘 Debug】getLoginStatus_err = “illegal value“ ASSERT failure in QList::at: “index out of range

首先看一下redis的端口号是否一致,我之前配置的端口号是6380,但在服务器上的cfg.json中的端口号是6379,要修改一致。如果执行./fastdfs.sh all,没有反应,是因为fastfds.sh文件里需要先启动tracker。注意:./start.sh一定都要启动成功,仔细看一看,可能是配置出了问题。产生了端口冲突,我将配置文件中的对应端口修改了一下哎,重新启动成功。我运行./fcgi.sh显示。

2023-10-27 19:27:48 147 3

原创 【ROS】获得gazebo仿真环境下的真实数据

rossrv info gazebo_msg/GetModelStaterostopic echo /gazebo/model_states

2023-10-19 22:07:06 306

原创 Effective C++ 学习笔记 —— 1. 让自己习惯C++

C++的编译流程:C++代码的编译流程通常包括了多个阶段,从源代码到可执行程序的生成。需要注意的是,这个流程可能在不同的编译器和操作系统上有所不同。另外,现代的编译器和开发环境通常会在这些阶段中进行优化,以提高代码的性能和效率。

2023-08-09 15:52:55 415

原创 【配置】Ubuntu和Win10双系统开机时缺少选项,直接进入Ubuntu

显示器的线应该连在主机的显卡槽上,不要连错了。

2022-08-21 20:40:23 1083

原创 【配置】在固态上win10和ubuntu20.04双系统安装注意事项

先安装win10,把固态分区,删除打算安装ubuntu的区,使其成为未分配,机械磁盘不能有未分配区域,否则ubuntu会自动安在机械上。安装两个系统时,BIOS都统一设置为UEFI或者统一设置为legacy,最好都设置为UEFI。......

2022-07-22 09:45:57 730

原创 【配置】tensorflow.config.list_physical_devices(“GPU“) []是空

问题:tensorflow.config.list_physical_devices("GPU") []是空 解决:将cuDNN的lib64和include下的文件都copy到cuda相应的位置下 问题:torch.cuda.is_availble() False 解决:cuda11.2没有对应的pytorch,pytorch和cudatoolkit版本不对应...

2022-07-22 09:39:34 4388 1

原创 【GAN】Generative Adversarial Nets

GAN是生成式模型,包括两个部分,生成器Generator和鉴别器Discriminator,G用来获取整个数据的分布,D用来判断样本是真实数据还是G生成的数据,G和D可以是任意的网络架构,最简单的是使用MLP。鉴别器的输出是一个标量,1代表D认为输入数据是真实样本,0代表D认为输入数据是G的生成样本。目标函数是式(1.1),G最小化式(1.2),让D尽量认为G生成的样本是真实样本,D最大化式(1.3),尽量分清真实样本和生成器生成的样本。......

2022-07-18 14:49:32 105

原创 集成(Ensembling)学习 Bagging Boosting Stacking

Boosting是按顺序训练模型,每个模型对其前序做出改正,GradientBoosting是让新的模型针对前一个模型进行拟合,AdaBoost是让新的模型关注前一个模型中欠拟合的训练实例,增加分类错误的训练实例的权重。Bagging,训练n个模型,每个模型独立并行训练,回归问题将每个模型的输出做平均得到结果,分类问题对每个模型输出的类别做统计,选出投票最多的类别作为结果。,再输入最终的模型得到最终的输出,可以多层。的输出看成是特征送入下一层的。...

2022-07-18 14:48:48 352

原创 【人工智能 一种现代方法】逻辑推理-复习

(1)基于知识的Agent可以形成复杂世界的表示,使用推理过程导出关于世界的新表示,并使用这些新表示来推断要做什么。基于知识的Agent(KBA)的核心部件是知识库。知识库是一个语句集合。语句用知识表示语言表达,表示关于世界的断言。直接给定的语句是公理,推导得到的语句是定理。(2)逻辑是一种表示信息的形式语言,可以得出结论。句法定义句子的形式。命题是有确切真值的陈述句;不能被分解成更简单的命题称作原子命题;由简单命题通过连接词连接而成的命题,称作复合命题。联结词是两个命题真值之间的联结,而不是命题内容之间的

2022-06-23 23:19:58 1570

原创 【人工智能 一种现代方法】搜索-复习

(1)理性AgentAgent:通过传感器感知环境,通过动作执行器执行动作反馈到环境。Agent感知序列是agent所收到的所有输入数据的完整历史。Agent的行动选择取决于到目前时刻为止agent的整个感知序列。Agent函数通过agent程序实现,agent函数是将感知序列映射到agent的行动。理性依赖于:定义成功标准的性能度量;Agent对环境的先验知识;Agent可以完成的行动;Agent截止到此时的感知序列。理性:产生好的行为,做正确的事。理性Agent根据目前为止的感知和Agent具有的对环境

2022-06-23 23:00:08 1781

原创 【信号】傅里叶变换

在信号空间找到若干个相互正交的信号作为基本信号,使得信号空间中任意信号均可表示成它们的线性组合,正交变换可以保证信号在变换前后的能量是相等的。 信号正交:在(t1,t2)区间的两个函数j1(t)和j2(t),若满足两函数内积为0,则称j1(t)和j2(t)在区间(t1,t2)内正交。 两组典型的在区间(t0,t0+T)(T=2π/Ω)上的完备正交函数集。 (1)三角函数集{1,cos(nΩt),sin(nΩt),n=1,2,…} (2)虚指数函数集{e

2022-06-23 20:56:13 4184

原创 【信号】卷积

卷积:一个信号输入到线性系统f1(t),系统的响应函数为f2(t),输出为f(t),f(t)不仅与当前t时刻的输入信号f1(t)的响应f2(0)有关,也与t时刻之前的输入的信号与其当前对应的响应有关。假设t时刻前的某时刻为τ,在当前t时刻,已经过了t-τ这段时间,所以f(τ)所对应的响应函数为f(t-τ)。卷积公式: 离散卷积:已知定义在区间(–∞,∞)上的两个函数f1(k)和f2(k),则定义 互相关函数:为比较某信号与另一延时τ的信号之间的相似度,需要引入相关函数的概念。实

2022-06-23 20:47:49 621

原创 【领域泛化论文阅读】Feature Stylization and Domain-aware Contrastive Learning for Domain Generalization

新域生成的方式一般有GAN和AdaI两种。论文认为GAN和AdaIN在新域生成方面有局限性,新域数量增加,GAN难以优化,AdaIN无法保留原始图像的语义信息,IN倾向于洗去类别区分信息。为了克服以上局限性,论文提出了一种新的领域泛化框架,基于小波变换实现风格转换。论文将特征的统计信息用于将原始特征风格化为具有新域属性的特征。为了在风格化过程中保留类别信息,首先将特征分解为高频和低频分量。利用statistics采样的得到的新域风格来风格化低频分量,同时保留高频分量的shape。最后,将两个分量merge生

2022-06-23 17:34:39 385

原创 【领域泛化论文阅读】Embracing the Dark Knowledge: Domain Generalization Using RegularizedKnowledgeDistillation

这篇论文从任务的难度来解决领域泛化问题,论文认为如果模型的学习任务太难的话,容易发生过拟合,学习到的特征是域特有的特征而不是域不变特征,这样很难学习到泛化的特征。因此论文假设简单的任务可以提高目标域的泛化性能。论文提出了对于域泛化的知识蒸馏(KDDG),在知识蒸馏框架基础上使用梯度滤波器作为正则化项,提高模型泛化能力。 采用知识蒸馏模型,可以让学生网络学习更少的领域特定特征,达到更好泛化能力。教师网络给学生网络提供soft label,含有更多的信息量,可以让学生网络学习的任务更简单,可以学习

2022-06-23 17:29:10 329

原创 【领域泛化论文阅读】Learning to Diversify for Single Domain Generalization

论文提出了style-complement模块增强模型的泛化能力,将与源域分布互补的多种不同分布的图像进行合成,生成具有原始分布之外的不可见样式的样本。 通过最小化样本对的MI上界,使生成图像从源样本多样化;通过最大化来自相同语义类别的样本之间的MI,使网络能学习来自不同图像的可区分的feature,获得style-invariant feature。 样式补充模块和任务模型通过最小-最大互信息优化策略,通过迭代逐渐扩大生成图像和源图像之间的分布偏移,同时使来自同一语义类别的样本

2022-06-23 17:11:07 678

原创 【领域泛化论文阅读】Domain Generalization via Gradient Surgery

神经网络使用梯度下降进行训练,通过梯度引导损失的优化,在多任务学习(multi-task learning,MTL)中,每个task有不同的损失函数,会导致梯度冲突,不同的task可能会使梯度指向相反的方向,通常处理冲突梯度的方法是对他们进行平均,但是研究表明[2],简单平均会降低模型性能。与MTL处理不同的任务不同,DG处理的是不同的域,所以,论文假设在多领域的训练中会出现类似的梯度冲突。 模型的总体损失函数式(1)是每个域的损失函数的和平均加上一个正则项。 每个域的相关联的梯

2022-06-23 16:40:13 342

原创 【损失函数基础】自信息、熵、互信息

自信息自信息I(ai)是描述随机事件出现的不确定性大小,随机事件发生的概率越大,出现的不确定性越小,所蕴含的信息越少,不确定性的消除等于获得的信息所以函数I(ai) = f [P(ai)]应满足以下条件:1.I(ai)应是概率P(ai)的单调递减函数,即:当P(a1)> P(a2)时有I(a1) < I(a2);2.当P(ai)=1时I(ai)=0;3.当P(ai)=0时I(ai)→∞;4.若两个统计独立的随机事件,即:P(ai aj)=P(ai)P(aj),则I(ai

2022-05-13 20:17:33 1429

原创 【领域泛化论文阅读】Momentum Contrast for Unsupervised Visual Representation Learning

论文指出之前的工作是通过去除source domain的image style或者多样化 style,这解决了style的过拟合,但忽略了content的过拟合。这篇论文是通过wild来多样化source domain的content和style,以达到域泛化的目标。Baseline model通过segmentation loss式(1)来训练,只是普通的语义分割损失函数。Feature Stylization是为了多样化source sty.........

2022-05-10 00:51:15 597

原创 【CLIP】Learning Transferable Visual Models From Natural Language Supervision

这篇论文是利用自然语言作为监督信号学习可迁移的视觉模型,学习到泛化性能好的特征,可以做zero-shot迁移,在各种数据集上或者各种任务直接推理能获得较好的效果。在pre-train部分,通过对比学习,判断图像和文本是不是一个配对,而不是让图像预测文本,因为对比学习训练很高效。图像和文本分别通过各自的encoder得到图像特征和文本特征,图像的encoder可以采用resnet或者VIT,文本的encoder可以采用transformer,计算n个图像特征和n个文本特征之...

2022-05-10 00:46:25 639

原创 【对比学习】Momentum Contrast for Unsupervised Visual Representation Learning

本篇论文是一篇采用对比学习的无监督视觉表征学习。对比学习是将数据中的某一个数据及其增广数据作为正样本,剩余数据作为负样本,通过缩小正样本之间的距离,扩大正负样本之间的距离来学习数据特征,为下游任务提供了良好的特征。正负样本的选择方法叫做pretext task,为自监督学习提供监督信号,进行自监督训练。文中的pretext task是采用的instance discrimination task,是把数据本身作为基准,数据的一个增广作为正样本,剩余数据作为负样本。...

2022-05-10 00:43:11 520

原创 RCNN、FastRCNN、FasterRCNN、MaskRCNN目标检测

R-CNN训练阶段:CNN训练是在imagenet上预训练好的,迁移进行fine-tuning训练,将最后一层替换为N类+1背景类输出,fine-tuning时正负样本选择:将与ground-truth的IoU≥0.5的proposal作为正样本,不分类别,剩下作为负样本,每个batch中正负样本比例是1:3。N个SVM训练时正负样本选择:正样本是ground-truth,负样本是IoU<0.3的proposal,忽略>0.3的proposal,采用hard ne...

2022-05-10 00:35:05 1946

原创 【领域泛化论文阅读】Semantic-Aware Domain Generalized Segmentation

关于图像白化和色彩变换的基本内容可以参考:图像标准化、图像白化、色彩变换_S L N的博客-CSDN博客论文是针对语义分割的领域泛化模型。论文提出了SAN和SAW两个模块来增强类别之间的分离,类内的聚合。SAN是针对类别级的特征对齐,SAW是对SAN对齐后的特征进行分布式对齐。 .........

2022-04-16 01:04:54 3808 1

原创 【论文阅读】Universal Style Transfer via Feature Transforms

关于图像白化和色彩变换的基本内容可以参考:图像标准化、图像白化、色彩变换_S L N的博客-CSDN博客 这是一篇关于图像风格迁移的论文,主要提出了whitening and coloring transforms(WCTs)来进行风格的迁移。首先采用VGG网络对图像重建来训练网络,将训练好的VGG的encoder和decoder都fixed,用于图像特征提取和重建,损失函数如式(2.1)所示,Φ是通过encoder提取feature map。...

2022-04-16 00:55:37 412

原创 图像标准化、图像白化、色彩变换

图像标准化(Normalization) 、图像白化(Whitening)[2]、色彩变换(Coloring)[3]

2022-04-16 00:46:36 4038

原创 【领域泛化论文阅读】Birds of A Feather Flock Together:Category-Divergence Guidance for DomainAdaptiveSegmentat

论文提出了一个分层的无监督的领域自适应框架用于跨领域的语义分割。类间分离,类内聚合的机制(ISIA)。 针对语义分割的无监督领域自适应(UDA)的方法可以分为image-level,feature-level,label-level。Image-level自适应是改变图像的appearance,使源域和目标域的图像看起来更相似,比如改变图像的颜色纹理光照等。GAN广泛被应用在image-level的域映射,可以将源域的image style转移到目标域上。Feature-le............

2022-04-16 00:27:33 249

原创 【知识蒸馏简介】

知识蒸馏与领域泛化都可以用在迁移学习上,领域泛化主要是对不同领域数据的特征映射到同一空间,知识蒸馏是将一个训练好的大的模型压缩成小的模型。已经训练好的大的模型叫做教师网络,知识蒸馏是将教师网络压缩成学生网络。将教师网络的输出按式(1.4)进行计算,输出的soft label作为学生网络的label,学生网络的输出也按式(1.4)进行输出为soft prediction。学生网络的loss是蒸馏损失和学生损失的加权和,蒸馏损失是学生网络的输出soft predictio...

2022-04-15 23:49:52 223

原创 【视频分类论文阅读】Two-Stream Convolutional Networks for Action Recognition in Videos

论文是视频分类的开山之作,采用了一个双流网络,是空间流和事件流共同组成的,网络的具体实现都是CNN,空间流的输入是静止的图片,来获取物体形状大小等appearance信息,时间流的输入是多个从两帧之间提取的光流图片叠加在一起,来获得视频中物体的运动信息,最后将结果进行融合。......

2022-04-15 23:47:08 2738

原创 【领域泛化论文阅读】Generalizing to Unseen Domains: A Survey on Domain Generalization

领域泛化综述 Generalizing to Unseen Domains: A Survey on Domain Generalization

2022-04-15 23:25:47 794

原创 CNN架构简述

  LeNet是一篇发表于1998年的论文,在数字识别领域的应用取得了成功,使用stride为1,大小为5的filter。 图 1 LeNet架构  AlexNet是2012年发表的,与LeNet的区别在于总层数增加,卷积层达到了五层,一共有八层。 图 2 AlexNet架构  VGGNet是2014年发表的,是一个非常深的网络,用很小的filter,只用3*3的filter,16到19层,使用小的filter,参数量变小,可以应用更深的网络和更多的filter,三层3*3的filte

2022-03-25 23:17:03 464

原创 Attention系列论文简述

Attention Is All You Need  Transformer是依赖于attention的encoder-decoder架构,每个block是由attention,residual,MLP,layernorm构成的,并行度高,在之后的拓展中,使用频率比较高的是encoder部分。  Encoder的输入是token,token embedding再加上handcraft的positional encoding来获得seq中token的位置信息,encoder对一整个序列中

2022-03-24 01:53:36 1888 2

原创 数据结构与算法基础概念

数据:描述客观事物的符号,计算机可以操作的对象。数据项:若干个数据项组成一个数据元素,是数据不可分割的最小单位。数据元素:组成数据的、有一定意义的基本单位,在计算机中被作为整体处理。数据对象:性质相同的数据元素的集合,数据的子集,简称为数据。数据结构:相互之间存在一种火多重特定关系的数据元素的集合逻辑结构:数据对象中数据元素之间的相互关系集合结构线性结构树形结构图形结构物理结构:数据的逻辑结构在计算机中的存储形式顺序存储结构:把数据元素存放在地址连续的存储单元里,数据间的逻辑关

2021-05-23 22:06:14 53

原创 PySpark学习(二)概念

Apache Spark是一个在集群上运行的统一计算引擎以及一组并行数据处理软件库Spark专注于计算引擎,从存储系统加载数据并对其执行计算,加载结束时不负责永久存储,可以将许多种类型的存储系统与Spark结合使用。Hadoop包括一个存储系统(HDFS)和计算系统(MapReduce),它们紧密集成在一起,无法运行独立于HDFS的MapReduce系统。Spark可以在Hadoop存储上运行,也可以应用于其他存储系统。分布式:一个业务拆分成不同的子业务模块,部署在不同的机器上。集群:同一个业务部署

2021-05-23 21:07:24 145

原创 推荐系统(一)

推荐系统的作用用户角度:推荐系统在‘信息过载’的情况下,进行‘信息过滤’,使用户能高效获得感兴趣的信息。公司角度:推荐系统解决产品最大限度地吸引用户、留存用户、增加用户黏性、提高用户转化率的问题(如购买转化率,点击率等),达成公司的商业目标、增加公司收益。协同过滤算法(Collaborative filtering, CF)协同大家的反馈、评价和意见一起对海量信息进行过滤,从中筛选出目标用户可能感兴趣的信息的推荐过程。根据用户的行为历史生成用户-物品共现矩阵,利用用户相似性和物品相似性进行推荐。

2020-11-13 20:13:33 373

原创 线性代数基础

参考书籍:机器学习线性代数基础 张雨萌向量是由n个数组成的n行1列或1行n列的有序数组向量点乘(内积,数量积):运算结果是一个标量,可以计算两个向量间的夹角以及a向量在b向量方向上的投影向量叉乘(外积,向量积):运算结果是一个向量,并与这两个向量组成的平面垂直向量的线性组合:先数乘后叠加 a1v1+a2v2+…+anvn由一组向量的所有线性组合所构成的空间成为这组向量的张成空间线性无关:当且仅当a1=a2=…=an=0 时,线性组合a1v1+a2v2+…+anvn= 0方阵:行数和列数相等的

2020-11-11 16:10:28 594

原创 Python学习随笔(十)

Python学习随笔(十)直接看参考多进程进程:程序的一次动态执行过程,包括代码段、数据段、堆栈段、一组寄存器和内核状态,是操作系统中资源调度和任务分配的基本/独立单位。在Windows上要想使用进程模块,就必须把有关进程的代码写在if __name__ == ‘__main__’ 内,否则在Windows下使用进程模块会产生异常。multiprocessing模块是跨平台版本的多进程模块from multiprocessing import ProcessProcess类代表一个进程对象p

2020-11-04 19:19:19 76

原创 Python学习随笔(九)

Python学习随笔(九)直接看 参考多线程线程:是cpu最小调度单位,一个程序中至少有一个或者多个线程import threadingt = threading.Thread(target=函数名, name=线程名, args=函数的参数元组,kwargs=函数的参数字典) 创建并初始化线程t.start() 启动线程t.join() 阻塞函数,直到线程结束为止t.getName() 返回线程名t.setName() 设置线程名t.setDaemon(False) 设置为后台线程

2020-11-04 19:15:25 140

原创 Python学习随笔(八)文件路径和文件操作读写

Python学习随笔(八)文件路径双反斜杠 ‘\\’r+单反斜杠 r’\’单斜杠 ‘/’相对路径     ‘’ 和 ‘./’ 当前同级目录     ‘/’ 根目录     '../'上一级目录文件读写f = open(’’ , ‘r’)f.read()f.close()with open(’’,‘w’) as f:    

2020-11-03 21:10:52 134

原创 Python学习随笔(七)

Python学习随笔(七)错误处理机制try: 执行的代码except: 可以有多个except捕获不同类型的错误except Exception as e: 一般可以使用else: 可省略,当错误没有发生时,自动执行finally: 可省略,一定会被执行异常类基于BaseException根据需求抛出错误:raise调试断言:assert 表达式 , 错误提示loggingpdb.set_trace() 设置断点单元测试文档测试(doctest)...

2020-11-03 19:46:43 63

原创 Python学习随笔(六)面向对象编程

Python学习随笔(六)面向对象编程(Object Oriented Programming)OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序执行。面向对象的程序设计把计算机程序视为一组对象的集合,而每个对象都可以接收其他对象发过来的消息,并处理这些消息,计算机程序的执行就是一系列消息在各个对象之间传递。类是抽象的模板,实例是根据类创建的具体对象定义类(类名首字母大写)class 类名(object):

2020-11-03 17:30:43 122

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除