给有抱负的数据科学家的六条建议
本文为 AI 研习社编译的技术博客,原标题 :
Six Recommendations for Aspiring Data Scientists
作者 | Ben Weber
翻译 | DarrickBM
校对 | 邓普斯•杰弗 审核 | 酱番梨 整理 | 立鱼王
原文链接:
https://towardsdatascience.com/six-recommendations-for-aspiring-data-scientists-93d12aeb9b9
图片来源: https://www.maxpixel.net/Art-Colourful-Gears-Creativity-Cogs-Colorful-1866468
现在数据科学的需求量很大,似乎一部分原因是因为数据科学家需要有从业经验。但其实,许多那些和我工作过的最好的数据科学家都来自不同的背景,从人类学到神经科学都有,而且要有实践经验才能脱颖而出。对于一个想转行开始数据科学生涯的毕业生或数据分析人员来说,要在这个领域做一些事来展现自己的技能是很有挑战的。我会同时站在企业招聘数据科学家的角度和求职者应聘数据科学家的角度,来谈一谈这个职业需要的几点关键经验:
亲自尝试过云计算
创建过一个新的数据集
能够将各种信息关联起来
提供一个服务
做过酷炫的可视化
写过白皮书
我将在后面详细解释以上几点。但首先,数据科学领域最关键的要义还是要能够创造出能为企业创造价值的数据产品。一个能够创造端到端数据产品的数据科学家是企业的宝贵财富,因此应聘数据科学家的时候,很必要去证明你有这些技能。
亲身尝试云计算
现在许多公司都在找有云计算经验的数据科学家,因为云平台提供的工具可以扩大数据流和预测模型的规模。未来你也可能在日常工作中用上一个云平台,比如亚马逊的AWS和谷歌云平台(GCP)。
好消息是许多平台提供了免费版从而让更多人能够了解云平台。比如AWS就有免费版的EC2实例和免费使用的服务(比如支持少量请求的Lambda),GCP则提供给用户300美元的免费额度用来试玩平台上的绝大部分功能,而Databricks则提供了社区版本的平台。虽然你不能在这些平台上免费跑大数据集,但是你可以积累在平台亲身实践的经验。
我的一个建议是你可以尝试这些平台的不同功能,去看看你是否能够用一些工具去训练及部署模型。比如我在一篇讲模型类服务的文章中,用了我熟悉的SKlearn,并且研究了如何把一个模型包装成Lambda函数。
创建一个新的数据集
在课堂上或者在数据科学比赛中,你经常需要一个干净的数据集,从而使整个项目能集中在数据探索和数据建模上。然而,在很多实际项目中,你需要做数据整理,从而将原始数据集转换成一个更有利与分析建模的数据集。通常,数据整理需要收集额外的数据集去做数据转换。比如我曾处理过美联储的数据来更好地理解富裕家庭的资产配置情况。
这是一个有趣的项目,我用了第三方数据去评估一手数据的准确性。所以我的第二个建议是进一步深入实践,去构建一个数据集。这个过程会可能包含从网站爬取数据,从数据统计网站(如steamspy)采样数据,又或者要整合不同数据源从而创造一个新的数据集。例如,我在研究生期间创造了一个星际争霸(StartCraft)比赛回放的数据集,这就能证明我有能力在一个新生成的数据集上做数据整理。
将各种信息关联起来
有一种能力我会希望数据科学家去展现:就是能将不同的组件或者系统连接起来从而完成一项任务。在数据科学家这个角色中,也许没有一个清晰的路径来使模型产品化,所以你可能需要构造一些独特的东西让系统跑起来。一个理想化的数据科学团队会有工程师来做系统搭建及运行,但是原型开发对数据科学家来说其实是一个很棒的技能,它可以让你跑得很快。
关于这点,我的建议是去尝试将不同的系统或组件整合进数据科学工作流中。这个尝试可以包含用一些工具比如Airflow去开发一个数据管道。也可以包含搭建连接不同系统的桥梁,例如我在JNI-BWAPI项目中,就开发了基于Java的接口来连接星际争霸:母巢之战的API库。或者可以包含将不同的组件整合到一个平台上,比如用GCP数据流(DataFlow)来获取BigQuery的数据然后应用到预测模型上,再把预测结果储存到云数据存储(Cloud Datastore)上。
提供一个服务
作为数据科学家,你将经常需要提供服务来让公司的其他团队使用。举例来说,这可以是一个Flask应用,用来给出一个深度学习模型的计算结果。如果你能够开发出这个服务,这意味着其他团队将能更快地使用到你的数据产品。
关于这点,我的建议是尝试使用一些工具(比如Flask或者Gunicorn)去配置web端点(endpoint),然后用Dash在Python中创建交互式的web应用。当然,在Docker中尝试配置这当中的一些服务也会对你颇有帮助。
做过的酷炫的可视化
虽然伟大的工作自然会脱颖而出,但在你解释一个分析或模型如何重要之前,仍有必要获得众人的关注。关于这点,我的建议是学习各种可视化工具来创建一个引人入胜的数据可视化。
可视化同时还能改进一系列的工作。
下面的博客展示了我作为数据科学家在过去10年中发现的一些工具和数据集。
做数据可视化的10年:
https://towardsdatascience.com/10-years-of-data-science-visualizations-af1dd8e443a7
写白皮书
在数据科学的所有技能中,有一项一直以来我都十分推荐,那就是能够通过白皮书来解释项目。白皮书是一种概要,它探讨了研究如何被应用,并提供了关于研究方法和结果的详细介绍。白皮书是为了让更多的读者一目了然地理解你的研究,并且使其他数据科学家也可以在你的基础上继续研究。
博客或其他形式的输出都可以很好地增加写作经验。我对这点的建议是尝试去面向大众写一些数据科学的文章,这样当你要表达你的想法时,你会知道如何针对不同人群阐释不同程度的细节。
结语
数据科学需要对很多工具有实践经验。幸运的是,其中越来越多的工具降低了使用门槛,并且让构建数据科学的工作组合变得越来越容易。
Ben Weber,Zynga首席科学家,Mischief顾问。
想要继续查看该篇文章相关链接和参考文献?
点击【给有抱负的数据科学家的六条建议】即可访问:
https://ai.yanxishe.com/page/TextTranslation/1585
AI入门、大数据、机器学习免费教程
35本世界顶级原本教程限时开放,这类书单由知名数据科学网站 KDnuggets 的副主编,同时也是资深的数据科学家、深度学习技术爱好者的Matthew Mayo推荐,他在机器学习和数据科学领域具有丰富的科研和从业经验。