如何深度学习技术专业相关知识点的思维认知探讨

Posted 小羊子说

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何深度学习技术专业相关知识点的思维认知探讨相关的知识,希望对你有一定的参考价值。

文章目录

探讨如何深度的学习技术专业相关的知识及通用的知识方法,总结了一些学习心得笔记。

1.《认知天性:让学习轻而易举的心理学规律》

认识心理学研究早就发现,人们在学习一个概念的时候,花费越多的心思,尝试用自己的话去重新演绎它,或者是尝试理解这个概念在不同语境下的不同意义,就能越牢固地掌握这个概念。

这本书介绍了各种高效学习的方法,其中有几种方法,比较颠覆认知,书中认为学习时,应该有间隔的进行,而非集中式的重复进行,这样带来的好处是:能带来更长久的记忆,也就是长期记忆,而集中式练习则是短期记忆。

花十分钟记忆十个单词所留存的记忆,不如分两次五分钟记忆十个单词所留存的记忆来得深刻。

理由是:长期记忆的形成,需要有个巩固的过程,可能是数小时,可能是数天,在这期间,记忆痕迹得到加深,所学的新知识与旧知识建立连接,带来稳固的长期记忆。

因此不要频繁的进行集中式学习,而是有间隔的进行,频繁的集中练习只会带来短期记忆,有间隔的学习所耗费的精力远大于频繁的重复式学习,使用这种方式,学习起来也更加困难,但也不容易遗忘。

理论上来说,遗忘的越多,重新回忆起来的难度越大,但所保持的效果越持久,不过,还是不要等到所学知识遗忘的差不多了后再去重新学习,那样的话,你基本回忆不起来,只能重新从头开始,得不偿失,等到所学知识有点儿遗忘再去学会比较好。

拿学习专栏 来说,不要反复地去学习同一章节,而是有间隔地进行,这会带来长期记忆,在学完一章内容后,不要立刻练习所学内容,而是应该等遗忘一些后进行,效果要好于学完一章节后立刻进行练习的方式,学完后不容易忘,在学完后立刻进行练习,学完后容易忘。

书中建议:学习知识或技能时,通过自我检测的方式,代替重复学习,并且有间隔地进行自测。

就拿学习算法来说,不要一遍接一遍地重复去学,而应该在学习完某一算法后,通过自测的方式来逼迫自己的大脑去检索所学,拒绝机械式的重复重复再重复,这样所学的知识会更加稳固,留存的记忆更持久。

书中还提到:自我检测后的延迟反馈会进一步加强学习效果,也就是在进行自测后,不要立马查看答案,而是应该间隔一段时间再查看。

在练习所学时,有顺序的练习比无顺序的练习效果差,且这期间,穿插不同类容类型的学习方式,所产生的效果,要比在熟练某一知识后,再进入下一学习内容的练习效果要好,不仅能保持长久的记忆,使所学知识不易遗忘,还能提高学习者的辨识能力,也就是在面对各种复杂问题时,能正确识别问题类型,根据所学知识,从脑海中搜寻出对应问题的解决方案。回想一下我们上学时的课本内容安排,都是有顺序地,由浅入深地进行,而我们在学习时,就是通过不断练习同一知识点直至完全掌握后,依次有顺序地进入下一知识点的学习,直到课程学完。

这种通过大量练习同一类型的题目的方式,使我们在考试遇到时,能得心应手地解决,但面对综合题时,这些问题都被混合在了一起,且没有顺序,我们难以辨别题目真正要考察什么问题,无法辨别问题的类型,从而无法正确地运用所学知识解决问题。

拿到生活上来说,你遇到的问题也是没有顺序,且都是混合在一起的,你难以辨别各个问题之间的差异,不清楚要解决的问题到底是什么,从而无法选取合适的解决方案解决问题。

面对这种现状,前面提到的穿插不同内容类型的学习方式能帮到你。

简单来说,就是在当前学习内容掌握的还不熟练的情况下,跳入下一阶段的学习,这种方式比在当前学习内容练习熟练后,再顺序进入下一阶段的学习方式,效果要好。

例如,你在学完数组,哈希表,树,堆等数据结构后,在练习时,要在数组还未掌握熟练时,就进入树的练习,而不是等到完全掌握熟练一项内容才进入下一阶段的练习,你不能每学一样知识,待熟练后才进入下一阶段,应该以随机非顺序的方式进行,这种非顺序的穿插不同类型的学习方式能促进知识的活学活用。

这种学习方式如果转换到专栏学习的话,相当于在一个章节内容还未熟练的情况下就要进入下一章节的学习,比如,在学习完专栏章节1,2,3后,从章节2开始练习,待初步掌握,还未熟练时,进入章节1的练习,然后在未熟练时又进入章节2的学习,这种在练习期间,穿插各种不同学习内容的方式,比大量练习同一主题内容完全熟练后,再进入别的主题学习,效果要好得多,书中说的是远好于。

这样看来,这种学习方式还是很适合学习难度高的专业知识的,它能使所学知识停留在长期记忆,并能促进知识的活学活用,你一定不想体会辛辛苦苦好不容易学完算法后,在下一次要用到时想不起来的尴尬境地,或者在遇到综合各种算法问题时,束手无措的苦苦挣扎,而以上的学习方式或许能帮到你。

作者回复: 我最近刚看完这本书,里面提到的学习方法我自己其实一直就是这样做的。我会3~4个主题同时进行学习,每个主题每次都学30分钟左右,一段时间后又回过头来复习加深一下。

例如我最近同时在学:ClickHouse、Redis专栏、推荐系统专栏、朝鲜战争、认知天性。

