注册 登录

我现在是一名JAVA开发,有必要转型人工智能吗?

解宗 2020-02-27 00:02:40 202 5 编程
我现在是一名JAVA开发,有必要转型人工智能吗?
5 个回答
29天前

JAVA可以直接做人工智能项目啊。

再牛逼的人工智能。

也需要,大数据平台的支持啊。

hadoop,spark搞熟了没?

集群出了问题,能不能快速排查。

网路通信,或者机器出了问题。

数据能不能补回来。

补回来的数据,

怎么重新整理到数据仓库中。

整个数据分析中,人工智能,只是最后一步。

前期大量的工作,还是需要JAVA来做的。

你不能只看到最后一步,出了成果。

就否定前面的工程师,所付出的努力啊。

JAVA还是很有意义的。

30天前
人工智能属于上层建筑,实际上大部分做机器学习算法的不能做到工程落地。特征可以由数据仓库的人,采用spark sql方式产生。数据特征准备好了后,才让他们应用机器学习算法训练模型。如果模型结果好,接下来就需要java程序员把sql翻译成代码,在线计算特征(搬砖)。在线模型预测工程也是需要工程师来做的。 猜测很多公司多会有算法工程部门来配合模型开发。这里面就有大把java工程师的工作,比如特征工程,在线实时计算,在线推荐,数据仓库,甚至底层数据平台。 转型路上很艰苦,相当于你拿劣势,甚至零经验比拼别人的优势。我这3年尝尽痛苦。读过storm,spark源码,读过redis,rocksdb源码。做过N个实时流计算工程,特征工程,数据仓库,数据挖掘,NLP,算法建模(实际只用过xgboost,kmean),尝试过自定义page rank,社区发现算法,使用过simhash,word2vec算法。 更多的痛苦来自脏数据,甚至快上线了发现数据压根就是错的。工作量大,加班多(尽管没有产品经理),产出漫长,特别漫长。因为很多想法不去尝试无法知道结果如何。比如说,我认为经常逛夜店的贷款的更容易逾期,然而实际并不是。工作难道也大,算法的目标是提升效果,却不知道怎么做,尝试很多方法一点效果都没有。经常怀疑人生,我为什么选择自虐。 不要轻易转型,除非你真的准备好了。
29天前

先交代一下背景,我本科是计算机专业,主要语言cpp,研究生地质,工作之后主要用Python和Java,当然编程语言这些都是浮云只是为了说明问题,工作内容是某厂业务转算法

因为题主5年Java经验,而且技术自评不错。我是晚辈,只有1年Java经验,分布式、多线程、高并发、Hadoop……这些我都接触过,所以默认题主技术水平比我高,这些肯定也都接触过。虽然我从业经验尚浅,但是身边也是各个年龄层次的程序员很多。所以可以给题主一些思路。

怎么说呢,我刚入职不久的时候,leader就告诉过我,职级达到p7(我不是a厂的,因为a厂的评级市场上都比较认,所以为了交流方便就放它了,大概是其他几个厂对应几级大家应该都有数哈)以上,就不靠技术了,严谨来说应该是不仅仅靠技术。年少无知的我接着问 那靠什么,leader说靠影响力。OK,至于这个影响力是什么,题主自己悟吧。

2.只做业务,确实有弊端。大家都知道,除非一个公司处于上升期,用户量一直在增长,业务需求一直在变更,这时候可以不断的磨炼开发技术。但是如果不是在互联网公司,或者公司已经进入平稳期,业务需求变动不大,只是维护原有系统。其实技术很难有大的提升,我不知道别人,反正我一直觉得工业界,技术就是为了实现功能。自己看再多书,不如突然一个用户量直线上升,搭个系统出来,不断迭代优化学的东西多,闭门造车不靠谱。其实我觉得中间件也是个不错的选择,大厂都喜欢搞自己的中间件让各个业务线接入,这个你应该知道吧,thrift、zookeeper、Hadoop……这些,这个方向主要是比较平稳,不直接面向用户,而且一直专研一个领域,也比较容易成为专家,我觉得也是一个可以考虑的方向

29天前

背景:某厂算法部门,10年算法经验的算法小小小工程师/(ㄒoㄒ)/~~。算法工程师有时候可能比普通的应用开发工程师要苦,要脏,要累很多。转型前慎重(⊙o⊙)哦!

