five

CANDY

收藏
arXiv2024-06-28 更新2024-07-22 收录
下载链接:
https://github.com/intellistream/candy
下载链接
链接失效反馈
官方服务:
资源简介:
CANDY数据集由新加坡科技设计大学等机构创建,专注于连续近似最近邻搜索的动态数据摄取。该数据集包含多种应用领域的真实世界工作负载,如文本嵌入、图像处理和音频处理,以及一个新合成数据集WTE。创建过程中,数据集采用了先进的数据处理策略,如数据丢弃和微批处理,以模拟真实世界的动态数据摄取。CANDY数据集主要用于评估和优化近似最近邻算法在动态环境中的适应性和性能,旨在解决实时数据更新和分布变化带来的挑战。

The CANDY dataset was developed by institutions including the Singapore University of Technology and Design (SUTD), focusing on dynamic data ingestion for continuous approximate nearest neighbor (ANN) search. This dataset includes real-world workloads from diverse application domains, such as text embedding, image processing, and audio processing, alongside a newly synthesized dataset named WTE. During its development, advanced data processing strategies including data dropping and micro-batching were adopted to simulate real-world dynamic data ingestion scenarios. The CANDY dataset is primarily used to evaluate and optimize the adaptability and performance of approximate nearest neighbor algorithms in dynamic environments, aiming to address the challenges posed by real-time data updates and distribution shifts.
提供机构:
新加坡科技设计大学, 新加坡国立大学, 华中科技大学, 上海交通大学, 南洋理工大学
创建时间:
2024-06-28
原始信息汇总

CANDY 数据集概述

构建选项

  • ENABLE_PAPI:启用基于 PAPI 的性能工具(默认关闭)。
  • ENABLE_HDF5:启用从 HDF5 加载数据(默认关闭)。
  • ENABLE_PYBIND:启用 Python 绑定(默认关闭)。

一键构建示例

  • buildWithCuda.sh:构建支持 CUDA 的 CANDY 和 PyCANDY。
  • buildCPUOnly.sh:仅 CPU 版本的构建。

手动构建要求

  • G++11:适用于 Ubuntu 22.04 及以上版本。
  • BLAS 和 LAPACK:需要安装 liblapack-dev 和 libblas-dev。
  • Torch:需要安装 PyTorch,参考 https://pytorch.org/get-started/locally/。

可选依赖

  • PAPI:包含在 thirdparty/papi_7_0_1 中。
  • Graphviz:用于可视化。
  • Ray:用于分布式 CANDY。

构建步骤

  • CUDA 相关:仅在 PyTorch 支持 CUDA 时需要。
  • Shell 构建:使用 cmakemake 进行构建。

评估脚本

  • 位置:位于 build/benchmark/scripts 目录下。
  • 使用示例:扫描矩阵 A 的行元素数量。

已知问题

  • Python 兼容性:存在一些已知问题。
搜集汇总
数据集介绍
main_image_url
构建方式
CANDY数据集旨在模拟动态数据摄取场景下的连续近似最近邻搜索,通过整合多种现实世界的数据集,如文本嵌入、图像处理和音频,以及一个模拟数据分布变化的合成数据集WTE。数据集的处理包括数据降级、微批处理以及数据摄入准入控制,以模拟真实世界的动态数据摄取。此外,CANDY还包含了先进的优化技术,如基于机器学习的推理和改进的距离计算方法,以减少计算开销。
特点
CANDY数据集的主要特点包括对近似最近邻搜索算法的分类、适应和优化。它将算法分为基于范围和基于导航两大类,并针对动态数据摄取进行了特定适配。此外,CANDY还提供了多种优化技术,如机器学习驱动的推理和距离计算优化,以提升算法的效率和准确性。CANDY数据集还包括对算法性能的评估指标,如查询召回率和查询延迟。
使用方法
CANDY数据集的使用方法包括初始化AKNN算法、离线数据加载、数据摄入和向量搜索。用户可以通过调整微批处理的大小、数据摄入速率和数据分布变化的强度来模拟不同的动态数据摄取场景。CANDY还提供了机器学习和距离计算优化技术,以进一步提升算法的性能。此外,用户还可以通过CANDY提供的评估指标来评估算法的性能,以选择最适合其特定应用的算法。
背景与挑战
背景概述
在人工智能领域中,近似K近邻(AKNN)算法在信息检索、计算机视觉和自然语言处理等领域发挥着至关重要的作用。然而,现有的AKNN算法和基准测试主要集中在静态数据集上的检索有效性评估,而忽略了动态数据更新效率的重要性。为了解决这一问题,新加坡科技设计大学、新加坡国立大学、华中科技大学、上海交通大学和南洋理工大学的研究人员共同开发了CANDY基准测试框架。该框架旨在评估AKNN算法在动态数据环境中的性能,特别是在连续数据摄取方面的表现。CANDY通过集成机器学习驱动推理和改进的距离计算方法,对AKNN算法进行综合评估,并通过广泛的实验验证了其在不同数据集上的性能。该数据集的创建为AKNN算法在动态环境中的研究提供了重要的基础,对相关领域的发展产生了深远的影响。
当前挑战
CANDY数据集面临着一系列挑战。首先,动态数据的连续摄取对AKNN算法的更新效率提出了更高的要求。现有的基准测试主要评估静态环境下的检索有效性,而忽略了更新效率,这对于处理连续的数据摄取至关重要。其次,数据分布的动态变化给AKNN算法带来了额外的挑战。CANDY通过引入数据丢弃和微批量处理等策略,模拟真实世界的动态数据摄取,为AKNN算法在动态环境下的评估提供了更为全面的视角。此外,CANDY还面临一些技术上的挑战,如单线程、CPU-only的条件限制,以及对动态删除操作的支持不足等。这些挑战需要进一步的研究和改进,以推动AKNN算法在动态数据环境中的发展和应用。
常用场景
经典使用场景
CANDY数据集被设计用于评估连续近似最近邻搜索算法在动态数据摄取环境下的性能。在信息检索、计算机视觉和自然语言处理等领域中,AKNN算法起着至关重要的作用。CANDY旨在解决现有基准未能充分评估AKNN算法在动态环境中的适应性和性能的问题,从而为这些算法在实际应用中的表现提供更全面的评估。
实际应用
CANDY数据集在实际应用中可用于评估和选择最适合动态数据摄取场景的AKNN算法。例如,在线新闻聚合器可以使用CANDY来评估不同AKNN算法在处理新文章和用户互动变化时的性能,从而为用户提供更准确和实时的内容推荐。此外,CANDY还可以用于评估和优化机器学习驱动的推理和距离计算方法,以提高AKNN算法的搜索效率和准确性。
衍生相关工作
CANDY数据集的发布促进了AKNN算法在动态数据摄取环境下的研究和发展。基于CANDY的研究成果,研究者们可以进一步探索和改进AKNN算法的性能,并开发出更适应动态环境的算法。此外,CANDY还可以用于评估和比较不同AKNN算法的优缺点,从而为算法选择和应用提供参考。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作