Telegram Channel
记录和分享有趣的信息。

Record and share interesting information.

contact: [email protected]
https://youtu.be/WXuK6gekU1Y?si=KnJ-WTTVCpgvEgT3

前阵子和人讨论 GPT 时聊到了 AlphaGo,我意识到我对 AlphaGo 不太了解,所以最近打算学习一下。而要了解 AlphaGo,首先都推荐观看这部纪录片。

2014 年深度学习(AlexNet)的论文发表,DeepMind 开始利用深度神经网络处理视频游戏,并很快转向了对围棋的研究。2015 年,DeepMind 邀请欧洲围棋冠军 Fan Hui 来到英国与 AlphaGo 对弈并全胜,这是围棋程序第一次战胜专业人类选手,Fan Hui 也以顾问的身份加入 AlphaGo。2016 年 DeepMind 前往韩国挑战世界冠军 Lee Sedol,并取得了四胜一负的成绩。这一系列的胜利引起了全球的关注,也让人们开始认识到了深度学习的威力。

值得注意的是,围棋的特色在于其近乎无穷的可能性,这也对应着近乎无穷的计算量,这使得围棋其实是一个直觉游戏(intuitive game),而不是一个需要深思熟虑的策略游戏(logic based game),毕竟任何所谓的深思熟虑在这无穷的可能性面前都是无谓的。专业棋手其实是通过记忆数以万计的棋谱来训练自己的直觉,然后使用直觉来对弈,这一训练方式和神经网络的工作原理非常相似,这也是深度神经网络最终能够击败人类的原因。

更多关于神经网络信息可以参考此前发过的介绍 GPT 的文: https://t.me/laiskynotes/144

我还在学习 AlphaGo 的论文,更多笔记日后再更新。
前几日逛宁波博物馆时看到纪念戚继光的文字,称他为“守护沿海居民的英雄”。

但其实明朝时期的倭寇主要都是由中国人组成的海商(海盗)集团,因为明朝实施海禁,东南亚地区庞大的海商集团失去了生存空间,其身份也就从海商变成了海盗。

戚继光执行的是中央王朝实施海禁的政策,实际上是妨碍了沿海居民与外界互通有无的贸易往来,而这肯定会让沿海居民的生活受到损害。做个不恰当的比喻,拿前几年的疫情来说,戚继光就是一个执行铁血封城的大白,而倭寇就是那些顶着风险跑外卖的黑骑手。戚继光杀伐果断地执行了封锁,中央王朝当然会把他当成英雄来纪念,但是作为普通居民,恐怕会有完全不同的感受。

网上搜一下有很多对“倭寇主要是中国人”这一说法的攻讦,但是列举的论点多为万历朝鲜战争(庆长文禄之役),这是在混淆视听,因为朝鲜战争是丰臣秀吉发起的侵略战争,性质和东南沿海的倭寇是完全不同的。此外,还有人列举日本浪人侵扰朝鲜的例子,这一点在《倭寇:海上历史》一书中有提及。朝鲜率先实施海禁,然后遭到了日本海商集团的侵扰,“倭寇”这一词也来自于此。后来明朝也实施海禁,然后也遇到了中国海商集团的侵扰,而且直接沿用了“倭寇”这一称谓。但实际上“倭寇”是一个泛称,并不特指日本人,洋人来华也被称为“倭寇”。

《倭寇:海上历史》这书就是详细追述了倭寇史在历史上的出现与变迁。
https://youtu.be/EpMLAQbSYAw?si=t5IxWdWqSh0S9szH

《Age of Easy Money》对美国近数十年来的 easy money 政策的反思。

自次贷危机后,美国联邦储备局(FED)实行了大规模的量化宽松政策(Quantitative Easing, QE),即疯狂印钞,为大银行注资使其免于倒闭,这一政策在当年也被称为 Too Big to Fail。

这一政策的指导思想是政府可以在短期上发挥对经济的逆调控作用,当经济下行时,可以通过 QE 为市场注入血液;当经济过热时,可以通过加息来收紧货币。但是从过去二十年的经历来看,FED 的 QE 政策实际上无限制地鼓励了投机客的冒险行为,一旦大型投机客因为投机失败导致资金链紧张,FED 就会通过 QE 为其注资。这种政策导致了市场的不断泡沫化,也导致了美国经济的不断失衡。

