学习与考试
学习是由经验引起的相对持久的变化,而考试,一方面是对习得的知识与技能的掌握情况的测试,另一方面也是对能否进入下一阶段学习或工作的考核。虽然学习能力受个人的智力水平以及学习方法的影响,但一般而言,学习是没有捷径的;但考试却不一样,在应付考试的时候,确实存在一些捷径可走。且以我个人的经历举三个例子。
高中的时候,我的立体几何学得不是很好,对于如何解立体几何大题完全摸不着门路。然而有一天,我在一本辅导书中看到一种用空间向量解立体几何大题的方法,而且相当简单易学,做了几道类似的题,我就掌握了这个方法。随后在整个高中阶段,我就靠着这一捷径,在并不具备足够的立体几何知识的前提下做到了立体几何大题从来不丢分。
我本科是自考的英语专业,其中有一门课,叫《英美文学选读》。这门课应该是所有20多门课中最有价值的一门,同时也是最难的一门。教材中介绍了英国与美国的70多位著名的作家以及他们的代表作。我第一次没能考过,因为内容实在是太多了,不好把握重点。后来,我找了几份历年的真题,看过之后才发现,原来70多位作者当中,只有30多位会在考试中考到,这一下就把任务量缩减了一半。虽然难度还是挺大的,但第二次终于顺便通过了。我又一次找到了考试的捷径,同时也第一次意识到真题对于考试的重要性。
拿到本科毕业证之后,我就开始着手考研。专业课所涉及的内容不可谓不多,如果想全面的复习,时间肯定不够,只能有所侧重的进行复习。有了先前的经验,我开始反复地研究真题。哪些知识点会以选择题的形式考察,哪些知识点会以大题的形式考察,哪些部分的内容考试从来不涉及,可以忽略,哪些部分的内容频繁考到,必须重点记忆?经过反复地分析,我根据真题总结出了一份比较精简的笔记,并在考试中拿到了一个还算满意的分数。如果仅仅按大纲来复习的话,肯定会浪费很多时间。
从我个人经历来看,考试确实是有捷径可循,而这个捷径往往跟历年的真题有关。但是对于大部分考试来说,可用于分析的样本量太低,而且找不到客观的指标,只能通过自己的主观判断,因此在知识点的选取上难免会有一些偏差。但有一门考试却不存在这两个问题,既有足够大的样本量可供分析,又能产生客观的指标。很明显,这门考试就是大家“喜闻乐见”英语考试。
上大学之前,语数外三科同等重要;而上大学之后,大多数专业应该都不用学语文了,文科的一般也不用学数学了,只有英语,坚挺地为几乎所有专业所必学,并在很多学校作为毕业的条件之一。从这一点也可以看出来英语的重要性。学好英语不是一件轻松的事情,需要长时间的积累。虽然我恐怕不会再参加任何类型的英语考试了,但是未了将来的更好发展,我基本上保持着每天10K的英文阅读量。不过,应付英语考试就是另外一回事了,完全有可能出现我在备考《英美文学选读》时的情况。此外,我还想强调一点,我们这一辈子为了应付考试浪费了太多的生命了,也许功利地应付考试,反而倒是一种非功利的学习行为。
要准备英语考试,大部分人的第一反应应该都是要背单词!各个级别的英语考试都有那么几千到上万的单词需要背诵,绝大多数考生都或多或少地受到过背单词的折磨。背了忘,忘了再背,背了再忘,反反复复,没有休止。一方面,对单词的记忆会随着时间的流逝而消退,另一方面,几千个单词之间往往也会产生各种干扰,导致遗忘。如果需要背诵的单词量大大减少的话,情况就会好得多了。那现在的问题就是,各级别英语考试大纲中的那些单词,真的都需要背下来吗?
社会学中有个著名的80/20定律,即这个世界80%的财富都集中在20%的人手里。对于英语试卷这一定律可能也适用,即80%的文本都是由那20%最常见的单词组成。如果真是这样的话,那只需要原先五分之一的时间(也许更少,因为这时的干扰也更少),就足以应付英语考试了。市面上其实早就有了通过词频来排列单词供人背诵的参考书,但是这些书的销量似乎并不是很好,这大概是因为这些书只是笼统的把全部文本都拿来进行统计,不够细致,也没有针对性。如果能针对不同类型的试题,甚至针对这些试题的不同部分,统计出来词频,肯定会有更好的指导作用。
针对高考英语阅读题的文本分析
为了进行验证与分析,我从网上找到了最近9年的天津高考英语试题文档。我把其中的阅读部分复制了出来,按年份保存在了txt文档中,然后利用tidyverse和tidytext包,制作了两份csv格式句子库文档,其中一份是以全部阅读文本为基础生成的,另一份则只针对阅读题的题干而生成。现在先载入需要的包,并把这两份数据导入:
library(tidyverse)
library(tidytext)
library(pipeR)
library(magrittr)
library(knitr)
reading <- read.csv('reading.csv', stringsAsFactors = FALSE)
question <- read.csv('question.csv', stringsAsFactors = FALSE)
因为readr包中的函数对中文的支持不是很好,所以我这里使用了R自带的函数。先看一下这两份数据:
reading %>% head() %>% kable()
year
region
passage
sentence
sentence_low
2007
天津
A
The city of Rome has passed a new law to prevent cruelty to animals.
the city of rome has passed a new law to prevent cruelty to animals.