刘群峰 西安科技大学

第二章 工程数据:AI 的燃料

先讲一个事故。不是工程事故,是数据事故。 一家公司开发裂缝识别系统,实验室里跑得漂亮,准确率百分之九十七,领导满意,客户点头。系统上了现场,第一场雨就露馅了——漏检、误报、乱标,全线抓瞎。工程师排查了三个月,最后查到一个让人哭笑不得的根子:训练用的两万张照片,全是在晴天顺光拍的。模型根本没学会"裂缝"。它学会的,是"晴天的光线"。 算法还是那套算法,模型还是那个模型,数据一换,全完了。第一章我们说过,算法是发动机,数据是燃料。今天这堂课,就是教你看燃料——怎么挑油、存油、炼油、分油。学完这章你会明白:那家公司的问题,不在发动机,在油。 (说明:这是浓缩行业教训的教学示意案例,情节与数字均为假设。)

本章地图:

  • 2.1 认识燃料:土木工程里的六种数据
  • 2.2 标注:给 AI 当老师,一节课多少钱
  • 2.3 坏数据喂不出好模型:质量是燃料的纯度
  • 2.4 别把答案泄露给考生:训练集、验证集与测试集
  • 2.5 数据的边界:权属、隐私与安全
  • 2.6 综合案例:数千张岩石照片的数据长征

开讲之前,照老规矩,先把三件事说清楚。

第一件,这一章写给谁、解决什么问题。 写给已经读完第一章、准备动手做 AI 项目的你。第一章教你"翻译"——把工程问题变成 AI 任务。翻译完之后,你要做的第一件事不是找模型,而是清点家底:我手里有什么数据?数据够不够?干不干净?怎么用?这一章就是数据的全流程说明书:认识它、标注它、检验它、切分它、守住它。

第二件,这一章的态度。 我们不神化数据,也不贬低数据。数据不是越多越好,也不是越贵越好,是越对越好。学完这章你会形成一套数据观,五个字记到毕业都不过时:数据定上限。 模型的上限由数据决定,算法只是逼近这个上限——这句话,是本章每一节背后共同的那句话。

第三件,这一章怎么读。 每节都是老规矩:先讲概念,再讲人话,再上案例,最后留题。案例里有行业里反复发生的翻车现场,也有不少工程实践中的常见坑(涉及具体数字的均为教学示意)。别只当故事听——你以后做毕业设计、进项目组,十有八九会碰见同样的坑。

三件事说完,咱们开始。


2.1 认识燃料:土木工程里的六种数据

📌核心知识点

还记得第一章那座桥吗?一次无人机巡检,拍回 8000 张照片。可你要是以为"桥的数据等于照片",那就把土木工程想简单了。那座桥身上,还挂着竣工图纸、历年检测报告、传感器曲线、地质勘察资料——五六年下来,零零碎碎能堆满一柜子。

这些数据看起来五花八门,其实可以归成六类。先看全景图:

图2-1 土木数据类型全景:一个工程对象的六种数据
图2-1 土木数据类型全景:一个工程对象的六种数据
数据类型英文长什么样怎么采土木里能干嘛
图像Image二维像素阵列无人机、摄像头、手机裂缝识别、安全帽检测、锈蚀评估
点云Point Cloud三维坐标点的海洋激光扫描、摄影测量变形测量、竣工测量、逆向建模
振动信号Vibration随时间起伏的波形加速度计、拾振器模态分析、损伤识别、索力测试
传感器流Sensor Stream长时间序列记录应变计、位移计、温湿度计施工监测、健康监测、超限预警
文本Text自然语言报告、日志、规范、邮件规范问答、报告摘要、知识检索
图纸与BIMCAD/BIM矢量几何加语义模型设计院、翻模、BIM 平台设计校审、碰撞检查、工程量计算

六个格子,就是土木 AI 的全部燃料家族。你以后遇到的任何工程数据,几乎都能装进这六个格子的某一个。

🧭专业解读

为什么非要把数据类型分清楚?因为数据形态决定技术路线。还记得第一章翻译三步法的第二步吗——"看数据长什么样"。图像找计算机视觉,时序找序列模型,文本找大语言模型,表格数值找机器学习。用错了,等于往柴油机里灌汽油。

类比:汽油、柴油、航空煤油,都是燃料,但发动机不一样。你把航空煤油倒进汽车油箱,车也能点着火,跑两公里就趴窝。数据也是这个道理——不是"有数据就行",是"对的形态配对的模型"。

这里要纠正初学者最常见的误会:数据类型不是按"工程对象"分的,是按"信息形态"分的。 一座桥同时有照片(图像)、有扫描(点云)、有振动(信号)、有报告(文本)——同一个对象,六种形态并存。反过来,裂缝问题既可以是图像问题(看照片),也可以是信号问题(测振动),还能是文本问题(翻检测记录)。先看形态,再看对象,这是数据眼光的起点。

还有一个特点,你必须提前知道:土木数据是"独生子",不是"双胞胎"。 互联网公司做推荐系统,用户行为数据源源不断,今天训练明天就有新数据;土木不是——一座桥建完,它的照片就是这些,不会自己多出来;下一座桥长得还不一样。所以土木 AI 项目几乎都得回答同一个问题:数据不够怎么办?答案写在后面几节:用质量换数量、迁移学习、数据增强、小样本方法——但前提是你先认清"数据稀缺"这个底色。认清之后,你再听那些吹"海量数据训练"的方案,心里就有数了。

再补充两个容易混的格子。

第一,振动信号和传感器流看着像,其实不是一回事。 振动信号是"短时间的高频采样"——一秒钟采几百次,记录结构抖动的波形,像心电图;传感器流是"长时间的低频记录"——一小时采一次,记录应变、位移、温度怎么慢慢变,像体温曲线。心电图查"当时心脏怎么跳",体温曲线查"这周身体什么趋势"。两种数据,两种模型。

第二,图纸和图像不是一回事。 图纸是矢量的——一条线有坐标、有图层、有语义(这是梁,这是柱);照片是像素的——只有颜色深浅。BIM 更进一步,把几何和属性绑在一起。你可以让 AI"看"图纸,但更值钱的做法,是让 AI 直接"读"BIM 的语义——那是第七章的内容,这里先记住形态的区别。

🏗️土木案例

案例一:一座桥的六种数据(主案例回访)

回到第一章那座服役 25 年的连续梁桥,把它身上的数据按六格清点一遍:

数据类型这座桥的具体数据谁在用
图像每年 4 次无人机巡检,每次约 8000 张照片裂缝识别、表观病害
点云关键截面三年一次的三维激光扫描梁体变形、桥墩倾斜
振动信号桥面 6 个测点的加速度计模态频率、损伤预警
传感器流应变、挠度、温湿度逐小时记录趋势分析、超限报警
文本历年检测报告、养护记录、限载文件报告检索、知识问答
图纸与BIM竣工图、维修改造图、数字模型构件定位、档案关联

清点完你就有数了:这座桥的智能化,不是"喂照片",而是六种燃料配比着烧。照片管"表面",振动管"里面",文本管"历史",图纸管"位置"——各管一段,合起来才是一整座桥的数据画像。

案例二:同一个裂缝,三种数据的三种看法

桥墩上一条裂缝,用三种数据去看:照片里,它是黑色像素的集合,能看宽度、走向、位置——图像问题;用锤击或者振动测它所在区域,频率变化能告诉你裂缝对刚度的影响——信号问题;翻维修档案,看它是不是老毛病复发——文本问题。同一个物理对象,三种数据形态,回答三个不同的问题。 工程师的活儿,就是选对形态、问对问题。选错了,数据再多也是白采。

✅本节小结

土木工程的数据不是"一张图",是六种形态的燃料家族:图像、点云、振动信号、传感器流、文本、图纸与 BIM。数据形态决定技术路线,这是选模型前的第一道关卡。记住两句话:先看形态,再看对象;同一个对象,六种数据各管一段。

✏️课堂思考题

  1. 把"地铁车站"作为工程对象,你能凑齐六种数据类型吗?每种举一个具体例子。
  2. "判断某跨海大桥主缆是否锈蚀"——这个任务可以拆成哪几种数据形态的 AI 任务?哪种形态最直接?
  3. 为什么说"振动信号像心电图、传感器流像体温曲线"?如果只有体温曲线,你能诊断心脏骤停吗?请用这个类比说明数据形态与任务匹配的关系。

2.2 标注:给 AI 当老师,一节课多少钱

📌核心知识点

数据有了,AI 就能学了吗?不能。大多数 AI 是"照答案学"的——第三章你会看到,监督学习就像做练习册。那练习册上的标准答案,谁写的?人写的。这个"给数据写答案"的过程,就叫标注(Annotation),也叫打标签(Labeling)。

标注不是"随便圈一圈"。它有一整套手艺:

标注类型英文干什么土木里的例子
分类标签Classification Label整张图归一个类这张照片"有裂缝/无裂缝"
目标框Bounding Box把目标框出来框出照片里的裂缝、安全帽
像素分割Segmentation逐像素描边把裂缝的轮廓精确画出来
关键点Keypoint标出特征点标出构件的角点、测点
序列标签Sequence Label给时间片段贴标签标注监测数据中的"异常段"
文本标签Text Label给文本分类或抽取从检测报告里抽取病害描述

关键问题来了:谁来标?怎么标? 这里有三条路,对比着看:

图2-2 数据标注的三种方式:从纯人工到自动化
图2-2 数据标注的三种方式:从纯人工到自动化

第一条路:纯人工标注。 工程师或标注员逐张看、逐张标。精度最高,速度最慢,成本最贵。

第二条路:半自动标注。 先用一个初版模型把所有数据"预标注"一遍,人工只负责检查、修改错的地方。人工工作量大幅下降,质量仍然可控。

第三条路:自动标注(弱监督)。 用规则、阈值、传感器联动自动打标——比如"应变超过限值的时间段,自动标记为异常"。快,便宜,但质量要靠抽检兜底。

🧭专业解读

先回答一个你们最想问的问题:标注为什么这么贵?

因为大多数土木数据,只有专业人士才标得对。裂缝照片不是圈个框就完事——你得判断它是受力裂缝还是收缩裂缝,宽度算不算超标,在不在关键部位。岩性照片得地质工程师认。振动信号得懂结构的人分析。普通标注员标不了,专家时间又贵。行业里流传一句话:一个 AI 项目,七成以上的时间花在数据准备上,而数据准备的大头就是标注。 这话略有夸张,但方向没错。

再回答第二个问题:能不能不标? 能省,但省要省对地方。

半自动标注省的是重复劳动——模型能标对八成的,就让人只改两成,省下来的是钱。但省错地方就出事:有些团队图便宜,把"裂缝判定"外包给不懂土木的标注员,结果模型把钢筋锈迹当成裂缝、把施工缝当成受力缝——模型学到的不是裂缝,是标注员的偏见。 这个现象有个专门的名字,叫标签噪声(Label Noise)。两个标注员标准不一致,模型就学一个"平均标准";标准全错,模型跟着全错。标注的质量,直接决定了模型的上限。

所以正规项目里,标注从来不是"发下去标就行",而是一套工程流程:

  1. 写标注规范(Labeling Guideline):什么是裂缝、什么不算、多宽以下忽略、争议怎么判——写成文档,像设计说明书一样评审。
  2. 初标与复核:一人初标,一人复核,两人不一致的交专家裁决。
  3. 抽检留痕:专家按比例抽检,抽检不合格整批退回,标注记录存档可追溯。

标注完了,还有一道手续:标注结果本身也要管理。 框的坐标、类别编号、标注人、标注时间、标注规范版本——这些信息要一起存下来,形成标注台账。行业里常用 COCO、VOC 这类公开格式,方便工具链通用;台账是给自己看的——将来模型出问题,翻台账能定位到"这批标签是哪个版本、谁标的、规范怎么写的"。标注不是画完就完,是可追溯的工程记录。

一句话总结标注的代价逻辑:你省掉的每一分钟标注,都会变成模型将来犯的每一个错。

图2-3 三种标注方式的成本随数据规模的变化(示意图)
图2-3 三种标注方式的成本随数据规模的变化(示意图)

图2-3 是三种方式的成本示意:数据量小,纯人工最省事;数据量一大,半自动迅速拉开差距;自动标注最便宜,但虚线提醒你——便宜的部分,将来要用质检和返工来还。

🏗️土木案例

案例一:裂缝数据集的标注规范(行业通用做法)

给无人机巡检照片做裂缝标注,规范长什么样?简化版如下:

  • 类别定义:裂缝、剥落、渗水、其他病害四类;"疑似但不确定"的,单独标记,不硬归类。
  • 标注边界:宽度小于 0.2 mm 的细微裂纹不标(图像分辨率下不可靠);施工缝、模板缝不算裂缝,但要记录"疑似"供人工复核。
  • 框选规则:目标框必须完整包住裂缝本体,不能只框一段;一条裂缝跨越多个病害区域时,拆开标并注明关联。
  • 争议裁决:初标与复核不一致的样本,由检测工程师裁决;裁决结果每周汇总,反哺更新标注规范。

这套规范看起来繁琐,但它的价值在三个月后显现:模型训练稳定,抽检合格率从 82% 提到 96%(教学示意),返工少了,专家省了。规范的每一行字,都在替未来的模型省钱。

案例二:半自动标注救了 4 万张照片(主案例回访)

那座桥一年 4 次巡检,4 万张照片(教学示意)。全人工标注,一个熟练标注员一天标 300 张,4 万张要 1300 多个工日——半年时间,来不及。项目组的做法:先用公开数据集训练一个初版裂缝模型,让它把 4 万张照片预标一遍;标注员只改错、补漏,顺手纠正模型"高估裂缝宽度"的毛病。结果:标注周期从半年压到三周,专家复核量只有两成。这就是"先用 AI 给 AI 当老师,人给 AI 当教练"。

案例三(反面):外包标注翻车记

某项目把桥梁照片标注外包,价格便宜到离谱。模型训练完一测:漏检率正常,但误报全集中在一类——把"混凝土表面锈水流痕"标成了"裂缝"。查下来,外包标注员的培训材料里只有三张示例图,标准全靠猜。最后整批 2.6 万张(教学示意)重标,钱没省,工期翻倍。标注外包可以,标注标准外包不可以。

类比:标注就像教孩子写作业。你可以请家教(外包)、可以自己做(人工)、也可以让孩子先做你再批(半自动)。但无论谁教,"什么算对"的答案必须你定——标准错了,孩子的坏习惯一辈子改不过来。

✅本节小结

标注是把人的专业判断"翻译"成数据的过程,也是 AI 项目里最贵、最容易被低估的环节。三种方式(纯人工、半自动、自动)对应精度、速度、成本的三角权衡;而无论哪种方式,标注规范、复核、抽检这三件套缺一不可。记住这句话:模型学到的是标准答案,标准答案的质量,决定模型的质量。

✏️课堂思考题

  1. 给"盾构掘进参数与地表沉降"这类时间序列数据做标注,和给裂缝照片做标注,难点有什么不同?
  2. 为什么说"标注外包可以,标注标准外包不可以"?请设计一个防止外包标注跑偏的管理办法。
  3. 如果只有 5 万元预算,要给 3 万张隧道衬砌照片标"渗水、裂缝、正常"三类,你会选哪种标注方式?怎么分配预算?

2.3 坏数据喂不出好模型:质量是燃料的纯度

📌核心知识点

标注是"写答案",质量是"验考卷"。数据质量不过关,模型学得再认真也没用。计算机行业有句老话,叫 GIGO——Garbage In, Garbage Out,垃圾进,垃圾出。模型不会嫌弃你给的数据,你给什么它学什么,包括你的错。

判断数据质量,看五个维度:

维度英文问什么土木里的例子
完整性Completeness缺不缺?沉降观测记录缺了暴雨那三天
准确性Accuracy对不对?位移计读数比真值偏大 15%
一致性Consistency统不统一?两家检测单位裂缝宽度口径不一
时效性Timeliness新不新?用十年前的交通量预测现在的桥
代表性Representativeness全不全?训练照片全是晴天顺光(开场的悲剧)

五个维度里,前四个是"数据本身的毛病",第五个最阴险——代表性不足。数据本身没错,错在"只见树木,不见森林":正常工况的数据攒了一屋子,灾害工况一张没有;晴天照片几万张,雨天寥寥无几;江南的裂缝模型,没见过西北的冻融裂缝。模型在"见过"的世界里无所不能,一出这个圈子就原形毕露——第一章说的分布漂移(Distribution Shift),根子就在这里。

🧭专业解读

