大数据的热门使得非常多人都想往这个方向发展,做一些像数据挖掘,数据分析之类的工作。可是该从何開始呢?要如何才干高速学到一些实用的知识,技能呢?我认为有三个切入点,按照个人特点能够自行选择顺序切入。
1机器学习/数据挖掘
数据挖掘主要依赖于大部分机器学习算法,近些年因为深度学习算法的开发以及无人驾驶汽车等应用的实习使得机器学习变得热门,可是机器学习是个非常深的学科,专门讲这门课程的学校也不多,对于硕士生,假设学过最优化等,学起来比較easy,但本科生要学好,就要非常扎实的概率论与数理统计的基础。之前我看了非常多这发面的书,认为非常痛苦,但我越来越认为,这个东西有那么重要么?
我觉得,假设不是博士,不是必需把机器学习/深度学习学的非常深。就像算法是非常重要,但程序猿不是必需都像ACM队员那样练习算法。我们学习机器学习是为了使用他,并且主要的那几个算法已经开发的差点儿相同了,我们最须要掌握的就是如何使用它们,并且就那么几个算法,仅仅有每一个都用过几次就掌握了,所以我非常推荐边学边应用到实际,依据自己的兴趣,找点数据,看看能不能挖掘出什么实用的信息,这样也有成就感。这里我推荐一本书:《机器学习:实用案例解析》。同一时候,建议学习一门新的语言:R语言。假设不想学,那么用C,python也都是能够的。(超大规模数据是不能用R的)
最后,我认为这部分并不一定先開始学,也不用每个算法都掌握十分熟悉,先熟练掌握一到两个。
2Hadoop实战
hadoop基本是大数据的代名词了,由于他提供了一个平台,使得我们能够去处理超大的数据,至于怎么处理,处理后能得到什么,它无论。hadoop尽管仅仅是个软件,可是有非常复杂的原理,我们要知道他是如何把大数据分不到好几个电脑上,知道MapReduce的原理。然后,就是如何运作了。强烈建议大家自己安装好hadoop(要配置集群,自己剪虚拟机吧),然后在上面编点小程序练手。
Hadoop另一个特点就是他有许多的附加服务,每一个都有各自的功能,很复杂,可是比如Hive,HBase等是很重要的,也须要知道他们的工作原理,及用法。因为这部分大多是实战,学起来也不那么枯燥,所以我认为这部分能够多用的点时间,把原理和方法都弄熟练,同一时候还要熟悉Linux环境,语言当然是JAVA。
3数据库
大数据毕竟也是数据,是离不开数据库的,非常多人没有有数据库的基础,那么这方面也是不可缺少的,各种数据库的特点都要有所了解,SQL的语句也要能熟练使用,即便大数据不热门了,数据库技术也会非常重要的。
我认为把上面3点全都做到的话,那么你肯定是一个全面的大数据人才,随便就能找个好工作了。可是我认为数据挖掘这个东西,方法技能是一方面,另一方面是意识层次的,也就是你对行业、商业的嗅觉有多大,你挖掘出来信息后能不能再经过自己的思考,变成对公司甚至人类有直接优点的观点。所以建议大家平时多关注互联网及其它行业的发展趋势,比較全面型的人才才是真的人才,大数据人才也不是一个普通程序猿就能随便当的。
准备以后就写一些大数据方面的博文,自己学习的同一时候与大家分享知识是非常快乐的。