移动全栈技术之路有趣的文章@IT·互联网

程序员如何转型人工智能(机器学习)

2017-11-12  本文已影响415人  offbye西涛

本文是为了准备IAS2017互联网架构峰会而作,我将主持本次大会中《如何转型为一个人工智能工程师?》圆桌论坛的讨论,欢迎大家围观。

我是一个工作时间比较久的全栈工程师,做过web开发,前端,后端,移动端,HTML5的开发。2016年底开始学习机器学习,做深度学习大概不到半年。目前在研究手机端侧人工智能。在人工智能技术方面我肯定没有研究人工智能很多年的人有经验,但在怎样转型人工智能方面我还是有些体会的。

一个很小的卷积神经网络的结构图

学习人工智能为什么比学习其他的编程技术要困难

程序员学习人工智能的三个阶段

学习人工智能的三个阶段是 应用,优化,和定义问题,这个观点是我在某大牛的一篇文章中看到的,然后我针对程序员的学习特点做了一些优化。

应用应该是学习的第一步,就是想怎么样才能把人工智能应用到你的业务中,在这一步之前你需要对人工智能的现状有个基本清晰的认识,抛弃不实际的想法。具体的做法大概是针对自己的问题,收集数据,建立模型,可以用传统模型或深度学习模型。这一块程序员去做还是有一定优势的, 做到这一步需要对机器学习和深度学习有一定了解, 熟悉python, 能用tensorflow做一些模型训练。举个应用的例子,人工智能跨界农业实现“桃脸识别”,用人工智能实现桃子的智能筛选。

优化是学习的第二步,这一步就有些难度了,需要对卷积神经网络的原理和计算过程很清楚,需要对tensorflow,caffe,pyTorch等框架比较熟悉,需要对Inception,Resnet等经典模型的结构有一定研究,能够看懂论文和代码,并能够结合数据进行分析和实验,对模型结构,参数等不断进行优化,达到提高识别率等目的, 这个优化过程需要耗费大量的时间。

定义问题是学习的第三步,能够做到这一步应该是大神级的存在了,例如谷歌大脑,AlphaGO,百度大脑等顶级团队和学术界的科学家和资深工程师等。这一步的难点是如果用数学语言定义清楚问题,并能够用工程上可行的机器学习算法进行优化求解。做到这一步是很难的,能够做到这一步的人应该是很少的,大部分都是大公司某个方向的领军人物。

应该怎样转型人工智能

对于想转型人工智能的程序员, 我觉得首先要想清楚,自己想不想做这样一个不确定性的事情,自己的学习能力,数学和英语基础怎么样,不能看到行业热工资高就盲目转行。其实无论是前端,后端还是移动端,只要技术做到一定深度,收入都会不错,互联网行业的高薪还会持续很多年,做好技术可以有个不错的收入。

当然,学习和了解一些人工智能技术总是没有坏处的,可以先在自己感兴趣的领域尝试应用下人工智能技术,试试有没有这方面的兴趣和能力。毕竟IT行业变化很快,说不定几年后无论做什么开发都需要懂一些人工智能知识呢?

在人工智能这个热门的行业,早起的鸟有虫吃,但前提是鸟才行。

大会介绍

“架构迎接未来变化”这是本届互联网架构峰会(Internet Architecture Summit,简称IAS)的主题思想,我们将以全新的“互联网结构视角”来看待当前发生着的一切,其中包括互联网的技术性范式和组织性范式。伴随着年初NJSD全球软件大会(NJSD Global)的脚步以及本次APSEW亚太软件工程周的技术节,12月初的南京,我们又将迎来一个引领行业发展的技术交流高峰!

上一篇下一篇

猜你喜欢

热点阅读