行稳、致远 | 技术驱动下的思考感悟

京东云开发者
• 阅读 2

行稳: 做好当下,结果第一

读书和加入京东以来的这十几年,我感触最深的一个点就是要做好当下。我个人是一个思维比较跳脱,想法算是比较多的人。总是喜欢瞎折腾,喜欢想东想西。有时候有点 “这山望见那山高” 的意思。



我本科的专业是偏电力的控制工程,做过那个电动汽车的无线充电。但是后来美国交换的时候看到了别人在做足式机器人控制,这个东西对于当时的我来说简直是太酷了,再加上当时Boston Dynamics的人形机器人爆火。我就赶紧选上了机器人学,以及后续的非线性控制的课程。 但是这个控制课到后面就是比较抽象难于理解的非线性微分方程和微分几何了,比较艰深了。这时候大概就是15、16年了,AI开始火起来了,我又一想,哎,搞机器人大脑好像比搞身体更有想象力啊,然后就开始机器学习。后来读研究生,读博士我其实仍然还延续着类似的做法,一开始做应用、做推荐。然后又觉得贝叶斯方法通用,常青树,开始研究贝叶斯方法。然后又是一些moment matching 方法, 有global optima,有全局解,很棒啊。这样看起来是涉猎广泛但实际上却是浅尝辄止。本科时期或许还可以混得过去,到了研究生期间问题就暴露无遗了。因为现在的要求不是比谁知识更广博,不是通过组合一些已有的东西去组成一个似是而非的东西,而是真正地要深入地去钻研,去解决一个问题,要用结果来说话。就是因为这样一直处在选题、权衡、调整的循环中,我文章就出的很慢啊,读博的整个过程前期放飞自我,后期真的是压力山大。这是我亲身实践过的弯路,也是我读书阶段给我最大的教训:确定好当下要做的事情,明确一个目标,就要绝不动摇地把重点放在努力执行上,用最终的结果去说话。

行稳、致远 | 技术驱动下的思考感悟



很巧的是,来到公司以后,听了公司技术专家的培训课程,老师也提到了这样的一句话: “这个世界上根本没有正确的选择,我们只不过是要努力奋斗使当初的选择变得正确。” 我个人还是很被触动的。虽然也有说法说 “选择比努力更重要”的,但是对我这样现阶段技术人来说,多数情况都是在当下有明确的需求任务、或者目前信息还不足以进行完美预见的,那这样的话踏实专心干活就好了。这样一种立足当下,脚踏实地的态度可让我减少大量无意义的内耗,专注于工作,事事有回应,件件有着落。解决好业务需求,去交付结果并赢得认可,才能成为一个比较靠谱的人。



致远:业务为本、技术驱动

那作为一个同时也比较有理想的技术人,我们也不仅仅只做安排好的事情,低头耕地,也会抬头看天。我总会听到“技术驱动” 这个词。看到新闻里各种技术创新的政策引导,比如今年7月浙江省的这个《关于引导企业从“产品驱动”向“技术驱动”创新模式转型,强化企业核心技术创新能力的建议》;听到刘总提到技术驱动是降低成本,提高效率和体验的重要手段;看到比如推荐系统这样的技术已经极大地改变了现代信息传递的模式和通路。但是实际工作中,好像很多时候我们经常是在接各种各样的需求,在各个排期之间奔波,似乎离技术驱动这样的“星辰大海”比较遥远;这个问题其实也困扰了我很久,后来接受了公司的各种培训以及Leader的指导后终于可能开始初窥门径。



公司解决问题的整体流程是业务-产品-研发,即业务运营本身的需求提到产品,产品与研发设计解决方案,然后以产品的形式返回给业务使用。初看下来研发确实是承接需求的一方,但是如果作为研发我们在完成业务需求的时候,尝试去深入理解业务逻辑,思考当前业务需求的来源是什么,后面还可能会出现什么问题,从技术的角度看是否有散点的需求可以合并解决,从后面走到前面,想到前面,就可能可以实现业务需求与技术探究的有机结合。就会给我们技术人以更大施展和腾挪的空间。



去年开始,我开始接触一个重点项目。 在当时建设系统的时候,为保证输出的质量,会对重保的部分数据结果进行人工审核。这一时期其实我们的主要需求是优化准召,但是有人工审核这肯定是就是未来可以优化的点嘛,结合当时大语言模型发展如火如荼发展的态势,我们尝试了基于LLM训练判别器来进行自动预审核过滤来降低人工审核的成本。这个其实一定程度上说我们是走在了业务需求的前面,因为效率本身还不是当下业务亟待解决的问题。但是业务方也还是非常乐于见到我们做这样子的尝试,给了我们很多的空间和支持。

