实验室的灯一直亮着。我们都在做同一个项目。这个项目是师弟的毕业论文。我的任务是帮助他。项目是关于机器学习的。我们要让电脑认识不同的花朵。
电脑一开始什么也不懂。我们给它看很多花的照片。照片里有玫瑰有向日葵。电脑需要学会分辨它们。这听起来简单做起来难。师弟负责写代码。我负责找数据。我们每天都很忙。
数据不容易找。我们需要各种花的图片。晴天拍的花阴天拍的花。早上开的花晚上合拢的花。图片不够多电脑就学不好。我在网上找了很多地方。下载了几千张图片。我把图片整理好。分成训练集和测试集。训练集用来教电脑。测试集用来考电脑。
师弟写代码很认真。他坐在电脑前很长时间。有时候他会皱眉头。那是代码出错了。错误有很多种。有时候是拼写错误。有时候是逻辑错误。我们一起找错误。找到错误就修改。修改好了再运行。
第一次运行结果不好。电脑认错了大部分花。它把向日葵说成玫瑰。把玫瑰说成野花。师弟有点失望。我说这很正常。学习都要从头开始。我们检查了每一个步骤。
发现问题是数据不够多。我又去找了更多图片。这次包括不同角度的花。有正面的有侧面的。有特写的有远景的。图片多了电脑学得更好。
我们还调整了参数。参数就像旋钮。拧对了方向效果就好。师弟试了很多组合。有的组合让学习变快。有的组合让准确率提高。我们记录每次调整的结果。找到最好的那组参数。
电脑慢慢进步了。它开始认识一些花。虽然还会犯错但错得少了。我们每天测试它的能力。看着准确率从百分之三十升到五十。再到七十。
遇到一个新问题。电脑记住所有训练图片。遇到新图片就不认识。这叫过拟合。就像学生死记硬背不会灵活运用。我们想了办法。让电脑看修改过的图片。把图片旋转一下。把颜色调整一下。这样电脑学会看本质特征。
师弟的代码越写越好。他学会处理各种情况。代码变得干净整齐。注释写得清清楚楚。任何人看了都能明白。
项目做了三个月。最后准确率达到百分之八十五。电脑能够正确认出大部分花。师弟写了论文初稿。我帮他检查内容。确保每个步骤都写清楚。实验结果都要真实准确。
论文修改了很多次。第一次内容不完整。第二次图表不清晰。第三次结论不明确。我们一遍遍改进。师弟很耐心。他认真对待每个意见。
提交论文前我们最后检查。所有实验重新做一遍。所有数据重新算一次。确认没有问题才放心。师弟准备答辩幻灯片。我扮演听众提问。问题可能关于方法。可能关于数据。可能关于结果。我们准备好回答。
答辩那天师弟有些紧张。我坐在下面听他讲。他讲得很清楚。老师问了几个问题。师弟都回答得很好。最后论文通过了。师弟很高兴。我也很高兴。
这个项目让我们学到很多。我学会怎么帮助别人。师弟学会独立做研究。我们成为更好的朋友。实验室的灯还亮着。又有新的项目开始了。