Reading Club | 算法和人生抉择:午饭到底吃什么?

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介:

午饭吃什么?去拔草楼下新开的餐厅,还是去对面那家常去的小馆子?

这可能是很多人每天面临的亘古选择题,也是我们每一天都在做一类特定的选择:选择已知的最爱还是未知的可能?

如何平衡这个选择不仅是我们纠结的日常,也是计算机学家半个世纪以来的研究对象。

春节前,大数据文摘启动了最新音频栏目——Data Reading Club,我们为大家推荐的书籍是Algorithm to Live by(生活中的算法),上一期我们跟大家探讨了算法与人生伴侣的选择——神奇的37%法则。

本周,我们继续聊聊【选择】这个人生中的重大话题。由来自杜克大学美女主播段天霖与大家分享:在选择时,如何衡量“坚守已知(exploit)”或者“探索未知(explore)”。

就像读书会小蒋所说:对于计算机来说,explore代表收集信息,而exploit是运用这些信息来达到一个确定的理想结果;在生活中,explore是我们对未知世界的探索,而exploit是享受已知的美好。

从这个意义上讲,认识一个新朋友、听一首新歌是explore,与家人团聚、听一首循环无数次的老歌就是exploit。仔细想想,生活中这两者总是共存的,但他们之间的平衡却是因人而异的。那么从算法的角度,这个命题是否存在一种最佳解法呢?

要回答这个问题,我们还是要从它的起源说起。

虽然,计算机科学家对于午饭吃什么有种有啥吃啥的佛系心态,但是,他们对于幻想怎么在赌场赚最多的银子倒是有极大的热情。

假设赌场中有一排未知预期收益的老虎机,只能靠投钱来以身试法,你要花多久时间来收集信息,又该在什么时候锁定目标发家致富呢,这就是Explore-Exploit的最经典案例,multi-armed bandit,多臂老虎机问题。

让我们从这个经典案例说起,看看历史上,不同科学家是如何选择的。

36fbc05fa388d7b6d8d72b5b0e6b309db1d2cc56

Win-Stay逻辑

也许你可以随机挑选一台老虎机,只要你在赢就一直盯住它,一旦输了就转投另一台,以此循环。

这是由哥伦比亚大学的数学家Herbert Robbins针对多臂老虎机问题提出的第一个解法: Win-Stay Lose-Shift。

这个解法中Win-Stay的逻辑很直观:如果你已经选择一台机器,那么如果它让你赢了,那只会让你更有可能继续选择这台机器;但Lose-Shift就有待推敲了:试想你认准的机器让你连赢10次,但在第11次输了,你真的会因为这一次的结果而彻底改换一个尝试对象吗?

就像你最爱的那家餐厅,你真的会因为某一次的某道菜没有那么好吃就不再去了吗?

抓住时机

假设我们考虑的时间是一个有限的区间,探索的价值是逐日递减的,且不说你新发现的选项到底是不是比你目前的最爱更好,就算你找到了新的最爱,已经用来explore的时间也意味着起码这一次留给你exploit的时间没有多少了。

反过来,有限时间里exploit的价值却是递增的。你截止这个月为止最爱的餐厅by definition就一定和你上个月之前所尝试过的餐厅一样好或更好。

所以时间的维度决定了我们的策略应当根据剩余时间而定:如果你还有大把的时间去explore或者exploit,那么尽情探索吧。

基廷斯系数

现在我们知道了interval是平衡explore/exploit的关键,同时它并不一定是一个具象甚至有界的期限,那么我们该如何将这种对于interval的认知融合到算法中呢?

Gittins Index回答了这个问题。

要理解Gittins Index 基廷斯系数,我们要先介绍一个经济学中常见的概念:time discounting,Gittins认为这种单位回报是呈几何递减的。

以选择餐厅为例,如果你认为你有1%的可能性某天会离开这座城市,那么一顿第二天晚餐的价值就应该是今天晚餐价值的0.99,依次递推。基于目前所收集的信息,Gittins Index为每一种情况都赋予了一个系数。