首先说明一点就是:很火不代表真的很赚钱,很火不代表它很轻松,很火不代表真的适合你!

在回答你的问题之前,我们可以讲个故事:

上个月接到一个新的任务(做一个底层推荐算法),对于我们现在有的用户量数据(上亿),已经不能满足于只调用现成的MF矩阵分解方法方法,有必要编写适合自己的算法,于是我们这群算法工程师闪亮登场。慈慈慈,看paper,找到好的方法,没找到源码没事自己来实现,一开始使用tensorflow,然后再使用矩阵分解,不断epoch最后搞定。OK!乐开花儿!

对你没有看过,你妹的我们居然用了2周时间搞定一个推荐算法模型,很开心哦,马上用真实数据去测一下效果(先用日活500万用户数据试试)。矮油尼玛!!!算法崩掉了内存不足,艹,FFFF佛慈悲。冷静,内存不足肯定是开辟空间太大了,一个500万用户和10万物品的排名矩阵太大,那我就改用索引方式进行稀疏表存储!这还难得了我们这群吃猪脑长大的算法工程师么!啪啪啪的搞了1周,效果明显,能够正常运行了。于是经过漫长的等待!。。。。。

等待真的很漫长,怀孕的孩子都要出来了。500万行的矩阵操作,就算内存塞得下,迭代计算次数还是很慢啊,计算一次得一天,怎么做实时推荐!每天的离线推荐都难!好了,后面的事情就是无尽的工程问题,多线程,多线程不行,那就来并发,并发不行就来多服务器分布式,然后也来个GPU什么鬼的一起上!

这么一来,你应该知道只是转人工智能不能只懂算法,还要懂系统,懂数学,懂分布式,懂架构,不然怎么做算法构架。这一过程,得多长?为什么不把自己JAVA学好呢?JAVA的架构你掌握很熟了,设计千亿级的调度你搞得定么?快速拉取TB级别的数据怎么设计框架?兄弟别着急转型,想想你在自己岗位还有什么做得不够好,不够精的事情吧。

问主说:我想问的是未来JAVA开发是否会逐渐的被边缘化,人工智能统治整个计算机行业发展。

这。。。兄弟脑子短路还是外行的?JAVA开发会变边缘化那么原有的系统用什么维护?新的分布式系统用什么开发?人工智能自动开发吗?别傻了,你又不是没有打过代码玩过游戏,都是if else组成的。理智点行不行?清醒点行不行?OK不OK兄弟?

30天前

给亲推荐一个童鞋曾经问我们的问题:25岁Java工程师如何转型学习AI?

他的问题是这样的:“我是一名25岁的Java开发工程师。本科学习的专业是信息与计算科学(数学专业),因为对计算机方面感兴趣,之后培训学习了Java,所以现在从事Java开发。目前就是在电商公司开发一些系统。

我对人工智能非常感兴趣,对数学的兴趣也从未减弱。人工智能设计的学习材料很多,像我这样的状况,如果想要转型以后从事这方面的工作,具体应该学习些什么?”

阿里技术童鞋“以均”回信:

首先,我想聊聊为何深度学习最近这么火。

外行所见的是2016年AlphaGo 4比1 战胜李世石,掀起了一波AI热潮,DeepMind背后所用的深度学习一时间火得不得了。其实在内行看来,AlphaGo对阵李世石的结果是毫无悬念的,真正的突破在几年前就发生了。

2012年,Gefferey Hinton的学生Alex使用一个特别构造的深度神经网络(后来就叫AlexNet),在图像识别的专业比赛ImageNet中,得到了远超之前最好成绩的结果,那个时候,整个人工智能领域就已经明白,深度学习的革命已经到来了。

果然,之后深度学习在包括语音识别,图像理解,机器翻译等传统的人工智能领域都超越了原先各自领域效果最好的方法。从2015年起,工业界内一些嗅觉灵敏的人士也意识到,一场革命或已到来。

关于基本概念的学习

机器学习与深度学习

深度学习是机器学习中的一种技术,机器学习包含深度学习。机器学习还包含其他非深度学习的技术,比如支持向量机,决策树,随机森林,以及关于“学习”的一些基本理论,比如,同样都能描述已知数据的两个不同模型,参数更少的那个对未知数据的预测能力更好(奥卡姆剃刀原理)。

深度学习是一类特定的机器学习技术,主要是深度神经网络学习,在之前经典的多层神经网络的基础上,将网络的层数加深,并辅以更复杂的结构,在有极大量的数据用于训练的情况下,在很多领域得到了比其他方法更好的结果。

机器学习与大数据

大数据:机器学习的基础,但在多数语境下,更侧重于统计学习方法。机器学习,深度学习,数据挖掘,大数据的关系可以用下图表示

系统学习资料

以下是我所推荐的学习资料:

首先是视频课程。

Yaser Abu-Mostafa

加州理工的Yaser Abu-Mostafa教授出品的机器学习网络课程,非常系统地讲解了机器学习背后的原理,以及主要的技术。讲解非常深入浅出,让你不光理解机器学习有哪些技术,还能理解它们背后的思想,为什么要提出这项技术,机器学习的一些通用性问题的解决方法(比如用正则化方法解决过拟合)。强烈推荐。

课程名称:Machine Learning Course - CS 156

视频地址:https://www.youtube.com/watch?v=mbyG85GZ0PI&list=PLD63A284B7615313A

Geoffrey Hinton

深度学习最重要的研究者。也是他和另外几个人(Yann LeCun,Yoshua Bengio等)在神经网络被人工智能业界打入冷宫,进入低谷期的时候仍然不放弃研究,最终取得突破,才有了现在的深度学习热潮。

他在Coursera上有一门深度学习的课程,其权威性自不待言,但是课程制作的质量以及易于理解的程度,实际上比不上前面Yaser Mostafa的。当然,因为其实力,课程的干货还是非常多的。

课程名称:Neural Networks for Machine Learning课程地址:https://www.coursera.org/learn/neural-networks

UdaCity

Google工程师出品的一个偏重实践的深度学习课程。讲解非常简明扼要,并且注重和实践相结合。推荐。

课程名称:深度学习课程地址:https://cn.udacity.com/course/deep-learning--ud730

小象学院

国内小象学院出品的一个深度学习课程,理论与实践并重。由纽约城市大学的博士李伟主讲,优点是包含了很多业内最新的主流技术的讲解。值得一看。课程名称:深度学习(第四期)课程地址: http://www.chinahadoop.cn/classroom/45/courses

阿里云大学

出了很多免费的机器学习课程,理论和实践相结合。

#阿里云大学#免费精华课程集锦:

1.《大数据之R语言速成与实战》免费学http://click.aliyun.com/m/1000007109/

2.《Python基础快速入门实战教程》戳此学习http://click.aliyun.com/m/1000007110/

3.《深度学习与自然语言处理》牛津出品http://click.aliyun.com/m/1000007114

4.《机器学习快速上手与实战》机器学习专家主讲http://click.aliyun.com/m/1000007115/

推荐阅读书目

《Deep Learning the Book》 —— 这本书是前面提到的大牛Yoshua Begio的博士生Goodfellow写的。Goodfellow是生成式对抗网络的提出者,生成式对抗网络被Yann LeCun认为是近年最激动人心的深度学习技术想法。这本书比较系统,专业,偏重理论,兼顾实践,是系统学习深度学习不可多得的好教材。英文版:http://deeplearningthebook.com目前Github上已经有人翻译出了中文版:https://github.com/exacity/deeplearningbook-chinese

推荐学习路径

不同的人有不同的需求,有些人希望掌握好理论基础,然后进行实践,有些人希望能够快速上手,马上做点东西,有些人希望理论与实践兼顾。下面推荐几条学习路径,照顾到不同的需求。大家可以根据自己的特点进行选择。

Hard wayYaser -> Geoffrey Hinton -> UdaCity -> Good Fellow特点:理论扎实,步步为营。最完整的学习路径,也是最“难”的。推荐指数: 4星

Good wayYaser -> UdaCity -> 小象学院 -> Good Fellow特点:理论扎实,紧跟潮流,兼顾实战,最后系统梳理。比较平衡的学习路径。推荐指数: 5星

"Fast" wayUdaCity -> Good Fellow特点:快速上手,然后完善理论。推荐指数: 4星

"码农" wayUdaCity特点:快速上手,注重实践。推荐指数: 3星

---end---

最后,再给大家推荐下阿里云栖社区还有人工智能版块,每天都有新内容:http://click.aliyun.com/m/1000007116/

相关问题

最新问题

最新文章