本文为 AI 研习社编译的技术博客,原标题 :
7 Resources for Those Wanting to Learn Data Science
作者 | Bruno Trentini
翻译 | 凯伊•斯特朗、Eli伊莱、唯爱我清、Ophria
校对 | 邓普斯•杰弗 整理 | 菠萝妹
原文链接:
https://towardsdatascience.com/7-resources-for-those-wanting-to-learn-data-science-a89e25d1b55e
有时你只需要知道如何开始即可,以下是那些适用于我的经验。
图片来源:https://tinyurl.com/y7bgtyjo
数据科学从一开始就是一个交叉学科,要求从业者在计算机、数学领域具备一定的技能,同时还要具备在同人与生意打交道的经验。有些人会在多年的工作生活中慢慢累积相关的经验,但是如果那儿有一个捷径存在呢?
现在我决定同大家分享我在数据科学这条路上帮我打基础的7大资源。选取的这些资源即兼顾了趣味儿性的同时也兼顾了包含在内的数据与科学原理。
图片来源 https://timoelliott.com/blog/
“数据科学”的关键词不是数据,而是科学。——杰夫·莱克
约翰霍普金斯大学彭博公共卫生学院教授Jeff Leek在5年前写道:“数据科学中的关键词不是'数据',是'科学'。仅在使用数据回答问题时数据科学才有用。这是等式的科学部分。这种数据科学观点的问题在于它比关注数据大小或工具的观点要困难得多。计算数据集的大小要容易得多,并且说“我的数据比你的大”,或者说“我能在 Hadoop 中编码,你能吗?” 而不是说‘我有这个非常难的问题,我可以用我的数据回答吗?’。”
数据科学是个老概念了,John Graunt 在它还是个新概念的时候就研究它了。正是在15世纪的小冰期,他利用概率模型开发了人口统计学的第一部作品。到1960年,该主题已经非常成熟并且被称为数据,但是仅在2012年哈佛商业评论发表文章“数据科学家:21世纪最性感的工作”后这个词和这个工作才越来越受欢迎。此后仅两年,就可以获得关于该主题的大量在线课程。谷歌趋势显示了一些有趣的东西:尽管自2004年以来“统计学家”一词呈下降趋势,但“数据科学家”这一术语在哈佛商业评论的文章之后有了更强烈的积极变动,并且当在线课程的提供增加时,它得到了提升。
https://trends.google.com/trends/explore?date=all&q=Data%20Scientist,%2Fm%2F0c_xl
考虑到这一点,我要说清楚:数据科学家不是统计学家,并且他们也不会代替统计学家(反之亦然),但对统计学和数学的真正兴趣才是正确进行数据科学的关键。我自己不是个统计学家,但是下面的第一个资源让我喜欢上这个主题。
还请观察下面资源如何更多地关注“好奇心”和“理解”而不是“应用”。
图片来源:https://towardsdatascience.com/introduction-to-statistics-e9d72d818745
简而言之,7个资源是:
The Drunkard’s Walk,Leonard Mlodinow的书
Machine Learning Course,由斯坦福大学创建并由Andrew Ng执教
Introduction to Mathematical Thinking,同样由斯坦福大学创建并由Keith Devlin执教
Coding
A prejudice-free review on Maths
People
Reading about Heterodox and Orthodox Economics
该清单既不是按照时间顺序也不是按重要性顺序,很多这些事情会同时发生并且4-7项几乎肯定会并且永远成为你作为数据科学家日常工作的一部分。
醉汉漫步
(译者注:这是一本书,豆瓣地址:https://book.douban.com/subject/3102009/)
许多年前(大概是2009年?)当我在圣诞节收到这本书时,对它并没有很深的印象,但是多年后它变成了我一直以来的最爱。
醉汉漫步这本书是帮助我们理解随机性对我们生活造成的影响,亚马逊的产品描述是这样的“它揭露了这些心理错觉是如何阻挡我们理解生活,从选股到品酒”。
它帮助我觉察到我们是多么容易成为概率的受害者,也帮助我理解为什么我们更容易推到理解导致事件发生的所有因素,而预测类似情况会不会再次发生却很难的原因。
从分析者的角度来说,这本书向我们展示了预测模型的重要性也从统计数据的角度证明了历史事件发生的必然性,同样还向我们展示了如何使用数据来解答一些难以理解的问题,以及为什么有些问题仍旧无法获得答案。我把这本书认为是我同“数据科学”的第一次亲密接触。
另外一本很好的同类读物是:《Algorithms to Live by: The Computer Science of Human Decisions.》(《生活中的算法:人类决策中的计算机科学》)
很好的一幅展示随机漫步的图片,来源: http://cu.t-ads.org/python-intro-02-random-walk/drunkard/。
机器学习
这门课是斯坦福大学在Coursera上的公开课,是很多朋友也是我在机器学习中的入门课,在我看来这是一个必读的课程。
它会首先帮你复习线性代数中的核心概念,然后会教你基础的Matlab(Octave)编程。完成这些后,才会提出第一个关于一元回归的概念。之后,课程会带你学习一些有趣的部分,比如做数据分析的一些主要方法工具以及神经网络,但是如果你想很认真很认真的学习,那你就要多做练习并且在过程中会接触到很多课外知识,这些都会帮助你建立在机器学习中的直觉与数学能力。
课程中的示例图片,来源:https://tinyurl.com/ybupqzzb
数学思维概论
2008年我的大学阶段我很开心,因为我在这个阶段学习了不同种类的数学。即便这样,我也打算来听斯坦福大学在Coursera上的这门公开课,通过它来帮助我回顾数学中的一些核心概念,同时增强我的数学技能。这门课不仅覆盖了我在第一学期中学到的一些概念,它还提升了我在分析思维上的能力。对于大多数人来说,这门课在帮助大家从传统的推理思维转换到数学思维这件事儿上建立了一个很好的范例。除此以外,部分课程会在数学证明上具有一定的挑战性。特别是对于普通的书写语言而言,它会让你有一种在学习一门新语言的感觉。
你不会感到学习“一门新语言”这件事很痛苦,因为批判思维对数据科学尤为重要。另外一个重要的点(或者说减轻痛苦的点)是这门课会帮助你在探索数据科学时扫清一些常见谬误的概念。
如果在刚开始学习这些内容时把你自己所在一个笼子里几周,出来后你会对很多你听到的、你见到的事情产生质疑。不要忘了目标:数据科学!
Dilbert列举了许多常见谬误
来源:https://tinyurl.com/y97w2oej
编程
总的来说,无论你的职业选择是如何,你都要学会编程。它能在很多方面让你的工作生活变的有趣和方便。
大体来说,对于生活中遇到的一些数据科学问题我们已经渐渐不用再自己去编程,这部分任务已经被 Alteryx, Azure Studio, Dataiku, H2O.ai, or Knime这些平台完成。然而,成为一个通用框架或编程专家在很长一段时间内都能给你在快速高效处理未清洗的机器学习数据时极强的自信。
在最开始时你的问题可能是“我如何把csv文件的内容读取到数据框架里?我如何做一些简单的数据可视化工作?我如何把所有类里的数据值变成数值?我如何处理多列表数据集?”,在过了某个时间节点后,你的问题就变成“这里用loopsin合适吗,还是有其他的方式能达到这个目标,比如vectorised?我如何才能把我的算法简化从而降低所占用的计算机资源?“
一个简单的Seaborn指令可以帮助你建立直观大方的数据可视化视图。(自有资源)
幸运的是你有很多种选择来解决这些问题与挑战:更多有经验的人,Stack Overflow、Quora还有其他一些社区。
对编程语言来说,我推荐Python作为人工智能的入门语言,因为它很容易上手,而且它在数据科学家中很流行,因为它的Pandas,Numpy,Matplotlib等多个库可以帮助他们很好的处理数据准备、数据清洗及可视化等问题,而且它和机器学习框架TensorFlow配合很好,可以让你很轻松的就调用GPU的算力。
另外一条比较通用的路径就是R语言了。相对于Python可能会让你花点时间进入“数据科学”的世界这件事来讲,R会让你立马进入统计模型的世界。相比之下,选择Python除了数据科学这个功能外,它还能帮助你更好的理解编程这件事,让你上手其他语言如C++,Java更快。但是无论你选择R还是选择Python,都是可以的。
看看Udemy的这个课程,我没去学习它,但是就课程内容和价格来讲,看起来还不错,链接如下:
https://www.udemy.com/the-data-science-course-complete-data-science-bootcamp/
另外一个比较好的资源就是Gareth James的 An Introduction to Statistical Learning with Applications in R(R语言在统计学习中的应用)。这本书在链接中就能看到,它的核心内容是如何使用R语言进行统计编程。如果你线性代数没有学的很扎实,这本书会吓到你(你第10页就会遇到)。无论你如何选择,你都需要学习数学。。。
对数学的无偏见评论
我一直很喜欢数学,但是我在高中的时候学的比较一般。在大学阶段我就学的比较好了,当然是通过不懈的努力(2013年的时候)。差不多这个时候我决定我将在未来的某个时间节点去攻读硕士研究生,然而在学习Gre和GMAT的过程中,我就发现了我一些基础知识薄弱的地方,中间还有个有趣的插曲,就是我是通过看视频学习的,这个视频不是一般的视频,而且给孩子学习数学看的lol。
多年后,我开始接触到了数据科学和机器学习的边角:高级线性代数和计算。虽然说这对于成为一个数据科学家来说并不是一个必须品,但是它对你理解数据很有帮助,比如说一个主成分分析(PCA)倒是在做什么。懂的数据背后的数学可以在讲述故事的时候帮助你很多,当日是在开始的时候。
2个群在3个主成分中的绘图(自有资源)。数学直觉可以很好的帮助你理解这个。
在3个主要成分上绘制2个簇。数学直觉有助于解释这个问题。
总的来说,Manhattan Prep的线上课程虽然昂贵,但是对我学习数学起到了至关重要的作用。它帮助在今天更容易的理解机器学习,统计学和金融分析。拥有一个牢固的数学基础可以帮助你学习新知识时更快更好,同样它在工作效率和自我认同上也提供了非常重要的作用。
看看下边的资源:
GRE Just Math | Manhattan Prep
Manhattan Prep GRE Set of 8 Strategy Guides, 4th Edition : Manhattan Prep : 9781937707910
除非你想独自研究或者学习算法,高级线性代数与计算并不是必备的,它对我来说是更快理解核心观念的工具,尤其是在统计模型中。
人
作为一个数据科学可能需要你安静的坐下来,然后敲无止尽的代码,做成天上月的特征工程,最后才能得到一些有意义的数据。在这样的情况下,一个人如果无法能从高认知层面上解释或者理解它在干什么以及它为什么这么干,那么他是无法从中获得乐趣的。当日,最关键的是你需要首先定义清楚你要解决的问题。
假设你是一个电子商务公司的数据科学家,你突然接到报告说“信用卡欺诈交易数量突然间上升了”。虽然说你对于这个问题还没有任何线索,但是你心中已经知道大概可以先从这几个点入手。一个新手会犯的错误是直接去看一个分类或者群模型,只是因为“欺诈”这个字眼影响你这么做。探索性的数据分析可以在最开始的时候帮助你,但是核心问题仍旧无法被回答:应该去分析什么,从哪儿开始,最终的目标是什么,如何来衡量你工作的影响。最终可能你会发现问题是出在版本发行中的一个bug,一个你无须什么数据分析技巧就能解决的问题。
事实上设计思维是一个在People中被广泛认知的方法论。尤其是在基础交流、讲故事、定义问题和产品开发中。尽管设计思维同数据科学没有直接的联系,但是它可以帮助数据科学家同身边的人交流并交付“数据产品”。
Design Thinking Framework(设计思维框架). 来源: https://www.nngroup.com/articles/design-thinking/
总的来说,一个人在某一个方面越专精,越容易通过支持数据定义一个问题,并基于支持数据来快速高效的提出解决方案。不可忽略的是,哪怕是一个资深数据科学家,也要通过同人来交流从而帮助他解决遇到的挑战。
在很多情况下,理解更有经验的人的观点是非常有用的,同时这也是一种捷径。你可以和来自世界各个角落的人分享观点,参加黑客马拉松和各种聚会,世界上的大多数城市都会有诸如此类的活动。核心是交流,学习和分享。完全没有理由孤立自己。
"正统"经济学和"异端"经济学
如果你正在处理消费者数据,这些资源将会特别有用。但是如果你正在处理数据中心监控数据,药品数据,金融监控,工厂传感器上的生物医学数据,这些资源基本用不上。记住,这篇文章是基于我自身的经验,但是这里的要点是获取某一专业领域的知识。
我用简单的方式介绍一下两者的不同:正统经济学着重用一串的主流模型解释过去,现在和未来。然而"异端"经济学加入了很多的社会中的个人情况,经常在均衡中带入一些主观性。
拿巴西汽车价格举例。虽然巴西仍然在与高物价,荒谬的税收,仅仅只有12%的地方铺有公路等情况做着斗争,但是汽车制造商仍然有很高的利润率。除此之外,当人们在买车的时候,人们更倾向购买高档次的汽车,有时不惜以过高的利率分72期进行偿还。这又很多客观的和主观的原因在里面。相比于公共交通的质量,有一辆好车既是地位的象征,同时在繁忙的交通中人们有一辆车感觉会更好......这些变量可以用"正统"经济学进行评估,但是当每一个人都有自己的价值感知时,这些变量就不能直接进行评估了。这个挑战是在购买者和利润率都最大化时定义产品和价格。所以理解文化价值和宏观经济因素对感知的影响之间的对抗是重要的,这将对你进行分析更加有利。而且,理解个人行为是个性化的关键,同时这也是数据科学中的一个重要主题。顺便说一句,根据以上的例子,利率同样来自主观的因素,比如借款人和贷款人的时间偏好。
理解经济学是处理国际业务的关键。明知道宏观经济动态并不能够彻底地被GDP或者(贸易)顺差这样的主流指标解决,将迫使你自然而然地陷入可选择但强制的辩解中。
出于我个人对金融危机的好奇,我大约在2008年的时候启动了这些课题,但是我直到2012年的时候才发布了以下这些资源:
Winning At Innovation: The A-to-F Model
Demand: Creating What People Love Before They Know They Want It
现在,假设你是在一家负责CRM(客户关系管理)和订阅主要宠物产品供应商的内容管理的机构工作。
以你对商业和人群不断变化的理解,你写了一个包含能够对潜在客户分类,并能识别“呼叫中心背景噪音有多大“与发表在企业APP上的“不断增长的有关丑陋的狗狗内容”的综合因素有关的根本原因的代码。
你还了解到"客户中心的响度"与“狗狗的丑陋”不是独立思考的客户流失的主要原因。你把这些你用python的Season库并且你允许它使用这些数据并用数据可视化工具活动起来建立起来的图表呈递给你的首席战略官。你已经成功地向组织的主要领导解释了结论是如何形成的,就像指挥管弦乐队的大师,但是你用对数学和统计建模的扎实理解的能力替代了指挥棒。你很自信,你的论点很有道理,这导致了领导层的认可,因为你现在正在创造一个欣欣向荣的环境来讨论真正的问题,而不是谬误。CRM将解决客户容易流失的客户案例,内容经理现在将开始发布有关llamas的更多信息,这将增加节假日的附加销售,因为您的大多数客户都居住在秘鲁一个旅游频繁的城市。
最后,您还使用在GPU上运行的密集神经网络的TensorFlow来训练这种流失预测算法,来处理数十亿条记录和特性。它的部署方式是,即时评估应用程序、网站、实体商店和呼叫中心内客户的所有交互,使系统能够了解模式,并在检测到高流失可能性时通知您。
数据科学不仅仅是算法。资源:https://xkcd.com/1831/
听起来很疯狂,但这就是数据科学的重点:将问题转化为答案,将挑战转化为巨大的机遇(在许多情况下,需要几个月甚至几年时间!)
当然,你接触新信息的速度将超过你吸收新信息的能力。我仍然在学习许多我不完全理解的事情的进程上。诚然,我的学位和专业经验几乎是自然地帮助我在这一领域中立足的,但以上资源是独立的,我可以放心地说,几乎每个职业都有可转移的技能,可以用于数据科学。选择一个开始的地方可能是令人望而生畏的,特别是有这么多可用的信息,但我希望经验可以帮助您找到一些资源开始。
我对数据科学有很多乐趣,我相信那些喜欢多学科领域和不断学习的人也会有。现在,我仍然依靠上面的一些资源来继续前进。不过,我更重视倾听人们的经历。
事实上,它周围的炒作和嗡嗡声会让很多人感到沮丧,许多神话-和过于简单化-出现,但无论你是开始或只是路过,我希望这些资源对你有用。
想听听关于数据科学和A.I.的更多信息吗?
在 twitter 上和媒体上关注我,在媒体上我会更经常地分享和发布这些主题。
想要继续查看该篇文章相关链接和参考文献?
长按链接点击打开或点击【如果你想学数据科学,这7类资源千万不能错过】:
https://ai.yanxishe.com/page/TextTranslation/1213
AI研习社每日更新精彩内容,观看更多精彩内容:雷锋网雷锋网雷锋网
等你来译: