手机是我们每天都用的东西。手机里有很多软件,我们叫它们APP。这些APP让我们的生活方便,它们能聊天、购物、看新闻、付钱。你有没有想过,这些APP是怎么做出来的?它们为什么能这么聪明,知道我们喜欢什么,甚至能和我们说话?这背后有一个重要的东西,叫人工智能。
人工智能听起来很厉害,其实它的基础是数学和编程。高中的数学知识,比如函数、概率、统计,在人工智能里都能用到。我们举个例子。很多APP会给我们推荐东西,比如视频软件推荐电影,购物软件推荐商品。这个推荐功能就用到了数学。系统会收集我们的数据,我们看了什么,买了什么,点了什么赞。这些数据看起来很多很乱,但通过统计和概率计算,系统就能找出规律。它发现喜欢A电影的人也常常喜欢B电影,那么当你看了A,它就把B推荐给你。这里的计算,就是高中概率里的相关性和条件概率。
再举一个例子,手机里的语音助手。你对手机说“明天天气怎么样”,手机就能回答你。这个过程分几步。第一步,手机要把你的声音变成文字。这需要识别声音的波形,找出对应的字词。声音是连续的波形,计算机会把它切成很多小段,每一段用一个数字表示。这里用到了函数的思想,把一个连续变化的东西,用离散的数字点来表示。第二步,理解文字的意思。“明天天气怎么样”是一个关于天气的疑问句,时间是明天。程序要分析句子的结构,找出关键信息。第三步,去网络上找到明天的天气数据。第四步,把答案用声音说出来。整个过程很快,但每一步都依靠程序的计算。这些程序,就是人们用编程语言写出来的。
编程难吗?基础不难。很多高中生已经在学习编程了。编程就是给计算机下命令,命令它一步一步做事。比如,你想让计算机算一下全班同学的平均分。你可以这样告诉它:第一步,把所有人的分数加起来。第二步,数一数有多少人。第三步,用总分除以人数。这就是一个简单的程序。人工智能的程序更复杂,但道理是一样的,就是把人的想法,变成机器能执行的步骤。
我们生活中有很多简单的东西,背后都有科技。比如超市的扫码枪。它扫一下条形码,就知道商品的价格。条形码是一组黑白线条,宽度不同。扫码枪用光线扫描,黑色线条反光弱,白色线条反光强,根据反光的变化就能读出一串数字。这串数字就是商品的身份证,计算机查到这串数字,就知道是什么商品,卖多少钱。这个过程中,光线信号变成电信号,再变成数字信号,就是物理和信息技术的基础知识。
还有家里的智能音箱。你可以让它定闹钟、放音乐。它总是处于“听”的状态,但并不是把你说的话都传到网上。它只在听到“唤醒词”比如“小爱同学”之后,才开始录音并把后面的话传出去分析。这是为了省电和保护隐私。这个设计很巧妙,需要让设备能快速识别出特定的声音组合,这里就用到了声音模式识别的基础算法。
这些科技听起来高级,但构建它们的材料很普通。芯片是用沙子里的硅做的。软件是程序员一行行代码写出来的。代码用的是最简单的逻辑:如果怎样,那么就怎样。如果用户点击这个按钮,那么就打开下一个页面。如果温度传感器显示高于30度,那么就启动风扇。这些判断和反应,组合起来就成了智能。
我们每天用手机付钱。付钱的时候,手机会生成一个二维码。这个二维码是一幅方块图案,里面藏着你的付款信息。商家用扫码枪一扫,信息就传过去了,钱就从你的账户转到商家账户。这个过程很快,但背后有很多步骤保障安全。信息在传送前会被加密,变成乱码,只有支付宝或微信的服务器才能解密。加密和解密的方法,是数学里的一种运算,叫做非对称加密。它的原理是,用两个配对的数字钥匙,一个公开的叫公钥,一个自己保管的叫私钥。用公钥加密的信息,只能用对应的私钥解开。这样,即使别人截获了加密的信息,没有私钥也看不到内容。这个数学方法,是上世纪七十年代才被提出来的,现在保护着全球的网络交易。
科技不是魔法。它是一点点积累起来的。每一个好用的功能,都是很多人不断试验、改进的结果。早期的语音识别很差,说十句可能错五句。工程师们需要收集成千上万小时的人声录音,让计算机反复听,学习不同口音、不同环境下的声音特征。学习的过程就是调整程序内部的数百万个参数,让它的错误越来越少。这需要巨大的计算能力,也需要耐心。
作为高中生,我们能接触这些吗?完全可以。你不必一下子去弄懂最难的算法。你可以从观察开始。观察生活中的科技应用,思考它大概是怎么工作的。你可以学习基础的编程,比如Python语言,它很简单,能让你体会指挥计算机的乐趣。你可以用编程做一个简单的小游戏,或者一个帮你背单词的小软件。在这个过程中,你会用到数学,会用到逻辑。你会发现,原来科技的大门,是用这些最基础的知识敲开的。
很多有用的发明,起点都很简单。有人觉得手动调节台灯麻烦,就给它加上一个声音传感器,做成了声控灯。有人觉得每天浇花不好掌握,就做一个土壤湿度传感器,连接一个小水泵,自动浇花。这些就是最简单的物联网项目。用到的元件,比如传感器、单片机,现在都很便宜,网上就能买到。需要的知识,物理课上讲的电路,数学课上的计算,信息技术课上的编程,加起来就够了。
科技的目的,是解决问题,让生活更好。它不一定都是火箭卫星,也可以是让盲人安全行走的智能手杖,让农民准确知道田里该浇多少水的湿度探测器。这些项目离我们并不遥远。重要的是动手和思考。你可以从改进身边的一件事开始。比如,设计一个程序,自动整理电脑里的文件。或者,做一个电子秤,记录你种的小植物的重量变化。
知识是工具。数学公式、物理定律、化学方程式、编程语句,都是工具。就像用螺丝刀拧螺丝,用尺子量长度一样。把这些工具用起来,去创造一个小的新东西,或者弄懂一个旧东西的原理,这就是科技的起点。这个过程充满挑战,也充满乐趣。你会发现,那些改变世界的科技,最初就是从这些简单的想法和尝试中诞生的。