- 博客(311)
- 资源 (44)
- 收藏
- 关注
原创 年龄估计数据集
与其他数据集的标签为真实年龄不同,LAP数据集的标签是外观显示年龄(apparent age),标签制定平均了至少10个人的标注结果,所以每张图片的年龄标签都是一个正态分布。该数据集可用于各种任务,例如,面部检测,年龄估计,年龄进展/回归,地标定位等。该数据集可用于年龄预测和性别分类,为了公平比较,我们将图像随机分成两组,一组用于训练,另一组用于验证,文件夹图像集中的注释文件具有以下格式:"%05dA%02d%d\n",person_id,年龄,性别,其中对于性别,0代表女性,1代表男性。
2025-05-08 18:03:35
614
原创 基础知识:Dify 错误排查
调整并重启后,再看一下容器状态,都正常。再稍微等一会再刷新,就可以看到登录页面了。可以看到有个容器异常:docker_db_1 的状态是。查看日志,根据日志对症下药。Restarting(表示一直在重启)
2025-04-15 17:13:37
234
原创 基础知识:Dify 安装
文件中的所有配置项,确保它们与你的实际运行环境相匹配。文件中的环境变量值。在这个输出中,可以看到包括 3 个业务服务。文件有更新,请务必同步修改你本地的。文件中,并更新已更改的任何值。完整的环境变量集合可以在。,以及 6 个基础组件。
2025-04-15 09:48:21
180
原创 基础知识:ERROR: Get “https://registry-1.docker.io/v2/“: net/http: request canceled while waiting for co
IP:鼠标移动到(允许局域网连接)-就可以看到自己的IP了。如果出错了:可以通过下面命令查看日志。
2025-04-14 16:09:45
129
原创 基础知识:离线安装docker、docker compose
默认情况下,Docker 的守护进程(daemon)运行在 root 用户下,而普通用户需要额外的权限才能与 Docker 守护进程通信。下载:containerd.io、docker-ce、docker-ce-cli (我选择同一个日期发布的)确认版本:Ubuntu 18.04 LTS - bionic。选择安装方法(因为我的是老版本Ubuntu了,所以选择手动)因为我的是bionic版本,选择就选择这个。2:将用户加入 docker 用户组。确认架构:X86_64。确认docker状态。
2025-04-14 10:47:11
232
原创 基础知识:冷启动数据
是指在模型训练初期,利用少量手工设计的高质量数据来训练。这些数据不依赖于大规模的标签数据,而是通过精心设计,提供对模型有指导性的推理信息,帮助模型在早期获得较好的表现。冷启动数据的作用直接使用 RL 训练,由于缺乏有效的指导信息(监督式微调SFT可以做到),会产生不符合用户需求的推理结果,比如推理链条不清晰、语言混合等问题。为了改善这一情况,引入冷启动数据,帮助模型在最初阶段进行微调,使得其能够生成更加规范和易于理解的推理过程。
2025-04-09 14:57:24
73
原创 论文阅读:Visual-RFT:Visual Reinforcement Fine-Tuning
在对每个输出的奖励进行组计算之后,评估每个响应的质量并用于更新策略模型。为了确保策略模型训练的稳定性,Visual-RFT使用KL散度来限制策略模型与参考模型之间的差异。通过直接比较同一问题的不同响应之间的奖励差异,GRPO不仅简化了训练流程,还提高了效率,尤其是在处理那些可以通过明确规则定义奖励的任务时。与需要评价模型来评估策略表现的强化学习算法(如PPO)不同,GRPO直接比较候选响应组,从而不需要额外的评价模型。直接模仿高质量、精心策划的数据中提供的“正确答案”,因此依赖于大量的训练数据。
2025-04-08 17:06:39
180
1
原创 基础知识:PPO & GRPO
1. PPO(近端策略优化)比喻:就像用零食+绳子训练小狗:绳子(Clipped Objective):防止小狗跑太远(限制策略更新幅度)零食奖励(Critic模型):每次动作后,主人评估"坐得好不好"再给零食特点:边做边教,每步都微调(单样本更新)人话版:PPO像严格的教练,要求你每做一步就立刻打分(Critic),但限制你改进的幅度不能太大(防止翻车)。2. GRPO(广义强化策略优化)比喻:就像让小狗先试三种动作,再选最好的:
2025-04-08 16:19:21
129
原创 论文阅读:VisMin:视觉最小变化理解
这个数据有点意思,注重视觉最小变化。当前的VLM用下来,幻觉还是挺多,微调的时候搭配点这个数据,感觉能一定程度减轻幻觉。文章:VisMin: Visual Minimal-Change Understanding。
2025-04-03 11:19:38
34
原创 论文阅读:为什么LoRA在目标检测方向不奏效?
LoRA是在某些场景中进行微调的绝佳工具,特别是对于目标更直接的分类任务。但是在目标检测方面,由于需要精确的空间关系、多任务学习和相互关联的组件,LoRA很难跟上。
2025-04-03 10:48:08
121
1
原创 基础知识:RMSNorm
这种方法简化了归一化过程,降低了计算复杂度,并且在某些情况下可以提供更稳定的训练过程和更好的性能。虽然两者都可以应用于各种神经网络架构中,但是因为 RMSNorm 简化的特性,在某些情况下,例如 Transformer 架构中,RMSNorm 可能提供更稳定的训练过程,并且在某些任务上可能表现出更好的性能。总结来说,RMSNorm 通过简化计算流程提供了效率上的优势,而 LayerNorm 则通过更全面的数据分布调整提供了广泛的适用性。选择哪种方法取决于具体的模型需求和应用场景。
2025-03-13 13:54:12
190
原创 编程实践:OpenCV mat对象与base64互转
可以通过设置IMWRITE_JPEG_QUALITY标志来更改JPEG压缩质量。编码: img -> jpg -> base64。解码:base64 -> jpg -> img。
2025-03-10 09:50:45
267
原创 编程实践:linux系统DNS解析卡顿5秒的bug
发送A类型(ipv4 )请求和AAAA类型(ipv6)请求使用不同的源端口。这样两个请求在conntrack表中不占用同一个表项,从而避免冲突。发送A类型(ipv4 )请求和AAAA类型(ipv6)请求同样会使用同源端口发送,知识发送方式改为了串行,从而也避免了冲突。更详细的分析可以参考Weave works工程师。1:人脸离线识别记录可以正常上传云端。2:人脸在线识别请求却一直超时。3:客户使用在线网络。
2025-03-10 09:34:16
189
原创 基础知识:训练自己的分词器-Tokenizer 2
分词器的配置信息,定义了分词器的版本、额外添加的标记(tokens)、结构/代码和模型参数等信息,比如tokenizer_class指定使用的分词器类名以及model_max_length指定模型能够处理的最大序列长度 和 bos_token指定句首的标记等内容。最终的分词器模型文件,包含了分词器的版本号、分词器的截断、填充策略、特殊标记、文本归一化的函数、预分词的策略或方法、分词器模型的类型、词汇表(vocab)和合并规则(merges)等信息。拥有一个手动配置的文件使得这样的修改更加容易执行和管理。
2025-03-05 09:30:05
89
原创 基础知识:训练自己的分词器-Tokenizer
说明:文本搬运以下文章,略微调整,有需求可参考原文。paper :code :本文选择使用tokenizers来训练自己的分词器。首先需要初始化一个tokenizers基类它们是tokenizer的唯一强制性组件这对于允许一些复杂的算法在标准化之前需要进行分割是必要的(例如 ByteLevel)
2025-03-04 18:21:55
56
原创 编程实践:java中的小事
之前没接触过java,所以遇到后有点不知所措,好在有大模型,不会就问,不会就记。JDK 和 NDK 是两个不同的开发工具包,主要用于不同类型的软件开发。:这是用于开发 Java 应用程序的软件开发环境。它包含了 Java 运行时环境(JRE)、编译器(javac)和其他工具和库,这些对于开发、编译和运行 Java 应用程序是必需的。
2025-02-28 15:23:30
70
原创 编程实践:log4cpp 交叉编译
问题出在 config.sub 文件无法识别 aarch64-linux-gnu 这个配置。需要更新 log4cpp 源码中的 config.sub 和 config.guess 文件到最新版本。基于 gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu 编译 log4cpp-1.1.3。2:替换 log4cpp/config 目录下的 config.sub 和 config.guess 文件。1:更新 config.sub 和 config.guess。
2025-02-27 10:59:19
55
原创 编程实践:ZLKMedia 推流
文档里面提供了各个系统的详细安装步骤,可以参考我这边是寒武纪MLU370-S4硬件,先确定一下系统name是ubuntu34.1、编译器版本要求linux 系统通过以下命令确认版本是否符合。不满足就需要参考4.24.2、安装编译器如果你是macOS用户,你直接安装xcode即可。如果你是windows用户,推荐安装vs2017或以上。5:cmake。
2025-02-25 09:57:34
140
原创 编程实践:aarch64编译器安装
aarch64 和 ARM64 实际上指的是同一架构。AArch64 是 ARM 架构的一个64位执行状态,有时也被称作 ARM64。这一架构设计用于提供更高的性能和更大的地址空间,同时保持与传统 ARM 架构(如ARMv7-A)的向后兼容性。因此,在不同的上下文中,你可能会看到这两个术语互换使用来描述支持64位计算的ARM处理器架构。:将X86上的算法移植到华为鲲鹏服务器(Linux系统-ARM芯片)。所以需要整一下交叉编译工具链--aarch64。以opencv-4.6.0为例。
2025-02-24 15:34:57
226
原创 编程实践:HTTPS通信
这是最推荐的解决方案,因为新版本的OpenSSL修复了许多安全漏洞,并且支持更多现代特性。libcurl是广泛使用的HTTP库,支持HTTPS,并且兼容OpenSSL 1.0.2a。其中--with-openssl后面跟的路径,是openssl生成的lib、include、bin所在的路径.如果想要编译arm版的curl,需要在./configure这一行命令中加上:--host=arm-linux。如果编译的时候已经指定了--with-openssl路径,却始终报错检测不到openssl。
2025-02-24 10:33:04
220
原创 编程实践:sigmastar系列2-获取UUID进行授权
Tips:为了提高UUID的安全性和隐私保护,实践中往往结合多种硬件信息(比如cpu、硬盘、主板、bios等硬件序列号)并通过加密哈希算法生成最终的UUID。最近基于Sigmastar-330 开发人脸识别SDK,需要进行授权管理,所以需要获取UUID作为激活、授权的凭证。step4:云端返回加密后的授权结果(携带UUID),校验授权结果中携带的UUID是否与本机一致(防止dns劫持)。step1:算法SDK在设备上电,算法初始化环节,校验本地是否有加密存储的授权令牌文件。如果一致,正常初始化。
2025-02-12 15:42:15
266
原创 基础知识:Tokenization
根据模型的要求,可能需要对序列进行填充(padding)以确保所有输入序列的长度一致,或者进行截断(truncation)以确保序列长度不超过模型的最大输入长度。:将分词后的每个单元(token)映射到其在词汇表中的唯一ID。词汇表是预定义的一组标记及其对应的ID,模型通过这些ID来识别和处理输入的文本。:将输入的文本字符串分割成更小的单元,这些单元通常是单词、子词或字符。分词的目的是将文本转换为模型可以理解的离散单元。这些特殊标记在模型中具有特定的含义,例如用于表示句子的开始或结束。
2024-10-30 16:24:16
131
原创 论文阅读:InternVL-1.5-mini: A Powerful Pocket Multimodal Model with 8% Parameters for 80% Performance
这种组合在保持各种基准测试中令人印象深刻的性能的同时,最大化效率,展示了小型模型在处理复杂任务中的有效性。此外,我们的小型模型显著降低了内存需求,使其在实际应用中更加易于访问和高效。在大语言模型的时代,许多研究人员已经开始关注较小的语言模型,例如 Gemma-2B、Qwen-1.8B 和 InternLM2-1.8B。受到他们努力的启发,我们在训练过程中使用了 8K 的上下文长度。与 InternVL 1.5 保持一致。此外,由于较小模型的训练成本较低,
2024-10-25 10:08:39
93
1
原创 论文阅读:InternVL-1.5: How Far Are We to GPT-4V?
对于每个输入图像,系统会计算其自身宽高比,并与预定义的集合进行比较,找出差异最小的纵横比。InternVL 1.2 集成了一个显著更大的 VFM,具有 60 亿参数,而 LLaVA-NeXT 只有 3 亿参数InternVL 1.2 在固定的 448×448 分辨率下进行训练,而 LLaVA-NeXT 使用更高的动态分辨率 672 × 672。1:训练图像的分辨率从固定的 448×448 扩展到动态的 448×448,其中基本图块大小为 448×448,图块数量从 1 到 12 不等。
2024-10-24 18:39:00
114
1
原创 论文阅读:InternVL-1.2: Scaling up LLM to 34B
从宏观角度来看,我们在 ShareGPT-4V 的基础上,还整合了 LLaVA-ZH、DVQA、ChartQA、AI2D、DocVQA、GeoQA+ 和 SynthDoG-EN。InternVL-Chat-V1-2-Plus 使用与 InternVL-Chat-V1-2 相同的模型架构,但区别在于 SFT 数据集。受 LLaVA-NeXT 的启发,我们采用了数据高效的 SFT 策略来训练 InternVL-Chat-V1-2,我们也采用了 Nous-Hermes-2-Yi-34B 作为语言模型。
2024-10-24 11:46:38
92
1
原创 论文阅读:InternVL-1.1: Enhance Chinese and OCR Capabilities
InternVL-1.1中的 Pixek Shuffle 中的视觉token数可以理解为通道数,主要目的是通过提升特征维度换取更少的token数,从而可以支持更高的图像分辨率。这样,448x448的输入图像,patch size=14,总共有32x32=1024个token,设置上采样系数r=2,则该图像可以表示为256个token。如上图中倒数第二层红圈框住的9个特征,排列后组成箭头所指的最后一层小方框,这就是原图中框住的像素经过网络构成的重建块。,对特征进行了空间维度的上采样,但通道维度缩小为原来的。
2024-10-24 11:24:16
407
1
原创 论文阅读:InternVL-1.0: Scaling up Vision Foundation Models and Aligningfor Generic Visual
我们通过对比学习将InternViT-6B与多语言的LLaMA-7B对齐,使用海量的公开多语言图文对数据集,包括LAION-en、LAION-multi、LAION-COCO、COYO、Wukong等。为了展示InternVL在创建多模态对话系统方面的有效性,我们将其与现有的LLM解码器(例如,Vicuna或InternLM)通过一个MLP层连接,并进行有监督微调(SFT)。与之前的仅视觉(图1 (a))或双塔(图1 (b))结构不同,我们的视觉编码器和中间件为对比和生成任务提供了灵活的组合。
2024-10-24 10:21:02
207
1
原创 论文阅读:TinyLLaVA: A Framework of Small-scale Large Multimodal Models
讨论一个有趣的观察是,当使用共享方法时,使用StableLM-2和Phi-2的模型变体在POPE上的性能显著下降(表明更多幻觉),而在其他基准上有所提升。实验表明,通过更好的训练方法和数据质量,较小的LMMs可以与较大的LMMs达到同等的表现,为研究领域设定了新的基准。相比LLaVA-1.5数据集,在使用基础方法在更广泛和更多样化的ShareGPT4V [7]数据集上预训练时,以TinyLlama 作为小规模LLM的模型变体在评估性能上总体有所提升。注意,我们在共享方法中部分微调了视觉编码器。
2024-09-27 15:01:18
194
1
原创 论文阅读:LLaVA1.5:Improved Baselines with Visual Instruction Tuning
它要求Qformer的视觉输出标记控制LLM的输出长度为长形式或短形式,如前缀调优,但由于Qformer相对于LLaMA等LLM的有限容量,可能缺乏适当执行此操作的能力。受到在自监督学习中从线性投影改为MLP(多层感知机)所带来的性能提升的启发,作者也通过使用两层MLP来增强视觉-语言连接器的表示能力,可以提升LLaVA的多模态能力。使用最简单的 LMM 架构,使用开源可数据,仅在600K图像-文本对上训练一个简单的全连接投影层,训练过程在 8 个 A100 上耗时约 1 天即可完成训练。
2024-09-25 15:32:23
191
1
原创 论文阅读:LLaVA:Large Language and Vision Assistant
对于公式2中的训练,我们将数据组织为单轮对话,将问题和内容作为Xinstruct,将推理和答案作为Xa。我们在早期实验中对ChatGPT和GPT-4的使用进行了消融,发现GPT-4始终提供更高质量的指令跟随数据,例如空间推理。注意,论文使用的 GPT4 是 text-only 版本,而不是多模态版本 GPT-4V,所以 GPT4 并不能真正看到图片,只能假装看到了图片然后根据图片的描述生成多轮对话。以上是原理的介绍,我们应该更感兴趣的是Code,毕竟我们想在自己的数据上也生成指令微调数据。
2024-09-25 10:23:26
193
1
原创 论文阅读:BLIP-2: Bootstrapping Language-Image Pre-trainingwith Frozen Image Encoders
分类需要正负样本,采样策略为在一个batch内寻找负样本,对于一个batch的每一个文本,根据计算的相似性权重,从当前batch选取一个(除自身外)作为负样本,相似性越高选取的概率越大,构成文本样本列表[pos,pos,neg],图像类似,构成[pos,neg,pos],构成文本和图像的正负样本(数组中每个代表一个batch,也就是样本大小为3个batch size, 第一个batch是配对的,后2个是不配对的,作为负样本),经过一个线性层, 输出0和1两类。,它与图像编码器交互,用于视觉特征提取。
2024-09-24 16:23:18
297
1
原创 论文阅读:MobileCLIP: Fast Image-Text Models through Multi-Modal Reinforced Training
模型训练的数据越多,模型就能达到更好的性能。MobileCLIP s0版本中的MCt是一个混合版本的常见文本编码器,我们经常在Transformer家族模型中看到。作者已经完全实验了Text-RepMixers,但在堆叠所有基本变换器块时降低了模型的性能,而提出的结构达到了比较的结果。在这种结构中,跳跃连接和批归一化,这些消耗内存和计算的操作将在推理管道中消失,从而使整个预测过程更快。为了在比原始CLIP更快的同时实现更好的性能,MobileCLIP必须在两个编码器上高效实现。架构中的块已经开发了几年。
2024-09-20 18:40:03
263
1
原创 论文阅读:DFN:Data Filtering Networks
该过程利用现有的图像-文本模型(在LAION的情况下是OpenAI CLIP ViT-B/32),并移除图像和文本之间的余弦相似度低于某个阈值的样本。例如,尽管LAION-2B的数据量是OpenAI数据集的五倍,但在其上训练的模型只能在使用显著更大的计算预算的情况下才能匹配OpenAI的ImageNet零样本性能。2:对训练filter模型最重要的是训练数据的精度,而且对精度的要求非常高。:在各种任务上的其他改进中,使用我们的数据集训练的ViT-H在ImageNet上达到了84.4%的零样本迁移准确率,
2024-09-20 10:19:33
355
1
原创 论文阅读:SigLIP:Sigmoid Loss for Language Image Pre-Training
GIT [49]、SimVLM [50] 和 LEMON [21] 成功地使用生成式文本解码器而不是对比学习来预训练模型,而CoCa [56] 在判别式的CLIP/ALIGN架构中添加了这样的解码器,从而将两种方法的优点和缺点结合进一个非常强大的模型中。具体而言,我们研究了基于Sigmoid的损失与图像-文本学习的两种突出方法:CLIP [36] 和 LiT [59],我们分别称之为Sigmoid语言图像预训练(SigLIP)和Sigmoid LiT(SigLiT)在使用超过100种语言的多语言设置下,
2024-09-19 18:34:48
483
1
原创 论文阅读:CLIP:OpenAI CLIP模型的简单实现:教程
因此,在Python脚本的情况下,config是一个普通的Python文件,我在其中放置了所有超参数,而在Jupyter Notebook的情况下,它是一个在笔记本开头定义的类,用于保存所有超参数。图像编码器的代码很简单。,我们将首先加载一个编码的描述,它是一个包含键input_ids和attention_mask的字典,将其值转换为张量,然后加载相应的图像,对其进行变换和增强(如果有的话!),在这个世界中,图像和文本具有相似的维度,以便能够比较它们,并将不相关的图像和文本分开,将匹配的图像和文本拉近。
2024-09-14 16:15:29
556
1
原创 论文阅读:CLIP:Learning Transferable Visual Models From Natural Language Supervision
在图2中,我们展示了6300万个参数的Transformer语言模型,其计算量已经是ResNet-50图像编码器的两倍,学习识别ImageNet类别比一个简单得多的基线慢三倍,该基线预测相同文本的词袋编码。给定一批N个(图像,文本)对,CLIP被训练来预测批次中实际发生的N × N个可能的(图像,文本)配对中的哪一个。为此,CLIP通过联合训练图像编码器和文本编码器来学习一个多模态嵌入空间,以最大化批次中N个真实对的图像和文本嵌入的余弦相似度,同时最小化N*N − N个不正确配对的嵌入的余弦相似度。
2024-09-12 17:35:10
236
1
原创 论文阅读:BLIP: Bootstrapping Language-Image Pre-training for Unified VL Understanding and Genera
我们的论文表明,噪声网络文本对于视觉-语言学习是次优的,并提出了CapFilt,它以更有效的方式利用网络数据集。Wang et al., 2021)都无法在这两类任务中表现出色,而单一的统一编码器-解码器(Zhou et al., 2020)也限制了模型的能力。与大多数现有的KD方法不同,这些方法只是强制学生模型具有与教师模型相同的类别预测,我们提出的CapFilt可以被解释为在VLP背景下进行更有效的KD的一种方式,其中字幕生成器通过语义丰富的合成字幕传递其知识,而过滤器通过去除噪声字幕传递其知识。
2024-09-11 19:33:34
278
1
Deep Hashing for Compact Binary Codes Learning
2015-10-21
IsoHash code
2015-07-21
IsoHash 各向同性哈希
2015-07-21
Supervised Hashing with Kernels(KSH)
2015-07-03
LSH(局部敏感哈希)
2015-07-03
Visual Studio Community 2017 (version 15.9)
2020-06-16
numpy-1.16.4+mkl-cp37-cp37m-win_amd64.zip
2020-06-11
Jointly Learning Binary Code for Large-scale Face Image Retrieval and Attributes
2016-04-13
Feature Learning based Deep Supervised Hashing with Pairwise Labels
2016-04-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人