背景
最近接触了很多关于学习方法的内容,比如在kindle上无意中找到的一本杂志,里面提到如何提高阅读能力.在作者推荐下又看了《开动大脑》,接触了一些关于学习的理论,作者在书中提出了思维导图的学习方法,这种方法平时大家应该都有接触,平时我比较习惯叫做知识框架图.今天看了一期《鸿观》里面也提到了学习方法,发现不管知乎上,书上,还是微信朋友圈里看到的那些关于学习方法的内容几乎都很相似,其核心都是在强调知识间的联系.于是想总结这段时间看到的学习方法.
对于我看过文章和书籍里提到的学习过程可以总结为以下几个阶段:
- 知识获取: 从大量的知识中,获取你需要的知识.这过程包括了学习资料的筛选,知识内容筛选等.
- 理解: 从上下文语义中理解单词,句子的意思.理解句子表达的内容.
- 拓展(或者建立联系): 主要是为了建立知识之间的联系,包括深度拓展,横向拓展和纵向拓展.
- 纠错: 纠正自己对知识的理解,以及在拓展阶段是否建立了错误的连接.
- 应用: 学以致用,将学习到的知识应用到生活中.如果暂时用不到的知识可以采用写博客方式分享出去.
- 记忆:重复记忆能够更加熟练掌握知识,同时能够更容易的与其他知识建立联系,更容易消化和吸收新知识.
- 测试: 在每个阶段进行测试,看是否成功完成每个阶段的目标.如测试自己是否完成了.
这种学习模式在《如何高效学习》里称作整体性学习,核心就是要将新知识与旧知识建立联系.联系越多越好,可以帮助自己理解以及记忆.当然这些阶段之间不是按严格的顺序执行的,比如测试阶段在每个阶段都有进行.应用阶段有时候也是记忆阶段,重复的练习和应用都能使你更加牢固地掌握该知识.所以这些阶段都是可以穿插进行的.本文针对这几个阶段进行详细介绍.
学习过程与模式识别的关系
观察以上的几个阶段,发现其实和现在计算机里流行的机器学习方法或模式识别过程很相似.如果将学习过程看做是不断建立和完善自己的一套人生观,价值观,并用该世界观与人生观去看待生活中出现的问题和现象,以及根据已有的知识模式去解决未来未知的事件.那么模式识别的过程就是为了建立一个完善的模型去识别和判断未知样本.目标很相似的.从模式识别中的模型训练过程分为训练数据获取(知识获取),预处理和特征抽取(理解),训练模型(拓展),剪枝(纠错),测试,应用,两者也很相似.
- 训练数据的好坏以及数据的规模对于模型训练的好坏影响很大,质量好且数据量大的训练数据可以训练出性能更优的模型.从学习角度说,我们学习的知识来源需要必须是好的,权威的.如果书中内容出现多处错误,或者书中的思想本身就有问题,那么选择这样一种书籍你得到的知识结构和观念都将会是错误的.用这样的思维去看待世界得出的结果必然也是错误的.另外多看书,多看报,在学习本专业的同时也应该跨专业地学习知识,目的就是把自己的思维模型变得更加灵活,提供更多灵感,也能够从多角度多方面的看待问题,这样你的思维模型会变得更加优化.
- 预处理和特征抽取主要对目标问题进行分析和理解,从中抽取好的特征用于训练,类似我们对知识的处理和理解,根据我们的需要从中挑选我们需要的知识并理解其中含义.
- 模式训练的阶段就是与这些数据之间建立联系,人类学习过程也是将新知识与旧知识联系到一起为了使自己的思维模型更加优化,适应度更强.
- 决策树等模型为了避免过度拟合,经常用的手段就是剪枝,剪枝的过程其实就是根据新的样本对模型纠错,使模型性能优化.人类的思维模型也应该经常进行修正,不断通过与外界交换信息对模型进行修剪,不然会出现过度拟合现象即变得固执,不易接受外界新观点等毛病.
- 测试就是将训练好的模型用测试数据去验证,保证模型可靠性.在学习过程中,我们对已经掌握的知识也要进行测试,看是否已经完成掌握了,是否理解有偏差.
- 模型的训练都是为了解决特定领域的问题. 如果模型性能达到要求了,那么模型就可以用于实际应用中了.学习的知识如果不拿来应用,那学习的意义就没有了.如果当前应用不上,那么采用写博客分享也是一种比较好的应用手段.当然如果计算机专业的优势在于可以有很多实践机会,对于大部分的知识点只要一台电脑安装相关软件就可以进行实践了.
知识获取
当然在学习过程中不能只追求学习的量,应该注重学习的质量,适当的放慢阅读速度有意加深对知识的理解.阅读的速度与知识掌握的量之间往往成反比,阅读过快往往容易忽视一些细节.当然每个人的阅读能力不同,阅读速度等会有所偏差.
理解
这个过程主要是对知识的一个理解,消化.有些知识点比较难懂的可以反复多读几遍,或者适当的跳过,因为有的知识点的理解往往需要后面的知识作为基础.当了解后面的知识后回头看这部分知识点,就变得很好理解了.
拓展
这部分是很多作者强调的地方,就是将新知识与已有的知识建立连接.如果我们把某个知识体系比作一个城市,该体系中的知识点比作城市中的建筑.如果城市中的交通发达,任何建筑都有道路相连,那么整个城市之间的交通便会很便利.如果城市内部还提供了地铁,高架桥等交通手段,那么可以缩短城市内任意两点之间的交通时间.知识也是如此,建立的强联系越多,那么知识之间的联系就更加便捷,反应更加强烈,且不易遗忘.从神经元角度说,如果神经元之间的突触越多,那么信息在大脑的传递速度越快,意味这对知识的反应能力越强.建立知识联系的过程也是神经元之间建立联系的过程.
比如我们在学习java的多态时,我们可以联系到:
- C++里的多态是如何实现的----和c++的虚函数联系到一起
- 虚拟机内部是如何支持多多态的----这里和虚拟机的动态分派和静态分派联系到一起.
- 为何多态是面向对象的基本特性----面向对象思想
- 为什么要使用多态----设计模式
除了以上的联系当然还可以很多其他的,通过联系可以加深对一个知识点的理解,也可以完善你的整个知识体系结构,也同时容易记忆.很多书籍在讲解某个概念时都会引入一些生活中的例子来解释,一方面时为了让你更好理解,一方面也时便于记忆.例如 《大话设计模式》里就用了很多现实生活的例子来解释设计模式的概念,通俗易懂,且不易遗忘.
所以宋鸿兵在《鸿观》的提出应该多跨专业的学习,这种跨专业学习一方面可以提高我们建立联系的能力,同时可以让我们从多方面,多角度地看待问题.另外,吸收其他专业的知识,对本专业方面的工作提供更多灵感.
拓展可以分为深度拓展,纵向拓展,横向拓展:
- 深度拓展: 从单个知识点去挖掘,比如机器学习里的算法公式是怎么来的?目标函数是什么?如何推倒?在什么情况下使用它?
- 纵向拓展: 和同一个知识体系内的其他知识点建立连接,如:动态规划和贪心算法的区别与联系,HashMap与ConcurrentHashMap的区别与实现原理.
- 横向拓展: 就是将知识与不同专业知识联系在一起,就像《失控》中将互联网思维用来解读当今经济现象等.
关于这部分很多人建议采用思维导图的方式进行学习,知识点之间的联系可以在思维导图将相关的知识点用线连接在一起,思维导图不仅可以提高做笔记的速度,同时提供一个清晰的知识体系,便于复习.每次复习时,只要看思维导图,对于某个知识点想不起来的,那么这个知识点是你重点复习的地方.经常复习思维导图,可以使你对整个知识体系的有更加清晰的认识,知识便具有系统性.关于思维导图的相关资料推荐大家看《开动大脑》,该作者是思维导图的发明者.
纠错
对于每个知识点应该提出质疑,通过提问的方式来解除对知识的疑惑,同时也是修正自己以往的思维观念.尽信书不如无书,应该要培养对知识的质疑能力,同时也能敢于承认自己的认知也有错误的时候.这样可以在不断提问,寻找答案的过程纠正自己的思维模式.
应用
学习的知识如果不拿来应用,那学习的意义就没有了.如果当前应用不上,那么采用写博客分享也是一种比较好的应用手段.当然如果时计算机专业的,可以通过动手练习增强对技术的熟练程度.也可以像《大话设计模式》用设计模式解释生活的一些现状.
记忆与测试
记忆这个领域有很多的研究,《开动大脑》中提出,人在学习一段时间后记忆能力会逐渐衰减,所以建议应该合理安排学习和休息时间.正常学习1小时应该进行休息,这时候记忆力又恢复到峰值状态.
《开动大脑》同时也提出一个观点:记忆力与理解力变化曲线不同.意思是某个知识点你现在理解了,过段时间你可能就忘记了,但不影响你再次理解.同时也说明理解了并不等于记住.所以及时复习还是很有必要的.人在接触新的知识的时候,过去的知识连接会出现断开的现象,如果不及时复习那么会影响到对新知识的理解,也不易建立连接,同时也浪费了自己花那么多时间去学习.如果及时复习,会形成一种滚球式的学习模式.一方面在牢固的知识体系下对新知识更加容易消化吸收,另一方面也容易与旧知识建立联系.因此学习的信心更足,于是滚球一样,知识越滚越大.形成良性循环.
一般采用的方式是根据记忆遗忘曲线进行记忆,例1小时候,1天后,一周后,一个月后.在这些点上进行复习,一个月之后就会转变为长期记忆.复习时可以采用拿出A4纸凭记忆画出思维导图,并与原图进行比较,对于不熟练的地方加强复习,不断重复直到与原图没有差异.平时也可以将思维导图打印出来,在有空的时候翻一翻,思维导图的复习比较快,一般一本书不用花一个小时就开业回顾完了.(当然前面会比较困难写,越到后面越熟练).
参考资料
《如何高校学习》--斯科特.扬
《开动大脑》
《鸿观》---自媒体,第30期 读万卷书之五大神器
《学会提问》
知呼:https://www.zhihu.com/question/28358499/answer/43002343
以上是最近的一些总结,当然如有勘误大家可以指出共同学习进步.
来源:http://www.cnblogs.com/jaylon/p/5173830.html