卓振江:我的大数据能力提升之路 | 提升之路系列(二)

news2024/11/17 22:37:15

eda2ff91cfca81084bda14f1987dd38b.png


导读

为了发挥清华大学多学科优势,搭建跨学科交叉融合平台,创新跨学科交叉培养模式,培养具有大数据思维和应用创新的“π”型人才,由清华大学研究生院、清华大学大数据研究中心及相关院系共同设计组织的“清华大学大数据能力提升项目”开始实施并深受校内师生的认可。项目通过整合建设课程模块,形成了大数据思维与技能、跨界学习、实操应用相结合的大数据课程体系和线上线下混合式教学模式,显著提升了学生大数据分析能力和创新应用能力。

我是环境学院 22 级硕士卓振江,专业是环境科学与工程,研究方向是市政固废资源化路径优化,但是因为自己在建模以及算法方面能力较为欠缺,所以导致课题比较受限,这也是我选择大数据能力提升项目的原因。

56c9ca082856bcd56507b0ab4d7278be.png

卓振江个人生活照

让我从编程小白到开始入门的课是大数据系统基础(A)。这门课分两个部分,一个是课上内容,主要教授 IOTDB,低代码平台等工具;另一部分主要是实践课。当时我们实践的项目名称是“石化产品机器学习价格模型开发项目”,开展这个项目主要是因为中石化对某些无市场价格信息的小品类化工品的实时价格信息有需求痛点。我们基于神经网络、随机森林等机器学习算法以及 Flask 框架搭建出一套可实时精准预测所需化工品价格信息的系统。

那时我是第一次接触并且使用python,很庆幸当时有一个氛围非常好的课程团队,帮我解决了从 IDE 的选择与安装、环境配置到调包运行等一系列过程遇到的问题,极大的提升我对这个全新项目的信心。中石化企业导师刘洋老师在项目的具体实施推进以及项目方向的把控上起到了非常重要的作用,尤其是不同数据类型采取不同的预测算法然后进行耦合形成完整的模型体系这种模型搭建方法让我受益浅,我在之后的很多问题的处理上都会以此为参考。除此之外,我们团队也有非常高效默契的合作方式,每个人都可以根据自己的特长发挥出自己的最大价值,使得项目可以圆满的完成,最终答辩时我们团队也荣获“优秀团队奖”。

在有一定代码能力的基础上,结合自己的环境专业特色,我暑期大数据实践课时参加了江苏省环保集团的基于生态环境行业文本大数据的智能助手训练与应用项目,这个风口上的项目也让我受益匪浅。下面就说下我个人负责的三个主要部分工作。

首先是环境领域语料库的构建工作,公司提供了大概一百来篇本地的环境文档数据,但是这个数据量要训练微调还是不够的,所以我便负责写爬虫爬取一些国内公开环境官网的环境资讯,因为以前没接触过爬虫,所以只能自己看视频教程一点点自学,在这个过程也遇到了一系列问题,比如如何解析网页、自动翻页爬取、爬取中断问题以及多线程问题,包括最终的保存格式问题,在大家的帮助下都能顺利解决。我也顺利完成了近 5000 篇环境资讯文章的爬取工作,这项工作对我本身的文献调研能力与数据收集能力起到了非常大的帮助作用。

到了八月份我开始负责 Langchain 搭建向量数据库的工作,原始 Langchain 框架没有对生成的向量库进行截断存储的功能,无法满足企业方建立知识向量库进行快捷响应查询的需求;而且对于多篇文档,embedding 之后的向量数据都是存储在一个向量文件当中,不是单独分开存储,无法实现便捷的对向量库进行新增与删除。

在实现目标功能过程中,因为要理清里面非常多的函数调用关系,所有我只能一步一步 debug 然后自己画思维导图这种笨但是有效的方法,但是经过两个礼拜的奋战以及赵博的帮助,最终还是非常顺利的完成了这个功能,这也让我彻底摆脱了对这  种大型项目的恐惧感,也让我对成熟项目的基本框架结构有了一个非常清晰的认知。

fd68e84ccc4a98510a5aba458207a2ea.png

江苏省环保集团工作时照片

最后是实时流式对话功能,原始 Langchain 使用的是 gradio 生成的 UI 界面进行交互,不适配新的系统,针对此问题,我们前端采用Django,传输用的fetch API,然后对启动和检索回答的调用逻辑进行了调整,而我主要负责的是实现实时的流式传回到前端,如果只是单纯在后端把所有的结果都生成好再一次性返回前端,那非常简单,但是要实现实时流式生成减少等待,还是费了我很大功夫的。我学习了 yield 的各种用法,通过不断尝试,最终在项目答辩的三天前顺利实现了这个功能,保证了项目的圆满完成。

