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

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

3天内不再提示

怎样才算成为一名合格的算法工程师

工程师人生 来源:网络整理 作者:工程师吴畏 2018-10-16 11:08 次阅读

一,Q&A部分:

1.一个特征分析的例子。。。(听不懂)

2. 还是一个机器学习的例子,(听不懂)大致,降低复杂度。

3. 传统算法合格的标准,Leetcode(简单,中等毫无压力,hard难度有一定时间思考可以解决)

4. Machine Learning算法基础,数学基础(统计学,微积分,线性代数,离散数学)

5. 数据挖掘相关的竞赛

ACM没太大帮助,仅仅针对传统算法, 针对数据挖掘的竞赛:Kagle, KDD数据挖掘)

6. 算法工程师需要博士么?

live主只有本科学历,和基础知识。

(硕士比较有必要 因为面试结果好于本科,也就是认可度较高)

7. 高维空间xxx相关的问题(还是听不懂)

8. 基础烂的人,如何学习算法?

(花时间去补基础,锻炼自己独立学习独立解决问题的能力)

9. 数据挖掘要学spark?

Live主认为python足够。

10. 合格的算法工程师需要的数学基础?

后续另外一个部分介绍

11. 怎样练习算法?指传统的算法和数据结构

1)以模块化形式 针对训练。例如学习图轮,相对于刷图论相关的题目

学习动态规划,刷动态规划相关的题目。

(根据模块学习和训练)

2)leetcode 随机刷题。自己想方案来解决

(根据实际问题选择算法解决问题)

12. 有一定高数基础和机器学习的基础概念,如何实际训练

Kaggle 和KDD 训练,

尝试写爬虫自己挖掘数据进行研究。

13. 应用数学/统计专业如何转型算法

1)学习写代码。例如python

2)稳固统计学,并学习机器学习相关的知识。

14. 数据挖掘工程师,有必要深入研究传统算法,例如算法导论么?

还是重点关注学习,统计等算法呢?

作者认为没有必要。

传统算法(算法导论)偏向系统工程方面。

数据挖掘便向统计方面。

15. 本科生非ACMER 需要什么程度才算算法合格?

作者前面说的Leetcode初级,中级无压力。高级题花时间能研究出来。

16. 算法工程师和数据 data scientist的区别

在中小企业是不做区分的。

很大的公司中会有区别。

例如算法工程师提供更底层的模块

数据挖掘工程师更偏向于业务。

17. 算法工程师的编程能力要达到什么水平?

如果不做系统级的开发对编程能力要求并不高。

系统开发,比如分布式计算,并行计算。对编程要求就高很多。

18. 传统数据结构和算法是否对于机器学习有必要?体现在什么地方?

类比参加高考的数理化训练。训练思维的方式,思考方式和基础。

传统数据结构算法接触大量计算机的解决问题的思维。

机器学习中会用到传统数据结构算法,例如图论,动态规划。

字典树,自动机等等。

---------------------------

二,正文大纲:

如何成为当下合格的算法工程师

1. 定义算法工程师

2. 所需内功和外公

3. 不可替代性和成长性

4. 如何快速成长

5. 算法岗面经

6. 量化合格的标准

1. 什么是算法工程师:

从个大招聘网站的算法岗JD开始

主流应用:音频视频,图,像数据挖掘,搜索

技术核心:机器学习

未来:人工智能

(live主认为机器学习未必是实现人工智能的唯一方式,

万一有人脑的API,那么机器学习热潮可能会退去)

live主分析了一份阿里的JD

涵盖了主流机器学习的应用和方向

C/C++要求。上手python java快。也能造轮子

(同时说明部门老大技术应该很牛,有可能上升的空间就较小)

分析一份百度的JD

C/C++要求,分布式计算,自然语言处理。JD描述看似简单

往往需要讲出自己非常牛的项目经历。

词云图:广告(DSP

java/C++/Python

数学

硕士

2. 内功和外功

1)内功

统计学

线性代数

微积分

算法和数据结构

机器学习模型

特征工程

自然语言处理

分布式计算

。..

2) 外功

C/C++/java

Pyton/R/Matlab

Hadoop/Hive

Spark/Mlib

/Mahout/Tensorflow/Caff

SASS/SPSS

Weka/Stat

MySQL/HBase/MongoDB