模型判别可以获得令人满意的效果,然而,这仍不足以大规模应用。由于采用了大语言模型作为基础,模型推理耗时严重,使用A-100推理1000W条数据约需接近50h。为此,我们又主动对模型进行了蒸馏压缩,将其压缩六倍+,而精度几乎不下降。 成果也得以应用到了很多个比较重要的业务场景。虽然这只是一个比较小的case哈,但是对我们来说它是我针对业务运营进行技术驱动的一次重要尝试,当然这还是一个比较初级的实践优化了系统的一个小环节。一定程度上展现了“想在业务前面”的价值。所以说,主动、深入理解业务逻辑,预见业务发展的潜在需求,可以为后续技术手段的探究和运用留出比较大的空间,方便让技术的力量渗透到业务的每一个角落。



致远:技术突破,行业影响

以上是从技术驱动业务的角度的一个小小的感悟,对于我们个人技术能力的提升和突破来讲,我们多少都有一些技术使命感,就希望我们做出来一个技术点,在行业上是特别领先的。那么如何去在自己的领域上进行一些创新突破,提升自己,以及公司的技术影响。这个是一个很系统性,很复杂的工程,需要广博的基础知识、很好的提炼问题的能力、独到的解决思路、持之以恒的努力等等。在这一点上我也在摸索和向大家学习中,仅分享持续学习和技术问题提炼两个小点来抛转引玉一下吧。



持续学习: 作为技术人永远不能忽视技术能力的提升。特别是比如像我们所在的AI这个快速变化的技术领域,持续学习非常必要的,专业力永远是立身之本。我们要密切关注行业动向,了解并学习前沿科技,提升对技术的敏锐度,勇于尝试和布局;积极参与学术活动和技术论坛,保持同行的交流,避免陷入闭门造车的困境,长期地去修炼好自己的内功。



深入思考: 在日常工作中常有的一种感觉是支持业务的过程中找不到有价值的技术点去深究。 那这个时候感觉就还是需要对手上的业务进行持续、深入的思考了。京东的平台很大,业务场景很复杂,其实抽象出很有意义的探究问题的概率是蛮大的。 就比如之前遇到的一个业务问题,一个看似简单的二分类问题,其实也蕴含着很多很有意义的技术点,比如他的正、负样本天然地就严重不均衡,很难直接训练模型用于正例的抽取,这就是非常经典的label imbalance问题。 我们那个问题中判别是成对进行的,要两两判别两个SKU中间是不是存在某种联系,可以将prompt和商品标题缓存来加速模型的推理,这就蕴含着最近LLM推理很火的Prefix Cache思想。训练好的模型上线使用还有模型轻量化等等一系列后续的任务。这都是我们进行突破的机会。经过仔细的分析、解构和抽象,很多业务问题是包含有很深刻的、值得讨论的技术问题的。用这样的实际问题切入进行深究,很多时候会比在研究机构那种follow paper型的搞法效率更高、理解更到位。京东给我们提供了足够大的舞台,我们接下来要看怎么把这个表演去完成。

我在做大模型应用的过程中就被模型训练速度慢困扰了很久。因为我们有非常多的场景有训练的需求,待训练模型参数量很大,训练数据很多,我们还需要做大量的实验来获得最优的策略设置。在计算资源紧张的情况下还真的是很头疼。在模型固定的情况下,业务实践中通常会随机采样部分数据训练来缓解这个问题。但是更深入地思考后,就会出现新的疑问:这些方式是选取样本的合理策略吗?能保证原有模型效果的保留吗?还有没有更好的方式?基于这样的一个问题和这样的一个思考,结合大量相关工作的启发,我们设计了一种新的动态数据选择的方法。仅保留信息量最大的数据子集进行训练来减少计算消耗,实现降本提速。随后也从理论上证明了这样训练模型大概率最终会收敛到与常规训练相同的损失,确保了其可行性。这个工作也被顶级会议ICLR录用了。 行稳、致远 | 技术驱动下的思考感悟



但是还没有结束,我们还可以更进一步。大模型效果与训练样本量的幂率关系(Power Scaling Law)是海量算力需求的核心因素。如图所示,横轴是训练的样本量,纵轴是验证损失。增加10^8训练数据,模型Loss仅下降0.05。这一规律意味着任何进一步的减少误差尝试都可能需要增加一个数量级的样本。既然上面我们发现用少量的样本训练也可以达到接近的效果,那么是不是可以通过数据选择来突破幂率形式,实现如下图所示的指数形式的新Scaling Law呢?那这样就是非常有影响力的问题了。

行稳、致远 | 技术驱动下的思考感悟

最后,虽然今天聊了很多技术驱动和创新,但我们不能进行不切实际的创新,还要站在业务的视角思考技术的价值。技术驱动并非单纯创新探究, 重点仍是交付价值;技术影响也非纸上谈兵或拿着锤子找钉子,而是发源与对实际业务问题的探究。





未来期望