更糟糕的是,如今回顾过去数十年的量化宽松,虽然为市场注入了大量低息甚至零息贷款,但是这些贷款并没有流入实体经济和基础设施,事实上几乎没有为美国带来任何实质性的建设。这些钱的很大部分实际上在金融市场空转,各个机构互相购买债券,互相借贷,互相投机,一场狂欢过后,除了通胀什么也没剩下。这也是当时美国人反感银行业,反对华尔街的主要原因之一,华尔街拿了 FED 救市的钱,却只管套利,而不是为美国经济做出实质性的贡献。这在片尾被称为“美国的政治缺陷,FED 可以印钞,却无法决定怎么花掉这些钱,华尔街可以花这些钱,但是华尔街的唯一目标就是套利”。

最后,Easy Money 的狂欢时代终将结束,接下来可能泡沫破灭的漫长回调。
话说前阵子每晚和家人吃晚饭时重看了火影忍者《Naruto》的主线剧情(700 集为止),也算是了却一个童年(青年?)时代的情怀。

实际上岸本齐史的剧本还是很有功底的,我觉得有一些值得称赞的地方:

1. 全剧没有精神失常的反派,甚至于没有严格意义上的反派。所有人都是出于自己的境遇,做出了自以为最好的选择。
2. 战力基本没有通货膨胀,至少 700 集以前基本维持了战力的平衡。
3. 这是一部基片,所有的 CP 都被拆了(甚至包括路人配角的夫妇),没有建立任何男女角色的感情线。(所有的感情线都是 700 集以后硬加的)。而且很容易看出来,作者不知道除了跪舔以外的男女关系…
4. 作者是个弟/兄控,每个人都有个深爱的兄弟。鼬对佐助的爱情表白在最后几十集里重放了大概有十次。
5. 鸣人感觉是个双相情感障碍

Ps. 哥哥早已洞察了一切,伊莲老师看完后去买了件鼬的体恤…
如果各位假日期间剧荒,又想看点有深度的东西,推荐一下《The Problem With Jon Stewart》,有两季,一共 14 集。

在美剧《The Newsroom》第一季的第一集里有一个经典片段,主角 Will McAvoy 抛出了一大段“惊世骇俗”的关于舆论误人和教化世人的理想。

我个人觉得,在美国的大牌主持人中,形象最接近 Will 这个理想的就当属囧司徒(Jon Stewart)了。尤其是他前些年在 Apple Tv 上主持的《The Problem With Jon Stewart》,非常深刻尖锐地揭露和讽刺美国当下的社会问题,每集挑选一个矛盾点,广泛采访各方的实权人士,然后用幽默辛辣的嘉宾对谈将这些问题揭露得淋漓尽致。

尤其是因为 Jon Stewart 的地位和影响力,他真的能直接访谈到那些手握大权的重要人物。这和 Youtube 上那些小成本纪录片经常被实权人物吃闭门羹完全不同,你能直接听到这些事情在最初的计划者眼中是如何被诠释的。
看完《Return To Space》,讲述 Elon Musk 关于让人类成为多星球文明(multi-planetary societies)的远景,以及 SpaceX 早期的挫折。

尤其重点讲述了 2020 年 5 月 30 日年龙飞船首次载人飞行的背后故事。这是自 2011 年 7 月 20 日 Atlantis 号航天飞机执行完 STS-135 号任务后,美国终于再次具备载人航天能力。(龙飞船的乘员中就有 STS-135 的成员)

希望能早日看到人类重归月球,甚至登陆火星。就算 Musk 有一万个缺点,但是空间探索的这个人类的边境上,这世上多如牛毛的富豪,确实只有他在拓展人类的疆域。
Laisky's Notes
实际上特德姜的《你一生的故事》讲述的就是这个观点。(特德姜的特色就是运用数学原理写科幻小说)。 当主角学会了七肢桶的语言后,就觉醒了时空意识。这也是为什么她会对女儿的死无动于衷,因为所有的事情都会发生,你只是观察到了时空的一个切面。 但这并不是说平行时空或世界线,因为不同事件的发生概率是不一样的。这个概率不是用来区分必然性和偶然性(所有事情都是必然),而是用来计算和结局的相似度,最相似的概率会作为过程显现出来。光会遍历所有的路径,但是你只能观测到最短路径。然而它确实遍历了所有的路径,因为你能观测到干涉现象。…
反正快放假了,且容许我继续就这个话题聊一聊。

《Stories of Your Life and Others》(你一生的故事)是一本非常好的书,然而改编的电影《Arrival》(降临)完全背离了原著的精神。但是这并不能说电影不好,实际上这电影在豆瓣上还有 7.8 分,并不低。

同样类似的不得不提菲利普·迪克(Philip K. Dick,简称 PKD)的《Do Androids Dream of Electric Sheep?》(仿生人会梦到电子羊吗?)所改编的《Blade Runner》(银翼杀手)。《Blade Runner》在近代取得了非常高的口碑,但是它的整个故事其实也完全背离了原著的精神内核。

《Blade Runner》以赛博朋克而闻名,但是 PKD 的一系列科幻小说的核心内核,我认为和《Stories of Your Life and Others》有着异曲同工之妙。都是在探讨世界的多面性,世界上各种各样的可能性都在同步发生,而我们只看到了其中的一小部分。

特德姜笔下的主角升华了,可以从超脱的角度看待这一切。而 PKD 的主角深陷其中,甚至于它自身的存在都在世界的多面性中变得模糊不清,世界似乎变成了一团浓雾,不同的可能性在其中交织,这座大楼上一会儿挂着纳粹的旗帜,一会儿又是美利坚的旗帜(《The Man in the High Castle》(高堡奇人))。

实话说,PKD 是唯一一个经常能把我惊吓到夜不能寐的作者,虽然他的故事并不恐怖,只是描述他所看见的世界破裂的缝隙。
Laisky's Notes
记录一下我最近对世界的一些新理解和 #脑洞 有兴趣的话可以评论区讨论。 这不是民科,而是基于所有已知科学理论和事实,对未知进行的合理推测。 实际上我认为这是除了照顾好自己外最重要的事情,寻求对宇宙的理解。 --- 无论是量子世界的叠加态,还是费曼的路径积分,似乎都预示了这么一个世界: 一切可能发生的事情都会发生,结果赋予过程以意义,事件概率不是发生的概率,而是其显现的概率。 所以观察者对于世界是无关紧要的,观察者只是让世界以观察者的方式现形。 --- 所以你犹豫或者焦虑一件事要不要发生是没任何意义的,所有的事情都会发生。…
实际上特德姜的《你一生的故事》讲述的就是这个观点。(特德姜的特色就是运用数学原理写科幻小说)。

当主角学会了七肢桶的语言后,就觉醒了时空意识。这也是为什么她会对女儿的死无动于衷,因为所有的事情都会发生,你只是观察到了时空的一个切面。

但这并不是说平行时空或世界线,因为不同事件的发生概率是不一样的。这个概率不是用来区分必然性和偶然性(所有事情都是必然),而是用来计算和结局的相似度,最相似的概率会作为过程显现出来。光会遍历所有的路径,但是你只能观测到最短路径。然而它确实遍历了所有的路径,因为你能观测到干涉现象。

电影《降临 Arrival》是完全背离了原著的内涵的,如果你要理会我在这里探讨的事情,需要阅读一下原著,而不是电影。我曾经对电影写过一篇恶评: https://movie.douban.com/subject/21324900/

next: https://t.me/laiskynotes/149
https://laisky.notion.site/Aligning-language-models-to-follow-instructions-0a1a1aca07174ad09b1cee55d4856b4f?pvs=4

经常在大模型领域听到 aligning(拉通对齐)这个词,此文就介绍了究竟是什么意思。

这个对齐指的是让 LLM 的输出,和用户的期望对齐。这是个很宽泛的描述,包括:

1. 遵循用户的指令
2. 遵循事实
3. 不要包含恶意信息

而实现对齐的方法为:

1. 找一群活人充当 labelers,编写参考回答,同时也为模型输出评分
2. 用 labelers 编写的回答来 fine-tuning 模型
3. 用 labelers 的打分数据,去训练一个 Reward Model
4. 用 Reward Model 对 LLM 进行强化学习

这套流程称为真人反馈强化学习(reinforcement learning from human feedback, RLHF)

最终得到的新模型,称为 InstructGPT,这个模型可以用缩小 100 倍的参数量,实现更好的输出。

GPT-3 本来有 175B 个参数,而 InstructGPT 只有 1.3B。这就是为什么 GPT 可以实现性能飞跃和大幅降价的原因,也就是后续的 turbo 模型。

Ps. 奇了怪了,我记得去年 Azure 透露 GPT 只有 2B 参数时还有一大群人震惊,其实 OpenAI 在这篇 2022 年 1 月的文章里就说了只有 1.3B 参数。
记录一下我最近对世界的一些新理解和 #脑洞
有兴趣的话可以评论区讨论。

这不是民科,而是基于所有已知科学理论和事实,对未知进行的合理推测。
实际上我认为这是除了照顾好自己外最重要的事情,寻求对宇宙的理解。

---

无论是量子世界的叠加态,还是费曼的路径积分,似乎都预示了这么一个世界:

一切可能发生的事情都会发生,结果赋予过程以意义,事件概率不是发生的概率,而是其显现的概率。
所以观察者对于世界是无关紧要的,观察者只是让世界以观察者的方式现形。

