反馈式学习


本篇文章将讲述我自己的学习方法——反馈式学习。每个人对学习方法都有不同的理解,可能某个人对某种学习方式有较深刻的感触,而其他人却不感兴趣。这可能是学习方式没能勾起你的生活体验。但如果你深究到底,你可能会发现它们的核心原理是一样的。同样,这篇文章里面的学习形式其实并不重要,最主要的还是其原理。希望你能根据其背后原理整出自己的学习方法。

一、反馈式学习

反馈式学习是以反馈为根本的学习方式,一切反馈都可以当作一种学习。你首先搭建好一个有信息反馈的环境,然后在里面探索,在探索过程中逐渐形成知识体系。此时的你犹如一个新奇的小孩走进了糖果屋一样,到处探索,无拘无束,你想要的东西都能从探索中获取到。

反馈环境可以各式各样的,可以是搜索引擎,可以是调试环境,可以是书籍,也可以是同行专家。你就假定你的反馈环境可以给你各种想要的答案。以搜索引擎作为反馈来源的话,你有什么不懂的概念可以直接用搜索引擎搜索。如果书是你的信息来源,你有什么疑惑就在书上找答案。在调试的时候,你有什么想法你可以放到调试环境里试,它会告诉你正确与否。各种反馈方式其实并不孤立的,你可以把它们组合在一起用。不懂的问题找书,书上没有答案就上网查,百度不到就谷歌搜索,其他博客找不到就官网找。从质量来说,它们的质量从低到高为:网站博客<书籍<官网<源码(这里并不全罗列)。你尽量挑选质量高的信息来源,这样保证了信息的可靠程度。

反馈式学习本质是自身和反馈源形成反馈回路来修正认知偏差。自身是指现在已有的认知框架,反馈源是对照组。当自身的认知和反馈源存在误差时候,根据反馈来修正偏差。当你在反馈环境里面探索中,错误的认知会被纠正,正确的会被夯实。

虽然你知道本质,但在实际操作上不好操作,你会用到另外一个反馈回路:“问题——答案”反馈回路。在考驾照时,有个科目一,是考驾驶的相关规则的,大抵上是在电脑上完成相关的题目的作答。这时候你能获取到到的资料是题库里面的题目。即使刚开始什么都不懂,随着做题,做着做着自己就会了。这个从不会到学会的过程是一个很奇妙的感觉。这时题目和答案构成了一个反馈回路。不断做题的过程中,其实你也是不断修正自己认知。做对做错,答案会告诉你结果。哪怕做的时候没有一点概念,看答案你也能从中学到理论。相比比于你直接看理论,自己做题探索得来的则更加深刻。

问题和答案的关系将会像下面这图一样。

问题-答案

在这里,问题不单单指的是问题,它更代表着一种搓揉机制;答案也同样不单指答案,它是一种学习机制。搓揉机制你想方设法去产生问题的地方,是你学习的方向。你可以复盘,用现在的认知和过去的认知相对比,搓出偏差来。你可以自己对自己提出各种问题。你也可以用下面将要说的框架理论来指导和扩展自己的认知圈。总之,任何你想要提出的问题都尽情地在这里提出。学习机制是你根据问题然后在环境里探索得出的答案。你假定反馈环境是能给你带来任何你想要的答案。你所要做的是在你环境里找到那个答案。搓揉机制产生问题,你就带着问题到环境里探索得到答案返回,然后搓揉机制再根据这答案的基础上继续产生问题,一圈圈扩展。

二、框架思想(模块化思想)

框架思想在反馈式学习中是作为产生学习方向和提炼知识架构用的。框架思想概括来说是:自上而下套框架,自下而上提炼框架。

2.1 自上而下套框架

狭义的框架指的是知识体系,广义的框架指的是计划。如果你知道一个知识点的知识体系,你要学这个知识,那么这个知识体系架构就变成你要走的路。知识体系上面的每一个节点都是你的计划里面的目标。你一步一脚印,按顺序一个个实现,最终会到达你想去的目的地。但现实情况并没有这么理想,随着时间推移,你的认知会逐渐扩大,你的所认识的知识体系也会有所变化。这就有点抓狂了,有种计划赶不上变化的感觉了。但你也不必慌。一般来说你前一次的框架会是后一次的框架扩展的枝干。你每次掌握住当前层次的大方向,然后在枝节方面再细节化行了。

下面说个实际的例子。如果让你学一个你从来没接触过的知识的时候,你会怎么做?你可以像下面的这么做。首先,你利用搜索引擎了解到相关概念,了解相关的术语。然后找一个简单的Demo来实现。这个Demo最好是有详细的讲解,这样方便理解。接着,你就在这个Demo上添加其他的功能,丰富这方面的知识。这里你如果能有同行专家来交流就更好了,有人指导还是学得还是比较快的。到最后,为了完善这个知识体系,你需上官网看最官方最权威最全面的解读,如有源码可以直接看源码。

