Blog

培养必需的技巧

Content #

在受过训练的眼睛面前,不但伟大的艺术作品能产生如此强烈的心流,甚至最平凡的景象也令人愉悦。一位家住芝加哥郊区,每天要搭乘高速列车上班的男士说:

像这么一个晴朗的日子,我一定会在车上眺望沿途房舍的屋顶,因为俯瞰这个城市实在太迷人了;我在城里,却又不属于它的一部分,看着那些各式各样的造型,那些出众的老建筑,有些已成了废墟。我的意思是,它激起我的迷恋、好奇……我可以走进办公室说:“今天早晨来上班,好像穿过一幅席勒的工笔画似的。”因为他画的屋顶和类似的东西,都非常利落、清晰。把全副精神放在视觉表达上的人,往往就用这种方法看世界。就像一位摄影家望着天空说:“这正是柯达彩色的天空。加油啊!上帝,你快要赶上柯达了。”

人如何才能得到这种程序的感官享受?

很显然,要从视觉得到这种程度的感官享受,必须经过训练。一个人必须投入相当的精神能量去看美丽的风景和优秀的艺术作品,才能辨识具有席勒风格的屋顶。其实这也适用于所有的心流活动:不培养必需的技巧,就不可能在追求中找到真正的乐趣。但跟其他几种活动比起来,“看”是最直接的(虽然有些艺术家认为,很多人眼睛好像封了一层蜡),因此不在这方面多多开发培养,实在太可惜了。

Viewpoint #

From #

心流

德西效应(Westerners effect)

德西效应(Westerners effect) #

当一个人参与一项有挑战的、或感兴趣的活动时,给他提供奖励,反而会减少这项活动对他的内在吸引力。

看到孩子努力学习的样子,相信每个家长都会从心底里感到高兴,情不自禁就会夸奖他们两句,甚至给孩子一些奖励。但是,这时的赞美和奖励,需要注意方式、方法,以免适得其反。有的时候,因为设定了奖励,反而会让孩子失去干劲。

在心理学上,将这种现象称为“德西效应”。

美国心理学家爱德华·L.德西曾经进行实验验证了“德西效应”。他把接受实验的学生随机分成两组,让两组学生做同样的猜谜题,但第一组设有奖励,第二组则没有奖励。

让学生做猜谜题30分钟之后,研究人员告诉学生,因为需要录入数据,所以请学生到外面休息。其实,这段休息时间才是主要的实验时间。研究人员会暗中观察学生在休息时间的行为。

因为是休息时间,所以这个时候做题得不到任何奖励。研究人员通过观察发现,在休息时间里,第二组有很多学生会继续做猜谜题,而且乐在其中。但第一组的学生中几乎没人在休息时间继续做题,因为没有奖励。由此可见,一些原本不需要奖励人们也愿意做的事情,因为设置了奖励,反而让人在没有奖励的时候就不愿意做这件事了。

“德西效应”对孩子的学习动力产生破坏性,需要具备两个前提条件:第一,向孩子提前预告奖励;第二,物质奖励。

所以,看到孩子努力学习的时候,不要说:“下次考试能考出好成绩的话,我一定奖励你。”但可以说:“上次考试你非常努力,所以我要奖励你。”另外,如果不是给予物质奖励,而是语言表扬的话,也不会发生“德西效应”。

如果您为孩子努力学习的样子感到高兴,想奖励他们的话,不要“下次奖励你”,而应该马上就奖励。

Viewpoint #

From #

原来孩子这样学习会上瘾

预收账款(Deposit Received)

预收账款(Deposit Received) #

买卖双方协议商定,由购货方预先支付一部分货款给供应方而发生的一项负债。

From #

矩阵的迹与特征值

Question #

矩阵的迹(trace)与矩阵的特征值之间有什么有关系?

Answer #

丢失mouseup事件

Question #

处理拖拽事件事件需要将mousedown, mousemove, mouseup三者整合起来,下面的JavaScript代码框架有何隐患,应如何解决?

this.root.addEventListener('mousedown', event => {
    console.log('mousedown')
    let move = event => {
        console.log('mousemove')
    }
    let up = event => {
        console.log('mouseup')
        this.root.removeEventListener('mousemove', move)
        this.root.removeEventListener('mouseup', up)
    }
    this.root.addEventListener('mousemove', move)
    this.root.addEventListener('mouseup', up)
})

Answer #

在控件上按下鼠标按键,然后拖动鼠标到控件以外,再松开按键,这时mouseup 事件会丢失,移动光标到控件上,不必按下按键,mousemove事件仍旧会被触发。解决方案是用document来监听事件,这么做后,即使移动光标到浏览器外,仍旧可以监听事件。mousedown事件仍旧由控件监听。

this.root.addEventListener('mousedown', event => {
    console.log('mousedown')
    let move = event => {
        console.log('mousemove')
    }
    let up = event => {
        console.log('mouseup')
        document.removeEventListener('mousemove', move)
        document.removeEventListener('mouseup', up)
    }
    document.addEventListener('mousemove', move)
    document.addEventListener('mouseup', up)
})

