2.0 引例:自动驾驶多模态数据融合——百度Apollo的异构数据处理体系
对应领域: 智能网联新能源汽车
场景案例: 激光雷达点云数据(非结构化)与高精地图(结构化)的清洗对齐
数据合规: 符合《汽车数据安全管理若干规》要求
现状: 日均处理PB级数据,但有效标注数据不足20%
百度Apollo数据处理架构
数据采集
激光雷达/摄像头/毫米波雷达
数据清洗
去噪/对齐/异常检测
数据转换
点云到BEV映射
数据标注
AI预标注+人工核验
模型训练
ADFM大模型训练
1.2PB
日均处理数据量
18.7%
有效标注数据占比
92%
AI预标注准确率
多模态数据融合技术
百度Apollo采用"特征级融合"与"决策级融合"相结合的方式处理多源异构数据[8](@ref):
- 特征级融合:在传感器数据的特征空间中进行直接融合,提高特征表达能力
- 决策级融合:基于多个传感器的原始数据或中间结果进行决策级融合,增强系统鲁棒性
- 时空对齐:控制时间同步误差1ms内,空间配准重投影偏差小于5像素[7](@ref)
2.1 数据类型
2.1.1 结构化数据
定义: 具有预定义模型和固定格式的数据,适合关系型数据库存储
特点:
- 高度组织化,易于搜索和分析
- 通常存储在表格形式中
- 示例:高精地图数据、车辆传感器数值、用户信息表
数据库表格
Excel文件
SQL数据库
2.1.2 非结构化数据
定义: 无预定义模型或组织结构的数据,占企业数据的80%以上
特点:
- 形式多样,包含文本、图像、音频、视频等
- 需要特殊处理才能提取价值
- 示例:激光雷达点云、摄像头图像、社交媒体文本
点云数据
视频流
自然语言文本
结构化 vs 非结构化数据
2.2 数据获取
人工主导型
技术依赖型
第三方数据
人工数据采集
需要人工参与的数据收集方式:
- 问卷调查与用户访谈
- 人工数据标注(如图像标记)
- 实地观察与记录
- 人工数据录入系统
挑战: 成本高、效率低、主观性强
技术驱动型采集
基于自动化技术的数据获取方式:
- 传感器网络(IoT设备)
- 网络爬虫与API接口
- 日志文件自动收集
- 移动应用数据采集
优势: 实时性强、规模大、成本低
第三方数据源
外部获取的数据资源:
- 公开数据集(Kaggle、UCI)
- 数据市场交易
- 政府开放数据平台
- 合作伙伴数据共享
注意事项: 数据质量、合规性、授权协议
2.2.5 数据合规
数据获取必须遵守法律法规要求:
- 《汽车数据安全管理若干规》要求车内数据处理本地化
- GDPR对个人数据处理的严格限制
- 数据匿名化处理技术
- 用户授权与隐私保护机制
百度Apollo采用"数据脱敏"技术,在数据处理前移除敏感个人信息[11](@ref)
2.3 数据合成
2.3.1 合成数据的含义
定义: 通过算法人工生成的数据而非真实世界采集的数据
应用场景:
- 解决真实数据稀缺问题(如罕见事故场景)
- 保护隐私(生成不包含真实信息的数据)
- 平衡数据集(解决类别不平衡问题)
- 模型压力测试(创建极端场景数据)
2.3.2 合成数据的原理
主要技术方法:
- 生成对抗网络(GANs): 生成器与判别器对抗训练
- 变分自编码器(VAEs): 学习数据潜在分布
- 基于物理的仿真: 游戏引擎创建逼真场景
- 数据增强技术: 旋转、裁剪、噪声添加等
百度ADFM大模型使用合成数据覆盖长尾场景,提升模型泛化能力[10](@ref)
2.3.3 合成数据与大模型
大模型与合成数据的协同效应:
- 大模型生成高质量合成数据
- 合成数据训练更强大的模型
- 闭环迭代优化系统性能
2.4 数据清洗
2.4.1 结构化数据清洗
针对表格型数据的清洗技术:
- 缺失值处理: 删除、插值、模型预测填充
- 异常值检测: Z-score、IQR、聚类分析
- 重复数据处理: 基于主键或特征相似度去重
- 格式标准化: 日期、货币、单位统一
2.4.2 非结构化数据清洗
复杂数据类型的清洗方法:
- 点云数据: 离群点去除、降采样、地面分割
- 图像数据: 去噪、增强、畸变校正
- 文本数据: 去除停用词、词干提取、纠错
- 视频数据: 关键帧提取、运动模糊处理
自动驾驶系统采用多级清洗流水线,自动化率达90%[7](@ref)
数据清洗模拟器
输入数据后点击"执行清洗流程"查看结果
2.5 数据转换
2.5.1 结构化数据转换
表格数据转换技术:
- 特征缩放: 标准化、归一化、最大绝对值缩放
- 特征编码: 独热编码、标签编码、目标编码
- 特征构造: 创建交互特征、多项式特征
- 降维技术: PCA、LDA、t-SNE
2.5.2 非结构化数据转换
复杂数据转换方法:
- 点云数据: 体素化、BEV投影、特征提取
- 图像数据: 特征提取(CNN)、目标检测、分割
- 文本数据: 词嵌入、序列编码、注意力机制
- 多模态融合: 早期融合、晚期融合、混合融合
百度Apollo使用BEV Transformer实现多传感器数据融合[10](@ref)
Python示例:点云数据处理
import numpy as npfrom sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
# 点云数据加载
point_cloud = np.loadtxt('lidar_data.txt')
# 数据标准化
scaler = StandardScaler()
scaled_data = scaler.fit_transform(point_cloud)
# 降维处理
pca = PCA(n_components=3)
transformed_data = pca.fit_transform(scaled_data)
# BEV投影
bev_image = np.zeros((200, 200))
for point in transformed_data:
x, y = int((point[0] + 25) * 4), int((point[1] + 25) * 4)
if 0 <= x < 200 and 0 <= y < 200:
bev_image[x, y] = 255
2.6 本章小结
- 多模态数据融合是自动驾驶等AI系统的核心挑战,需要解决时空对齐问题
- 数据合成技术成为解决长尾场景的关键,大模型与合成数据形成正向循环
- 数据合规已成为数据获取的前提条件,特别是涉及个人隐私的场景
- 非结构化数据处理需要专门的技术栈,点云/图像/文本各有其处理方法
- 百度Apollo的实践表明,自动化数据处理流水线可提升效率90%以上[7](@ref)
数据处理关键指标
数据处理实践区
多模态数据处理模拟
数据处理结果
选择数据类型后点击"执行数据处理"