0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

软件工程师转型人工智能需要知道这些

工程师人生 来源:wv 作者:简书网 2019-09-04 14:57 次阅读

作为软件工程师,如果想掌握一些大数据算法的背景知识,以便更好地和算法相关团队合作,那么以这个模块讨论的算法为基础,触类旁通,针对公司使用的算法再进一步了解和学习,基本上也就够用了。但是,如果想从软件工程师深入进人工智能领域,那么就还需要系统地学习和掌握机器学习各方面的知识。

下面根据我的经验,给你呈现一个软件工程师进入人工智能领域的 “学习路线图”,希望可以帮助到想转型进入人工智能领域的同学。

数学基础

机器学习有时候也被称为统计学习,其实就是统计大量历史数据中的规律,构建算法模型,再利用模型对现在的数据进行分类和预测。所以学习机器学习算法,先要复习一下统计学和概率论方面的知识。

很多算法的特征与函数都用向量空间表示,很多大数据算法计算也可以转化为矩阵与向量计算。比如 PageRank 算法就可以将网页间的链接关系表示为一个稀疏矩阵,所有页面的 PageRank 值构成一个向量,然后将矩阵与向量不断迭代相乘就可以了。因此,你还需要再复习一下线性代数的知识。

我们讨论过机器学习的数学原理,机器学习算法的推导过程,其实就是在模型假设空间寻找使结构风险为极小值的模型,而数学上的极小值就是一阶导数为 0 的值,因此还需要复习一下高等数学。

机器学习算法

大家普遍认为,系统学习机器学习算法最好的入门级课程是斯坦福大学的机器学习公开课,这门课程由吴恩达讲授,非常经典。还有几本比较经典的书籍可以和公开课相互参照,比如周志华的《机器学习》,俗称 “西瓜书”,比较通俗易懂,适合入门;李航的《统计学习方法》,偏数学一些,可以不时翻看。

如果只是单纯学习算法,会比较枯燥,需要不断做一些算法的编程练习,除了学习过程中的一些算法编程练习,还可以参考《集体智慧编程》这本书,书中的例子都比较实用,可以根据书中的数据和代码进行练习。这本书偏重代码和应用,很适合软件工程师进行入门练习,不过这本书缺少算法的原理分析,算法比较少也偏简单。

以上这些书籍或者课程基本上都是大学教材或者相似课程的难度,如果要成为机器学习算法专家,就需要自己寻找一些更专业的书籍和论文来看了,这些资料主要是以英文为主,所以也需要你有不错的英语基础。

大数据技术与机器学习框架

在小规模的数据集上做算法练习,用 Python 程序在单机上运行就可以了,但是在真正的生产环境中,需要面对海量的数据处理计算需求,这就需要用到我们专栏前面讨论过的各种大数据技术产品。各种主流大数据产品都有自己的机器学习框架与算法库,比如 Hadoop 上有 Mahout、Spark 上有 MLlib,借助这些算法库和工具,可以较快速地在大数据平台上开发机器学习应用程序。

Mahout 和 MLlib 主要支持传统的机器学习算法,业界还有几款比较知名深度学习框架:TensorFlow、Caffe,Intel 也开源了基于 Spark 的深度学习库 BigDL。

人工智能应用

学了这么多机器学习的知识,最终的目的还是应用,业界其实不缺懂算法的专家,但是却非常短缺能够将机器学习和业务结合,产生实际价值的专家。要想实现人工智能真正落地,一方面需要懂大数据和机器学习算法,另一方面需要深入了解具体的领域知识,能够发现业务中的痛点,并能够选择最合适的算法解决这个痛点。

很多时候解决问题不需要多么高大上的技术和算法,很普通的算法用对地方,也能产生巨大的效果,这才是业界最短缺的,而这也正是从软件开发转型人工智能的技术人员的优势,有多年的领域开发积淀,有技术实现和验证的能力,再加上大数据和机器学习能力加持,几项结合产生化学反应,也许能在自己的企业和行业领域创造出巨大的价值。

根据 Gantner 发布的 2018 年人工智能技术成熟度曲线,我给你总结一下目前人工智能技术的发展状况,供你参考。

处于上升阶段,即具有长远发展前景的人工智能技术包括:

