本文约
8190字,
建议阅读
10分钟。
本文节选自《工作中的数据科学家》,书中采访了16个不同行业的16位顶级数据科学家,以了解他们在理论上如何思考,以及在实际中解决什么问题,数据的作用和取得成功的原因。
数据科学为何迷人?这与数据科学家密不可分!
通过合理使用大量数据,在这群人的手中,大批新应用、新行业应运而生。
语音识别,计算机视觉中的物体识别,机器人,自动驾驶汽车,生物信息学,神经科学,系外行星的发现,对宇宙起源的理解,以及在经费有限的条件下,组织一支胜出的棒球队。
数据科学家是整个产业的核心。他们必须将应用领域的知识与统计专业知识结合起来,并运用最新的计算机科学思想来实施。
本文节选自《工作中的数据科学家》,书中采访了16个不同行业的16位顶级数据科学家,以了解他们在理论上如何思考,以及在实际中解决什么问题,数据的作用和取得成功的原因。
本文中,你将看到这些来自不同行业的科学家对以下这个问题的回答:
“你会给初入数据科学行业的人提供什么建议?”
1. Chris Wiggins,纽约时报首席数据科学家、哥伦比亚应用数学副教授
创造力和关怀。你必须真正喜欢某件事情,愿意花很长一段时间来琢磨它。还有,保持一定的怀疑。我喜欢博士生的一个原因是——五年的时间足以让你有一个发现,让你认识到你一路上做错的所有事情。对你来说很棒的是,能理智地反复思考“冷聚变”然后意识到“哦,我真的搞砸了”,从而犯下一系列错误并解决它们。
我认为攻读博士学位的过程,特别是做研究时,确实能让你对那些看起来理所当然的事情有所怀疑。我认为这点很有用,因为,如果不能保持怀疑,你很容易就会走上错误的道路——因为这是你第一次遇到一条看起来很靠谱的路。
虽然这个答案看起来无聊,但事实是你需要真正拥有技术深度。数据科学还未形成一个领域,所以目前还没有证据。
我们很容易就可以通过维基百科理解机器学习的概念。但要真正做到这一点,你需要知道对一个具体的问题应该使用哪种工具,而且你需要充分了解每种工具的缺陷和限制。要获得这些经验没有捷径。只有不断试错。你会发现自己将分类问题归入聚类问题,或将聚类问题归入假设检验问题。
你发现自己开始尝试某些事情,自信自己做的是对的,然而最终意识到你完全错了,这样的事情你会经历许多次,而且非常不幸没有捷径可走——但这会提升你的经验。你只需要这样做下去,并不断犯错误,这也是另一个我喜欢在这个领域从业多年的人的理由。
在某件事上要想成为专家需要很长时间。这需要多年的错误。几个世纪以来现实一直如此。引用著名物理学家Niels Bohr的一句名言,成为一个领域的专家的方法就是在该领域中尽可能地犯错。
2. Caitlin Smallwood,Netflix的科学与算法副总裁
我会说在你做任何其他事情之前,首先要硬着头皮理解数据的基础知识,尽管它既不迷人也不那么有趣。换句话说,努力了解如何捕获数据,准确理解每个数据字段是如何定义的,并了解数据何时丢失。
如果数据缺失,这是否意味着什么?它是否仅在某些情况下丢失?这些小小的微妙的数据陷阱会让你深深陷入数据科学的魅力中。
你可以使用最复杂的算法,但如果这一切建立在不经检验的数据集上,你得到的结果也毫无价值。无论你有多迫不及待想要着手数据建模的部分,你都无法忽略原始的数据。在开始建模之前,标记你的i,跨过你的t,仔细检查你所掌握的所有底层数据。
我又渐渐学会的另一件事是,在系统环境下,混合算法几乎总比单一算法表现得出色,因为不同的技术会利用数据模式的不同方面,特别是在复杂的大型数据集中。因此,虽然你可以采用一种特定的算法并不断迭代以获得更好的模型,但我的经验是,算法组合往往比单一算法更好。
3. Yann LeCun,Facebook人工智能研究总监、纽约大学教授
我总是给出同样的建议,因为我经常被问到这个问题。我认为,如果你是一名本科生,选择一门你可以尽可能多地学习数学和物理课程的专业。而且它必须是正确的课程。我说的话可能听起来自相矛盾了,但工程学或物理学的专业可能比数学、计算机科学或经济学更合适。当然,你需要学习编程,所以你需要参加计算机科学专业的大量课程来学习编程的机制。
然后,参与一项数据科学领域的研究生项目。学习本科生的机器学习,人工智能或计算机视觉课程,因为你需要接触这些技术。在那之后,尽可能多地参加数学和物理课程,尤其是应用数学课程,例如优化问题,因为他们使你能够更加充分地应对真正的挑战。
这也取决于你想去的地方,因为数据科学或人工智能的背景下有许多不同的工作。人们应该真正思考他们想做什么,然后研究这些主题。目前的热门话题是深度学习,这意味着你需要学习和理解神经网络的经典著作,学习优化问题,学习线性代数等知识。这有助于你了解我们每天会遇到的基本数学技巧和一般概念。
4. Erin Shellman,Zymergen的数据科学经理、Nordstrom数据实验室和AWS S3的前数据科学家
对于那些仍在决定学习什么的人来说,我会说STEM(理工科)领域毫无意义,尤其是‘TEM’领域。学习STEM科目将为你提供测试和了解世界的工具。
这就是我对数学,统计和机器学习的看法。我对数学本身不感兴趣,但我的兴趣在于用数学来描述事物。毕竟这些都是工具集,所以即使你对数学或统计学上不感兴趣,这仍然非常值得我们投入进去,考虑如何将它应用于你真正热爱的事情上。
对于像我这样试图转型的人来说,我会觉得很困难。要知道,转行很困难,而且你必须加倍努力。这不是数据科学独有的困难——这就是生活。在这个领域,我们很难不与别人建立联系,我们可以通过与慷慨的人们见面、喝咖啡来建立有效的联系。在我的生活中,头条规则就是“跟进”。如果你和某个人交流,在他身上发现了你想要的东西,就跟进。
数据科学家的文章可能非常唬人,因为大多数文章读起来像数据科学术语表。事实是,技术变化如此之快,以至于没有人拥有可能值得记录下来的所有经验。
当你看到这里时,这一点可能是压倒性的,而且你可能会觉得“这不适合我,我没有任何这些技能,也没有什么可以贡献的。”我劝你们不要有这种想法,只要你随时都可以改变和学习新东西。
最终,公司需要的是能够严格定义问题并设计解决方案的人。他们也需要善于学习的人。我认为这些才是核心技能。
5. Daniel Tunkelang, Twiggle的首席搜索传道者、LinkedIn的前搜索质量主管
对于那些来自数学或自然科学领域的人,我建议他们投资于学习软件技能——尤其是Hadoop和R,它们是使用最广泛的工具。来自软件工程的人应该参加一个机器学习课程,并使用真实的数据进行一个项目,其中许多数据都是免费的。正如许多人所说,成为数据科学家的最好方式是实践数据科学。
数据就在那里,科学也不是那么难学,特别是对于那些受过数学、科学或工程学训练的人。读《数据的不合理有效性》—谷歌研究人员Alon Halevy、Peter Norvig和Fernando Pereira的一篇经典文章。文章通常被总结为“更多的数据胜过更好的算法。”
数据的不合理有效性:
http://www.cs.columbia.edu/igert/courses/E6898/Norvig.pdf
整篇文章都值得一读,因为它概述了最近在使用网络规模数据改进语音识别和机器翻译方面取得的成功。另外,请听Monica Rogati关于更好的数据如何击败更多数据的见解吧。理解并内化这两个观点,你正在成为一名数据科学家的道路上狂奔。
6. John Foreman,产品管理副总裁兼MailChimp前首席数据科学家
我发现很难找到并聘用合适的人。
这确实是一件很困难的事情,因为当我们思考大学制度的现状时,无论是本科生还是研究生院,你只关注一件事。
你擅长什么。但数据科学家有点像新兴的文艺复兴人士,因为数据科学本质上是多学科的。
这就是为什么有了那个“数据科学家比计算机程序员懂得更多的统计知识,并且能比统计学家更好地编程”的一个大笑话的原因。
这个笑话是什么意思?这是说数据科学家是一个对这两件事情略知一二的人。但我想说,他们知道的不只是两件事。他们还必须知道如何沟通。
他们还需要知道概率,组合,微积分等。
学习一些可视化也无妨。他们还需要知道如何操作数据,使用数据库,甚至一点点OR。有很多事情他们需要知道。所以要找到这些人真的很难,因为他们必须接触很多学科,他们必须能够明智地讲述他们的经验。这对任何一个申请人来说都是个艰巨的任务。
雇用一个人需要很长时间,这也是为什么我认为人们一直在谈论现在数据科学还没有足够的人才的原因。我认为这在一定程度上是正确的。我想一些正在开办的学位课程会对现状有所帮助。
但即使如此,从这些学位项目中毕业,对于MailChimp,我们还是会看看你如何表达并与我们交流这个特定项目是如何教会你使用数据科学横贯多个学科的。
这将淘汰非常多的人。我希望有更多的课程将重点着眼于数据科学家在工作环境的沟通和协作方面。
7. Roger Ehrenberg,IA风险投资公司的执行合伙人
我想这些领域有最多的机会也有最大的挑战。
医疗保健数据显然在PII和隐私问题上有一些大问题。
除此之外,还有僵硬的官僚主义,僵化的基础设施和数据孤岛,这使得解决需要跨多个数据集进行集成的难题变得非常困难。
但数据一定会改变这个行业,我认为我们在这里讨论的许多技术都直接关系到如何使医疗保健更好、更便宜、更分散。这是一代人的机会。
早期的另一个巨大领域是风险管理——不管是金融、贸易还是保险领域。
当你在讨论将新的数据集纳入风险评估时,这真的是一个难题——尤其是在将这些技术应用到保险业这样的行业时,就像医疗保健一样,大量官僚机构中存在大量隐私问题和数据。
与此同时,这些老旧而僵化的公司才刚刚开始开放,并正在与创业社区互动,以利用新技术。这是另一个让我非常兴奋的领域。
第三个我热衷的领域是重塑制造业,并使其更加高效。制造业回归陆上的趋势已经形成。
更强大的制造业可能成为在美国创造充满活力的中产阶级的桥梁。我认为技术可以帮助加速这一有利趋势。
8. Claudia Perlich, Dstillery首席科学家
我认为,最终,学习如何做数据科学就像学习滑雪。你必须做。
你只能看很多视频视频,然后不断地学习。在一天结束的时候,你必须骑上你那该死的雪橇,从那座山上下来。
你会在途中崩溃好几次,这很好。这是你需要的学习体验。
实际上,我更倾向于问面试者那些不顺利的事情,而不是那些行得通的事情,因为这告诉我他们在这个过程中学到了什么。
每当有人来问我,“我应该怎么做?”我说,“是的,当然,参加关于机器学习技术的在线课程。毫无疑问,这是有用的。显然,你必须能够编程,至少在某种程度上。你不必是一名Java程序员,但你必须设法完成一些工作。我不在乎怎样做。”
最终,无论是在Datakind花时间做NGO的志愿者,还是去kaggle网站参加他们的一些数据挖掘竞赛——只要去做就好。
特别是在Kaggle上,阅读论坛上其他人告诉你的关于这个问题的内容讨论,因为在那里你可以了解到人们在做什么,他们在做什么,以及什么对他们不起作用。
因此,任何能让你真正参与到处理数据的事情中去的事情,即使你没有为此得到报酬,也是一件很棒的事情。
记住,你必须滑下那座山。没有其他办法了。你无法学习其他方式。
所以,自愿抽出时间,用任何你能想到的方式沾手,如果你有机会做实习,那就再好不过了。另外,有很多机会可以让你开始。去做吧。
9. Jonathan Lenaghan, PlaceIQ的首席科学家兼产品开发高级副总裁
首先,自我批评是非常重要的:永远质疑你的假设,对你的产出保持偏执。这是最简单的部分。
如果人们真的想在数据科学领域取得成功,在技能方面,具备良好的软件工程技能是至关重要的。
因此,即使我们雇用的人员很少有编程经验,我们也会非常努力地尽快向他们灌输工程、工程实践和许多优秀的快速编程实践的重要性。
这对他们和我们都是有帮助的,因为这些几乎都可以一对一地应用于数据科学。
如果你现在查看一下开发程序,它们有连续集成、持续构建、自动化测试和测试工具—所有这些都很好地映射了从开发作业世界到数据操作(我从Red Monk借鉴的短语)世界。
我认为这是一个非常强大的概念。对所有数据进行测试非常重要,这样如果你更改了代码,你就可以返回并测试所有数据。
拥有工程学思想对于在数据科学领域高速发展至关重要。
阅读《完整代码》和《实用主义程序员》会比阅读机器学习的书籍给你带来更多——但是,当然你也必须阅读机器学习的书籍。
10. Anna Smith,Spotify高级数据工程师、Rent the Runway前分析工程师
如果有人刚刚开始从事数据科学,那么最重要的事情就是要了解问别人问题是一件很好的事儿。我也认为谦卑是很重要的。
你必须确保你没有被束缚在你正在做的事情中。你总是可以做出改变并重新开始。
我认为,在你刚起步的时候,能够废弃代码真的很困难,但最重要的事情是做一些事情。
即使你没有数据科学方面的工作,您仍然可以在宕机时间内探索数据集,并且可以提出问题来询问数据。
在我个人的时间里,我琢磨过Reddit的数据。我问自己,“我可以如何通过我拥有或没有的工具来探索Reddit?”
这很好,因为一旦你开始了,你可以看到其他人如何解决同样的问题。
用你的直觉,开始阅读别人的文章,然后说,“我可以在我的方法中使用这个技巧。”缓慢的开始,缓慢的前进。
当我开始的时候,我尝试了很多阅读,但我认为这并没有什么帮助,直到你真正使用代码和数据来理解它的工作原理,以及它是如何运行的。
当人们将其呈现在书本中时,这一切都很美好。在现实生活中,事实并非如此。
我认为尝试很多不同的东西也是非常重要的。我从未想过我会在这里。我也不知道五年后我会在哪里。
但也许这就是我如何学习的,通过学习一些不同的学科的知识,来尝试理解什么才是最适合我的。
11. Andre Karpistsenko, Taxify数据科学首席及创始人之一、PlanetOS研发负责人
虽然这听起来有些大而化之,但我认为你应该相信自己并且遵从内心。如果仅仅只盲从媒体新闻所宣扬的内容,然后选择了自己并不喜欢的方向,我认为你会很容易感到沮丧。所以当我们回到数据科学上时,你应该把它看做职业生涯的起点。
数据科学的背景对于未来发展将有极大助力,开发软件以及数据统计的技能将帮助你在任何领域中都能做出更明智的决策。譬如,我们曾多次听说一个运动员是如何通过数据来改善自身表现的:通过改善并反复练习应该起跳的角度,他成为了金牌所有者。这完全可以归功于数据驱动的方法。
如果需要我给出更具体的操作性建议,那么需要看这个接受建议者的野心有多大了。如果这个人是想创造新的方法和工具,那么建议将会大不相同,因为这需要在选定的方向上坚持不懈,才会成功。但如果目的仅仅是能够在很多情况下灵活机动,那么一个丰富的工具箱就可以解决你的问题。
我曾经得到的最佳建议来自于斯坦福的一个教授,不久之前我上过他的课。他的建议是成为一个T型人才,即在核心竞争力之外能够有次级核心竞争力,如此便能在自己需要或者想要转行的时候有所选择。除了在某一垂直领域拥有专家级别的技能之外,他还建议拥有足够宽的横向背景,以便在不同情况下与不同的人合作。
所以如果你还是学生,那么建造一个T型能力树,拥有次级核心技能,这也许你能选择的最佳成长路线了。
同时,最重要的事情在于与一帮比自己优秀的人相处,然后从他们身上不断学习。这是我能提供的最好建议。
大学校园是你能够深切体会到人之多样性的地方。如果你能够与最优秀的人共同工作,那么你就能在任何事情上获得成功。
12. Amy Heineike,PrimerAI科技副总裁、 Quid前数学首席