。..

live主认为高效的方法是先学会如何用,然后在学习如何用好。

也就是先学习外功,再慢慢弥补内功。

如果只专注内功而忽略外功,很容易成为理论家,而不会实际应用。

数学基础:

机器学习,统计学习符号,能够看懂技术书籍上的推导证明

参考学习路线图。

(1,2,3,4,5)完成5条路线可以胜任大部分的应用。

3. 算法工程师不可代替性

1)非增删改查开发接口等体力活

2)大脑价值大于代码价值

3)技术业务两手抓,容易成为项目核心

4)行业热点,不懂技术的老板也知道大数据重要

5)如何量化不可代替性,工作交接时间长

成长性高

待遇高,5年以后薪资成长迅猛

有机会接触到更多IT大牛

大多数ACM获奖的应届生选择算法岗位

挑战性极强,工作难度大

会随着大数据热潮变得抢手

4. 如何快速成长

1)从外功入手,兼顾内功修炼

《集体智慧编程》+《统计基本方法》

所见即所得,有实际反馈。

2)这是工科,不是理科,因此需要更多实际项目的训练

LeetCode + Kaggle

需要更多练习,接近实际的练习。

leetcode训练传统算法

Kaggle数据挖掘竞赛(特征工程,大于学习模型本身的重要性)

3) 训练自己快速阅读paper的能力

ICML NIPS AAAI CVPR等

机器学习相关的期刊的名称。

比如深度学习,可以通过期刊了解到新等模型体系,可以有针对性的做一些学习。

5.算法岗面经

C/C++

1.白板编程:反转二叉树,单链表中删除特定值的节点。

2.Vector空间的增长方式,容器是否线程安全,map的时间空间复杂度,allocator原理,string内存分配。

3.父类和子类中构造函数以及析构函数调用顺序

4.引用和指针的区别,右值引用的特点以及应用场景(移动构造函数),性能提升原因

5.解释深拷贝和浅拷贝并说明应用场景 (自定义拷贝构造函数)

6.C++的优势与劣势,如何看待C++中繁多的特性

C++11 和C++14标准

算法与数据结构

1. 分治,快排思想:求第k大数(中位数)

2. 堆,优先队列:找出出现最多的top100个值

3. 动态规划:数字金字塔,求两个字符串的编辑举例,最长不下降子序列

4. 并查集:求好友圈个数,注意路径压缩优化

5. 线段树,树状数组: 区间更新和查询

6. KMP,AC自动机:海量字符串检索比较

Python

1. 数据分析:numpy,scipy,sklearn, pandas, matplotlib

2. 爬虫: requests, urllib, scrpay, beautifulsoup, selenium, 中文编码

3. 白板编程:重新实现filter, map, reduce, 反转二叉树

4. Python的优势与劣势,分析为何GIL带来影响。如何解决

如果是初入门可以看廖雪峰的博客进行学习,否则看官方文档。

统计学:

1. 量化统计模型结果好坏(准确,召回,ROC,AUC, F1-Measure)

2. 样本于理论推测的偏差:卡方检验 X^2 = sigma ((A-T)^2/T)

3. 比较两个变量波动性 变异系数 CV = sigma(x) / E(x) = STD(x) / AVG(x)

4. 正态分布N(u, keshi^2) 如何检验正态分布

阅读课本。

数据挖掘:

1. 介绍Logistics Regression, Random Forest, GBDT并分析其优缺点

2. 阐述L1和L2正则项并做比较

3. 如何解决推荐系统冷启动问题

*4. 特征工程:可用性评估,采样,无量纲化, PCA/LDA, 衍生变量

5. 各个模型的损失函,数牛顿学习法,SGD如何训练

6. 如何生产标签并构造用户画像(word2vec, kmeans, LDA, TF-IDF)

【live主认为特征工程是最重要的】

量化合格标准

语言:C++/Java/Python

能使用擅长的语言造轮子,写爬虫,数据分析和挖掘

算法和数据结构:以独立完成Leetcode为佳

(poj, zoj训练)

统计:熟悉基本统计方,法要有自己完整的统计体系。

指标分析-》提出猜想-》验证-》结论-》模型

机器学习:熟悉常见模型和特征工程方法

同样要有自己完整的特征工程体系,对模型优劣有基础认识,

