鄙人在知乎上面看到一篇问答,转来供诸君探讨一二

问:

我现在是一名JAVA开发(5年),技术水平感觉还可以。做应用层开发的都明白,大多数只是业务开发,尽管如此,我也没有放弃对技术的追求,业务只是工作需要。

我想问的是未来JAVA开发是否会逐渐的被边缘化,人工智能统治整个计算机行业发展。反正走技术道路是没跑了,想听听大家的看法,愿闻其详。

答:




背景:某厂算法部门,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兄弟?

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信