022010

COS史上有几位不为人知的幕后英雄,而我从没认真记载过这些事情,时间一长,各种事情堆满了脑子,也不会再去回顾。如今,我必须记下颜林林。以下截图部分反映了他在迁移论坛过程中的贡献:

这事情起源于去年暑假,当时我提出了更换PHPWind系统到bbPress的想法,这位颜小侠很快就研究了PW和bb的数据库结构并写了一个初步的MySQL脚本发给我,而我处理邮件的速度各位客官可能也有所耳闻……过了半年,我测试了这个脚本,发现并不顺利,于是颜林林重新开始修改脚本。众IT民工都知道,即使是自己写的程序,过三个月不看,感觉也像是别人写的。不过颜林林的计算机水平在我看来已经有天外飞仙的感觉了,三下五除二,又发回了修改的版本,然后就是我无休止的改进建议以及Bug修正。截止到记者发稿为止,新的论坛已经克服了我所能想象到的主要障碍(用户名密码顺利迁移、用户权限顺利迁移、帖子id保持不变顺利同步、数据库编码从GB2312顺利转为UTF8、bbcode算是顺利转换……)。每个问题我看着都觉得头皮发麻,但他的每一种解决方案都聪明得“令人发指”。

如果没有这样一位天才存在,换系统这件事我也只能在脑子里冒泡想想而已。

既然已经剧透了这么多,现在可以给个网址开始小范围公测了:http://cos.name/cn/。注意,暂时不能注册,不能发帖。欢迎提供反馈意见。其实这系统也没什么好看的,确实没什么可看的,它只能用来看帖发帖,版主只能删帖修改移动或举报垃圾广告。换句话说,它真的是个论坛了。

COS能有发展的动力,靠的就是这样的奉献精神。而我也诚惶诚恐,怕浪费了大家的时间精力。前几天,科学松鼠会采访一位伯克利统计学博士海龟,他竟然提到了统计之都网站,此事反映出COS在民间的影响力已经有一定厚度了(尽管一直采取不主动宣传的策略)。如小邱所说,“有点意思了”。诸位老大加油吧!

十二 312009

在家宅得快发芽了。这几天考虑着COS的发展计划,每次想这件事都觉得脑子里的想法装不下了,可每一个想法的实施往往至少要一年时间,甚至两三年都没法实现。在2010年,我希望可以实现下面这些事情。本文写得不是一般的意识流,读者慎阅:

  1. 全面提升网站功能,主要包括对三大软件的支持:
    1. SVNGIT:目的在于会员合作,大家可以共同编写一些小册子,SVNGIT使得工作可以并行而不会互相牵制、依赖。按胡子同学的IT小小鸟模式,我觉得COS的会员们根据COS论坛的帖子足以合力写出好几本统计小小鸟了。
    2. ## need libapr, libapr-util, then subversion
      wget http://apache.cs.utah.edu/apr/apr-1.3.9.tar.gz
      wget http://apache.cs.utah.edu/apr/apr-util-1.3.9.tar.gz
      tar -zxf apr-1.3.9.tar.gz
      cd apr-1.3.9
      ./configure --prefix=$HOME/bin/apache/apr
      make & make install
      cd ..
      tar -zxf apr-util-1.3.9.tar.gz
      cd apr-util-1.3.9
      ./configure --prefix=$HOME/bin/apache/apr-util --with-apr=$HOME/bin/apache/apr/
      make & make install
      wget http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz
      ## tar, cd, then
      ./configure –prefix=$HOME/bin/subversion –with-apr=$HOME/bin/apache/apr –with-apr-util=$HOME/bin/apache/apr-util
      ## SVN把老夫折腾得接近崩溃,终于痛苦地转向GIT
      wget http://kernel.org/pub/software/scm/git/git-1.6.6.tar.gz
      tar xf... & ./configure & make & make install

      习惯了用SVN,但过去一直是用别人的服务,轮到自己架设SVN服务器才知道这叫一个崩溃,其实主要原因可能是因为自己没有root权限,未必真的那么难。由于是用别人的服务器,只好转向GIT。

232009

COS论坛简直太它NND复杂了,把老夫折腾得晕头转向!……

072009

COS论坛已新增一员大将:fan,这两天看招生版红火得很,除开考研结束的因素,主要是因为fan版主一心投入招生版,工作成就喜人,在此影响下,前版主以及前前版主都闻风而至,话说本人也是多年不看招生版,这两天的几个帖子俺是相当赞。

另一员大将也即将报到:yuanweir,明天再写欢迎帖。俺期盼已久的精算版在不久的将来会红火起来的。

而COS团队即将新增两员大将:fangy和cloud_wei。晚上Zhang P.又传来好消息:俺学院的研究生刊物《统计功课》被授权发表摘要于主站了。这可是俺从本科的时候就想达到的目标。下一步可以把本科刊物《浪淘沙》也拉进来了。

COS就快发生革命性变化了。此前的种种变化,只不过是表面现象而已。感谢各位!

242009

COS论坛有这么一个人,一个帖子下面全是自己的回复,整天嗡嗡嗡,自己整一套东西,别人要是不理他,他就说什么世风日下人心不古啊,什么你们都没有研究精神啊,都是数理统计的走狗啊,看着烦得很。不过这种人最好不要惹,我看有位仁兄已经不幸上当了,在此深表同情。

有些人,你和他争论就像和猪摔跤,争了半天,你会发现原来猪已经爱上摔跤了。

十一 232008

首歌还挺好听的,小子我今晚就听着这首歌写下了“统计之都”的关于页面。顺便发布一下通知,统计之都自今日起全面转型(访问新的统计之都网站),我在两年多前的“博客+论坛”结构终于出现在人世间了,另外还加上了维基。从现在起,要真正开始广邀天下统计英雄共同建设这座都城了。

I had a dream
Strange it may seems
It was my perfect day

Open my eyes
I realize
This is my perfect day

Hope you never grow old
Hope you never grow old
Hope you never grow old
Hope you never grow old

Do-do-do-do

Birds in the sky
They look so high
This is my perfect day

I feel the breeze
I feel it is
It is my perfect day

Hope you never grow old
Hope you never grow old
Hope you never grow old
Hope you never grow old

Forever young
I hope you stay
Forever young
Do-do-do-do

212008

天13点左右COS论坛的注册人数显示为83778人,我看了一下会员列表,发现一个特征,凡是填了个人主页一栏的几乎都是广告,而且都是一家广告(推广小助手),我就不写网址了,免得帮这帮无耻之徒做了广告。

当我删掉主页中包含这个网址的会员之后,剩下的会员是65123人,这两年来他们竟然注册了近两万机器人。

如果再去掉近35000没有激活的用户,COS真实用户数大约为三万人。

乍一看,哇,八万大军,砍掉两万机器人,再砍掉没有激活的,只有36%的用户是可能真实的,里面当然还有机器人,只是目前还没有发现他们的特征。三万大军,意味着平均每天有30个活人注册,也不错了。

俗话说:数据一汇总,上帝就发笑。

R代码仅供图形初学者参考:

文件下载链接

# png("users.png", width = 500, height = 200)
par(mar = c(2, 0.1, 0.1, 0.1))
x = c(83778, 65123, 30000)
plot(x, 1:3, type = "n", xaxt = "n", yaxt = "n", xlim = c(0,
    max(x)), ylim = c(0, 4), ylab = "", xlab = "", bty = "n")
axis(1, c(0, x))
s = 0.4
rect(c(0, 0, x[3]), c(2 - s, 3 - s, 3 - s), c(x[3],
    x[3], x[2]), c(2 + s, 3 + s, 3 + s), lty = 3, border = c("green",
    "green", "blue"))
rect(c(0, x[3], x[2]), (1:3) - s, rev(x), (1:3) +
    s, col = c("green", "blue", "red"))
text(c(x[3], x[3] + x[2], x[2] + x[1])/2, 1:3, c("normal users",
    "spammers or confused users", "an ad spammer"), col = "yellow")
text(c(x[3], x[3] + x[2])/2, c(2, 3), paste(round(100 *
    c(x[3], x[2] - x[3])/x[1], 2), "%", sep = ""))
# dev.off()
十二 142007

天也不能算没上论坛,只是大致看了看,挑了几个R问题回答了一下然后就下了。导致今天上论坛一口气回了三个多小时帖子。累死了。

外一篇:关于Logistic回归

为什么计量经济学的书上至今还要赫然写着关于Logistic回归用分组的方法求频率再用自变量去拟合这些频率(OLS)?莫非Gujarati这些人不懂广义线性模型?不应该吧。Logistic回归的因变量取值是二分类的(比如0、1),表面上看来把样本分组之后计算因变量在每一组中的频率看起来更像是概率,从而拟合这些“概率”是很有道理的,但实际上问题就会出在分组上,以什么为依据分组呢?

在统计上,只要是涉及到综合,就几乎不可避免要损失信息,这是一条被人忽视的铁律(我在上周的报告中特意提到了这一点)。Logistic回归若将样本分组,求得因变量频率的同时必然也损失自变量信息,一般大家都用自变量的均值代替那一组的自变量水平,显然这是很荒谬的。

若不分组的话,可能很多人就很惊恐了:Logistic回归不是用log(p/(1-p))么?要是p=1的话岂不是这个式子就没有意义了?这样理解的人不在少数,包括我们的老杜就误解了这个问题(可能至今还没搞清楚)。

问题出在哪儿?

在于统计理论到应用的时候中间的一个重要连接不知道被谁搞丢了,那就是广义线性模型(GLM)。Logistic回归是广义线性模型的特例,而GLM通常都是采用极大似然估计来计算的,具体计算需要用到Newton-Raphson迭代,一般是无法求出显式解(closed-form)的。搞应用的人偏偏把这几句重要的话丢掉了,由于Logistic回归应用之广,大家纷纷跟风,忘了GLM这个祖宗。

有人的地方就有江湖,有指数分布族的地方就有似然函数。如果能理解到这个层次,那才算是Logistic回归入了门。很多问题包括为什么连接函数是logit的形式等等就都可以大彻大悟了。

十二 052007

要看错标题了,我写的是不要把管理员当作干部。有些人天真地以为论坛管理员或者版主是某种官位,有些人幼稚地认为管理员或版主有义务帮忙解决问题,真是荒唐。

没有人为你义务解决问题,所以来到论坛就该摆正心态,别人不回答你的问题本就是应该的,回答你的问题那是在牺牲他们自己的时间和精力给你帮忙。版主删你的帖子都是有原因的:进入论坛不看说明,不看公告,来了就问问题,以为是自己家呢。

有些人就是很自私,只为自己着想。自己的帖子被删掉了就讥讽谩骂版主:你不就就一版主么,牛什么呀。

MD,我根本就懒得跟这种人理论。见多了。爱说啥说啥,我生来又不是为了讨你喜欢的。

WWW.YIHUI.NAME XIE@YIHUI.NAME © 2007 - 2010 by Yihui Xie