Machine Learning Breadth Interview

机器学习 广度面试

ML广度面试

Machine Learning的面试相对于普通的软件工程师岗位相比有一点点的不一样:形式上会更多采用case study的方式;目的上会更侧重于考察候选人在ML领域的知识、技能和运用能力。这一篇我们重点来看一下ML的广度面试,以及如何更好地准备。

何为广度面试?

考察候选人的知识储备量,面对同一个问题,是否有不同的方法来应对不同的情况、场景,以及它们的trade off,nuance。例子:我们都知道Embedding Vector在很多场景下都非常有用,那么你是否能给出2~3个方法来生成Embedding Vector?它们的区别如何?你会怎么选择?

在广度面试(或者广度面试题)中,面试官会经常问“还有呢”,“如果这样..那么你会?“,“它们有什么不同?”“让你选择一个你会考虑哪些方面?”等等问题。

如何准备ML广度面试?

  1. 锻炼发散性思维,多角度分析问题 很多时候不同的思考角度会自然而然地lead到不同的解决方案。
  2. 多想,多储备 拿上文的例子来说,embedding vector究竟是什么?有什么用?如何才能得到?单独训练一个embedding模型或者在同一个模型中训练有何区别?
  3. 在平时遇到任何一个task中的每一个环节,问问自己,还可以怎么做?

这些考察点在真实工作中有哪些运用?

Latency 要求是否严格对应feature的选择、模型架构设计;
是否有定义完善的线下metric对应不同的evaluation方式;
高/低维度特征对应的特种工程的不同方式;
真实数据的漂移对应的模型迭代方式;