Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

Data Blending

数据融合会先将不同来源的数据分别汇总到共享字段,再进行匹配;这既用于 BI 工具,也用于混合式 ML 训练集。

数据混合是指将两个或多个不同来源的数据组合成一个视图或数据集,通常先将各来源的数据汇总到共同的关联字段(例如日期、商店或地区),再进行匹配。这个术语源自商业智能工具:通过混合,来自一个系统的月度营销预算可以与另一个系统的每日销售额并列展示,而无需先将两者加载到同一个数据库中。在机器学习中,数据混合也指将多个数据集混合成一个训练集,例如将真实图像与合成数据混合,或将公开的基准数据集与公司自有摄像头采集的图像混合。

数据混合如何工作#

在 Tableau 的实现方式中,视图使用的第一个数据源是主数据源,它定义视图;每个辅助数据源则单独查询,汇总到关联字段所表示的粒度,再附加到匹配的行上。其结果类似左连接,但处理顺序不同:连接是先合并行再汇总,而混合是先分别汇总各数据源再合并。当数据源的粒度不同时,这种顺序就很重要;下面的 pandas示例展示了每日收入和每月广告支出的情况:

import numpy as np
import pandas as pd

# Source 1: daily revenue from a store database
rng = np.random.default_rng(0)
orders = pd.DataFrame({"date": pd.date_range("2026-01-01", "2026-03-31")})
orders["revenue"] = rng.integers(200, 400, len(orders))
orders["month"] = orders["date"].dt.strftime("%Y-%m")

# Source 2: monthly ad spend from a marketing tool
ads = pd.DataFrame({"month": ["2026-01", "2026-02", "2026-03"], "ad_spend": [3000, 2000, 4000]})

# A row-level join copies each month's spend onto every daily row
joined = orders.merge(ads, on="month")
print(f"ad spend after a row-level join: {joined['ad_spend'].sum():,}")

# A blend aggregates to the linking field (month) first, then combines the sources
blended = orders.groupby("month", as_index=False)["revenue"].sum().merge(ads, on="month", how="left")
blended["revenue_per_ad_dollar"] = (blended["revenue"] / blended["ad_spend"]).round(2)
print(blended)

按行连接后显示广告支出为 273,000,而非实际的 9,000,因为每个月的预算都会重复出现在该月 28 到 31 天的每日记录中。数据混合会让每个月只保留一行,并得出每广告美元收入:1 月为 3.17,2 月为 4.06,3 月为 2.41。

数据混合适用于探索性数据分析和数据可视化仪表板;在这些场景中,数据源位于不同系统,而分析问题需要将它们组合起来。关联字段中的值必须完全一致,因此,如果一个数据源中写的是“Lt. Blue”,另一个写的是“Light Blue”,在清理或设置别名之前,两者无法匹配。

混合训练数据集#

机器学习团队会混合数据集,以覆盖任何单一数据源都无法涵盖的更多情况。大型语言模型会使用这类混合数据进行训练:The Pile由 EleutherAI 于 2020 年发布,将从学术论文到代码的 22 个来源混合成一个 825 GiB 的英文文本语料库,并为每个来源设定独立的采样权重。在计算机视觉中,混合来自多台摄像机、多个地区和多个季节的数据集,可以减少对单一环境的过拟合,并缓解数据集偏差。

训练数据混合需要像 BI 数据混合一样进行协调。类别名称必须映射到统一的分类体系,因此,“car”、“automobile”和“vehicle”要么归为同一个类别,要么有意保持区分。数据标注格式和约定必须一致,因为一个数据源可能会围绕被遮挡人物的可见部分绘制边界框,而另一个数据源则会框出完整轮廓;数据清洗会移除在多个数据源中重复出现的图像。团队会将测试数据从部署领域中抽取出来,使指标反映目标领域,而不是混合数据中最容易处理的数据源。

Ultralytics YOLO 在训练时通过数据集 YAML混合数据源,其中 train 字段接受图像目录列表,或包含图像路径的 .txt 文件;因此,单次训练就能同时使用真实数据集和合成数据集,而 val 只列出真实图像。

  • 数据连接:在单个查询中按匹配键逐行合并记录,并在汇总之前执行;当数据源的粒度不同时,这样做会造成数值重复。
  • 数据集成:通常通过提取、转换和加载(ETL)流水线,将多个来源永久整合到具有共享架构的数据仓库或数据湖中。
  • 集成学习中的混合:通过在留出集上训练的元模型组合多个模型的预测,这是 Netflix Prize 获奖方案采用的方法,与合并数据源无关。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来