ZMonster's Blog 巧者劳而智者忧,无能者无所求,饱食而遨游,泛若不系之舟

把自我作为方法

自我是什么

在面对生活中各种压力的时候,总能发现一些自己身上以前没有注意过的问题,早些年我会将其中一些问题归咎于外界,认为这是世界的问题、他人的问题,带着愤怒消极或者激烈地去对抗,有时候会有点效果,但更多的时候不过都是徒劳。世界不以个体为中心而存在,这个道理或许很早的时候我们就能脱口而出,但希望世界是以我为中心这种隐秘的想法,或多或少、某时某刻,还是会涌现出来,为了对抗我们自身存在的虚无感。

遭遇挫折后,首先,我们会发现我们掌控不了全世界,接着就会发现自己周围的小世界也是如此,疾病随后当头一棒逼迫我们认识到即使是掌握自己的身体也需要持久的付出,而心灵 —— 连笛卡尔也只能说我思故我在,普通人心灵的浅薄和无知,老实说并没有什么价值。这种对自我存在价值的全面否定 —— 或者说找不到自我存在价值的感受,我想所有人都会有。哲学家、心理学家、科学家在这方面都有很多讨论,但最终怎么在废墟上把自己捡起来,还是得靠自己的学习、思考和实践。很惭愧,我在哲学、心理学、科学的相关方面都涉猎不深,不过是断断续续有一些自己的想法,并且觉得这些想法开始慢慢形成一个不那么脆弱的整体,勉强可以应付一些小问题,所以尝试把这些想法写下来。

既然自我价值的崩塌是由外而内的,那么重建的时候不妨逆着这个过程,由内而外来进行,先把自我观念建立起来,简单来说,就是好好认识自己,诚实地面对自己的想法,在此基础上,或许能更为有效地与周围的世界共存,不说改变世界,起码过得开心自在,岂不美哉。不过所谓内、外可能并没有那么界限分明,我所谓的由外而内、由内而外不过是由于我这个人类个体浅薄的认知和语言的无力而产生的不精确表述,不必纠结。

在我的想法里,自我观念会是支撑世界观、人生观、价值观的基石,因为:

  • 我们所认识到的世界不过是真实世界通过我们的感受器官形成的一个投影 —— 按照柏拉图的说法,我们只是在山洞里看到了外部世界的影子;从生物学上来说,人类能感受到的可见光只有波长 300 多纳米到 800 纳米这么小小一段,可感知的声音也只是频率为 20 赫兹到 20000 赫兹的一段;从物理学上来说,时空是十一维的,我们不过能感知其中的四个维度 —— 三维空间和时间,想象一下四维空间就能让普通人的大脑宕机,这方面我们不比蚂蚁有太多优势,数学家除外……这些与生俱来的限制,决定了我们对世界的认识必然是极其不完善的,我们没有办法去克服这些限制,但认识到这些限制,或许能帮助我们纠正一些对世界的错误看法
  • 所谓人生观,不过是如何看待自己的过去、如何看待自己的未来,而人类记忆的不靠谱和自我欺骗的习性都会扭曲我们对过去的印象,至于对未来的看法,无外乎基于过去的经验对未来进行预测或规划,首先受到过去经验的限制,接着又受到此刻自我观念的影响,所以更清楚地认识自己,能帮我们更理智地看待过去并应对未来的各种不确定性
  • 世界观和人生观方面,我们或许还可以努力客观一点,但价值观则完全是主观的,因此也和自我观念的关系更加紧密;此外,自我观念是时刻在变化的,价值观又可以反过来模拟「理想自我」来帮助自我改进

事实上自我观念、世界观、人生观、价值观四者之间的关系很复杂,并不能简单区分开来,但整体上来说,不妨抛开哲学、心理学的话语,将「自我」作为一件认识、影响世界和实现自我价值的工具,熟悉和改进这个工具则是我的目的。至于为什么要抛开哲学、心理学的话语,自己新发明一套话语,主要是哲学、心理学方面的话语我不懂(吃了没有文化的亏),另外就是觉得哲学、心理学的话语都不够精确。

我将「自我」简化为这样一个系统:

\[y_{t} = f(x_{t}|C, b, h)\]

其中 \(x_{t}\) 表示当前发生的事件,\(C\) 表示当前的环境,\(b\) 表示当前我的身体状况,\(h = x_{0},x_{1},...,x_{t-1}\) 表示我的过往经历(由过去发生在我身上的事件序列构成),\(y_{t}\) 表示这个系统输出的一个事件。也就是说,它接受一个事件输入,根据当前的环境、身体状况和过往经历作出反馈,仅此而已。

这样定义之后,我就可以摆脱「我思故我在第一个我和第二个我是不是同一个对象」这种无比纠结的语言游戏了,也不用在什么本我、自我、超我、经验自我、纯粹自我、现实自我、理想自我、客我、主我……的话语里打转了。我所定义的这个系统局部来看是处理好一个个事件,也就是做好当下的一件件小事情,全局来看则是将来也能处理好一件件事情,这样就足够了。

在这个基础上,我也可以尝试去回答一些以前难以回答的问题了,比如说:

  • 如何认识自我?

    简单,给定各种场景,询问自己在该场景下会如何反应,仅此而已,不需要去刻画一个整体的「人格」,也可以摆脱「我爱读书」、「我很内向」这种标签化的自我评价。

  • 如何改善自我?

    简单,改进这个系统,让它能在未来,对相同的事件作出更好的响应,仅此而已,不用考虑什么幸福、自由之类的虚无缥缈的概念 —— 我并不是说幸福、自由没有意义,只不过幸福、自由是一个难以界定的准则,直接以此作为评价标准是否具有指导意义很不好说。

  • 如何确定自我价值?

    简单……好吧,仍然不简单。必须要承认,确定自己的价值,仍然是一个很困难的事情,毕竟人类的存在毫无意义。但基于我这个定义,仍然可以尝试来回答这个问题:好比软件的价值是其所具备的功能,我所描述的这个系统也是一样,它的功能就是输入一个事件然后输出一个事件,那么这些功能得到使用就是其价值所在,换言之活着就是自我的价值所在(看来我是一个存在主义者);或者换另外一种说法,还是类比软件,软件的价值是对用户有用,我所描述的这个系统,大一点不妨将整个世界当作用户,小一点不妨将和我有互动的人、物当作用户,响应这些用户的操作就是这个系统的价值所在,只不过这样的话,对无神论者来说要满足很多很多用户的需求,宗教信徒的话只要让神这个 VIP 用户满意就好了。

    虽然这样得到的回答仍然不令人信服,但至少我有了一个相对自洽的结果,对此我很满意了。

初步解决了「自我」的建模后,仍然存在一些根本性的问题需要回答,比如说:

  • 改善自我方法中提到了「更好的响应」,所谓的「更好」是什么?
  • 在上一个问题未得到满意回答的情况下,是否有办法制定「更好的自我」的评判标准?

第一个问题,所谓的「更好的响应」,是无法由这个系统本身来给出精确答案的,让系统评价自己的行为是否合理,这将会陷入一个死循环。但正如我作出这个定义是为了避免去追寻一个单一、绝对的自我评价一样,一个单一、绝对的判断这个系统行为是好是坏的准则,在我这里也不需要存在,它可以是一个动态的、随时变化的标准,简单来说就是好坏是需要根据当时所处的环境 \(C\)、身体状况 \(b\) 以及个人经历 \(h\) 来共同做决定,比如说

  • 早上睡醒了,根据过去的经验,在床上刷手机会推迟起床时间影响当日计划导致晚上因为碌碌无为而心生懊悔,那么马上起床就是一个更好的行为
  • 出门去上班,此时天气晴朗微风缕缕气温舒适,那么骑车 10 公里去上班,比坐地铁去上班,就是一个更好的行为
  • ……

虽然上述例子已经把评价的前提条件缩减到了「当前场景」,但其实还是隐含了一些价值判断在这里,比如说「完成今天计划做的事情」比「没有完成今天计划做的事情」更好,这就涉及到价值观的问题,仍然非常模糊,但这样已经足够了,一件件小的事情的价值是相对容易判断、记录、分析的。

如果非要用一个终极的准则比如说幸福感去指导,会怎么样呢?早起会让我更幸福吗,不见得,躺被窝里多幸福啊;骑车 10 公里去上班会让我更幸福吗,那也未必,顶多就是心情舒畅一些。再说了,幸福到底又是什么呢?

对这种标准的另外一个担心是,只看眼前,会不会因为过于短视而损害未来的长期收益?当然会有这个问题,但我的理念是,未来是不可预测的,长期收益也很难判断,至少我判断不了,与其在每一件事情上去衡量未来能有多少回报,不如做好当下的事情;此外,可以将长期收益逐级分解,比如说把一年目标分解成很多小目标,这些小目标就有可能作为指导当前行为的一个准则,也不失为解决短视的一个办法,但这需要很强大的问题拆分、执行能力,不知道有多少人能做到呢?

熟悉人工智能的人,大概能看出来我对「自我」的建模,其实借鉴了强化学习的模型,在强化学习里也是一样,评估长期价值很困难。最近有看到一篇新的论文很有意思,是在 NLP 任务中应用强化学习,然后用情感分析的结果作为每一个决策的收益,这个也可以借鉴到这这篇文章讨论的问题上来,比如说,如果一个事件响应完后能让「我」感到开心、平静这种正面的情绪,那么它就是一个好的响应。甚至可以用金钱收益(或损失)作为标准,这里就不再展开了。

第二个问题,我认为是有的,那就是去考察这个系统内在的一些特性,比如说

  • 连续性: 在短时间内,相似的场景下,对相同的事件,系统能作出相近的响应 —— 不要做一个反复无常的人
  • 可解释性: 对每个事件的反应,可以用语言给出合理的解释 —— 不要做一个不可理喻的人
  • 适应性: 当场景、身体状况、事件发生变化时,能给出不同的响应,但这种变化的程度不应大到破坏「连续性」 —— 不要做一个顽固死板的人
  • 逻辑上的一致性: 从可解释性那里提炼的逻辑,应该在适用的场景下也发挥作用,如果在某个适用该逻辑的场景下实际的响应逻辑与前面的逻辑矛盾,那么视为破坏了逻辑一致性 —— 不要做一个自相矛盾的人

对「自我」这个系统的内在评判指标,暂时就想到这么多了。

把自我作为方法

前面我聊了很多我建模「自我」的想法,但说到底,这些都不过是思维游戏,或者说语言游戏,如果它不能真地在我的个人生活中发挥作用,那么无论我将其设计得多么精确、细致,也不过是空中楼阁、纸上谈兵。工具当然要拿来使用,模型当然要拿来进行预测。项飚在《把自己作为方法》一书中表达的一个核心观点,就是「亲身实践」对认识世界和社会是很重要的,看起来像是废话,但我们可以反思一下,我们很多行为的动机和依据,可能都不是来自于自己的经验,而是「别人都是这么做的」、「我听说……所以……」,很多人口口声声独立思考、自由人格,实则不堪一击。

我将「自我」建模,就是要将其作为一件工具,这件工具的目的是自我完善、探索世界甚至影响世界 —— 不要误解,影响我周围一平方米也算是影响,我并没有什么很大的野心。为此,我首先要做的是熟悉这件工具,与自己磨合,并逐步改善。

作为一个程序员,在我的学习、工作经验中得到的一个经验就是,如果你想了解一个工具,那么就去使用它,然后进行观察,在足够的观察之后对其进行分析,在此基础上才能进行改进。为什么自我改进、自我提高这么难,因为很多人对「自我」这个系统并没有有意识地、主动地去使用和观察,在这种情况下何谈改进呢?因此,为熟悉「自我」这件工具,我正在做以下几件事情

  • 记录我的情绪反应,包括当时的场景、事件,并尝试解释我的情绪反应是如何发生的
  • 记录我每天的时间使用,包括我的工作、学习、日常生活和娱乐,目前我已经坚持了一个多月,平均能将自己每天 90% 以上的时间使用情况记录下来
  • 记录我每天的支出状况,已经坚持进行四年有余
  • 记录我读过的书、看过的影视剧、玩过的游戏

通过这些记录,我比过去更加清楚了我自己的一些特性,在详细的记录下,自我欺骗无所遁形,比如说我的情绪控制能力其实很差,过去我会给自己各种借口,比如说工作压力很大啊、我是对的别人是错的怎么对方那么顽固啊,但记录下来当时的细节后,哪怕我当时做记录的时候还有情绪,但是对环境、人物的描写仍然会尽量客观,那么之后在冷静下来后再去回顾,就会发现我自己的顽固和进攻性是那么的明显。

做记录还有一个好处,就是觉察自己的每一个行为 —— 比如说,在我开始做时间使用记录前,我决定去玩游戏可能是一个潜意识的行为,可能是因为厌倦了工作想要松口气或者心情不好想要发泄一下,但这些都是下意识完成的,但相比玩游戏,可能去休息 10 分钟会更好一些;当我开始做记录后,我需要在开始玩游戏时进行计时,这里就让我获得了一个停顿的时间点,让我能意识到我要主动地去玩游戏了,多这么一个停顿,就能觉察到自己所要做的事情,就给了我判断这个行为合理性的时间,这对我来说是非常有用的。觉察到自己的行为,除了帮助我更好地决策外,还让我对「现在」的感受更加的强烈和清晰了,让我感受到了更多的乐趣。

目前为止,我做的主要事情,还是在记录上,在分析、改进方面做得并不多,接下来的计划有这么一些

  • 做更多方面的记录,比如食物的摄入、周围环境的变化、我对不同事件(除情绪外)的反应……
  • 定期(按周或按月)回顾这些记录,分析问题、总结经验

除了记录、分析外,需要注意的是,这个工具是会受到环境、身体状况影响的,所以学习相关的知识也是很有必要的(看,学习的意义也有了!),不过学习是一件终身的事情,不太好做很具体的规划,目前也还是以记录为主,我目前是这样记录阅读过程的:

  • 用 Zotero 从豆瓣或者 Amazon 抓取一本书的元信息(作者、出版社、ISBN 等)
  • 找到这本书的电子版,作为附件添加到 Zotero 条目中
  • Zotero 使用 Better BibTex 导出成一个文献数据库文件,其中包含了这个书籍
  • 在 Emacs 中使用 helm-bibtex 查找到这本书,使用 org-roam 创建阅读记录,使用 org-noter 进行阅读,记录标注、笔记
  • 使用 org-roam 将阅读过程中学习到的概念、方法分离出去形成单独的笔记,并链接回来

关于笔记、知识管理,准备之后单独写一篇文章来阐述细节,这里就不展开了。

漫谈

前面也提到,我为「自我」所做的定义,其实很大程度借鉴了人工智能里的强化学习模型,就是击败围棋世界冠军的 AlphaGo 所使用的核心算法。人工智能领域的很多算法、模型,都比心理学、哲学更具有参考价值,首先里面的模型其实本来就是从认知科学里分化出来的,然后为了应对实际问题而进行了简化、量化,消解掉「心智」这个神秘的成分,留下冷酷的数学公式,这就使得这些模型天然地就和人类的认知过程贴近,同时又精确而可执行,是任何人都能借鉴的。

除了强化学习,我再列举一些人工智能、机器学习里的概念

  • 误差反向传播: 对比实际结果和预期结果之间的差异,从后往前反推差异的来源并进行调整 —— 类比到人类身上的话,就是设定预期,然后复盘分析问题,很直白的道理
  • 过拟合: 当一个模型只在很少的数据上进行学习时,往往会过度适应这些数据,导致无法应对正确新的数据 —— 类比到人身上的话,见识太少,面对新问题时就很容易手足无措
  • 对比学习; 通过大量相同事物的有差异的表现来认识这个事物
  • 知识蒸馏: 用一个很大但效果很好的模型去教一个小模型,让这个小模型也能表现很好 —— 类比到人身上的话,向优秀的人学习是提高自己的一个很好的方法
  • 对抗训练: 模型 A 的目标是生成数据,尽量让模型 B 分辨不出来这是生成的,而模型 B 则要努力辨别出来,最终会让模型 A 生成的结果特别逼真 —— 类比到人身上的话,有一个水平相当的对手竞争,会让人得到快速的提高
  • ……

这些类比还能写很多,一时半会是写不完的。总之,哪怕不是人工智能行业的从业人员,泛泛地了解一点相关的理论知识也对自我认识和改善会有帮助的。