历史上AI火过两次,但是最终都已销声匿迹作为结束。这次AI大火的原因:AlphaGo 4比1战胜李世石,相对于一些外行人的恐慌和恐惧,其实很多业内人员在这场世纪之战结束后,都为人类点上了一个大大的赞。因为对于了解AlphaGo背后技术的那些人来说,人类有如此的计算能力和宏观把握能力已经很了不起了。但是,就在前不久AlphaGo2.0在乌镇完胜了柯洁。事实还是证明了人类在某些方面还是有一定的缺陷,毕竟万事万物都有它的缺陷,残缺才是自然界真正的魅力。这次AI浪潮激发了国内很多程序猿的兴趣,很多人也在开始了解什么是AI、什么是深度学习。

由于资源的限制以及国内一些错误声音的存在,很多人都认为AI对于个人学习来说是遥不可及的。我个人认为,现在是接触AI的最佳时刻,无论是从商业运用还是技术深造。因为一些技术已经相当成熟,并且运用到了实践中。但是,类似于上个时代的“操作系统”级别的AI技术还未出现,一旦出现势必会造成一场热潮。与其那时当学生,不如此时当学生。但是前提是,必须要对AI有一个正确的认识,否则只能在AI的世界里乱撞。

首先来了解一下AI到底需要哪些条件:数据是基础,NO data,NO AI,汽车没油就是一堆废铁,不管它的发动机多么强劲。算法是引擎,尤其是深度学习算法,算的上是整个AI时代的引擎。有了深度学习算法,数据才能发挥更大的价值。计算能力是标配,没有计算能力,就没有办法计算当今世界如此大的数据。

接下来我们就来说说我们转型AI需要知道那些事情:

一:掌握大数据相关知识。(数据思维很重要!)

数据对于AI的重要性可以排到首位,正确的理解应该是没有数据就没有AI。其中大数据一个核心的思想——相关性[1],我个人认为也是AI的核心思想。举个例子:假如一个用户在买了这一件商品后,有买了另一件商品。可能这个时候还没有办法确定这两件商品有什么关系,但是如果十个人、二十个人、甚至上千人都有这样的购买行为呢?这个时候,我们就需要考虑这两件商品之间是否存在相关性,随着数据的不断积累,这两个商品之间的相关性指数越来越逼近于1。这个时候,系统其实就有点接近AI或者MI(机器智能)。因为在用户购买的过程中系统能更加准确的为用户推荐,随着数据的不断积累,以及系统模型的不断优化,这个推荐结果越来越正确。直到最后,用户购买这个商品,接着就会购买系统推荐的另一个商品,其实就这是AI。

AI让机器或者说是系统比人本身更了解自己需要什么东西,当然这种AI的出现,会让用户在购买行为这个动作产生的前后过程中,都不用去思考到底需要买什么,为什么买这个东西,当然也不会忘记买什么东西。

大数据相关性的强度其实在一定意义上也决定了AI的智慧,强度越大越智慧。用另外一个观点就是:数据的聚合度决定了AI的智慧度。

二:衔接AI时代的编程语言:Python的掌握。(算法)

这对于以前Python的程序猿来说,可能是一个非常不错的消息。为什么我会认为Python会成为衔接AI时代的编程序言呢?第一:说实话,在接触Python之前,我也接触过C/C++(入门级别)、java(门外级别),现在接触Python纯碎是因为它强大的数据处理能力还有获取数据的能力。当然R和Hadoop在处理数据上也非常强大,但是Python有很多可调用的深度学习扩展类库。而且国外绝大多数关于深度学习的框架也都支持Python,很多开源的深度学习案例也大多数Python写的。因为这些原因,我判断Python会在这两年很火。

当然,其他的语言也都能够进行深度学习的研究,Python只是相对好那么一些。Python在深度学习领域的相关书籍也很多,如果想了解,微博可以关注@爱可可-爱生活老师(良心推荐,绝非广告),或者直接搜索查找相关书籍。

三:云计算平台的选择。(计算能力)

云计算这几年发展势头非常强劲,国内阿里云独树一帜,其业务也正在进行全球化布局。第一,当然有第一的优势,技术和硬件配置当然没得说。我个人认为,云计算平台的选择在AI转型过程中将起到事半功倍的效果,好的平台不仅仅能够提供云计算该提供的服务,在相关技术方面也会提供一些不错的建议。而且,未来随着AI相关底层技术的完善和开放,作为开发者,如果让我们的应用跟云平台进行有效的连通,将给开放者带来很大的便利。

四:没必要非要去学特别底层的东西

这句话是说给大多数程序猿的,特别一点的,如果数学能力非常强并且实力雄厚的程序猿可以去接触底层的技术。现在关于AI特别底层的技术就像是上个时代,我们常用的操作系统和编程语言一样。只不过,现在AI时代的“操作系统”和“编程语言”,现在还没有真正的成熟。现在的程序猿大多是不知道操作系统具体怎么写的,编程语言具体怎么写的。但是,这丝毫不会影响我们去使用它。我们只需要了解接口的功能、包的功能等等,其他的具体这个功能怎么实现的,交给牛人去管,我们只管拿来用就好了。

