我们对于无穷的计算有着浪漫的想象,光是科幻小说,就有阿西莫夫《最后的问题》、亚当斯《银河系漫游指南》的经典科幻梗。但是我们从世界体验中认知到的无穷、数学世界中勾勒的无穷以及计算机所能够触达的无穷有什么区别和联系呢?附关于无穷的一些小趣闻:1. 为什么 [0,1] 区间的实数无法和自然数一一对应?第一步:简化实数的表示[0,1] 里的任何实数,都能写成 “无限小数”(有限小数补无限个 0,比如 0.5=0.5000...,避免 0.4999... 和 0.5 重复)。第二步:假设 “能对应”,列一张 “全包含表格”如果 [0,1] 的实数能和自然数一一对应,意味着能把所有实数按序号排成一张无限长的表格,比如:自然数 1 → 实数 a₁ = 0.a₁₁a₁₂a₁₃a₁₄...(a₁₁是小数点后第 1 位,a₁₂是第 2 位,依此类推)自然数 2 → 实数 a₂ = 0.a₂₁a₂₂a₂₃a₂₄...自然数 3 → 实数 a₃ = 0.a₃₁a₃₂a₃₃a₃₄...自然数 n → 实数 aₙ = 0.aₙ₁aₙ₂aₙ₃...aₙₙ...表格里的 “加粗数字”,是从每个实数里取 “第 n 位”(第 1 个数取第 1 位,第 2 个数取第 2 位,...,第 n 个数取第 n 位),构成一条 “对角线”。第三步:构造一个 “不在表格里的实数”根据这条对角线,造一个新的实数 b = 0.b₁b₂b₃...,规则很简单:如果对角线第 1 位 a₁₁≠1,就设 b₁=1;如果 a₁₁=1,就设 b₁=2(只要和 a₁₁不一样就行);同理,对角线第 2 位 a₂₂≠1,就设 b₂=1;否则 b₂=2;以此类推,bₙ永远和对角线第 n 位 aₙₙ不一样。这个 b 肯定是 [0,1] 的实数(因为是 0 开头的无限小数),但它不在刚才的表格里—— 因为它的第 1 位和 a₁不同,不可能是 a₁;第 2 位和 a₂不同,不可能是 a₂;...;第 n 位和 aₙ不同,不可能是 aₙ。这说明:“能把所有 [0,1] 实数列成表格” 的假设是错的,所以 [0,1] 的实数无法和自然数一一对应。2. 为什么有理数可以和自然数建立一一对应?有理数的核心是 “能写成分数 p/q(p 是整数,q 是正整数,且 p 和 q 互质,避免重复,比如 2/2=1 就只算 1/1)”。关键是用 “分组 + 遍历” 的方式,给每个有理数编上序号:第一步:按 “分母 q” 分组把有理数按分母 q 的大小分成无限组,每组里的分数按分子 p 的大小排列(注意去重,比如 2/2=1 已在 q=1 组里):q=1 组(分母为 1):1/1(即 1)、-1/1(即 - 1)、2/1(即 2)、-2/1(即 - 2)、...q=2 组(分母为 2):1/2、-1/2、3/2(2/2=1 已去重)、-3/2、...q=3 组(分母为 3):1/3、-1/3、2/3、-2/3、4/3(3/3=1 已去重)、-4/3、......第二步:“蛇形遍历” 每组,编序号因为每组里的数是 “有限个基础项 + 无限延伸”,但可以按 “先小分母、再小分子” 的顺序,像 “走蛇形” 一样逐个编号:先取 q=1 组第 1 个:1/1(序号 1)再取 q=1 组第 2 个:-1/1(序号 2)取 q=2 组第 1 个:1/2(序号 3)取 q=2 组第 2 个:-1/2(序号 4)取 q=1 组第 3 个:2/1(序号 5)取 q=1 组第 4 个:-2/1(序号 6)取 q=3 组第 1 个:1/3(序号 7)取 q=3 组第 2 个:-1/3(序号 8)取 q=3 组第 3 个:2/3(序号 9)取 q=3 组第 4 个:-2/3(序号 10)...第三步:验证 “一一对应”每个有理数都能在某一组里找到,且会被 “蛇形遍历” 编上唯一的自然数序号;每个自然数序号,都对应一个唯一的有理数(不会重复,因为提前去重了)。
网络对于今天的我们来说似乎和空气一样司空见惯,也和空气一样受之不觉、失之难存。但网络带来的信息传播的颠覆是空前的,并不亚于计算机本身带来的颠覆,毕竟从信息还无法被抽象出来的时代开始,它就被束缚在低频率、低容量的载体中,锁死了流动性,所以才会有“烽火连三月,家书抵万金”。那么关于网络,这个和我们原始直观的世界经验并不兼容的科技产物,我们在谈论它的时候到底在谈论什么?
Nginx (engine X) 在我个人心目中可能算是最好的开源服务器,尽管掺杂个人感情,但它实际上从很大程度上代表了我们所身处的这个宏大的Web2.0时代,阐释了一个优雅的、灵活的同时又是无私的Web后端的应有之义。最近又开始做Nginx有关的工作,所以有感而发聊一聊:)附:W3Techs 统计的web server使用量(比节目中聊的数据更新...)
近来工作繁忙,想着干脆来聊聊程序员工作中的脏活累活——给线上的软件程序验尸。当然这里我聊的还是coredump和gdb的古法验尸,倒不是说那些新的debugger做得不好,而是当火急火燎的debug工作到来时,可能只有corefile和gdb才不会给人添堵……
最近看到暴雪游戏要正式对粉丝运营的知名私服“乌龟魔兽世界”发起诉讼,不由得心生感慨。在所有的游戏侵权中,“私服”是一种很独特的存在,毕竟对于联网的在线游戏来说,官方掌握着游戏服务器的绝对控制权,那为什么私服还会存在呢?于是我想聊一聊这个话题,从技术上,或者从某种更感性的层面上,聊聊为什么联网在线游戏会存在私服。
根据一句话创作图片,对于人类来说是一项专业性很强的工作,但在今天越来越多的AI模型已经可以通过计算来完成。在使用之余,你有没有想过这究竟是如何实现的?它违反直觉的地方是如此之多,例如从文字prompt到图片输出,实现了信息载体从一维到二维结构的跨越;除此之外,AI还有着和人类截然不同的创作路径,它的绘画就像把布朗运动的分子重新排布得井然有序一样,是一种违反直觉的熵减过程。前面的节目基于LLM解释了大模型的基本架构和底层原理,基于此我们继续向图片模型走去,一窥AI生图的底层秘密。
C,C++和C#看起来就像是一家子,讲完C++自然就该聊聊C#——因为它看上去就像是C++++。附:在音乐中,sharp相当于法语dièse或希腊语diesis,表示音高升高。升号符号 表示该符号对应的音符高出一个半音。
三种有些小众的编程语言,一块聊聊。附:编程语言排行榜 TIOBE for July 2025 TOP50
俗话说,没有人能精通C++。我们常见到Java程序员、Golang程序员的title,却鲜见有开发者自诩为“C++程序员”。一直以来C++似乎都站在鄙视链的顶端,OS、交易、通信、仿真或是渲染等各种高性能计算场景几乎都无法脱离C++而存在。所以C++到底意味着什么?为什么现代C++在高度复杂化的演变之路上一去不返?Vibe coding的热潮下C++会被Rust取代吗?
接着上一期,我们来聊一个更常出现在Leetcode面试题里的性质:同构性。或者说它们更常被提及的名字:深度/广度优先搜索、动态规划……
最近多次提到面试和算法题的话题,没想到我陆陆续续收到了好几封邮件,这几位听友向我大倒苦水,痛斥面试题给校招带来的痛苦。于是我想直接来聊聊这些Leetcode算法题,虽然我给不了什么秒杀的捷径,但是希望能为减轻算法题的痛苦尽一些绵薄之力 :)第一期聊聊单调性话题。
嘉宾是我的朋友阿泽,目前在美国某500强企业做全栈工程师。又是一年校招季,近年来关于校招的话题热度一直有增无减,竞争愈演愈烈之态势有目共睹。我们常以“大环境”解释这种困顿的处境,但当局者迷,我们需要一个旁观的视角来弄清楚校招的全貌。而最适合作为对照的就是处在地球另一端的美国。美国应届生们的校招又是怎样的情景呢?这非常令我好奇,所以有了这期节目。
目睹应届生秋招之激烈焦灼,有感而录制这期节目,回忆面试中Leetcode、算法题的过往以及聊聊当下的现状。列了个自测题单,有兴趣的可以看看:https://leetcode.cn/problem-list/OBMMTKks/
每一个席卷全人类的科技产品都有最后一层需要捅破的窗户纸,从PC到移动设备莫不如此。那么……AI又如何呢?
贝叶斯定理 Bayes' theorem 被誉为统计学的勾股定理,是一种用似然概率更新先验概率的工具,它深刻地参与了现代世界的构造,却往往作出有悖于我们直觉的姿态。通过几个故事,或许你可以直观地体会贝叶斯定理的魅力,并尝试用它构建一个更有力的认识论框架。1. 贝叶斯定理2. 蒙提霍尔问题:固执己见的胜率
面向准大学生们的一期节目。
最近Google如期召开了2025年的I/O大会,有人说又是一次乏善可陈的演示,有人说这是一次AI产品化的真正标杆。借此咱也来聊一聊这场科技发布会,同时聊一聊AI产品化的事。
SQL,或者读作sequel,几乎已经成为数据库的代名词。不止程序员,今天一切和数据库打交道的职业都需要SQL的帮助。我们在数据库之上构建了庞大的信息世界,SQL这样一种形式化推理系统值得我们好好聊聊它的过往和去处。
五一假期,聊点轻松话题 :)
排序算法可以说是最具有普遍性的算法,但为什么它的算法被锁死在了O(nlogn)的“光速”?从香农的视角看,排序算法几乎可以视作“软件程序”这一抽象概念的一种概括,让我们试图从信息论出发重新审视软件究竟是怎么一回事。附:nlogn是怎么来的:timeline by AI02:11 解密程序员心中的排序算法:初级知识背后的挑战与准备04:13 不比较也可以排序?了解基于区间划分的排序算法。06:16 算法的时间复杂度:了解插入排序的真相与优化方向08:23 冯诺依曼的计算机程序设计艺术:归并排序与时间复杂度的挑战10:29 冯诺依曼的思考:计算机排序算法与IBM专用排序机的对比分析12:32 霍尔的快速排序算法:超越插入排序的高效排序方法14:34 计算机科学中的速度限制:NLOG N算法的巅峰之作16:51 算法排序的奥秘:NLOG N时间复杂度的上限与信息熵的奇妙关系19:13 信息熵的解释:熵表示混乱程度,信息中的不确定性通过排序过程消除21:34 信息论视角下的排序算法:熵、概率和效率的关系24:03 编程工作中的排序算法:从信息论到实际应用的优化路径26:27 人工智能程序的效率评估:从信息熵到人类易感知的表达形式
2022年末,随着GPT一声炮响,扎克伯格砸重金讲述的元宇宙故事逐渐烟消云散。搭建新世界的野望破灭,Meta却并没有因此在代码帝国的行列中掉队,相反它很快转身,瞬间又站在了大模型的前沿——Meta的不灭金身源于大干快上。timeline by AI02:04 元宇宙的梦想与现实:马克·扎克伯格的豪赌与转变04:06 元宇宙热潮背后的AI技术探索:META公司的真实故事06:11 深度学习开发者必读:探索META的开源项目与AI前景08:15 深度学习研究者的福音:介绍PYTORCH的开源项目及其重要性10:17 PYTORCH:自由度保障的免费开源软件,AI领域的重要技术基础设施12:18 基于PyTorch的先进模型开发平台14:20 元宇宙项目中的技术突破:SAM模型与LLAMA模型的差异与影响。16:22 元宇宙中的最出名的开源大语言模型:LLAMA和DEEPCIG的差异与影响20:27 元宇宙梦想与技术野心:META在开放人工智能时代的探索之路22:27 META与腾讯的不同技术路线选择24:39 腾讯与META的不同观点和技术创新路线
上一周忙于股市忘记更新,实在抱歉。这周我们接着聊亚马逊AWS。Timeline by AI02:07 从线上书店到弹性计算:亚马逊的创业故事与云计算优势04:09 从电商平台到云服务提供商:亚马逊的转变与弹性计算方案06:13 弹性计算:满足不断变化的软件需求的解决方案08:14 AWS:云计算产业的引领者和基础设施服务的提供者10:24 AWS推出首款面向公众的分布式消息队列服务:简单队列服务(SQS)12:59 电商与云计算:技术层面的相关性与成功案例分析15:36 电商巨头的云计算战略:摊薄成本、提高效率和竞争力18:13 云计算中的软件需求:平凡中的独特,规模效益的宝藏20:51 深入探讨AWS的OP最后一个字母:开源与商业化的交织之路23:25 AWS对于开源的积极态度:基因、立场和商业利益25:57 AWS的开源战略:绑定开发者关系,建立软件生态的核心竞争力28:37 开源软件的发展趋势:从自由到保守,再到现在云计算提供商的主导
代码帝国的第二期,我们来聊聊Microsoft。对于大多数中国内地用户来说,相比于Google,微软的软件服务要熟悉得多。固然,微软的软件服务庞大且无处不在:Windows、Office、Azure……聊它们的话,难免会变成商业话题。所以这期节目要聊的是一个有趣的、在开发者群体内久经流传的话题:微软和开源的关系。长期以来,微软都站在开源的对立面,被广大开发者视为反派Boss。“Linux is cancer”、“3-E policy”等等之下,我们探讨一下微软这家公司到底秉持着怎样的技术面貌,有哪些有趣的故事。Timeline by AI02:05 全球软件巨头微软:从Windows到Office,影响力无限04:08 微软:开发者心中的反派角色,技术领域的巨鳄06:14 微软:从反对开源到拥抱订阅制的商业模式转变08:36 微软与自由软件运动:历史与商业模式的对比分析11:30 开源软件的崛起与微软的 FUD 策略:历史与现实的交织14:23 开源软件的崛起与微软的反对:Linux和开源软件的未来展望17:17 微软的3-E战略:通过垄断性资源和互斥性功能消灭竞争对手20:08 微软的的竞争策略:限制竞争对手和捆绑第三方软件23:02 微软的转型:从商业软件到开源社区的拥抱姿态25:54 微软的开源态度转变:云计算业务带来的盈利模式变化28:44 微软的开源之路:从IE浏览器垄断到VSCO编辑器的里程碑31:41 微软在开源领域的态度演变及贡献:从垄断到开放订阅值的盈利模式
为了回应一位听友的邮件,这期节目我想聊聊生成式AI面前程序员这个职业的明天。计算机(Computer)对人类来说究竟意味着什么?从第一位程序员艾达·洛夫莱斯开始,人机对话范式走过了符号化和图形化的变革,那么在生成式AI加入之后,人和计算机的关系真的迎来了颠覆式的改变吗?程序员不会消亡,它更可能会变成我们每一个人。分享一张reddit上看到的图Timeline by AI02:02 生成式AI消灭程序员职位?探讨人工智能对职业的影响04:03 人工智能时代下的程序员:挑战与机遇06:07 计算机:人工智能时代的关键工具08:09 从巴贝奇到冯诺依曼:计算机发展历程中的关键人物和思想变革10:25 算法的诞生与计算机程序的发展:艾达洛夫莱斯的贡献13:01 程序员的本质职能:编写逻辑结构,操控计算机的力量!15:35 计算机语言的演变与程序员的崛起:从物理操作到符号化交互的人机对话阶段18:14 从符号化到图形化:程序员的职业变革与人机交互的演变20:51 AI参与的人机对话:从图形化到语义化的演进趋势23:24 生成式AI的逻辑结构构建:挑战与优势并存的时代25:59 AI改变的只是人机对话的形式,程序员群体的消亡只是悲观情绪的产物28:39 人机对话:计算机工具的普遍要求与职业范式的转变
《代码帝国》的几期节目将从软件领域的技术产出来聊聊那些如雷贯耳的科技巨头。节目里不会讨论商业模式,只是纯粹关注它们为软件和互联网所做出的成就和贡献。Timeline by AI: 02:02 GOOGLE:软件领域的巨人,冰山下的强大科技巨头06:07 从搜索引擎到代码帝国:GOOGLE在互联网和人工智能领域的技术成就08:18 谷歌:Web和AI领域的重要角色与技术输出11:04 安卓系统:GOOGLE在移动互联网时代的话语权掌握13:53 浏览器之王:GOOGLE的CHROM和它引领的Web标准16:35 互联网时代的主宰:GOOGLE的科技霸权与软件应用的商业模式19:27 从三驾马车到云计算:分布式计算大数据时代的开启者22:13 Google的创新之道:云计算、人工智能与大数据开源项目25:01 探索人工智能的未来:谷歌的研究团队引领科技潮流27:47 深度学习的巨星崛起:Google的AI团队与阿尔法狗的传奇之旅30:33 人工智能的未来发展方向:从聊天机器人到GEMini的探索
本期嘉宾:老王,北航材料学博士。当我们提到量子力学的时候,最直接的印象恐怕就是它的复杂晦涩,以及概率波为核心的不可知论的迷雾。但是这种诡异的形象却并不妨碍它深刻地参与到我们的生产生活之中,成为我们认知世界的最强大的工具。当然,没有人能说自己懂量子力学,也正因如此,我们不妨漫谈一回这个披着神秘面纱的学科。一些节目中提到的名词波函数:量子力学中描述微观粒子状态的数学工具,用复数函数ψ表示。其模的平方代表粒子在空间某处出现的概率密度。波函数遵循薛定谔方程演化,叠加原理是其核心特性。库珀对:超导体中两个电子通过晶格振动(声子)形成的配对。这对电子自旋相反,在低温下形成宏观量子态,是解释超导现象(如零电阻)的关键。迈斯纳效应:超导体冷却到临界温度以下时,会完全排斥内部磁场,导致外部磁场的磁感线绕过超导体(如图),如同在内部形成“磁屏障”。这使超导体能悬浮在磁铁上方,是超导体的核心特性之一。量子隧穿:微观粒子以概率形式穿透经典力学中无法逾越的能量势垒的现象。例如α粒子衰变和扫描隧道显微镜的工作原理均基于此效应。势垒:能量高于粒子初始状态的区域,阻碍粒子运动。经典力学中粒子无法穿越势垒,但量子力学允许隧穿效应发生。霍尔效应:电流通过磁场中的导体时,在垂直于电流和磁场的方向产生电势差的现象。量子霍尔效应(如整数量子、分数量子霍尔效应)是凝聚态物理的重要发现,用于高精度电阻标准。巨磁阻效应:某些多层磁性薄膜材料的电阻在外磁场作用下大幅变化的现象。应用于硬盘读头,显著提升存储密度,是自旋电子学的基础。SRAM和DRAM:• SRAM(静态随机存储器):通过晶体管存储数据,无需刷新,速度快但成本高,多用于CPU缓存。 • DRAM(动态随机存储器):通过电容存储数据,需周期性刷新,容量大且成本低,用于计算机主内存。时间轴(by AI)02:02 波函数的含义与应用07:10 探索身边的量子力学:解密微观世界的概率波动力学14:29 重要而富有挑战:量子力学的研究价值与应用前景21:45 量子力学下的电子行为:挑战与应对之道29:02 量子力学的不确定性:挑战还是特点?——工程领域的应用价值探讨36:13 量子计算和存储:利用波函数携带信息的能力。43:30 深入剖析硬盘的存储原理:从磁性颗粒到量子力学的探索50:49 非易失性存储器:超越固态硬盘和内存的读写速度与低功耗优势58:01 揭秘量子计算:量比特、自旋和超级出用的量子传输!01:05:19 量子力学:未来前沿还是炒作概念?01:12:35 探索未来科技:量子力学的学习路径和应用前景01:19:49 理论学界与工程界的碰撞:量子力学在实际应用中的挑战
本期节目的话题是我脑海中一闪而过的想法:如果人类语言中突然多了LLM这个参与者,那么之前关于语言的思考是否过时呢?我的眼前马上浮现了维特根斯坦的名字。仔细想想,维特根斯坦的思想在LLM面前不仅丝毫不怵,甚至还隐隐指出了一条未来的路——大语言模型是维特根斯坦的一场遥远的胜利。[1]《哲学研究》路德维希·维特根斯坦,推荐涂纪亮的译本 (北京大学出版社)时间轴(by AI)02:05 语言的逻辑图像:维特根斯坦和大模型的奇妙呼应04:11 维特根斯坦的语言观念:从指称论到逻辑图像论的转变06:13 从逻辑图像到语言游戏:维特根斯坦对语言的晚期思考08:16 维特根斯坦的语言游戏观念:从逻辑分析到生活形式的转变10:17 维特根斯坦的视角:语言的意义是通过具体语境中的使用行为生成出来的12:17 语言的边界与世界的边界:维特根斯坦的哲学思考14:21 大语言模型与维特根斯坦的语言游戏理论:相互吻合的概念与应用16:27 大模型学习中的语言游戏规则与维特根斯坦的观点18:29 大语言模型:从符号主义到注意力模块的专家系统之路20:31 大语言模型:从语境中生成规则,突破人类认知的边界22:37 数学竞赛题训练的大模型:突破语言边界,探索新知识的工具
2025.2.22 凌晨,加密货币市场集体走跌,24小时内全网17万人爆仓。看到这个消息我突然意识到,代码时光机还从没聊过加密货币,于是这一期决定聊加密货币的开端:比特币。[1] Nakamoto, Satoshi. "Bitcoin: A peer-to-peer electronic cash system." (2008).时间轴(AI生成)02:05 揭秘加密货币:比特币背后的密码学机制和去中心化支付系统04:06 区块链技术下的去中心化支付系统:比特币的奥秘揭秘06:08 区块链:在没有中心化第三方的情况下保证交易一致性的方法08:11 区块链技术:保证交易记录可信性的革命性创新10:14 区块链的奥秘:如何保证最长链的可靠性与信任?12:18 哈希函数:区块链中数据安全与验证的关键工具14:20 解密区块链的哈希函数:防伪与共识机制的奥秘16:51 区块链的哈希函数:防伪机制与诚实矿工的重要性19:17 区块链的博弈与局限:坏矿工的挑战与比特币的稀缺性21:42 中本聪在比特币区块链中的开创之举及其意义24:06 比特币:技术革命对权力垄断的冲击,挑战传统金融体系26:31 区块链:重构社会协作范式的革命性技术
用超简单的方式解释大语言模型的本质原理。这期节目可以当作第一期节目的增强补丁,对LLM做了进一步的详细说明,包括如下的基本问题:1. LLM是用什么形式阅读人类语言的?2. 知识以何种形式在LLM中流动?3. Transformer和注意力机制是什么?4. (单头)注意力机制的计算过程。为了尽可能减轻术语带来的心理负担,我尽可能地用例子和直观描述来代替学术描述,不免带来叙述上的不严谨,欢迎评论区对此打补丁。、节目中提到的,Google的两篇最重要的论文是:[1] Mikolov, Tomas. "Efficient estimation of word representations in vector space." arXiv preprint arXiv:1301.3781 3781 (2013).[2] Vaswani, A. "Attention is all you need." Advances in Neural Information Processing Systems (2017).下面是AI生成的时间轴:02:02 解密大语言模型:揭示其内部实现机制与写作能力04:02 大语言模型的编码奥秘:从文本到信息的转换之道06:04 大语言模型的基石:磁向量编码与人类语言理解08:12 从文字到向量:理解大语言模型内部的语言处理方式10:58 GPT三:理解人类语言的磁向量表示和信息处理方式13:43 GPT-3:了解一千七百万个参数的计算方法和原因16:25 深度学习中的Transformer模型:理解注意力机制的本质19:12 深度学习中的 Tranformers:注意力模块的原理和应用21:56 深度剖析Transformer中的注意力机制:从单头到多头的实现细节24:40 机器学习中的向量运算:理解点乘、点程和注意力机制27:24 Transformer模型中的注意力机制:高效的信息提取与并行计算30:07 Transformer的注意力机制:如何提高信息提取效率?
看了DeepSeek-R1的论文,我觉得它是如此简洁,推理能力的培养是如此的水到渠成(甚至对人类自己的教育都有些启示意义),因此录制了这期节目,帮助更多的人了解这个简单又动人的算法设计。相信只要用过DeepSeek的深度推理功能,都会对它超长的思维链印象深刻,听了这期节目就能明白这样的思维链是怎么培养出来的 :)一些有关的单集:《Vol.1 从神经元到大模型需要几步?》可以建立对人工智能的基本概念;《Vol.13 高频交易究竟在捣鼓什么东西?》搞懂DeepSeek母公司幻方量化都做些什么;《Vol.17 英伟达垄断的不是显卡而是CUDA》险些被DeepSeek打脸的上一期节目。录制只能在楼下鞭炮的间隙中进行,若有听感损失敬请谅解。。。抛砖引玉,欢迎评论区对论文内容做批评、补充 :)P.S.强化学习的优化函数