Archive

Archive for the ‘工作学习’ Category

not as much as you thought

2013-12-11 留下评论

本地一家银行有广告语:You are richer than you think.

我倒是碰到了正好相反的情况。

换了个工作,在老东家还有些年假没用掉,人事部给我结算成现金。

我本来的想得很简单,按照我最近的一次工资单上列的年休假,按照我的工资, 折算即可。比如年假还剩10天,那就10×折算下来的日薪。但是,没想到这个年假折现是这样算的:

1: 首先,算出我在公司服务期间扣掉一些福利后的全部税前收入 (sum)。

2: 其次,算出你已经用掉的年假,按照休假时间的税前工资,折算成现金。(used vacation)

3:    有个vacation pay的rate, 比如10天,就是4%, 15天就是6%。(rate)

4: 折现的vacation pay  =  (sum – used vacation) * rate – used vacation

从这个算法可以看出,休假的时候是不积攒休假的。后来我和人事部确认了一下,对于折现的年休假是这么算的,如果是工作期间休假,那么休假期间还是积攒休假的。

所以,没用掉的年假折现的话,是少于所剩年假实际天数的,因为你休假的时间的积攒要扣除。

看样子还是把休假用掉划算啊!

Advertisements

从数据挖掘角度看算命

2011-03-10 1条评论

不知道从什么时候开始,血型啊、星座啊、生日啊、生肖啊都能和运程、工作、婚姻…什么的扯上关系。而且,好像现在的孩子们更加乐此不疲,还比较哪个准些。 网络上也充斥着类似的文章,每次总有若干人说准,若干人说不准。

我就从计算机科学的角度谈谈。计算机科学里有一个方向,叫数据挖掘(data mining),  简单地说,就是在海量的数据里面找出有用的知识。里面又分聚类(clustering), 分类(classification)等。 这个分类有点像我们平时看到的算命了。

什么是分类呢? 举个类别为2的例子来说: 有2组病人数据样本,一组为血压正常(negative), 一组有高血压(positive), 样本包含了病人的若干个特征(feature), 比如说,抽烟否、喝酒否、运动否、熬夜否、体重、血型、肤色、人种…. 通过建立数学模型,计算机运算,找出若干个和高血压最最相关的特征(比如前5个特征),这个过程叫feature selection。 再根据找出的这些特征和样本数据,通过一定算法,在计算机运算(training), 建立起一个模型标准(trained model)。 根据这个trained model , 可以对一个病人是否有高血压进行预测:好比说 喝酒、抽烟、少动、熬夜、超重的话,高血压可能性就大。 这个是不是有点像算命呢 ?

这里,每一步都是一个不小的课题。 比如,feature selection, 首先就是建立在人为选择的features上的。好比说, 你怎么知道一个人住地区的纬度和他的血压没有关系呢?然后,你怎么知道特征A和特征B是独立事件呢? (也就是P(A)P(B) = P(A, B) ) 会不会因为A根本就是B引起的,从而可以去掉A呢? … 有师兄对上千个基因特征进行过feature selection, 试图找出最有可能的致癌基因(群),就是这种研究。

回到我们平时看到的算命,里面有哪些问题呢? 最大的问题是,不经科学证明,人为认定血型、生日、星座或莫一个特定特征就是一个selected feature,  后面的所有预测基于这唯一的一个feature (或少数几个)。这个假设太强了,这样出来结果,如果人数足够大,必定是随机的,也即是正确与否的概率为0.5. 也无怪乎有人说准有人说不准了,谁都跑不出那0.5+0.5的全集。(即使通过科学建立的模型,正确率也往往不是很高。另外,正确率为50%的2分类器最差,还不如40%的,因为后者倒着用就有60%了。)想想也是,如果生日、星座就能决定你是否事业、性格,那么妈妈们还不把那些好日子挤满了? 而事实是,从统计上说,人出生的日期是平均分布的,如果偶尔有生育高峰月,那也往往是假期决定婚期,婚期决定预产期的原因。(不过对现在的小朋友来说,可能婚期已经不能决定预产期了,呵呵。)

反过来说,如果有人可以用分类的思路,通过海量数据的做training,建立起一个trained model, 倒不失为一个可能的算命好方法。

分类:工作学习

无影手

2010-12-09 留下评论

公司有很多控制方面的软件需求,由于以前有在Blackberry上开发的一些经验,最近一两周又有空,头儿让我在Blackberry平台上做个demo, 看看能否利用黑莓手机来控制机械。

这个还是挺好玩的。首先需要了解软件是如何来控制硬件的。硬件一般都提供给软件的接口,我所要处理的接口是基于TCP/IP协议上的。也就是说,你通过TCP/IP协议,发送控制命令给某些个端口就可以了。在这个层次上,不管什么客户端,只要能发出这个命令就可以了。而PC和手机的不同之处在于,手机是没有IP地址的,怎么样联入以太网,发送基于IP地址的TCP/IP命令呢?

我查了查RIM的文献,发现Blackberry有6种方法[1]建立socket连接。其中直接连接可以在模拟器开发的时候使用,因为模拟器本来就是安装在PC上,处于网络中,本身有PC的IP地址; WIFI链接可以给那些支持wifi的手机联进以太网,用路由器分给IP地址,这个对于不需要集中管理的黑莓手机来说最方便,因为不用控制那个Blackeberry Enterprise Server。 而使用BES的好处是手机通过BES可以集中管理,手机和外界的通讯都可以通过这个BES进行。

我先在模拟器上试了试,成功发送命令后,换到手机上,差不多后,给头看看。我们来到lab, 先调试好了无线路由器,让手机可以接入。我们一边和现场的工程师们聊天,头儿然后很酷地拿出他的黑莓手机,说给你看看我的本事。手指一发,机械便动作起来,然后还可以监视机械发回的数据,令那些那帮老兄们十分惊奇,说从此不用带笔记本去现场调试了。 而我想,如果趁别人不注意,偷偷操作个机械手,把和你聊天的人抬起来, 然后还很无辜地问怎么搞的?  是不是很好玩呢?

呵呵,这招“无影手”还是蛮有趣的。

Reference:

1: http://supportforums.blackberry.com/t5/Java-Development/Different-ways-to-make-an-HTTP-or-socket-connection/ta-p/445879

分类:工作学习

趣谈“工程”和“科学”

2010-10-29 3 条评论

不止有一个人问我,从学习上说,工程学位和科学学位有什么区别啊? 老实说这个问题还真不好回答,后来发现金大侠早就提及了,一个浅显易懂的比喻就是像华山派剑宗和气宗的区别,本质上都是用剑来击杀对手,但是切入点不同。 剑宗讲究纷繁的招式,以外制内,以巧破千斤;而气宗讲究以内修为主,以内养外,可谓一力降十会。

工程怎么解决问题的呢?如果你读工程学位,往往会参考一些已经存在的模型,然后综合运用,加加减减,拼拼凑凑,最后得到比较好的工程参数,运用到实际问题中。  实际过程中效果好,就是好的模型,对模型本身的论证不是很严密,也不要求严格论证。这个有点像从实践上升的理论的过程,一句话:实践出真知。

而科学学位呢? 首先,你也会参考一些模型,然后也会拼拼凑凑,通过数学证明、演算,得出一个新的模型,但是因为是科学模型,你需要从理论上严密地证明拼凑的合理性,然后通过实验或者实践证明这个模型的合理性。 这个是先有理论再去用实践来反证理论合理性的过程。一句话:理论指导实践。

“工程”好像剑宗,把对手解决了就好,然后总结一下经验教训;“科学”好像气宗,先把自己修练好了,再把你搞定,证明我修炼好了。

这两者又是一件事情的两个方面,互相联系的。 在现实中,大部分工业界的工作只要结果好就行了,而研究性质的工作需要严密的论证。这也就是通常意义上说的工程学位毕业后进入工业界工作,科学学位走学术道路的原因。当然,你拿工程学位也可以搞学术,拿科学学位也可以入世工作的,人是活的不是吗?

分类:工作学习

“工作学习”也要谈–暨本分类前言

2010-10-29 留下评论

偶然发现,我的space好像没有谈到工作学习,专业精神有所欠缺。由此我特意添加一个分类–工作学习,可以记录一些工作学习中的小片段。也可以和高手们探讨一些专业上的问题。 欢迎各位有兴趣的话共同参与。

分类:工作学习