现在很多互联网大公司几乎都在搞AI,其实,他们是在搞底层的技术。如果底层的技术成熟之后,它将成为类似于上个时代的Android、IOS、Windows、java等类型的产品。而这些产品不仅仅改变了世界而且还将为公司带来了巨大的收益。正在了解AI的程序猿应该知道,最近国内几家巨头都在打造AI的开发者平台,有的甚至开放了自己的算法,供大家参考。所以说,未来大多数的AI从业者还是会以AI平台开发者的身份进入AI领域。对于AI特别底层的技术,平台会给开发者提供接口,开发者可以使用相关的功能。科大讯飞董事长刘庆峰曾在世界人工智能大会表示,未来5到10年之内,人工智能将像水电一样成为社会生活的基础设施,与各个行业结合起来。

我个人认为特别底层的技术有:计算机视觉,自然语言处理,语音识别。其中国内有些公司在相关领域做的已经很不错了,并且已经开放了接口。

五:AI已经成功应用到了这些实际生活中。

今天的人工智能是“有用”的人工智能[1],李开复博士在他的新书《人工智能》这本书中说到。和前两次AI热潮相比,这一次AI,在多个相关领域表现出可以被普通人认可的性能和效率,开始在产业界发挥出它应有的价值。技术最终还是要应用到生活当中,如果想要学习AI就必须要了解现在商业化AI已经走到了哪一步,那些技术已经成功应用到我们的生活中。国内近期在AI领域动作频繁的除了百度就是阿里了,当然在公司战略上百度的ALL-in AI在一定程度上也算是推动了AI的发展。接下来我们就介绍几个AI的应用:

无人超市:阿里为了推动新零售的落地,设计的一整套无人店的解决方案。无人超市核心技术:计算机视觉,机器学习,IOT支付技术。当然后端还有非常强大的电商系统支撑,这也证明了以前互联网的业务是具有可延展性的。有些业务配置上AI的相关技术,可以更好的满足消费者的需求,同时也将会推动商业的进步。

无人驾驶汽车:国外做的最好的是谷歌,国内做的最好的是百度。无人驾驶汽车不仅仅只是运用了AI技术,准确的来说,无人驾驶技术就是集众多技术于一身的技术,其中最重要的AI技术就是运用的计算机视觉进行判定。

六:应用级别的AI是未来的主流。

现阶段AI正在迅速发展,但是AI并没有得到广泛的应用。一是因为相关政策没有落实;二是,AI时代的“程序语言”和“操作系统”还没有形成;三是,AI应用级别的技术需要来自对生活的细心观察。

前两个,对于我们大部分程序猿来说,有些困难或者是望尘莫及。但是第三个,应用级别的技术来自对生活的观察是我们每天都可以做到的事情。AI时代对于程序猿来说,是一个不可多得的机会。在互联网时代,我们程序猿经常听到一句话“我有一个好点子,就缺一个写代码的”,这句话在互联网刚刚兴起的时候,创造了很大的价值,但是随着互联网的发展,我们在听到这句话的时候,就觉得这句话肯定是出自一个骗子口中。但是AI时代,这句话又会重新发挥它的价值。

不要以为大公司可以只手遮天,AI时代不只是大公司的游戏,换句话说,AI时代每个人都有机会。对于程序猿来说,机会可能比一般人要大那么一丢丢,因为“近水楼台先得月”。

七:万事开头难,抓住重点才是王道!

程序猿在转型做AI的时候,一开始肯定会遇到很多困难。AI爆发的前提是数据和深度学习算法以及计算能力的提升。计算能力选择阿里云这样的云计算平台就可以得到解决,数据意识必须培养,深度学习算法必须了解。如果有能力深究当然最好,没有能力也不要慌张,因为AI时代,大多数的开发者不需要知道底层技术是怎样具体实现的,有一个大致的概念即可。正如今天,你在导入包或者库的时候,你用的时候还需要去看看它是怎么样实现的吗?这其中的道理是一样的,但是数据意识必须要培养,这些数据是用来干什么的,分析这些数据会得到哪些结论。

我个人估计未来互联网公司会因为AI的出现,会成为比咨询公司更专业的咨询公司。而且,每个程序猿配上一些行业知识后都可以成为资深的咨询专家。

总结:

程序猿作为互联网时代的产物,不得不说程序猿这类群体已经成功的改变了这个世界。改变了我们日常的生活习惯,由于这些技术的出现,我们的日常生活正在变得越来越好。但,越来越好是没有尽头的。阿里巴巴集团技术委员会主席王坚曾说:人工智能的进步来源于互联网基础设施的不断进步,离开互联网孤立的来看人工智能,是没有任何意义的。AI的出现,必定会重新改变我们现在这个世界,作为互联网基础设施的搭建者——程序猿,再次扛起技术改变世界这杆大旗,理所当然。

