Beta

It’s a beautiful thing when free data meets free algorithm.

最近《阿凡达》应该是大陆电影市场最为火爆的电影了,媒体(包括博客)铺天盖地的报道,终于让我没按耐住性子。不过想到大早起排队去买 imax+3D 的痛苦,只好退而求其次去看 3D 版。

在影院看的时候还是非常震撼(虽然架着两个眼睛很累):

  • 阿凡达讲述的故事依旧很俗套,正义战胜邪恶,男女主人公收获爱情。
  • 特效相当赞,虽然没有感受 imax 版本,但普通 3d 效果让人印象非常深刻
  • 召集外星部族抵抗地球人的那段演讲,让我想起了《勇敢的心》里华莱士那段

为什么《阿凡达》这么火,网上诸多评论。有人说是今年影迷对国内电影的绝望(三枪),也有上升到综合国力的问题(冯导的)。我也凑个热闹,跟风总结一下不靠谱的:

  • 《阿凡达》实际上是一部日本(美国)动漫的电影版:好像依稀记得小时候看过的《太空堡垒》这部漫画,男主人公最后就是爱上了一个女性外星人。
  • 地球人是为了一种“磁悬浮矿石”才到潘多拉行星的,噢,这是传说中的“沙丘”的引子……
  • 《阿凡达》讲述了一部外星人原住民,即钉子户抵抗暴力拆迁的故事……

最后一个更为不靠谱,看完之后我一直在怀疑卡梅隆卡导是不是魔兽争霸的粉丝,要么就是收受了暴雪公司的贿赂,替人家做商业宣传。这里总结一下国内某著名w3论坛中对《阿凡达》的故事情节叙述:

刚开始,人族(地球人)经济科技都有绝对的优势,依靠 100 人口高攻防的飞机(船)、坦克、火枪手打爆了暗夜精灵的生命古树。但是在骑乘着奇美拉的恶魔猎手的带领下,暗夜精灵集结了 100 人口的角鹰骑士+女猎+弓箭手的立体混合兵种,但因没有升级攻防而处于下风。关键时刻,由于人族不小心勾到重甲野怪,导致大量中立生物攻击人族。在暗夜大军和中立生物的联手攻击下,人族无奈溃败。

最终英雄的单挑结局是:虽然拥有 6 级技能——天神下凡的山丘之王打败了同样早早拥有 6 级变身能力的大恶魔,但是由于厮杀过度,没血没魔,最后被一个红血的弓箭手连射两箭给搞定。

最后还附了一下卡梅隆导演打魔兽的一些技巧感想:

  • 最后决战的时候千万要小心,别打到中立生物。
  • 角鹰骑士的攻击值太低,打不过直升机;但是角鹰能打过。
  • 女猎打不过火枪兵。
  • 在重甲野怪面前,火枪不堪一击。
  • 骑着奇美拉的恶魔猎手非常拉风,估计卡导肯定用的这个游戏bug......

前一段时间,John Baez 在自己的主页上更新了一篇文章名为he Beauty of Roots ,这篇文章之后在“科学松鼠会”上被《多项式的根之美》 转载。上面提到了曼德布洛特集,根据其发明者法国数学家Benoît Mandelbrot 而命名。

曼德布洛特集是一种分形,从一般分形性质来说:

客观自然界中许多事物,具有自相似的“层次”结构,在理想情况下,甚至具有无穷层次。适当的放大或缩小几何尺寸,整个结构并不改变。不少复杂的物理现象,背后就是反映着这类层次结构的分形几何学。

常见的曼德布洛特集是这个样子(分辨率原因,部分细节显示不够):

假如我们把这个集合的下半部分(最下边的小块)分割出来,就是这个样子(8倍放大):

由于分辨率的提高,所以显示了第一幅图中并没有显示的细节。

继续放大,上图的左上部分的那个小枝(6倍放大):

再把上图最靠近左边的那个小枝——放大(50/3倍放大):

继续放大最左边的小枝,似乎在末端又出现了一个类似的小枝(5倍放大):

