“反目标“的力量

原文:https://medium.com/@awilkinson/the-power-of-anti-goals-c38f5f46d23c

我是怎样通过专注于我讨厌的事情来设计完美的一天的

去年,我的合作伙伴Chris和我一起坐下来思考我们到底应该把Tiny做成什么样子。我们想出各种遥不可及的目标,但当我们沉下心来时,发现我们真正的目标其实非常简单。我们想要做的和其他那些成功的人一样:享受我们的工作。

我们有很多朋友,虽然金钱方面富有并且也相当成功,但其实客观地说,过得比我们要惨很多。日历排的满满当当,每天飞来飞起,婚姻摇摇欲坠,没有时间陪孩子,每天睡4小时。

主观来看:很棒很充实,富有而成功。

客观来看:感觉像坨屎。

我们常常反对所谓的“大公司”做派(无休止的会议,官僚,设置工作时间等等),并且也常常如愿。但过不了几年,我们发现似乎时间满满还是被那些自己不想做的事情填满了。

我们适应了无休止的日程安排,感觉“异常充实”。适应了和那些不喜欢的人沟通,适应了日程被其他人的需要占据。

今年初,我们决定要找出一个办法来让自己的生活过的更有趣一些。因此,我们用了一些从巴菲特的合作伙伴Charlie Munger那里学到的小技巧,他常说的一句话“告诉我我会死在哪,我就不会去那了”。

他谈到了反转,很多问题反过来思考会更容易解决。也就是说,只要想想你不想要什么即可。他的原话:

“如果能够换个方向想问题,问题通常会变得更简单。换句话说,如果你想帮助印度,那么不应该问‘我该如何帮助印度’,而是‘什么事情会对印度造成伤害,如何避免’。

“人生/事业的很多成功都源于知道自己应该避免什么:早死,错误的婚姻,等等。”

因此,不要去想完美的一天应该是什么样子,而是要想想糟糕的一天是什么样子的,然后避免它。转换了思路后,我们想到了“反目标”。

糟糕的一天:

1. 长时间的会议

2. 日程排满

3. 和不喜欢/不信任的人工作

4. 欠别人东西/不可控/义务

5. 必须要呆在办公室

6. 旅行交通

7. 疲劳

“反目标”:

1. 如果可以通过邮件或电话(甚至都不需要)解决,就不要发起会议

2. 日程表安排不超过2小时/天

3. 绝不和不喜欢的人有任何义务和业务 – 即便需要伤害一些感情

4. 绝不放弃公司的控制,不欠人情给那些可能是需要我们的人(确保互惠原则不存在)

5. 在咖啡馆工作并且可以途经一座漂亮的公园,而且没有人打扰

6. 视频会议或者付钱给那些愿意来找我们的人

7. 绝不安排上午的会议,如果需要的话,睡个懒觉

问题解决了。

当然,我们仍然会遇到不可避免的糟糕的一天,但是这些简单的“反目标”让我们的生活美好很多。找个时间试试,因为它很简单,很强大。

“从长期来看,试着‘不做蠢事’要比‘变的聪明’更现实。

— Charlie Munger

 

若干“思维”

存在一些“思维”,让人哭笑不得,记录一下:

1. 恩人思维

2. 穷逼思维

3. 不能反对思维

4. 极其敏感思维

其实很多似乎都可以被“巨婴“涵盖,也就是思维封闭造成的各种“营养不良”,而且很难治疗。有些存在重叠,回头分析一下这几种现象。

小说和宇宙

之前在某篇公众号的文章中读到一个片段:大致是,一个人在一个流落到一座荒岛上,然后通过制造了一个低级宇宙来产生电能,然后他把这个宇宙的时间参数调整了一下,来让电能产生的更快。在现实中,写小说似乎就是创造了一个宇宙,然后让宇宙中的那些“人”来给作者产生能量(钱)。

之前读到这个片段时,有种感觉,我们也许就是低级“宇宙”里的生物,为了这个宇宙的主人做一些事情 – 而且也许是高级宇宙中很微小的事情。

说到“改变”,孩子是大人的老师

看了几本关于所谓教育孩子的皮毛书籍就一副什么都懂了的样子,孩子你有多懂?凭什么高高在上颐指气使,我看都不见得有什么长进,在改变这点上,孩子才是大人的老师。

有时我会不自觉地把孩子和自己小时候比较,虽然我经常建议儿子无需和别人比较。其实这也是典型的静态思维,凭什么让孩子和你的优点比较,每个人都是不同的,反过来想,孩子难道没有你小时候不具备的优点吗?必然有。

关闭微信朋友圈一周后

一周前关闭了微信朋友圈入口,一周过去了,似乎也没什么影响。因为之前朋友圈也主要是在碎片时间“刷”,而这一周以来的碎片时间去了哪了呢?好像变没了。

其实我们哪有那么多“碎片时间”,其实都是正常时间被偶尔的碎片时间“污染”掉了,本来吃过午饭可以放空思考一下,结果被这个“刷朋友圈”的动作占据了,而且还不知不觉多出了半个小时。结果思考的时间没有了,大脑里无端出现很多新的事情 – 谁谁去了新公司、谁谁去旅游了、谁谁开始做微商了、看了几篇有价值无价值的文章(但未必能够消化)…

而这些信息价值并不高,典型的信息过载问题,我们不是缺东西,恰恰是“吃”的太多了,消化不良,最终导致大脑这个“消化系统”只能消化表面化、浅显化的信息,稍微深度的问题就会毫无意识地略过。

关闭朋友圈后,可以考虑将时间更合理地“切割”。我一直以来的问题是“摄入”过多,过杂,但没有很系统化的组织和产出。将时间更合理地分配到“摄入”和“产出”这两件事上,甚至可以考虑多一些到“产出”上。

 

关于道歉

今天是国耻日,恰好昨晚看完了号称日剧第一的《半泽直树》,是个关于复仇和道歉的故事。很应景。

早上听着鸣笛声发了一条关于国耻日、半泽直树和道歉的朋友圈。顺势想起了关于道歉的一些事情。让日本人道歉真难,即使是心知肚明,但不知道是出于骄傲还是出于偏执,就是无法道歉。真是让我无法理解。

我常常会玩玩文字游戏,声称:日本是敌人,而非对手。

这句话其实还是有些意味的,对手,往往是那些和你有着同一级别的道德水平的,但价值取向不同而已,所以是值得尊敬的。而敌人,是比对手低一个层次的概念,仅仅是战斗中的对方,不需要考虑到道德水准和价值观的。对待日本,就是这样。(当然不排除在某些特定的领域,日本是值得尊敬的对手)。

道歉到底有多难?我们对道歉到底有多在意?

不同于很多人要求的抓着要日本人道歉,我对日本道歉这件事其实并不特别看重 – 不道歉并不代表没做错,事实摆在那里,态度而已,而你的态度不会影响到我,最多会让我知道你的心理素质比较差而已。但是我们会时时记得这个敌人,即便是我这个从未经历战争、从小看着日本漫画和动画片长大的昨天晚上还看了日剧的中国人。

你可以说这种“恨意”是溶在血里的,也不排除是宣传教育的结果。但非常客观(自己所谓的客观也许并不客观)地说,对待日本整体的行为,我是非常傲娇地鄙夷之的。

为什么?

引用日本人自己的评价,《半泽直树》中贯穿全剧的一句话(大意):一定要重视人与人的交往,而不要像机器人一样工作。相比日本来说,中国人“像机器人一样”工作的人要少许多。

一页上应该有多少字?

我们在读书的时候为什么有时看的很累?有时却有轻松而有收获?

除了兴趣和精神状态之外,也许还有别的原因。

反馈效应

