美文网首页有趣的文章@IT·互联网程序员
数据挖掘 = 找茬 + 测试 + 性能优化 ?

数据挖掘 = 找茬 + 测试 + 性能优化 ?

作者: 插着扇子的石头 | 来源:发表于2017-04-15 23:15 被阅读194次
    理想与现实

    刚拿到数据挖掘工程师的offer时,我内心特别激动,对未来工作充满了期待。哈佛大学商业综述在2012年宣布“数据科学家将是 21世纪最性感的职业”,我开始走上数据分析道路。面试官的一句“我们团队的数据挖掘工程师都是艺术家”,让我果断地拒掉其它公司的offer,义无反顾地加入这个团队。

    入组快一年了,做过的最大的一个项目是“找茬”。很多人都玩过“找茬”游戏,就是给你两幅图片,你需要找出所有的不同之处。我的项目是找出两套代码的不同,然后将两套代码合并成一套代码。团队先开发出代码A,跑数据a,然后迁了个分支B,专门跑数据b。这个分支经过一年的时间,不断壮大,已经可以独当一面了。这时,为了方便代码维护,需要合并两套代码。

    怎么办呢?从svn上把A代码迁到本地进行修改,我们称这份代码为C代码。师兄修改C代码,使其同时支持数据a和数据b。经过测试,发现C代码跑a数据和A代码跑a数据有差别,C代码跑b数据和B代码跑b数据也有差别。我的任务就是使得C代码跑a数据和A代码跑a数据效果一样,C代码跑b数据和B代码跑b数据效果一样,即使结果有差异,也要确保所有差别可解释,且符合预期。

    然后我就开始了8个月的“找茬长征路”。第一阶段是测试b数据。将C代码和B代码跑b数据的结果进行对比,发现不同后,追查导致这些不同的原因。跑一份数据,涉及十多个阶段性任务和上百个特征。我必须跟踪调查每一个发生变化的特征,以及找出所有中间数据的差别,这特别考验一个人的耐心和细心。有时我觉得工作特没劲,太琐碎,有时又觉得挺有意思的,像在玩“找茬”和“破案”游戏。第二阶段是测试a数据,追踪C代码与A代码的不同,其方法与阶段一相同。最后,阶段一花了6个月,而阶段二只花了2个月。

    平常,除了“找茬”,我还要做各种测试,干各种杂活。比如说师兄改了几行代码,说你来测试一下效果吧。上游数据团队改了个策略,需要下游做评估,说就你来评估吧。一言以蔽之,凡是新人能干得活都交给新人。有时,师兄还很直接地问我:“我交给你的杂活都干完了吗?”听了师兄的话,我的玻璃心碎了一地,暗暗吐槽,“你就不能骗骗我说,我的工作很重要吗?”

    好不容易把所有茬都找完了,我想这下该让我弄模型了吧,就算不做模型让我分析分析数据也是好的。结果一年的任务分配下来,居然全是性能优化,就是加快代码运行速度,节省存储空间。说好的数据挖掘呢?我深深觉得自己就是一个填坑打杂的,做着别人不愿意做的事情。师兄都是过来人,懂得我们新人的苦闷,吃饭的时候也常常安慰我们说,“辛苦了!” “再忍一忍哈!” “新人快来了,你们就可以把杂活交给他们了!”我突然有一种媳妇快熬成了婆的感觉。

    不过话说回来,这一段时间的打杂也让我收获良多,至少对业务逻辑和整套代码都非常熟悉了。有时,我们无法拒绝自己不喜欢做的事,那不如想开一点,尽量看到它给自己带来的好处,让自己不那么难过。

    相关文章

      网友评论

      • 九色喵:果然是程序媛啦
        插着扇子的石头:工作好累啊,羡慕“葛优躺” :lollipop:
      • 知识学者:大数据,应该学习那些东西:no_mouth:
        插着扇子的石头:@东风冷雪 可以滴。上大学的时候,我就特别喜欢数学,经常去图书馆看数学类和算法类的书籍。学数学的人转计算机蛮有优势的,特别是大数据、数据挖掘这块。
        python也是我用过的最方便的语言,强推head first系列。:smile:
        知识学者::flushed:伪 计算机专业, 喜欢数学, 有人建议学习大数据,:sob:
        看了一下Python,语法好学, 估计熟练 要发时间。
        :grin: 准备向大数据 发展。
        插着扇子的石头:就我平常用到的有
        工具:python+shell,hadoop命令和hadoop任务,linux命令
        算法:数据挖掘、机器学习、统计学知识
        其他:数据展示(便于分析数据)
        我还有几篇关于数据挖掘的文章,例如《数据挖掘工程师的第一个月》会讲一些与大数据相关的基础知识。
        大数据可以被用来做很多东西,数据挖掘只是其中的一个方面。读书的时候,用到的数据都是几G,上班后碰到的数据动不动就上T。:joy:

      本文标题:数据挖掘 = 找茬 + 测试 + 性能优化 ?

      本文链接:https://www.haomeiwen.com/subject/zlnnattx.html