小明是高三上的学生,每天都需要做大量的练习题,一天他问前排的两个同学张三和李四,怎么做题才会更有效率。
张三说,做题要快,不会的题马上看答案,然后就做下一道。
李四听到后说,不对,做题要牢,每道题都要烂熟于心,不然不是白做了吗?
张三听后反驳道,不对,高三的时间有限,当然是尽可能接触更多的题,每道题都专精去做会非常浪费时间。
双方谁都说服不了谁。
小明听两人说的都有道理,这下更糊涂了,更不知道该如何做题了。
大家应该对上述案例有各自的看法,毕竟每个学生都有自己的做题方式。然而,案例中两人的做题方式却都是不对的,有极大的可能陷入两个典型的困境。
做题是一种通过归纳学习来提升泛化能力的方式,我们先来看看归纳学习是如何获得泛化能力(解决从未记忆过的新情况)的。
学习时,我们是假设已见过的旧情况和未见过的新情况都满足同一个客观规律,倘若我们拥有了这个客观规律,就可以用它来预测所有情况,包括从未见过的新情况。
那要如何找到这个客观规律呢?
归纳
我们知道这个客观规律一定也可以满足所有已见过的旧情况。归纳学习正是利用这一点,去建构一个可以满足所有已见过的旧情况,并希望该规律恰好就是客观规律。建构可以满足所有旧情况的规律的过程也叫做拟合,这些旧情况也叫做经验。
拟合
经验
比如,给你前三个数 1、3、7,让你猜第四个数是什么时,我们会建构一个同时满足 1、3、7 的通用规律,该过程就叫拟合,而 1、3、7 这三个实例就相当于经验。
又如,物理学家寻找新定律时,会做一系列的实验并记录结果,随后建构一个规律,让该规律符合所有已经记录过的实验数据,这个过程也是拟合。
容易看出,当建构完规律后,这些经验即使被遗忘了也没关系,并不需要记忆。但建构规律之前,必须要有经验,倘若没有经验,也就没有了建构规律的依据。
这便是为什么康德说「一切知识始于经验」。
但是,拟合并不能和学习划等号,因为拟合只能保证记忆,并不能保证学习。拟合只是我们在达成泛化目标时所使用的一种手段,能拟合经验的规律未必能泛化新情况,而泛化才是学习的目标。
在拟合时,会出现两种不理想的现象。
归纳不足
其中一个不理想的现象是:所拟合出来的规律连旧情况都无法满足,这一现象叫做欠拟合。
欠拟合
比如,在用 1、3、7 建构规律时,却建构出来了 k=2n−1(n代表位置,k代表数字),该规律就无法满足旧情况。
反映在做题中就是“脑中建构的规律连做过的旧题都不适用”。
以偏概全
另一个不理想现象是,拟合出来的规律可以满足所有旧情况,但却无法预测新情况,仅仅是个以偏概全的局部规律,这一现象叫做过拟合。
过拟合
比如,在用 1、3、7 建构规律时,建构出了 k=n2−n+1,可以满足所有旧情况,但第四个数字其实是 15,而用该规律所预测的结果却是 13,也就是不能泛化。
反映在做题中就是“脑中建构出了只存在于个别旧习题中的局部规律,只对个别旧习题有效,无法适用于新题。”
欠拟合很好解决,反复找,大脑的潜意识基本都可以找到一个能够拟合旧情况的规律。
最大的难题反而是过拟合,因为可以拟合旧情况的规律并不只有一个,无法保证拟合出的规律真的可以预测新情况。
对于过拟合的抑制,有两个基本思路。
一个是搜集更多经验。
比如,除了 1、3、7,若把 15 同时也搜集了,就有更大概率建构出能预测新情况的规律。
这也是为什么科学家在寻找新定律时会尽可能地搜集更多数据。
反映在做题中就是要做更多不同类型的题。
第二个是增加规律的通用性。
大家应该听过“若无必要,勿增实体”这一说法,也叫奥卡姆剃刀或简约法则,说的是“当有多个规律都可以满足经验时,要选择简单的、假设最少的那一个”,换句话说,奥卡姆剃刀就是一种认为“简单规律通用型更强”的建构偏好。
奥卡姆剃刀
简约法则
这也是为什么数学老师们会要求学生“若无必要,尽量不要以特殊方法或繁琐方法,而是通用方法来解题”。
案例中,张三和李四的做题方式,恰好是两个极端。其中,张三的做题方式容易让大脑自动构建出欠拟合的规律。因为这种极速且求量的做题方式,容易使练习题之间彼此孤立,大脑很难从中感知规律,慢慢会从“为建构规律而做题”变成“为了做题而做题”。
但李四的做题方式容易让大脑自动构建出过拟合的规律。因为强行要求自己记住每道做过的题,很容易让大脑建构出以偏概全的局部规律。更糟糕些则会迫使大脑直接去背题,还可能会使李四因小考好成绩好而沾沾自喜,但小考成绩好不是因为他学会了,只是因为他背住了,等到考新问题的大考时,问题才会暴露,会不利于学习的验证。
那么合理的做题方式是什么呢?
其实就是所有老师都强调过的「做完题要总结」。
不过,具体要如何总结,大家往往并不清楚,缺少一些细节,所以这里介绍一种双例对比法。
双例对比法
第一步,确定一个要学习的知识点。
第二步,先试着理解课本上讲解,也就是用指令学习的方式,确定一个大概。
第三步,再找出很多道该知识点的习题来做,也就是搜集该知识点的实例。
注意,做每道题都要经过完整的思考,不能一没思路就立马看答案,这是为了让大脑明确问题是什么,以便于让大脑做好自动归纳的准备。
到了第四步就是该方法的关键:当做完两道题后,停下来比较两道题中该知识点的共性和差异性,同时去再去理解课本上的知识点讲解,这一步就是总结了。
注意,在比较共性和差异性的时候,不必太过注重规律的寻找,因为大脑会自动完成这一工作,我们只需要确保提供给大脑充分长的感知时间和足够多情况就好。
第五步,做新题,来测试自己的理解,以此调整自己的理解。
随后,再重复第二到第五步,直到将自己的泛化能力提高到满意地程度为止。
注意,自己曾经做过的旧题也是可以拿来跟新做的题进行比较的,这样做还能极大地节约时间和提高效率。因为该方法只需要确保每次都有两道题可用来比较即可,不论是新做的题还是很久以前做过的题。
这个方法其实跟我们用 1、3、7 来推测下一个数字一样,之所以要两两比较,就是因为我们不会把 1、3、7 这三个例子孤立地来理解。
那么,当大脑所建构的规律已经可以泛化所有新情况时,是否就万无一失了呢?
答案是否定的,即使是完全掌握了同一个知识的两个人,也可能发挥出完全不同的功效,这便是下一期要讲的内容:知识的特性。