江大白:这些年从0转行AI行业的一些感悟

文摘   2024-11-21 08:01   浙江  
近期文章回顾(更多热门文章请关注公众号与知乎Rocky Ding哦)

写在前面

WeThinkIn最新福利放送:大家只需关注WeThinkIn公众号,后台回复“简历资源”,即可获取包含Rocky独家简历模版在内的60套精选的简历模板资源,希望能给大家在AIGC时代带来帮助。

AIGC时代的《三年面试五年模拟》算法工程师求职面试秘籍(持续更新)独家资源:https://github.com/WeThinkIn/Interview-for-Algorithm-Engineer/tree/main

Rocky最新发布Stable Diffusion 3和FLUX.1系列模型的深入浅出全维度解析文章(持续更新),点击链接直达干货知识:https://zhuanlan.zhihu.com/p/684068402



分享人:江大白

所属方向:图像算法

所在行业:智能安防


01


个人简介


Hello,大家好,我是江大白。

很多朋友应该在网站或者知乎的视频上,经常听到这个开头语。

目前在AI公司,主要负责算法方面的工作,目标检测,目标追踪等,以及各类AI项目方案。

研究生毕业也正好进入第7个年头,正式进入AI行业两年多,非正式接触AI行业11年(研究生就开始接触CNN)。

距离提笔写下这篇文章时,网站www.jiangdabai.com,正好上线两个半月。

时间过得太快,一晃身边已经发生太多的改变。

从进入机器视觉行业,到几次创业,再到AI行业,人生的经历,在不断的发生变化。

因此经常会回想,这6年收获了什么?

如果再次遇到几年前,刚进入AI行业的自己,会对他说什么?有什么样的建议?

这段时间,也有很多朋友加我的微信,问各种问题:

比如大学刚学AI行业,怎么入门?

想跳槽到AI行业,应该如何准备?

聊了很多人,发觉很多朋友入门时,工作几年后的很多困惑都是很相似的。


02


为什么进入AI行业?


在2018年底,当时还从事机器视觉方向。

因为业务原因,需要常年在外奔波,那时也开始新审视自己未来的方向。

是继续从事机器视觉,还是考虑其他方向呢?

后来其实也接触了很多公司,尝试了一些方向,最终还是选择了AI行业

在刚开始接触的时候,基础很不扎实,因为不是科班出生。

但比较幸运的是,研究生的课题当时做的是工业OCR,字符识别。

而2013年时,卷积神经网络CNN刚刚开始有萌芽。

因此那时研究生的课题,就选择将CNN和OCR结合,写课题发专利。

当时应该也算第一批,做深度学习方向的研究生。

那时通过搜索引擎,检索深度学习,基本都没有相关文章,不像现在,百花齐放。

当时,边研究论文,边写了一些文章,比如《深度学习(卷积神经网络)一些总结》,也有十几万的浏览量。

