Skip to content

Latest commit

 

History

History
297 lines (149 loc) · 21.1 KB

data-science-learning-roadmap-2021.md

File metadata and controls

297 lines (149 loc) · 21.1 KB

2021 年数据科学学习路线图

原文:www.kdnuggets.com/2021/02/data-science-learning-roadmap-2021.html

评论

尽管日期发生了变化,但新的一年给每个人带来了重新开始的希望。如果你再加上一点计划、一些清晰的目标和学习路线图,你将拥有一个充满成长的年份。


我们的前三大课程推荐

1. 谷歌网络安全证书 - 快速进入网络安全职业轨道。

2. 谷歌数据分析专业证书 - 提升你的数据分析能力

3. 谷歌 IT 支持专业证书 - 支持你的组织 IT 工作


本文旨在通过提供学习框架、资源和项目创意来加强你的计划,帮助你建立一个展示数据科学专长的扎实作品集。

仅供参考:我根据自己在数据科学领域的个人经验准备了这份路线图。这并不是唯一的学习计划。你可以根据自己感兴趣的特定领域或研究方向调整这份路线图。此外,这个路线图是以 Python 为基础的,因为我个人更喜欢它。

什么是学习路线图?

学习路线图是课程的延伸。它绘制了一个多层次的技能图谱,详细说明了想要磨练的技能,将如何在每个层级测量结果,以及技巧来进一步掌握每项技能。

我的路线图根据每个层级的复杂性和在实际应用中的普遍性分配权重。我还添加了一个估计时间,帮助初学者完成每个层级的练习和项目。

这里有一个金字塔,描绘了按复杂性和行业应用排序的高级技能。

数据科学任务按复杂性排序。

这将标志着我们框架的基础。我们现在需要深入每一层,以更具体、可测量的细节完善我们的框架。

具体性来自于检查每一层中的关键主题和掌握这些主题所需的资源。

我们将能够通过将学到的知识应用到多个现实世界的项目中来衡量所获得的知识。我已经添加了一些项目创意、门户和平台,供你用来衡量你的能力。

重要说明: 每天处理一天的内容,每天一个视频/博客/章节。这是一个广泛的范围,不要给自己带来过多压力!

让我们深入探讨这些层次,从基础开始。

1. 如何了解编程或软件工程

(估计时间:2-3 个月)

首先,确保你拥有扎实的编程技能。每个数据科学职位描述都会要求至少一种编程语言的专业知识。

需要了解的具体编程主题包括:

  • 常见的数据结构(数据类型、列表、字典、集合、元组)、编写函数、逻辑、控制流程、搜索和排序算法、面向对象编程,以及使用外部库。

  • SQL 脚本:使用连接、聚合和子查询查询数据库

  • 熟悉使用终端、Git 的版本控制和使用 GitHub

学习 Python 的资源:

  • learnpython.org [免费]— 一个免费的初学者资源。它从零开始涵盖了所有基本编程主题。你可以使用互动式终端来并行练习这些主题。

  • Kaggle [免费]— 一个免费的互动式 Python 学习指南。它是一个简短的教程,涵盖了数据科学中的所有重要主题。

  • freeCodeCamp 的 Python 认证 [免费] – freeCodeCamp 提供了几个基于 Python 的认证课程,如科学计算、数据分析和机器学习。

  • freecodecamp 在 YouTube 上的 Python 课程 [免费] — 这是一个 5 小时的课程,你可以跟随这个课程来练习基本概念。

  • 中级 Python[免费]— Patrick 在 freecodecamp.org 上提供的另一个免费课程。

  • Coursera Python for Everybody Specialization [收费] **— **这是一个涵盖初学者级概念、Python 数据结构、从网络收集数据以及使用 Python 操作数据库的专业化课程。

学习 Git 和 GitHub 的资源:

  • GitGitHub [免费] 指南:完成这些教程和实验室,以对版本控制有扎实的掌握。这将有助于你进一步参与开源项目。

  • 这里有一个 Git 和 GitHub 快速入门课程 在 freeCodeCamp 的 YouTube 频道上

学习 SQL 的资源:

通过解决大量问题和完成至少两个项目来衡量你的专业水平:

  • 在这里解决大量问题: HackerRank (适合初学者)和 LeetCode (解决简单或中等难度的问题)

  • 从网站/API 端点提取数据 — 尝试编写 Python 脚本,从允许抓取的数据网页(如 soundcloud.com)中提取数据。将提取的数据存储到 CSV 文件或 SQL 数据库中。

  • 游戏如石头剪子布、旋转纱线、猜单词、掷骰子模拟器、井字棋等。

  • 简单的网页应用程序,如 YouTube 视频下载器、网站屏蔽器、音乐播放器、抄袭检测器等。

将这些项目部署到 GitHub Pages 或仅在 GitHub 上托管代码,以便你学习如何使用 Git。

2. 如何学习数据收集和数据清洗(整理)

(预计时间:2 个月)

数据科学工作的一个重要部分是寻找能够帮助你解决问题的适当数据。你可以从不同的合法来源收集数据 — 抓取(如果网站允许)、API、数据库和公开的代码库。

一旦你拥有数据,分析师通常会发现自己在清理数据框、处理多维数组、进行描述性/科学计算以及操作数据框以汇总数据。

数据在“现实世界”中很少是干净和格式化的。Pandas 和 NumPy 是你可以使用的两个库,帮助你从脏数据转换为可分析的数据。

当你开始熟悉编写 Python 程序时,可以随时开始学习使用像pandasnumpy等库。

学习数据收集和清洗的资源:

数据收集项目创意:

  • 从你选择的网站/API(对公众开放)收集数据,并将数据转化为来自不同来源的汇总文件或表格(数据库)。示例 API 包括 TMDBquandlTwitter API 等等。

  • 选择任何公开可用的数据集,并在查看数据集和领域后定义一系列你希望探索的问题。利用 Pandas 和 NumPy 对数据进行清洗,以找出这些问题的答案。

3. 如何学习探索性数据分析、商业敏锐度和讲故事

(预计时间:2–3 个月)

下一阶段需要掌握的是数据分析和讲故事。数据分析师的核心职责是从数据中提取洞见,并用简单的术语和可视化方式将其传达给管理层。

讲故事部分要求你在数据可视化方面非常熟练,并具备出色的沟通技巧。

需要学习的具体探索性数据分析和讲故事的主题包括:

  • 探索性数据分析 — 定义问题、处理缺失值、异常值、格式化、过滤、单变量和多变量分析。

  • 数据可视化 — 使用如 matplotlib、seaborn 和 plotly 等库绘制数据。了解如何选择合适的图表来传达数据中的发现。

  • 开发仪表板 — 许多分析师仅使用 Excel 或类似 Power BI 和 Tableau 的专业工具来构建汇总/聚合数据的仪表板,以帮助管理层做出决策。

  • 商业敏锐度:练习提出正确的问题,这些问题真正针对商业指标。练习编写清晰简洁的报告、博客和演示文稿。

获取更多数据分析学习资源:

数据分析项目想法

4. 如何学习数据工程

(预计时间:4–5 个月)

数据工程支撑着研发团队,使研究工程师和科学家在大数据驱动的公司中能够访问干净的数据。数据工程是一个独立的领域,如果你只想专注于统计算法方面的问题,可以选择跳过这一部分。

数据工程师的职责包括构建高效的数据架构,简化数据处理,维护大规模的数据系统。

工程师使用 Shell (CLI)、SQL 和 Python/Scala 来创建 ETL 管道,自动化文件系统任务,并优化数据库操作,以提高其性能。

另一个关键技能是实施这些数据架构,这需要对像 AWS、Google Cloud Platform、Microsoft Azure 等云服务提供商有很高的熟练度。

学习数据工程的资源:

数据工程项目想法/认证准备:

  • AWS 认证机器学习(300 美元)— AWS 提供的一个监考考试,这将使你的个人资料更具分量(但不保证任何东西),需要对 AWS 服务和机器学习有一定的理解。

  • 专业数据工程师 — 由 GCP 提供的认证。这也是一项监考考试,评估你设计数据处理系统、在生产环境中部署机器学习模型以及确保解决方案质量和自动化的能力。

5. 如何学习应用统计学和数学

(预计时间:4–5 个月)

统计方法是数据科学的核心部分。几乎所有的数据科学面试都主要关注描述性和推断统计学。

人们常常在没有清楚了解解释这些算法工作的基础统计和数学方法的情况下开始编写机器学习算法。这显然不是最佳的学习方法。

你应该在应用统计学和数学中关注的主题:

  • 描述统计学 — 能够总结数据是很强大的,但并不总是必要。学习位置估计(均值、中位数、众数、加权统计、修剪统计)和变异性来描述数据。

  • 推断统计学 — 设计假设检验、A/B 测试、定义业务指标、分析收集的数据和实验结果,使用置信区间、p 值和α值。

  • 线性代数、单变量和多变量微积分 ,以理解机器学习中的损失函数、梯度和优化器。

学习统计学和数学的资源:

统计项目想法:

  • 解决上述课程提供的练习,然后尝试处理一些公共数据集,在这些数据集中应用这些统计概念。提出类似于“在 0.05 显著性水平下,是否有足够证据表明波士顿的母亲生育时的平均年龄超过 25 岁?”的问题。

  • 尝试设计并与同伴/小组/班级一起进行小实验,让他们与应用程序互动或回答问题。在一段时间后,一旦你收集到足够的数据,就对这些数据应用统计方法。这可能非常难以实现,但应该非常有趣。

  • 分析股票价格、加密货币,并围绕平均收益或其他指标设计假设。确定你是否能通过临界值拒绝零假设或未能拒绝零假设。

6. 如何学习机器学习和人工智能

(预计时间:4–5 个月)

在深入掌握所有上述主要概念后,你现在应该准备好开始使用高级机器学习算法。

学习主要有三种类型:

  1. 监督学习——包括回归和分类问题。学习简单线性回归、多重回归、多项式回归、朴素贝叶斯、逻辑回归、KNN、树模型、集成模型。了解评估指标。

  2. 无监督学习——聚类和降维是无监督学习中两个广泛使用的应用。深入研究主成分分析(PCA)、K 均值聚类、层次聚类和高斯混合模型。

  3. 强化学习(可跳过)——帮助你构建自我奖励系统。学习优化奖励,使用 TF-Agents 库,创建深度 Q 网络,等等。

大多数机器学习项目要求你掌握我在这篇博客中解释的许多任务。

学习机器学习的资源:

deeplearning.ai 的深度学习专业化

对于那些有兴趣进一步深入深度学习的人,你可以从完成 deeplearning.ai 提供的专业化课程和《动手学习》书籍开始。从数据科学的角度来看,除非你打算解决计算机视觉或 NLP 问题,否则这并不是特别重要。

深度学习值得拥有一份专门的路线图。我将很快创建一个包含所有基础概念的路线图。

跟踪你的学习进度

我还为你在 Notion 上创建了一个学习跟踪器。你可以根据自己的需求自定义它,并用来跟踪你的进度,方便访问所有资源和项目。

在这里找到学习跟踪器

此外,这是这个博客的免费视频版本:

这只是数据科学广泛领域的一个高级概述。你可能需要深入研究这些主题,为每个类别制定一个基于概念的详细计划。

原文。经许可转载。

相关:

更多相关内容