为什么数据质量比数据数量更要紧? 因为模型的上限,由数据质量决定,算法只是逼近这个上限。数据里混着 5% 的错误标签,模型学到的就是"带 5% 错误的规律";数据里缺了某类工况,模型在这类工况上就是瞎猜。你可以在算法上投入十倍精力,把模型从 85% 推到 88%;可数据质量提上去,可能直接从 85% 跳到 95%。先管数据,再谈算法,顺序不能反。

那怎么管?把原始数据变成可用数据,中间是一道"炼油"工序:

图2-4 数据质量金字塔:从原始数据到可用训练集
图2-4 数据质量金字塔:从原始数据到可用训练集

数据从现场来的时候,是"原油":海量、混杂、有噪声、有重复、格式不统一。要经过四道工序:清洗(去重、去噪、修缺失)、标准化(统一格式、单位、坐标)、标注(上一节的内容)、质量校验(抽检、一致性检查)。每一道工序都在"漏"——100% 的原始数据,到能用的时候常常只剩三成。别心疼,筛掉的不是数据,是模型的隐患。

质量怎么查?靠数据审计(Data Audit)——这是数据进模型前的最后一道安检。审计三件套:统计探查(看每个字段的分布、缺失率、异常值比例——数据长什么样,心里先有张图);交叉核验(同一物理量用两个来源对账:位移计和全站仪都测沉降,差太多必有鬼);抽检回放(抽查原始记录,人工比对标注和数据源)。审计不是一次性的:数据更新一个版本,就审计一次。宁可多审一周,不可带病上线。

再讲两个土木里最常见的质量坑。

坑一:传感器数据的三宗罪。 缺测(设备断电、雨天停测)、跳点(读数突然蹦出一个离谱值)、漂移(传感器老化,基线慢慢歪掉)。处理办法是"先清洗后建模":缺测用邻近插值,跳点用物理阈值剔除,漂移用对照传感器校正。这里有一条工程铁律:数据异常时,第一反应是查传感器,不是调模型。 你把跳点当真实信号喂给模型,模型学出来的"规律"就是仪器故障。

坑二:类别不平衡。 裂缝照片里 99% 是正常表面、1% 有裂缝(示意)——模型只要永远回答"正常",准确率就有 99%。听起来很神,其实是个废物。对策有三招:让稀有类多出场(重采样)、给稀有类"变花样"(数据增强,第四章细讲)、或者干脆换评价指标(第三章会讲,别只看准确率)。在土木里,稀有类往往是最要命的那一类——灾害工况、事故前兆,全是稀有类。

🏗️土木案例

案例一:基坑监测数据的"体检报告"(教学示意)

某基坑项目给沉降预测模型备数据,工程师先给数据做了一次"体检",查出三类病:

缺测。 台风天连续 36 小时没有数据——人工观测停了。处理:按相邻测点趋势插值,并在数据表里打上"插值"标记,模型训练时单独统计插值段的误差。

跳点。 某测点一天之内"沉降"了 18 mm,相邻测点纹丝不动。查记录发现是水准仪读数录入时多打了一个数字。处理:阈值剔除加现场复核,而不是照单全收。

不一致。 两家分包单位提交的沉降数据,一个用"向上为正",一个用"向下为正"。处理:统一坐标系,重新核对全部记录。

体检完,模型训练稳定多了。你以为的"算法不行",很多时候是"数据没体检"。

案例二:一个靠"假准确率"骗过所有人的模型(教学示意)

某单位展示他们的裂缝识别模型:准确率 99.1%,全场鼓掌。专家问了一句:你们训练数据里,裂缝照片占多少?——答:1.2%。专家说:那我写个"永远回答没有裂缝"的程序,准确率是 98.8%,比你的模型差不了多少,还免费。全场沉默。准确率这个数字,在类别严重不平衡时就是张废纸。 后来他们把数据补到裂缝占四成,模型才真正开始学习"什么是裂缝"。这个案例第三章还会详细拆解——这里你先记住:看模型之前,先看它的数据构成。

类比:数据质量就像食堂的食材。再好的厨子,用烂土豆也做不出好菜;但反过来,食材再好,厨子也能给你炒糊。AI 项目里,数据是食材,算法是厨子——行业里缺的从来不是厨子,是有人愿意花功夫把食材洗干净。

✅本节小结

数据质量五维:完整、准确、一致、时效、代表。其中"代表性"最隐蔽也最致命——分布漂移的根子,就是代表性不足。原始数据要经过清洗、标准化、标注、校验四道工序才能变成训练集,筛掉杂质不是浪费,是排雷。两条铁律记住:数据异常先查传感器;类别不平衡先看数据构成,再看准确率。

✏️课堂思考题

  1. 你所在城市的桥梁检测报告,如果要做成文本数据集,完整性、一致性各有什么潜在问题?
  2. 地震后的结构响应数据极其珍贵但数量极少——要训练震后损伤识别模型,代表性维度上你会怎么设计数据采集?
  3. 为什么说"数据异常时,第一反应是查传感器,不是调模型"?请举一个监测场景说明。

2.4 别把答案泄露给考生:训练集、验证集与测试集

📌核心知识点

数据备好了,怎么用?很多人以为:全部数据拿去训练,模型学得越多越好。大错特错。

想象一场考试。你把答案册发给考生,让他背熟再去考试,考 100 分有意义吗?没有。模型也一样——让模型在"它见过的数据"上做评价,分数全是假的。 模型真正的本事,要拿"它没见过的数据"来考。所以数据必须分成三堆:

数据集英文干什么类比常见比例
训练集Training Set教模型"学"平时做练习册约 70%
验证集Validation Set帮我们"选":调参数、比方案模拟考约 15%
测试集Test Set最后"考"一次,算最终成绩高考约 15%

三个集合的分工一句话:训练集负责学,验证集负责选,测试集负责考。 比例不是死的——数据多,训练集可以大一些;数据少,要用更省数据的办法(交叉验证,第三章讲)。

🧭专业解读

这里有个问题,几乎每个初学者都会问:训练集和验证集不都是"见过的数据"吗?为什么验证集不算作弊?

问得好。答案是:验证集不能用来"学",但可以用来"选"。 训练时模型反复读训练集,把里面的规律背了下来——这是学。但"用哪个模型、参数调到多少",这一步是人做的决定,不是模型学的。你拿验证集试了十种方案,选了最好的那个——这不是模型作弊,是人"偷看"。偷看一次两次没关系,但偷看多了,验证集上的分数就不再可信了,因为你已经在用验证集的结果优化你的选择——这本身就是一种学习,只是学习者是你。

所以真正的规矩有三条:

  1. 测试集从始至终只能碰一次。 训练、调参、比方案,全在训练集和验证集上进行;一切定稿,最后才在测试集上跑一次,出最终成绩。跑完就"封卷",不许回头。
  2. 测试集必须和训练过程物理隔离。 谁都不能拿测试集去"参考",包括清洗数据的人。数据清洗、归一化(标准化)用的统计量,只能从训练集上算,不能偷看测试集——否则测试集的信息就"泄露"进模型了。
  3. 划分必须模拟真实使用场景。 模型将来部署在哪儿,测试集就从哪儿来。这一点土木行业特别容易翻车,看下面的案例。

数据泄露(Data Leakage),是数据划分里最阴险的敌人。它不报错、不报警,只会让你的测试分数虚高——上线即现原形。土木里最常见的三种泄露:

第一种:按"张"随机划分,但照片不是独立的。 同一座桥、同一条裂缝的几十张连拍照片,训练集测试集各分一半——模型等于"见过"这条裂缝了,测试分数虚高。正确做法:按工程对象划分,一座桥的照片要么全进训练,要么全进测试。

第二种:时间序列随机打乱。 监测数据按时间先后有依赖关系——今天的沉降和昨天有关。随机打乱后,模型"用明天的数据预测今天",考出来的分数当然漂亮,一到现场就露馅。正确做法:按时间顺序划分,只允许用过去预测未来。

第三种:预处理"偷看"测试集。 算均值、方差、插值参数时用了全部数据——测试集的信息提前进了模型。正确做法:所有统计量只在训练集上计算,再套用到其他集合。

还有一个新手常问的问题:数据一共只有 500 张,还切三份吗? 切,但比例要变。数据少的时候,测试集可以少留(比如 20%),剩下的尽量喂给训练;再少,就要用交叉验证——把数据切成 K 份,轮流当测试,取平均成绩(第三章细讲)。原则始终只有一个:测试集再小,也必须是你从未碰过的数据。 宁可模型少学一点,也不能让分数失真——失真的分数比没有分数更危险。

图2-5 数据集划分:随机划分与时间序列划分
图2-5 数据集划分:随机划分与时间序列划分

🏗️土木案例

案例一:一个"预测未来"的模型,为什么一到现场就失灵?

某团队用基坑沉降监测数据训练预测模型,随机划分,测试准确率 96%(教学示意),惊艳全场。部署到新工地,预测偏差忽大忽小,工程师百思不解。复盘时发现:随机划分把时间序列打乱了——模型"学习"到的规律里,混进了"用后一天的沉降预测前一天"的假规律。而现场部署时,模型只能看到过去,那些"未来信息"全没了,立刻失灵。改成时间顺序划分后,测试分数掉到 78%(教学示意)——这个分数才是它真实的水平。 那个 96%,是模型和数据集合谋的一场假象。

案例二:数千张岩石照片怎么切(教学示意)

某研究团队做隧道掌子面岩性识别,数据是数千张岩石图像(教学示意)。怎么切?两个原则:

按来源分组。 同一处掌子面、同一批次拍摄的照片,全部放进同一个集合——避免"同源照片"同时出现在训练集和测试集里,那等于把答案提前漏给模型。

模拟现场。 模型的最终用户是现场地质工程师,拿到的照片来自新隧道、新岩性组合——所以测试集尽量用"模型没见过的新场景"。

最后按约 80% 训练、10% 验证、10% 测试切分,测试集全部来自独立分组的照片。约九成量级的准确率(教学示意),就是在这套"严防作弊"的划分下考出来的——这样的分数,才敢拿去给合作企业看。 模型怎么训练、怎么调出这个成绩,第四章见。

案例三:跨项目测试——真正的"高考"

比"同一批数据切三堆"更狠的考验,是跨项目:用 A 项目的数据训练,B 项目的现场检验。一座城市的裂缝模型,拿到另一座城市、另一台相机拍的照片上,准确率掉 10 到 20 个百分点是家常便饭——这就是第一章说的分布漂移。所以严谨的团队把"跨项目测试"作为项目验收的硬指标:模型在"从没见过的工程"上表现如何,才是它真实的本事。 训练数据做得再漂亮,经不起这一考。

类比:训练集是平时作业,验证集是模拟考,测试集是高考,跨项目测试是"毕业十年后的同学会——真本事藏不住"。作弊的学生平时分数好看,高考见真章;数据泄露的模型测试分数好看,上线见真章。

✅本节小结

数据划分的规矩,一句话:训练集负责学,验证集负责选,测试集负责考,而且考卷只能发一次。 划分不是技术细节,是诚信制度——数据泄露不报错、不报警,只会在上线那天让你翻车。土木行业三个必记原则:按对象划分不按张划分;时序数据按时间顺序划分;预处理统计量只在训练集上算。