人工智能管理:根据人工智能模型和数据管理企业,包括决策权的划分、组织结构、绩效管理等。

通用人工智能:目前的人工智能仅仅在相对封闭、重复的场景中适用,稍稍扩大应用范围,特别是和人类交互的时候,经常表现得非常 “弱智”。但是放到更长远来看,通用人工智能,即强人工智能还是值得期待的。

知识图谱:将具有各种关联关系的信息通过图的方式组织在一起,自动发现各种信息、数据、资产、商品、人、知识等各种关系并加以利用。

神经形态硬件:按照神经网络神经元形态构造硬件,即 “芯片大脑”。

自然语言生成:根据语境语义自动生成自然语言,既可以生成各种有格式化的报告,也可以生成诗词歌赋等文艺作品。

处于顶部,被众人期待,但是可能有些过热的人工智能技术包括:

人工智能平台即服务:最近几年,各家云服务厂商都在加大云服务平台上人工智能的投入和宣传,百度宣布自己 All in 人工智能,阿里云人工智能也占据了云平台的重要板块。

深度神经网络专用芯片:针对深度学习算法专门设计的芯片,拥有比 GPU 更好的计算性能。

智能机器人:不同于工厂流水线上的工业机器人,智能机器人用于酒店、机场、餐厅、医院,与人交互,直接服务人类。

语音交互:以语音识别、自然语言理解、语音合成技术为基础的语音交互技术,以智能语音客服为代表的各种聊天机器人、虚拟助理等语音交互产品。

智能应用:为各种传统软件系统赋能人工智能,在 ERP、CRM 等各种传统应用中集成人工智能特性。

图形分析:根据图形分析数据特性,发现数据聚类特性,发现孤立点,还可进行路径优化等。

目标分析:通过人工智能优化决策分析,发现达成预定条件目标的首选行动方案。

深度学习:应用比较广泛的是卷积神经网络和递归神经网络,在图片、语音、视频等非结构化数据处理方面有良好效果。

自然语言处理:传统上自然语言处理的方法是语法与语义分析,但是现阶段越来越多使用深度学习进行自然语言处理。

虚拟助理:通过语音交互的形式,为用户订票、订餐、打车等,仿佛一个虚拟的个人助理。

经过泡沫洗礼,关注度下滑,进入冷静期的人工智能技术:

计算机视觉:通过获取、分析现实物理世界的图片和视频,提取出有意义的信息。包括机器视觉光学字符识别、图像识别、模式识别、人脸识别、边缘检测和运动检测等,可应用于自动驾驶、生物识别、虚拟现实各种领域。

预测分析:预测将来要发什么、将来会发生什么,主要基于回归分析、多元统计、模式匹配、预测建模等机器学习技术。很多时候,预测有一定效果,但是距人们的期望还有一定距离。

自动驾驶:利用激光雷达、摄像头、GPS 和地图数据等多种车载传感和定位技术,结合机器学习模型实现车辆在无人控制的情况下自动驾驶。从人工智能角度看,自动驾驶技术上应该已经趋于成熟,但是具体应用看起来还很遥远。

增强现实 AR:将虚拟的文本、图形、视频叠加到现实的视频上,起到增强现实的效果。在各种谍战片里,特工们戴着炫酷的 AR 眼镜无所不能;但在现实中,大规模商用还尚不成熟。

人工智能将会引领下一次科技革命的浪潮,基本已经得到人们的普遍认可,但是越是革命性的事物,道路越是艰难;不过道路越是艰难,收获越是巨大。人工智能对我们生产生活的改造将是全方位的,不管你现在身处什么领域,总能找到和人工智能结合的机会,期待将来人工智能科技革命的浪潮中看到你的身影。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人工智能
    +关注

    关注

    1773

    文章

    43356

    浏览量

    230126
  • 软件工程师
    +关注

    关注

    8

    文章

    216

    浏览量

    20923
