通信领域数据治理漫谈之数据质量与标注

举报
田园香径 发表于 2019/12/03 15:34:56 2019/12/03
【摘要】 云平台是AI应用的基础组件,算法是AI应用的灵魂,而数据决定了AI应用的能力上限。在AI技术的应用过程中,70%以上的工作通常都聚焦于数据的采集、分析和处理。本文以华为NAIE的“一故障一工单”为例,介绍了数据工作的主要内容,并阐述了数据标注的意义和数据质量评估方法。


电信领域的网络自动驾驶,本质上是基于存量电信网络的海量数据进行数据挖掘和数据分析,发现并解决现实复杂环境下的痛点问题,其主要应用在提升运维效率、节能降耗、提高资源利用率、优化用户体验等方面。

云平台是AI应用的基础组件,算法是AI应用的灵魂,而数据决定了AI应用的能力上限。在AI技术的应用过程中,70%以上的工作通常都聚焦于数据的采集、分析和处理。本文以华为NAIE的“一故障一工单”为例,介绍了数据工作的主要内容,并阐述了数据标注的意义和数据质量评估方法。



image.png


通信技术经过几十年的不断演进和发展,加上网络的持续扩容和升级,现在的电信网络实际上是由不同技术产品组合而成,涵盖了宽带、无线、固话等多种业务。电信网络可以划分为无线、传送、数通、核心网等多个领域,每个领域都有一系列技术产品,每一个产品都有特定的组网配置要求,它们的业务功能和技术指标各不相同。

针对无线、传送和数通领域的故障场景复杂、设备告警泛滥的痛点,华为NAIE“一故障一工单”方案基于大量的设备告警信息及运维工单,结合网络拓扑数据,通过机器学习的方式完成故障定界和工单压缩,从而减少故障定界的时间,降低运维人力成本,避免派发不必要的维护工单,以提升运维效率。


image.png


数据工作在AI项目中是贯穿始终的,可以将其分为五部分内容:业务理解、数据采集、数据清洗、数据转换、数据集生成。数据工程师需要从业务出发,充分了解数据内容和特点,依次完成数据的采集、清洗和转换过程,最终生成AI算法需要的数据集,包括训练集、验证集和测试集。


2.1 业务理解


正确理解电信业务,才能准确识别出采集数据的范围和内容,这也是数据处理、算法设计以及模型评估的前提。其次,数据工程师必须非常了解电信网络的组网方式、业务领域和产品型号,具备一定的网络运维经验,才能够理解和分析故障告警。只有熟悉了电信网络的业务场景和故障类型,数据工程师才能梳理出数据采集的具体范围和内容。比如,对于大面积停电导致的断站故障,可能是由于市电停电导致的,这会导致整个物理站点的所有逻辑站点故障,因此物理站点与逻辑站点的关系数据就是必需获取到的数据内容。


2.2 数据采集


数据工程师需要从网元、网管和其他管理系统上采集到期望的数据。数据采集是繁琐枯燥而且困难的,过程中可能会遇到很多意想不到的问题。数据采集首先必须经过客户的授权,采集到的数据必须先对客户隐私和保密信息进行脱敏或匿名化处理。

在数据采集之前,数据工程师需要确定采集的范围、内容以及采集方法,并提供数据采集指导书供一线工程师进行实施。一线运维人员需要提前给出现网存量网元的型号和版本,如果涉及多个产品的不同型号,尤其是老旧设备,可能需要升级采集工具才能确保采集到正确和准确的数据。数据工程师拿到采集数据之后要及时检查数据的完整性,如果有缺失或者异常还需要定位分析并重新采集,整个数据采集过程在项目中会持续较长的时间。数据工程师应该尽早启动数据采集流程,并且提前考虑自动化数据采集方案。


2.3 数据清洗


通常情况下,采集到的数据存在着格式杂乱、数据缺失、数据错误等问题,必须解析复杂的半结构化/非结构化数据,检测和校正损坏或不准确的数据,识别出不完整、不正确和不相关的数据,通过增补、替换、修改、删除等方式来完善和修正数据。

数据清洗的基本动作包括:特殊字符替换、空行剔除、重复数据剔除、无效数据剔除、数据类型转换、异常数据过滤和数据增补。

根据“一故障一工单”的业务要求和数据特点,数据工程师除了上述数据清洗的基本动作,还需要完成其它的数据清洗动作。例如,不同批次采集的原始告警,数据字段错位或不一致,需要先做归一化处理;若告警数据的实体对象ID缺失,需要从实体对象名称及扩展信息字段中提取并填充;对于无效及异常的数据内容,如果通过业务关系可以还原恢复的,应该尽量恢复为有效值,不能恢复的则直接剔除;复杂的拓扑原始数据需要经过再次解析,结合正则表达式采用通用的方式分解为多个字段信息,保证列的原子性,符合数据库第一范式的要求。


