您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
java开发,转大数据好还是机器学习?
数据,机器,人工智能java开发,转大数据好还是机器学习?
发布时间:2016-12-08加入收藏来源:互联网点击:
问题补充: 虽然喜欢数学,但是学机器学习主要用python,放弃java觉得可惜。
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
谢邀。个人建议转大数据。
我也是从事Java开发,对于题主的纠结感同身受,毕竟自己如果在Java上已经算是游刃有余的话,已经是付出过很多学习精力,学机器学习的话基本上是要和Java说再见,这无疑是一个非常可惜的选择。
而且转机器学习就不仅仅要深入Python,还要对数学算法方面有所造诣,这不是一蹴而就可以熟练掌握的,因此转人工智能风险也比较大,容易夭折自己的职业规划。
目前大数据方向依旧是需求量比较大前景非常好的工作方向,Java在大数据领域的应用非常广泛,光是Hadoop生态圈,就已经够可以完成很多大数据工作,而Hadoop又巧妙与Java密不可分。
最重要的是大数据方向并不会比还处于初级水平的机器学习工资低,薪资问题的话不用担心。
我是极客宇文氏,欢迎关注,感谢阅读。
回答于 2019-09-11 08:43:50
看你的规划是怎样的吧,这种事情我没办法说死。不过就你的职业经历来看,我觉得如果你从事了很久的Java开发,当然前提是你在一线从事了很久的Java开发,那么我建议你的首选是转大数据。
大数据目前用得最多的语言就是Java
Java语言安全性强、精密度高,在可维护性、高性能特性,以及在于整体生态方面,Java语言都具有比较大的优势,而且在大规模的异构计算机集群、处理高并发、以及复杂的业务逻辑方面,都是Java最擅长的。
除此之外,目前大数据行业最知名的Hadoop生态圈,以及领域你所熟悉的几乎所有大数据行业的词汇,比如Hive、Spark等等都是跟Java关系最为紧密,比如说大名鼎鼎的Hadoop本身就是Java编写的,即使是Spark关系紧密的Scala语言,其实也跟Java有着千丝万缕的联系。
因此Java工程师转大数据工程师,有着天然的优势,当然目前在数据挖掘领域,Python也占据着很大的统治地位。不过在大数据领域,基本上大多数企业都是要求Java背景的公司最多,很多岗位都是直接瞄准Java工程师进行培养。
大数据的岗位市场需求非常大
现在的互联网,哪家企业不讨论大数据?
阿里巴巴旗下的天猫、淘宝有购物大数据,支付宝有支付大数据,菜鸟网络有物流大数据,百度有搜索大数据、人工智能大数据,腾讯有社交大数据大数据、游戏大数据、同样也有支付大数据。可以说每个企业都在布局大数据,尤其是在大公司。
数学基础好,如果喜欢机器学习,可以一边工作一边学
活到老、学到老,这是一个铁律。
题主也提到了自己喜欢数学,这对于学系机器学习来说是一个优势,再加上你有很好的Java学习背景,相信语言的壁垒不是很大,想要学习一些Python的知识其实不是很难,相信真正做过开发的都知道,语言的壁垒不大的。
不过机器学习可不是那么简单的,对于数学什么的要求确实很高,而且这个行业比大数据还要复杂,而且目前人工智能的壁垒还是蛮高的,很多领域都还是在实验室阶段,更多的还是比较尖端的科研,因此学习代价是不小的。机器学习、深度学习目前技术难度还是挺高的,对于算法要求很高。
不过大数据和人工智能联系非常紧密,人工智能肯定离不开大数据。不过就我的看法而言,人工智能更加偏向于算法,而大数据更加接近编程,更加靠近业务架构。
回答于 2019-09-11 08:43:50
如果楼主不想放弃Java,那么我推荐去大数据。
如果从未来前景上看,我推荐去机器学习。
大数据
大数据的大火要更早一些,近些年,热度已经逐渐被机器学习夺了去。
大数据分析能够带来很多神奇的事情,比如谷歌能够比医院更早的预测到流感即将袭来,因为大家在去医院之前,总是习惯先去Google上搜感冒的一些症状,因此当某地的搜索结果中,感冒相关的query飙升的时候,基本可以确定,流感即将袭来了。
大数据工程师通常是继续以Java开发为主,但是只会Java和Hadoop也只是基础,在真正的大数据开发工程师眼里,可能连面试的门槛都过不去。
如果真的想做大数据,还要研究分布式计算的模型,如何写mapreduce,以及如何进行作业优化,如何解决数据处理过程中遇到的问题。此外最好还要学会Scala,这是在写spark时常用的语言。
因此,转大数据,也需要Java开发的你学习很多新的知识,并不是有了Java经验就能直接上手大数据开发的。
机器学习
相对来说,机器学习与Java的关系更疏远了一些。你首先需要学习各种先进的机器学习算法,比如支持向量机,神经网络,决策树,逻辑回归等等,这些都是要阅读很多文献,并且对数学,概率论基础有很高的要求。题主说自己对数学感兴趣,这是一个还不错的开始。在学会了上述算法之后,你需要用编程语言把这些算法实践出来,比如你需要通过学习历史数据,从而推测出未来什么时间某种产品会有更多的需求,从而推荐厂家提前做好库存准备。机器学习对编程语言的要求并没有大数据高,目前常用的就是Python,对于Java开发者来说,学习的成本也是很低的。
最后,由于目前机器学习概念的大火,机器学习工程师可以说是供不应求,如果题主想要更好的发展,不妨考虑这个方向。
以上是我的浅见,欢迎各位在下方评论区给我留言点赞。
我是苏苏思量,来自BAT的java开发工程师,每日分享科技类见闻,欢迎关注我,与我共同进步。
上一篇:今天是大年三十,凌晨十二点刚过,我和老婆两部手机都是第三次抽发字卡,你们抽到了吗?
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |