走江湖

走江湖,本来是指游方术士、算卦、看面相的;所以有个引申义是忽悠。

最近的枕边书是克莱因的《古今数学思想》,正好看到微积分的创立这,体会了下牛顿和莱布尼茨的走江湖~

这江湖主要是走在无穷小量这个东西上。

对于无穷小量,早期牛顿的描述是无限小的量、不可分的量、微元;
到了《自然哲学的数学原理》里面,牛顿用了“消失的可分量”来描述。

量在其中消失的最后比,严格说来,不是最后量的比,而是无限减少的这些量的比所趋近的极限,而它与这个极限之差虽然能比任何给出的差更小,但是在这些量无限缩小以前既不能越过也不能达到这个极限。 – 《自然哲学的数学原理》by 牛顿

以上是牛顿做过的最清楚的说明。

莱布尼茨在早期写的是dx是很小的差,但dx的意义是什么仍然是不明的。
莱布尼茨描述求xy的微分:

(x+dx)(y+dy) – xy = xdy + ydx + dxdy, 但是dxdy是不可比较地小于xdy+ydx, 所以必须舍弃。

那么这个无穷小量和0有什么区别呢?为什么无穷小量的和能是个有限的值呢?既然如此那为什么在这个上面那个微分的时候,dxdy又怎么能直接被舍去呢?难道这个无穷小量就能被忽略了吗?

可以看的出来牛顿和莱布尼茨两人这里都在走江湖,并没有严格的搞清楚。作为看手稿的别人又怎么能被说服呢?后来又有许多人尝试用各种不同的方法对微积分给出严密性的说明,结果各人有各人不同的理解说明方法却没能真正解决问题,最后就搞的一团乱麻。罗尔批判当时微积分就是“a collection of ingenious fallacies”就是指的这一团乱麻。

早期人们在使用微积分的时候还是很别扭的,明知道这东西有没解释清楚的地方,但是确实这工具又真好用,就不得不用了。当时人们就是这样嘴巴上说不要身体却很诚实的把微积分用了下去。

来看傲娇的欧拉,就拒绝无穷小这概念:

毫无疑问,任何一个量可减小到完全消失的程度。但是,一个无穷小量无非是一个正在消失的量,所以它本身就等于0。这与无穷小的定义也是协调的,按照无穷小的定义,它应该小于任一指定的量;它毫无疑问的就应该是无;因为除非它等于0,否则总能给它指定一个和它相等的量,而这与假设矛盾的。- 《微分学原理》 by 欧拉

那时候微积分就像是个信仰:

“坚持,你就会有信心” – 达朗贝尔

一直到柯西完善了极限理论,严格用极限给出了微积分一系列的概念和精确定义,这个问题才算是在一定程度上被解决。

现在的微积分教材为了理论的严谨,一般是从实数理论开讲、然后柯西的极限那套、再然后才开始微分;正好与数学发展史相反。这样写在理论上确实是很完美很严谨,只是真的会把很多初学微积分的人给吓退了。

其实一直觉得顺着数学发展史来讲是比较自然的,先走江湖,再来完善底层理论;这样似乎更人让人理解到微积分到底要讲些什么,回头再来补上严谨的理论,这样也更能让人理解为什么要用ε-δ语言那么死板的格式来定义极限。

唔,其实有点类似先学C语言,然后再回头看汇编,就有恍然大悟之感:原来是这样!

Group Polarization – 群体极化

最近把Cass Sunstein的两本书看了下,《网络共和国》和《极端的人群》。在《网络共和国》里面作者用了一个章节的内容里面说明了“群体极化”这么一个现象;《极端的人群》则是整本书都在围绕这个主题在展开。

一个团体的成员一开始就有某种倾向的时候,在经过商议讨论之后,人们会朝更加偏向该倾向的方向继续移动,最后形成极端的观点。 – 《网络共和国》by 桑斯坦

前两天在在知乎上看到有人问为什么世嘉的粉丝虽然为数不多但是却十分的疯狂与执着,大脑里第一反应就是“群体极化”这个词。

现在,“世嘉”这个词被提起的时候几乎已经是失败的代名词,这样就会加剧小圈子的极端化。因为只有在这个小圈子当中,自己支持世嘉的观点才会被赞同,找到与自己相同观念的人一起抱团强化这个观点。

相同的,网络上各种倾向的圈子如“锤子手机粉”、“任粉”、“五毛”、“美分”、“基督教”、“穆斯林”、“转基因”等等都有类似现象。收集了些知乎上的例子:

罗永浩现在被黑成这样,你为什么还支持他?
为什么要黑任天堂?
为什么国内有很多人提倡和鼓励移民?
是不是知乎上很多人讨厌穆斯林?
为什么在一些知乎问题下,基督徒和圣经受到了一定程度的反感?
为什么有人反对转基因?

以上这些讨论中都有很典型的“打标签”、“站队”的现象。而在一个讨论的环境中,如果每个人都已经知道自己被打上了某种标签,比如:(“索饭”、“任粉”、“xbox粉”、“世嘉粉”等)或者(“支持转基因”、“反对转基因”),那么这种讨论发生的过程中,人们就不太可能会去认真的听取标签不同的人的观点。在这些讨论之后,原本就有某种倾向的人往往会更加坚定自己原有的观点,大家都在圈子内的讨论中与反对者的嘲弄声中不断的走向更加的极端与坚定。

Continue reading “Group Polarization – 群体极化”

