从理论上看,这个问题很低级。
低级到原既白一开始甚至有点不愿意承认它值得讨论。可他花了一个上午以后发现,低级并不代表容易消失。只要程序真的长时间运行,存储、日志、失败恢复、重复数据、任务中断都会出现。一个想法在纸上只需要一句“自动生成测试”,变成真正可运行的系统以后,却必须回答几十个这种毫无诗意的问题。
宋弈建议简单点,只保存最终失败样本。
原既白摇头:“那就不知道它怎么找到的。”
“全保存磁盘又会爆。”
“所以分层。”
他这一次没有先画一个庞大的统一架构,而是从最实际的需求开始拆:普通中间样本只留统计,不留图片;出现模型输出显著变化时再保存关键节点;如果某条搜索路径特别异常,则把前后若干步完整保留。程序失败后要能从最近状态恢复,日志必须和模型版本绑定,否则下次换模型以后结果无法比较。
宋弈听了一会儿说:“你现在终于开始像一个干活的人了。”
“以前不像?”
“以前像来给干活的人设计宇宙的。”
原既白拿手边一本书砸他,没砸中。
这套并不漂亮的改造用了两个晚上。第二次长时间运行时,程序没有再因为磁盘问题停掉,却出现了另一种故障:其中一个生成任务卡死,占着计算资源不释放,后面所有任务排队等待。原既白起初想追根究底找出那一个任务为什么卡住,宋弈却坚持先给所有任务加超时机制,超过一定时间直接杀掉并记录。“根因以后再查,”他说,“总不能一个人堵厕所,整栋楼都不上班。”
这个比喻把原既白说服了。
过去的他会本能地觉得,每个异常都应该先被理解,再决定怎么处理;真正运行的系统却等不起完整理解。你可以暂时不知道某个罕见任务为什么死掉,但必须先保证它不会拖死所有其他任务。工程不是放弃真相,而是在真相还没有完全到手以前,先让系统活着。
叶老师远程看他们的新版本时,注意力甚至没有先放在算法上。他看了任务队列、日志策略和恢复机制,问:“如果明天模型换掉呢?”
原既白说:“测试接口不变。”
“数据格式换呢?”
“转换一层。”
“测试器自己升级?”
“版本单独记。”
“如果旧结果不能直接和新结果比?”
原既白停了一下:“那就明确不能比。”
叶老师笑了:“不错。很多系统最后不是死在不会算,而是死在大家假装不能比的东西还能比,已经变的东西还没变。”
视频结束以后,原既白没有马上关掉电脑。他忽然看见自己这几个月真正学到的东西,和最早想象的不太一样。最开始他以为机器学习的难处主要在模型本身:结构够不够好,准确率够不够高,能不能找到更一般的规律。后来问题不断向外扩散,数据从哪里来、模型究竟看见什么、换来源为什么失效、测试怎样设计、目标如何被钻空子,到现在甚至包括一个任务卡死以后系统能不能继续跑。
高层结构仍然重要。
可世界并不会因为你找到了一个好结构,就自动把电源、磁盘、接口、人员和时间都整理好。
那天晚上他离开机房时,县城突然降温。车棚顶上结了一层薄霜,自行车座摸上去很凉。原既白戴好手套,手机正好震了一下,是江遥发来一段小点自动成群的动画。
他站在车棚下面看完。
第一条回复是:“规则是什么?”
江遥把三条局部规则说了一遍,又提到两种视野混合以后出现的效果。原既白很快问:“有没有一个全局目标函数?”
“没有。”
“那怎么判断哪个群体更好?”
“我们自己定义环境任务,比如避开障碍、保持队伍、重新集合。”
相邻推荐:捕金鹊 校花夏诗涵的屈辱沦陷:一本会自己写字的奇幻书 蘑菇学园的樱花酥夜 苏影欢萧景渊困在奇幻秘境那晚,我才看懂这场局 第18章标题是“别点”:禁漫同人在线阅读_章节列表里的暗号 冰柜前的秘密关系:韩拓与俊昕的奇幻在线阅读夜 偿债新娘免费阅读:红烛夜她替父还债 旧书摊那本卷边的《国之利芒》 八零年代好父母 凌晨两点十七分的余火:when heaven burns when heaven burns全文免费阅读 莲花公主(N)by青灯笔趣阁无弹窗 有偿by苦青柑未删减版 夜班保安追更记:覆雨翻云1-3小说最新章节免费阅读的深夜波折 毁童年之格林童话肉毁童最新章节目录:第147章没有脚趾的玻璃鞋 领口那粒红:大伯哥出轨第十二章 最强黑客TXT下载:佚名把奇幻小说写成了一把钥匙 旧书摊里的万古群芳录(奇幻)_免费全文阅读 第五百二十级石阶上的雪——《傲世九重天520(奇幻)_连载中》 骰盅一响,冷宫弃妃把命押上桌 《调皮王妃txt下载》深夜记:弹窗比剧情还热闹 xongdi(奇幻)_小说免费阅读:旧书摊那本会吃梦的书 伪正太的家斗史 英雄志22卷奇幻:雨夜打印稿与英雄志22卷最新更新 改嫁前任他爹 《重生万界之至尊逆袭》 古镇奇谭剧组疑云奇幻:灯笼在三点十七分亮起 轮你章节好看吗:凌晨两点的轮读稿 皮囊by宋景洲未删减完整版 《澪界之主》 幽九七的奇幻小说:两瓣红莲今夜开一池碧水