---

所以你犹豫或者焦虑一件事要不要发生是没任何意义的,所有的事情都会发生。
光永远走最短路径,不是长的路径它不走,其实光遍历了所有的路径,不然双缝干涉就不会存在。
所有的事件都会发生,但是在某一时刻只有一个事件会显形,这是由观察者的结局反推回去的所有的概率重合事件。

---

人们喜欢说“经历比结果重要”。
但是这个世界的物理基础不是这样的,经历是最不重要的,你其实经历了一切。结果是唯一重要的,一切的经历都是从结果反推而呈现的。
宇宙的观察者毫无意义,哪怕不同的观察者看到了完全不同的宇宙,宇宙也还是那个宇宙。

---

能量在空间上展开时会出现对称性破损,构成基本力和物质。
物质在时间上展开时也会出现对称性破损,成为热力学第二定律。
意识的存在意义是在无所不包的时空混沌中勾勒出一条轨迹。意识的某个必然结局可以反推出一整个发展轨迹。
一个水分子在海洋中的路径,这就是你我全部的人生。

---

产生了一个奇思妙想:

给一个物体施加加速度,可以阻碍它在时间上的展开程度,因为它在一段连续的时间内都持续获得能量。
这在宏观上就表现为时间压缩,持续获得加速度的物体的时间流逝会比其他物体更慢一些。
毕竟时间根本就不存在,只是意识的存在性幻觉。意识就是时间的方向性的表现形式。

next: https://t.me/laiskynotes/147
最近几天都在读这篇文章,作者是大名鼎鼎的 Stephen Wolfram,就是创建数学软件 Wolfram 的那位。

此文从 GPT 开始谈起,实际上回溯了神经网络的主线发展历程,从最基础的权重计算,讲到 n-grams 最终到 transformer 的 attention 机制。
虽然我多年前就学习过神经网络,但是有很多细节更多的是知其然不知其所以然,这篇文章读来让我有醍醐灌顶的感觉,把关键的部分的意义都讲清楚了。

作者还很清晰地阐述了神经网络的几个天然局限,这是人脑能轻松做到而神经网络只能望洋兴叹的:

1. 神经网络不是图灵机,没有计算能力,无法准确地完成任何计算步骤
2. 世界是无穷复杂的(irreducible computation、NP 复杂度),而人类的理论都是简化的近似。AI 只能通过人类的简化理论来学习。

但是这些局限并不是不可逾越的,比如 function calling 就赋予了 AI 图灵机的能力。

关于第二点,涉及到 Polany's Paradox,人类无法描述世界的复杂性。这至少有两个理解方式:

1. 人类的语言没有客观标准,其意义由社会共识所决定
2. 世界的复杂性无法被理论描述

所以,GPT 的成功,实际上并不预示着计算能力的重大进步,而是人类能力的“巨大退步”。GPT 用事实证明了人类的语言能力并不是 irreducible computation,而是背后存在一些简单的规则,而且这个规则被 GPT 学会了。

然而作者也提到,GPT 的技术进步某种程度上只是无数人不断尝试的结果,人们发现通过一些设计能得到更好的结果。但是为什么要这么设计,GPT 是如何理解的?人们仍然一无所知。与其说人们发明了 GPT,也许说人类发现了 GPT 更为合适。

作者还试图构建一个大一统的计算语言,来抽象一切的事物,同时赋予 GPT 可解释性。我直观上觉得,这是否就是当年罗素的分析逻辑?

整理了一篇博客文章: https://blog.laisky.com/p/what-is-gpt/
原文笔记: https://laisky.notion.site/What-Is-ChatGPT-Doing-and-Why-Does-It-Work-6d390e2e44eb40498bd8b7add36bcc94?pvs=4 What is GPT and Why Does It Work?
https://laisky.notion.site/Garbage-Collection-In-Go-Part-I-Semantics-500f4cd6c5a54eae9f455002d8c08d98?pvs=4

看到别人推荐的关于 Golang GC 的文,第一篇很有意思,后两篇有点水。

Golang 的 GC 使用三色标记法(tri-color),将所有的对方区分为 WHITE、GREY 和 BLACK 三色。BLACK 是需要保留的,GREY 是有待分拣,WHITE 就是可以清除的。

1. GC 启动后,将栈内所有的 root objects 都放进 GREY
2. 激活 write barrier,监听 GC 运行期间所有的写操作,将新的被引用对象放进 GREY
3. 遍历 GREY 中的对象,将其放入 BLACK。同时递归遍历这些对象所引用的子对象,也放进 BLACK。
4. 待 GREY 清空后,将 WHITE 中的对象清除。
https://pusher.github.io/tricolor-gc-visualization/

