Tag Archives: 双人编程

“哪咤”系统第一个milestone明天组内alpha发布

  最近半个月和zf双人编程,全力开发“哪吒”系统

  和Web搜索引擎不同,pFind有自己的专业特点,最大特点就是要求尽可能高的查全率和查准率:平常Web搜索,大多数用户很少翻看三、五页以外更多的搜索结果。而对我们这个领域而言,质谱仪器原本就有很高的精度,数据集里那些含量稀少信号相对较弱的蛋白质,却往往正是科学家和医生们最重视的研究对象。pFind引擎有几十个参数,虽然很多默认推荐值经受过数百万数据的考验,但是在具体数据集上总会有优化的空间。

  也就是说,花费上万块钱成本得到珍贵实验数据,不能只拿pFind引擎常规参数“一搜了之”,需要进一步大量深入分析。例如过滤和校准质谱数据,极端情况下通过数据发现前端实验过程和仪器维护中的问题,回去重做实验;再如进行初次试搜之后,对鉴定结果进行统计分析,优化参数,改变选项,再进行迭代搜索;又如,利用多种搜索引擎交叉验证,甚至是多种方法结果的相互对比验证(例如常规的基因翻译蛋白序列库搜索引擎,最近新兴的谱库搜索,以及探索性最高的de novo算法)……

  每年iPRG国际评测中,使用同样搜索引擎的人,有排名前十位的,也有结果完全不像样子的。蛋白质组学的领军人物发表论文说:“赛车好,还需要王牌赛车手。生物组学领域的瓶颈目前是数据分析,而分析成果又很依赖优秀分析人员的经验”。像rxsun,yfu,zf,hchi,cliu等虾米,都是江湖上知名的质谱数据分析专家了。

  深入解析依赖人工工作大大降低了效率。随着pFind的进展,我们与越来越多国内外生物学家建立了合作关系。然而每月收到成T的数据,每周要提交的分析报告,海量的工作量,把所有人都压垮了,不得不放弃很多送上门来的合作机会和经费。

  数据解析的全流程自动化,国际上都在全力探索。例如现在红得发紫的Maxquant就做得不错。pFind组有不错的基础,由于有牛人yfu和他那一帮超常的算法研究天才在,我们在谱图搜索、de novo、修饰发现等等方面也有自己的独特之处。至于工程能力,生物实验室那些非计算机专业作者用C#写的桌面级别代码,要进一步拓展到大规模集群,甚至通过云计算提供在线服务,还差得很远。而这方面是计算所的长项。在超级计算机并行加速方面,我去年论文成果数据的可拓展性达到了320核,不谦虚地吹嘘,超过了全世界竞争对手目前为止公开报告数据效果一个量级,其实我已经做到了1000核,马上要做2000核。

  通过pFind云提供对外服务,这始终是我的梦想。为此努力了5年,今年终于开始着手了。也许,它能成为未来生物医药数据处理的基础构件之一。

  要建立实用的平台,就需要把方方面面的工作集成起来,解决大量很有挑战性的难题,例如单从并行加速这一个技术需求来看,不再像加速pFind搜索引擎这一具体环节这么简单,需要考虑整个流程各个环节的不同特点:在海量数据吞吐的地方,如全基因组翻译和索引,用得到MapReduce这一套;而打分鉴定这种95%CPU的工作,需要精心设计MPI类的程序;另一些特别的算法,例如de novo里面的动态规划,也许得考虑GPU加速……其实,加速还是最好做的事。

  加班很累,一写BLOG又兴奋了,也是最近密集开发,没空上网,想写的东西比较多吧。明天带“哪咤”的雏形出来见人,这个平台尝试把组里pFind、pBuild、pCluster、pMatch、pXtract、pParse、pNovo等等主力软件串联起来,无人值守的对海量数据进行尽可能全面的挖掘,我们希望听取各位的意见。

挤地铁、堵车和zf双人编程

  最近家里的网络有些故障,所以没怎么写BLOG。

  早上从家里到单位居然开了将近两小时,实在太堵了。沿路看到好多追尾、刮蹭的事故现场,交警叔叔真辛苦。

  09年以前,都是错开高峰坐地铁上下班,路上还能读小说。但被BOSS H骂,严令必须按时上下班,只好和别人一样7点出门,18点下班。地铁线路开通越多,感觉越像地狱。不止一次衣服被撕破,电脑背包带被拉断,背肌痉挛。去年10月的一天,不得不中途提前下车,找卫生间去吐,于是终于下了决心考照买车。刚买到,北京就摇号限牌了。和06年买房子一样,大家说我运气好,总能赶上趟。其实很多滋味只有自己知道。

每周限行那天,早上需要在天通苑地铁站入口的这个S形通道里煎熬40分钟

  

  这些天除了在超级计算机上调试新一版的pFind,就是和zf一起双人编程,构建一个平台,把组里pFind、pXtract、pMatch、pParse、pNovo、pBuild等等这些都整合起来。按照惯例,zf会给它起昵称,我想和zf商量叫“哪吒”,三头六臂,掌握很多种不同武器的样子。zf编程很老道,所以交流起来很放松。双人编程这事儿和很多合作一样,最关键要价值观一致,看到bad smell不肯妥协。同时越写越喜欢python,写出来的东西很干净。

  另外,老妈原单位一位同事的儿子突然猝死了,我记得比我小一点。上上周小曾跑pFind集群,周末加班没搞通,结果第二天就住院动手术了(人民纷纷血泪控诉我的压迫,这个,冤啊,真不是pFind集群折磨的……前几天和管理员一起安装Sector/Sphere的时候偷眼看了一下,他好像把$PATH环境设错了)。大家要注意身体。