因此,你的众多选择瞬间变成一个明确的定量比较——谁系数高就选谁。

后悔值和最优值

1985年,提出Win-Stay Lose-Shift的那位哥大数学家Robbins时隔多年又带着加强版解法归来了。

这一次他提供了另一个看待这类问题的思路:在你做一个选择时,你不必纠结任何一个选项会给你带来什么,而是扪心自问,如果不做某个决定,你会有多后悔?

Robbins的新算法所做的将后悔量化,定义为实施某一特定策略所得到的回报与最大可能的回报之间的差值,就是选择那个将你的后悔值最小化的策略。

如何平衡?

不过人和机器终究还是不同的,我们并不会、也不需要总按照最佳策略生活。

6bc81d87eac4a3b60c2d76a2fc40599430a6dbae

面对这变幻不息的世界,我们能从这些算法中学到的,或许并不只是某一种策略,而更是一种新的看待选择与变化的方式:

人生的旅程中,刚刚启程的孩子正该尽情探索属于他们的无限可能,而年纪渐长的父母老人在我们眼里的固执己见,又何尝不是一种看过更多人生风景后的积累与沉淀。

二月已过、三月将来,新春伊始,不如就从今天起将这些新的体会付诸实践:探索一家新的餐厅,也挑战踏出你的舒适圈,或许渐渐你会发现,生活真的一天比一天更美好。

以上就是Algorithm to Live by第二章的内容主要内容,点击阅读原文收听大数据文摘喜马拉雅专栏音频《生活中的算法》

在这个崭新的专栏中,我们将陆续探讨这些你在生活中将要用到的算法。这些算法和观点将主要来自一本算法书籍Algorithm to Live by(生活中的算法),这本书被称为“the computer science of human decisions(人生抉择中的计算机科学)”。主播段天霖告诉我们,在杜克大学和斯坦福大学等学府的统计学和计算机系,这本书几乎人手一本,是一本难得引人深思的好书。

45336204b8aac4865a8100daad3141da9064600f

在这个新的栏目里,我们将从这本书出发,探讨算法和人生的关系。当然,其中所涉及的并不只是计算机科学,它与数学、工程学、认知科学、心理学、经济学都通通相关。

本书的两位作者除了本专业,也都在这些方面各有建树:Brian Christian是位布朗大学计算机与哲学双学位毕业的作家和诗人,Tom Griffith则是斯坦福统计与心理学毕业的加州伯克利教授,专攻computational cognitive science,计算认知科学。

ca211af3a18b8d48402837ce563ee9e13cef766b

不仅如此,这两位大神还专门找到当初设计这些计算机算法的科学家们,了解这些算法背后的故事。接下来的一段时间,我们将在这个新栏目中,跟随他们的脚步,探讨一些人类和计算机所共同面临的难题:

如何分配有限的空间、时间、注意力;如何应对不完整的信息和无限的未知......我们将了解到计算机是如何尝试优化这些问题的,而我们作为人类可以如何借鉴,又面临着哪些独特的挑战。

最后,希望这本书的旅程能让你我都能有所收获,并带着一种新的视角来审视取舍与抉择,这个人生中永恒的主题。 

当然,我们也欢迎对这本书和我们的栏目感兴趣的读者,加入我们的reading club,和我们一同阅读本书,发表你的评论,探讨相关话题。


原文发布时间为:2018-02-28

