- 博客(221)
- 资源 (4)
- 收藏
- 关注
原创 北大和鹏城实验室联合推出的图像视频统一多模态大模型Chat-UniVi(CVPR 2024)
大语言模型已经在广泛的开放式任务中展示了令人印象深刻的通用能力,并且已经扩展了它们的效果,包括多模态对话。然而,现有方法在有效处理图像和视频理解方面遇到了挑战,尤其是在视觉标记数量有限的情况下。在这项工作中,我们介绍了Chat-UniVi,这是一个统一的视觉-语言模型,能够理解和参与涉及图像和视频的对话,通过统一的视觉表示。具体来说,我们采用了一组动态视觉标记(dynamic visual tokens)来统一表示图像和视频。
2024-08-07 00:53:46 952
原创 北大和华为诺亚联合提出的一种时间感知的视频多模态大模型TimeChat(CVPR 2024)
本工作提出了TimeChat,一个专为长视频理解而设计的时间感知型多模态大型语言模型。我们的模型结合了两个关键的架构创新:(1) 一个时间戳感知的帧编码器,它将每个帧的视觉内容与时间戳绑定;(2) 一个滑动视频Q-Former,它产生不同长度的视频标记序列以适应不同时长的视频。此外,我们构建了一个包含6个任务和总共125K实例的指令调整数据集,以进一步提升TimeChat的指令跟随性能。实验结果在各种视频理解任务上,如密集字幕生成、时间定位和亮点检测,证明了TimeChat强大的零样本时间和推理能力。
2024-08-06 09:34:06 986
原创 支持10K长视频理解的多模态大模型MovieChat(CVPR 2024)
最近,将视频基础模型和大型语言模型结合起来构建视频理解系统可以克服特定预定义视觉任务的限制。然而,现有的系统只能处理很少帧数的视频。对于长视频,计算复杂性、内存成本和长期时间连接带来了额外的挑战。利用Atkinson-Shiffrin记忆模型,将Transformers中的tokens作为记忆载体,并结合我们特别设计的记忆机制,我们提出了MovieChat来克服这些挑战。
2024-08-05 09:05:18 855
原创 清华和字节联合推出的视频理解大模型video-SALMONN(ICML 2024)
作为使用音频-视觉大型语言模型(av-LLMs)进行视频理解的一个关键但研究不足的方面,语音理解是至关重要的。本文提出了video-SALMONN,这是一个单一的端到端av-LLM,用于视频处理,它不仅能理解视觉帧序列、音频事件和音乐,还能理解语音。为了获得语音理解所需的细粒度时间信息,同时保持对其他视频元素的高效处理,本文提出了一种新颖的多分辨率因果Q-Former(MRC Q-Former)结构,以连接预训练的音频-视觉编码器和骨干大型语言模型。
2024-08-03 03:00:29 1384
原创 阿里猫头鹰多模态大模型 mPLUG-Owl2: Revolutionizing Multi-modal Large Language Model with Modality Collaboration
这篇文章介绍了一项关于多模态大型语言模型 (Multi-modal Large Language Model, MLLM) 的研究工作,提出了一个名为 mPLUG-Owl2 的模型。mPLUG-Owl2 利用模态协作 (modality collaboration) 来提高在文本和多模态任务上的性能。具体来说,mPLUG-Owl2 使用了一个模块化的网络设计,其中语言解码器作为统一接口来管理不同模态的信号。它结合了共享功能模块以促进模态协作,并引入了一个模态自适应模块来保留模态特定特征。
2023-12-14 23:37:06 2233
原创 MQ-Det: Multi-modal Queried Object Detection in the Wild
这篇文章提出了MQ-Det,一种高效的架构和预训练策略,用于利用文本描述的开放集泛化能力和视觉示例的丰富描述粒度作为类别查询,即多模态查询目标检测。MQ-Det将视觉查询融入现有的仅基于语言查询的检测器。文章提出了一个即插即用的门控类可扩展感知器(GCP)模块,用于在冻结检测器上增强类别文本与类别相关的视觉信息。为了解决由于冻结检测器带来的学习惯性问题,提出了一种视觉条件的掩码语言预测策略。MQ-Det的简单而有效的架构和训练策略与大多数基于语言查询的目标检测器兼容,从而实现多种应用。
2023-12-11 23:27:18 1744
原创 ZSSeg: A Simple Baseline for Open-Vocabulary Semantic Segmentation with Pre-trained Vision-language
最近,通过视觉语言预训练进行的开放词汇图像分类取得了令人难以置信的成就,该模型可以对任意类别进行分类,而无需看到该类别的附加注释图像。然而,目前尚不清楚如何使开放式词汇识别在更广泛的视觉问题上发挥作用。本文以开放式词汇语义分割为目标,将其建立在现成的预先训练的视觉语言模型(即CLIP)上。然而,语义分割和CLIP模型在不同的视觉粒度上执行,即语义分割在像素上执行,而CLIP在图像上执行。
2023-05-14 15:50:10 581 1
原创 多模态大模型的发展、挑战与应用
随着 AlexNet [1] 的出现,过去十年里深度学习得到了快速的发展,而卷积神经网络也从 AlexNet 逐步发展到了 VGG [2]、ResNet [3]、DenseNet [4]、HRNet [5] 等更深的网络结构。研究者们发现,网络越深模型的性能越好。然而,经过多年的发展,研究者们逐渐触碰到了卷积神经网络的极限,而其规模也只发展到了千万到亿的数量级,例如 ResNet-152 的参数量大约为 60 Million (M),HRNet_W64 大约为 128M。
2023-04-16 19:45:18 9090 2
原创 网络特征之PCA可视化-Python实现
PCA也是对网络特征可视化的一种方法,目的是对特征进行降维,然后通过图片的形式来对网络的特征提供一种解释。所以,本博客提供一个将网络特征进行PCA的可视化的代码,其原理为将C通道的特征降维到3通道,即图片的RGB通道,然后直接进行可视化。
2023-04-06 10:45:19 1151
原创 用于语义分割模型的t-SNE可视化
在之前的博客中,对t-SNE的原理进行了一个简单的介绍,也给出了一个简单的使用案例。这篇博客在之前的基础上实现在语义分割模型上的t-SNE可视化。语义分割模型中使用t-SNE的目的是,从模型的特征层面进行一定的可视化解释。比如属于同一类别的特征向量彼此聚集在一起,而属于不同类别的特征向量彼此相远。值得一提的是,分割模型中使用t-SNE较多的场景还是域自适应和域泛化分割任务上。在这些任务上,我们往往需要从特征层面上来解释网络缩小域差异的能力。
2023-04-05 23:30:32 5027 4
原创 Python可变对象与不可变对象的浅拷贝与深拷贝
本文主要介绍了python中容易面临的考试点和犯错点,即浅拷贝与深拷贝我们可以发现,赋值、浅拷贝和深拷贝后的变量的值是一样的,但他们的“内部”真的一样吗?本文就是回答这个问题的。
2023-03-06 21:24:43 660
原创 python logging使用教程
这些教程都说,使用logging里面的basicConfig函数就可以完成初始化,后面再使用logging.info就可以就日志保存在log文件里面去了的确这样能成功,但这样不能让保存的日志在terminal上显示我的一个需求就是我想程序日志在保存在log文件的同时还能在terminal上打印显示。
2023-02-16 16:41:09 607
原创 浅谈机器学习算法
本文不涉及复杂的机器学习算法公式,只是宏观上理解几种代表性的算法,以便应付常规的机器学习、深度学习面试回归问题:预测的值是连续的线性回归、逻辑斯特回归分类问题:预测的值是离散的,即二分类或者多分类逻辑斯特回归、KNN、SVM无监督问题:Kmeans。
2022-09-21 10:51:48 540
原创 t-SNE可视化-Python实现
t-Distributed Stochastic Neighbor Embedding (t-SNE) 是一种无监督的非线性技术,主要用于数据探索和高维数据的可视化。简单来说,t-SNE 让您对数据在高维空间中的排列方式有一种感觉或直觉。它由 Laurens van der Maatens 和 Geoffrey Hinton 于 2008 年开发。简单来说就是高维数据可视化,目的是观察高维数据的之间的分布情况。
2022-09-13 22:02:19 19054 26
原创 Leetcode之二分查找系列
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false。给你一个非负整数 x ,计算并返回 x 的 算术平方根。
2022-09-11 13:11:37 258
原创 二分法之旋转数组
例如, [0,1,2,4,5,6,7] 在下标 3 处经旋转后可能变为 [4,5,6,7,0,1,2]。例如,将数组[1,2,3,4,5,6]的前3个元素进行旋转变为[4,5,6,1,2,3],然后就是查找指定的元素,或者返回数组中最小的元素等等算法要求,也会根据难易程度,规定数组中是否存在重复元素。, a[n-1]] 旋转一次 的结果为数组 [a[n-1], a[0], a[1], a[2], …输入: nums = [1,2,3,4,5,6,7], k = 3 输出: [5,6,7,1,2,3,4]
2022-09-08 19:32:05 474
原创 代码随想录之数组
如果不存在符合条件的子数组,返回0。你可以选择任意一棵树开始采摘,你必须从每棵树(包括开始采摘的树)上恰好摘一个水果。采摘的水果应当符合篮子中的水果类型。如果s中不存在涵盖t所有字符的子串,则返回空字符串“”。对于t中重复字符,我们寻找的子字符串中该字符数量必须不少于t中该字符数量。给你一个整数数组fruits,返回你可以收集的水果的最大数目。一旦你走到某棵树前,但水果不符合篮子的水果类型,那么就必须停止采摘。如果s中存在这样的子串,我们保证它是唯一的答案。.........
2022-07-24 02:23:33 80
原创 Python内嵌函数eval的应用
简单来说,eval的作用有三点:1)将字符串类型的数字,列表,字典,元组等转换为对应的数据格式2)执行字符串类型的语句,比如执行字符串类型的print和pow等等3)进行字符串类型的数字运算,其实这一点也是属于第二点的,因为这一点是我平时使用eval函数最多的地方,所以单独作为一点作为重点...
2022-07-22 00:00:20 1847
原创 HW笔试真题
2)在原始的分数a/b上减去分解出来的埃及分数1/q,来更新剩下的分数值a/b=(a-mod)/(b*q)4)跳出循环后,最后如果是分子变为了1,则添加上1/b;如果最后是b能整除a,则添加上1/(b//a),得到余数mod=b%a。将得到的商q作为分解出来的埃及分数的分母,即第一个分解的埃及分数为1/q。3)如果分子变为了1,或者b能整除a,这个时候就跳出循环,或者继续重复1、2步骤。1)用b除以a,得到商q=b//a+1,输入为a/b,a为分子,b为分母。........................
2022-07-16 23:01:28 338
原创 各大厂面试算法真题
有一种重复字符的速记方式(1)重复的部分会被以“(重复内容)”形式记录,并且可能存在嵌套缩写关系(2)不重复的部分按原样记录;先给定一个字符串str,请实现一个函数恢复字符串速记前的内容,str仅由小写字母、数字、()、组成。例如str=“abc(d)”,速记前字符串为“abcdd”str=“a(b(c)d)e”,速记前字符串为分析3)读取符号”)“后面”“里面的内容,即获取重复的次数。.......................................
2022-07-16 03:06:49 256
原创 Python函数传参是值传递还是引用传递?
今天字节的面试官问到了这个问题,问:python函数对传入的变量进行一定的修改后,会影响函数外面这个变量的值吗,我回答的是如果是传入numpy数组就会改变。这个回答面试官估计是不满意的,现在就来认真研究一下这个问题。有一些博客已经给出了很好的结论(python的参数传递是值传递还是引用传递?都不是!):那现在我们按照这个结论来实战一下,在这个过程中我也发现了一些新的东西我的Python版本是:3.8.8打印结果:可见在函数里面修改数字变量,不会影响外面的变量打印结果:可见在函数里面修改字符串变量,
2022-07-13 22:21:44 421
原创 2021年各大公司面试经验
1、有一个文本文件tmp.txt,以空格为单词分割,请按照出现频率从大到小打印单词以及其相应的出现次数。3、一共有N个台阶,每次可以走1步或者2步,问一共有多少种不同走法?2、给定整数数组A,返回A里面第二大元素,如果不存在返回None。代码面试,写完要截屏的。没来的及问面试官问题。
2022-07-10 23:59:24 361 1
原创 面向大规模神经网络的模型压缩和加速方法
本文转载于:面向大规模神经网络的模型压缩和加速方法在神经网络发展的过程中,提高模型的容量往往会对模型性能带来正向效果,在近几年的研究工作中,为了追求性能的提升,神经网络模型规模也确实呈现出逐渐增大的趋势。提高模型容量的方法主要包括增加模型的深度和拓展模型的宽度,ResNet-156L 和 BERT 等深层网络在图像、语音、语言模型领域被充分验证其有效性,使用 Transformer Big 这类宽模型也会带来较大的性能提升。然而,伴随着模型的增大,模型的参数量和计算量也随之增加,当前的大规模神经网络模型参数
2022-07-10 21:13:28 163
原创 Leetcode之二分查找系列
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。核心思想:标准二分查找35. 搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。核心思想:在二分查找的基础上需要进一步判断插入的位置,即在二分查找没找到的情况下,left和right指针的位置注意
2022-07-10 16:58:44 51
原创 图像分割发展综述
参考:传统图像分割方法详解图像分割传统方法整理传统图像分割方法h传统的图像分割算法图像分割算法总结参考:图像分割的经典算法——传统图割到深度学习FCN、PSP、Mask-RCNN语义分割看这一篇就够了!【语义分割】一篇看完就懂的最新深度语义分割模型综述2021语义分割指南总结语义分割方法简要介绍......
2022-07-04 21:59:29 141
原创 Python-查找与排序
算法:将数组从头到尾进行遍历,找到目标元素就返回。时间复杂度:O(n)算法:1、将目标元素与数组的中间元素进行比较,如果目标元素大于中间元素,就说明目标元素在中间元素的右侧,反之在左侧。2、在数组的半侧里继续按照第一步的方式进行查找,找到目标元素就返回其对应的下标。3、终止条件:left>right,如果还没找到目标元素,就说明该数组中不存在该目标元素,返回-1。时间复杂度:O(logN)使用条件:输入数组必须是有序的,单调不增或者单调不减注意:1、如果数组中存在重复的目标元素,则返回的下标是不确定的
2022-06-12 16:04:30 53
原创 计算机视觉面经系列问题及解答汇总
4、解释:1)模型平均的作用:dropout实现了一种继承学习的思想,在每一次训练时候,模型以概率p“丢弃”一些节点,每一次“丢弃”的节点不完全相同,从而使得模型在每次训练过程中都是在训练一个独一无二的模型,最终集成在同一个模型中。2、连接字符串数组的时候,join的运算效率高于 +。由于字符串是不可变对象,当使用“+”连接字符串的时候,每执行一次“+”操作都会申请一块新的内存,然后复制上一个“+”操作的结果和本次操作的有操作符到这块内存空间中,所以用“+”连接字符串的时候会涉及内存申请和复制;
2022-06-11 22:28:02 120
原创 面经总结-极市平台
我愿称之为史上最全的深度学习面经总结(附答案详解)【面经系列】万字面试分享贴!从十二个角度解析面试全流程!附互联网公司Offer难度系数分析面经|从面试官的角度谈谈对算法岗面试的一些看法你不可不知的18家算法面经,吐血整理深度学习补缺补漏篇!准算法工程师总结出的超强面经(含答案)从30+场秋招面试中总结出的超强面经—语义分割篇(含答案)面经:什么是Transformer位置编码?算法面经|10天面了12面!............
2022-06-11 00:34:29 50
原创 剑指offer-Python版本
介绍本博客主要收集了一些优秀的使用Python实现剑指offer题集的博客本博客不生产代码,只做代码的搬运工~~~优秀博客CSDN博客:剑指offer(Python版本)–精心整理知乎:剑指offer答案全集 Python版知乎:剑指offer-Python版(上)知乎:剑指offer-python版(下)知乎:《剑指offer》python实现 合集(上)知乎:《剑指offer》python实现 合集(下)知乎:剑指Offer Pythongithub:darkTianTian/sw
2022-05-29 14:48:16 227 1
原创 Python(pyexiv2)修改照片(证件照)的拍摄日期
介绍手机或者相机拍摄的照片都会有拍摄日期,特别在某些特殊的APP上上传证件照时,都会有一个日期检查,并要求上传6个月之内的照片。那如何修改照片上的拍摄日期呢?很多方法就是说在Windows系统上选中图片右键、选择属性、点击详细信息、最后修改拍摄日期,如下:通过这种方式修改后,再去APP上上传照片发现还是上传失败,这说明修改并没有成功。我们换一种图片查看器,即XnView MP,打开图片后,选择编辑->属性->EXIF,可以发现拍摄时间并没有变,如下:我们也可以继续查看IPTC-II
2022-05-25 12:05:20 3003
原创 使用Python和OpenCV中的calcOpticalFlowFarneback函数提取稠密光流并进行映射(warp)
介绍OpenCV中自带两个提取光流的函数:cv2.calcOpticalFlowPyrLK()cv2.calcOpticalFlowFarneback()其中calcOpticalFlowPyrLK函数是提取稀疏光流的函数,而本文主要关注calcOpticalFlowFarneback函数,并将它应用在一个真实的问题中具体的原理介绍可以参考知乎博客光流估计——从传统方法到深度学习真实问题是:给定两张图像,一张是带形变矫正的图像(unwraped_img.png),一张是参照图像(referen
2022-05-18 02:35:02 6151 13
原创 MATLAB中使用blockmatching算法提取光流
在matlab中使用自带的vision.BlockMatcher算法计算两张输入图像之间的光流直接码代码blockmatching.mclear all; close all;%% parmetersblock_size = 71;dis = 21;olp = 41;thresd = 0.9;down = 1/4;height_img = 1600;width_img = 1600;show_flow = true;kernel = 7;scale = 1;%% imag
2022-05-15 15:24:27 915
原创 Python内存管理以及垃圾回收机制
介绍本文主要介绍了Python的内存管理机制和垃圾回收原理本文主要参考了:bilibili视频:【基于C语言源码剖析】python垃圾回收和内存管理pythonav:Python内存管理和垃圾回收机制简书博客:python内存管理机制博客:Python的内存管理机制脚本之家:Python 内存管理机制全面分析由于python中万物皆对象,所以python的存储问题是对象的存储问题。内存管理机制环状双向链表(refchain)在Python的C源码中有一个名为refchain的环状
2022-05-01 18:10:47 4531 3
Perceptual_metric.rar
2020-03-02
打开数据集
2018-09-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人