Skip to content

Latest commit

 

History

History
147 lines (74 loc) · 8.9 KB

learn-productive-data-science.md

File metadata and controls

147 lines (74 loc) · 8.9 KB

你为什么以及如何学习“高效的数据科学”?

原文:www.kdnuggets.com/2021/07/learn-productive-data-science.html

评论

图片来源Pixabay(免费图片)

数据科学工作流的效率

数据科学和机器学习可以以不同的效率和生产力进行实践。不论应用领域或专业如何,一名数据科学家——无论是初学者还是资深专家——都应努力提升其效率,在所有典型的数据科学任务中,

  • 统计分析,

  • 可视化,

  • 模型选择,特征工程,

  • 代码质量测试,模块化,

  • 并行处理,

  • 轻松的 web 应用部署

图片来源Pixabay(免费图片)

这意味着执行所有这些任务,

  • 以更高的速度

  • 更快的调试

  • 以同步的方式

  • 通过充分利用所有可用的硬件资源

在这个过程中,你应该期待学习到什么?

让我们假设有人在教授一个“高效的数据科学”课程或编写一本相关书籍——使用 Python 作为语言框架。那么,针对这样一个课程或书籍,通常应该有什么期望?

图片来源Pixabay(免费图片)

课程/书籍应该面向那些希望超越标准方式进行数据科学和机器学习任务,并利用 Python 数据科学生态系统的全貌以提高生产力的人。

读者应该学习如何发现标准过程中的低效和瓶颈,以及如何跳出框框思考。

自动化重复的数据科学任务是读者将从阅读本书中培养的一种关键思维方式。在许多情况下,他们还将学习如何扩展现有的编码实践,以便在 Python 生态系统中使用已有的高级软件工具,处理更大数据集并提高效率,但这些工具在标准数据科学中并未教授。

这不应该是一本普通的 Python 食谱书,教授标准库如 Numpy 或 Pandas。

相反,它应该专注于有用的技术,比如如何测量 ML 模型的内存占用和执行速度质量测试数据科学流程,模块化数据科学流程以进行应用开发等。它还应涵盖一些在自动化加速数据科学家日常任务中非常有用的 Python 库。

此外,还应涉及帮助数据科学家处理大型和复杂数据集的工具和包,以比遵循标准 Python 数据科学技术智慧更优的方式

一些需要掌握的具体技能

图片来源: Pixabay (免费图片)

具体来说,让我们总结一些学习和实践高效数据科学的具体技能。我还尝试提供一些代表性文章的链接作为参考

  1. 如何为数据科学/机器学习编写快速且高效的代码,并且如何测量其速度和效率(请参见这篇文章

  2. 如何构建模块化且富有表现力的数据科学管道以提高生产力(请参见这篇文章

  3. 如何为数据科学和机器学习模型编写测试模块(请参见这篇文章

  4. 如何高效处理大型和复杂的数据集(这在传统数据科学工具下会很困难)

  5. 如何充分利用 GPU 和多核处理器进行各种数据科学和分析任务,而不仅仅是专门的深度学习建模(请参见这篇文章

  6. 如何快速制作 GUI 应用程序以演示数据科学/机器学习想法或模型调优(请参见这篇文章),或如何轻松(且快速)地在应用级别部署机器学习模型和数据分析代码(请参见这篇文章

关于这一主题的理想书籍将会……

图片来源: Pixabay (免费图片)

  1. 教授如何识别标准数据科学代码中的低效和瓶颈,以及如何跳出思维框架解决这些问题

  2. 教授如何编写模块化、高效的数据分析和机器学习代码,以提高在各种情况下的生产力——探索性数据分析、可视化、深度学习等

  3. 涵盖了广泛的附加主题,如软件测试、模块开发、GUI 编程ML 模型部署作为网络应用程序,这些都是新兴数据科学家必须掌握的宝贵技能,而这些技能在任何一本标准的数据科学书籍中都很难找到。

  4. 涵盖并行计算(例如,Dask, Ray)、可扩展性(例如,Vaex, Modin)以及 GPU 驱动的数据科学栈(RAPIDS)的实际示例。

  5. 向读者展示并指导一个更大且不断扩展的 Python 数据科学工具生态系统,这些工具与软件工程和生产级部署的更广泛方面相连接。

一个具体的例子:GPU 驱动和分布式数据科学

尽管学术界和商业圈广泛讨论了 GPU 和分布式计算在核心 AI/ML 任务中的应用,但它们在常规数据科学和数据工程任务中的实用性则覆盖较少。然而,使用 GPU 进行日常的统计分析或其他数据科学任务,能够大大提升成为高效数据科学家的能力。

例如,RAPIDS 软件库和 API 套件为你——一位普通的数据科学家(而不一定是深度学习从业者)——提供了完全在 GPU 上执行端到端数据科学和分析管道的选项和灵活性。

图片来源:作者创建的拼贴

即使使用中等规格的 GPU,这些库在速度上也显示出相对于其常规 Python 对应物的显著提升。自然地,我们应该在可能的情况下采纳这些,以实现高效数据科学工作流。

同样,也有出色的开源机会可以超越 Python 语言的单核限制,并采用并行计算范式,而无需改变数据科学家的核心身份。

图片来源:作者创建的拼贴

摘要

我们讨论了高效数据科学工作流的实用性和核心组件。我们设想了一个理想的课程或书籍应提供给读者的内容。我们触及了一些具体的例子,并说明了其好处。还提供了一些与掌握技能相关的资源。

你可以查看作者的GitHub,获取机器学习和数据科学中的代码、想法和资源。如果你和我一样,对 AI/机器学习/数据科学充满热情,请随时在 LinkedIn 上添加我在 Twitter 上关注我

原始内容。经许可转载。

相关内容:

  • 如何让自己从数百名其他数据科学候选人中脱颖而出?

  • 你的机器学习代码消耗了多少内存?

  • 一个错误如何浪费了我 3 年的数据科学之旅

更多相关主题