关于人工智能、编程以及机器学习

人工智能会让程序员失业吗?

当人工智能逐渐强大,大家开始担心:人工智能下一步又要在哪个领域干掉人类?

AI会让人类程序员失业吗?对此问题持肯定态度的人并不在少数。

比如:美国橡树岭国家实验室在去年底发布的论文《人机混编的代码意味着什么?人类 2040 年还需要亲自编写代码吗? 》中表示:到了2040年,大多数的程序代码将由机器生成。

2040年距今天还有些距离,至少当下,AI没有让程序员失业,而是让程序员更贵了。

前几天刷屏的《AI 时代,为什么程序员这么贵》一文,csdn的蒋总认为:AI的发展,不仅不会使程序员消亡,反而使得各行各业比现在更加需要程序员——程序员的求职范围不再局限于软件或互联网行业,社会总需求激增,人才自然也就更贵了。

笔者对蒋总的观点蛮赞同的,当前的势头也确实如此。

不过,再过5-10年,程序员还会如今日行情吗?

编程日益成为通用技能

关于人工智能、编程以及机器学习

个人认为:在不是很久远的将来(也许三五年,也许十来年之后),编程将从职业技能逐步蜕变为职场通用技能。

我们可以类比“识字”这个技能来看——

百十年前,大多数老百姓都不认识母语文字。当时,识字无疑一种职业技能。具备了这一技能,就可以获得一个比大多数人工作环境更优越,报酬也更高的职位。

但到了今天,识字率已经逼近100%,仅仅“认得字”,还是只能从事低端工作。

未来,编程将成为人人都会做的事情,职场中的一员,除了要具备听说读写本国语言的能力外,还得能够读程序、写代码——即使一时无法覆盖全员,至少是朝着这个方向发展。

而职业写代码的人,将越来越少。

类似的技能还有:驾驶——汽车工业发展起来后,职业司机会越来越少,驾驶成为了当代社会人们的一种通用技能。

算法——编程的核心

关于人工智能、编程以及机器学习

从语言特征(词汇、语法等)的角度来讲,最复杂的编程语言远比最简单的自然语言简单得多。

我们学习各种自然语言是为了日常生活与人交流、收取信息,学习编程语言又是为什么呢?总不是为了说“您吃了吗?”或者“打点折”吧。

我们用编程语言描述事物、概念,以及它们之间的相互关系和运行方式,将大千世界转化为计算机能够理解的电信号,驱动硅晶金属构造的部件去完成任务!

编程的核心在于通过各种各样的算法去实现具体的业务逻辑,把繁杂的过程抽象化、可计算化。从纯粹软件的角度讲,甚至可以说:算法 + 数据 == 计算机程序。

受过计算机科班教育的人一定上过一门课:数据结构,这门课是计算机科学的基础,它的核心内容就是各式各样的算法。

最简单的如排序、查找;之上是进阶部分,例如动态规划、分治、回溯等策略,都是几代计算机科学家从解决现实问题中提取出的套路——这些才是编程的核心。

从基础算法到机器学习

关于人工智能、编程以及机器学习

今天的程序员学习编程 ——

  •   首先,要了解编程语言的语法特征;
  •   并且,掌握编译或解释的过程,及编译器/解释器性能,调试方法、工具等;
  •   然后,配合算法,实现业务逻辑——就可以做很多(几乎是任意的)事情了。

但把目光放长远些,只会这些,还是远远不够。

虽然目前基础算法和机器学习还是泾渭分明的两部分内容,但笔者认为,未来这两部分终将合流。

随着其落地点和应用越来越多,机器学习必将融入到常规编程之中。

反过来,能够让越来越多的人在编程中运用机器学习的成果,也是计算机技术发展的结果。

虽然人类对于用数值表达事物,用运算推演事物联系的研究已经持续了几千年。但在没有计算机的年代,稍许复杂的数值计算就需要数学家、统计学家的介入,普通人难以胜任。

后来,有了Excel之类的工具,一般人也可以负担常用的数据统计工作了。

机器学习也是一样的道理,大量工具、框架的涌现,使得运用算法处理数据,训练模型的过程越来越简单高效。

那些曾经高高在上的机器学习模型变得触手可及,只要写几行代码,就都能拿来就用了。这种便捷使得每一个会写程序的人,都可以轻松上手机器学习。

修炼内功——掌握机器学习原理

关于人工智能、编程以及机器学习

工具虽多,要用对地方,还得掌握基本原理。

在使用统计工具的时候,我们可以很方便地计算均值、方差、中位数等等指标。但要让计算结果有用,总要先搞懂它们的定义、计算公式和物理意义。

同理,在机器学习领域,我们有若干历史悠久的经典模型。它们从实践中来,经历了千锤百炼,在数学层面被严格证明为有效。

那么,学习它们的模型函数、目标函数,从模型函数到目标函数的运算过程,各个函数相应的物理意义,最优化的方法……就成了使用它们的必要前提!

掌握了这些模型之后,再与特征工程结合,就可以用来支持现实业务了。

学习机器学习的意义

关于人工智能、编程以及机器学习

计算机技术飞速发展,各种工具、框架、语言日新月异。但是蕴含在机器学习中的原理和公式推导却是稳定的,经得起时代更迭。

我们学习机器学习,不仅是为了找一个AI工程师的岗位,也是在掌握一种通识技能。

相信将来机器学习会像现在的四则运算一样,成为大众必备的基础能力。

另外,学习机器学习,也是一种对思维的训练。

用数值表达现实事物,用运算描述任务目标,再通过算法处理数据找到达到目标的最优化路径——这个思维的形成过程,远比学会模型本身更为难得。

经过这种思考训练内化出的思维能力,完全可能成为学习者相伴终身的助力。

本文转自:微信号 - 悦思悦读(yuesiyuedu),转载此文目的在于传递更多信息,版权归原作者所有。

--电子创新网--
粤ICP备12070055号