在阅读完《数学之美》第二章,自然语言处理之后,对于数学在自然语言中的运用、展示的美感有了更切实的感想。
几十年前,人们对自然语言的研究尚且处于刚起步的阶段,对于人工智能的研究尚未成熟。就在1956年的夏天,28岁的约翰·麦卡锡联合几位伟大的科学家,召开了达特茅斯会议,这在人工智能发展的进程中起到了重大的作用。思索于人工智能、自然语言和神经网络如何运用到计算机,通过计算机进行处理。这一切首先就是得让计算机理解我们日常生活中的语言。
对于这个问题,首先得做的是两件工作,即分析语句和获取语义。在当时的时代,科学家们首先想到的是基于规则的句法分析,然后由于受到上下文语义分析的限制,以及面对复杂语句或者大量语句,计算机在计算的时候会生成庞大的二维语法分析树,即使是使用今天先进的计算机,对于一个句子也难免要计算几分钟。明显这是很不适用于实际处理巨额数据的情况。
在这个的基础上,科学家们提出了基于统计的句法分析,其实现的效果远比基于规则的句法分析来的好,无论是在时间复杂度还是在空间复杂度上。但在起初提出这个方法的时候,是不被许多科学家们认可,也是在多次的实证对比,才慢慢地取代了基于规则的句法分析。
说到感想的话,我首先是惊叹于数学的能力与魅力,那些看起来貌似很枯燥单调的数字在生活的各个方面竟有着如此大的作用,它可以将我们的自然语言映射为一连串的数字,通过对这些有向量、有维度的数字的处理,再经过一系列对应的解码便可以生成对应的我们所需要的自然语言答案。
归结到底,我们生活的方方面面的本质,其实就是一系列的数字的表现。学会对数字的处理,掌握好数学的相关知识,对我们认识生活的事物、解决生活的问题有很大的帮助。
再另外,读完这一章我也深刻地认识到科学的发展总是曲折但也总是向上的。从一开始的基于规则的句法分析到后来的基于统计的句法分析,再到如今火热的基于预训练的句法分析,方法是不断在完善发展的,一个新概念的提出总是会被前人所批判,尤其是对于有悖先前理论的概念,一开始总是会被质疑。但真正好的方法是不会被埋没的,相反会经历多重多次的磨练变得更加地值得信任。以旧思想为信仰的老科学家们便会被时代抛弃,但我们不能否认他们对科学发展做出的贡献。正是因为如此有了如此激烈的思想斗争,我们的科学才得以不断地发展进步。
基于大厂对代码书写的规范,本学期本人的主要编码规范:
1. 起名方面:不为了贪图方便起个简单的名字,而应该针对其在实际求解过程中的作用进行起名,要起得有意义,方便后续的代码检查;
2. 对于语法过长或者句子表达较长的句子,要选择性地进行删减修改,达到美观易懂的作用;
3. 采用必要的换行或者缩减,让代码的整体观感更加好,另外需要有空格的地方要添加上空格,让结构更加的整齐易懂;
4. 对于要反复调用的函数要放在同一个文件夹下的函数库中,以方便调用。