范文无忧网学习方法学习技巧

从小白到机器学习算法工程师我做了哪些准备

01月17日 编辑 fanwen51.com

[零基础学习机器人制作需要什么准备]我所知道的能够提供给你的教材有04年北航翻译的美国的(机器人制作入门篇和机器人制作提高篇),08年四川大学出版社的(简易机器人制作)和09年机械工业出版社的(机器人制作)材料和配件...+阅读

机器学习方面的面试主要分成三个部分: 1. 算法和理论基础 2. 工程实现能力与编码水平 3. 业务理解和思考深度 1. 理论方面,我推荐最经典的一本书《统计学习方法》,这书可能不是最全的,但是讲得最精髓,薄薄一本,适合面试前突击准备。 我认为一些要点是: 统计学习的核心步骤:模型、策略、算法,你应当对logistic、SVM、决策树、KNN及各种聚类方法有深刻的理解。

能够随手写出这些算法的核心递归步的伪代码以及他们优化的函数表达式和对偶问题形式。 非统计学习我不太懂,做过复杂网络,但是这个比较深,面试可能很难考到。 数学知识方面,你应当深刻理解矩阵的各种变换,尤其是特征值相关的知识。 算法方面:你应当深刻理解常用的优化方法:梯度下降、牛顿法、各种随机搜索算法(基因、蚁群等等),深刻理解的意思是你要知道梯度下降是用平面来逼近局部,牛顿法是用曲面逼近局部等等。

2. 工程实现能力与编码水平 机器学习从工程实现一般来讲都是某种数据结构上的搜索问题。 你应当深刻理解在1中列出的各种算法对应应该采用的数据结构和对应的搜索方法。比如KNN对应的KD树、如何给图结构设计数据结构?如何将算法map-red化等等。 一般来说要么你会写C,而且会用MPI,要么你懂Hadoop,工程上基本都是在这两个平台实现。

实在不济你也学个python吧。 3. 非常令人失望地告诉你尽管机器学习主要会考察1和2 但是实际工作中,算法的先进性对真正业务结果的影响,大概不到30%。当然算法必须要足够快,离线算法最好能在4小时内完成,实时算法我没搞过,要求大概更高。 机器学习大多数场景是搜索、广告、垃圾过滤、安全、推荐系统等等。对业务有深刻的理解对你做出来的系统的结果影响超过70%。

这里你没做过实际的项目,是完全不可能有任何体会的,我做过一个推荐系统,没有什么算法上的高大上的改进,主要是业务逻辑的创新,直接就提高了很明显的一个CTR(具体数目不太方便透露,总之很明显就是了)。如果你做过实际的项目,一定要主动说出来,主动让面试官知道,这才是最大最大的加分项目。 最后举个例子,阿里内部机器学习挑战赛,无数碾压答主10000倍的大神参赛。

最后冠军没有用任何高大上的算法而是基于对数据和业务的深刻理解和极其细致的特征调优利用非常基本的一个算法夺冠。所以啥都不如真正的实操撸几个生产项目啊。

延伸阅读:

MATLAB实现LMS学习算法clc; clear all; load msesample; n1=length(x1); n2=length(x2); x=[x1;x2]; e=ones(length(x),1); y=[e x]; b=e; %b=rand(length(x),1); yita=1; eps=0.01; yy=inv(y'*y)...

多道处理作业的作业调度算法:采用基于先来先服务的调度算法这个是JAVA版 import java.util.ArrayList; import java.util.List; public class Question { // 调度总站 class DiaoDuZhan{ private List<Client> list; public Client g...

算法作业求两个不等长有序数组的中位数这个比较不好讲清楚,先假设 A 和 B 都是升序的。这个问题的关键在于给定 k,怎样找到 A 和 B 合并后的第 k 大元素。我们可以这样做:1. 把 A 平均分为前后两个部分,前部分有 x 个...

如何编写易被复用的高质量的机器学习算法代码SVM方面,首选的肯定是LIBSVM这个库,应该是应用最广的机器学习库了。 下面主要推荐一些DeepLearning的GitHub项目吧! 1. convnetjs - Star:2200+ 实现了卷积神经网络,可以用来做...

如何利用python语言实现机器学习算法基于以下三个原因,我们选择Python作为实现机器学习算法的编程语言: (一) Python的语法清晰; (二) 易于操作纯文本文件; (三) 使用广泛,存在大量的开发文档。 可执行伪代码 Python具有清...

机器学习中的主动学习算法有什么楼主肯定对机器学习了解不多才会提这种问题。这问题专业程度看起来和“机器学习工程师”这词汇一样。 机器学习,基础的pca模型理论,贝叶斯,boost,adaboost, 模式识别中的各种特...

怎么用机器学习算法分析一个突然很火的商铺学习机器学习十大算法,相当于电脑的中级水平。 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也...

有哪些简单易懂的用到机器学习算法的matlab代码说实话我对matlab的了解也主要基于一些基本的内容。matlab应用很广,所以我们只需能用一部分,满足我们的需要就可以了。 其实不管什么语言,最重要是编程习惯,这样学会一种后,接触...

初学者如何选择合适的机器学习算法算法如何为分类问题选择合适的机器学习算法 若要达到一定的准确率,需要尝试各种各样的分类器,并通过交叉验证选择最好的一个。但是,如果你只是为你的问题寻找一个“足够好”的算法...

推荐阅读
图文推荐
栏目列表