140 Matching Annotations
  1. Nov 2023
    1. 方法:

      基础介绍:

      考虑到现有模型还没有探索,什么样的Instruction数据集是更有效的,而且什么因素导致了好的Instruction data,暂未有人探索。 考虑到这些问题,作者探索什么是好的visual Instruction这个问题。基于这个目标,作者首先对现有的 visual Instruction set进行了评估,目标是发现关键因素。

      作者主要从task type和Instruction characteristic两个方面来评估。作者选择了六个典型的Instruction dataset,使用两个典型的BLIP2和MiniGPT-4来评估。根据实验结果,作者发现: 1. 对于task type,视觉推理任务对于提升模型的image caption和quetison answering任务很重要。 2. 对于Instruction characteristic,提升Instruction的复杂度更加有帮助对于提升性能,相比task的多样性,以及整合细粒度的标注信息。

      基于上述发现,作者开始构建复杂的视觉推理指令集用于改善模型。

      首先最直接的方法是通过chatgpt和gpt4来优化指令集,基于图像的标注。因为指令集跨跨模态的特性,LLMs可能会过于简单甚至包含本来图片中不存在的物体。 考虑到上述问题,作者提出了一个系统的多阶段的方法,来自动生成visual Instruction数据集。

      输入一张图,根据可以获得标注,caption或者object,作者采用了一种先生成,再复杂化,再在重组的pipeline来生成Instruction。具体的,作者首先,使用特殊的prompt指导prompt来生成一个初始指令。然后使用迭代的方式,复杂化-->验证的方式,来逐步提升Instruction的复杂程度,同时保证质量。最后,将Instruction重组成多种形式,在下游任务重,获得更好的适应性。

      前提条件:

      视觉指令收集:

      任务类型,之前的指令微调的数据集,都是利用带有标注的图片。主要包括一下三个任务类型: 1. Image Caption,生成文本描述 2. VQA任务:需要模型根据问题生成关于图片的回答 3. Visual reasoning:需要模型基于图片内容进行推理。

      为了研究任务类型的影响, 作者考虑一个最常用的指令微调数据集LLaVA-Instruct。作者将其划分成三个子数据集,LLaVA-Caption, LLaVA-VQA and LLaVA-Reasoning。

      指令特性: 指令的特性包括。 * 任务的多样性,已经有工作发现,提升工作的多样性,对于zero-shot能力是有帮助的。可以通过和不同的任务整合来获得此类能力。 * 指令的复杂程度,这是一个被广泛应用的策略,提升LLMs指令集的复杂程度。作者同样使用复杂的多模态做任务,例如,多跳的推理任务,来提升MLLMs的指令遵循能力。 * 细粒度的空间感知。对于MLLMs而言,感知细粒度的空间信息对图片中的特定物体,是必要的。基于这个目标。空间位置的标注可以包括在有文本的指令集中。

  2. Jun 2023
  3. Mar 2023
    1. 是一个文件系统,用于存储文件,通过统一的命名空间目录树来定位文件; 其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。

      HDFS为文件系统

    2. HDFS是一个主/从(Mater/Slave)体系结构,由三部分组成: NameNode 和 DataNode 以及 SecondaryNamenode: NameNode 负责管理整个文件系统的元数据,以及每一个路径(文件)所对应的数据块信息。 DataNode 负责管理用户的文件数据块,每一个数据块都可以在多个 DataNode 上存储多个副本,默认为3个。 Secondary NameNode 用来监控 HDFS 状态的辅助后台程序,每隔一段时间获取 HDFS 元数据的快照。最主要作用是辅助 NameNode 管理元数据信息。

      HDFS结构

  4. Dec 2022
    1. 比起其他主题,自学数据库系统需要更多的付出。这是一个相对年轻的研究领域,并且出于很强的商业动机,研究者把想法藏在紧闭的门后。此外,许多原本有潜力写出优秀教材的作者反而选择了加入或创立公司。
  5. Oct 2022
    1. 那么作为一名工程师,或者技术管理者,如何去利用有限的时间去培养这些思维和能力呢?

      一是定目标的时候都尽可能量化。不要只是想着要 improve,enable,想想你具体 improve 了多少,enable 了什么。

      二是动手搭一些简单的 dashboards去追踪你的目标指标。这样你就能随时观测你离你的目标有多少,从趋势上知道你做那些事对你的目标有最大的帮助。

      三是保持一颗好奇心,看到设定好的数据有任何不是很理所当然的波动或者变化的时候,试着打破沙锅问到底,试试自己能不能去解读这些波动和变化。并且勤于动手去写一些简单的 SQL,知道数据的来龙去脉,知道每个数据的波动,其上游和下游可能受影响的数据还可能有哪些。

      另外,如果组里有一名数据分析师或者数据科学家,不要觉得只是各做各的事,尝试着更紧密的合作和沟通,学习一些简单的技巧和思路,加上你对系统的实现有很好的了解,等你能够熟练运用一些简单的数据技能的时候,就会发现对彼此的工作都会有很大的帮助。

    2. 最后的结果就是组里不论任何大小决定,都用数据说话,决策过程也变得很透明。

    3. 给我印象最深的,是第一次听他在公司做报告的时候引用的 Peter Drucker 的一句话:“If you can’t measure it, you can’t improve it.” 这句话在后来的工作中多次的被印证,而很多时候,及时有效的一个数据分析,可以帮我们找到正确的方向,做改进最省力的办法,以及时刻帮助我们了解项目或者产品的好坏。

    4. 首先就是对各种 bug,incident,或者系统漏洞处理的优先级排序。以前我遇到别人报了一个问题,第一反应就是凭直觉去判断这个问题是因为什么,好不好修,怎么修,以及引发的可能性会不会很大。现在每遇到一个问题,第一件事就是去 “measure it”,这个问题影响到的人可能有多少,给公司带来的损失是多少。每个小时每天新的影响有多大等等。每个 bug report 上都有这样的 SQL query 和数据,然后团队就根据切实的数据去决定哪些问题是急事,哪些可以稍微放一放。这样一来团队始终都可以做到把问题控制在最小,而且对于略推后的问题心里也十分有底会有多大的影响。

  6. Aug 2022
    1. 事务自动开启、提交或回滚,比如insert、update、delete语句,事务的开启、提交或回滚由mysql内部自动控制的