Finisky Garden

NLP, 软件工程, 产品设计

Use az cli to query multiple fields of VM information. Here we need to use JMESPath language to implement it.

Typically, we will use az vm show to get the detailed VM information:

$ az vm show -g Linux -n alpha -d -o table
Name    ResourceGroup    PowerState    PublicIps     Fqdns    Location    Zones
------  ---------------  ------------  ------------  -------  ----------  -------
alpha   Linux            VM running    11.1.111.111           eastasia    1
阅读全文 »

搜索系统的评估和调优很大程度上依赖于相关性标签——这些标签标注了某个文档对特定搜索和搜索者是否有用。理想情况下,这些标签来自真实的搜索用户,但要大规模收集这些数据非常困难,所以典型的实验依赖于第三方标注人员,但他们也可能产生不准确的标注。标注质量一般通过持续的审核、培训和监控来管理。

微软(Bing搜索组)在SIGIR'24提出了一种“反其道而行之”的方法:从真实的用户获取反馈,并利用这些反馈来选择一个与之相符的LLM及其提示词,然后令该LLM大规模地产生标签。实验表明,LLM的准确性与人工标注者相当,并且在找到最佳系统和最难的查询方面同样有用。

[SIGIR2024] # Large Language Models can Accurately Predict Searcher Preferences

阅读全文 »

大语言模型在各种与语言相关的任务中表现出了显著的零样本泛化能力,包括搜索引擎。然而,现有的工作主要利用LLM的生成能力进行信息检索,而不是直接进行段落排序。这篇EMNLP2023的论文(Outstanding Paper)研究了LLM是否擅长搜索排序的问题。

# Is ChatGPT Good at Search? Investigating Large Language Models as Re-Ranking Agents

阅读全文 »

之前写过深度检索模型的介绍:# 深度文本检索模型:DPR, PolyEncoders, DCBERT, ColBERT,今天来看看DeepMind在NeurIPS 2024上的文章,对多向量检索模型(Multi-Vector Retrieval)ColBERT进行了改进:

Rethinking the Role of Token Retrieval in Multi-Vector Retrieval

多向量检索模型由于使Query与Doc进行词元级别的交互,因此在许多信息检索基准测试中达到了SOTA。然而,其非线性评分函数无法扩展到数百万个文档,这就需要一个三阶段的推理过程:通过词元检索检索初始候选,访问所有词元向量,并对初始候选文档进行评分。非线性评分函数应用于每个候选文档的所有词元向量,使得推理过程复杂且缓慢。XTR 引入了新的目标函数,鼓励模型首先检索最重要的文档词元,对词元检索的改进使得 XTR 可以仅使用检索到的词元来对候选文档排序,而不是文档中的所有词元,因此其成本比 ColBERT 低两到三个数量级。在流行的 BEIR 基准测试中,XTR 在没有任何蒸馏的情况下,将 NDCG@10 提升了 2.8。

主要改进点:

  • 仅使用检索到的doc token而非全部doc token进行相似度计算
  • 解决了检索训练和推理之间的gap
阅读全文 »

最近读到一篇有趣的文章,讨论了当前许多新的AI搜索产品是否会取代Google:

Here’s why AI search engines really can’t kill Google

先简要地看下这篇文章在说什么:

如果要取代Google,那么这些新的产品必须可以完成Google能做的所有事情。于是,作者先收集了Top100的Google搜索查询,然后将它们输入到当前最好的一些AI搜索产品中。作者认为,虽然在某些情况下,基于LLM的搜索比一页Google搜索结果有用,但在大多数情况下,AI搜索取代Google还是相当困难的。

阅读全文 »

After upgrading Ubuntu 20.04 LTS to Ubuntu 22.04LTS, the server always freezes after ~10 minutes. All services are down, cannot ssh, connect to serial console but cannot input. However, this issue never happen before release upgrade.

阅读全文 »

Cannot believe that Word has such a bug: when tracking changes, wildcard replacement cannot correctly work.

I want to batch replace English parentheses with Chinese parentheses, so I use wildcard replacement:

Find What: \((*)\)
Options: Use Wildcards
Replace With: (\1)

For example, for "(abc)", the expected result is "(abc)", however, the result is "abc()".

阅读全文 »

没想到浓眉大眼的Office Word居然还有这种Bug:在追踪修订时,通配符不能正确替换。

在处理一个大型文档时,需要批量将英文括号替换成中文括号,因此需要使用到通配符替换:

Find What: \((*)\)
Options: Use Wildcards
Replace With: (\1)

预期行为是:将“(abc)”替换为“(abc)”,却没料到被替换成了“abc()”。

阅读全文 »

最早听说语言模型的本质是压缩器的想法是在黄仁勋和Ilya的围炉对谈,当时只是直觉上觉得这个说法很有意思,但却没想明白原理是什么。2023年9月,DeepMind写论文进一步论证了语言建模与压缩的等价性:

# Language Modeling Is Compression

长期以来,人们已经确认预测模型可以转化为无损压缩器,反之亦然。值得注意的是,近年来,机器学习领域一直专注于训练规模越来越大且功能强大的自监督语言模型。由于这些大语言模型展示了很强的预测能力,它们自然而然地也被认为是强大的压缩器。文中研究者主张通过压缩的视角来审视预测问题,并依此评估大型基座模型的压缩能力。实验证明大语言模型也是强大的通用预测器,语言模型即压缩的视角为扩展定律和上下文学习提供了新的见解。例如,Chinchilla 70B虽然主要用文本训练,但却能将ImageNet patches和LibriSpeech样本压缩到其原始大小的43.4%和16.4%,分别超过了领域特定的压缩器,如PNG(58.5%)和FLAC(30.3%)。最后,研究者证实基于预测与压缩的等价性可以使用任何压缩器来构建条件生成模型。

本文试图用简洁的语言(无公式)来说明“语言建模即压缩”的思想。原论文的思路是借助算术编码的原理和过程,然后将语言模型建模的过程与算术编码过程进行映射并证明它们等价。这个思路有些类似于NP难问题的证明:将一个问题在多项式时间归约成已知的某个NP难问题。

阅读全文 »
0%