un

guest
1 / ?
back to lessons

计算机应用的三个阶段

Hamming的第5章以回顾开场:他在IBM客户培训活动上连续30年做同一个讲座,迫使他理解趋势而不是事实。准备同一个讲座反复需要他领先于领域,而不是仅仅保持在它上面。

他确定了计算机应用的三个连续阶段:

阶段1:硬件限制(第3章)。早期计算受到机器所能做的事情限制——内存稀缺,周期昂贵,可靠性不确定。应用选择以适应硬件为依据。

阶段2:软件限制(第4章)。随着硬件改进,编程成为了瓶颈。应用受到高效编码所限。

阶段3:经济与应用(第5章)。到了1980年代末,硬件足够便宜,软件足够强大,问题变成了:计算机应该做什么?经济与组织能力决定了哪些应用被构建。

这个阶段转变很重要:每个阶段都需要从实践者们那里获得完全不同的技能。一个从阶段1中从未更新他们认知模型的卓越硬件工程师在阶段3中变得无用。

最初的应用

计算开始于天文学计算,然后是物理和工程领域的'数值计算'。西班牙神学家雷蒙德·卢尔(1235-1315)建造了一个逻辑机器——计算应用于非数值推理的第一个应用。Jonathan Swift在《格列佛游记》(拉普塔岛)中对其进行了讽刺。Hamming将这一线从卢尔通过符号操作到将成为的机器学习。

技术接受曲线

任何主要的技术都遵循一个特定的轨迹:初始采用缓慢,加速,饱和。Hamming将其命名为S曲线模式。

任何技术的阶段1: 英雄展示。一小群热情的支持者展示了技术的有效性。进步依赖于个人才华和对不可靠性的容忍。

阶段2: 快速采用。技术变成足够可靠以供广泛使用。基础设施围绕它建立。标准出现。限制因素从技术转移到组织。

阶段 3: 饱和。技术已深入其可-addressable 市场。进一步的改进收益递减。新的 S 曲线开始为继任技术。

对于计算:阶段 1 = ENIAC 时期(1940s-1950s),阶段 2 = 主机商业化(1960s-1970s),阶段 3 = 个人计算机接近饱和(1980s-1990s)。Hamming 在主机从阶段 2 转换到阶段 3 的过渡期写作,而个人计算机仍处于其阶段 2。

等价的产品洞察(首次在第二章中提到)直接适用:在阶段 2,成功的计算机化产生等价的工作,而不是相同的工作。试图将现有工作流程进行计算机化的组织往往失败或表现不佳。

技术采用 S 曲线

定位在 S 曲线上

Hamming 的 S 曲线见解有一个实际意义:在阶段 1(英雄、实验性、容错率高)中成功的技能与在阶段 2(可靠交付、标准遵循、组织集成)和阶段 3(优化、成本减少、平台整合)所需的技能不同。

你使用或关注的技术。确定它目前处于哪个阶段(英雄展示、快速采用或饱和)。然后解释:在这个阶段,什么技能被奖励,下一个阶段将奖励什么技能——以及你如何为过渡做好准备?

当共享数据不起作用

汉明讲述了他在进行波音计算机中心高级审计时的一则故事。波音公司的管理层认为他们已经解决了协同设计:所有工程师都将他们的当前设计状态写入一个共享磁带。每个人都从这个唯一的真实来源读取。协调问题将消失。

它没有起作用。

原因在于:当一个团队进行优化研究(例如,调整机翼面积和形状以最小化阻力)时,他们需要一个 固定基线 以便对比测量变化。若是共享磁带不断更新,包含来自其他团队的更改,那么一个团队测量的改进可能实际上反映了其他人在他们迭代之间插入的更改——而不是他们自己的设计决策。

实际上,团队采用了这样的解决方案:当开始进行优化研究时,每个小组都会制作一个 快照副本 当前磁带的内容。他们在研究期间使用这个冻结的副本,忽略更新。只有在对新设计满意时,他们才会将其写回——然后与其他人都的更改进行协调。

汉明的结论: 在进行优化研究时,不能使用不断变化的数据库。 优化需要稳定的状态空间;可变的共享状态会引入虚幻的相关性。

数据库

计算机被推销为解决组织数据问题的方案。汉明对此表示怀疑。他提到航空预订系统是真正成功的(协调问题是真实的,数据模型简单,严格要求一致性)。但管理信息系统,承诺告诉经理“公司当前状态实时”却经常无法达到:数据模型过于复杂,数据质量太差,解释太模糊。

稳定基线与实时数据

波音公司的失败说明了汉明暗示的一个普遍原则:优化需要一个稳定的成本函数,评估在固定状态空间中。共享可变状态违反了固定状态空间的要求。

这个原则不仅限于软件。在任何优化过程中——商业策略、实验设计、模型训练——隔离研究中的变量需要控制其他所有变量。

在你的领域或工作中,描述一个情况,在这个情况下,一个共享、持续更新的数据集导致了波音所经历的同样的困惑:一个看似改进的东西实际上是由其他人更改引起的。这个情况说明了什么原则?在共享数据下的优化正确操作程序是什么?

模式识别是下一个前沿

到1993年,汉明已经将模式识别确定为计算的下一个主要挑战。他区分了两种类型:

经典模式识别:将输入与存储的模板进行比较。人脸检测、OCR(光学字符识别)、签名验证。这些问题在定义模板集后可以采用算法解决。

真实识别:一个孩子能够在从未看到大多数之前识别出"椅子",无论它是什么形状、材质、大小或朝向。没有明确的模板可以覆盖这种泛化。汉明认为这是一个开放的问题——类别模式匹配与真实识别之间的差距不是更多数据或更快的硬件的问题。它需要不同的基础。

他将这个问题表述为专家系统的失败:研究人员认为他们可以从专家那里提取决策规则并将其编码为程序。专家系统在狭窄的领域中工作,但在复杂的领域中失败,部分原因是人类专家使用他们无法表达的模式。多年实践积累的潜意识模式库无法通过面谈提取。

汉明的预测(1993年):真实模式识别将需要根本不同的计算方法。他指向了神经网络,但谨慎——他不相信当时的神经网络能够填上这个差距。

30年连续给同一个演讲

汉明描述了一种给他带来回报超过几乎任何其他职业实践的做法:连续给同一个演讲。

他在大约1960年被邀参加IBM客户培训活动。他选择给一个关于到2000年为止的计算机历史的演讲——一个他对其真实观点充满怀疑的主题,这迫使他发展出实际观点。他每年给这个演讲的变种两三次,持续30年。

他所识别的好处:

保持最新:连续给同一个演讲迫使他定期更新它。他不能给一个陈旧的演讲,不然在跟踪领域的观众面前他会感到尴尬。

趋势识别:更新过程迫使他关注趋势,而不仅仅是事件。过去一年的变化是什么,以及变化的方向?重复更新需要对领域的模型,而不是仅仅需要事实的目录。

公共演讲技巧:练习减少了恐惧和改善了发言。演讲时他不再害怕;通过反复而不是天赋,他成为了一个精通的演讲者。

人际关系:一个固定的主题建立了声誉。人们将他与计算趋势联系起来。邀请数量增加。

他的观察:他可以通过运气获得这个实践,但他创造了运气通过主动寻求演讲机会,然后发展出一种使用它们的系统性实践。

刻意练习与职业资本

汉明的30年讲座是将有意练习应用于知识工作的实例:一个系统化、重复的练习,具有反馈循环,随着时间的推移积累技巧。

结构:(1) 承诺在你知识的边缘进行一个主题;(2) 给一个讲座,这样就迫使你了解它;(3) 收到反馈(听众的回应、你无法回答的问题);(4) 更新讲座;(5) 重复。

每个循环都增加了一个模型。每次更新都迫使与新数据接触。每个听众问题都暴露了一个差距。在30年里,模型变得深入。

为你的领域设计一个'汉明讲座':在接下来的10年里,你可以重复给这个讲座,每次更新它,这样你就能保持最新、识别趋势并发展公共演讲技巧。命名主题,解释为什么这个难度适中(不太容易,不太难以更新),并描述第一年版本的讲座将涉及的内容与你预期的5年版本将涉及的内容。

连接硬件、软件与应用

第3、4、5章形成一个进程。汉明在三次演讲中构建了论证:

第三章(硬件):物理极限限制了机器能做的事情。三条定律——分子大小、光速、热——设定了无法通过工程去除的天花板。

第四章(软件):人类极限限制了程序能做的事情。为逻辑优雅设计的语言失败;为人类心理设计的语言生存。抽象层次累积,每层解决上一层的痛点。

第五章(应用):经济和组织极限限制了能构建什么东西。技术遵循S曲线。共享可变状态破坏了优化。模式识别仍然是一个开放挑战。

统一主题:极限在移动。实践者,如果他们更新他们的模型,关于当前的约束性限制是什么——并根据这些限制定位他们的技能——始终优于那些针对昨天的约束进行优化的人。

Hamming从30年演讲中吸取的职业教训:反复给同一场讲座强迫他理解趋势。机制不在于讲座本身,而在于准备循环:什么改变了,方向是什么,为什么?反复准备构建了一个模型,简单阅读无法达到。

什么是当前的约束性限制?

在Hamming的框架中,每个时代都有一个约束性限制:如果去除,它将最快地推动进步。在1940年代:硬件速度。在1970年代:软件能力。在1990年代:经济和组织能力。

在你的领域中,当前的约束性限制是什么。不带有通用的挑战——一个特定的限制因素,如果去除,将最快地提高领域实现目标的能力。然后:去除它需要什么,以及去除需要哪种Hamming的三个方法(硬件、软件、组织/经济)?