从 GC 的角度,可以分为三个步骤:

1. Mark Setup: 初始阶段,需要 STW,扫描所有的 root objects。
2. Marking: 遍历 GREY 的阶段,可以和用户程序并行执行。
3. Mark Termination: 最后阶段,需要 STW,清除 WHITE。

上面提到的 STW 就是 Stop The World,即暂停所有的用户程序,只执行 GC 相关的代码。这样虽然会导致用户程序的执行延迟,但是可以防止数据冲突。可以简单将其理解为全局锁。

Golang 给用户提供了两种微调 GC 的方式:

1. GOGC: 设置百分比,默认为 100,当内存翻倍时,触发下一次 GC。
2. GOMEMLIMIT: 设置堆内存峰值,当堆内存达到这个值时,触发下一次 GC。

通过微调这两个值,可以控制 GC 的频率。但是需要记住,微调 GC 的本质是在内存和 CPU 间进行 tradeoff。GC 对程序的延迟有两个部分:STW 的中断延迟、并行 SWEEP 期间占用 CPU 导致的性能下降。天下没有免费的午餐,增大 GC 的间隔并不会减少总延迟,非必要不用去调节这两个值。
狗屁通套皮站支持 gpt-4-0125-preview 了。顺带提醒一下使用 one-api 套皮的人,升级最新的 one-api 后,在 设置->运营设置 里手动检查一下倍率设置,gpt-4-0125-preview 的价格应该和 gpt-4-1106-preview 一样设置为 5。升级后很可能遇到未设置 gpt-4-0125-preview 倍率的情况,此时倍率会按照默认 50 计费,导致计费错误。
https://stackoverflow.com/a/72245072/2368737

学会一个前端的坑。如果你把高度设置为 100vh 试图占满浏览器的高度,这在桌面上没问题。

但是在手机浏览器上,浏览器的 navigator(地址栏)会占掉一点高度,而这个高度不会计算在 vh 里,结果就是你的 document 的实际高度会超出浏览器里的可视高度,然后你的页面就会在垂直方向上变成滚动(或者被截断,如果你将 overflow 设置为 hidden)。

这个恶心的现象在桌面版的 Chrome DevTools 里也无法调试,因为 Toggle Device Toolbar 模拟的 mobile 页面并不会包含 navigator。

在现代浏览器上,应该使用 svh 来获取 navigator 下方的,真实的页面可视高度。实测在最新版的 ios safari 和 chrome 上都可使用。
https://caniuse.com/?search=dvh
#FE
https://youtu.be/eUdIz21P7zE?si=blnO07kmDngoBBC1

走访了几家 all-american chain 的公司,介绍美国制造业复兴的愿景。

几个有趣的观点:
1. free trade 是个骗局:美国人获得了更便宜的商品,但是输掉了未来。中国的工人生活也并没有变好。
2. decoupling from China 政策不是美国的单方面施暴,而只是对等措施。中国才是那个多年以来一直以脱钩为核心国策的国家。
3. 振兴制造业成为了两党共识,两党的争议在于谁做的更好
4. 美国对制造业危机的觉醒来自于疫情,连口罩都需要依赖中国进口。
5. 制造业的最后一人不会是赢家,而是最后的输家。我理解这句话是说制造业会不执迷于给人类手工保留职位,同时要考量自动化的进步。

片尾结语,不是所有人都想成为金融家或程序员,人们需要一个多样性的就业环境,创造价值。
https://youtu.be/RFjAqth-EQk?si=2t6n0ybkfgkNrh6s

看了部关于 Nord Stream pipelines 爆炸案的纪录片,制作方是德国的 DW。

可以很明显地感受到,制片人基本上已经主观认定是乌克兰所为了。一个贴有乌克兰军人照片的护照持有者,租了一辆小游艇两个星期,这艘游艇足以实施这次袭击。而且,租借游艇的机构和金钱都来自于乌克兰。

但是,也有安全专家提示,你们这么轻易地调查就得出了这些线索,很可能是对方设下的圈套。比如故意留下乌克兰的蛛丝马迹,让你以为这是乌克兰所为。

而德国政府对北溪案件持严格保密态度,更让人怀疑是在故意隐瞒一些信息。

不过这案子难查的一个主要因素是,北溪管道实在太容易破坏了,甚至可以说任何一个有意向的组织,投入很少的资金,就可以完成。家庭作坊制造炸弹,能搞定 70 米海水的潜水员,租借一艘小游艇,足矣。
Telegram Channel