2.4 数据转换


为了在业务上进行数据分析和数据挖掘,原始数据需要通过特征选择、数据标准化和数据关联等操作转换为主题域数据。根据华为NAIE主题模型规范构建的主题数据,可作为电信网络的标准化数据。

NAIE的主题模型规范包含了时空数据模型、测量数据模型、设备数据模型、拓扑数据模型、故障数据模型等。这些主题模型是各个业务领域的数据抽象和提炼,能够完整的表达业务内容或数据特征,去除了无关或冗余的数据信息。

电信网络中的问题可以通过一个或多个主题数据来描述,这些主题数据在时间和空间上的关系是完整的,信息是完备的。对于“一故障一工单”来说,故障场景就可以通过拓扑主题数据和故障主题数据来分析。


2.5 数据集生成


针对具体的业务目标,通过对组合后的主题数据进行特征提取、关联和标注,形成数据洞察所需的数据集,或者算法训练验证所需的数据集。

算法训练所需的数据集可以划分为训练集、交叉验证集和测试集三类。

监督学习和半监督学习的训练集必须有样本标签,用于算法模型的训练(通过样本标签计算模型误差,利用梯度下降等方法迭代提升模型精度)。无监督学习的训练集可以没有样本标签,但是验证集和测试集应当有样本标签,用于模型的调优和验证,以及模型效果的评估。

“一故障一工单”选择了故障主题数据和拓扑主题数据的部分特征,再将故障特征和拓扑特征进行关联,最后按照时空关系进行故障集合划分,就形成了基本数据集。然后按照一定的比例对数据集进行划分,划分为训练集、验证集和测试集。最后,根据运维工单数据对验证集和测试集的样本标签进行故障标注,就生成了最终的数据集。


image.png

数据标注是指对数据样本进行标记,增加一个有信息含义的标签。样本标签可以是人工手动标注的,也可能基于业务系统已有的信息进行整合,实现自动化标注。

数据标注的内容是根据人的经验产生的。比如,大面积的无线基站连接中断告警加上某些传输节点上的连接丢失告警,经验丰富的运维专家很容易判断出这是一个群障,很可能是市电掉电导致的,也有可能是光路中断或者硬件故障。结合现网各类故障的发生频率和传输节点的数量和位置,运维专家会给出最可能的原因,作为当前故障的一个根因标注。

电信网络中运维系统的工单数据恰好描述了设备告警所产生的真实故障数据(除去无效工单),这是用来做故障标注的绝佳数据。工单数据中包含了相关的设备告警、故障内容、故障根因和故障恢复时间等。“一故障一工单”利用工单信息来标注故障数据集合的故障场景和故障根因,样本标签在验证集和测试集中使用,用于算法的模型选择和参数优化,以及算法性能评估。

在绝大多数情况下,如果没有标注的样本数据标签,相关的算法性能指标(平均绝对误差、均方差、准确率、精确率、召回率以及F1-score等)就无法计算,算法模型的性能没有指标进行衡量,更不能进行模型的优化。所以说,数据标注在数据工作中跟数据质量同等重要。


image.png


不是所有的数据都有价值。错误的、失衡的、失真的数据都会影响算法效果,甚至影响算法的建模,所以说数据质量会直接影响业务结果。在完成了上述的数据工作之后,我们需要系统的对治理后的数据质量进行评估。

数据质量度量的评估维度有六个:完整性、及时性、有效性、唯一性、准确性、一致性。可以在实际的工作阶段根据需要进行修剪和评测,保证在项目结束时达到定义的数据质量目标。


image.png


数据常见的质量问题包括数据不一致、数据不完整、数据重复、数据缺失、格式不一致等。比如,某个字段的数据应该是唯一的,而且类型为整数,但是实际上数据中既有空值和重复值,格式上还可能是字符串类型。对于这种情况,必须先评估无效/异常数据的占比,无效/异常数据占比过高时,应该通过数据增补、数据过滤和格式转换等手段进行修复。

数据质量评估的作用和效果包括:


1、可以节约大量试错的时间,对于质量很差的数据集,就没有必要花费太多的时间和精力;


2、可以降低得出错误结论的概率,如果能够及时发现数据中存在的错误和失真,就能够避免因为数据本身的问题而得出错误的结论;


3、可以缩短数据反馈流程,更加及时的将数据收集过程中存在的问题反馈给数据生产部门,提高协作效率。


完成了以上数据工作,你就可以专注于AI应用的模型开发和调优工作了。



image.png


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。