以纯手工实现逻辑回归为佳

一些学习资料

美团点评技术 - 《机器学习中的数据清洗与特征处理综述》 http://tech.meituan.com/machinelearning-data-feature-process.html

使 sklearn做特征 程 http://blog.csdn.net/xw_classmate/article/details/51331787

Max Kuhn / Kjell Johnson - Applied Predictive Modeling

Trevor Hastie / Robert Tibshirani / Jerome Friedman - Elements of Statistical Learning

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

    关注

    59

    文章

    1553

    浏览量

    67492
  • 算法
    +关注

    关注

    23

    文章

    4451

    浏览量

    90742
收藏 人收藏

    评论

    相关推荐

    个电源工程师的成长路径

    即将走马上任电源工程师这个岗位,请问各位大佬,这个岗位的职业路径般是怎样的?
    发表于 04-08 14:19

    如何成为一名嵌入式C语言高手?

    如何成为一名嵌入式C语言高手? 嵌入式系统是当今科技领域的核心,而C语言则是嵌入式系统开发中最常用的编程语言之成为一名嵌入式C语言高手
    发表于 04-07 16:03

    如何成为一名嵌入式C语言高手?

    如何成为一名嵌入式C语言高手? 嵌入式系统是当今科技领域的核心,而C语言则是嵌入式系统开发中最常用的编程语言之成为一名嵌入式C语言高手
    发表于 03-25 14:12

    单片机如何通过代码控制硬件:一名工程师的分享

    今天跟大家聊聊单片机是怎样通过代码来操控硬件的。作为一名单片机工程师,我们平时的工作就像是给单片机编写“指令集”,让它按照我们的意图去驱动各种硬件设备。
    的头像 发表于 03-06 14:46 480次阅读
    单片机如何通过代码控制硬件:<b class='flag-5'>一名</b><b class='flag-5'>工程师</b>的分享

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

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

    优秀电源工程师需要哪些必备技能?

    就带大家细数下优秀电源工程师具备的那些技能。、新手必备课程成为一名电源高手需要扎实的理论基础,涉及电路原理、语言编程和控制理论等多个学科
    发表于 01-29 11:29

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

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

    如何成为一名优秀的嵌入式工程师

    如何成为一名优秀的嵌入式工程师?嵌入式学习的第步,首先是C语言。 1.理解内存管理:C语言不同于高级语言,它不会自动管理内存。因此,你需要理解并掌握如何使用malloc()、fre
    发表于 11-07 15:36

    【社区之星】彭仲维:扎实的基本功与时间的沉淀才是工程师成功的关键!

    入了电子行业。 社区小助手:作为一名从业多年的工程师,能否分享你的工作经历和些比较成功的工程项目或优秀作品?开发这个产品的整个过程,有什么记忆深刻的经历吗? 彭仲维老师:
    发表于 10-13 14:15

    #FPGA 本科生也能成为FPGA研发工程师

    fpga工程师
    明德扬助教小易老师
    发布于 :2023年09月23日 08:05:36

    电源工程师常用的几个典型电路分享

    具有电源知识水平的工程师来完成设计和开发。作为一名合格的电源工程师平时工作经验的积累很重要,但同时也应该提高理论水平,通过积累几个常用的电源电路,说不定下次就能用上,还是学习吧!
    发表于 09-20 07:59

    一名硬件工程师都具备哪些技能?

    芯片嵌入式物联网STM32
    学习电子知识
    发布于 :2023年08月02日 12:54:00

    一名合格的嵌入式硬件工程师需要具备哪些条件?

    芯片嵌入式物联网STM32
    学习电子知识
    发布于 :2023年08月02日 12:53:34

    热门推荐:硬件工程师必备工具

    硬件开发的工作流程般可分为:原理图设计、PCB Layout设计、采购电子BOM、PCB板生产、PCBA组装、功能调试及测试、小批量试产、大批量生产正式投放市场等步骤。 作为一名优秀的硬件工程师
    发表于 06-21 10:15

    礼赞五一 | 平凡的岗位,不平凡的坚守!致敬每个努力奋斗的电子工程师!

    获奖名单如下:电子工程师高赞礼品第一名:陈旭新第二:郭海聪 第三:陈运华 劳动节盖楼奖郭海聪 郭祥峰
    发表于 04-28 10:08