以上就是我的一些小小的心得。 那么随着大模型和类通用智能技术的出现,我们正处于一场技术革命的前沿。现在是时候扎根在业务应用中。在京东这个广阔的平台去实现自己的价值,以技术来驱动生产环节优化、流程升级以及产品更新。最终实现集团“以技术为本,致力于更高效和可持续的世界”的使命。



图片来自: https://www.youtube.com/watch?v=pW1VlhLX2gI; www.biped.solutions

点赞
收藏
评论区
推荐文章
粥白 粥白
4年前
新手怎么学好python?
我就是从零基础开始学的Python,也算是一个过来人了吧,现在看来当初我也是走了许多弯路,来给大家分享一下我的经验吧。首先是最重要的一点,想清楚你为什么要去学Python?你是想要做一个网站,写一个顺手的工具,还是只要能够通过学校的考试就行,这很大程度的影响了你该如何去学Python,学到什么程度或者是你是否该转去学习另一种语言。如果你只是想做一个个人网站或
爱写码 爱写码
3年前
再聊t-io网络编程架构的基础知识:半包和粘包
半包顾名思义,就是收到了半个包,这个时候不足以组成一个应用层的包。就像你要对你喜欢的人说“我喜欢你”,但是因为喝水咽着了,第一次只说了“我”字,第二次说了个“喜”字,第三个次了个“欢你”,那么就发生了半包问题,对方只有等待你说完这4个字后才知道你是想说“我喜欢你”!用http协议为例,展示半包场景粘包粘包与半包相反,就是把多个想说的话,一口气说完了,对方反应
Aidan075 Aidan075
4年前
昨晚试试 数据行转列,差点翻了车
作者:朱小五来源:凹凸数据大家好,我是小五昨晚遇到一道数据行转列问题,差点翻了车,跟大家分享一下。先跟大家讲一下,常见的行转列一般是这种形式:通常用来考察“如何用SQL、或者Python实现?”昨天群里有个朋友问了一道类似的题,我张嘴就来。结果拿来测试表一看,翻车了啊!这并不是常见的那种行转列啊!相当于分组筛选,然后横向拼接到一起?这思路也不对啊不过既然
待兔 待兔
4年前
男生学软件开发和女生学软件开发会不会有很大差距?
对于这个问题,我想从教育背景、思维模式、职场现状来谈谈我的观点。首先说下我个人的看法,我觉得做软件研发和程序员这一职位,都是想法设法通过技术手段进行设计、编码,最终解决问题。那么从这种纸面意义上来说,男女之间学习软件开发不应该会在性别因素上存在很大差距,无非就是努力不努力,能不能投入大量时间钻研而已。然而这只是纸面上。在开始论述之前,我想先说一句,如
Stella981 Stella981
3年前
GitHub两天标星2.1K+!自动刷喵币靠这一个脚本就够了.....
公众号关注“杰哥的IT之旅”,选择“星标”,重磅干货,第一时间送达!!(https://oscimg.oschina.net/oscnet/f0c3939b141b4b91bc4d410bfe0e5976.jpg)大家好,我是JackTian。在正式开始之前,跟大家分享一个之前的文章:程序员自动刷淘宝充能量到爆,就靠这
Wesley13 Wesley13
3年前
(原)Electron+vue 应用实战
1.electron架构思考在做electron桌面开发中,Electronvue当下算是性价比的比较高的。但是electron算是小众开发,遇到问题,基本上就是掉进深坑,爬好久才出来。为了做一个项目,我翻遍了国内好多网站。看到一篇好的文章。Electron应用实战(架构篇)(https://www.oschi
Wesley13 Wesley13
3年前
360需要的,不是打工者
我想给新入职的同事讲一讲我的期望,再提几个建议。我这个人喜欢说真话,不喜欢说漂亮话,因为漂亮话没用。但说真话,大家可能不爱听。首先,大家一定要明白,你自己来360到底想获得什么。我觉得,第一你一定得在360学到能力,学到本事才行,因为你将来要行走江湖,要成名立万,靠的就是能力和本事。在座的大多数既不是高干子弟,也不是富二代,跟我一样都是平民子弟。
Python进阶者 Python进阶者
1年前
Pandas怎样设置处理后的第一行为索引?
大家好,我是皮皮。一、前言前几天在Python最强王者交流群【wen】问了一个Pandas自动化办公的问题,一起来看看吧。请教问题设置了headerNone,通过dropduplicates删除了重复行,怎样设置处理后的第一行为索引(原表格的列比较多,而且
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
京东云开发者 京东云开发者
8个月前
行稳、致远 | 技术驱动下的思考感悟
作者:京东零售王家兴一、个人简介我是21届校招生,博士毕业于中国科学院自动化研究所。2021入职博士管培生,现任京东零售技术研发与数据中心智能平台部智能算法部商品图谱研发组算法应用工程师。当前我的工作焦点是低资源情况下大模型的训练与规模化应用。近期发表顶级