本文知识点:什么是数据科学?数据科学有哪些用途?和数据科学相关的职位有哪些?成为一个数据科学家需要什么技能?为期12周的数据科学自学路线
什么是数据科学?
数据科学就是对数据进行研究,它的目的是从所有能收集到的数据中,尽可能地提取有价值的信息,获取洞察力和知识。
数据科学是一个多学科领域,要运用数学,统计,计算机科学等学科的知识来从结构化和非结构化数据中发现隐藏的模式,复杂的行为和趋势。
数据科学有哪些用途?
数据科学的应用非常广,我们生活中无处不在。
例如, Netflix 通过分析用户的浏览行为来更好地为用户推荐内容。他们会分析:用户何时暂定,何时回放,何时快进,用户会在什么时间观看什么样的内容,在哪里观看,用户为什么会离开当前页面,给内容的评分,用什么设备观看等问题。
Amazon 利用推荐引擎向用户推荐他们可能会购买的商品。
Gmail 的垃圾邮件过滤器也是数据科学产品,用算法来判断邮件是否为垃圾邮件。
用于自动驾驶的计算机视觉也是数据产品,用机器学习算法来识别信号灯,道路上的其他汽车和行人等。
和数据科学相关的职位有哪些?
和数据科学相关的职位主要有下面这六种:
1. 数据科学家:用数据驱动,提出商业解决方案。推动产品的优化和发展。用预测建模来提升顾客的体验,增加收入。和各个职能部门一起上线模型并监测结果。
2. 数据工程师:整合复杂的大数据集。设计并实施内部流程改进。构建数据提取,转换,和加载所需的基础架构。构建数据分析流程中所需的工具。
3. 数据架构师:开发数据库的解决方案。安装和配置信息系统。分析新软件或应用的结构要求。将数据从旧系统迁移到新系统。
4. 数据分析师:用统计技术分析数据。从数据源获取数据并维护数据库。开发并应用数据分析,数据收集系统。明确业务需求优先级。
5. 商业分析师:协助商业规划和监控。验证需求,开发成本估计模型。生成信息含量高的,可执行的,可重复的报告。
6. 数据管理员:协助数据库的设计,更新现有的数据库。测试和设置新的数据库。维持数据的安全性和完整性。定义提取数据的query。
以上就是六种和数据科学相关的工作,以及各自主要的工作职责,下面这张图更直观的比较了这六种职位所需要的八种技能,可见数据科学家要在前六种能力上都具有比较高的水平。
更简单地说,数据分析通常会通过处理历史数据来解释发生了什么,数据科学家不仅要进行探索性分析,得出见解,还要使用各种先进的机器学习算法来预测未来某个特定事件的发生情况,进而制定决策。
成为一个数据科学家需要什么技能?
下面详细介绍一下数据科学家需要的技能:
数据库:主流的工具有 Oracle,MySQL,SQL Server,Teradata。
统计:数据科学家需要掌握概率统计和数据分析的能力。
编程语言:主要是用来做数据分析的语言,用的比较多的是 Python,R,Sas。
数据挖掘:包括用 R 或者 Python 进行数据清洗,处理和组织数据。
机器学习:通过机器学习技术,让系统可以从大量的数据中学习出模式,在遇到新数据时,可以自动地进行分析,识别,预测,甚至决策。常用的算法有 回归,贝叶斯,支持向量机,K-means 聚类,KNN 近邻,决策树,随机森林,Ensemble 等模型。
大数据:流行的工具有 Spark,Hadoop,Talend,Splunk,Cassandra 等。
数据可视化:这一步也是非常重要的,一方面要用来帮助更好地挖掘数据中的信息,一方面还用来展示最后的成果。常用的工具有 Tableau,Power BI,Google Data Studio,QlikView。
数据科学学习路线
那么要如何自学数据科学呢?下面给出一个12周的学习路线,供大家参考:
第一周:
Introduction to python for data science
Microsoft
这门课的内容是数据科学用到的 python 基础,Numpy,Matplotlib,Pandas,是一门不错的入门课程。
第二周:
Statistics and probability
Khan academy
可汗学院的课通俗易懂,这门课的内容设置也是非常的实用。
第三周:
Introduction to computing for data analysis
Georgia tech
这门课程非常贴近实践,包括整个数据分析的流程,数据的收集,预处理,存储,分析和可视化,所用工具都是比较流行的。
第四周:
kaggle项目
Titanic: Machine learning from disaster
这个项目非常有名,在各种教程教材里面都用这个项目作为例子,所以初学者可以用这个项目入门,还可以在kernels里面学习各位大神的思路。
第五周:
Machine Learning
University of Washington
这门课程很好,回归,分类,聚类每个板块有一个项目,可以学到完整的数据科学项目的解决问题流程和思路。
第六周:
Deep learning
Andrew Ng
这门课是我最喜欢的深度学习入门课,知识点讲的全面和易懂,层层递进,是一个比较系统化的课程。
第七周:
kaggle项目
经过前面对基础的数据分析,机器学习算法,数据科学项目的学习,这时可以挑战 kaggle 中正在开放的比赛了,选择一个自己感兴趣的认真研究,将学到的技能应用到项目中去。
第八周:
Introduction to relational databases
udacity
Introduction to NoSQL data solutions
Microsoft
除了应用机器学习算法,还要对数据库有一定的了解,通过这两门课学习 SQL 和 NoSQL 的基础,数据库的设计,以及将 Python 代码连接到数据库。
第十周:
Introduction to hadoop and mapreduce
Udacity
这一周就来学学大数据的处理,这门课程作为入门课程还是很不错的。
第十一周:
Analytics storytelling
Microsoft
数据科学家还有一项技能很重要,就是讲故事的能力,经过各种分析,得出的结果,数据科学家需要将这个结果传达给 stakeholders,要让发现的问题和方案具有影响力,就需要把故事讲好,所以这门课程还是非常有必要学习一下的。
第十二周:
kaggle项目
又增加了几个技能的学习,这次可以再挑战一个项目,做的更完整一些,更漂亮一些,并尽力拿到前几名,不仅能力提升了一个层次,也可以在简历上多一个闪光点。
以上就是一个基本的学习方案,就是先学习数据分析的基础,然后掌握机器学习的算法,最后还需要数据科学实践所需要的高级工具,最重要的是最好做三个数据科学项目。
每天要保证学习2-3小时,可以用2倍速观看视频课程,高效地记好笔记,最好每周可以做一个小项目,将所学的知识用于实践,才能知道自己哪里真正地掌握了,哪里还模棱两可。
再推荐一些比较好的在线学习资源,感兴趣的话也可以自己在上面找数据科学相关的课程,多个资源进行比较,也许你会发现更吸引你的课程:
coursera
udacity
edx
udemy
kaggle learn
open2study
future learn
dataquest
iversity
另外推荐五本数据科学家应该看的书,值得一读:
《Machine Learning Yearning》
Andrew Ng
《Hadoop: The Definitive Guide》
Tom White
《Predictive Analytics》
Eric Siegel
《Storytelling With data》
Cole Nussbaumer Knaflic
《An Introduction to Statistical Learning With Applications in R》
Gareth James
最后呢,12周只是个开始,keep learning !