导读
为了发挥清华大学多学科优势,搭建跨学科交叉融合平台,创新跨学科交叉培养模式,培养具有大数据思维和应用创新的“π”型人才,由清华大学研究生院、清华大学大数据研究中心及相关院系共同设计组织的“清华大学大数据能力提升项目”开始实施并深受校内师生的认可。项目通过整合建设课程模块,形成了大数据思维与技能、跨界学习、实操应用相结合的大数据课程体系和线上线下混合式教学模式,显著提升了学生大数据分析能力和创新应用能力。
我是环境学院 22 级硕士卓振江,专业是环境科学与工程,研究方向是市政固废资源化路径优化,但是因为自己在建模以及算法方面能力较为欠缺,所以导致课题比较受限,这也是我选择大数据能力提升项目的原因。
卓振江个人生活照
让我从编程小白到开始入门的课是大数据系统基础(A)。这门课分两个部分,一个是课上内容,主要教授 IOTDB,低代码平台等工具;另一部分主要是实践课。当时我们实践的项目名称是“石化产品机器学习价格模型开发项目”,开展这个项目主要是因为中石化对某些无市场价格信息的小品类化工品的实时价格信息有需求痛点。我们基于神经网络、随机森林等机器学习算法以及 Flask 框架搭建出一套可实时精准预测所需化工品价格信息的系统。
那时我是第一次接触并且使用python,很庆幸当时有一个氛围非常好的课程团队,帮我解决了从 IDE 的选择与安装、环境配置到调包运行等一系列过程遇到的问题,极大的提升我对这个全新项目的信心。中石化企业导师刘洋老师在项目的具体实施推进以及项目方向的把控上起到了非常重要的作用,尤其是不同数据类型采取不同的预测算法然后进行耦合形成完整的模型体系这种模型搭建方法让我受益浅,我在之后的很多问题的处理上都会以此为参考。除此之外,我们团队也有非常高效默契的合作方式,每个人都可以根据自己的特长发挥出自己的最大价值,使得项目可以圆满的完成,最终答辩时我们团队也荣获“优秀团队奖”。
在有一定代码能力的基础上,结合自己的环境专业特色,我暑期大数据实践课时参加了江苏省环保集团的基于生态环境行业文本大数据的智能助手训练与应用项目,这个风口上的项目也让我受益匪浅。下面就说下我个人负责的三个主要部分工作。
首先是环境领域语料库的构建工作,公司提供了大概一百来篇本地的环境文档数据,但是这个数据量要训练微调还是不够的,所以我便负责写爬虫爬取一些国内公开环境官网的环境资讯,因为以前没接触过爬虫,所以只能自己看视频教程一点点自学,在这个过程也遇到了一系列问题,比如如何解析网页、自动翻页爬取、爬取中断问题以及多线程问题,包括最终的保存格式问题,在大家的帮助下都能顺利解决。我也顺利完成了近 5000 篇环境资讯文章的爬取工作,这项工作对我本身的文献调研能力与数据收集能力起到了非常大的帮助作用。
到了八月份我开始负责 Langchain 搭建向量数据库的工作,原始 Langchain 框架没有对生成的向量库进行截断存储的功能,无法满足企业方建立知识向量库进行快捷响应查询的需求;而且对于多篇文档,embedding 之后的向量数据都是存储在一个向量文件当中,不是单独分开存储,无法实现便捷的对向量库进行新增与删除。
在实现目标功能过程中,因为要理清里面非常多的函数调用关系,所有我只能一步一步 debug 然后自己画思维导图这种笨但是有效的方法,但是经过两个礼拜的奋战以及赵博的帮助,最终还是非常顺利的完成了这个功能,这也让我彻底摆脱了对这 种大型项目的恐惧感,也让我对成熟项目的基本框架结构有了一个非常清晰的认知。
江苏省环保集团工作时照片
最后是实时流式对话功能,原始 Langchain 使用的是 gradio 生成的 UI 界面进行交互,不适配新的系统,针对此问题,我们前端采用Django,传输用的fetch API,然后对启动和检索回答的调用逻辑进行了调整,而我主要负责的是实现实时的流式传回到前端,如果只是单纯在后端把所有的结果都生成好再一次性返回前端,那非常简单,但是要实现实时流式生成减少等待,还是费了我很大功夫的。我学习了 yield 的各种用法,通过不断尝试,最终在项目答辩的三天前顺利实现了这个功能,保证了项目的圆满完成。
最终的项目答辩也是非常顺利,并且再次获得“优秀团队奖”这一荣誉。我很感谢每一次组队都能遇到非常认真负责的队友以及负责的企业导师,也让我结合大数据做本行业的科研有了更多的底气。
江苏省环保集团实践团队合影
除了这两门实践课以外,数智安全与标准化与我们学院的专业课环境复杂模型系统建模也在理论知识层面给了我很多指导。通过这个项目,我自身各个方面的能力也得到了显著的提升。我成功地把相关技能应用到我们课题组的项目,用pascal编程语言从底层实现了克里金插值算法,目前该算法已经部署在软件 Laker上。除此之外,因为大语言模型这个项目,我一直在做文本切分、embedding向量化以及相似度匹配等工作,这也给了我把这些技术从自然语言这一模态迁移到基因序列语言的想法,因此回校后就和同学把这个想法变成了创业项目:GeneGPT—基于大模型的新一代微生物菌种筛选引擎。此项目的主要目的是为了解决环境领域大量微生物数据与分析方法之间的不平衡导致人类对微生物资源利用不充分的题,我们计划将预训练大语言模型在自然语言处理领域的embedding、向量相似度匹配以及内容生成技术迁移至基因序列这一模态,实现相似基因匹配、目标功能基因生成等任务,利用 AI 解析环境菌群的遗传密码,可以极大的提升微生物资源的利用效率,并且降低目标功能菌筛选、富集、定向调控的时间周期和成本。目前我的团队已经招募到包括软件学院、药学院做基因测序共四名成员,并且完成了 BP 的第一次路演,反响非常好。
除了自身各方面技能的提升,大数据能力提升项目也让我有机会结识到很多不同学院的优秀同学。不同专业背景的同学相互交流合作,互相借鉴学习,的确可以碰撞出更多思维火花,这极大的拓展了我的视野,也让我坚定了做环境 AI 交叉领域创业的决心。这些经历也很好的诠释了项目 logo 中“包容、融合、融通”之寓意。总而言之,要是师弟师妹们让我推荐能力提升项目,那必须是大数据能力提升项目!
编辑:于腾凯
校对:梁锦程