反馈式学习-扩展过程

这个学习的过程发生了什么呢?当你刚开始用搜索搜索概念做Demo的时候,你会在心里会形成一个初步的认识。这个初步的认知是颗种子,它会指导后面你要去了解的方向。而后面的看源码问同行是在逐步填充你这个架构,在细节方面丰满它。

套框架的总体思路是先搭建一个架子,然后往里面填充内容。即使刚开始搭起来的框架有点简陋,那也没关系。随着你的认知进一步发展,你的框架会逐步壮大完善的。你的认知圈子是以螺旋扩展的形式扩大的。换一个行为动力你可能更容易懂些,其实这个就是深挖。平时可能不会这么按部就班地操作,但是心里可以以深挖为方向,你会比较有动力学下去。

扩展模式

这个也可以用于解决问题上。这个思想好比光学显微镜调节中的粗调和细调。你要观察到你观察的东西,先用粗调螺旋调整到你能看清楚的大致区域,然后用细调的方式来逐步调整。如果你知道解决这个问题的大致流程,那你就可以据此进一步划分,把大的问题分解为小问题,小问题继续划分更小的问题,直到细分最小可执行颗粒,然后一个个解决。

在每一个阶段里面,大的方向由大纲提供,细节方向可以在头脑里生成。即使你把目标分解到最小可执行颗粒时候你仍然会有很多细节步骤要走的。这些细小目标可能是就是十分钟的计划,全罗列出来就比较繁琐了,心里知道就行。当一个目标执行完成后需要迅速调整,否则你可能就无所事事的空虚之中,所以让你的行动目标保持动态调整中。

问题分析

2.2 自下而上提炼框架

提炼框架一般用来提炼知识点。当你不清楚知识点时候可以用此来提炼和总结。提炼框架有以下几个步骤:

  • 搜罗信息
  • 罗列信息
  • 分组分类
  • 提炼框架
  • 完善框架

下面以程序员的出路为例来说明一下。

(1)搜罗信息

这个就不用多说了,尽你的能力去搜罗你要的信息。

(2)罗列信息

拿一张A4纸把你搜罗的信息全部写下来。不需要什么限制,能想到什么就写什么。

(做架构师,做管理,接私单、做测试、做金融经理、卖奶茶、开饭店,公务员、写书、做讲师、创业)
(3)分组分类
根据信息的差异性和共性,把各个信息分组分类。

  • 做架构师,做管理,接私单、做讲师、创业、写书、做测试
  • 做金融经理、卖奶茶、开饭店,公务员

(4)提炼框架
根据分类出来的信息提取框架。

  • 行业内
    • 做架构师,做管理,接私单、做讲师、创业、写书、做测试
  • 行业外
    • 做金融经理、卖奶茶、开饭店,公务员

(5)完善框架
根据框架不完善的地方继续补充完整。 这个过程可能要继续重复上面几个步骤。
在上面的程序员出路可以继续补充为:

  • 行业内
    • 主业
      • 做架构师,做管理、做讲师、创业、做测试
    • 副业
      • 接私单,写书
  • 行业外
    • 开店
      • 卖奶茶、开饭店
    • 其他
      • 做金融经理,公务员,啃老……

整个过程是一个先发散再收敛的过程。提炼框架后,你对整个知识结构的认知就比较清晰了。

2.3 小结

无论你是套框架还是提炼框架,核心思想是层次化实现。

把你要学的东西先理一下,划出一个最小系统的功能,实现它,然后再丰富它功能。知识是一颗逻辑树,实现它的过程是分层次的。这个层次有点像洋葱,也有点像俄罗斯的套瓷娃娃。实现它需要你一层层地浇筑。想象一下你绕操场跑的过程,一圈圈地跑,在围绕着一个点转圈的时候,你也在熟悉着这东西。如果说你的知识是一个空间,随着你探索你也在不断扩展这个空间,如同卫星绕太阳转一样,一圈圈加速最后甩出太阳系。

三、目标

从上面的介绍你已经了解到你需要围绕一个点做迭代。这个点就是你的目标。目标的选定可以根据知识体系细分的原则划分,也可以根据自己需要来划分。这里我要说的是另外一个方面,坚持。当你选好一个点做迭代后,你需要坚持一段时间。这个时间可能是几个小时,也可能是几天,几星期,或者几个月。因为你完成第一波基础工作后,你还需要消化总结或者继续深挖一下。如果你这时候切换目标,那么你对这个知识点的深挖的层次还不够,只是在上面挖了一个浅浅的坑。为了全面掌握它,你需要留足时间给它迭代。

当你围绕着一个目标转的时候,你会是一个怎么一个状态呢?你满脑子都会想着这个目标。无论吃饭睡觉你想着都是这个知识点的方方面面。你会想着用各式各样的问题来验证着你的掌握程度,直到你感觉已经没有问题可以难到你时候,这时候的你才算是过关了。

目标分两种,一种是接近型目标,另外一种是回避型目标。回避型目标是你不想做但却不得不做的任务,比如说你读书时候,你不想做的作业。接近型目标是内心渴望去完成的东西,比如你的兴趣爱好。对于接近型目标来,你在内心有种渴望的感觉。你去做种事的时候,你根本不需求要什么坚持和努力,坚持和努力早已化成一种自发的行为。你也根本不会觉得累,也不会有坚持、努力的感觉。在外人来看你是在苦和累之中,但不知你是乐再其中。我感觉在做这种事的时候,内心有一口气,自任务开始到结束,全凭这一道气来驱动。以气驱动,御气而行,这是我的个人感受。

四、维护一个知识库

通过前期的探索,你学习了不少知识点。为了复用,你需要把它保存起来。如果没有一个知识的积累和复用,你最多也就是熊掰玉米而已,学完就丢。所以,你需要一个地方来保存你既往的经验。

从保存的介质说可以分三种:记忆力,电子文档,纸质文档。无论从哪个角度来说,记忆力这一层面你是避免不了的。然而,记忆力并不牢靠,比较容易忘记。你事后回忆,可能就只记得轮廓,细节方面就丢失了。为此,你还需要其他工具来辅助记忆。相比纸质文档和电子文档,我更倾向的是用电子文档。因为你的认知是动态变化的,而纸质文档基本是一次性的,想修改就没那么方便了。电子文档就不同了,可以随意增删改查,而且,如果是记录的是代码之类的话,也方便复制粘贴。如果确实需要用纸质文档,活页记录是一个不错的选择。

既然是是维护一个知识库,这关键在于维护。没有维护的知识库也就一滩死水。为了你的知识库更有活力,你可以把博客当做你的知识库来维护,这样你写起来就比较有动力了。当然,你也可以其他文档工具来记录,最好是能保存在网络上,这样自己电脑损坏或换电脑也影响不大。那怎么维护呢?还是那句话,一层层来维护。 先写一个最基本的,然后一层层叠加和修改。如果你没有整块时间来写一篇文章的话,你可以写罗列一个大纲,然后再写各个子模块,最后整体调整和修改。维护的时候根据需要在各个模块里面修改,如果难以修改也有可以推翻重来。

五、大量练习

这可能就是反馈式学习的最大战场了。以实战为主,在实战中提取理论框架,然后和理论相互印证。

5.1 知识的三个层面

人的知识分三个层面:信息、知识、技能。在这几个层次中,消息是最浅层次的。我们平时阅读新闻获取到的信息基本是这个层次。这个层次的特点是信息量多而繁杂。你在这个层次留下的印象如同在海滩上走路,虽然留下了脚印,但过后很容易被冲刷掉。你所学到的,权当一种了解。

第二个层次是知识层面。在这个层次里面,知识充当一个理论基础,你可能知道很多理论,但是这个理论知识更像存储在硬盘里面的电影,你充其量只是背下来而已,但是在实际运用中往往就比较吃力。打个比方,你考试前突击,背下了书上的各种知识,通过了考试,这时候你的知识只是记住了,在运用方面还欠佳。你各种看书,主动学习,你学到的也是停留在这个理性认知层面。但相比与前面说得信息层面,这个层次里在你的知识体系方面就比较完备了。

第三个层次是技能,这个是我们要关注的重点。人的知识量大小不是取决于记住了多少知识和知识的连接,而是能调取到多少知识和知识的连接。能调取多少才是你的能力。从知识变成技能需要大量的练习,这种练习其实是一种对知识的一种“提取练习”。每次练习的质量可能不高,但是没关系,我们训练的是知识的提取能力,这个才是技能的核心。这个训练量大了你才会熟能生巧。从另一方面来说,能在书本上看到的是明面上的知识,但是有部分知识藏在潜意识里面的,还没被总结出来。这部分知识是目前说也说不清楚的东西。要学这部分知识,你只要去做就行了,在做的过程中也会锻炼这部分隐藏的知识。这个就像画画一样,怎么画?有些东西,有时就只有画的时候才能体会到。