✏️课堂思考题

  1. 为什么说"用验证集反复试方案,本质上也是学习"?这对你理解"测试集只能碰一次"有什么帮助?
  2. 隧道监控量测数据(每天一次的拱顶沉降)要训练预警模型,应该怎么划分?如果按随机划分会出什么问题?
  3. 你拿到了 5000 张来自 20 座不同桥梁的照片做裂缝识别——请设计划分方案,并说明你的方案如何防止"同源泄露"和"跨桥泛化失真"。

2.5 数据的边界:权属、隐私与安全

📌核心知识点

前面四节讲的都是"怎么把数据用好"。这一节讲"哪些数据不能用、怎么用才不违法"。很多工程师一听到"数据伦理"就以为是道德说教——错了,这一节全是能进法院的规矩。

工程数据不是互联网数据。它有三重敏感:

敏感类型为什么敏感典型数据涉及的法律法规
国家安全基础设施是国家的"骨架"大坝、地铁、军事设施周边测绘成果《数据安全法》《测绘法》
商业利益数据是企业的资产和竞争力设计图纸、监测数据、工艺参数合同约定、《反不正当竞争法》
个人隐私数据连着具体的人工地人脸、位置轨迹、健康信息《个人信息保护法》

这三重敏感叠在一起,意味着工程数据的红线,比一般行业多三道。

🧭专业解读

先回答一个你们最常问的问题:"数据是我的,我想怎么用就怎么用"——对吗?

不对。工程数据的权属,从来不是"谁采的归谁"这么简单。一座桥的监测数据,传感器是甲方买的、系统是乙方装的、桥是业主的、检测报告是第三方出的——四个主体,四种权利。数据的"所有权"常常说不清,但"使用权"必须事先写清楚。 合同里没写的用途,默认不能干。把甲方的数据拿去训练自己的模型再卖给别家——技术上行得通,法律上等着赔钱。

第二个问题:无人机航拍随便飞,拍到的都能用吗?

不能。测绘成果有密级,敏感区域航拍有审批,拍到军事设施、重要能源设施,轻则整改,重则涉嫌违法。"拍到了"不等于"能用了"。 做 AI 项目,先查数据来源的合法性,再谈技术方案。

第三个问题:工地上拍的视频,涉及工人吗?

涉及。智慧工地摄像头里全是人脸——人脸属于敏感个人信息。按《个人信息保护法》,收集、使用前要告知加同意,而且坚持最小必要原则:能拍背影解决的事,别拍正脸;能统计人数解决的事,别存人脸库。2021 年以来,因为工地人脸数据违规被处罚的案例已经不少。

AI 项目的数据合规,是五件事:采集有授权、存储有加密、使用有留痕、共享有协议、销毁有时间。 数据像档案,要建立全生命周期的台账。这套动作不产生任何"技术亮点",但它决定你的项目能不能见光。

再补充两件实务。第一件,脱敏(Anonymization)。 人脸打码、车牌模糊、坐标偏移、涉密字段剔除——数据要分享、要训练,先把"能识别出人、能定位到设施"的信息处理掉。第二件,分级分类。 把数据分成公开、内部、涉密三档,每档对应不同的存储、传输、使用规则——这是《数据安全法》明确要求的事。分级不是行政负担:它让你知道,哪部分数据可以大方共享、哪部分必须锁进保险柜。

🏗️土木案例

案例一:智慧工地人脸考勤的合规整改

某工地上了 AI 人脸考勤,效率很高,但被监管部门点名:未告知工人收集人脸信息,未取得书面同意,人脸库存储无加密。整改方案:

  1. 现场公示采集告知书,工人在知情下签署同意书;
  2. 人脸特征只用于考勤比对,不用于行为分析,存加密库;
  3. 设置 30 天自动销毁机制,考勤记录导出后原始人脸数据删除。

整改完,功能没少,合规了。同样的功能,手续齐了是智慧工地,手续缺了是违法收集。

案例二:隧道掌子面数据的"黑盒交付"(某研究团队的工程实践)

该研究团队与某设计院合作做隧道掌子面岩性识别(还是 2.4 节案例二那个项目),数据来自合作方现场。数据权属和使用范围在合同里写得清清楚楚:研究团队可以用数据做研究、训练模型,但不得将原始数据用于本项目之外的用途,不得向第三方转让。最终交付的不是数据集,而是训练好的模型文件(一个"黑盒",教学示意)——企业拿到模型直接用,原始数据留在自己手里。

这套"交付模型、不交付数据"的做法,行业里越来越流行,原因有三:数据留在权属方,风险最小;模型即服务,更新迭代可追踪;双方都不越界,合作才长久。 这也是第一章伦理红线第三条的实操版:数据合规,不是签个字就完事,是把"边界"写进流程。

案例三(反面):一个代价高昂的教训

某团队把业主的桥梁监测数据(含图纸坐标)上传到国外云盘做模型训练,被业主审计发现。合同里明确"数据不得出境",最终项目终止、模型作废、还背上违约赔偿。技术没错,错在没看合同。 做工程 AI,先过合规关,再碰数据——顺序不能反。

类比:工程数据像金库里的档案。你有钥匙(采集权),不等于可以随便复印(使用权);档案有密级(国家安全),复印要登记(留痕),到期要销毁(生命周期)。档案室的老规矩,就是数据合规的新规矩。

✅本节小结

数据伦理不是抽象的道德,是三条能进法院的规矩:权属先约定、涉密要审批、人脸要同意。 工程数据三重敏感(国家安全、商业利益、个人隐私)叠在一起,合规动作有五件:授权、加密、留痕、协议、销毁。记住这条经验:能交付模型,就不交付数据;能把边界写进合同,就别靠自觉。

