对于大数据来说,现在是发展的黄金时期。这是个新领域,增长迅速,同时大数据科学家的缺口也很大,据说他们的平均年薪可以达到10万美元。哪里有高薪,哪里就吸引人们,但是数据科学技能的难度意味着许多人需要努力学习。
对于大数据来说,现在是发展的黄金时期。这是个新领域,增长迅速,同时大数据科学家的缺口也很大,据说他们的平均年薪可以达到10万美元。哪里有高薪,哪里就吸引人们,但是数据科学技能的难度意味着许多人需要努力学习。
一、学会爱数据
数据科学是一个广泛而模糊的领域,这使得它很难学习。没有动力,你最终会中途停止,对自己失去信心。
你需要些东西来激励你不断学习,即使是在半夜,公式已经开始变的模糊,你还是想探究关于神经网络的意义。当你在困惑“下一步我该学习什么?”的时候,你需要些动力来让你发现统计、线性代数和神经网络之间的联系。
我学习的入口是用数据来预测股市,尽管当时我完全不熟悉。我编码的第一批项目用于预测股票几乎没有统计,但是我知道它们表现的并不好,所以我日以继夜的工作让它们变的更好。
对于小白学习大数据需要注意的点有很多,但无论如何,既然你选择了进入大数据行业,那么便只顾风雨兼程。正所谓不忘初心、方得始终,学习大数据你最需要的还是一颗持之以恒的心。
并不是每个人都会痴迷于股市预测,但重要的是要发现你想学习的东西。
数据可以计算出关于你的城市很多新鲜有趣的事情,比如所有设备在互联网上的映射、找到真正的NBA球员的位置,今年又哪些地方有难民,或者是其他事情。数据科学的伟大之处是有无限有趣的东西可以发现——那就是问问题然后找到一个方法来得到答案。
二、在实践中学习
学习神经网络、图像识别和其他尖端技术是很重要的,但大多数数据科学工作并不涉及这些:90%的工作都是数据清理。精通几个算法比知道许多算法但都是皮毛要好。
如果你知道线性回归、k-means聚类和逻辑回归,可以解释和诠释他们的研究结果,并可以用这些完成一个项目,那比知道每一个演算法但不使用它们更加优秀。
大多数时候,当你使用一种算法,它将是库中的一个版本(你很少会自己编程支持向量机实现——这需要太长时间)。所有这些意味着好的学习方法是在项目工作中学习,通过项目,你可以获得有用的技能。一种方法是,在一个项目中先找到一个你喜欢的数据集,回答一个有趣的问题。另一种方法是,找到一个深层次的问题,例如预测股票市场,然后分解成小步骤。
我第一次连接到雅虎财经的API,并爬下每日价格数据。然后我创建了一些指标,比如在过去的几天里的平均价格,并用它们来预测未来(这里没有真正的算法,只是技术分析)。这个效果不太好,所以我学会了一些统计知识,然后用线性回归。 然后连接到另一个API,清理每一分钟的数据,并存储在一个SQL数据库,等等操作,直到算法效果很好。
这样做的好处是我在一个学习环境中学习。我不仅仅学习了SQL语法,用它来储存价格数据,还比仅仅学习语法多学习了十倍的东西。学习不应用的知识很难被保留,当你做实际的工作的时候也不会准备好。
三、学会沟通
数据科学家需要不断展示他们的分析结果。这个过程可以区别数据科学家的水平。交流的一部分是对主题的理解和理论, 另一个是理解如何组织你的结果。最后一部分是能够清楚地解释您的分析。我很难找到关于有效沟通的概念,但有些事情你该尝试一下:开始写博客,展示你的数据分析的结果。试着教那些对数据科学技术知识并没有什么概念的人,比如你的朋友和家人这可以可以帮助您理解概念。试着在聚会上演讲;使用github管理你所有的分析;在一些社区中活跃,比如Quora , DataTau , machine arningsubreddit。
四、向同行学习
你根本想象不到你会从同行身上学到多少东西,在数据工作中,团队合作非常重要。在聚会中找一些同伴。开源软件包;给那些写有趣的数据分析博客发消息,看有没有合作的可能;尝试参加Kaggle 比赛看看可不可以找到队友。
五、不断增加学习的难度
你完全熟悉这个项目的工作了? 你最后一次使用一个新概念是在一周前? 那么是时候做些更加困难的挑战了。如果你停止攀登,就会不进则退。如果你发现自己太舒适,这里有一些建议:
处理更大的数据集。
学习使用spark。
看看你能不能让你的算法更快。
你将如何将算法扩展到多个处理器? 你能做到吗?
理解更多的理论算法并使用。这会改变你的假设吗?
试图教一个新手去做你现在正在做同样的事情。