(https://blog.csdn.net/nan355655600/article/details/17690029)

虽然毕业后没有继续从事AI方面的工作,不过在2018年底,面临选择时,也算有一点点理论基础。


03


AI行业是如何入门,

打怪升级的?


AI入门,其实每个人刚开始接触的时候,都会遇到很多问题。

大白19年初,刚开始接触各种智能安防项目时,也是一脸懵逼。

因为很多项目,都是各种算法串联起来的。

比如人脸识别算法,就包括人脸检测+人脸关键点定位+人脸矫正+人脸质量评估+人脸特征提取+特征对比。

刚开始接触的时候,差不多半年时间,每天晚上都在加班,疯狂补习相关的知识点,以及项目经验。

记得刚开始使用的检测算法,还是Cascade-RCNN,用的框架还是Caffe的框架。

后来在19年下半年的时候,才接触到Yolov3目标检测算法。

在后面的各种项目中,用了很多次Yolo算法,发觉目标检测真的是非常重要的一部分

比如在智能安防的很多项目中:安全帽检测、客流统计、火焰检测、人脸识别、打电话手机检测、反光服检测、动物识别、飞机检测等。

很多项目的第一步,都是要先进行目标检测才能做后续的分析

在2020年初,Yolov4刚出来的时候,大白就认真的研究了一下,感觉创新点很多。

但当时并没有打算写相关的文章,后来因为一个契机。

当时有两个同事问我Yolo算法,非常具体的细节,但是平时很少总结这方面的知识点。

所以感觉很尴尬,不知道如何,对他们讲解相关的内容。

因此才萌发写Yolo文章的心思,梳理自己的知识框架。

而且为了让自己思路清晰,让别人也能看懂。

花费了几个星期的时间,做各种网络架构图,算法效果图,才写完了第一篇Yolov4的文章,《深入浅出Yolo系列之Yolov4核心基础完整讲解》

(https://zhuanlan.zhihu.com/p/143747206)

后来Yolov5出来后,又写了《深入浅出Yolo系列之Yolov5核心基础完整讲解》

(https://zhuanlan.zhihu.com/p/172121380)

文章反响还是挺不错的,全网有100万左右的浏览量,在小众的算法行业,还是不错的成绩。

就在大家思考Yolo系列如何进一步改进时,旷视科技发布了Yolox算法。

大白也进行了深入的研究,进而编写了《深入浅出Yolo系列之Yolox核心基础完整讲解》,最终也获得了Yolox研发团队的认可。

(https://zhuanlan.zhihu.com/p/397993315)



04


工作学习中,
有哪些印象深刻的事?

回想从事AI行业的这几年,做过太多太多的项目,但是对我来说,印象最深刻的还是第一个项目。

19年刚入职的第二天,直属领导让我接手一个,商场动态VIP人脸识别的项目。

当时对于动态人脸识别,还是很懵懂的状态,不知道每一个算法之间,为什么要这样做?

从0开始写代码,边查资料,边想每个算法之间的逻辑。

那大半个月,基本每天都是12点半之后回家。终于在快一个月的时候,把整个项目写完了。

其实今天回想起来,都感觉那个项目还是很复杂的。

比如从算法端来说:

(1)要先写整套的人脸识别算法,将VIP人员的人脸信息,采集并录入到数据库中。

(2)再针对通道中的客流视频,使用人脸检测和头肩检测算法,对每个人的人脸和头肩都进行检测,并通过IOU计算,将人脸和头肩进行关联绑定。

(3)在此情况下,即使有的人转过身去,也可以利用头肩追踪的track_id,和人脸的信息进行对应。

而在业务端来说:

(1)需要在视频中,绘制进出口的线段,对客流进行统计;

(2)当人体进入到合适范围内,再对人脸追踪过程中,最好的一张人脸图像,提取人脸特征信息,并和数据库中的人脸,进行比对,计算最相似的一张人脸信息;

有了这段非常痛苦的经历过后,智能安防上很多的项目,其实都理清思路了,无非是某些模块进行拆分组合。

不过那段经历,虽然很痛苦,但还是非常感谢当时的Leader,目前他已移民新加坡,祝愿他的工作生活越来越好。


05


工作学习中
踩过哪些坑,哪些可以改进?

说到踩坑,其实一种一直在踩坑的感觉。

因为很多项目中,可能遇到的问题,都是未知的。

而且有些项目,公司之前也并没有相关的经验,只能边走边踩坑。

比如在做某项目时,有一个功能,需要将检测到的的车辆图像坐标。

通过经纬度映射,拟合得到地图坐标系中的位置(经纬度)。

并将拟合的经纬度,和公司数据库中,所有汽车的经纬度,在一定范围内进行对比,得到符合条件的汽车信息,进而显示在原始视频中。

当时做项目时,发现很多汽车无法获取到信息,成功率很低。

经过一系列的排查,发现方法都没有问题,后来经过对Log文件分析后才发现。

在实际情况下,有些汽车并没有将自己的经纬度信息,发送到数据库中。

所以虽然在图像中,检测到了车辆,但在数据库中,根本无法找到相应的信息。

而这个情况,不会有工作人员告诉你,只有自己一点点去挖掘真相。

这个过程,既煎熬又残酷,虽然探索真相后的成就感满满,但是过程还是蛮难受的。

而改进的地方呢?

其实这也是为什么想搭建AI未来星球的初心

(1)因为每个人的经验是渺小的,但是如果汇集一大批志同道合的朋友,经验心得大家都能真诚的分享,少走一些坑,对于工作或者生活,都会很有帮助。

(2)而且在工作或者学习中,常常遇到很头疼的技术难点,个人层面或者公司层面的,大家是否也可以一起真诚的出谋划策呢?

(3)每个人从自己的视角,在定期举办的活动中,分享项目中的一些坑,大家在项目中遇到相关问题时,就可以直接避坑,也是非常有价值的一件事。


06


如果遇见之前的自己
从入门的角度,会给他什么建议?

如果遇见几年前,刚入门的自己或者朋友,我会从理论和实践的角度,聊一下自己的一些想法:

(1)从目标检测的角度

因为平时目标检测算法用的很多,而且也有很多朋友会咨询,比如如何短时间入手目标检测算法,所以从快速学习目标检测Yolo的角度,提一些建议。

① 从0搭建起测试环境

先下载Yolo算法的代码(这里推荐使用Pytorch版本,更简单一些), 将运行环境等配置好,作者提供的预训练模型和图片也下载好,按照测试推理的代码,跑一遍,大概了解Yolo的方法。

② 了解算法内部原理

算法代码可以跑起来,有了信心之后,可以查看相关的文章或者视频,了解Yolo算法的一些常用知识点,可能还会有很多疑问,不过不用急。

③ 结合代码解决疑问

结合算法的推理测试代码,这时先不用看训练代码,一步步Debug运行,了解网络的前处理,网络加载,后处理等过程,可以将脑海中的很多疑惑解开;

④ 学习完整的训练流程

因为想快速学会整体操作流程,可以开始了解,如何标注图片,如何对标注图片通过脚本,生成可以训练的格式。

再将转换后的格式,使用Yolo的训练代码,训练起来,明白训练的大体流程;

⑤ 深挖算法训练代码细节

训练代码是算法的核心,明白了各个阶段的流程和疑问。

将训练代码,再一步步Debug运行,针对不懂的知识点,全部列出来,在网上针对性检索,一点点克服,最终可以快速入门;


(2)从算法的角度

① 制定好自己的计划

如果还在学生阶段,尽早制定好自己的学习计划,了解某些领域常用的一些算法,以及基础知识。

在此基础上,在寒暑假期间,找一些大厂,或者所在城市的AI公司实习,了解工作中实际的工作方式,这样可以清晰的知道,在学校期间,需要掌握哪些技能?

② 掌握必备且重要的算法

如果即将从事AI行业,在工作中,尽快借助一些项目,将整体的算法功能模块掌握。

在此基础上,再去反推,哪些算法可以优化加速?哪些算法可以改进网络?


(3)从项目的角度

① 算法只是一门技术

算法技术在公司体系下,是非常重要的核心技术,但是只是一门技术。

商业体系下,想销售出去,需要和研发、测试、项目经理等多种角色打交道,大家一起合力。

将算法和软硬件,以及项目结合,包装成产品,卖给客户。

因此我们要经常思考,在做的算法是否有价值?

某些算法已经达到瓶颈后,是否需要花费大量的精力物力去攻克?

项目交付是否可以通过其他的方式加快解决,比如销售、项目经理等。

② 不同部门合作的能力

如果不是沉迷算法,在公司体系下,我们会接触到各个部门的人员,比如开发部、测试组、项目经理等。

每个人的岗位不同,要求也不同。

我们可以和不同的同事交流,了解不同岗位的需求以及工作诉求。

比如测试组,他想了解项目中哪些测试信息?

这些信息,我们应该如何提供?如何形成测试案例?

多从不同的角度,对项目进行了解,我们也可以知道,算法应该从哪些方面进行改进?


(4)从个人成长的角度

① 尽快找到自己的人生定位

在工作一段时间后,你要尽快找到自己的人生定位,是走深的路线,还是广的路线。

如果走深的路线,应该如何走?如果走广的路线,应该覆盖哪些知识领域。

每个人的时间精力是有限的,特别是工作后,时间更是无比宝贵。

尽快找到自己的人生定位,确定好自己的方向,才能勇敢的一往无前。

② 经常锻炼拥有一个好身体

算法的工作,有的时候是很枯燥无聊的,而且需要长时间呆在电脑前。

给自己制定一个锻炼计划,每天完成什么样的运动量?

只有拥有强健的身体,我们才能投入百分百的动力到工作中,到探索自己的定位中。


最后,祝愿大家所得皆所愿,所遇皆所求,江湖路远,未来可期!

推荐阅读

1、加入AIGCmagic社区知识星球

AIGCmagic社区知识星球不同于市面上其他的AI知识星球,AIGCmagic社区知识星球是国内首个以AIGC全栈技术与商业变现为主线的学习交流平台,涉及AI绘画、AI视频、大模型、AI多模态、数字人、全行业AIGC赋能等50+应用方向,内部包含海量学习资源、专业问答、前沿资讯、内推招聘、AI课程、AIGC模型、AIGC数据集和源码等

那该如何加入星球呢?很简单,我们只需要扫下方的二维码即可。知识星球原价:299元/年,前200名限量活动价,终身优惠只需199元/年。大家只需要扫描下面的星球优惠卷即可享受初始居民的最大优惠:

2、《三年面试五年模拟》算法工程师面试秘籍

《三年面试五年模拟》面试秘籍旨在整理&挖掘AI算法工程师在实习/校招/社招时所需的干货知识点与面试方法,力求让读者在获得心仪offer的同时,增强技术基本面。

Rocky已经将《三年面试五年模拟》面试秘籍的完整版构建在Github上:https://github.com/WeThinkIn/Interview-for-Algorithm-Engineer/tree/main,欢迎大家star!

《三年面试五年模拟》面试秘籍的内容框架

想要一起进行项目共建的朋友,欢迎点击链接加入项目团队:《三年面试五年模拟》版本更新白皮书,迎接AIGC时代

3、Sora等AI视频大模型的核心原理,核心基础知识,网络结构,经典应用场景,从0到1搭建使用AI视频大模型,从0到1训练自己的AI视频大模型,AI视频大模型性能测评,AI视频领域未来发展等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

Sora等AI视频大模型文章地址:https://zhuanlan.zhihu.com/p/706722494

4、Stable Diffusion 3和FLUX.1核心原理,核心基础知识,网络结构,从0到1搭建使用Stable Diffusion 3和FLUX.1进行AI绘画,从0到1上手使用Stable Diffusion 3和FLUX.1训练自己的AI绘画模型,Stable Diffusion 3和FLUX.1性能优化等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

Stable Diffusion 3和FLUX.1文章地址:https://zhuanlan.zhihu.com/p/684068402

5、Stable Diffusion XL核心基础知识,网络结构,从0到1搭建使用Stable Diffusion XL进行AI绘画,从0到1上手使用Stable Diffusion XL训练自己的AI绘画模型,AI绘画领域的未来发展等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

Stable Diffusion XL文章地址:https://zhuanlan.zhihu.com/p/643420260

6、Stable Diffusion 1.x-2.x核心原理,核心基础知识,网络结构,经典应用场景,从0到1搭建使用Stable Diffusion进行AI绘画,从0到1上手使用Stable Diffusion训练自己的AI绘画模型,Stable Diffusion性能优化等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

Stable Diffusion文章地址:https://zhuanlan.zhihu.com/p/632809634

7、ControlNet核心基础知识,核心网络结构,从0到1使用ControlNet进行AI绘画,从0到1训练自己的ControlNet模型,从0到1上手构建ControlNet商业变现应用等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

ControlNet文章地址:https://zhuanlan.zhihu.com/p/660924126

8、LoRA系列模型核心原理,核心基础知识,从0到1使用LoRA模型进行AI绘画,从0到1上手训练自己的LoRA模型,LoRA变体模型介绍,优质LoRA推荐等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

LoRA文章地址:https://zhuanlan.zhihu.com/p/639229126

9、Transformer核心基础知识,核心网络结构,AIGC时代的Transformer新内涵,各AI领域Transformer的应用落地,Transformer未来发展趋势等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

Transformer文章地址:https://zhuanlan.zhihu.com/p/709874399

10、最全面的AIGC面经《手把手教你成为AIGC算法工程师,斩获AIGC算法offer!(2024年版)》文章正式发布!

码字不易,欢迎大家多多点赞:

AIGC面经文章地址:https://zhuanlan.zhihu.com/p/651076114

11、50万字大汇总《“三年面试五年模拟”之算法工程师的求职面试“独孤九剑”秘籍》文章正式发布!

码字不易,欢迎大家多多点赞:

算法工程师三年面试五年模拟文章地址:https://zhuanlan.zhihu.com/p/545374303

《三年面试五年模拟》github项目地址(希望大家能多多star):https://github.com/WeThinkIn/Interview-for-Algorithm-Engineer

12、Stable Diffusion WebUI、ComfyUI、Fooocus三大主流AI绘画框架核心知识,从0到1搭建AI绘画框架,从0到1使用AI绘画框架的保姆级教程,深入浅出介绍AI绘画框架的各模块功能,深入浅出介绍AI绘画框架的高阶用法等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

AI绘画框架文章地址:https://zhuanlan.zhihu.com/p/673439761

13、GAN网络核心基础知识,网络架构,GAN经典变体模型,经典应用场景,GAN在AIGC时代的商业应用等全维度解析文章正式发布!

码字不易,欢迎大家多多点赞:

GAN网络文章地址:https://zhuanlan.zhihu.com/p/663157306

14、其他

Rocky将YOLOv1-v7全系列大解析文章也制作成相应的pdf版本,大家可以关注公众号WeThinkIn,并在后台【精华干货】菜单或者回复关键词“YOLO” 进行取用。


WeThinkIn
Rocky相信人工智能,数据科学,商业逻辑,金融工具,终身成长,以及顺应时代的潮流会赋予我们超能力。
 最新文章