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

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

3天内不再提示

如何成为一名AI工程师?

工程师人生 来源:网络整理 作者:工程师吴畏 2018-08-20 09:34 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在所有事情开始之前,要把相关的环境设置好。首先你要有OpenCV(对于视觉工程师方向),至少一个深度学习框架(TensorFlow, Kaffe, Keras等,新手推荐用Keras),Ubuntu。还要掌握C++Python, 和基本的机器学习知识。

C++在AI类工作中有怎样的重要性?

C++对于你找AI视觉方向的工作是比较重要的。以下几个工作Title是要求你必须会C++的:

AI Engineer / Computer Vision Engineer / Self-driving Car Engineer / Image Processing Engineer / SLAM Engineer

GPGPU Engineer

而这四类工作Title并不要求你一定会C++:

* Data Scientist(Python, R etc.)

* Deep Learning Scientist

* NLP engineer (Python)

* Machine Learning Engineer (Pyhton, Java

如何准备C++?

C++11中最重要的是Smart pointer,很容易考到。其次还有STL(vector, map etc.) 添加,删除,排序。类也会考察,类里有很多前缀后缀,如const, static, override, virtual,pure virtual等,这些需要清楚地记得。

然后说到刷题,LeetCode上Easy和Medium的题,起码要刷三百道。最好是能一边上现成的算法课,一边用C++刷题练习。

关于用到的资料,向大家推荐一本C++的书:Effective C++。这本书比较薄,三天内就能看完,可以不用看得太细,它对编程风格的讲解是比较值得一看的。比如你可以了解到面对过程的编程风格和面向对象的编程风格。

最后给大家推荐一个YouTube播主:Cppnuts。他把C++的每个知识点总结成三到五分钟的视频,讲得很不错,大家可以关注。

找AI视觉方向的工作,你需要哪些必要的图像知识?

特征点: Harris角点检测,SIFT,SURF,ORB。例如,面试官可能会问你:在SLAM系统中,我们为什么要用ORB,而不用SIFT和SURF?答案是因为ORB比SIFT和SURF快,并且精度也不错。

描述子和匹配,FLANN算法

相机模型:相机内参,外参数,相机标定。这部分其实是3D的概念,是视觉中的一大块,但不需要了解得太深,现在这个领域绝大部分还是基于深度学习,只需这些基本的概念了解清楚。

基本的大块概念:图像配准,运动检测,光流算法等。

OpenCV:很重要,任何一个关于图像的工程师职位都对OpenCV有要求。Mat基本操作遍历必须会,其他的东西可以根据算法推演。

CUDA:这是找工作过程中非常容易赢得优势的一门技术。任何一个项目如果你说你用了CUDA,并解释得清除完整,会让面试官刮目相看。虽然CUDA有优势但学起来并不容易,内容比较多。

你需要哪些深度学习的知识积累?

至少熟悉一种框架:如Caffe,Tensorflow,Pytorch,MXNet等。推荐TensorFlow和Keras。Keras适合新手,比较简单,并且和TensorFlow是一样的。对于TensorFlow,推荐《TensoFlow实战》这本书。

至少一次Kaggle项目的经历:Kaggle项目的名次最好在15%以内,这样只需写一个。如果没有名次,就可以多写几个项目。写在简历上的项目要突出两点:第一,你把模型重新训练了一遍。第二,你Ensemble了Multiple models。 Dogs and Cats的获奖感言中讲了一些他做Kaggle的经历,推荐大家去看,可以借鉴他的话用在面试中。历届冠军说的一些感言有很多是十分有用的。

对于这些模型,能够迅速说出其优点:GoogleNet V12345, VGG, ResNet, MobileNet, AlexNet。

模型选择方面:了解Fine tune,参数训练的技巧(如何设定初值,如何调参等)

各种面试的小问题:如你平时喜欢用什么Optimizer?为什么神经网络越深越好?为什么网络要Thin呢?Gradient Vanish造成的原因?为什么会造成Overfitting?怎样克服Overfitting?你怎么看Overfitting?Batch Normalization是什么?还有Range of each hyper parameter,SVM和分类算法的对比,数据集大小和切割等。

关于面试准备过程中的Tips

不要想着准备好了再面试。其实”准备好“是一个难以界定的概念,也许你永远都达不到所谓的“准备好”的状态,等你准备好时很多职位都没有了,会错失很多机会。

多面试,才知道职位究竟需要什么技能。AI的职位不像软件工程师职位那样有相对固定的需要准备的知识点,医疗方向有医疗方向需要准备的东西,无人机有无人机需要准备的东西。多面试才能知道这个职位到底需要什么技能。但是不要一开始就面大公司,可以从一些小公司练手,积攒经验后再面大公司,并且大公司尽量找内推。

通过面试失败总结经验,建立一个自己的Cheatsheet。当你准备去面试一个陌生的领域,通过把每次面试的经验写在Cheatsheet上,你就会逐渐知道面试官需要什么样的项目,你要如何润色自己的项目。

如果拿不到面试可以尝试投国内公司练手。投国内的公司可能拿到面试的机会更大一些,通过这些面试一样可以积攒经验。国内公司可能对算法方面没那么严苛,但其他方面可以对你有很大的指导性,并且问的问题很实际,很接地气。

面试中可能会面对哪些失败?

回复很少:有时候你可能没有把简历写到Recruiter能看懂的程度。如果你简历写得不够直白,Recruiter没看懂,他可能就pass了你的简历。我们要把项目中最重要的关键词突出出来,并且可能需要写一个general的cover letter,让Recruiter了解你。我们自己也可以去LinkedIn加Recruiter,越多越好,可以直接把简历发给他,增加Recruiter回复的概率。

公司其实并不招人:有时候公司把招聘信息发布在网上,但其实他并不想招人,他就是要招不到人,才能给自己公司里的人办H1b。这个时候面试官可能会出特别难的题,这种情况大家需要理性识别,不要一次遇到太难的面试就怀疑自己,从而丧失信心。

代码没时间准备:这其实是最不应该出现的问题。代码在AI工程师求职中是很重要的。每个公司至少有两轮代码的面试,Online或者白板面试。大家一定要勤刷题。

项目不够吸引人:打造一些实习经历,实习是最重要的,有了实习对找全职是非常有帮助的。

心态已崩:找工作的难度大,但很多时候多坚持一会就能找到工作了。你要知道,如果你是MS最终做了AI,你已经为自己省了两到三年转行的时间。

现在AI有这些比较热门的方向

自动驾驶、医疗诊断、推荐nlp、聊天机器人、视觉导航、金融、视觉机器人、VR / AR、监控等。

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

    关注

    59

    文章

    1603

    浏览量

    71219
  • AI
    AI
    +关注

    关注

    91

    文章

    41103

    浏览量

    302585
  • C++
    C++
    +关注

    关注

    22

    文章

    2129

    浏览量

    77367
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何成为一名高薪嵌入式工程师

    学嵌入式,也可以轻松入门。 如果你已经明确好,想要从事嵌入式开发,想要成为一名高薪的嵌入式工程师,那下面这几点建议请好好看看: 、夯实技术基础 ✅编程语言 C语言:嵌入式开发
    发表于 04-09 09:03

    电子工程师的双标瞬间 #电子 #电子爱好者 #电子工程师 #扬兴科技 #双标

    电子工程师
    扬兴科技
    发布于 :2026年03月02日 18:04:13

    电子工程师设计要点与经验分享

    电子工程师设计要点与经验分享 作为一名资深电子工程师,在硬件设计开发领域摸爬滚打多年,积累了不少宝贵的经验和见解。今天就和大家分享些电子工程师
    的头像 发表于 02-03 11:10 320次阅读

    什么是BSP工程师

    、嵌入式系统 要明白什么是嵌入式软件工程师,我们先从嵌入式系统(嵌入式设备)说起。维基百科上对嵌入式系统的定义如下: 嵌入式系统(Embedded System),是种嵌入机械或电气系统内部
    发表于 01-13 06:54

    电子工程师设计要点与经验分享

    电子工程师设计要点与经验分享 作为一名资深电子工程师,在多年的硬件设计开发工作中,积累了不少宝贵的经验和见解。下面就和大家分享些电子设计方面的关键要点和实际案例。 文件下载
    的头像 发表于 01-07 13:55 514次阅读

    硬件工程师面试必会:10个核心考点#硬件设计 #硬件工程师 #电路设计 #电路设计

    硬件工程师
    安泰小课堂
    发布于 :2025年09月23日 18:00:33

    招镶入式工程师1个,硬件工程师个,

    东莞市研生科技有限公司是家蓝牙方案公司,主营蓝牙方案的设计开发,产品包括蓝牙BLE/4G透传/AI智能体方案开发,因公司发展需要需对外招聘嵌入式软件开发工程师,对蓝牙音频/BLE以及智能IC读卡器有三年实操经验,能单独完成项目
    发表于 08-29 02:14

    作为一名PCB质检工程师,我为什么在用手持式面铜测试仪?

    在PCB行业,铜厚直是决定阻抗、散热与可靠性的关键指标。过去,工程师把板子搬到实验室、等待台式铜厚仪出结果;作为一名PCB质检工程师,如今,我更愿意把“实验室”揣进口袋——手持式面铜
    发表于 08-11 11:59

    做了电子工程师之后,最好拍的视频出现了#硬件设计 #电子DIY #电子工程师

    电子工程师
    安泰小课堂
    发布于 :2025年06月24日 17:45:57

    物联网工程师为什么要学Linux?

    物联网工程师需要掌握Linux的主要原因可以从技术生态、开发需求、行业应用及就业竞争力四个角度来分析: 、技术生态与行业适配性 1)嵌入式开发的主流平台 物联网设备往往基于嵌入式系统开发
    发表于 05-26 10:32

    问,成为硬件工程师需要几只手?#硬件工程师 #YXC晶振 #扬兴科技 #搞笑

    硬件工程师
    扬兴科技
    发布于 :2025年04月25日 17:15:37