💡Summary
此页面由 Obsidian本地目录结构自动生成,用于保持知识层级与导航关系。
🧩Cues
🪞Notes
数据结构与数据的视角
同一份数据,不同的数据结构导致 sort 的时间复杂度不同,知识可能也是如此,有效的组织可能会带来效率的提升。
知识图谱
知识图谱是记笔记下意识容易想到的方式,从小到大不乏能看到各种非常花哨的笔记,包括我自己的xmind。
知识图谱有很好的可解释性。但可解释性本身就是一个很尴尬的东西,以生成模型为例,从 GAN,到 VAE,再到 NF,模型的约束越来越大,当然可解释性也越来越强,但落地应用最广泛的却是最不可控 GAN。再往大了说,所有的深度学习方法都是不可解释的,但这并没有影响深度学习的广泛应用,当一个黑箱模型确实好用的时候,谁会去关注它内部的原理呢?
参考:知识图谱是否是 NLP 的未来?- Maple 小七的回答 - 知乎 https://www.zhihu.com/question/267242467/answer/1862160175
以学 Java 为例,拿搜索引擎用知识图谱分析各个技术点,不如直接找个黑马的课程,对着 JD 来学来的高效。黑马的课程设计者就类似一个不可解释的深度学习框架。凭着市场嗅觉,给出了一个课程大纲,来保证学员的竞争性。
因此有效和可解释性之间没有必然的联系,换言之对于写知识图谱往往不需要过于详细的步骤去换取可解释性。
我们的大脑就是一个超级版本的不可解释的知识图谱,并且已经被证明非常 work。我们更重要的,可能是加深对于原子化的概念,也就是各个 concept 的理解。然后通过人类大脑对于概念的自组织的机制,强化我们的能力,拓展我们的边界。
那我们为什么还要费尽心思再去体外构建一个呢?
第二大脑
为什么需要concept base?
为什么要收集定义,并借此厘清自己脑子里有哪些清晰的概念?
李笑来一直在强调概念很重要,甚至把判断聪明人的标准是脑子中有多少清晰准确的概念。
语言学家告诉我们:如果我们的大脑对一件事情没有概念,那么我们的大脑就倾向于不去想那件事情;如果一个民族的语言里缺少某个概念,那么这个民族就倾向于从未思考过那个概念。
回想自己学习和精进一个领域的过程,本质上就是对这个领域内各个重要概念不断接触 - 理解 - 领悟的过程。不管是精通一门知识,还是掌握一项技能,fundamentals 都至关重要,与之对应的,便是第二大脑的 上的一个个concept。
第一大脑的工作方式
从头到尾阅读一本手册或教科书的意义并不是记住里面的一切知识以备万一,而是之后能记住「什么在里面」以便检索(快速浏览之后,你便能掌握用于搜索某个主题的正确关键词,来应对深入了解此话题的需要)。
为什么需要记录下来?
一、对于单个概念,避免注意力资源的重复投入。好处是知识的复利效应
比如 markji 中的卡片,有些之前总结的宝贵经验如果没有记录留存的话,之后过了一段时间,要对某个问题达到当时的认知,确实需要再投入一些重复的精力。一份组织好的,由自己切身总结出的知识库,确实可以避免这种重复的投入。
如果我们真的将专注力视为脑力工作者最弥足珍贵的资源,那就绝不能眼睁睁地坐视我们所取得的阶段性成果付诸东流;如果我们真的认识到生命中可用于非凡创作的时间无比珍贵,那就务必要构建起一个给力的知识系统,对各种过程性信息进行有效的回收再利用。
资产可以带来回报,而回报又可作为再投资创造其他价值。知识同样也可以随着时间推移而产生收益和复利,从而成为一种高回报的资产。就像每个月都在股市里投入一小笔资金一样,你在知识领域投入的每一分精力,都让你变得更加博学和聪慧。
二、对于整个网络,可以提示我们对于边缘节点的重视,
工作中,或者对于某个领域的学习了解中,我们常常会陷入一种境地,就是对核心概念了解比较深入了,但是对于目前的边缘概念无法很好拓展出去。一个重要的原因就是生物大脑要触达边缘概念本身就比较费力。第二大脑从整体上构建出概念网络后,其实相当于储存了我们当前网络能触达的边缘,这对于下一次的进一步拓展,其实是非常有利的。
为什么需要实时更新
缓存网,浏览维基百科的时候,可以看到很多关键性的『词汇』,标记为蓝色,并且可以点击跳转到对应的词条。再扩大一点,乃至整个互联网,无非就是将各种概念信息相互联系,能彼此间跳转的一张巨大的网络。我们可以删繁就简,随着自己对这个世界实践和认识的加深,构建起一张世界的缓存网,作为世间真理的抽象,岂不美哉!
这样的一个好处就在于可以快速知道对应的上下文,而缓存之间的最终联系方式绝对很像一张网一样,也就是缓存网。
由于我们的第一大脑完全依靠于第二大脑提供的concept,因此其实concept本身就是缓存的思维。
而所提供的上下文必然是最新的,因为缓存是去网络世界查询信息的中间接口,如果不时常更新,信息有误!也可以理解是缓存是对应的concept的进度。
为什么命名找大词
每一个 concept应一种概念,本质是对世界的某个抽象,对应着的其实是编程中的命名。选择并组织好整个第二大脑的各个 node,是第二大脑的关键。目前的一个经验是,每当命名找大词,比如说『前端从 A 子页面跳到 B 子页面,切回来的时候仍然能看到之前的数据』,这样的表达就不如『状态管理』这一个大词好用,起码在信息保留和传递中是如此。大词往往意味着更大范围的共识和更标准化的表达,意味着更容易组织起周围的概念,意味着未来复习知识时更低的搜索成本!
为什么需要双链特性?
原子化、唯一更新处。
解耦之后,我们少了很多繁琐的反复定义,能专心在一处将我们对于某个概念的最新认知更新好。
在概念库的基础上,会引申出另一个问题,就是重复的问题。如同软件工程 的 设计模式 中对高内聚、低耦合的追求一样,我们在构建概念库的同时,最清晰的方式也是原子化地处理,一处更新则处处迭代。这就需要我们用到类似代码中引用、import 这样的特性了。OB 的 双向链接无疑是一个很好的实现,给了每个概念一个唯一更新处。
操作细节
- 每一篇 markdown 对应一个概念、文章或者方案。
$符号结尾的是一些行动计划和执行方案,比如托福考到100$,@结尾的是一些带有目录性质的概念,比如Java@。除了行动方案外,其他文章的标题都尽可能用大词、术语,这是为了降低和 AI 交流,和他人交流,以及自己未来回溯搜索时的成本,因为大词就以为着更广泛的共识。 - 面向对象,原子笔记
- 单个文件命名上尽量用标准化的大词,就比如『设计模式』比『高内聚低耦合的设计思想』这样的话标准化和大众接受化程度高。这样以后搜索和引用都会比较方便
- 当一个概念的 usage 次数足够多的时候,才拆成原子笔记/ concept,如果被引高,抽出来收益就比较大。反之,就像 Java 中的内部类一样。
- 常青笔记,处处留意,常常迭代。
- 一篇内,围绕一个概念经常性地将更新上最新的认知,保持缓存的实时性。用---语法做分割,区分出 Unstaged 区域
- 文件夹内,随项目进度不断移动和调整file tree,一般是按照 最近项目->第二大脑和博客的方向做沉淀。Just do it!The most valuable notes I have today would never come to be if I needed to think about a folder or category for it.
- 最佳实践,将一些总结出的最佳实践用call out 语法 hightlight 出来。
整体是从信息 -> 知识 -> 认知 -> 习惯和智慧 的一个过程
- 1. 滴答清单做 inbox 收集闪念笔记
- 2. 项目驱动, 制定方案,吸收信息,项目结束后,信息部分归入 2.1,项目部分归入 2.3
- 3. 结构化吸收新信息,逐步沉淀吸收,从知识-> 飞轮
- 4. 一些输出性质的东西放到 3 博客部分
- 5. 整个文档做版本控制,基于 commit 的 diff 定期做 AI 复盘
Odyssey:
├── 1 一切皆项目
├── 2 第二大脑
│ ├── 1 知识
│ ├── 2 飞轮
│ ├── 3 存档
│ └── PARA.md
├── 3 博客
├── 4 复盘
│ ├── 2024-10-10.md
│ ├── 2024-10-11.md
│ ├── 2024-10-12.md
│ ├── 2024-10-13.md
│ ├── 2024-10-15.md知识网络
**上级目录:**暂无
下级内容:
反向链接:
**返回:**暂无