反馈原来是物理学中的一个概念,是指把放大器的输出电路中的一部分能量送回输入电路中,以增强或减弱输入讯号的效应。心理学借用这一概念,以说明学习者对自己学习结果的了解,而这种对结果的了解又起到了强化作用,促进了学习者更加努力学习,从而提高学习效率。这一心理现象称做“反馈效应”。

我们在读书时也同样需要类似的反馈机制存在,显而易见的,就是“翻页”这个动作。“翻页”会让我们获得来自书的反馈 – 这页你读完了(也许未必完全明白,但这不重要,重要的是“读完了”)。尤其是那些比较艰深的读物,更是感觉明显。

所以,也许在考虑书籍的排版和封装的时候,需要考虑一下主要读者群对反馈的适应情况,比如,如果读者阅读时比较吃力,可以考虑每页字数不要太多,并且如果书籍内容比较多的时候,考虑分成多册(kindle就不需要考虑分册这个问题了)。

其实即便是生活中很小的点滴,也可能蕴含很多普遍而浅显的原理。

 

 

基于Redis实现一个朴素贝叶斯文本分类器

基于朴素贝叶斯进行文本分类因为实现简单被广泛应用,很多开源的机器学习框架都提供了相应的实现。使用场景如新闻类内容的分类,垃圾信息识别等等。

原理

贝叶斯的定义就不具体说了,概率统计都有讲,如果没学过也没关系,去wikipedia上看看。非常朴素,值得一看。

分类器最重要的是先要有“分类”,而且分类之间应该是相对来说重合度比较低的,或者说是正交的。然后对每个分类进行词的统计,然后就会生成一个关键词序列,或者叫模型。有点像这个分类的DNA序列一样,即可以理解为这个分类在用词维度上的特征(特征向量)。然后就是将目标内容基于这一系列的“DNA”序列进行计算likelihood,值最大的那个就是了。

实践

具体的实现我就不上代码了。主要几步:

0. 抽样

从对应的分类中获取足够多的样本,并且要避免有脏样本,否则生成的分类器会不准确。

1. 分词

这个很容易理解,因为是要用到词,中文就一定会用到分词工具。Java里有paoding, PHP里有Jieba,甚至新浪SAE的分词服务…这方面有很多开源的解决方案。

2. 统计、生成DNA(模型)

针对每个分类的样本集合,统计每个关键词的出现频率。最终得到一个“词-次数”的Map。这里就用到Redis了,其实不一定要用Redis,用Redis主要是考虑到后续的模型自动反馈改进。如果只是不怕麻烦而手动生成的话,这里保存模型到哪里其实无所谓。

3. 权重设置

针对每个词在所在分类里出现的频率来设置一个后续计算的权重。最简单是:这个词在所有词中的出现概率(该词的出现次数 / 所在分类中样本的总词数)。用Redis的SortedSet来保存。

4. 使用

对于一个目标样本,分词,然后针对每个分类计算相应的权重值和。

5. 模型自动化反馈

这个还是比较重要的思路,因为模型也是会变动的,你的分类可能也在不断进化,比如法制新闻的内容可能随着法制热点或者法治进程的变化,产生不同的特征(这个例子有点YY了)。所以模型的产生应该随着新的样本不断地变化,所以生成模型的过程应该是保持一定的频率进行,同时,每次的使用模型进行分类的目标样本如果区分度较高,也可以直接加入到模型里进行计算。

 

优化

避免overfit – 模型并不容易达到足够高的准确率,准确率过高的原因可能是因为分类区分度很高,也许根本就不需要用分类器类做这件事,而准确率过低有可能是你的抽样有问题,或者你的分类有很大的重叠,比如生活和社会这种。所以如果是目标样本非常fit某个分类,建议就不要放到新的抽样样本里,因为不会产生新的“基因”了,如果这种样本过多,最终就容易overfit。

数量取胜 – 也是很朴素的想法,一个分类器不行,那么十个、二十个呢?如果能够把整个抽样提取、模型生成、模型反馈机制都自动化了,那么用多个分类器进行交叉验证,或者是来个投票机制。准确率应该也可以有很好的提升。