【面试相关】非计算机专业如何1年内自学拿到算法offer
之前写过一个实习面经,感兴趣的可以看一下计算机视觉暑期实习面经_笔经面经_牛客网 (nowcoder.com)
对于一个完全不懂的计算机视觉领域,并且没有师兄师姐指导的情况下,必然走过很多歪路,这里我想先记录一下做过的一些事情,最后给出资料推荐和心得。
01
心路历程
第一步,买书和逛知乎。刚接触计算机视觉的时候,啥都不懂,然后就喜欢在知乎上看别人写文章(前两年分享的质量要好很多,现在有点下降了),然后就是必踩的坑,买书
上面是部分书,买了很多书(emmmm, 可能是喜欢收藏吧),但是我看过的基本上只有统计学习方法,hhhhh
买书是错误示范,不推荐买大部头书籍,合理做法看资料推荐部分,逛知乎还是不错的。
第二步,看论文和写笔记。然后就是看论文,以目标检测为例,首先推荐一个综述Object Detection in 20 Years: A Survey,按照时间顺序,先找到关键文章,其他文章都是这些文章的修修补补,roadmap传统目标检测DPM -> Two-stage:RCNN、Fast R-CNN、Faster R-CNN、Mask R-CNN -> One-Stage:YOLOv1&v2&v3、SSD、RetinaNet -> Anchor-Free:CornerNet、FCOS、CenterNet -> Transformer:DETR,看完文章还不够,好文章适当写一下笔记,锻炼自己写文字和归纳总结的能力,最好找到对应的code进行理解实践。
第三步,打比赛。有了大量的知识积累,就可以去实践了,实验室的项目看运气,可能碰不到好项目,不能坐以待毙,打比赛是一个比较好的选择,从实践中才能更好的体会算法的适用范围和真实数据如何处理的。我之前在天池也就拿了个第8名还有个36名吧,学到什么更关键,至少面试的时候有东西说。
第四步,刷题和找实习。有了上述的知识储备和实践经验,就要刷一下简历了。算法coding必不可少,面试必考,如果没有基础,推荐先看剑指offer,上面对常见题型做了总结。面试的时候对自己简历上的东西一定要清楚,简历上都不会,你完了,多面试多总结,查漏补缺。
有了上述的积累,拿算法offer是水到渠成的事情。
02
资料推荐
不推荐买大部头书籍,一般大部头买来都扔书架上吃灰了(都看完的算你nb),最实用的还是一些工具的document。实际场景,一般是遇到问题,查阅,遇到问题,查阅的循环过程,光啃书不实践,记不住啊,还体会不到乐趣,消磨积极性。
以下罗列一下常用document和网站,少而精才是有效推荐
竞赛
kaggle、阿里天池
coding
推荐剑指offer,可以更快的掌握coding技巧
另外就是coding的刷题网站,推荐leetcode,题目多且全,推荐先刷力扣 (leetcode-cn.com)
document
编程工具:Python、PyTorch、OpenCV
代码库
图像分类:pytorch-image-models 基本上涵盖所有主流网络
目标检测: MMDetection、Detectron2 这两个都是优秀的代码库,值得学习借鉴
查阅各个领域的最新进展,可以查阅这个网站,会记录一些sota的paper和code链接:paper-with-code
学习视频只推荐三个
机器学习:李宏毅机器学习 (打包到Smarter了) 上课太有趣了
计算机视觉:李飞飞cs231n (打包到Smarter了)
经典paper解析:AI百篇经典论文
如果非要买书,机器学习可以买一些书籍,比如统计学习方法、西瓜书
《机器学习》俗称西瓜书,图例多容易理解,缺点较厚实,推理过程不详细。
《统计学习方法》比起西瓜书,更干,推理详尽,篇幅少,但是图例少不容易理解。
从实用主义出发,以上入门完全够用了,对深度学习和计算机视觉有了一些了解,后面就可以自己愉快的玩耍了。
03
心得
1.geek是必须的,想要跨专业必须付出更多。
2.当然也要劳逸结合,多运动,健康更重要。
3.不要假装努力学习,到底懂不懂,有没有学会,自己心里比谁都清楚。
4.焦虑是因为实力不配,对未知的恐惧,不断输入才能更自信。
5.心态要好,你能决定的只有很小一部分,但依然要相信人定胜天。
6.精准的内推资源很重要,可以减少很多搜集信息的时间(比如找我,我有各种计算机视觉岗位的内推信息)。
往期精彩回顾
本站qq群851320808,加入微信群请扫码: