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

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

3天内不再提示

AI工程师分哪些层次

工程师人生 来源:工程师吴畏 2019-04-10 15:32 次阅读

01 AI工程师的三个层次

每一波浪潮的到来,都意味一片无人占领的蓝海,也意味着众多新成长起来的巨头,还意味着什么?大量的技术人员需求,供不应求的开发市场,以及从业者的高薪与众多的机会。

我们最常做的事情是目送着上一次浪潮的余波远去,感叹自己生不逢时,却没有意识到,下一波浪潮已经到了我们脚下。

没错,我们说的就是AI。

身在IT圈中的人,应该都有着直观的认识。目前国内知名的互联网企业无一不在建立自己的人工智能技术团队,以期用AI技术,提升产品的体验和智能化程度。

但与此同时,各种不明觉厉的名词也吓退了很多非科班出身的开发者。什么叫卷积神经网络?什么叫凸优化?是不是还要回去重读高数,线代,概率?那么一大堆公式,感觉完全看不懂啊?听说没个名校博士出身都搞不了这个?

在很久以前的一篇知乎回答中提过,作为开发人员,AI领域界在我看来会分成这么几个层次

学术研究者

他们的工作是从理论上诠释机器学习的各个方面,试图找出“这样设计模型/参数为什么效果更好”,并且为其他从业者提供更优秀的模型,甚至将理论研究向前推进一步。 能够做到这一步的人,可以说凤毛麟角,天赋是绕不过去的大山,机遇和努力也缺一不可。

算法改进者

他们也许无法回答出“我的方法为什么work”,也许没有Hinton,LeCun那样足以载入史册的重大成果,但是却能根据经验和一些奇思妙想,将现有的模型玩出更好的效果,或者提出一些改进的模型。这些人通常都是各个机器学习巨头公司的中坚力量或者成长中的独角兽,使用什么模型对他们来讲也不是问题,根据所处的环境,通常都有固定的几个选择。在这个层面,insight和idea才是重要的东西,各种工具的区别,影响真的没那么大。可能会让一个结果早得到或者晚得到几天或者几周,却不可能影响“有没有成果”。

工业实现者

这些人基本上不会在算法领域涉入太深,也就是了解一下各个算法的实现,各个模型的结构。他们更多地是根据论文去复现优秀的成果,或者使用其他人复现出来的成果,并且试图去在工业上应用它。

对于大部分IT人来说,做到第三类,也就是工业实现这个层面,已经足够好了,至少,我们已经有了亲身参与这个大时代的机会,仅就这一点来说,便已经击败了全国99%的人(斜眼笑的表情)。

不光是普通程序猿这么说,文艺的程序猿和……额,高大上的程序猿也都这么说。

我说,呵呵。

答案只有一个:Just Do IT(去搞IT吧,少年)

成为人工智能工程师,在我看来,要把机器学习、深度学习掌握好,就可以入行拼搏了!另外,理论必须要结合项目实战:因为作为程序员,读十遍书不如跑一遍程序,与其花费大量的时间去啃书本,不如亲手完成自己的程序并运行它。我们在写出代码的同时,就会了解到自己还有哪些地方不够清楚,从而针对性地学习。

02 机器学习入门

我们先来说说,机器学习应该学习哪些。

学习任何东西,勿在浮沙筑高台(对这句话眼熟的请举手),有一些基础的知识还是需要掌握的。例如在计算机视觉领域,根据我们团队内部培训的经验,为了能够独立进行机器学习的开发工作,最好首先完成这么几项课程:

入门机器学习

熟悉机器学习领域的经典算法、模型及实现的任务等,同时学习搭建和配置机器学习环境,并学会用线性回归解决一个实际问题。

Logistic回归分析、神经网络、SVM

掌握数据集探索;理解分类任务算法(Logistic回归、神经网络、SVM)原理;学会在scikit-learn框架下采用各分类算法分类具体任务。

决策树模型与集成学习算法

损失函数:信息增益、Gini系数

划分:穷举搜索、近似搜索

正则:L2/L1

预防过拟合:预剪枝及后剪枝;Bagging原理;Boosting原理;

流行的GBDT工具:XGBoost和LightGBM

聚类、降维、矩阵分解

主成分分析(PCA);独立成分分析(ICA);非负矩阵分解(NFM);隐因子模型(LFM);KMeans聚类和混合高斯模型GMM(EM算法);吸引子传播聚类算法(Affinity Propagation聚类算法)

特征工程、模型融合& 推荐系统实现

学会常用数据预处理方法及特征编码方法;学习特征工程的一般处理原则;组合各种特征工程技术和机器学习算法实现推荐系统。

上面的课程大概会消耗你1个月多的所有业余时间。但是相信我,这是值得的。

如果实在连一两个月的业余时间都拿不出来,好吧,我来偷偷告诉你最最最基本的一个要求,满足了这个要求,你就能够算是机器学习入门了: 会算矩阵乘法

矩阵乘法