【转载】程序猿转型AI必须知道的几件事!的更多相关文章

  1. 一个骑行者的独白,很不错,我就转载了。--原名是--<<关于认怂这件事>>

    一个骑行者的独白,很不错,我就转载了.--原名是--<<关于认怂这件事>>   PS:我不知道这些是对是错,但都不曾后悔,或许哪天我在生活面前也怂了,然后跑回大城市乖乖的当个小 ...

  2. 微信小程序:开发之前要知道的三件事

    前言 微信之父张小龙在年初的那次演讲中曾表示:"我自己是很多年的程序员,我觉得我们应该为开发的团队做一些事情".几个月后,微信正式推出微信应用号(即微信小程序),在互联网中掀起了又 ...

  3. java程序员最不愿意看到的十件事

     0.遍历结果集并构造对象如果你是个时髦的开发者而不是专业人员,显然你从某篇博客中读过有开发者遇到Hibernate的“性能问题”,因而认为ORM都不好,觉得手动编码“明显更好”.喜欢的话你当然可以用 ...

  4. [转载]做一个 App 前需要考虑的几件事

    本文转自http://limboy.me/tech/2016/07/06/starting-an-app.html ========================================= ...

  5. 从程序猿到SAP产品经理,我是如何转型的?

    文章作者:Jason Xia(夏建军) Jerry: 今天的文章来自Jason Xia, 我的老同事,和我一样从2007年进入SAP成都研究院工作至今.这篇文章讲述了Jason是如何从一名SAP资深开 ...

  6. 程序猿的还有一出路:大数据project师

    非常多年前我非常郁闷地写了一篇博客<程序猿的出路在哪里?>,之所以郁闷.我记得是看了中国男足的比赛,不由自主对照自已苦逼的程序猿生涯,以前对中国软件的感情有如对中国男足,绝望到没有不论什么 ...

  7. 程序猿必备软件转载自 www.uhdesk.com

    XMLSpy 2012 企业版中文破解版 软件描写叙述: XMLSpy是XML(标准通用标记语言的子集)编辑器,支持WYSWYG.支持Unicode.多字符集,支持Well-formed和Valida ...

  8. 连载《一个程序猿的生命周期》-28、被忽悠来的单身HR(女同志)

    一个程序猿的生命周期 微信平台 口   号:职业交流,职业规划:面对现实,用心去交流.感悟. 公众号:iterlifetime 百木-ITer职业交流奋斗 群:141588103    微   博:h ...

  9. 蒙特卡洛树搜索算法(UCT): 一个程序猿进化的故事

    前言: 本文是根据的文章Introduction to Monte Carlo Tree Search by Jeff Bradberry所写. Jeff Bradberry还提供了一整套的例子,用p ...

随机推荐

  1. 通俗易懂之SpringMVC&Struts2前端拦截器详解

    直接进入主题吧!一,配置Struts2的拦截器分两步走1配置对应的拦截器类:2在配置文件Struts.xml中进行配置拦截器同时在Strust2中配置拦截器类有三种方法1实现Interceptor接口 ...

  2. Labview学习笔记(二)

    一.编程基础 LABVIEW程序成为虚拟.仪器程序,简称VI,一个最基本的VI包括三个部分:前面板.程序框图和图标/连接端口. 1.前面板 在前面板窗口中,可以添加输入控件和显示控件,同时,可以用快捷 ...

  3. Oracle开发常用函数 max 最大数 自动加 1

    max 最大数 自动加 1 create or replace function fun_getmaxlot( vend in varchar2 , domain IN VARCHAR2, tag i ...

  4. 【数据结构】4.1图的创建及DFS深度遍历(不完善)

    声明:本代码仅供参考,根本就不是正确代码(至少在我看来,有很多BUG和不完美的地方) 图的存储方式选择为邻接表,并且headNode只是来存储一个链表的Node首地址额 总之这个代码写的很垃圾呀很垃圾 ...

  5. jsp页面获取服务器Ip地址等数据

    废话不多说,直接上代码 <%@ page language="java" import="java.util.*" pageEncoding=" ...

  6. C++ 类型转化(运算符重载函数)和基本运算符重载(自增自减)

    类型转化(运算符重载函数) 用转换构造函数可以将一个指定类型的数据转换为类的对象.但是不能反过来将一个类的对象转换为一个其他类型的数据(例如将一个Complex类对象转换成double类型数据).在C ...

  7. 12.IDEA中自动导资源包

    在idea工程中,当你赋值一个类文件的部分代码,粘贴到另一个文件中时,需要导入原来文件中的包资源, 自动设置如下

  8. php unlink()函数使用

    最近在写个网站,需要上传图片,如果修改图片,就图片就没有用了,会占用服务器的硬盘资源,所以想到用unlink函数删除旧照片. 问题 : unlink函数只能删除 相对于函数执行文件的相对目录  或  ...

  9. Spring Boot-springbootHelloword(一)

    什么是springboot sprng家族一个全新的框架  简化我们应用程序的创建和开发的过程,使用默认配置简化了我们以前传统的配置 springboot的特性     能够快速创建spring程序 ...

  10. MySQL中index和key的关系

    KEY is normally a synonym for INDEX. The key attribute PRIMARY KEY can also be specified as just KEY ...