✏️课堂思考题

  1. 如果你在校企合作中拿到了某施工企业的塔吊运行数据,想用于毕业论文,你需要做哪几步合规动作?
  2. 智慧工地摄像头要识别"工人未戴安全帽"——如何设计才能既满足功能,又满足《个人信息保护法》的最小必要原则?
  3. 讨论:桥梁健康监测数据(含 GPS 坐标)属不属于"重要数据"?如果企业要求把数据上传到境外云平台,你会怎么处理?

2.6 综合案例:数千张岩石照片的数据长征

🏗️场景设定

前面五节,把数据的"认识、标注、质检、划分、合规"讲完了。现在把它们串起来,看一个项目从头到尾怎么走——隧道掌子面岩性识别。这是某研究团队与某设计院合作的项目(教学示意,和 2.4、2.5 节的案例是同一个):隧道开挖时,每掘进一段,地质工程师就要到掌子面(开挖面)前看岩石、定岩性、判围岩等级。传统做法全凭人:人站在掌子面前,看了、摸了、记了,编录进表。人的眼睛会疲劳,人的判断会因人而异,而且掌子面前并不安全。

能不能让 AI 先"看一眼"?项目目标:用手机或相机拍下掌子面岩石照片,AI 自动给出岩性判断,供地质工程师参考复核。整个项目的成败,不在模型,在数据——下面就是这数千张照片的"数据长征"。

第一步:先问问题,再采数据(2.1 的方法)

项目组没有一上来就拍照,先做了三件事:

  1. 翻译任务(第一章的方法):不是"识别掌子面",而是"根据岩石照片判断岩性类别"——图像分类任务。
  2. 定形态:数据形态是图像,技术路线锁定计算机视觉(第四章讲)。
  3. 定边界:AI 输出"岩性建议加置信度",最终判定与编录仍由地质工程师完成——AI 是参谋,不是签字的。

问题先想清楚,采集才不白干——这是第一章"先翻译、后采集"和 2.1 节"先看形态"的组合拳。

第二步:采集与清洗(2.3 的方法)

现场采集远比想象中麻烦:掌子面光线忽明忽暗,喷水降尘后岩石表面全是水渍,手机镜头常被粉尘糊住,工人偶尔入镜。采集回来的原始照片,经过三轮清洗:

  • 去模糊:运动模糊、对焦失败的照片直接删除——机器和人一样,看不清就不能乱猜;
  • 去重复:连拍的照片只留一张,防止"同源照片"污染后面的划分;
  • 去干扰:有工人入镜、有设备遮挡的照片剔除,避免模型学"人"而不是学"岩石"。

最后留下数千张可用照片。三成左右的照片被筛掉了——别心疼,这就是 2.3 节说的"筛掉的是隐患"。

顺便算一笔账,让你对"数据成本"有个直观印象(示意值):

环节工作量说明
现场采集多个工点、数周光线、粉尘、角度反复补拍
筛选清洗约三成淘汰模糊、重复、干扰照片剔除
专家标注每人每天数百张地质工程师初标,交叉复核
划分与质检按来源分组、抽检防止同源泄露,抽检留痕

算下来你会发现:这数千张可用照片的背后,是几十个专家工时加数月的现场蹲守。 数据从来不是"拍就有"的。

第三步:标注与复核(2.2 的方法)

岩性标注不是"看图说话",得按地质专业知识来:

  • 谁来标:地质工程师初标,不是普通标注员——花岗岩和灰岩的区别,外行标不准;
  • 规范先行:写标注规范,明确各类岩性的判断特征(颜色、结构、风化程度),争议样本单独归档;
  • 交叉复核:两位工程师交叉复核,不一致的由资深专家裁决,裁决结果回写规范。

标注阶段最大的成本不是钱,是"专家的时间"——地质工程师每人每天能核几百张已是极限,而且专家在工地还有本职工作。项目组的应对是"分批量标注、边标边训练":先标 500 张训练初版模型,再用半自动方式加速剩余部分(2.2 节第二条路)。一半靠专家,一半靠流程,成本才压得下来。

第四步:划分与防作弊(2.4 的方法)

数千张照片按 2.4 节的原则切分:按来源分组,同一批次、同一环境拍的照片全部进同一个集合,防止同源泄露;约 80% 训练、10% 验证、10% 测试,测试集全部来自模型"没见过的"照片组。这套划分的意义在于:约九成的最终准确率(教学示意),是"闭卷考"考出来的,不是"开卷考"。

第五步:训练、交付与合规(2.5 的方法)

模型选型(预训练卷积神经网络等)和训练细节是第四章的内容,这里只说数据侧的两件事:

黑盒交付。 按合同约定,最终以模型文件形式(一个"黑盒",教学示意)交付给合作方,原始照片数据不出数据权属方——数据权属与使用边界,写进合同,落实在交付物上。

留痕可溯。 数据版本、标注规范版本、抽检记录全部存档,任何一次模型的成绩都能追溯到"它吃的是哪一批数据"。将来模型要更新,知道该补什么数据。

💡案例启示

把这数千张照片的路走完,你会发现:模型训练也许只要几天,数据的路却走了几个月。 这正是本章想让你建立的数据观:

  1. 数据是 AI 的燃料,燃料决定航程。 算法可以改进,燃料不行——坏燃料烧不出好动力。
  2. 数据工作不是杂活,是工程。 清洗、标注、划分、合规,每一步都有方法、有规范、有代价。
  3. 数据红线不是束缚,是护身符。 合规做在前面,项目才走得远、走得稳。

再回看开头那个"晴天顺光"的事故:那家公司缺的不是算法,是数据观。他们不知道数据有形态、有质量、有边界。你学完本章,至少不会再犯同一个错。

✅本节小结