论折腾

关于两个操作系统的故事:Windows & Linux

和几乎所有人一样,买的第一台电脑,是个预装了Windows系统的。Windows XP,非常的好用,写文件上网玩游戏写代码无所不能。但是,我心里从来没有“自豪而骄傲的使用XP”的感觉。对呀,用XP有什么好骄傲自豪的呢?XP是如此的寻常平凡。

后来,我开始用了Fedora,一个很常见的Linux发行版。从普通用户的角度来看,这货难用极了,图形界面丑+速度慢,办公软件和MS的Office完全不是一个档次的,想玩的游戏很多都不能跑,各种配置还得要到命令行去,总之就是各种折腾。唯一的优点,或许就是系统对程序员十分的友好。但是,我却一直有“折腾并自豪的使用Linux”的感觉,我也会跟朋友们主动谈论起我在用Fedora(对于XP,这是我绝对不会做的事)

关于两辆模型车的故事:四驱车 & 预装好的四驱车

小学时候,随着一部四驱小子动画片的上映,奥迪双钻也适时推出了各种同款四驱车,各种大卖。那时候班上的男生们,都因为拥有一辆四驱车而自豪。

那时候推出的四驱车有两类,一种是零件,需要自己花时间看说明图纸一点点的拼起来的;还有一种是整车模型,买来就能跑。

我的记忆中,身边没有任何一个小伙伴买那种整车模型。买四驱车,就是为了享受拼装时候的折腾呀!如果已经装好了,那还玩个啥?(同理,没人买拼好的乐高玩具或者是拼好的高达模型)

关于追女生的故事

总是听到这样的故事,小A对那个付出了无数心思做尽每件好事(却怎么都追不上/才追上)的女生念念不忘。总是消耗无数沉没成本却无法及时止损。不是有这么一句话么,“人都是会犯贱的”。

PUA们甚至有个理论,追女生时候正确的做法应该是轻松的吸引对方,自己不要投资,而是要让对方为自己投资。

关于折腾

折腾,geek们把这个词视为褒义词,折腾并自豪着。然而折腾不一定是好事,Linux在桌面领域仍然份额那么小,备胎心中的女神依旧是那么遥不可及。

或许小米的做法才是最正确的吧,“小米,为发烧而生”,写的多好,让用户自以为在折腾,而事实上,真正折腾的麻烦事都被小米做掉了。

Individualized Sentiment Analysis

There are many characters in a novel, how to do sentiment analysis for each individual one of them? Is he/she feeling good in this chapter? Is this episode a good/bad scenario for someone?

Bigger questions: Is this news good/bad for one specific company? The events happened today are good/bad for each individual company? (One event can be good for Apple but bad for Google)

After reading some papers&articles, I came up with an idea.

Basic theory

Distributional Hypothesis: words that are used and occur in the same contexts tend to purport similar meanings. The Distributional Hypothesis is the basis for statistical semantics.(http://en.wikipedia.org/wiki/Distributional_semantics)

There are many methods about how to represent words with vectors.(LSA, HAL, Topic models, etc.) Most of the methods are based on the Distributional Hypothesis. After changing the words to vectors, we can use top k nearest neighbors of the one word(in vector form) to represent the meaning of that word.

In order to get more accurate result, we always need to have a fairly large corpus.(for this is a hypothesis based on statistics) But, what if we don’t have a large corpus? What if we only have one book? What if we only have one article? Here is my hypothesis: Under this kind of scenarios, the top K nearest neighbors of one word represents the book’s/article’s perspective on the word.

Then I started do some experiments to verify my hypothesis.

Experiment 1, The Novel

Novel is a very good target to do experiment on. There are many characters in one novel, some are friends while some are enemies to each other. In this chapter this guy is one of the most powerful people in the world, but in the next chapter he becomes a dead man. Like rollercoaster.

Create LSA space for each individual chapter of one novel.

Get K nearest neighbors for some leading roles.

Do sentiment analysis based on these K words.

Read through the novel see if the SA result make sense.

I tested on 5 novels (two Chinese novels, three in English). The results were promising.

Here is the result of the Starks and the Lannisters from the novel A Song of Ice and fire: Game of Thrones by George R. R. Martin. Left column is the Starks, right is the Lannisters, the good/bad scale is [-10, 10], negative number means bad, positive means good. Click on the image below to view the original big picture.

lan_stark

As you can see above, when the Starks’ value is negative in one chapter, something bad happens to the Starks and vice versa. I have to point out C1 and C2 point in the graph. They are chapters about the Starks and the Lannisters having conflicts. In C1, the Starks win while the Lannisters lose. In C2, the Starks lose while the Lannisters win. (This is a case I mentioned before, “one event can be good for Apple but bad for Google”)

Experiment 2, IT News

After experimenting on novels, I started crawl news from Slashdot, Engadget and cnBeta(Chinese IT news website). Trying to answer the question: “The events happened today are good/bad for each individual company?” I think this can reflect the stock price of each individual company.

Then, here are some results that I get:

X-axis only from 0 to 250 for there are only 250 trading days in one year. The Y-axis is the (stock price of one day)/(stock price of the first trading day) *  100% with the Green line, (the good or bad value of one day + the value of the previous day)/(the value first trading day, which is 100) * 100% with the Red line.hpq2nokbbry

The result seems to be good, but a lot more experiments needed to be done to verify my hypothesis and there are a lot of improvements can be done with the algorithm and the process that I use in the experiments.