自动摘要: 修订历史 |版本|修订内容|修订时间|修订人| ||||| |V1.0.0|定义数据标准|20221026|[@sin ……..
修订历史
版本 | 修订内容 | 修订时间 | 修订人 |
---|---|---|---|
V1.0.0 | 定义数据标准 | 2022-10-26 | @sindre(sindre) |
v1.1.0 | 确定以@朱远翔(zhuyuanxiang)格式为标准 | 2022-01-01 | @朱远翔(zhuyuanxiang)@sindre(sindre) |
v1.1.1 | 修订注意事项 | 2022-06-15 | @sindre(sindre) |
数据来源
- 自己改造数据
- 无中生有数据
- 真实数据
数据整理标准
- Completeness:完整性,用于度量哪些数据丢失了或者哪些数据不可用
- Conformity:规范性,用于度量哪些数据未按统一格式存储
- Consistency:一致性,用于度量哪些数据的值在信息含义上是冲突的
- Accuracy:准确性,用于度量哪些数据和信息是不正确的,或者数据是超期的
- Uniqueness:唯一性,用于度量哪些数据是重复数据或者数据的哪些属性是重复的
- Integration:关联性,用于度量哪些关联的数据缺失或者未建立索引
验证数据标准:
- Dataset:被评估的数据集,
- Indicators:评估指标,
- Rule:评估规则,
- Weight:权重,
- Expectation:期望,
- Score:结果
数据整理工作规范:
数据产生–>加工处理–>存储–>挖掘和应用
数据生命周期:
产生–>处理–>部署–>应用–>管理–>存档–>销毁–>产生
数据处理原则
- 数据预处理
- 与模型设计人员沟通,确认数据需求(数量、内容、质量)
- 与技术负责人沟通,确认存在的开源数据集
- 与数据生产人员沟通,确认数据生产的边界
- 尽早建立数据生产规范(数据产生–>加工处理–>存储–>挖掘和应用)
- 数据标注任务
- 尽早建立数据生命周期(产生–>处理–>部署–>应用–>管理–>存档–>销毁–>产生)
- 尽量寻找自动化标注工具
- 尽量明确制定数据标注的标准(数据的类别、目标;数据的遮挡、局部处理;数据的边界范围;异常数据的处理;数据标注的规范;数据命名的规范。。。)
- 尽量参考存在的数据集制定标注的标准
- 验证数据可用性
- 尽早确定数据生产标准
- Completeness:完整性,用于度量哪些数据丢失了或者哪些数据不可用
- Conformity:规范性,用于度量哪些数据未按统一格式存储
- Consistency:一致性,用于度量哪些数据的值在信息含义上是冲突的
- Accuracy:准确性,用于度量哪些数据和信息是不正确的,或者数据是超期的
- Uniqueness:唯一性,用于度量哪些数据是重复数据或者数据的哪些属性是重复的
- Integration:关联性,用于度量哪些关联的数据缺失或者未建立索引
- 尽早进行数据验证(先标注一部分,测试通过后,再标注后面的数据)
- 尽早标注一套标准数据,供其他辅助标注人员参考使用
- 尽早构造数据生成闭环“生成数据集->跑baseline->badcase study->更新策略->重新生成数据集”
- 尽早确定数据生产标准
注意事项:
- 适可而止的预处理
- 一些跟类别标签相关的有效模式,导致一些本来成立的X->Y的映射关系因此消失了
- 减少了模型对抗噪声的学习机会,你无法消除所有噪声,但是却消除了很多模型识别噪声适应噪声的学习机会
- 验证可用性,尽早构造数据集迭代闭环
- 无论是人工标注的还是远程监督标注的,数据集看起来做好了不代表就是可用的
- 绝对不要抱着将数据集一次做成的心态,而是要尽早构造一个“生成数据集->跑baseline->badcase study->更新策略->重新生成数据集”的闭环
- 标注任务,标注格式,
- 尽量使用开源数据集,用优化算法节约标注成本
- 尽可能定义清楚标准任务的细节。
- 哪些类别、目标是要标注的;
- 遮挡、局部怎么处理;极限的目标大小范围;
- 不清楚、不确定的怎么处理;标注框的规范;
- 图片是否统一大小;
- 图片的命名规范;
- 有公用数据的,尽量用公用数据集;
- 数据集对模型性能的影响真的很大。
- 尽量参考已有的数据集去制定标注标准,
- 如果没什么能参考的,自己先标一部分,跑跑效果看看是否需要修改标注标准之后,再标剩下的。当然预标数量不能太少,太少的话模型拟合不了。
- 找人一起标注的时候,自己首先要标一批,然后让他们跟着标一些样本,先确认完大家标准一致后再让他们标剩下的部分