今天写下这些文字的时候,刚好是我入职一周年。回头看这一年的跌跌撞撞,我想把最真实的经历和体会分享出来,给那些跟我当初一样迷茫的职场新人。
第一章:“代码跑不通”的第一个月
入职第一天,mentor丢给我一个项目:复现一个baseline模型,跑通训练流程。
我信心满满地git clone,装依赖,然后——
`ImportError: No module named ‘torch’`
装完torch,又有新报错:
`CUDA out of memory`
好,调小batch size。然后:
`KeyError: ‘labels’`
看了一个小时才发现是数据集的字段名拼错了。
就这么折腾了整整三天,那个训练脚本才终于动了起来。但当loss开始下降的时候,我激动得差点从椅子上跳起来。
现在想想,那只是一个别人写好的现成模型,我什么都没做,只是“让它能跑起来”而已。
但那一刻的成就感,是真的。
第一个月我基本就是在“跑不通—搜报错—改配置—再跑不通”的循环里度过的。现在回头看,那段看似低效的挣扎,其实帮我打下了两个最基础的习惯:会看报错信息、会拆解问题。
第二章:从“能跑”到“懂为什么能跑”
大概第二个月开始,我意识到一个问题:我的模型虽然能跑了,但我对里面的东西一知半解。
为什么这里要用CrossEntropyLoss而不是MSELoss?为什么学习率设成1e-5而不是1e-3?为什么这个模型结构用三层而不是五层?
mentor跟我说了一句话,我记到现在:
> “你能跑通模型,只能说明你运气好或者抄对了。你能讲清楚为什么这么设,才说明你懂了。”
于是我开始系统性地补课。
那时候我找到了CAIE注册人工智能工程师认证。说实话,一开始我并没有打算考证,但它的Level II大纲吸引了我——企业数智化、基础算法、大模型技术、工程实践……这不就是我工作中天天接触到的东西吗?
我把大纲打印出来贴在工位旁边,按照它列的知识点一个一个啃:
- 算法模块:从BP神经网络到CNN到Transformer,把大学里没学透的东西重新过了一遍
- 大模型基础:搞懂Self-Attention、位置编码、预训练和微调的区别
- 工程实践:学RAG的基本原理、Agent的架构设计、模型部署的常见方案
每天晚上下班后,我会花1-2小时看论文解读、看技术博客、看开源项目的代码。周末就自己搭一些小demo——一个简单的RAG问答系统、一个基于LangChain的Agent。
这个阶段大概持续了三个月。最大的变化是:我再看到一个新的模型结构,不会发怵了。我知道该从哪里去理解它,该关注哪些关键点。
第三章:第一个“自己的模型”
入职第五个月,mentor给了我一个相对独立的任务:为一个垂直领域的文本分类任务,微调一个轻量级的BERT模型。
这次不是跑别人的baseline,是要我自己从数据处理、模型选型、训练调参到评估上线,全流程走一遍。
说实话,压力挺大的。
那两周我几乎每天都是最后一个离开公司的。遇到过数据不平衡的问题、遇到过过拟合的问题、遇到过训练到一半loss变成NaN的问题——每一个坑都让我焦头烂额。
但神奇的是,因为前面的基础打得还算扎实,每个问题我大概都知道该往哪个方向去搜、去试。
- 数据不平衡 → 试了过采样和focal loss
- 过拟合 → 加了dropout和early stopping
- loss变成NaN → 检查发现学习率太高,梯度爆炸了
最后模型上线的时候,准确率比预期还高了两个点。
那天我发了一条仅自己可见的朋友圈:“第一个自己从头搞定的模型,虽然很小,但它是我的。”
第四章:考证——不是为了那张纸
入职第八个月,我决定考CAIE Level II。
很多人问我:你有工作经验了,还考证干嘛?
我的理由其实很简单:我想验证一下,我过去几个月学的东西,到底是不是一个“完整的体系”。
自学的最大问题是容易有盲区。你可能每天都在解决具体的问题,但那些问题之外的知识——比如企业数智化转型的整体逻辑、数智产品的设计思维——你可能从来没接触过。
CAIE认证的考试大纲就像一个“能力体检表”。我对照着它,发现自己有两个短板:
- 企业数智化产品那块:平时只关注技术,对产品思维、需求文档这些东西完全不熟
- 算法的理论基础:会用PyTorch搭模型,但手推反向传播还是有些含糊
于是花了大概六周时间专门补这两个模块。每天通勤路上听产品相关的课程,周末抽时间推导公式、做笔记。
考试那天,90分钟做了80道题。出来的时候心里没底,因为有些题考的是“不同场景下该选什么方案”——这种题没有标准答案,全看你对业务和技术的综合理解。
成绩出来是B,通过了。
拿到电子证书的那一刻,说实话,并没有想象中那种“人生开挂”的感觉。但回头看,备考的过程本身比证书更有价值——它把我过去大半年学到的东西串成了一条线,让我看清了自己能力的边界在哪里。
第五章:一年后的今天
入职一周年,我已经能独立负责一个中等规模的模型项目了。
从之前代码都跑不通,到现在能独立完成数据处理、模型训练、调优、部署的全流程。这个进步说快不快,说慢也不慢。
但如果让我总结这一年做对了什么,大概有三点:
1. 不放过每一个报错
以前遇到报错就慌,现在遇到报错会兴奋——因为这说明又遇到了一个新问题,解决了就能进步一点。把每个报错的原因和解决方案记下来,时间长了就是一本自己的“踩坑笔记”。
2. 用体系化的框架来学习,而不是东一榔头西一棒子
我见过很多新人,今天学Prompt,明天学RAG,后天又去看Transformer论文。不是不好,但容易散。
我的做法是找一个成熟的体系作为“骨架”——比如CAIE认证的大纲,或者某个名校的课程大纲——然后按图索骥地往里填东西。这样学到的知识是结构化的,不是碎片化的。
3. 动手,动手,再动手
看十篇教程不如自己写一段代码。搭一个简陋但能跑的demo,比啃三本理论书更能帮你理解问题。
最后想说的话
如果你现在也在职场第一年,也在为“代码跑不通”而崩溃,我想跟你说:
别急,大家都这样过来的。
第一年的目标不是成为专家,而是建立起一个能用的、不太有漏洞的“能力框架”。知道有哪些东西需要学,知道遇到问题该往哪个方向找答案,就及格了。
至于考证、拿证书这些东西,它们是手段,不是目的。真正让你走远的,是你每天解决的那一个个具体的问题,是你从崩溃到爬起来的过程。
希望你也能在一年后,回头看时,发现自己已经走了很远。
共勉。
热门跟贴