我的学习思维:有关阅读的方法
2012-04-08 00:00
836 查看
这篇主要写一些学习(尤其是阅读)的基本方法。
1. 趁着对一件事情有热情的时候,一股脑儿把万事开头那个最难的阶段熬过去
万事开头难,因为从不了解到了解基本的一些事实,是一个新知识暴涨的阶段,这个时候的困难是最大的。有人熬不过去,觉得困难太大就放弃了。不过,狂热的兴趣可以抵消对困难的感觉,所以趁着对一件事情有热情的时候,开一个好头是很重要的。(当然,这并不是说持之以恒就不重要了)。当然,也许这个是因人而异的,对我来说我会在对一件事情有浓厚兴趣的时候非常专注地学习,把很多 groundworks 做掉。后面就会顺利一些了。
2. 根据主题来查阅资料,而不是根据资料来查阅主题
以前读书的时候是一本一本的读,眼里看到的是一本一本的书,现在则是一章、甚至一节一节的读,眼中看到的不是一本一本的书,而是一堆一堆的章节,一个一个的知识主题,按照主题来阅读,你会发现读的时候不再是老老实实地一本书看完看另一本,而是非常频繁地从一本书跳到另一本书,从一处资料跳到另一处资料,从而来获得多个不同的人对同一个主题是如何讲解的。比如最近我发现在看蒙特卡罗算法时就查了十来处资料,其中有三四篇 paper 和六七本书;这是因为即便是经典的书,你也不能指望它对其中每一个主题的介绍都是尽善尽美的,有些书对某个主题(知识点)的介绍比较到位,有些书则对另一些知识点介绍得比较到位。而有时候一篇紧凑的 paper 比一本书上讲得还要好。我硬盘里面的书按主题分类,每个主题下面都有一堆书,当我需要学习某个主题的知识时(譬如贝叶斯学习或者神经网络),我会把里面涉及这个主题的书都翻开来,索引到相关章节,然后挑讲得好的看。那么,如何判断一个资料是好资料还是坏资料呢?
3. 好资料,坏资料
好资料的特点:从问题出发;重点介绍方法背后的理念( rationale ),注重直观解释,而不是方法的技术细节;按照方法被发明的时间流程来介绍(先是遇到了什么什么问题,然后怎样分析,推理,最后发现目前所使用的方法)。坏资料的特点是好资料的反面:上来就讲方法细节,仿佛某方法是从天上掉下来的,他们往往这样写“我们定义… 我们称… 我们进行以下几个步骤… ”。根本不讲为什么要用这个方法,人们最初是因为面对什么问题才想到这个方法的,其间又是怎样才想出了这么个方法的,方法背后的直观思想又是什么。实际上一个方法如果将其最终最简洁的形式直接表达出来往往丢失掉了绝大多数信息,这个丢掉的信息就是问题解决背后的思维过程。
4. 学习一个东西之前,首先在大脑中积累充分的“疑惑感”
即弄清面临的问题到底是什么,在浏览方法本身之前,最好先使劲问问自己能想到什么方法。一个公认的事实是,你对问题的疑惑越大,在之前做的自己的思考越多,当看到解答之后印象就越深刻。记得大学里面的课本总是瀑布式地把整个知识结构一览无余地放在面前,读的过程倒是挺爽,连连点头,读完了很快又忘掉了,为什么?因为没有带着疑问去学习。
5. 有选择地阅读
很多人觉得我读书速度很快,其实我只是有选择地阅读。这里的选择体现在两个地方,一是选择一本书中感兴趣的章节优先阅读。二是对一本书中技术性较弱或信息密度较低的部分快速地略读。一般来说,除了技术性非常强的书之外,大多数书的信息密度很低,有很多废话。一般来说在阅读的时候应该这样来切分内容:
问题是什么?
方案是什么?
例子是什么?
如果是需要解释一个现象的(譬如《黑天鹅》),那么
现象是什么?
解释是什么?
支撑这个解释的理由是什么?
例子是什么?
一般来说,这一二三四用不了多少字就可以写完了(如果假设只举一到两个精到的例子的话),这样的无废话著作的典型是《合作的进化》;那为什么有些书,明明核心观点就那点东西(顶多加上几个精要的例子罢了)却写得长得要命呢?因为人的思维都有一个“联想”的特点,写着写着就容易旁逸斜出,而且作者自己也往往觉得引申出去挺牛逼,有时候很多与主题无关的废话就掺和进来了;那么,阅读的时候就应该有选择性地滤掉这些不相干的废话;此外还有一种可能性就是大量冗余的例子。一般来说组织得比较好的书会有详细且一目了然的目录和索引,根据目录首先就可以滤掉一部分(比如某个子章节的内容你以前是看过的),然后有时候作者还会举很多冗余的例子,如果你已经觉得印象够深刻了这些例子完全可以不看(一些书就非常厚道地对每个观点只辅以一两个最最经典的例子,譬如《与众不同的心理学——如何正视心理学》,这样的书我最是喜欢)。
6. 为什么看不懂?
如果看不懂一个知识,一般有如下几个可能的原因:
你看得不够使劲。对此古人总结过——书读百遍其义自现。虽然这个规律不是任何时候都成立的,但是从认知科学的角度看是完全可以解释的,我们在阅读的时候,注意力往往会有选择性地关注其中的某一些“点”,而忽略了另一些“点”,于是一遍看下来可能因为某一些忽略导致无法理解整体。或者干脆看的时候就没注意其中一些细节但重要的东西。此外,大脑理解一个东西需要一定的处理时间,人脑的处理速度很慢,神经冲动每秒传输速度不过百米,所以不能指望看到哪懂到哪。最后,我们可能因为思维定势的原因会从某个特定的角度去看一句话而忽略了从不同角度去理解的可能性。对于这类情况,仔仔细细地再多读两遍,多试着去理解两遍,往往会“哦!原来这样。”地恍然大悟。
其中涉及到了你不懂的概念。这是技术性的不理解。这种情况就需要 Cross Reference 。如果一句话中用到了你不懂的概念,那就去查,现在很多书都是电子书,直接搜索一下,或者,对于纸书,看一下书后面的索引就行了。奇怪的是很多人看不懂也不分析一下为什么不懂,就直接放弃了。正如解决问题一样,问题卡住解决不了,第一时间要做的就是分析到底为什么解决不了,而不是直接求救。
作者讲述的顺序不对,你接着往下看,也许看到后面就明白了前面的了。
在深入阅读之前能够迅速评估一本书的质量可以节省很多时间。基本上有几个线索:
看作者。牛作者写的书一般都不错。
看目录和简介。一份好的目录和简介能够透露这本书质量的相当一部分信息。目录结构是否清晰,是否直白(而不是装神弄鬼),都是衡量的线索。
看 Amazon 上的评价,这里要注意的是,除了看整体打分之外,更要看打分最低的人是怎么说的,因为小众意见往往有可能来自那些真正懂行的人(除了来踢馆的),如果在打分最低的意见里面看不到真正有价值的反驳意见的话就相当肯定书是不错的了。
看样章。Amazon 上一般都可以随机浏览一些章节的,表达是否清晰,论证是否严谨,内容是否深刻,基本是几页纸就能看出来的。
8. 如何搜寻到好书
几个线索:
同作者的著作。
Amazon 相关推荐和主题相关的书列(类似豆瓣的豆列)。
一本好的著作(或一份好的资料——不管是书还是网页)在参考资料里面重点提到的其他著作。
有时对于一个主题,可以搜索到好心人总结的参考资源导引,那是最好不过的。
1. 趁着对一件事情有热情的时候,一股脑儿把万事开头那个最难的阶段熬过去
万事开头难,因为从不了解到了解基本的一些事实,是一个新知识暴涨的阶段,这个时候的困难是最大的。有人熬不过去,觉得困难太大就放弃了。不过,狂热的兴趣可以抵消对困难的感觉,所以趁着对一件事情有热情的时候,开一个好头是很重要的。(当然,这并不是说持之以恒就不重要了)。当然,也许这个是因人而异的,对我来说我会在对一件事情有浓厚兴趣的时候非常专注地学习,把很多 groundworks 做掉。后面就会顺利一些了。
2. 根据主题来查阅资料,而不是根据资料来查阅主题
以前读书的时候是一本一本的读,眼里看到的是一本一本的书,现在则是一章、甚至一节一节的读,眼中看到的不是一本一本的书,而是一堆一堆的章节,一个一个的知识主题,按照主题来阅读,你会发现读的时候不再是老老实实地一本书看完看另一本,而是非常频繁地从一本书跳到另一本书,从一处资料跳到另一处资料,从而来获得多个不同的人对同一个主题是如何讲解的。比如最近我发现在看蒙特卡罗算法时就查了十来处资料,其中有三四篇 paper 和六七本书;这是因为即便是经典的书,你也不能指望它对其中每一个主题的介绍都是尽善尽美的,有些书对某个主题(知识点)的介绍比较到位,有些书则对另一些知识点介绍得比较到位。而有时候一篇紧凑的 paper 比一本书上讲得还要好。我硬盘里面的书按主题分类,每个主题下面都有一堆书,当我需要学习某个主题的知识时(譬如贝叶斯学习或者神经网络),我会把里面涉及这个主题的书都翻开来,索引到相关章节,然后挑讲得好的看。那么,如何判断一个资料是好资料还是坏资料呢?
3. 好资料,坏资料
好资料的特点:从问题出发;重点介绍方法背后的理念( rationale ),注重直观解释,而不是方法的技术细节;按照方法被发明的时间流程来介绍(先是遇到了什么什么问题,然后怎样分析,推理,最后发现目前所使用的方法)。坏资料的特点是好资料的反面:上来就讲方法细节,仿佛某方法是从天上掉下来的,他们往往这样写“我们定义… 我们称… 我们进行以下几个步骤… ”。根本不讲为什么要用这个方法,人们最初是因为面对什么问题才想到这个方法的,其间又是怎样才想出了这么个方法的,方法背后的直观思想又是什么。实际上一个方法如果将其最终最简洁的形式直接表达出来往往丢失掉了绝大多数信息,这个丢掉的信息就是问题解决背后的思维过程。
4. 学习一个东西之前,首先在大脑中积累充分的“疑惑感”
即弄清面临的问题到底是什么,在浏览方法本身之前,最好先使劲问问自己能想到什么方法。一个公认的事实是,你对问题的疑惑越大,在之前做的自己的思考越多,当看到解答之后印象就越深刻。记得大学里面的课本总是瀑布式地把整个知识结构一览无余地放在面前,读的过程倒是挺爽,连连点头,读完了很快又忘掉了,为什么?因为没有带着疑问去学习。
5. 有选择地阅读
很多人觉得我读书速度很快,其实我只是有选择地阅读。这里的选择体现在两个地方,一是选择一本书中感兴趣的章节优先阅读。二是对一本书中技术性较弱或信息密度较低的部分快速地略读。一般来说,除了技术性非常强的书之外,大多数书的信息密度很低,有很多废话。一般来说在阅读的时候应该这样来切分内容:
问题是什么?
方案是什么?
例子是什么?
如果是需要解释一个现象的(譬如《黑天鹅》),那么
现象是什么?
解释是什么?
支撑这个解释的理由是什么?
例子是什么?
一般来说,这一二三四用不了多少字就可以写完了(如果假设只举一到两个精到的例子的话),这样的无废话著作的典型是《合作的进化》;那为什么有些书,明明核心观点就那点东西(顶多加上几个精要的例子罢了)却写得长得要命呢?因为人的思维都有一个“联想”的特点,写着写着就容易旁逸斜出,而且作者自己也往往觉得引申出去挺牛逼,有时候很多与主题无关的废话就掺和进来了;那么,阅读的时候就应该有选择性地滤掉这些不相干的废话;此外还有一种可能性就是大量冗余的例子。一般来说组织得比较好的书会有详细且一目了然的目录和索引,根据目录首先就可以滤掉一部分(比如某个子章节的内容你以前是看过的),然后有时候作者还会举很多冗余的例子,如果你已经觉得印象够深刻了这些例子完全可以不看(一些书就非常厚道地对每个观点只辅以一两个最最经典的例子,譬如《与众不同的心理学——如何正视心理学》,这样的书我最是喜欢)。
6. 为什么看不懂?
如果看不懂一个知识,一般有如下几个可能的原因:
你看得不够使劲。对此古人总结过——书读百遍其义自现。虽然这个规律不是任何时候都成立的,但是从认知科学的角度看是完全可以解释的,我们在阅读的时候,注意力往往会有选择性地关注其中的某一些“点”,而忽略了另一些“点”,于是一遍看下来可能因为某一些忽略导致无法理解整体。或者干脆看的时候就没注意其中一些细节但重要的东西。此外,大脑理解一个东西需要一定的处理时间,人脑的处理速度很慢,神经冲动每秒传输速度不过百米,所以不能指望看到哪懂到哪。最后,我们可能因为思维定势的原因会从某个特定的角度去看一句话而忽略了从不同角度去理解的可能性。对于这类情况,仔仔细细地再多读两遍,多试着去理解两遍,往往会“哦!原来这样。”地恍然大悟。
其中涉及到了你不懂的概念。这是技术性的不理解。这种情况就需要 Cross Reference 。如果一句话中用到了你不懂的概念,那就去查,现在很多书都是电子书,直接搜索一下,或者,对于纸书,看一下书后面的索引就行了。奇怪的是很多人看不懂也不分析一下为什么不懂,就直接放弃了。正如解决问题一样,问题卡住解决不了,第一时间要做的就是分析到底为什么解决不了,而不是直接求救。
作者讲述的顺序不对,你接着往下看,也许看到后面就明白了前面的了。
杂项
7. 如何在阅读之前就能获得对一本书质量的大致评估在深入阅读之前能够迅速评估一本书的质量可以节省很多时间。基本上有几个线索:
看作者。牛作者写的书一般都不错。
看目录和简介。一份好的目录和简介能够透露这本书质量的相当一部分信息。目录结构是否清晰,是否直白(而不是装神弄鬼),都是衡量的线索。
看 Amazon 上的评价,这里要注意的是,除了看整体打分之外,更要看打分最低的人是怎么说的,因为小众意见往往有可能来自那些真正懂行的人(除了来踢馆的),如果在打分最低的意见里面看不到真正有价值的反驳意见的话就相当肯定书是不错的了。
看样章。Amazon 上一般都可以随机浏览一些章节的,表达是否清晰,论证是否严谨,内容是否深刻,基本是几页纸就能看出来的。
8. 如何搜寻到好书
几个线索:
同作者的著作。
Amazon 相关推荐和主题相关的书列(类似豆瓣的豆列)。
一本好的著作(或一份好的资料——不管是书还是网页)在参考资料里面重点提到的其他著作。
有时对于一个主题,可以搜索到好心人总结的参考资源导引,那是最好不过的。
相关文章推荐
- 我的学习思维:有关阅读的方法
- 静态方法 分类: python基础学习 2014-04-05 19:34 228人阅读 评论(0) 收藏
- 思维方法学习
- ucos在s3c2410上运行过程整体剖析---两种任务切换的实现方法 分类: μc /os ii 系统有关知识 2012-03-13 21:41 1102人阅读 评论(0) 收藏
- 东软学习,有关Javascript的几个实用方法
- 如何学习困难学科和实用思维方法-week1
- 学习C#的最好方法---斯玛特会员教程[另类思维](入门级)
- 继承父类,调用父类中的方法 分类: python 小练习 python基础学习 2014-01-10 17:54 325人阅读 评论(0) 收藏
- 新随笔--读书笔记《学会提问》:学习提出好问题的思维方法
- Python的静态方法和类成员方法 分类: python基础学习 2014-08-13 14:21 205人阅读 评论(0) 收藏
- Java学习笔记1------面向对象的思维方法
- OC基础:继承.初始化方法,便利构造器 分类: ios学习 OC 2015-06-16 19:27 84人阅读 评论(0) 收藏
- 字符串strip()方法注意事项 分类: python基础学习 2013-08-16 12:01 422人阅读 评论(0) 收藏
- 字典的fromkeys()方法 分类: python基础学习 2013-06-15 16:31 305人阅读 评论(0) 收藏
- vim python自动补全方法 分类: ubuntu python基础学习 虚拟机 测试 2013-07-05 15:37 603人阅读 评论(0) 收藏
- 快速入门过程与方法:设计与思路;如何学习新的知识框架,建立思维模式,熟悉应用场景体系
- Java开发学习之道:Java开源项目源码阅读方法及二次开发方法
- [php学习笔记]与类有关的魔术方法、魔术常量、系统函数
- 一直以来伴随我的一些学习习惯(三):阅读方法
- uC/OS-II学习笔记-定义全局变量 分类: μc /os ii 系统有关知识 2011-04-04 15:48 580人阅读 评论(0) 收藏