综合案例走完了数据的全流程:先翻译问题再采集(2.1),清洗筛掉三成杂质(2.3),专家标注加半自动提速(2.2),按来源分组防作弊划分(2.4),黑盒交付守住权属边界(2.5)。记住:一次成功的 AI 项目,数据工作的工程量永远大于模型工作的工程量。 那座桥一年 4 万张照片(示意)、这里数千张岩石照片,走的都是同一条长征路。

✏️课堂思考题

  1. 如果要把这个项目推广到"岩性加围岩等级"一起识别,数据采集方案需要新增哪些内容?
  2. 为什么这类合作常采用"交付模型、不交付数据"的模式?如果合作方坚持要原始数据,你会怎么谈判?
  3. 设计一个"数据版本管理"方案:模型 v1.2 的测试准确率突然下降了,你怎么用数据台账定位原因?

本章小结

  1. 数据形态决定技术路线:土木数据分六种形态——图像、点云、振动信号、传感器流、文本、图纸与 BIM;同一个对象六种数据并存,先看形态、再看对象(2.1)。
  2. 标注是数据成本的大头:纯人工、半自动、自动三种方式对应精度、速度、成本的三角权衡;标注规范、复核、抽检三件套缺一不可(2.2)。
  3. 质量五维定上限:完整、准确、一致、时效、代表;代表性不足是分布漂移的根子;原始数据要过四道工序才能炼成训练集(2.3)。
  4. 划分是诚信制度:训练集负责学、验证集负责选、测试集负责考,考卷只能发一次;防泄露三原则——按对象划分、时序不乱序、统计量只在训练集上算(2.4)。
  5. 数据合规是护身符:权属先约定、涉密要审批、人脸要同意;授权、加密、留痕、协议、销毁五件套(2.5)。
  6. 数据工程量大于模型工程量:数千张岩石照片的数据长征(教学示意)印证,成功的 AI 项目,数据工作永远比模型工作花的时间多(2.6)。
全书方法论的一句话总结:数据是 AI 的燃料——认识它的形态,把好它的质量,标好它的答案,守住它的边界,AI 这台发动机才能跑得远。

思考题

★ 入门级

  1. 用你自己的话解释:为什么"数据形态决定技术路线"?图像、时序、文本各举一个土木应用。
  2. 数据质量五维是哪五个?"裂缝照片全在晴天顺光拍"违反的是哪一维?
  3. 训练集、验证集、测试集各自的作用是什么?为什么测试集只能碰一次?
  4. 工程数据为什么比互联网数据更敏感?至少说出两类敏感原因。

★★ 应用级

  1. 某公司给你 1 万张桥梁支座照片(含正常、锈蚀、破损三类),请设计完整的处理流程:清洗、标注、划分各怎么做?标注选哪种方式?
  2. 用 2.4 节原则分析:某团队用"按天随机划分"的方式切分一年的大坝渗压监测数据训练预警模型,会出什么问题?正确做法是什么?
  3. 智慧工地要上"AI 安全帽检测",从数据采集到模型部署,列出至少 4 个合规风险点及对策。
  4. 如果训练数据里 95% 是正常状态、5% 是异常状态,模型"永远回答正常"准确率有 95%——这个模型能用吗?请给出你的判断和补救方案。

★★★ 挑战级

  1. 综合设计:为一座城市的地铁隧道做"渗漏水智能巡检",请给出完整数据方案——六种数据形态各用什么、标注规范要点、质量检验项、划分方案、合规清单。
  2. 讨论:数据标注外包到低人工成本地区,价格便宜一半,但标注员完全不懂土木。如果你是项目负责人,如何设计质量管控流程,让"便宜"不变成"翻车"?
  3. 场景题:你的团队用 A 城市桥梁数据训练了裂缝识别模型,准备部署到 B 城市。请设计一个"跨城落地"的数据方案(含跨项目测试、数据补充、模型校准),并说明为什么不能直接拿现成模型上线。
  4. 批判题:有人说"数据是新时代的石油"。结合本章内容,你认为这个比喻在哪些地方准确、哪些地方误导?请从数据质量、数据权属、数据形态三个角度分析。

拓展阅读

  1. 周志华《机器学习》第 2 章——"模型评估与选择":训练、验证、测试集与交叉验证的正统讲法(本章 2.4 的深化)。
  2. 《中华人民共和国数据安全法》《中华人民共和国个人信息保护法》全文——数据合规的两部基础法律,建议通读与工程数据相关的条款。
  3. 《公路桥梁养护规范》(JTG 5120—2021)——主案例的业务背景:桥梁检测的类别、频率与记录格式,正是"图像与文本数据"的源头规范。
  4. 公开的开源项目与公开数据集(如 GitHub 上的裂缝检测、目标检测类项目)——真实项目的代码与数据组织方式,可作实战参考。
  5. Shorten C, Khoshgoftaar T M. A survey on image data augmentation for deep learning[J]. Journal of Big Data, 2019, 6(1): 60——数据增强综述(2.3 节类别不平衡对策的深化)。

参考文献

  1. 周志华. 机器学习[M]. 北京: 清华大学出版社, 2016.
  2. 中华人民共和国全国人民代表大会常务委员会. 中华人民共和国数据安全法[Z]. 2021.
  3. 中华人民共和国全国人民代表大会常务委员会. 中华人民共和国个人信息保护法[Z]. 2021.
  4. 中华人民共和国测绘法[Z]. 2017.
  5. 中华人民共和国交通运输部. 公路桥梁养护规范: JTG 5120—2021[S]. 北京: 人民交通出版社, 2021.
  6. Shorten C, Khoshgoftaar T M. A survey on image data augmentation for deep learning[J]. Journal of Big Data, 2019, 6(1): 60.
《人工智能与土木工程》AI4Civil 教科书 · AI4Civil_教科书_第二章_最终版