数据科学家的修炼之道技能篇

作者: LLLLLM | 来源:发表于2017-01-01 17:15 被阅读0次
    写在新年。看了一本《数据科学家修炼之道》,想想自己还有许多不足,新的一年即将到来,为自己立下flag。全书大而杂,结合自身实际情况总结了一下。

    以上这幅图我自己的学习目标,当然这只是一个大方向,在实际情况中可能会有变化。现在对这些要点详细剖析,提醒自己不要忘记为什么来到这里以及怎么来的。

    一、编程语言

    python我最喜欢的,爬虫利器,瑞士军刀。python的科学计算包非常丰富,用来做一些数据挖掘工作,可以爬一爬生活数据,然后做一些有意义的数据产品。python的Django和Flask框架是我的目标,用来做个人博客练练手。python的深度学习Theano,还没接触过,想打好机器学习的基础再说。
    R作为统计学家的必备武器,社区非常活跃,可以和Hadoop、Spark、PowerBI、Tableau等结合使用,ggplot用来做可视化,例如微博的词云分析。R语言也有许多深度学习的包。RMarkdown用来写报告也是一种好选择。
    Java学习应用十分广泛,主要还是为了Hadoop,后续学习搜索引擎时需要了解Lucene、Nutch,掌握到JavaSE即可,用来做爬虫也是十分不错的。
    Go互联网时代的C语言,还没接触过。既然有谷歌爸爸在力挺,未来数据科学肯定也少不了。目前想法是通过学习其他语言深度学习的框架来摸索用Go语言也写一个深度学习框架。估计比较难,可以先从写爬虫框架开始。

    二、机器学习

    机器学习的算法已经有了数据挖掘和统计学算法学习的基础,接下来应该继续加强巩固,机器学习和二者紧密相连,其中一个方向也就是目前大热的统计机器学习,往深了就要接触深度学习。机器学习更偏向于学术,好好研读一下李航的《统计学习方法》和周志华的《机器学习》。当然要向谷歌和百度这些巨头看齐,还有微软中国研究院的刘铁岩老师他们的团队,清华大学、哈工大、中科院,北大等高校这方面的团队也非常赞。感觉工业界对于机器学习的学术研究和资金投入都比高校好。
    机器学习工具用来将学术上的算法平台化,将来慢慢会有许多便于做机器学习工作的软件和平台,学习软件工具能将我们的算法运用于实际问题中。目前优秀的框架有微软的DMTK、谷歌的TensorFlow、开源的Theano、还有Facebook的Caffe,学习这些框架主要用来做深度学习方面的工作。

    三、架构运维

    Linux运维,数据科学家既然要会编程,那么就要懂得搭建开发环境,要搭建环境就要懂得运维。如今Hadoop等大数据框架都适用在Linux上,Linux相较于Windows更适合开发人员,Windows一般用来办公和娱乐。
    Docker和一些虚拟化技术,可以让我们在搭建环境时更方便,特别是多台机子的分布式。由于占用资源小,可以在笔记本上搭建分布式集群了。

    四、大数据平台

    HadoopSpark,数据科学必须要了解的,是非常重要的工具,数据都要跑着这上面。Hadoop和Spark的生态圈都很庞大,一时还没接触到,是我今年重点学习的目标,估计够呛~

    五、数据库/数据仓库

    数据库主要分为关系型数据库和非关系型数据库。MySQL、PostgerSQL是目前互联网公司用的比较多的,用于事务型数据的存储,对数据分析方面不是很好用,不过需要懂得使用,自己做一些小项目的话也要用到。非关系型数据库如Hadoop的HBase就用来存储列式数据,MongoDB和CouchDB用来存储文档型数据,用来做爬虫的社交网络文本数据存储,用Neo4j等图数据库来分析社交网络的关系,Redis来做分布式爬虫。
    数据仓库目前在研究的是SQLServer的数据仓库解决方案,大数据的数据仓库方案还没有头绪。微软的战略越来越侧重于移动BI,正大力推广PowerBI,SQLServer还是运用于大公司方面,不过个人用来做学术型研究,了解商务智能。

    六、可视化

    Tableau/PowerBI都是Gartner魔力象限的领导者,用来做一些本地BI和数据报告。这两种产品都是BI软件里的佼佼者,可视化的图表十分精美,值得学习。
    Web可视化是基于B/S的数据展示,D3.js/Echart/Highchart这些JS包通过编程的手段给开发者带来大数据的可视化。
    其他诸如R和python的一些包也可以用来做可视化。

    七、CS基础

    本科不是纯计算机专业,学习的是信息管理与信息系统,虽然也有学过数据结构计算机组成原理计算机网络,不过都很水,现在难得对知识这么渴望,要好好补一补这些基础课程,这三门课也是我新年第一个月要努力拿下的,至于计算机组成原理主要看一些要点,要加把劲了。

    八、终极目标

    这一部分,主要是回答学习以上技术要用来做什么,也是现实中具体研究要研究的领域。可能将来会有所变数,但心中有个大目标,无论做什么都坚定了。先来想想怎么用Python和Go语言来做搜索引擎吧~


    总结

    刚也提到了一些学习过程中要有所成果,也就是自己动手做一些项目,比如前段时间就看到有人用爬虫和高德API结合做租房的查询项目,觉得很有意思,自己心里也有许多想做的有意思的事。还有写博客是记录学习过程和分享知识的好方法,将来的博客的目录也会按以上的思维导图来分类。最后flag差不多就这样,2017我来啦!

    相关文章

      网友评论

        本文标题:数据科学家的修炼之道技能篇

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