Viewpoint #

From #

圣布伦丹之岛

Content #

活人中寻找天堂的最著名旅行者中,有一位就是勇敢的爱尔兰高僧圣布伦丹(484—578)。他认为天堂位于大西洋某处,于是向西航行,经历了可怖的冒险之后,来到一个无比富饶的美丽岛屿。圣布伦丹颇有信心地断言,这里就是天堂,也是“圣徒的幸福之地”。从此以后,连那些对天堂地点持有不同看法的人也使“圣布伦丹之岛”出现在他们的地图或航海图上。

Viewpoint #

From #

最小生成树

Content #

对于每条边\((u,v)\in E\),其权重记为\(w(u,v)\)。我们希望找到一个无环子集 \(T\subseteq E\),使其能够将所有结点连接起来,又具有最小的权重,即

\begin{displaymath}w(T)=\sum_{(u,v)\in E}w(u,v)\end{displaymath}

的值最小。这样的树即为最小生成树。

Viewpoint #

From #

线性回归的正则化

线性回归的正则化 #

正则化(regularization)是用于抑制过拟合的方法的统称,它通过动态调整估计参数的取值来降低模型的复杂度,以偏差的增加为代价来换取方差的下降。这是因为当一些参数足够小时,它们对应的属性对输出结果的贡献就会微乎其微,这在实质上去除了非相关属性的影响。

在线性回归里,最常见的正则化方式就是在损失函数(loss function)中添加正则化项(regularizer),而添加的正则化项 R(λ) 往往是待估计参数的 p- 范数。将均方误差和参数的范数之和作为一个整体来进行约束优化,相当于额外添加了一重关于参数的限制条件,避免大量参数同时出现较大的取值。由于正则化的作用通常是让参数估计值的幅度下降,因此在统计学中它也被称为系数收缩方法(shrinkage method)。

将正则化项应用在基于最小二乘法的线性回归中,就可以得到线性回归的不同修正(penalized linear regression)。添加正则化项之后的损失函数可以写成拉格朗日乘子的形式 \[\hat{E}(w)=\frac{1}{2}\sum_{n=1}^{N} \left[f(x_n,w) - y_n \right]^2 + \lambda g\left(\parallel w \parallel_p\right)\] 其中,\(g\left(\parallel w \parallel_p\right) < t\)。

其中的 λ 是用来平衡均方误差和参数约束的超参数。当正则化项为 1- 范数时,修正结果就是 LASSO;当正则化项为 2- 范数的平方时,修正结果就是岭回归;当正则化项是 1- 范数和 2- 范数平方的线性组合 α∣∣w∣∣22​+(1−α)∣∣w∣∣1​ 时,修正结果就是弹性网络(elastic net)。

正则化对线性回归的改进(图片来自 Pattern Recognition and Machine Learning,图 3.4)

岭回归和 LASSO 具有不同的几何意义。上图给出的是岭回归(左)和 LASSO(右)的可视化表示。图中的蓝色点表示普通最小二乘法计算出的最优参数,外面的每个蓝色圆圈都是损失函数的等值线,每个圆圈上的误差都是相等的,从里到外误差则越来越大。

红色边界表示的则是正则化项对参数可能取值的约束,这里假定了未知参数的数目是两个。岭回归中要求两个参数的平方和小于某个固定的取值,即 \(w_1^2 + w_2^2 < t\)。因此解空间就是浅色区域代表的圆形;而 LASSO 要求两个参数的绝对值之和小于某个固定的取值,即 ∣w1​∣+∣w2​∣<t,因此解空间就是浅色区域代表的方形。

不管采用哪种正则化方式,最优解都只能出现在浅色区域所代表的约束条件下,因而误差等值线和红色边界的第一个交点就是正则化处理后的最优参数。交点出现的位置取决于边界的形状,圆形的岭回归边界是平滑的曲线,误差等值线可能在任何位置和边界相切。

相形之下,方形的 LASSO 边界是有棱有角的直线,因此切点最可能出现在方形的顶点上,这就意味着某个参数的取值被衰减为 0。

...

善举该集中还是分散

Content #

在心理学家索尼娅·柳博米尔斯基(Sonja Lyubomirsky)开展的一项研究中,需要人们在6个星期的时间里,每周完成5种随机的善举。他们被随机分成两组:一组把他们的付出行为集中到每周中的同一天,另一组则将付出行为分散到一周的 5天。在6周结束之后,尽管完成了同样数量的善举,但只有一组人感到更加快乐。请问是哪一组人?

集中者获得了更多的快乐,分散者则没有。当人们将所有5种付出行为集中到同一天施行时,与每天做一种善举相比,快乐程度会上升。柳博米尔斯基和同事推测:“将善举分散到一周里,可能会削弱它们的突显性或效力,或者使它们更不容易与受试者的习惯性行为区别开。”

Viewpoint #

From #