我是一名程序员,如何进入数据科学领域?


13

首先,这个词听起来很晦涩。

无论如何..我是一名软件程序员。我可以编码的语言之一是Python。说到数据,我可以使用SQL并可以进行数据收集。在阅读了很多文章之后,我到目前为止所得出的结论是Data Science擅长:

1-统计

2-代数

3-数据分析

4-可视化。

5-机器学习。

我到目前为止所知道的:

1- Python编程2- Python中的数据抓取

您能为我提供指导还是提出重新规划理论和实践的路线图?我给了自己大约8个月的时间。


请具体说明您要“进入”的内容。不仅是领域,而且还处于什么水平。例如,“专业医学文本挖掘者”或“业余天体物理学检查员”
皮特

我愿意成为可以充当顾问或员工的角色,可以与公司联系以挖掘其数据并获得其见解。
Volatil3

(1)安德鲁的吴机器学习课程;(2)Yaser Abu-Mostafa关于从数据中学习的课程;两者都可以访问(不包括时间),并且可以使您更好地理解。
Vladislavs Dovgalecs 2015年


数据科学一词非常广泛。也许您可以考虑自己想要什么样的工作,以及您想与哪家公司合作,查看他们的要求和职责。然后,您会知道工作是否符合您的期望和能力差距。这是GOOGLE中数据科学家的要求。![Google的数据科学家要求 ](i.stack.imgur.com/5KSN6.png
Octoparse,

Answers:


18

少集中精力于获得技能,而更多地集中于获得经验。尝试实际解决一些问题并将您的工作发布在github上。在此过程中,您将学到更多,并且能够向雇主展示知识和经验,这比对所谓的主题或理论的深刻理解要有价值得多。

如今,数据科学领域是一个工作量很大的领域,因此我不确定您特别想从事哪种工作,但是假设机器学习是其中的一部分,那么kaggle.com是一个不错的起点。就目标而言,如果您能够使用pandas / numpy / scipy中的数据,在sci-kit中构建模型,并在seaborn,ggplot甚至matplotlib中制作一些漂亮的图形,那么您将不会有任何问题从技能的角度来看这份工作-特别是如果您有代码示例和示例来展示自己的能力。如果您陷入困境,那么stackexchange将提供答案,或者您可以发布问题,很快就会得到答案。一旦您从事谋生工作,您就会从指导您的高级团队成员那里学到更多东西。

祝你好运。


7

我喜欢Berkeley的数据科学课程,将为数据科学打下良好的基础和品味,之后转移到udacity和Coursera等更多资源。因此,如果您具有编程技能,那么您将需要数学和统计数据以及大量可视化工具。熟悉IPython也将非常有用,因为查看每个步骤(可视化)如何执行至关重要,而不是编写整个脚本并进行测试(anaconda易于安装和使用)。下面列出了课程:bcourses.berkeley.edu/courses/1267848/wiki,还有我从SAS找到的免费课程的统计:统计信息1:方差分析,回归和逻辑回归简介support.sas.com/edu/schedules.html ?ctry = us&id = 1979

从ML开始会建议:www.kaggle.com/c/titanic/details/getting-started-with-python

左侧也适用于使用Pivot表和R的Excel。DataCamp已发布了有关如何使用R的教程。完成此步骤后,kaggle会赢得更多的经验竞赛(最近针对旧金山犯罪分类发布了一个竞赛),最终来自www.dataschool.io的精彩视频教程

希望能帮助到你 ...


感谢您的回答。你是怎么学的?
Volatil3

1
在线书籍,教程以及大量与数据处理相关的代码。尝试kaggle.com并尝试参加比赛。非常适合开始学习ML。
n1tk

并最终尝试找到数据科学家社区并参与项目,您将获得在项目中共享的大量经验,这是任何书本都无法教的。
n1tk

但我不擅长理论像统计,数学等我的确在统一天学习他们
Volatil3

在我的特殊情况下,我确实考虑过重返学校并转到分析和数据科学博士学位课程……需要微积分1,2,线性代数,数值线性代数,SAS,R,大数据数学,图
论及

5

与真正的数据科学家戴维不同意的是,他是一名应用统计学家,他会编码并知道出于正确的原因如何使用机器学习算法。统计是所有数据科学的基础。它本身就是“蛋糕”。其他一切都只是锦上添花。

问题是您想成为什么样的数据科学家?您是否想成为该主题的大师(了解如何,为什么,何时以及何时不应用算法或技术)或使用Scipy并认为自己是数据科学家的Kaggle Script Kiddie?

1-统计

2-其他


2
不确定我明白你在说什么。我从未说过了解“应用统计数据”并不重要-我只是做出了区分,即获得应用方法的经验比获得有关方法本身的理论知识更为重要。
大卫

1
大卫,那正是我的观点。没有方法本身的理论知识,我们只是脚本小子。经验很重要,但这是理论知识的副产品,而不是相反。
隐藏的马尔可夫模型

2
不,不是。应用经验和理论知识之间存在巨大差异,通常是行业获得的收益与课堂获得的收益之间的差异。例如,与了解正则化的理论基础相比,了解如何使用诸如交叉验证之类的应用方法有效地验证模型是否没有过拟合的价值更大。另外,请不要再提及“脚本小子”了-没有人提倡使用kaggle的新的可怕的一键提交功能。
戴维(David)

1
如果您说的是真的,那么为什么公司比单纯的学士学位的人更喜欢博士学位和具有硕士学位的人?这是因为他们具有驱动算法的技术理论知识。他们本身就是引擎制造商。理论知识是更深的知识。Kaggle是剧本小子的战车。
隐藏的马尔可夫模型

1
虽然我可以看到你们俩都想提出的要点,但我认为这可能与上下文无关。最初的问题是“程序员如何过渡到数据科学领域的工作?” 如果回答是“放弃一切,花几年时间获得统计学博士学位,然后自己做一些项目然后开始申请”,那是一个相当繁重的障碍,您最好告诉他们不要在实践中费心。感。相反,鉴于Stats PHD(甚至是Masters)的数量以及寻找的人数,雇主可能会考虑可以证明自己没有学位的经验的人。
基督

4

如果您想成为一名具有真正知识的实践者,请从数学(微积分,概率+统计,线性代数)开始。在尝试通过编程实现所有步骤的每个步骤中,python都是不错的选择。当您取得良好的基础时,请使用真实的数据并解决问题

课程。线性代数-edx Laff或对矩阵Stat进行编码-edx stat 2x Barkley微积分-阅读...简单


2

戴维(David)有一个很好的观点,我建议您专注于能进一步激发您兴趣的事物。这是在各种努力中取得成功的唯一途径。如果您想构建一些很棒的东西,那就从它开始。如果您想读书也不错。起点并不重要。未来几天,您将对下一步的需求有更好的了解。


1

数据科学是如此广泛,有很多不同的途径可以进入它。通常将其分为4或5种不同的类型,例如:

在此处输入图片说明

您可以从本主题的其他帖子中看到来自应用统计背景(应用正确的算法),编程背景(参与Kaggle)以及其他将其应用到业务背景的人

精明的公司可以将偏爱编程的人称为“数据工程师”。大公司还在其数据科学团队中使用每种类型的工具,因此展现出良好的T型技能将是一件好事。


0

如果您是一名程序员,则可以从决策树分类器开始,重点是了解熵和信息增益背后的数学原理。必须了解ML完全与数据压缩有关。

对于实践课程的价值,我非常不同意其他一些答案。对于ML而言,最有价值的是数学:数论,线性代数和概率论。

如果您不专注于数学,那么您将学到的唯一一件事就是,如何使用某个库来做魔术,这根本不是机器学习,也不是科学。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.