最终的项目答辩也是非常顺利,并且再次获得“优秀团队奖”这一荣誉。我很感谢每一次组队都能遇到非常认真负责的队友以及负责的企业导师,也让我结合大数据做本行业的科研有了更多的底气。

94bdc5dfea7ca5b957dc13efd5629fa2.png

江苏省环保集团实践团队合影

除了这两门实践课以外,数智安全与标准化与我们学院的专业课环境复杂模型系统建模也在理论知识层面给了我很多指导。通过这个项目,我自身各个方面的能力也得到了显著的提升。我成功地把相关技能应用到我们课题组的项目,用pascal编程语言从底层实现了克里金插值算法,目前该算法已经部署在软件 Laker上。除此之外,因为大语言模型这个项目,我一直在做文本切分、embedding向量化以及相似度匹配等工作,这也给了我把这些技术从自然语言这一模态迁移到基因序列语言的想法,因此回校后就和同学把这个想法变成了创业项目:GeneGPT—基于大模型的新一代微生物菌种筛选引擎。此项目的主要目的是为了解决环境领域大量微生物数据与分析方法之间的不平衡导致人类对微生物资源利用不充分的题,我们计划将预训练大语言模型在自然语言处理领域的embedding、向量相似度匹配以及内容生成技术迁移至基因序列这一模态,实现相似基因匹配、目标功能基因生成等任务,利用 AI 解析环境菌群的遗传密码,可以极大的提升微生物资源的利用效率,并且降低目标功能菌筛选、富集、定向调控的时间周期和成本。目前我的团队已经招募到包括软件学院、药学院做基因测序共四名成员,并且完成了 BP 的第一次路演,反响非常好。

除了自身各方面技能的提升,大数据能力提升项目也让我有机会结识到很多不同学院的优秀同学。不同专业背景的同学相互交流合作,互相借鉴学习,的确可以碰撞出更多思维火花,这极大的拓展了我的视野,也让我坚定了做环境 AI 交叉领域创业的决心。这些经历也很好的诠释了项目 logo 中“包容、融合、融通”之寓意。总而言之,要是师弟师妹们让我推荐能力提升项目,那必须是大数据能力提升项目!

编辑:于腾凯

校对:梁锦程

8f63a8cee5763581f026d3789570c3f7.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1407361.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

x-cmd pkg | perl - 具有强大的文本处理能力的通用脚本语言

目录 介绍首次用户技术特点竞品进一步阅读 介绍 Perl 是一种动态弱类型编程语言。Perl 内部集成了正则表达式的功能,以及巨大的第三方代码库 CPAN;在处理文本领域,是最有竞争力的一门编程语言之一 生态系统:综合 Perl 档案网络 (CPAN) 提供了超过 25,0…

【江科大】STM32:MPU6050介绍

文章目录 MPU6050介绍结构图MPU6050参数硬件电路模块内部结构框图数据帧格式寄存器地址 MPU6050介绍 MPU6050是一个6轴姿态传感器,可以测量芯片自身X、Y、Z轴的加速度、角速度参数,通过数据融合,可进一步得到姿态角,常应用于平衡…

maven配置阿里镜像源

在用户设置settings.xml文件里找到mirrors配置部分&#xff0c;大概在146行&#xff0c;添加如下配置&#xff1a; <mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</u…

防火墙子接口配置

目录 拓扑需求 配置DMZ区域配置IP 总公司IP配置生产区办公区 总公司配置子接口网关生产区网关办公区网关 配置安全策略&#xff08;trust to DMZ&#xff09; 测试 拓扑 需求 配置总公司区域配置DMZ区域配置总公司区域到DMZ区域互通&#xff08;trust to DMZ&#xff09; 配置…

基于springboot+vue的学科竞赛管理系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 研究背景…

实时渲染 -- 几何(Geometry)

几何表示&#xff08;Geometry Representation&#xff09; 隐式表面&#xff08;Implicit Surface&#xff09; 一个函数定义一个隐式几何 f(x,y,z)0。​ 容易判断一个点是在几何体内部&#xff08;f<0&#xff09;还是外部&#xff08;f>0&#xff09; 显式表面&…

【C++】位图+布隆过滤器

位图布隆过滤器 1.位图2.布隆过滤器 喜欢的点赞&#xff0c;收藏&#xff0c;关注一下把&#xff01; 1.位图 问: 给40亿个不重复的无符号整数&#xff0c;没排过序。给一个无符号整数&#xff0c;如何快速判断一个数是否在这40亿个数中。 可能你会想到下面这几种方式&#…

分享多种vcruntime140_1.dll丢失修复办法,vcruntime140_1.dll文件下载

vcruntime140_1.dll是Windows操作系统中的一个重要系统文件&#xff0c;它与C运行库相关。当计算机上缺少或损坏了vcruntime140_1.dll文件时&#xff0c;可能会导致一系列问题和错误。出现这文件错误&#xff0c;应该很多小伙伴都会想到重新下载vcruntime140_1.dll&#xff0c;…

uniapp微信小程序图片上传功能实现,页面显示文件列表、删除功能

uniapp小程序图片上传功能效果预览 一、template 页面结构 <view class"upload-box"><view class"upload-list"><view class"upload-item" v-for"(item,index) of fileList" :keyindex><image class"img…

2024年可能会用到的几个地图可视化模板

前言 在数字化的过程中&#xff0c;数据可视化变得越来越重要。用户喜欢通过酷炫的视觉效果和直观的数据展示来理解数据。可视化地图组件是数据可视化的重要组成部分。这些地图组件提供多样化的效果&#xff0c;能够更好地展示数据的关系和地理分布&#xff0c;直观地将数据与…

制图新手首选!6款在线软件,让制图变得简单易学!

1. 即时设计 即时设计是一种国内在线UI设计工具&#xff0c;专注于UI设计领域&#xff0c;支持多人合作。即时设计是一种年轻的UI设计工具&#xff0c;前景广阔。UI设计工具的即时设计支持各种主流格式文件的引入&#xff0c;可以很容易地从其他软件转移。即时设计作为新一代U…

ubuntu22.04安装filebeat报错解决

1、查看报错 journalctl -u filebeat 或者 filebeat -c /etc/filebeat/filebeat.yml找到报错信息 runtime/cgo: pthread_create failed: Operation not permitted 2、解决报错 在filebeat.yml配置文件添加如下配置&#xff0c;重启filebeat seccomp:default_action: allow…

生命在于折腾——WeChat机器人的研究和探索

一、前言 2022年&#xff0c;我玩过原神&#xff0c;当时看到了云崽的QQ机器人&#xff0c;很是感兴趣&#xff0c;支持各种插件&#xff0c;查询游戏内角色相关信息&#xff0c;当时我也自己写了几个插件&#xff0c;也看到很多大佬编写的好玩的插件&#xff0c;后来因为QQ不…

Java零基础学习19:集合

编写博客目的&#xff1a;本系列博客均根据B站黑马程序员系列视频学习和编写目的在于记录自己的学习点滴&#xff0c;方便后续回忆和查找相关知识点&#xff0c;不足之处恳请各位有缘的朋友指正。 一、集合和数组的对比 数组和集合很相似&#xff0c;但集合只能存储引用数据类…

3W Star 网易云音乐第三方开源 API 仓库因侵权被要求删除

NeteaseCloudMusicApi是一个使用Node.js编写的非官方网易云音乐API&#xff0c;用于获取网易云音乐平台的歌曲信息。该项目是完全开源的&#xff0c;在GitHub上获得了超过3万的star。 根据公开信息&#xff0c;NeteaseCloudMusicApi的主要目的是整理网易云音乐公开的网页接口&a…

SSL证书是什么,有哪些作用

SSL证书是什么&#xff1f; SSL证书 是一种提供SSL协议的证书&#xff0c;通过在客户端浏览器与WEB服务器之间建立一条SSL安全通道&#xff0c;对网络传输数据进行加密&#xff0c;防止数据被截取或窃听。一份SSL证书包括一个公共密钥和一个私用密钥&#xff1a;公共密钥主要用…

红队视角下的公有云基础组件安全(二)

前言 我们已经发过一篇红队视角下的公有云基础组件安全的文章&#xff0c;这篇是对上一篇内容的补充&#xff0c;主要为国外公有云如AWS、Google Cloud、Azure。 本文主要从红队视角讲述公有云基本服务中一些因配置问题产生的安全风险。 目录 ● 云存储 ● 云计算 ● 云网…

【C++记忆站】类和对象(三)

文章目录 再谈构造函数构造函数赋值并非初始化初始化列表explicit关键字 static成员概念特性一、静态成员为所有类对象所共享&#xff0c;不属于某个具体的对象二、静态成员变量必须在类外定义&#xff0c;定义时不添加static关键字三、静态成员函数没有隐藏的this指针&#xf…

19.云原生CICD之ArgoCD入门CD过程实战

云原生专栏大纲 文章目录 ArgoCDArgoCD 简介GitOps介绍Argo CD 的工作流程argocd和jinkens对比kustomize介绍ArgoCD和kustomize关系 安装argocdargocd控制台介绍首页应用创建表单SYNC OPTIONS&#xff08;同步选项&#xff09;SYNC POLICY&#xff08;同步策略&#xff09; 应…

【LeetCode: 36. 有效的数独 + 模拟】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…