如何构建和管理自己的知识系统

  版权信息:
● 本博客使用CC 3.0协议,转载请保留该信息。
● 原文作者: 戴晓天 @ 云飞机器人实验室
● 原文地址: 如何构建和管理自己的知识系统

1. 背景

三年前,我在做硕士毕业设计的时候第一次使用Evernote(印象笔记)收集资料,之后就一直使用Evernote记录一些备忘和生活琐事,但也没有形成相对完整的系统。开始读博士之后,我习惯随手在论文上记批注和笔记,觉得这样个人观点和原文的耦合度会比较高。但是等到要检索和引用资料时,脑中对这些知识点有些印象,可很多资料就是找不到出处,这时又要重新谷歌或者去翻文件夹。这让我思考是否需要将笔记做成电子形式,这样检索和使用的时候会比较方便,知识也能线性积累。去纸化的过程是比较痛苦的,因为我们从小到大习惯了纸质笔记这种记录方式。我们的工具十分简单(纸和笔),却可以记录各种类别的信息(文字、结构图、流程图、批注)。然而到了电子时代,我们可用的工具很多,但却很难形成和纸质笔记相比的“灵活性”。当然,相比传统的笔记方式,电子笔记可以多次修改、任意排序和整理、发布和分享、互相引用与检索,但有的时候却不如传统笔记那么“直观”和“简单”(想想用pdf做标注 v.s. 在书上直接做批注 或是 用画图软件画一个流程图 v.s. 在纸上随手画一个流程图)。在过去的一年时间里,我一直在思考和实践电子化笔记系统的可行性,以及如何凸显和最大程度发挥电子笔记的优势。而我发现,电子笔记不仅有上述提到的几个优势,还可以成为构建和强化知识系统的有力工具。

这里,我将一切广义上可以提高人对某一事物或领域的认知或记忆的信息(以文字为主)称为知识,而将通过计算机、平板、手机等手段记录个性化知识的方式称为电子笔记。此文分享了我对于知识和记笔记的理解,以及通过电子化工具构建知识系统的思考和经验。

2. 为什么需要记笔记?

上一节聊了我为什么需要将笔记电子化的动机,现在简单说一下我们为什么需要记笔记。每个人都有这样的经历:和别人聊天时,总是有一些感觉在嘴边的东西,大脑却无法回忆起来;或者某天去超市购物时,明明觉得需要买什么,却怎么也想不起来。不管我们认不认同,人脑的潜力不是无限的。理解我们自身局限性的其中之一,就是认识到人脑是有局限性的,并且记忆的容量是有限的。所以构建一个笔记/知识信息系统,就是要补偿人脑的这种局限性,将笔记系统作为我们的第二大脑。这个观点已经得到了主流大众的认可。我们知道记笔记需要花费时间,这种时间实际上是一种对未来的投资。我们一般记录事情的动机有两个:一是为了增强对摄取信息的认知;二是为了日后需要的时候可以回想起来。大部分人也应该可以认同记笔记是强化知识的重要手段。除此之外,记笔记的核心价值是“使用”。也就是说,一个好的笔记应该是有使用价值的。一个shopping list可以让你在逛超市的时候买齐所有的东西;一篇日记让你可以回忆过去自己经历的事情;一篇论文笔记让人在需要的时候可以快速回忆起论文的核心观点;一个programming reference可以让你在编程的时候快速想起API的用法,而不用每次都去Google. 这些都是使用价值,是你记录时投资时间换来的回报。记录信息的本质是提供使用价值,所以评价一个笔记系统也应该用”可使用性”为评价方式。有一种观点是:现在(几乎)所有的信息都能在因特网上搜索到,所以需要信息的时候都可以即刻去搜索。这种观点本身没有问题,但是以目前的搜索技术和因特网的归档程度而言,这种方式的时间开销更高:因为你要从海量信息中筛选、判断、提炼出你想要的那一部分信息。而笔记则是“一次记录,多次使用”,一劳永逸。并且有新的知识点时,可以修改、完善之前的知识(另一点电子笔记的优势就是修改起来十分简单)。我们记笔记,就是让笔记成为知识的载体,也是为了日后需要这个知识时提供便捷。

3. 文字的分类

