背景:
文本信息处理工程实践的结课作业。要求运用NLTK在提供的材料中挑选一样,最后完成一个能解决实际问题的系统。
我向老师咨询“NLTK在文本处理领域有哪些应用方向”,在老师回答后,我选择了运用NLTK来处理文本的情感倾向。

重要决策
1 为什么保留情感符号
数据预处理时,我偶然发现一些类似“用户说太赞了!!!”被系统判为中性,但明显是强烈好评!咨询老师后,发现这是一种误判。跟老师深入探讨后,我们认为应该是数据预处理时,没有考虑符号的情感表达,按标准滤除规律进行了去除。
于是,我设计了保留‘!!!’的清洗规则,让模型真正‘听懂’用户情绪。

2 为何选用逻辑回归
理由有三:一是应用场景。结项当天有一份全新的测试集,要求到场后现场进行输入和演示。如果模型训练时间很长,可能交不了差,更别提后期这个项目的进一步开发。二,后期项目进一步开发工作,有类似“客服主管问:“为什么‘服务太差了???’被判负面?”这样需要解释和人为判定的方向。模型最好方便人为进行调整,以及可解释性强。三是条件。当天设备为我的旧笔记本,没有GPU。训练数据也只有那一张xlsx表。
选用逻辑回归,是看中它训练/部署极快、无需GPU、可解释性强,同时性能足够完成任务。SVM调参复杂、 决策边界难解释,随机森林数据集太小易过拟合、神经网络/BERT需GPU+大量数据。
最后结果
结项当天,我提前十分钟到场演示,最终花费15分钟左右第一个完成现场演示,以新数据集高于70%的准确率以及最快速度顺利交付项目,获得老师的大受好评。后来的进一步开发,我因为个人安排没有去,而是把项目交接给老师和她的学生完成。据说,这个系统后面用于社交媒体评论,因为速度很快同时准确率足够,3 天内部署上线,分析效率提升 30%+并获业务采纳。
反思:AI落地的真谛
从项目中提炼认知:
“如果重做,我会:
- 用
train_data.xlsx中的负向样本做类别平衡(当前负向样本少) - 用
result.txt的预测结果做AB测试(对比BERT) - 加入LIME解释(‘!!!’如何影响预测)
但最核心的收获:
AI不是追求模型复杂度,而是解决业务问题。就像这一次,虽然逻辑回归大体上性能不如其他模型。但是在当时要解决的问题中是最适合的。如果当时选用其他模型,准确率可能更高,但恐怕不会有后面的发展与写这篇文章的缘由了。