别笑,说正经的,在这个框架高度封装的年代,梯度不需要自己算,损失不需要自己求,反向传导更是被处理得妥妥的,在不求甚解的情况下,你甚至只需要知道这么几个概念就可以开始着手写第一个程序了:

它就是通过一系列矩阵运算(或者类似的一些其他运算)将输入空间映射到输出空间而已。参与运算的矩阵的值称为权重,是需要通过不断迭代来寻找到最优值。

当前的权重值离最优值还差多远,用一个数值来表示,这个值就叫损失,计算这个值的函数叫损失函数。

当前的权重值应该调大还是调小,这个值通过对损失函数求导来判断,这个求导得到的函数叫做梯度。

通过损失和梯度来更新权重的方法叫做反向传导。

迭代的方法称为梯度下降。

虽然这么写出来的程序一定是不知其所以然,但是其实20年前我第一次用C++写Hello world的时候也是一脸懵逼的,我相信,每个能够投身机器学习开发工作的程序猿,都是有大毅力大勇气的,自然不会欠缺继续学习的动力和决心。

03 深度学习入门

我们再来说说,深度学习应该学习哪些。

深度学习着重掌握卷积神经网络和循环神经网络,使用大量真实的数据集,结合实际场景和案例介绍深度学习技术的应用范围与效果。

神经网络入门及深度学习环境配置

熟悉神经网络领域的常用术语、安装并配置深度学习框架Tensorflow,学会用Tensorflow解决一个实际问题。

神经网络基础及卷积神经网络原理

使用不同结构的神经网络结构验证网络结构对效果的影响;了解卷积神经网络的相关概念和基础知识,并通过实战案例理解CNN局部相关性与权值共享等特性。

卷积神经网络实战

图像分类及检测任务:学习图像分类任务及检测任务目前主要模型算法,并通过两个实战案例学习在Tensorflow框架下训练CNN模型。

卷积神经网络之图像分割实例

掌握分割任务简介、反卷积(deconv/transpose-conv)、FCN

循环神经网络原理

RNN基本原理

门限循环单元(GRU)

长短期记忆单元(LSTM)

词向量提取:Word2Vec

编码器—解码器结构

注意力机制模型:Attention Model

图片标注(Image Captioning)

图片问答(Visual Question Answering)

如何系统学习深度学习 ?90万程序员都在这么做!点我查看

04 进阶

恭喜,你成为人工智能工程师群中的一员了。

接下来就可以收集一些自己的数据,并且训练一些自己的识别引擎;或者尝试着优化这个模型,感受一下所谓调参党的痛苦;又或者直接尝试实现ResNet、Inception这些更为先进的网络来刷刷Cifar;再不然可以尝试着向NLP或者强化学习方向去学习一下。总之,这些事情远没有看起来那么难。

当然,不论那条路,学习,进步和自我鞭策都是逃避不掉的必修课。一个新生的领域,勃勃的生机必然也意味着新成果的层出不穷。完成我上面提到的三门课程只能让一个人从门外汉变成圈里人,有了进入这个领域,赶上这波浪潮的基本资格,至于到底是成为弄潮儿还是直接被大浪吞没,还是那句话,不劳苦必然无所得。努力学习不一定能修成正果,而不去努力学习,则注定是一无所获。

最后,祝福,祝福各位能在AI领域里大放异彩。

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

    关注

    59

    文章

    1566

    浏览量

    68455
  • AI
    AI
    +关注

    关注

    87

    文章

    30274

    浏览量

    268507
收藏 人收藏

    评论

    相关推荐

    FPGA算法工程师、逻辑工程师、原型验证工程师有什么区别?

    ,共同进步。 欢迎加入FPGA技术微信交流群14群! 交流问题(一) Q:FPGA中的FPGA算法工程师、FPGA逻辑工程师、FPGA原型验证工程师三者有什么区别? A:FPGA 算法工程师
    发表于 09-23 18:26

    正是拼的年纪|65岁电子工程师上班VLOG #65岁退休 #电子工程师 #搞笑 #上班vlog

    电子工程师
    安泰小课堂
    发布于 :2024年07月25日 11:31:02

    用二创,1:1复刻工程师的职场现状

    工程师
    扬兴科技
    发布于 :2024年07月19日 18:30:07

    3钟带你深度理解|什么是谐振?共振真的能穿墙吗?#谐振 #共振 #电子学 #电子工程师

    电子工程师谐振
    安泰小课堂
    发布于 :2024年06月11日 18:05:13

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师是软件开发领域中的一种专业工程师,他们主要负责设计和开发嵌入式软件,
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    企业老工程师和高校老师有啥区别

    电子工程师硬件
    电子发烧友网官方
    发布于 :2024年02月28日 17:50:00

    如何搞崩一个硬件工程师心态?试试对ta说这几句

    硬件工程师
    扬兴科技
    发布于 :2024年02月20日 18:05:49

    电子工程师第一天上班就暴揍师傅。。。#科普 #示波器 #电子工程师 #打工日记

    电子工程师示波器
    安泰小课堂
    发布于 :2023年12月18日 17:36:12