收藏 人收藏

    评论

    相关推荐

    Cognition发布首款AI软件工程师Devin

    据报道,Cognition公司今日公布了其首款人工智能软件工程师——Devin,掀起了打造软件模式变革的序幕。该产品在SWE-bench代码测验中展现出卓越表现,甚至超过了部分顶级人类工程师
    的头像 发表于 03-13 10:57 315次阅读

    嵌入式人工智能的就业方向有哪些?

    联网ARM开发 NB-IoT开发及实战 七:python工程师人工智能工程师 python语法基础 python核心编程 基于OpenCV的机器视觉开发 嵌入式人工智能渗入生活的方
    发表于 02-26 10:17

    #人工智能 #FPGA 怎么成为一个合格的FPGA工程师

    fpga工程师
    明德扬助教小易老师
    发布于 :2023年12月18日 21:19:01

    硬件工程师需要了解主机厂的标准吗?

    公司最近购买了GMW14082-2010通用汽车的标准,要求硬件工程师进行阅读。我有点不清楚这个标准的作用对于我们来说有什么用,里面的内容需要全部都掌握吗?还是只要知道其中一些关键点就行?
    发表于 11-23 15:03

    FPGA工程师需要具备哪些技能?

    的状态机以及高级逻辑电路。 FPGA工程师需要熟练掌握HDL语言,并能够根据需要灵活使用这些语言。他们需要知道如何将各种逻辑电路和存储
    发表于 11-09 11:03

    ai人工智能机器人

    随着时间的推移,人工智能的发展越来越成熟,智能时代也离人们越来越近,近几年人工智能越来越火爆,人工智能的应用已经开始渗透到各行各业,与生活交融,成为人们无法拒绝,无法失去的一个重要存在
    发表于 09-21 11:09

    《通用人工智能:初心与未来》-试读报告

    取代人类了吗? 很多人都担心这个问题,其实这个就是有点杞人忧天了。人工智能是服务人类,而不是取代人类。人类是不知道多少万年进化的结果,而计算机是基于逻辑和推理的理论建立的,人类是复杂的是社会的,关于情感
    发表于 09-18 10:02

    如何将人工智能应用到效能评估系统软件中去解决

      如何将人工智能应用到效能评估系统软件中去解决   华盛恒辉效能评估系统是一种非常实用的管理工具,它可以帮助组织和企业掌握其运营状况,优化业务流程,提高效率和生产力。然而,随着人工智能的迅猛发展
    发表于 08-30 12:58

    人工智能需要学哪些课程

    优秀的人工智能工程师。 1. 数据结构与算法 人工智能技术的基础是算法和数据结构,所以学习数据结构与算法是人工智能工程师必备的技能之一。在
    的头像 发表于 08-17 11:46 594次阅读

    人工智能工程师的危机

    人工智能工程师的危机  作为一名人工智能工程师,我越来越感到危机的存在。在过去几年中,人工智能变得越来越流行,随着技术的发展和应用的广泛,
    的头像 发表于 08-15 16:08 341次阅读

    什么是人工智能人才

    人工智能人才是指有足够的知识和技能,在实际应用中能够设计、实现和维护各种类型人工智能系统的专业人员。人工智能人才通常包括数据库管理器、软件工程师、数据科学家、机器学习算法
    的头像 发表于 08-14 13:59 993次阅读

    人工智能工程师就业如何

    如果你正在考虑成为一名人工智能工程师,那么选择一个合适的专业至关重要。许多人工智能工程师在大学里选择了计算机科学或数学,但是在实际应用中,他们可能会使用其他学科,如物理、语言学、生物学
    的头像 发表于 08-13 10:03 518次阅读

    【书籍评测活动NO.16】 通用人工智能:初心与未来

    ,以及从当前“专用人工智能”到实现真正的“通用人工智能”还需要在哪些方面取得突破。书中对当前人工智能技术的发展路径提出了不少质疑,也给出了新的发展导向,如“通用
    发表于 06-21 14:41

    硬件工程师需要知道的DFM可制造性设计

    多了。创业公司也没钱,用的是华秋的DFM软件,简单好用,重点免费!这款软件是为电子工程师量身定做的PCB可制造性设计分析软件,可以一键分析Gerber文件和PCB文件中的设计隐患,并给
    发表于 04-17 11:09

    机器学习和人工智能有什么区别?

    人工智能程序。他们需要编程才能发挥作用。事实上,他们似乎不可避免地会从简单的 AI 程序开始,随着他们的理解和学习能力的发展,这些程序会创建新代码。 
    发表于 04-12 08:21