如果你已经能跑通简单的机器学习脚本,却说不清楚一条新闻为什么被归到"体育"而不是"财经",或者面试时被问到"你做过什么NLP项目"只能泛泛而谈,这门课值得先看一眼。它不讲NLP全景,只做一件事:把新浪新闻文本分类这个任务从头到尾走一遍,而且要走四遍——用四类不同量级的模型。
它对应的真实工作场景
文本分类是NLP里最不像"炫技"、却最常被要求交付的任务。内容平台要自动打标签、舆情系统要分拣信息、企业要把工单按部门路由、电商要把评论分正负面——底层都是同一件事:给一段文本分配一个或多个类别。新浪新闻这个数据集的好处是类别清晰、语料真实、规模适中,既不会小到跑不出效果,也不会大到普通机器带不动。学完这套流程,你手上就有了一个可以对着改的参照物:换一份自己公司的语料,数据清洗、切分、建模、评估这几步的骨架基本不用重搭。
三个阶段,实际是在解决同一个问题的不同层次
课程把内容拆成三段,但三段之间不是并列关系,而是能力递进。
- 第一阶段先把项目的地基打好:文本怎么读进来、怎么分词、标签怎么编码、训练集验证集怎么划分,然后用Fasttext跑出一个能用的baseline。这一步看起来朴素,但它决定了后面所有模型的天花板。很多项目效果差,问题不在模型,而在数据和流程。
- 第二阶段进入深度学习:CNN和RNN分别代表两种建模思路,一个抓局部n-gram特征,一个处理序列依赖。你会看到同一份数据在换成神经网络后,效果和训练成本各有什么变化,也会接触到词向量、padding、batch这些绕不开的工程细节。
- 第三阶段是当前主流做法:Transformer和Bert。重点不只是调包跑通,而是理解预训练模型为什么在小样本分类上表现突出,以及微调时该改哪些层、学习率怎么设、显存不够怎么办。
学完能独立做什么
比较现实的预期是:给你一份带标签的文本数据,你能独立完成从清洗到出评估报告的全流程,并且能解释每个环节的选择理由。具体包括——判断该上传统模型还是预训练模型;读懂准确率、召回率、F1在不平衡类别下的差异;遇到效果不达预期时,知道先查数据还是先调模型。这不是"精通NLP",但足够支撑一个初级算法岗的面试项目讲述,或者让在职工程师把公司里的分类需求自己扛下来。
适合什么基础,以及怎么用这份资料
前提是你会Python,用过numpy和pandas,大概知道神经网络在做什么。如果连反向传播都没接触过,建议先补基础,否则第三阶段会变成纯抄代码。反过来,如果你已经做过完整分类项目,这门课更适合当作复习和查漏,可直接跳到第二阶段对比不同模型的实现差异。
使用建议:不要只跑通就关掉。每换一个模型,回头改一改超参数,比如把Fasttext的epoch调大、把CNN的卷积核尺寸换掉、微调Bert时改学习率,记录下指标变化。文本分类的手感,就是从这些"改一改看结果"里长出来的。三个阶段建议按顺序走,但每个阶段都留出自己动手复现的时间,比一口气看完视频有用得多。
课程目录
第一阶段 文本分类项目数据准备与Fasttext模型 第1课:新浪新闻文本分类项目数据准备 第2课:Fasttext模型原理与代码实现 第二阶段 文本分类项目CNN与RNN模型 第3课:CNN类模型原理与代码实现 第4课:RNN类模型原理与代码实现 第三阶段 文本分类项目Transformer与Bert模型 第5课:Transformer模型与代码实现 第6课:Bert模型与代码实现






