学习,从其本质上讲,是人类自然的求知欲的延伸,是对未知领域的探索和对已知知识的深化。如果说学习是一个困难和痛苦的过程,那么这种经历往往是由于我们所使用的方法不当或资源利用不足所导致的。
老子在《道德经》中提到:“道法自然”。这句话可以解释为“遵循自然的法则”。将这一思想应用于学习,我们可以得出学习应该是一个与人的天性和认知方式相协调的过程。我们不应该逆自然而行,强迫自己用不合适的方法来吸收知识,而应该顺应自己的认知习惯,寻找最适合自己的学习方式。
学习,从其本质上讲,是人类自然的求知欲的延伸,是对未知领域的探索和对已知知识的深化。如果说学习是一个困难和痛苦的过程,那么这种经历往往是由于我们所使用的方法不当或资源利用不足所导致的。
老子在《道德经》中提到:“道法自然”。这句话可以解释为“遵循自然的法则”。将这一思想应用于学习,我们可以得出学习应该是一个与人的天性和认知方式相协调的过程。我们不应该逆自然而行,强迫自己用不合适的方法来吸收知识,而应该顺应自己的认知习惯,寻找最适合自己的学习方式。
二八原理(也称为“80/20原理”或“帕雷托原理”)最早是由意大利的经济学家帕雷托提出来的,关于这个原理的详细介绍请看“这里”。通俗地说,就是【因果的不对称】。20% 的原因导致了 80% 的结果;而其它 80% 的原因只产生 20% 的结果。当然,这里提到的“二八开”的比例不是绝对的,从“四六开”到“一九开”都有可能。
为了给不了解它的人一点感性认识,我举几个例子:
少数有钱人掌握了社会的大部分财富(帕雷托就是从财富分布中发现该原理的)
公司里大部分的销售业绩由小部分的销售人员创造
地毯的大部分磨损集中在少数几个地方
大部分开发人员只使用少数的编程语言,而大量的编程语言几乎没人用
首先,这个原理的关键处就在于它挑战了传统的理念。比如:小时候老师经常教导说:“一分付出一分回报”。用数学的术语讲,就是付出和回报是呈线性相关的。很多人受此影响(可能是潜意识的影响),都习惯于平均分配时间、精力来处理问题。结果就导致我前面所说的投入很多,回报很少。因此,要运用二八原理之前,你先得改变自己头脑中的思维定势,要以【不平等】的观点来看周围的问题。
考研其实是一个“田忌赛马”的游戏,你的目标是获取全局的最优,要把注意力和精力放在最重要的东西上(那些常常考察的知识点、以及如何保证对于这些题目不出错),而不是花了很多时间去研究那些冷门知识点,这就好像用自己的上等马与别人的劣等马去比赛,最后是拣了芝麻丢了西瓜(芝麻你也不一定能捡到,因为冷门知识点由于练习少,所以能容易遗忘)。
回到考研,对于不同的知识点,我们需要学习到不同的层级:
这正是本教程的核心理念所在。我已经按照内容的重要性进行了标注,从而使你能够根据个人学习需求和目标分数预期,灵活地调整对各个知识点的复习深度和投入强度。你可以优先掌握核心概念和高频考点,同时根据时间和能力,选择性地深入那些较为复杂或者不常考察的领域。
对于考研复习,我常见到以下的学习模式:
第一种方式就如第一点所说,没有抓住主要知识点。第二种方式的问题在于学习与实践脱离,考研复习的目的就是在考试中获得好成绩,所以在平时学习过程也也要和真题结合。并且,从认知科学的角度来说,做题是最有效的学习策略之一。做题是一个主动检索的过程,你花费的心思越多,收益就越多。
一个更高效的复习策略是基于历年真题来规划。你可以尽早地去尝试一下往年的真题,观察一下题目的风格,尝试性地做一下题目以判断自己对于知识点的掌握还差多少火候。然后在后续的复习过程中针对性地加强薄弱的部分,并且结合其他习题去深化自己对于相关知识点的理解。
我的复习经验更为极端一些,在还未开始书籍复习之前,我尝试了几套408的早年真题。尽管我的成绩并不理想,只有六七十分,但这个过程使我清楚地认识到了自己的薄弱环节和哪些内容是复习的重点,我发现这种方法显著提高了我的复习效率。
获取真知的唯一途径是通过实践。 —— 爱因斯坦
我听说然后忘记了,我看见然后记住了,我去做然后理解了。—— 本杰明·富兰克林
实践出真知,如果你只是一直看课本的话,你永远无法深入地理解知识,你需要去基于实际的场景或题目,主动地去应用这些知识,而不是被动地一直摄入更多的知识,才能真正掌握这些知识。
在过去,我接受过一些同学的咨询。他们经常表示对某些知识点存在困惑,并希望我能提供解答。对此,我常常会反问:“你在这个知识点的哪个部分感到困惑?”有趣的是,部分同学竟然难以明确他们的困惑之处,而只是希望我能重新讲解整个知识点。
当遇到这种情况,我会建议他们先明确自己的疑惑,再来咨询我。令人意外的是,很多同学在明确自己的疑问之后,再经过一段时间的自学,竟然能通过自主学习找到答案,并解决问题。
根据我的观察,这些同学大多处于“有意识的无能力”阶段:他们知道该知识点的用途,但对其仍然只有片面理解,缺乏全局的认识。
通过主动提问,他们实际上是在连接大脑中分散的认知片段,逐渐深化对知识点的理解。我认为,这一过程虽然挑战重重且消耗大量的时间和精力,但通过主动提问和自我探索,同学们能更加稳固地掌握这个知识点。
在整个过程中,使用语言来明确和表达你的思考是关键。例如,当你在学习时,大声说出自己的理解和疑问,这可以帮助你更加清晰地看到自己的思维过程。同样地,当你“扮演”教师的角色时,口头传授知识将进一步深化你对主题的理解。
语言在学习中的角色
要达到最高的学习效率,深入了解自己是关键的一步。首先,要明确自己更偏好哪种学习媒介,是文字阅读、视听材料,还是实践操作?哪种方式能够最大程度地激发你的好奇心和学习动力?你是适合长时间专注在一门科目,还是每天将时间分散到不同的科目?在学习过程中,你还需要反思自己常犯的错误和盲点,是理解性问题、应用问题,还是记忆方面的短板?
每个人都有其独特的学习特点和习惯。所以,寻找适合自己的学习策略远比盲目跟随他人更有价值。只有真正了解并适应自己的学习风格,才能达到事半功倍的效果。过于依赖固定的学习模式或是随大流,可能会让你看似付出了很多,但实际上收获甚微。
因此,个性化的学习策略才是关键。你应该根据自己的情况,量身打造学习计划,而不是机械地跟随大多数考研大军走进图书馆或教室,过着那种看似很努力,题目刷了一道又一道,课本读了一遍又一遍,但是实际上不高的效率复习生活。高效学习并不仅仅是时间的长短,更多的是如何有针对性、有策略地利用这段时间。
比如我在当年就总结出自己的学习特点:
在认知科学中人对于知识的理解被分为四个阶段:
这个阶段不要局限于使用课本来进行学习,尤其是国内的课本,国内的课本对于很多知识的讲解都是基于文字的,没有例子,没有实际的场景,大多数是只用只用干巴巴的文字来表述“作者自我的逻辑”,国内写书的老师大多只是为了完成任务,混绩效赚钱,并不从学生以及初学者的角度出发来编写教材,所以书常常看起来像八股文一样,晦涩难懂。
使用这些资源来学习常常会让你怀疑人生,你会觉得是不是自己智商有问题,难以理解这些问题。诚然,我承认不同人在学习这些抽象知识时会有天赋上的差距,但是更重要是 我们学习的方式以及所用的资源,学习知识的过程不应该是困难重重的,应该是循序渐进的,从简单到复杂的,多维度的。
以下是笔者在过往咨询经验中总结的一些经验,如何快速地对完全陌生的知识建立起直觉:
WHAT
,明确这个知识点的实际应用或其存在的目的,这可以为你的学习过程提供清晰的导向。在WAHT这个阶段,你可能会询问如下问题(以cache的学习为例):
cache是用来干嘛的?
cache为不同映射方式的区别是什么?
cache的结构是什么样的?
这个阶段在我看来也是最困难的,处于“有意识的有能力”时,你的认识是模棱两可的,有时候是说不清道不明的,这个时候你可以说具备了理论上的知识,但是对于如何将这个知识实际利用是毫无头绪的。
以下是笔者的一些经验,如何进入到第三个认识阶段:
HOW
,不同于“what”的是,“how”更加注重实际操作和应用。简单的记忆并不足以掌握如何操作或实践。你需要培养分析和推理能力,并学会有效查找和使用相关资料来帮助解决问题。在HOW这个阶段,你可以询问如下问题(同样以cache的学习为例):
○ cache是用来加速地址读写的,所以从一个物理地址到读取cache中的内容,具体是如何进行的?
(可以包含如下子问题)
○ 如何去通过地址去判定应该访问哪几个cache块?
○ 对于不同的映射方式,如何判断是否命中?
○ 如果没有命中会怎么样,写策略在这个过程中充当什么作用?
在 “有意识的有能力” 这个阶段,你已经可以使用知识去解决问题,但是仅仅是解决问题而已,有的时候这个过程是机械化的,遇到一些新的问题你就可能有一些不知所措了。
进入“无意识的有能力”这个阶段,需要你对于知识有一个更高维的认知,可以通过如下阶段实现:
费曼学习法 是一种与语言使用紧密相连的高效学习方法。以下是该方法的四个核心步骤和它如何利用语言深化知识理解:
WHY
,思考为什么这样实现,采用其他的方式设计会怎么样。并且尝试与其他领域的知识或技能结合,这样可以加深对当前知识的理解,也可能导致新的发现或创新。在WHY这个阶段,你可以询问如下问题,尝试将不同的知识结合起来:
○ cache的不同映射方式有什么优劣
○ cache相比于主存的关系和TLB相比页表的关系有什么联系?TLB结构和cache有什么类似之处?
TLB也可以使用像cache一样的映射方式么?
○ 操作系统使用虚拟地址访存,从 TLB ----> 页表 ----> cache ----> 内存,这个过程具体发生了什么?
如果你还不熟悉艾宾浩斯记忆遗忘曲线,请允许笔者在这里为你介绍一下:
人类的遗忘曲线是由德国心理学家赫尔曼·艾宾豪斯(Hermann Ebbinghaus)于 19 世纪末提出的概念,用来描述人们在学习新知识后随时间逐渐遗忘的情况。这一概念对于理解记忆和学习过程中的遗忘现象非常重要,也对制定有效的学习策略有着重要的指导意义。
遗忘曲线的主要特点包括以下几点:
遗忘曲线的重要性在于它提醒我们,学习仅仅是获取信息的一部分,而记忆和巩固知识同样重要。
我想首先说一下我理解的 408 的复习难点:
接下来我会介绍 anki 这款程序,并且说明使用 anki 如何可以解决上述问题,然后结合我自己的使用经历来阐述如何可以更好地使用该软件。
Anki 是一款非常流行的开源记忆卡片应用程序,旨在帮助用户更有效地学习和记忆各种知识。Anki 的名称源自日语单词"暗記",意为"记忆"或"记住"。它的主要特点是使用一种名为"间隔重复"的记忆技术,通过定期重复学习材料,以帮助用户更容易地记住信息。
Anki 以词条的方式记录信息,词条包含正面和反面,正面记录问题,反面记录答案。
Anki 中的算法可以按照艾宾浩斯记忆遗忘曲线为你安排复习进度,在每次打开答案时,你会有四个选项:
Anki 会根据你的选项为你安排下一次复习进度,安排的过程是根据 Anki 内置的算法,算法主要基于该词条的复习次数、距离上一次复习的时间以及你主观地当前对于该词条的记忆程度的评估。
Anki 是一款开源项目,其算法内容依据了最新的关于人类记忆方式的研究,根据笔者的使用经验,Anki 确实帮助我更加牢固地记住了知识点,所以我也在这里大力推荐这款程序,目的也是帮助各位读者可以在最短的时间内取得最好的学习效果。
我想从两个方面阐述一下我的 anki 使用经验,这也是经过很多时间摸索出来的最适合于我的方式,希望可以给大家带来一些思考。
什么时候添加 anki 词条
当我们复习到自己不熟悉的知识时,都可以向 Anki 中添加新的词条。但是这种情况会有一个问题,就是打开电脑或手机添加词条会打乱当前的学习节奏,也使得当前的学习过程中断了,反而降低了学习效率。
笔者在过去复习过程中,当遇到一个可以添加的词条时,我并不是马上打开 anki 进行添加,而是将该问题记录到一张纸上(只记录问题)。随着今天的复习流程结束,纸上可能已经包含很多问题了,比如可能是如下的情况:
maxHeapify
的算法过程flag, seqno
以及 ackon
是如何设置的TCP
的拥塞控制算法有哪几种,拥塞窗口在每个算法中是如何变化的在每天的一个 固定时间段 ,可以是当天复习完成后,也可以是其他时间。我会将之前总结的问题 使用电脑批量添加 到 anki 中,这种方式除了使得添加的过程不再分散外,也可以帮助我们对于之前记录的问题进行初步地复习(你在编辑和添加问题时就已经在复习了)。添加 Anki 答案时可以不用写得特别详细,列出其中的关键点就行,这里我们主要还是利用 anki 帮助我们在适当的时间进行主动的回忆。
什么时候复习
我之前是喜欢在晚饭后进行复习,拿着手机,打开 anki 软件,一边沿着学校散步,一边回忆知识点,个人感觉比较放松惬意。其实复习时间还是因人而异,只要每天都拿出固定的时间段来就可以。
如何组织 Anki 的词条
Anki 中有一个 deck 的概念,即一个词条组,用于组织一系列同类的词条。你可以将不同的主题创建为不同的 deck,比如数据结构创建为一个 deck,然后计算机网络再创建为一个 deck。在每个 deck 中你可以为每个词条创建多个 tag 标签,在 Anki 的词条浏览器中你也可以根据 tag 对一个 deck 中的词条进行检索。
笔者的组织方式稍有不同,我在考研期间只创建一个 deck 叫做 Grudate
,对于 408 中的不同科目,我在创建词条时为其打上相应的 tag
。组织方式如下:
Grudate
):ds
)network
)cons
)os
)math
)其中 ds
为 data structure
的缩写, network
为 computer network
的缩写, cons
为 computer constition
的缩写, os
为 operating system
的缩写。
对于笔者而言,这样组织比较简单,也避免了在多个 deck 中跳跃建立词条的麻烦。并且这样在复习时 Anki 会为你交叉地安排不同科目的知识,我觉得这样复习效果意外地还不错,推荐大家尝试一下。