虽然信息、知识层面不是我们的目的,但是要达到技能的层面,也需要前两者来铺路。刚开始先做点简单的练习,后面逐步加强。有时会为了一个掌握一个知识点,你可能需要推到重来很多次,一遍遍地做。起初,你可能对这个知识点理解比较模糊,但每做一遍你会清晰一点,最终会有个清晰的脉络留在自己心底。

5.2 容器化练习

把目标小块,每次训练一个小目标,并把它放到容器里训练。什么是容器呢?容器是一个仿真的模拟环境,这个环境可以安全地给你任意试错。

容器是一个有边界的区域,你在这个区域里面操作是安全的。它不定形式,书中的一个章节,一段都可以是一个容器,也可以是一个项目环境等等。你可以认为的你心中的疑惑可以在里面得到解答。你只需尽情地在里面探索和试错。

5.3 复盘反馈

复盘反馈意味着你重新做一遍,重新经历当初的心路历程,发现自己的不足然后补上。复盘反馈在反馈式学习里面占有比较重要的地位。你可以理解反馈式学习是建立在复盘基础上的信息反馈。每做一次都要细细品味前后次之间的细微差异,然后据此反馈。

5.4 模块练习和项目练习

模块练习是指单一功能的练习,项目练习是一个综合练习。一般来说,项目练习会带动模块的练习。模块练习实质把模块功能反复地练,把单一的功能练熟练。项目练习是把模块组合,主要训练的是模块综合运用。在平时,这两种练习需要交叉来练。你可以向一个自己平时用得到的项目需求,自己做一个功能出来,然后慢慢迭代。对于这个产品,你是使用者,你会有着各种想法,然后你把你的想法实现,在实现的过程中你会慢慢从中学习到相关的知识。如果你觉得从零开始实现比较难,你也可以从一个已有的产品开始改造,这个降低了你的实现门槛。

5.5 沉浸式反馈

这里我假设你已经有个完整的项目,你学习的时候就把这个项目当作一个容器,自己沉浸在里面探索代码的逻辑。从代码的运行,探索,改造三步走计划中,这个模式主要的精力放在探索上。这个方法一般用在学习一个完整的项目。如果你公司有个完整的项目给你维护的话,你一般是需要这种方式。从代码中学习代码也是一个强有力的反馈手段。这个方式可以让你省去构建的过程,让你一步到位直接进入最主要的反馈学习阶段。如果你没有这样的项目,你也可以看开源项目。由于项目比较大,你理解起来也不是一天两天就能搞定。你需要耐住性子,一点点看,让自己身心沉浸里面去,慢慢积累,靠积累量来突破。

六、给时间以文明

6.1 给时间以文明

这是一个时间管理的方法。大致原理是在固定时间内不要干其他,专注于学习,然后时间按一份份地输出。这个是时间可长可短,可以是几分钟,几个小时,也可以是几个月,几年。在固定时间内不做那些无用功,专心学习,然后你靠积累时间量来达到学习目的。如果你觉得这样做难以坚持的话,你可以换一种思维来看待这事,那就是少做事。那些可有可无的事,不做对你影响也不大。比如说玩手机,一天你少玩2个小时手机,其实也没什么影响的。

6.2 早睡早起

如果你是在工作之余学习的话,那么你可能会选择晚上来学习。但有时候你会发现一天工作已经很累了,再学习精神状态已经支撑不下去了,这时候怎么办?你可以试下把晚上学习的时间调整到早上。早睡早起,把学习时间移到早上来。这样学习时间虽然没变,但是精神状态却变了,学习效率就不同了。

6.3 自我损耗

在给时间以文明的时间管理上,如果你太过用力地压抑自己来学习,长久来说不利于你学习。刻意掌控和进行自我控制本身很辛苦,如果你太过逼迫自己去做某事,面临的压力又难以承受,你会越来越难以自我控制。这种现象叫自我损耗。自我损耗不是长久之计,最终还是要顺其自然。

如果你的学习能达到一个心流的状态那是最好的。在这种状态里面,大脑的注意力将毫不费力地集中起来,它可以使人忘记时间的概念,忘记自己,忘记自己问题。你大脑里面会把思考时间和自身的带宽留给学习,全身心会进入一个沉浸的状态。怎么进入心流状态?这个见仁见智了。你需要精神上专注,但全身心都放松。

七、总结

反馈式学习是以反馈作为一种学习,你需要想办法把你学习的形式变成一种有反馈的形式,然后把自己放到里面去迭代,在疑惑和探索中成长。上面的几种学习方式相互渗透,相互补充,在实际运用中根据实际情况灵活运用。上面的反馈式学习可以用4个关键词来概括:模块化,容器化,复盘反馈,积累。

0%