博文
我们以为伟大的AI带来了熵增,实际上是熵减
AI 刚刚大规模进入我们的生活时,我曾经有一种非常强烈的感觉: 世界的熵正在急剧增加。 以前写一篇文章需要几个小时,现在几十秒就能生成;以前做一张插画需要数年绘画训练,现在只需要输入几句话;程序、音乐、视频、PPT、广告文案、商业计划书,甚至人与人之间的聊天,都开始被机器以极低的成本批量生产。 互联网上的内容以前已经够多了,而生成式 AI 又像打开了一根无限供水的消防栓。 按照直觉,这应该是一个极端的“熵增时代”。 信息越来越多,组合越来越多,可能性越来越多,世界越来越混乱。 可当我真正长期使用 AI 之后,我越来越觉得事情可能恰恰相反。 AI 最深远的作用,也许不是熵增,而是熵减。 当然,这里的“熵”不是严格意义上的热力学熵,而是一种借用:我想描述的是一个系统中不确定性、差异性以及可能状态的数量。 而 AI 正在以前所未有的速度,把这些可能性收束起来。 一、内容变多了,可能性却未必变多 这是一个很反直觉的现象。 假设过去有 1000 个人要写一篇文章。 其中有人写得很好,有人语法混乱;有人喜欢长句,有人一句话只有几个字;有人逻辑严谨,有人思维跳跃;有人引用尼采,有人突然讲起小时候村口的那棵树。 这些文章可能很粗糙,但它们拥有极其巨大的差异。 现在还是这 1000 个人,但其中 800 个人在写完之后,对 AI 说: 帮我润色一下,让表达更专业、更有逻辑。 于是 AI 开始工作。 它删除重复内容,补足逻辑链条,调整段落结构,把“不太合适”的词换掉,把口语变成书面语,把奇怪的表达变得自然。 每一篇文章似乎都变好了。 可是如果把这 800 篇文章放在一起看,你可能慢慢会发现一种奇怪的味道。 它们开始变得很像。 “首先……” “其次……” “值得注意的是……” “从本质上来说……” “这不仅仅是……更是……” 每一篇都更加正确,每一篇也更加平滑。 噪声减少了,意外也减少了。 于是一个有趣的事情发生了: 内容数量增加了,但内容空间可能正在缩小。 这正是我所说的“熵减”。 二、AI 的本质,就是寻找高概率答案 仔细想想,其实这一点并不奇怪。 今天的大语言模型,本质上是在巨量人类文本中学习一种东西: 什么样的内容,在什么样的上下文中最可能出现。 当我输入: 帮我写一封正式的辞职信。 AI 不会从人类所有可能的语言组合中随机挑选一种。 恰恰相反。 它会向那些概率最高、最合理、最符合人类经验的表达靠拢。 “感谢公司一直以来的培养。” “经过慎重考虑。” “因个人职业发展原因。” 这些句子之所以经常出现,不是偶然的。 因为它们就是这个语境中的高概率区域。 AI 极其擅长找到这种区域。 ...
天下知识,唯慢不破
我们生活在一个获取知识越来越快的时代。 以前遇到一个不会的问题,要翻书、查文档、逛论坛,甚至折腾一下午。 现在打开 AI,输入一句: Java 的 synchronized 到底锁的是什么? 几秒钟以后,答案就摆在面前。 再复杂一点也没关系。 JVM、Redis、MySQL、分布式事务、网络协议、操作系统、算法……几乎所有已经被人类总结过的知识,都可以在极短时间内被检索、整理,然后送到你的眼前。 从这个角度看,我们似乎进入了一个学习速度前所未有的时代。 但我越来越觉得: 知识获得得越快,人反而越需要主动慢下来。 因为“看到了答案”和“真正会了”,中间隔着非常远的距离。 一眼看懂,是学习中最大的错觉 学习计算机的时候,经常会出现一种很奇怪的感觉: 看别人解释时觉得特别简单。 synchronized (lock) { // 临界区 } 哦,不就是拿锁吗? Redis 分布式锁: SET lock_key random_value NX EX 30 哦,不就是 NX 保证不存在时才能写入,再加个过期时间吗? 反转链表: next = curr.next; curr.next = prev; prev = curr; curr = next; 四行代码。 似乎一分钟就学会了。 可一旦把页面关掉,让自己重新写一遍,脑袋立刻空白。 更麻烦的是,有时候代码甚至还能默写出来,但别人追问一句: 为什么? 就答不上来了。 为什么 synchronized 修饰普通方法锁的是当前对象? 为什么静态方法锁的是 Class 对象? 为什么 Redis 解锁不能简单 DEL key? 为什么链表反转一定要先保存 next? 为什么 wait() 会释放锁,而 sleep() 不会? 这些问题才真正决定了一个知识点有没有进入自己的大脑。 ...
大模型翻车记录
一些大模型翻车现场的参考网站 https://enaih.org/ https://failureindex.ai/ https://incidentdatabase.ai/ DeepSeek 2026.09.08 要求绘制网页解释KMP算法的LPS算法时,出现逻辑错误 deepseek对此错误的解释: 本质局限:Token预测 vs 逻辑推理 我是"下一个词预测器",不是"代码执行器"。生成描述时基于统计模式,而非实际运行代码。 注意力局部化 聚焦在 p[i] != p[j] 这个条件本身,忽略了 j=0 时的特殊上下文(此时 p[0]=‘A’ 与 p[2]=‘A’ 实际相等)。 训练数据偏差 “不匹配→j保持0” 是训练数据中的高频模式,我的概率分布倾向于套用这个"常见模板",即使当前状态实际是匹配。 缺乏执行验证 没有"在脑中真正运行代码"的能力,生成后没有自动检查:if (j===0 && p[i]===p[0]) 应生成"匹配"描述。 根本矛盾 我是统计学家,不是计算机。统计数据模式可以,精确执行状态转换不行。 2026.09.10 SQL题目自己改了原题 要求算出最高分、和平均分,自己却认为还要算出最低分
我的错题集 更新中
Java:==、equals() 与 hashCode()(HashMap) 我的理解偏差 把 == 只理解成“比较引用地址” 这只适用于引用类型。 对基本数据类型,== 比较的是值。 对引用类型,== 判断两个引用是否指向同一个对象。 把 equals() 说成“判断是不是同一个对象” 更准确的说法是:equals() 用于判断两个对象是否“逻辑相等”。 两个不同的对象,也完全可以因为业务字段相同而 equals() == true。 把 hashCode() 理解成可以直接定位到某个对象 hashCode() 主要用于散列查找,帮助 HashMap 快速缩小查找范围、定位桶。 不同对象可能拥有相同的 hashCode,因此 hashCode 不能唯一确定一个对象。 HashMap 找到桶后,还需要通过 equals() 进一步确认 key。 “重写 equals 必须重写 hashCode”的关键原因没有说完整 Java 约定:如果 a.equals(b) == true,则必须保证 a.hashCode() == b.hashCode()。 在 HashMap 中,如果两个逻辑相等的 key 因为 hashCode 不同被定位到不同的桶,那么查找时连 equals() 都可能没有机会执行,最终导致本应相等的 key 查找失败。 核心记忆 hashCode() 负责“找桶”,equals() 负责“认人”。 如果 equals() 相等但 hashCode() 不同,两者可能被放进不同的桶,甚至没有机会进行 equals() 比较。 ...
程序员脑细胞灭活图鉴
从基础理论到体系结构与工程实践:按类别探索 240 个技术难点,用箭头发现知识之间的关系,并在本地记录学习进度。
我们以为的怪物,实际上是个镜子
我们总喜欢把自己看到的那些荒诞现象归咎于“资本”“平台”“娱乐圈”“算法”“商家”,仿佛这些东西是某种脱离社会而独立存在的怪物:它们制造低俗,制造烂片,制造饭圈,制造审丑,制造割韭菜,最后再把这些垃圾强行塞进普通人的生活。 这样解释当然很舒服,因为它意味着我们永远只是受害者,所有问题都来自外部。 但如果把视线再往回拉一点,就会发现一个更不舒服的事实: 很多我们口中的“畸形”,并不是市场凭空创造出来的,而是社会本身的欲望、弱点和偏好,经过商业系统放大以后重新投射回来的结果。 我们以为自己在看怪物。 实际上,很多时候我们看到的是一面镜子。 市场从来不关心你嘴上喜欢什么 市场没有审美,也没有道德。 它真正擅长的事情只有一件: 识别什么东西能让人停留、点击、购买、付费,然后把这种东西复制、强化、规模化。 如果明星烂片一次又一次获得高票房,电影公司得出的结论不会是“观众缺乏艺术教育”,而只会是: 明星比剧本更值钱。 如果标题越夸张点击率越高,媒体也不会突然良心发现,而只会继续把标题做得更加夸张。 如果短视频里的争吵、羞辱、猎奇、擦边,比知识内容拥有更高的完播率和互动率,那么算法自然会越来越偏向刺激性内容。 资本从来不需要先发明人的欲望。 它只需要发现人的欲望,然后把它包装成生意。 人性的弱点,本身就是一座金矿 喜欢炫耀,于是出现身份消费。 害怕错过,于是出现饥饿营销。 喜欢窥私,于是八卦产业永远不会消失。 喜欢站队,于是饭圈、阵营对立和互相攻击拥有天然土壤。 喜欢刺激,于是内容必须越来越激烈。 喜欢暴富,于是各种“一夜翻身”的神话永远有人相信。 商业系统真正厉害的地方,从来不是创造人性,而是太懂人性。 甚至可以说,很多商业模式本质上都在干同一件事: 把人性里原本只是一个小弱点的东西,工业化、规模化、流水线化。 为什么很多东西越发展越像“畸形秀” 一个原本只是边缘的小偏好,一旦被平台发现具有商业价值,就会迅速被放大。 最开始只是“有趣”。 后来发现,更刺激的内容停留时间更长,于是开始追求刺激。 刺激还不够,就制造冲突。 冲突还不够,就开始羞辱、对立、愤怒、猎奇。 因为在注意力经济里,平静通常意味着低传播,而愤怒、恐惧、欲望和争议,往往意味着更高的数据。 平台甚至不需要坐在会议室里讨论: 我们要不要让整个社会变得更加浮躁? 它只需要不断优化点击率、停留时长、完播率和互动率,最后就可能自然走向一个越来越浮躁的结果。 用户停留在哪里,算法就往哪里堆内容。 用户为什么付钱,生产者就往哪里堆资源。 最后整个社会会产生一种错觉: 现在的人怎么都喜欢这种垃圾? 其实更准确地说,是这种内容更容易刺激人的本能,因此在商业竞争里拥有了更强的生存能力。 电影市场是最直观的一面镜子 观众一边抱怨明星片酬高、剧本烂、营销浮夸,一边又会因为某个明星去买票、包场、冲预售、打五星。 对制片方来说,它看不到你嘴里的: 这片其实一般。 它只能看到: 你付款了。 资本不会分析你买票究竟是因为电影好,还是单纯为了支持某个演员。 它最后得到的信号只有一个: 这种配置能赚钱。 于是下一次项目立项的时候,资金自然继续流向明星、IP和宣发,而不是编剧、摄影、美术、剪辑和声音。 消费者嘴上说想要好电影,却持续用真钱奖励明星堆砌。 最后市场生产出越来越多明星堆砌的电影,这甚至不能简单理解为“资本背叛了观众”。 某种意义上,资本恰恰太忠实了。 它忠实地执行了观众真实的消费行为。 商业世界不听抱怨,只看付款记录 这是整个问题最残酷的一点。 消费者说: 我讨厌标题党。 然后标题越夸张,点击率越高。 消费者说: 我讨厌烂片。 然后喜欢的明星一出现,预售照样冲上去。 消费者说: 我讨厌低俗直播。 结果最猎奇的直播间人数最多。 消费者说: 我讨厌游戏公司割韭菜。 结果限定皮肤一上线,销量再次爆炸。 那生产者到底应该相信什么? ...
从电影市场分析:为什么消费者越不在乎产品质量,生产者越没动力提高质量
有时候我们会抱怨: 为什么现在这么多电影拍得跟屎一样? 剧本稀烂,逻辑稀碎,演员表情像刚学会控制面部肌肉,特效像外包给大学生课程作业。 但海报一看: 六个明星。 预告片一看: 八个明星。 发布会一看: 半个娱乐圈。 然后上映第一天,票房三个亿。 紧接着所有人开始痛骂: 资本怎么就知道赚快钱? 但问题是,我们可能骂错对象了。 资本当然喜欢赚快钱。 可资本真正厉害的地方,从来不是“逼你买烂东西”。 而是它会极其冷静地观察: 你到底愿意为什么付钱? 如果消费者一次又一次用钱包告诉市场: 产品质量不重要。 我喜欢这个明星就行。 我认识这个IP就行。 热搜很多就行。 宣传够猛就行。 那么生产者最理性的选择,就是: 降低产品质量投入,提高营销、明星和流量投入。 这不是阴谋。 这是经济学。 电影公司不是艺术慈善机构 假设现在有两个电影项目。 第一部电影: 剧本打磨三年; 请了一群不出名但演技很好的演员; 摄影、剪辑、声音设计全部认真做; 总成本5000万元; 最后票房3000万元。 第二部电影: 剧本三个月赶出来; 请两个顶流明星; 再塞几个综艺常客; 宣发狂砸热搜; 总成本2亿元; 电影烂得豆瓣4.6分; 最后票房10亿元。 你猜投资人下一部电影会投谁? 不会有人在会议室里含泪说道: 虽然第一部亏了,但它有艺术价值。 财务负责人只会打开Excel: A项目亏损。 B项目盈利。 于是下一轮投资: 继续复制B。 这就是最现实的市场反馈。 资本不理解艺术吗? 当然理解。 但资本更理解: 什么东西能赚钱。 如果烂电影比好电影更容易赚钱,那么生产烂电影就会成为一个合理的商业行为。 真正可怕的不是明星贵,而是明星可以替代产品质量 很多人总觉得电影投资失败,是因为演员片酬太贵。 实际上,真正危险的不是演员贵。 而是某些消费者愿意接受: 演员本身就等于产品。 于是电影开始变成一种奇怪的明星周边。 以前的逻辑是: 这是一部好电影,所以这个演员火了。 后来慢慢变成: 这个演员很火,所以我们给他拍一部电影。 这两个逻辑看起来差不多,实际上完全相反。 前者是: 作品创造明星。 ...
高考过的我们历经了那么多的疯狂,却已经开始把他们当作稀疏平常
很多年以后,再回头看高中,我们会发现一件很奇怪的事。 那些当年极其疯狂的生活,我们今天竟然已经很少觉得疯狂了。 早上六点甚至更早起床,晚上十一二点睡。 一天坐十几个小时。 体育课可以随时取消。 吃饭五分钟解决。 上厕所都要计算时间。 假期不是休息,只是换一个地方继续写作业。 一个班里大量学生近视。 几十个十七八岁的孩子,每天被公开排名、比较、筛选。 所有人都被不断告诉: “这一年决定你的一生。” 更重要的是,我们很少反抗。 我们接受。 服从。 坚持。 然后把这一切称为: “正常。” 今天回头看,真正值得讨论的,也许已经不只是高考本身。 而是: 一个人在十八岁以前,如果长期生活在这样的环境中,他会被训练成一个怎样的成年人? 一 高考给我们留下的,远不只是知识。 它还可能留下了一整套关于“什么叫正常生活”的标准。 比如睡眠。 一个学生每天只睡五六个小时,我们可能会说: “高三嘛,正常。” 一个成年人连续加班到凌晨,我们可能还是会说: “工作嘛,正常。” 学生时代,熬夜刷题叫努力。 工作以后,熬夜加班叫奋斗。 学生时代,周末补课叫抓紧时间。 工作以后,周末回公司叫敬业。 形式变了。 逻辑却没有变。 我们很早就习惯了一件事情: 为了一个被认为足够重要的目标,生活本身是可以无限让步的。 睡眠可以让步。 娱乐可以让步。 健康可以让步。 家庭可以让步。 个人时间可以让步。 甚至尊严有时也可以让步。 只要前面摆着一个足够宏大的目标: 高考。 升职。 绩效。 买房。 孩子教育。 “再熬几年就好了。” 我们就会觉得牺牲是合理的。 可问题在于: 高中时我们被告诉: “熬过高考就好了。” 大学时有人告诉我们: “熬过考研就好了。” 工作以后又变成: “年轻时多吃点苦。” 结婚以后变成: “等房贷还得差不多就好了。” 有了孩子以后又变成: “等孩子长大就好了。” 于是人生变成了一场不断延期的生活。 我们永远在为未来牺牲现在。 而奇怪的是,我们已经很少追问: 如果一个人的一生都在等待‘以后’,那么他究竟什么时候真正生活过? 二 高考时代最深刻的一种训练,也许不是做题。 而是服从。 什么时候到校。 ...