程序员思考《阿甘正传》中的”随机性“观点 —— PRNG&TPNG

这个周末又碰巧打开电影《阿甘正传》来看。

确实是经典高分电影,每次看的阶段不同、角度不同,感受大有不同。

记得之前的印像,比如是:阿甘被看作是个傻瓜、阿甘比较能跑、阿甘跟珍妮的激情戏这种。。。稍微表面一些。

这次最大的印象是:阿甘漫无目的的跑步、几次横穿美国、什么也不为,就是跑 ------ Just run。

最后突然就不跑了,想回家了。(感觉是他好友去世前的一句话在这个时候作用到他了)

然后最后结局在珍妮的墓前,说到(大致意思):

自己不知道生活是像妈妈说的那样,充满了 随机性 (生活就像打开巧克力盒子,不知道下一块是哪一个);还是像丹中尉说的那样,皆是 Destiny 命中注定(中尉责怪阿甘救了他,毁掉了他作为英雄世家战死沙场的荣誉);或许两者都有吧,或者两者会同时发生。

想想这一总结就是很好的回应了关于"生活中随机性"的疑问。

作为程序员常常取随机数、或者将随机应用到加密等等中,比如 random 随机,但 random 不过是一些假随机,官方来说叫做:PRNG ------ "伪随机数生成器",基于特定算法,用初始值(种子)计算,如果知道了算法和初始值,我们就可以重现这种随机,那这样不叫随机了。

至于像基于难以预测的物理现象生成随机数,比如电子噪声、放射性衰变等,这些被认为是 "真随机数生成器" ------ TRNG,可是:目前只是说人类还没有完全认知这些物理现象,如果在大海边捡贝壳的小朋友,这写现象背后是否真的也由某种算法,或者叫某种"Destiny"决定呢?未可知也。

也许两种都有!!

就像现在的 AIGC 也充满着随机性,比如 GPT 中的随机因素,它既有 PRNG,也有 TRNG:

  1. GPT 在生成文本时,会考虑每个可能的下一个词的概率。这个概率是基于模型训练时学到的语言模式。例如,在一句话的开头,"The" 可能比 "Antidisestablishmentarianism"(一种长单词)有更高的出现概率。

  2. 当模型生成文本时,它会从这些概率中"抽样"来决定下一个词是什么。这种抽样可以是完全按照概率分布来的,也可以通过技术(比如"温度调整")来增加随机性。温度高时,不太可能的词被选中的机会更大;温度低时,则更可能选择高概率的词。通过调整抽样策略,可以控制生成文本的随机性和创造性。

GPT 既不是像 TRNG 那样的真随机,也不完全是像 PRNG 那样的伪随机。这就是为什么有时候能给出我们出人意料但又合情合理的回答

如果是对于人物命运的设计,如果真有更高维度的设计者,应该也会结合一些可以预测的随机性、以及一些他们也难以预测的随机性(这种随机性可能是来自于比更高维度设计者还要更高维度的自然现象,所谓人外有人、天外有天),添加到命运的调试试剂中去。就像我们调试GPT一样。

所以,现在再次看完电影后,我太认同阿甘的这番话了:命中注定和命运的随机性二者均存在,我们能做的就是 "Just Run"。

相关推荐
知其然亦知其所以然1 小时前
MySQL8.x 面试高频题:为什么一定要有主键?99%的人答不全
后端·mysql·面试
程序员清风1 小时前
快手二面:Redisson公平锁用用过吗?他的实现原理是什么样子的?
java·后端·面试
PuddingSama2 小时前
Android 高级绘制技巧: BlendMode
android·前端·面试
PineappleCoder2 小时前
面试官你好,请您听我“编解”!!!
前端·算法·面试
moonlifesudo2 小时前
1.Deque和Stack的区别以及ArrayDeque、LinkedList这两个类的不同
面试
前端小巷子3 小时前
JS 打造仿腾讯影视轮播导航
前端·javascript·面试
大模型真好玩3 小时前
大模型工程面试经典(五)—大模型微调与RAG该如何选?
人工智能·面试·deepseek
绝无仅有3 小时前
面试之MySQL基础和事务实战经验总结与分享
后端·面试·github
绝无仅有3 小时前
面试经验之MySQL 锁与索引实战总结分享
后端·面试·github
在未来等你7 小时前
Elasticsearch面试精讲 Day 13:索引生命周期管理ILM
大数据·分布式·elasticsearch·搜索引擎·面试