本文作者:文摘菌

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“大数据文摘”微信公众号

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
7月前
|
存储 算法 搜索推荐
告别低效编程!Python算法设计与分析中,时间复杂度与空间复杂度的智慧抉择!
【7月更文挑战第22天】在编程中,时间复杂度和空间复杂度是评估算法效率的关键。时间复杂度衡量执行时间随数据量增加的趋势,空间复杂度关注算法所需的内存。在实际应用中,开发者需权衡两者,根据场景选择合适算法,如快速排序(平均O(n log n),最坏O(n^2),空间复杂度O(log n)至O(n))适合大规模数据,而归并排序(稳定O(n log n),空间复杂度O(n))在内存受限或稳定性要求高时更有利。通过优化,如改进基准选择或减少复制,可平衡这两者。理解并智慧地选择算法是提升代码效率的关键。
82 1
|
2天前
|
算法 数据安全/隐私保护 计算机视觉
基于FPGA的图像双线性插值算法verilog实现,包括tb测试文件和MATLAB辅助验证
本项目展示了256×256图像通过双线性插值放大至512×512的效果,无水印展示。使用Matlab 2022a和Vivado 2019.2开发,提供完整代码及详细中文注释、操作视频。核心程序实现图像缩放,并在Matlab中验证效果。双线性插值算法通过FPGA高效实现图像缩放,确保质量。
|
1月前
|
算法 数据安全/隐私保护 计算机视觉
基于Retinex算法的图像去雾matlab仿真
本项目展示了基于Retinex算法的图像去雾技术。完整程序运行效果无水印,使用Matlab2022a开发。核心代码包含详细中文注释和操作步骤视频。Retinex理论由Edwin Land提出,旨在分离图像的光照和反射分量,增强图像对比度、颜色和细节,尤其在雾天条件下表现优异,有效解决图像去雾问题。
|
1月前
|
算法 数据可视化 安全
基于DWA优化算法的机器人路径规划matlab仿真
本项目基于DWA优化算法实现机器人路径规划的MATLAB仿真,适用于动态环境下的自主导航。使用MATLAB2022A版本运行,展示路径规划和预测结果。核心代码通过散点图和轨迹图可视化路径点及预测路径。DWA算法通过定义速度空间、采样候选动作并评估其优劣(目标方向性、障碍物距离、速度一致性),实时调整机器人运动参数,确保安全避障并接近目标。
147 68
|
1月前
|
算法 数据安全/隐私保护
室内障碍物射线追踪算法matlab模拟仿真
### 简介 本项目展示了室内障碍物射线追踪算法在无线通信中的应用。通过Matlab 2022a实现,包含完整程序运行效果(无水印),支持增加发射点和室内墙壁设置。核心代码配有详细中文注释及操作视频。该算法基于几何光学原理,模拟信号在复杂室内环境中的传播路径与强度,涵盖场景建模、射线发射、传播及接收点场强计算等步骤,为无线网络规划提供重要依据。
|
3天前
|
传感器 算法 物联网
基于粒子群算法的网络最优节点部署优化matlab仿真
本项目基于粒子群优化(PSO)算法,实现WSN网络节点的最优部署,以最大化节点覆盖范围。使用MATLAB2022A进行开发与测试,展示了优化后的节点分布及其覆盖范围。核心代码通过定义目标函数和约束条件,利用PSO算法迭代搜索最佳节点位置,并绘制优化结果图。PSO算法灵感源于鸟群觅食行为,适用于连续和离散空间的优化问题,在通信网络、物联网等领域有广泛应用。该算法通过模拟粒子群体智慧,高效逼近最优解,提升网络性能。
|
3天前
|
机器学习/深度学习 数据采集 算法
基于GWO灰狼优化的CNN-GRU-SAM网络时间序列回归预测算法matlab仿真
本项目基于MATLAB2022a,展示了时间序列预测算法的运行效果(无水印)。核心程序包含详细中文注释和操作视频。算法采用CNN-GRU-SAM网络,结合灰狼优化(GWO),通过卷积层提取局部特征、GRU处理长期依赖、自注意力机制捕捉全局特征,最终实现复杂非线性时间序列的高效预测。
|
1天前
|
算法
基于SOA海鸥优化算法的三维曲面最高点搜索matlab仿真
本程序基于海鸥优化算法(SOA)进行三维曲面最高点搜索的MATLAB仿真,输出收敛曲线和搜索结果。使用MATLAB2022A版本运行,核心代码实现种群初始化、适应度计算、交叉变异等操作。SOA模拟海鸥觅食行为,通过搜索飞行、跟随飞行和掠食飞行三种策略高效探索解空间,找到全局最优解。

热门文章

最新文章