小结:你在学习步骤应该是这样做:

  1. 检索(回忆学到的知识)
  2. 三维组合(间隔练习、穿插练习、多样化练习)
  3. 反思(学到什么考考自己)
  4. 细化(新知识与已知知识建立联系)
  5. 生成(用自己的复述核心观点)

2. 链式学习法:提升技术深度

提升技术深度,最好使用链式学习法。

如果你参加过晋升答辩,一定经历过评委的“追命连环问”,比如:

  • 你在讲解 PPT 的时候提到,某个项目使用了 Netty 技术,评委首先会问你 Netty 的一些技术点;
  • 当你回答说 Netty 的本质是 Reactor 网络模型时,评委又会问你 Reactor 网络模型的原理;
  • 当你回答说 Reactor 的基础是 Java NIO 的时候,评委又会问你 Java 的 NIO/BIO 的技术细节;
  • 当你回答说 Java 的 NIO 在 Linux 平台上是基于 epoll 来实现时,评委又问你 Linux 的 epoll/select 等的原理。

面对这种“打破砂锅问到底”的方式,如果平时没有充足的准备,你很可能会卡住。

所谓“链式学习法”,顾名思义,就是学习的过程好像从水里拉起一根链条,拉出一环后面又接着一环,最后将整个链条全部拉出来。

当知识联结成锁链,环环相扣,你对技术的理解就很透彻,评委问到底,你就能答到底。

但是知识的锁链不是胡乱连接的,环环相扣的方式很有讲究。常见的方式有两种:

第一种是自顶向下、层层关联,打通一项技术的领域分层。

第二种是由表及里、层层深入,打通一项技术的细节分层。

链式学习法的步骤

  • 第一步,就是要明确一项技术的深度可以分为哪些层

    画出“领域分层图”和“细节分层图”。一开始你可能会觉得画不出来,这恰恰说明你对深度的理解还不够,而尝试画图本身就是一个梳理结构、强化认知的过程。

  • 第二步就是要明确你自己要学到哪一层

  • 第三步就是要明确每一层应该怎么学

    在领域分层图中,越往上越偏应用,实际工作中用得越多,越往下越偏原理(包括相关的工具和配置),实际工作中用得越少。所以总的原则是,在上层投入更多时间,更关注细节和熟练使用,在下层投入相对少的时间,更加关注原理和简单应用。

    在细节分层图中,你需要详细地学习每一层。要注意的是,对于“实现源码”这一层,你不需要去掌握每一行源码,只要掌握关键源码就行了,也就是和设计原理以及设计方案相关的源码。

    (平时不需要背太多细节,但知道大概范围和深入方向,等真的要用到细节的时候,能够快速的钻研进去。)

链式学习法的优点:

  • 促使我们主动提升

    大部分人在实际工作中,很多技术都只接触到了领域分层图和细节分层图中的前 2 层,没有进一步地去了解。而如果采用链式学习法,你就会意识到,使用一项技术完成了工作,并不意味着你就完全掌握了这项技术。你还需要把刚刚自己用到的技术作为切入点,画出完整的领域分层图和细节分层图,然后逐一攻破,这样才能提升深度,达到精通水平。

  • 将知识和技能系统化

链式学习法小结

  • 链式学习法是让知识形成锁链,环环相扣,主要用来提升技术深度。

  • 链式学习法的步骤包括:明确一项技术的深度可以分为哪些层,明确要学到哪一层,明确每一层应该怎么学。

  • 链式学习法的优点有:促使我们主动提升,将知识和技能系统化。

3. 比较学习法:提升技术宽度

如果你有过晋升 P7 或者更高级别的经历,肯定被问到过大量跟“Why”有关的问题,比如:

  • 为什么选择 Redis,为什么不用 Memcache?
  • 为什么选择 mysql 而不是 Redis?
  • 选择 Flink 的理由是什么?(除了 Flink 本身的技术特点外,还需要你回答为什么选择 Flink 而不是 Spark 或者 Storm。)

所谓比较学习法,就是横向比较同一个领域中类似的技术,梳理它们异同,分析它们各自的优缺点和适用场景。

比较学习法的具体操作步骤如下:

  • 先用链式学习法掌握某个领域的一项技术,将这个领域的关键技术点整理成表格。
  • 基于整理好的技术点,学习这个领域的另一项技术,将它们在技术点上的差异整理成思维导图。
  • 找出差异较大的技术点,将背后的原理和对应用场景的影响整理成表格。

比较学习法小结:

  • 比较学习法是横向对比,让选择有理有据,主要用来提升技术宽度。

  • 比较学习法的步骤包括:整理领域关键技术点,整理不同技术的差异点,整理差异点背后的原理和对应用场景的影响。

  • 比较学习法的优点有:学得快,学得全,学得深。

4. 环式学习法:提升技术广度

环式学习法的步骤

  • 第一步,就是把闭环画出来
  • 第二步,就是由近及远,逐步攻克闭环上的各个节点。

环式学习法小结

  • 环式学习法是构建闭环,打出组合拳,主要用来提升技术广度。
  • 环式学习法的步骤包括:先把闭环画出来,然后由近及远,逐步攻克闭环上的各个节点。
  • 环式学习法的优点有:培养全局视野,避免盲目地广撒网却捞不到鱼。

最后放上一张思维导图:

参考:

1 .《认知天性:让学习轻而易举的心理学规律》

2.《链式 & 比较 & 环式学习法:怎么多维度提升技术能力?》 by 李运华 《大厂晋升指南》

以上是关于如何深度学习技术专业相关知识点的思维认知探讨的主要内容,如果未能解决你的问题,请参考以下文章

如何深度学习技术专业相关知识点的思维认知探讨

深度学习是啥

如何利用深度学习的螺旋桨,开启教师的专业学习?

特邀专栏:如何学习草图大师 sketchup?

Java需要学习哪些软件?

先天认知与深度学习