APP下载

如何让电脑看图说话认识一只猫

2016-03-21魏忠

中小学信息技术教育 2016年3期
关键词:刘徽罗素有限元

魏忠

1903年,30岁的罗素讲了一个理发师的故事,瞬间让当时的数学家小伙伴们惊呆了。罗素说,一位理发师宣称要为本城市所有不给自己刮脸的人刮脸,结果这位理发师非常困惑,他要不要为自己刮脸呢?罗素提出的这个悖论,成为有史以来数学最大的三个悖论之一,动摇了当时的数学大厦的基石。

罗素所代表的这种作为科学的数学,似乎中国人一直没有发明出来。著名数学家吴文俊说,中国人似乎一直不在乎,与西方数学相比,中国人一直在乎的是算法数学,也就是我们所谈到的计算机数学。在数学领域,与当今计算机最适合、最现代化的数学,就是本文的主题——数学工程。

三国时期,曹魏有一个小官刘徽,按照木工经常制作圆的原理,把一个正圆按照正六边形开始计算,正12边形、正24边形,最后算到了正2072边形。刘徽与中国古代的工匠一样,永远不会纠结西方从古希腊就开始的数学哲学问题,而是从最接近圆的计算多边形不断接近正确答案,这就是远远领先的圆周率:3.1416。刘徽所采用的极限方法以及以后几百年中国古代数学家所发明的子程序、迭代、差分方程、方程组等,是对世界数学的巨大贡献;所采用的数学机械化和计算数学,深深影响了后面的数学,成为今天计算机数学的重要支柱。

图1 冯康通过“刘家峡计算”进而发展出了有限元方法

1964年,在中国黄河修一个很复杂的水电站:刘家峡水电站。这个地质水文复杂、湍流复杂的电站的形状,不仅是不规则的,而且是中空的。按照完全简化的矩形来计算,根本不能准确计算出水电站所受的力,工期因此严重推迟。

这个时候,中科院计算所的冯康出马了,他将复杂形状的电站切分成成千上万个小块,就像2000年前刘徽计算圆周率那样,不过这次冯康不仅是遇到把形状切小的问题,还要同时处理每个小块的受力和传导。与刘徽一模一样的思路,切的块越小,越接近真实。好在1964年,中国已经独立发明了原始的计算机,冯康按照当时的计算能力,把块切得尽量小。等到计算完成的时候,受力也就计算出来了。完成这个工程后,冯康把这种计算方法进行总结,在世界上第一次发明了有限元的方法。

今天,有限元成为计算机数据受力计算的基础方法,所代表的数字机械化路径已经成为工程数学的基石。今天我们买到很便宜、简单的宜家家具,承重较差的材料经过简单的连接就能承载很重的压力,这要感谢工程数学的模拟计算。

工程数学,让实践有了更多的创新的可能,科学家们的研究不都需要从阅读别人的论文开始,也不用等到科学原理的突破,就可以从工程或物理原理出发,取得巨大的突破。斯坦福大学的人工智能教授李飞飞,就是这样做到的。

深度学习理论,是在神经网络基础上发展起来的一门人工智能学科,发展到今天,已经在视频、图像和声音识别方面有了很成熟的应用。然而,在算法上改进,难度很大,效果也很不好。

例如,让一个机器识别一条毯子上卧着的一只猫,并写下这个句子甚至文章,是很难的。李飞飞经过对儿童认识猫的过程进行分析,发现小孩子从来不需要学习关于猫的概念和理论知识,而是见猫和狗的次数多了,试错试出来的。于是,李飞飞模拟小孩子的学习过程,通过重酬筹集了167个国家的5万人、 6万只猫、10亿张图片、2400万个节点、1亿4千万个参数、150亿个连接,训练计算机不断认出猫。顺便说一句,李飞飞采用的连接数,是尽可能逼近人类大脑的脑细胞数量了。如果说西方的概念图示是先描绘猫的概念,然后再认识猫,李飞飞采用的就是东方的数据工程方法,采用大数据方法让机器自己学会什么是猫,最后计算机写出了“一只猫卧在毯子上”这个句子。

图2 李飞飞的计算机根据图片写出了“一只猫卧在毯子上”

数据工程之所以越来越重要,是和信息技术的发展密切相关的。早期软件采用的是机器语言,后来发展成为独立于硬件的逻辑符号语言;随着软件应用的发展,后来数据库又独立出来。在软件发展的前30年,软件和管理信息系统应用效率受制于需求和开发效率,软件工程应运而生。基于互联网的软件开发,逐渐诞生了一种崭新的开发方法——MVC,通俗地讲,这是将业务逻辑、数据、界面显示分离的方法组织代码。这种方法又遇到像小米和微信那样快速迭代以适应互联网客户需求的开发,再加上物联网、互联网大量数据的产生,也使得数据科学和数据工程越来越重要。在IT产业中,数据科学家和数据工程师成为关键性的岗位和独立的专业,数据工程过程本身也逐渐独立于软件开发,成为大数据和数据科学应用的基础。用这个理解去简要分析一下李飞飞的计算机认识猫的逻辑:猫的图像的输入输出界面和展示效果、用什么最新的算法去认识一只猫、动物图片库和数据组织和更新方式,可以由完全不同的三拨人来完成,而数据科学家和数据工程师重点解决第三种数据工程的问题。

吴文俊院士生前曾预见,中国人的数学思维模式传统,更适合未来计算机迭代和机械化的数据工程时代,让我们拭目以待吧。

不过我要说的是,既然教计算机也得使用让计算机自主学习的模式,我们的教师教学生的时候,为什么还把从概念开始当作唯一的方式呢?

猜你喜欢

刘徽罗素有限元
罗素悖论
走近刘徽
浅谈古代数学家刘徽的贡献及其思想
刘徽切圆
罗素悖论的成因
罗素悖论的成因
CNKI期刊论文中刘徽研究论文计量分析*
罗素的亲知理论解析
磨削淬硬残余应力的有限元分析
基于SolidWorks的吸嘴支撑臂有限元分析