理解如何记录信息的第一步,是意识到信息与信息之间是有很大差别的:一篇娱乐新闻的读后感和一篇期刊文章的评论,其承载的信息和用途是不同的。根据信息种类严肃程度的不同,我将这些信息进行以下分类:

Category 1. 生活类:备忘录、日记、随想等
Category 2. 严肃类:工作日志、读书笔记、文献记录等
Category 3. 专业类:博文、论文、出版物、专栏等

第一类我称之为生活类,这一类包括基本常识,以及个人主观的、随意的记录。比如我自己喜欢将每天代办的事情记录下来,或是写生活日记等。这一类信息的特点是:不需要对信息进行太大的加工,并且一般来说都是相对隐私的,不会公开给别人。所以在记录和措辞方式上也会比较随意,只要能满足自己的需要就可以。这里我推荐使用的软件是手机自带的备忘录,Evernote,和素签(iOS日记应用)。

第二类就相对严肃一点了,这一类承载的知识和信息相对专业,并且需要投入很多脑力活动。要求我们对原始信息进行抽取、提炼、总结等工作。如听了一场seminar报告,对作者的观点有疑虑或是认同,就写了一篇感想。这类信息的特点是,信息的专业度高,并且不同的人对于严肃的定义也不同(如物理专业的人会把物理分为第二类,却会把生物分类为第一类,因为生物方面的知识对其来说不属于专业知识)。此类信息需要日后自己或他人阅读,所以在结构和语言上更加严谨。对于这一类的信息,我使用一款名为Leanote的软件进行记录和管理 [1]。最早我使用的是Evernote,但是Evernote不支持Markdown、Code Highlight以及MathJax的功能,对于理工科专业的人很不方便。

第三类则是严谨程度要求最高,并且知识的系统化程度最高的。这类信息需要大量的时间收集、整理。因为知识的体系化程度高,一般需要有内在的层次和结构关系。Cat 3的知识有时会依赖Cat 2,或者说Cat 3是Cat 2的总结和升华。不同于一类和二类信息以自己使用为中心,三类信息的读者可以是除你之外的人,这就要求知识具有可传播性。也就是说除了你自己可以理解,别人也要能透过你的文字和其他信息来理解你所要表达的知识。这就要求你在表述“意思”之外,还要有好的文笔。对于论文或是书籍我使用的软件是LaTex,也是使用的比较广泛的写作环境。至于博文,我就相对比较随意了:有时候用MarkdownPad/Evernote写一个框架,有时候用Leanote写,有时候就干脆直接用Wordpress自带的编辑器了。

除了上述根据严肃程度的分类外,我还总结了另外一种分类方式,就是按照文字承载的功能划分信息:

A. 记录:没有知识加工的过程,作为辅助记忆的手段。
B. 整理:对原输入数据进行一次滤波,小幅度修改原文的内容和结构,删去不需要的信息等。
C. 归纳:通过脑力活动,对数据进行结构化的整理。
D. 发布:对归纳后的信息进行文学化、排版、公开/或非公开的发布过程。
E. 记忆、索引、查阅:对A、B、C、D过程中产出的文字进行使用。

其中A -> B -> C -> D是递进、逐层依赖关系,而D和E是最终目的。也就是说,我们在这个过程中所创造的知识最终都是期望被以后查阅、引用或者公之于众的。

4. 文字产生的工作流

在理解了以上的概念后,我们来看一下一个文字是如何从无到有的:


▲ Figure 1. 文字产生的work flow

简单说来,一个文字经历了资料采集、生产、输出的过程。采集的过程为之后的文字提供了引用依据、素材(包括图片素材,公式等)、话题(如”吴恩达将机器学习等同于电力”)或者原始资料本身提供了文字的主体(比如一般对于专业书籍的笔记,其内容来自于对原文的转义和理解)。采集的信息需要通过一定方式的整理,这里大部分人推荐的软件是Evernote [2][3]。Evernote支持文字、图片、附件,可以非常容易的copy-paste,有网页抓取,标签和搜索的功能,所以我认为极其适用于第一步的资料采集。

信息整理的过程就是将采集到的信息提炼,提取出自己期望或是对文字产出有用的信息。我提炼信息的过程有三种:

1、删,删掉无用部分;
2、加,将有用的信息单独整理出来;
3、概,使用自己的语言梳理、分段概括原文的内容。

信息整理的过程是将碎片化知识系统化,并且将别人的知识转化为自己知识的过程。有的人喜欢收集一堆信息,却没有自己的总结和整理。这样的信息与其放在电脑里浪费空间,不如删掉,需要的时候再去找就可以了。在互联网时代,知识的碎片化现象很严重,书本也不再成为最新知识的承载体 [5]。整理的过程就是让自己的碎片化知识逐步成型的过程。

有了一部分整理后的初始信息后,我们就进入了文字生产阶段。这个阶段可以十分简单,比如一句话概括看了的一部电影(豆瓣短评),一段话说明一篇论文使用的方法的优势、劣势、创新点;生产的过程也可以很复杂,比如一篇Survey需要几百篇的references作为输入。生产文字时需要迭代,需要收集新的资料。生产文字也需要大脑脑力投入。不同于资料整理的过程,这个过程需要揉入自己的想法、创新和思考。需要在理解原文字面上的意思之后,进行概括、引申、扩展、表示赞同或是否认。这个过程是整个系统中最核心的一部分,它决定了你手里的资料能否转化为自己的知识。

文字输出阶段就是将临时的文字存储/发布的过程。这个发布的对象可以是你自己、你的同事、你的group,或是你也不知道的概念化的一群人(概念化:不是具体的人,而是具有一定特征和标签的人(如我的博文的对象是电子爱好者、机器人研究者、嵌入式系统从业人员等)。文字输出是文字生产后的必然步骤,生产的文字总会以某种形式输出出来。比如一篇空间日记,写完之后就(公开或非公开)发布在了系统里。又比如一篇论文发布给了一个conference,一本书给出版社publish。即使是在电脑上用word写的文章,也存储在了电脑硬盘里。总之,输出的过程就是提供一个日后访问的接口,将临时的资料永久化保存的方法。对于现代人来说,网络式的输出是最优的发布渠道。无论是发布到自己的私有云笔记系统,或是公开到博客/专栏/公众号,都可以让自己/别人快速、随时的访问到这些信息。

最后,输出的文件可以选择进行归档。归档的过程是将输出的文件进行层次化管理、标签的过程。归档的本质就是将相同类型的文件统一整理,归档也是将个人知识体系化的过程。归档的方式很多,这里举我自己的几个例子:

  • 将新的博文添加到不同的分类目录下,并添加关键词标签;
  • 所有生活日记、工作日志按年份进行整理,并放到Evernote的单独子目录下;
  • 发现大量同质信息后,将其整理到一个单独的系统中(目前正在尝试将控制系统相关知识做成wiki [6])。

之所以要归档,是因为输出的文字有时只是零散的知识,需要有一个大的结构来让碎片化的信息行程体系结构。这个步骤有时候就是简单地建层次化的文件夹,有时候相对复杂,需要一个额外的新系统来管理,甚至是一个再创造的过程。举一个例子,你写了50篇文章C语言的文章后,发现这些知识可以按照章节或是深浅划分,甚至这些内容提供了一本新书的基础。归档的另一个作用是提供检索和使用时的方便。想想我的Evernote现在有100多篇note,从生活到科研的内容都有,如果不建立目录层次,需要的时候根本找不到想要找的内容。我自己是一个深度整理狂,喜欢事无巨细的整理。但我要说归档层次的建立是和note的数量相关的。如果你只有5篇文章,细分之后分了5个分类,每个分类下面一篇文章,那和不分类没有区别。而如果你简单分成 工作 和 生活,那你不仅区分开了两种完全不同的notes,而且也没有增加检索时的复杂度。但是如果你有30篇notes了,那你这时候要考虑再分出一些子分类,让每个分类下的内容尽量少一些。至于检索功能,很大程度依赖你所使用的软件。Evernote用户津津乐道的功能就是它的搜索所有笔记标题和内容的功能,以及可以给note打上不同标签。我觉得检索功能确实很方便,对于数据较多时也十分有效。想想有搜索引擎之前和之后的互联网就能理解数据可检索性的重要了。

5. 工具列表与比较

前几章我提到了很多我使用的工具,这里总结一下不同工具适用的使用环境和彼此的优劣:

工具
Good for
Bad for
Evernote
raw资料收集,工作日志,随时随地有可能需要查看的内容。
‘严肃的’文字生产,存在隐私和机密(日记等)。
Leanote
支持原生MD和LaTex,适合作为科研文字的生产平台。
可以快速发布blog和生成目录,适合知识的归档。
不适合:需要检索和长期存放的知识。
可靠性目前不如Evernote。
素签
对纯文字的记录,适合日记和文学创作(生活的、记录)。
LaTex
非常严肃的出版物(论文,pdf出版物)。
需要最终生成网页的知识(博文、wiki等),虽然有软件可以将LaTex转成网页,但是还需要将网页手工嵌入网站模板中。
共享程度不如博客,阅读群体数量少。
WordPress/Hexo/Jeklly
三个主流博客系统,适合知识的输出和共享。
尚未形成结构和体系的知识。
Mkdocs (Wiki)
体系、系统的知识整理。可以通过任意终端查阅、搜索。
尚未形成结构和体系的知识。
需要频繁添加、修改的知识。
OneNote
较为通用的知识,需要图片和文字共存,板式结构灵活。
缺乏对公式、程序代码的支持。
Tiddly Wiki
非线性、跳跃的知识管理和归档。
有明确层次和体系的知识

其中Evernote是目前最为广泛使用的云笔记软件。Leanote是我自己找到适合在科研工作中替代Evernote的云笔记软件。素签是我遍历了iOS可用的日记软件后选择用来进行日记、文学创作的手机app,功能单一但是有简洁的书写环境。LaTex不用多说了。三个主流博客软件,Wordpress功能强大,但是资源占用多。后两个可以在Github托管,可以使用Markdown生成静态网页。Mkdocs是我找到的一个维基系统,使用Markdown写作,可以支持MathJax公式和检索。OneNote有很多人推荐,我本人尝试使用过用来记生活常识、历史和地理,但是我用起来不是很习惯,所以没有坚持下去了。但是OneNote本身用来记录和整理通用知识的功能是非常强大的,读者可以自行研究、开发。TiddlyWiki是万维钢提到的他使用的知识系统 [4],我觉得很有意思就提一下,因为这个系统是”非线性”的维基,你可以按照任意顺序打开和排列维基条目。

6. 结论

写这篇文章花了我两天时间。我自己作为还在半路的实践者,觉得这其中还有很大可以开发和扩展的东西。很长一段时间我都在思考知识是什么,知识在我们大脑中的表现形式是什么,知识是如何产生和迭代的。这些思考最终产生了一个结论:就是知识有记忆时效性、层次性和关联性的,而我们的大脑所能记忆的细节又是那么有限。作为一个普通人而非记忆大师,我们最终在大脑中形成的知识实际上是一些概念和经验,而非具体的细节。我们所处的是一个信息爆炸而又缺乏秩序的时代,我们应该需要建立这样一种辅助的系统:通过整理资料、记录笔记、写博文、创建维基的方式,来强化自己对于知识的理解,扩充自己的知识库。这个过程耗时,甚至有时候我也不确定这样做是否就能加深对知识的理解。但是经过长时间的尝试之后,有一点我是可以肯定的,就是这种方式减少了我对同样信息的重复搜索,节约了时间也避免了分心。另一点我深刻理解的,就是你手上里的资料在你电脑里和在网络上没有区别,只有当你把它整理、转化为自己的理解时,它才成为你自己的知识。

参考资料

[1] Leanote官方主页,我认为是一款针对程序员和科研人员的笔记软件,https://leanote.com/

[2] Evernote官方主页,一款全能型云同步笔记软件,https://evernote.com/intl/zh-cn/

[3] 知乎 – 如何构建自己的笔记系统,https://www.zhihu.com/question/23427617

[4] 万维钢 – 《万万没想到》,Part Two – 笔记本就是力量

[5] 罗辑思维,第205期:这一代人的学习

[6] 我正在做的控制系统维基,http://wiki.xiaotiandai.com/control/

Leave a Reply

Be the First to Comment!

Leave a Reply

wpDiscuz
%d bloggers like this: