Claude Shannon 的“创新性思维”演讲:一个天才揭示如何变得具有创新性

写在前面的话:

克劳德·香农是信息论的奠基人,从某种意义上来说,是他开创了信息时代。人工智能也是信息时代的产物。在人工智能技术正越来越多地取代人类一些重复性的、低技能含量的劳动的趋势下,如何使我们自身不被智能机器替代,取得一番成就,是一个值得每一个人思考的问题。这其中,相信创新性的重要性不言而喻。博主自认为创新性比较缺乏,偶然在上网时浏览到一篇关于香农“创新性思维”演讲稿的文章,觉得写得很好,对培养创新性思维有很好的指导意义,故此把它翻译过来,以此勉励自己,也希望能给更多人以启发。

香农“创新性思考”演讲手稿

创新性思维

Claude Shannon
March 20, 1952

只有很小比例的人群产生了重要想法中最大的比例。这与英国数学家图灵提出的一个想法类似,即人类的大脑就像一块铀,如果它低于关键的某一位置,并且向它射击一个中子,那么额外的更多就会通过影响产生。它导致了非常爆炸性的效应,增加了铀的大小。图灵说这就像人脑中的想法。如果你将一个想法投射到大脑中,有些人会得到一半的想法。还有其他人超越了这一点,他们为每个想法提出两个想法,这些人是超越曲线拐点的人。我不想在这里听起来自负,我不认为我超出了这条曲线的拐点,我也不知道当今有谁超过了。但我知道有些人曾是。举例来说,我认为任何人都会同意牛顿将会处于这条曲线的顶端。当你认为在25岁时他已经产生了足够的科学,物理学和数学知识来使10到20个人出名 - 他发明了二项式定理,微积分,万有引力定律,运动定律,白光分解等理论。

现在是什么能让一个人达到曲线的这个部分呢?基本条件是什么?我认为我们可以列出三件对科学研究或任何发明,数学或物理学或其他任何方面都非常必要的事情。没有这三者中的任何一个,我认为都无法超越曲线拐点。

第一个条件很明显——练习和经验。你不能指望一个律师,不管他有多聪明,都可以给你一个新的物理学理论或数学或工程学。

第二件事是有一定的智力或天赋。换句话说,你必须有一个相当高的IQ来做好研究工作。我认为没有任何一位优秀的工程师或科学家IQ是在100以下的,这是人类的平均水平。换句话说,他必须要比这个更高。这个房间里的每个人都高于此(指贝尔实验室里的人)。我们可以说,这是一个环境问题;而智力是一个遗传问题。

光有这两个我认为是不够的。我认为这里有第三种成分,第三种成分正是成就了一个爱因斯坦或一个牛顿的成分。因为缺乏一个更好的词汇,我们会称之为动机。换句话说,你必须有某种驱动力,某种想要找出答案的欲望,以及想要弄清楚是什么使得事情发生的欲望。如果你没有这些,你可能拥有世界上所有的训练和智慧,但你没有问题,你也不会去寻找答案。这是一个很难做到的事。这可能是一种性格的问题;也就是说,可能是早期训练的问题,幼时的经历,在科学研究的方向上是否有动机。我认为,在浅层次上,它是几样东西的混合使用。这根本不是任何深入分析的尝试,但我的感觉是,一个好的科学家有很多我们可以称之为好奇心的东西。他想知道答案。他只是好奇,事情是如何发生的,他想知道问题的答案;如果他看到了想法,他想提出问题,他想知道那些问题的答案。

这就是不满足的想法。在这里我并不是指对世界的悲观不满 ,我的意思是建设性的不满足,即这个想法可以用文字来表达,这没问题,但我认为事情可以做得更好。我认为有一个更好的方法来做到这一点。我认为事情可能会有所改善。换句话说,当事情看起来不太正确时,总会有轻微的不悦;我认为对现状的不满是优秀科学家的关键推动力。

我要说的另一件事是在看到好结果或达到想要结果的方法,工程师的设计,设备等时的乐趣。我从提供一个定理中得到了巨大的乐趣。如果我花了一个星期左右一直试图证明一个数学定理,并且我终于找到了解答,那么我会很高兴。我也会从看到了一个聪明的方式去做一些工程问题,一个使用了很少量的设备且明显获得了很多结果的巧妙的电路设计中获得巨大的乐趣。我认为就动机而言,它可能有点像Fats Waller谈论摇摆音乐所说的 - “要么你已经得到它,要么你就没有”。如果你没有得到它并且你不想知道那种答案的话,你可能不应该从事研究工作。虽然没有这种动机的人在其他领域可能会非常成功,但研究人员应该有一个非常强大的动力来寻找答案,强大到他不会在乎是否是已经到了5点钟- 如果有必要,他愿意通宵和整个周末工作以找出答案。现在好了,假设一个人这三个条件都足够满足,是否有任何他可以用于思考以获得研究工作答案或者更一般的找到问题答案的实际的技巧?我认为有,我认为它们可以在一定程度上进行归类。你可以列出一些技巧的清单,我认为它们会非常有用,所以我会给出一些我认为或者有人向我提出的建议。我认为如果有意识地将这些应用于需要解决的各种问题,在许多情况下,你会找到比通常更快的解决方案,或者找到之前你可能根本找不到的解决方案。我认为好的研究人员无意识地应用了这些技巧;也就是说,他们会自动完成这些事情。如果他们进入到有意识地思考中,那么会尝试这种可能会更快的方法,尽管我无法记录这种说法。

我可能会讲的第一点就是简化的思想。假设你有一个要解决的问题,我不在乎是一个什么样的问题 - 一个设计的机器,或一个物理理论的发展,或一个数学定理证明,或类似的东西 - 一个非常强大的解决这个问题的可能方法是试图消除除了基本要素之外的所有东西;也就是说,将其规模缩小。几乎所有遇到的问题都会被各种各样的无关数据混淆,如果你可以将这个问题简化为主要问题,你可以更清楚地看到你想要做什么,并且可能找到解决方案。现在,通过这样做,你可能已经剥去了后面的问题。你可能已经简化了它,甚至不像你开始的问题;但通常如果你能解决这个简单的问题,你可以在这个解决方案中添加改进,直到你回到你开始使用的解决方案。

一个非常相似的机制是寻求相似的已知问题。我想我可以用以下方式从原理上来说明这一点。你有一个问题P,并且有一个你可能不知道的解决方案S。如果你在自身从事的领域有经验,你可能会知道某种类似的问题P’,它已经被解决并且有解决方案。所有你所需要做的就是找到从P’到P的类比和从S’到S的相同类比,以便回到给定问题的解决方案。这就是为什么一个领域的经验如此重要的原因,如果你在一个领域有经验,你将会知道成千上万个已经解决的问题。你的精神矩阵将会被P’s和S’s填满,你可以找到一个可以接近你想要解决的P的P’并转到相应的S’,以便回到你之后的S。在任何一种精神思考中,进行两次小跳跃似乎比一次大跳跃要容易得多。

对于给定问题的另一个方法是尝试以尽可能多的不同形式重新审视它。改变词,改变观点,从各个角度来看它。完成之后,你可以尝试同时从多个角度审视它,也许你可​​以深入了解问题的实际基本问题,以便你可以将重要因素关联起来并得到解决方案。要真的做到这一点很难,但重要的是你要做到这一点。如果你不这样做,很容易陷入思维困境。你从一个问题开始,一直绕着它兜圈,如果你跨过某一点,也许你就清楚了;但是你不能从某些心理障碍中摆脱出来,这些心理障碍把你困在了某些看待问题的视角上。这就是为什么很多时候,对于某个问题来说新人有时会看到问题后找到解决方案,而你努力工作数月却仍无果。你已经陷入了思维困境,这时有人进来并从一个新的角度看待它。

我认为另一个有助于研究工作的思维技巧是想法的推广。这在数学研究中非常有用。典型的数学理论以如下方式发展:总有人在N维情形下证明它前先把它放在二维情形下讨论,或者如果它是某种代数的形式,他会在更普遍的代数领域处理它;如果它是在实数领域,他会把它转换到普遍的代数领域。如果你只记得这样做,这实际上很容易做到。如果你找到了答案,那么接下来要做的就是问问你自己是否可以推广这一点 - 我是否可以做出同样的更广泛的陈述。这里,我认为,就工程而言,也是一样的。正如你所看到的,如果有人以一种聪明的方式来做事,应该问自己:“我能否以更一般的方式应用同样的原则?我是否可以用这里描述的同样聪明的想法来解决更大的问题?有什么地方可以使用这个特殊的东西吗?“

现在我想指出的另一点,也是我经常在数学工作中遇到的是问题的反向思维。你试图在前提P的基础上得到结论S但你无法做到。那么,把问题反过来,假定S是给定的成分、公理或问题中给定的数,你尝试得到的是P。设想情形是那样的,然后你会发现在那个方向相对更容易解决问题。我想在设计工作中会发生同样的事情。有时候我有过设计各种计算机的经验,我想从某些给定的数量中计算出某些数字。这恰好巧好发生在一台玩取物游戏的机器上,结果看起来相当困难。如果需要相当多的继电器来完成这个特定的计算,尽管它可以完成。但后来我得到了这样的想法,如果我把这个问题倒过来,就很容易做到了。如果给定的和要求的结果已经互换;这个想法比第一种设计简单得多。这样做的方式是通过反馈来实现的;也就是说,从所需的结果开始并将其运行回去直到匹配给定的输入。


总结:
香农在这篇演讲稿中指出了具有创新性思维的三个必要条件:
1. 练习和经验
2. 较好的智力和天赋
3. 强烈的动机和好奇心

此外,香农还归纳总结了一些培养创新性思维的tricks,包括对问题的简化、利用类比迁移思想寻找与原问题相似的已解决的问题、从多角度看问题、想法的推广以及逆向思考等。

这些方法都很简单,但要将它们真正运用起来却并非易事,需要勤于思考,敢于让思维跳出舒适区,与大家共勉!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高能:Go语言具有出色的能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高能的服务器和分布式系统时具有天然的优势。 安全:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高能:Go语言具有出色的能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高能的服务器和分布式系统时具有天然的优势。 安全:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高能:Go语言具有出色的能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高能的服务器和分布式系统时具有天然的优势。 安全:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高能:Go语言具有出色的能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高能的服务器和分布式系统时具有天然的优势。 安全:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值