国内排名前20%人工智能大年夜厂经典面试题总结(含谜底和资料)_面试_数据
一、基本操作
1.你会在韶光序列数据集上利用什么交叉验证技能?是用k倍或LOOCV?
都不是。对付韶光序列问题,k倍可能会很麻烦,由于第4年或第5年的一些模式有可能跟第3年的不同,而对数据集的重复采样会将分离这些趋势,而我们终极可能只是须要对过去几年的进行验证,这就不能用这种方法了。相反,我们可以采取如下所示的5倍正向链接策略:
fold 1 : training [1], test [2]
fold 2 : training [1 2], test [3]
fold 3 : training [1 2 3], test [4]
fold 4 : training [1 2 3 4], test [5]
fold 5 : training [1 2 3 4 5], test [6]
1,2,3,4,5,6代表的是年份。
2.你是怎么理解偏差方差的平衡的?
从数学的角度来看,任何模型涌现的偏差可以分为三个部分。以下是这三个部分:
偏差偏差在量化均匀水平之上,预测值跟实际值相差多远时有用。高偏差偏差意味着我们的模型表现不太好,由于没有抓到主要的趋势。而另一方面,方差量化了在同一个不雅观察上进行的预测是如何彼此不同的。高方差模型会过度拟合你的演习集,而在演习集以外的数据上表现很差。
3.给你一个数据集,这个数据集有缺失落值,且这些缺失落值分布在离中值有1个标准偏差的范围内。百分之多少的数据不会受到影响?为什么?
约有32%的数据将不受缺失落值的影响。由于,由于数据分布在中位数附近,让我们先假设这是一个正态分布。我们知道,在一个正态分布中,约有68%的数据位于跟均匀数(或众数、中位数)1个标准差范围内,那么剩下的约32%的数据是不受影响的。因此,约有32%的数据将不受缺失落值的影响。
4.真阳性率和召回有什么关系?写出方程式。
真阳性率=召回。它们有相同的公式(TP / TP + FN)。
二、项目实战
1.给你一个有1000列和1百万行的演习数据集,这个数据集是基于分类问题的。经理哀求你来降落该数据集的维度以减少模型打算韶光,但你的机器内存有限。你会怎么做?(你可以自由做各种实际操作假设。)
你的口试官该当非常理解很难在有限的内存上处理高维的数据。以下是你可以利用的处理方法:
由于我们的RAM很小,首先要关闭机器上正在运行的其他程序,包括网页浏览器等,以确保大部分内存可以利用。
我们可以随机采样数据集。这意味着,我们可以创建一个较小的数据集,比如有1000个变量和30万行,然后做打算。
为了降落维度,我们可以把数值变量和分类变量分开,同时删掉干系联的变量。对付数值变量,我们将利用干系性剖析;对付分类变量,我们可以用卡方考验。
其余,我们还可以利用PCA(主身分剖析),并挑选可以阐明在数据集中有最大偏差的身分。
利用在线学习算法,如VowpalWabbit(在Python中可用)是一个不错的选择。
利用Stochastic GradientDescent(随机梯度低落法)建立线性模型也很有帮助。
我们也可以用我们对业务的理解来估计各预测变量对相应变量的影响的大小。但是,这是一个主不雅观的方法,如果没有找出有用的预测变量可能会导致信息的显著丢失。
2.如何确定 LDA (隐狄利克雷模型) 中主题的个数
在LDA中,主题的个数K 是一个预先指定的超参数。对付模型超参数的选择,实践中的做法一样平常是将全部数据集分成演习集、验证集、和测试集3 部分,然后利用验证集对超参数进行选择。例如,在确定LDA 的主题个数时,我们可以随机选取60% 的文档组成演习集,其余20% 的文档组成验证集,剩下20% 的文档组成测试集。在演习时,考试测验多组超参数的取值,并在验证集上考验哪一组超参数所对应的模型取得了最好的效果。终极,在验证集上效果最好的一组超参数和其对应的模型将当选定,并在测试集上进行测试。
为了衡量LDA 模型在验证集和测试集上的效果,须要探求一个得当的评估指标。一个常用的评估指标是困惑度(perplexity)。在文档凑集D 上,模型的困惑度被定义为
个中 M 为文档的总数,wd 为文档 d 中单词所组成的词袋向量,p(wd) 为模型所预测的文档d 的天生概率,Nd 为文档d 中单词的总数。
一开始,随着主题个数的增多,模型在演习集和验证集的困惑度呈低落趋势,但是当主题数目足够大的时候,会涌现过拟合,导致困惑度指标在演习集上连续低落但在验证集上反而增长。这时,可以取验证集的困惑度极小值点所对应的主题个数作为超参数。在实践中,困惑度的极小值点可能涌如今主题数目非常大的时候,然而实际运用并不能承受如此大的主题数目,这时就须要在实际运用中合理的主题数目范围内进行选择,比如选择合理范围内困惑度的低落明显变慢(拐点)的时候。
其余一种方法是在LDA 根本之上融入分层狄利克雷过程(Hierarchical Dirichlet Process,HDP),构成一种非参数主题模型HDP-LDA。非参数主题模型的好处是不须要预先指定主题的个数,模型可以随着文档数目的变革而自动对主题个数进行调度;它的缺陷是在LDA 根本上融入HDP 之后使得全体概率图模型更加繁芜,演习速率也更加缓慢,因此在实际运用中还是常常采取第一种方法确定得当的主题数目。
下面是
三、口试技巧才是王道1. 如何在口试中引起把稳
诚笃说,这一步最主要。让社会招聘变得如此困难和怠倦的缘故原由是如何让招聘职员在收到的浩瀚申请中仔细查看你的个人资料。与公司内部职员建立联系可以让你很随意马虎地得到推举,但一样平常而言,这一步可细分为三个关键步骤:
1)做好监管准备:即准备好领英档案、Github 档案、个人网站以及一份精心打造的简历等材料。首先,你的简历该当非常整洁和精髓精辟,由于口试官会通过你的简历来理解你,并且会根据简历提出面试问题,以是简历尤为主要!
2)这个要点是你的 GitHub 资料。很多人仅仅由于它不像 LinkedIn 那样具备「谁看过你的资料」选项,而低估了它的主要性。人们真的会看你的 GitHub,由于这是验证你 CV 中提及项目的唯一办法,鉴于人们现在在自己的职业资料中添加了很多与各种盛行词干系的噪声。尤其是对付数据科学来说,开源意味着把利用的很多工具、实现的不同算法、各种学习资源都开放出来了。
3)这是大部分人短缺的,即在招聘网站上展示自己的经历和个人项目。制作个人职业资料表示你非常严明地考虑进入某领域,在真实性上加了很多分。此外,履历(CV)常日会有空间限定,可能会缺失落一些主要细节。你可以在个人职业资料中深入先容这些细节,推举对项目/思路进行某种形式的可视化或其他展示。创建一份职业资料非常大略,有很多免费平台,通过拖放功能就可以实现这一过程。我个人利用 Weebly,这是个广泛利用的工具。
2.如何赢得口试
很多同学在口试的时候会非常紧张,以至于将事先的口试准备忘的一干二净,这便是口试的时候心态没有摆好,你要知道,只管对付你来说口试官是陌生人,但对付他/她来说你也是陌生人。以是他们可能和你一样紧张。
把口试看作是你和口试官之间的对话,这点非常主要。你们俩都在探求对双方都有利的结果(mutual fit)——你在探求一个精良的事情场所,而口试官在探求一个精良的共事者(比如你)。以是,确保你对自己觉得良好,同时担保对话的开场令人愉悦。要做到这一点,最大略的方法便是微笑。
口试紧张有两种类型——一种是口试官带着准备好的问题来口试,不管你的个人资料如何,他/她都会问你这些问题,这种情形下便是公司已经确定须要什么样的人,但是他在看到你的简历描述之后给了你口试机会,解释是对你的项目履历很满意的,以是只要将他的问题结合到项目进行阐述,解释自己的项目上风就行了
另一种口试基于你的简历,常日情形下这种口试官他的技能秘闻可能还不如你,你只须要吧他问你的东西详细的描述给他听,确保他能懂的话,基本上就能征服他了。
末了
当然,口试是存在一些技巧,但是那些技巧仅限于如何更好的展示自己的优点,而不是学会如何欺骗口试官。千万不要听一些培训机构说的去唬口试官,这是很蠢的。哪怕你唬住了,后面你还得事情,弗成的话还是得被辞退,而且会被这个公司列为黑名单,并且公司的互助单位也会收到你的干系信息,人工智能圈子就这么大以是不要自误。
本文系作者个人观点,不代表本站立场,转载请注明出处!