如果继续放大下去可能还是这个样子 :)

注释:

  1. 最后一张图相比第一张图来说相当于局部放大了 4000 倍。
  2. 高质量的矢量绘图数据量比较大,R 处理起来有些问题,只好使用局部放大的方式。
  3. 更多的使用其他软件绘制图形可以见:http://commons.wikimedia.org/wiki/Mandelbrot_set

附代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
setwd("D:\\doc\\Mandelbrot\\pic")
# Another neat animation of Mandelbrot Set
jet.colors <-
colorRampPalette(
c(
"#00007F",
"blue",
"#007FFF",
"cyan",
"#7FFF7F",
"yellow",
"#FF7F00",
"red",
"#7F0000"
)
) # define "jet" palette
m = 400
C = complex(real = rep(seq(-1.8, 0.6, length.out = m), each = m),
imag = rep(seq(-1.2, 1.2, length.out = m), each = m))
C = matrix(C, m, m)
Z = 0
for (j in 1:20) {
Z = Z ^ 2 + C
X = exp(-abs(Z))
}
png("scale1.png")
par(mar = c(0, 0, 0, 0))
image(X, col = jet.colors(1000))
dev.off()



m = 400
C = complex(real = rep(seq(-1.6, -1.3, length.out = m), each = m),
imag = rep(seq(-0.15, 0.15, length.out = m), m))
C = matrix(C, m, m)
Z = 0
for (j in 1:20) {
Z = Z ^ 2 + C
X = exp(-abs(Z))
}
png("scale2.png")
par(mar = c(0, 0, 0, 0))
image(X, col = jet.colors(1000))
dev.off()


####

m = 400
C = complex(real = rep(seq(-1.4, -1.3, length.out = m), each = m),
imag = rep(seq(-0.15, -0.05, length.out = m), m))
C = matrix(C, m, m)
Z = 0
for (j in 1:20) {
Z = Z ^ 2 + C
X = exp(-abs(Z))
}
png("scale3.png")
par(mar = c(0, 0, 0, 0))
image(X, col = jet.colors(1000))
dev.off()


m = 400
C = complex(real = rep(seq(-1.35, -1.30, length.out = m), each = m),
imag = rep(seq(-0.13, -0.08, length.out = m), m))
C = matrix(C, m, m)
Z = 0
for (j in 1:20) {
Z = Z ^ 2 + C
X = exp(-abs(Z))
}
png("scale4.png")
par(mar = c(0, 0, 0, 0))
image(X, col = jet.colors(1000))
dev.off()


m = 400
C = complex(real = rep(seq(-1.3280, -1.3250, length.out = m), each = m),
imag = rep(seq(-0.1225, -0.1195, length.out = m), m))
C = matrix(C, m, m)
Z = 0
for (j in 1:20) {
Z = Z ^ 2 + C
X = exp(-abs(Z))
}
png("scale5.png")
par(mar = c(0, 0, 0, 0))
image(X, col = jet.colors(1000))
dev.off()


m = 400
C = complex(real = rep(seq(-1.3276, -1.3270, length.out = m), each = m),
imag = rep(seq(-0.1221, -0.1215, length.out = m), m))
C = matrix(C, m, m)
Z = 0
for (j in 1:20) {
Z = Z ^ 2 + C
X = exp(-abs(Z))
}
png("scale6.png")
par(mar = c(0, 0, 0, 0))
image(X, col = jet.colors(1000))
dev.off()

北京场

拖到今天写随笔,还是有很多想法!不过大家已经先我一步,已经有太云那儿,菁菁师妹那儿,还有遥远的益辉那儿。

12 月 5 日:

  • 堰平师弟非常辛苦,记得刚刚得知 yihui 师弟远赴美国后,我就在想,第二届会议 谁来组织?当时脑子里的第一印象就是堰平师弟,后来 yihui 临走前,大家去 K 歌,我还特意问了一下 yihui,果不其然……
  • 高涛、李程从统计图形角度对 R 软件进行了介绍,虽然我平日用的图形也很多,但这么系统详细的总结一定没少花心血。当时第一印象是台下的 SPSS China 和 SAS China 的兄弟姐妹听了是什么感受……(罪过罪过)
  • 菁菁师妹第一次认识是在 cos 上有一篇关于 RExcel 的用法的文章。师妹像极了我我大学时的同学,刚到会场时险些脱口而出。更令我惊讶的师妹的涉猎,江山辈出人才,巾帼不让须眉!
  • 钟其顶大哥以前就认识,记得第一次谋面谈的是 PLS,没想到的是 machine learing 的算法在食品行业居然有这么多的应用,佩服佩服!
  • 肖楠关于《R 环境安全特征初探和前瞻》给了大家一个全新的认识 R 的视角,记得会前我还特意询问了一下,结果听了一遍还是没懂。直到演讲一半时我才终于恍然大悟,是啊!R 的这个特性如果被人利用,损失可就大了!
  • 石油大学宫雨教授:通读 40 万行 R 代码的绝世牛人,从 IT 应用角度重新诠释 R 的优劣势。太牛了,没啥说的……
  • 刘永生老师使用 R 的时间也非常超前,2001(2003)已经开始在中国地质环境检测院使用 R,又一个孤独的世外高人。
  • 奚谭去年就见到一次,非常严谨的一个帅哥。讲的灰色系统理论,以前没怎么听过,有时间序列的感觉。太云那提了一句“统计界貌似关注很少”,自己有些孤陋寡闻了……
  • 祝迎春的本子里居然装的是正版 SPSS,晚间调侃“他笔记本里单软件就得100w+,大家赶紧打劫去,啊哈哈”。
  • 孙晓燕一行特地从北大深圳研究生院过来,虽然我不懂心理学,虽然没听太懂,但实在感动……

12 月 6 日:

  • 左辰应该是第三次见面了,印象最深的是他以前的一篇关于降维的博文,才俊
  • 太云的矩阵可视化又一次让我吃了一惊,关系的学科和技术太多了。相关矩阵都描述不了,我这文字就更不用提了,大家移步至优秀是一种习惯,或者直接参考 corrplot 包。
  • 陈丽云,山东大学的超级才女,和太云一样,看看博客啥都知道了。
  • 孙蝶,大P小N——开始还真没猜到是啥,听报告发现原来是变量大于样本数据的处理,又一次见到 lasso,额……
  • 王化儒博士在空间分析上的 R 应用也非常精彩,举止儒雅,尤其是从北师过来的,倍感亲切!
  • QSAR 是啥可能这辈子我都不会搞清楚了,但依稀记得演讲者马斌好像是手抄4000+数据的那个牛人,哈哈
  • 丁鹏演讲时说的“估计我很难把 Winbugs 讲清楚”,呵呵,青年学者中一杆 Bayes 大旗!
  • 黄志一的 WebR-R 给在座的科研人员打了一剂兴奋剂,要知道“云计算”可是现在主流

辛苦的会务组:

  1. 陈主席、范师弟、邱师弟(可爱的人)、关师妹,两位学弟
  2. 中南一行,当然还有远在美国的 yihui 。

遗憾:

  1. 得知吴喜之老师远赴伯克利,思绪万千。想起老师带我们学 R 的那一年,想起第一次看到 LaTeX 黑压压地编译,想起……
  2. yanlinlin 的演讲只能明年听得了,期待
  3. 如果不是6日晚上还有事,肯定去火车站陪张翔去了

12 月 14 日上海场

很早以前就听人说过,北有北师,南有华师,不过因为专业和地理原因,一直以为自己不会和华师有什么关系。这次承蒙张翔和焦静的辛苦组织,华师的资环和金统学院联合主办中国 R 语言会议(上海)。在华师不但让我见识了 LaTeX 、R 界的前辈——汤银才教授,还结识了一大批业界精英、青年学者,倍感荣幸。

华师的大门和我想象的差不多,里面古朴的建筑风格也别具一格。无奈天公不作美,上海这几日阴雨霏霏,没有好好的在华师内仔细转转。

最后是趣闻几则:

  • 中芯国际的林光启博士,演讲时提到自己生长于德州,然后马上注解了一句:“不是山东的德州啊,是美国的那个!”额……
  • 周六晚上大家一起聚餐,席间汤银才老师提到当年他和吴凌云的学术交流,Oh,那可是传说中的人物。汤老师还提到,他给统计系讲 R 的时候,会和大家说:“有问题就去 COS 上问,肯定有人回答!”啊.....
  • 回到住处,准备再补几张演讲材料,结果发现笔记本电力不足,遂向前台借插线板(notebook是欧货,需要欧标插头),被告知“对不起,没有!”于是乎,要补的材料,一概没加。第二天,大家发现演讲时间严重不足,还好没有插线板,不然……罪过!
  • 周日上午,林桢舜师兄做最后总结,说到:“我们一定要与时俱进……”,还不忘强调一下:“这是党说的!”我当时几乎翻了,因为林师兄是台湾人,博士期间来的大陆。不知道说的这个是不是我朝,OMG!
  • 傍晚同中南一行地铁内转车,路上一直在说上海地铁的自动门很恐怖,发生过很多次事故……在某一站换乘时,人太多,自动门发出警告时,刚好我是外面的最后一个,额!下意识退后一步,哈哈,隔着自动门和大家 goodbye !

最近忙着准备第二届中国 R 语言会议的报告,其中一篇是关于《R 在大规模数据整理及自动化报告方面的应用》,演讲里说到了 LaTeX,于是乎,顺手翻了翻以前的文档。结果非常惊讶地发现汤银才老师 2004 年的时候已经翻译了 pdfscreen,PPower4 的相关文档。这次汤老师在第二届中国 R 语言会议(上海)会有一篇《R 与 Winbugs》的演讲,非常期待。预祝 第二届 R 语言会议成功举办!

R 语言会议报告的摘要附下:

近年来高速发展的计算机技术极大地丰富了数据收集的方式与存储的总量。尤其是商业数据库优良的性能,为数据分析带来了极大的便利性。与此同时,数据规模和数据环境复杂性仍是我们需要面对的巨大挑战。作为当前数据分析领域最为活跃的 R 语言,不但提供了广泛的数据分析方法,而且为我们带来了灵活的扩展、便捷的编程,无疑是数据分析领域最优秀的环境。本文选取了一个侧面,主要介绍了 R 利用 Oracle 数据库进行大规模数据整理,以及利用 LaTeX 环境和 Sweave 技术实现自动化报告的若干技术和应用。

2009年10月20日 REvolution 消息,REvolution 获得来自 North Bridge 和英特尔的 900 万美元的风险投资。最为轰动的是:SPSS 软件的创始人之一,前 SPSS 的 CEO——Norman Nie 正式成为 REvolution 的 CEO!

REvolution 是一家专注销售基于开源统计分析语言 R 开发的统计建模软件的公司,据其自身报道,REvolution 解决了 R 在多线程计算、内存使用、高性能计算等关键性问题,且提供专业的商业统计服务。注: R 也有解决此类问题的包,可参见 HighPerformanceComputing

 国内很多介绍 SPSS 的资料一般都会有提到:

20世纪60年代末,美国斯坦福大学的三位研究生研制开发了最早的统计分析软件SPSS,同时成立了SPSS公司,并于1975年在芝加哥组建了SPSS总部……

而这三位研究生中最主要的一位就是上面所说的 Norman Nie。Nie 从1975 至 1992 年间一直担任 SPSS 公司 CEO,而后一直担任董事会主席和软件设计顾问。

REvolution 的 David Smith 说 Norman Nie:

he is deeply passionate about making Statistics better with R.

今年 SPSS 发生了很多事,比如 SPSS 重塑金身,比如 IBM 花费 12 亿美元收购 SPSS,但我认为 Norman Nie 转向 R 社区最让人兴奋!

0%