第一次工作面试(蘑菇街)
前天投了蘑菇街数据挖掘实习工程师;
昨天下午参加了蘑菇街实习生笔试;
============================
选择题:基础知识
简答题:数据结构中的算法
1、二叉树的任意两节点的公共父节点。
(开始想递归,划掉了。然后想循环,又划掉了。最后默默的写上了逐个遍历,囧)
2、软件项目管理中的那种图,结点是:事务+时间,有先后,要求找项目最短需要多久时间?
(软件项目管理里边做过这种题目,突然遇到这种题,还是写不出公式。数据结构写的邻接矩阵,算法没写。感觉像拓扑排序,但是自己又不知道拓扑排序要怎么做,也就没写。)
附加题:
1、根据一些数据,设计一个推荐系统。(之前看过《推荐系统实践》,还是起了点作用。)
2、无监督机器学习算法,优缺点?(完全想不起来。写了个NN,交卷时候被告知,NN是有监督的,囧)
============================
昨天晚上收到面试通知;
今天去华科参加面试;
以前没有过面试的经验,于是啥都没准备。
面试之前设想的样子是面试官问一句我答一句,轻松浪漫加愉快。不过这也是白日做梦,都没准备,怎么能轻松愉快呢。
刚到那里,正好一个面试官闲着,然后就开始了。
============(我把面试过程中存在改进余地的地方用红字标识了。)============
面试官:介绍下自己吧。
我想了想,不知道要怎么介绍自己,问:怎么介绍啊?
面试官:说说你做过什么。
我瞄了一眼面试官手里的简历(貌似我手里也应该也拿一份):本科的还需要么?
面试官:可以啊。
我:那从大一开始介绍吧。(然后开口就说了大一在记者团工作过,马上心里想,说这个管啥用啊,然后就把大一大二在学生会工作的事用两句话说完了,引到我做的事情上来)大三做过一个大学生科技创新基金项目,发表一篇中文核心论文《结果可控树突状细胞算法》(只记得项目名字和成果,具体细节忘记了,应该把当初的资料拿出来翻翻,这样也有的说)。参加过一个全国程序设计竞赛第六届ITAT,获得全国一等奖,这个竞赛档次比较low,自己获奖也是运气好,自己对算法其实不怎么了解,也就是当初靠兴趣看过一点,只是了解,并不精通。。(不该实话实说啊(/ □ \),应该吹吹这个比赛有1500人参加,有20个一等奖。)
本科的基本没啥了,然后开始介绍研究生期间的。
我:保研之后就一直和导师做科研,做事件抽取方面的。
面试官(面试官遇到感兴趣的内容会打断你的介绍,前面没有怎么打断我,说明他不怎么感兴趣或者说是我介绍的太浅了不够提起他的兴趣):这个我知道,事件提取。
我:我们做的事件抽取和ACE、TAC那些评测会议做的还存在一些差别,它们都是事件类型相关的(这里还可以说一下我看过的论文中用到的哪些方法,吹吹自己看过多少文章,可是忘记说了),我们做的是事件类型无关的,感觉和知识图谱、语义网差不多(提到了KG和Semantic web这两个概念,但是没有进一步说,可以进一步说清楚一点,为什么差不多。)投了一篇会议文章,被武汉大学学报录用了,会议的文章在中文信息学报、武汉大学学报、东南大学学报发表,自己文章水平不够中文信息学报的,只能在武大学报发表。(貌似又说实话了。。。囧)
面试官:武大学报应该还不错(面试官不会是武大的吧。。。囧)。
我:文章里边用的方法其实不怎么高大上,当时本科刚保研,会的方法也不多,N元模型对我来说都很高大上,方法的开始主要用共现概率,后边就用规则的方法来进行事件抽取。我们方法中有一个很大的不足就是把高概率当作了100%。(妈蛋,又说实话了。。。囧)
面试官:哦,你做的东西都是用规则,是吧?
我一听这话,感觉被鄙视了,然后赶紧说:前段时间导师让我准备给ACL投一篇文章,当时用了半个月的时间熟悉HMM,改进HMM,写论文初稿。改进HMM主要是两个方面,一个是二阶HMM,二阶的就是在一阶的基础上扩展。
面试官:二阶就是bi-gram,是吧?
我:不是,二阶的是tri-gram,一阶的是bi-gram(这点感觉还不错~哈哈)。
面试官:对对对。
我:一个是二维HMM,开始找HMM,找了一个J4HMM,但是不能直接用。
面试官:为什么?
我:网上那些直接找到的,都是传统原始的HMM,要想改进,就要自己写代码。而且训练的时候不能用BW算法。
面试官:ME算法?
我:Baum-Welch算法。
面试官:哦。
我:直接用这个算法,不适合我们处理的问题。(但是当时忘了问什么不适合,幸好面试官也没有问。。。)。就用那个什么最大算法。
面试官:最大似然估计。
我:对,最大似然估计。
面试官:就是我刚才说的ME。(我刚查了查,是MLE。。。囧,我记得是三个字母吗,差点被他骗了。)你知道ME算法背后的原理吗?
我:最大似然估计不就是一个公式吗,代码写起来也不难,照葫芦画瓢呗(这个比喻还行吧。。。体现了我深厚的文学功底),以前概率课上讲的,我也不知道背后啥原理。(囧,当时我就蒙逼了。。。看来数学还是有用的。)
面试官:哦,好,我知道了。
我:后边的Viterbi算法也要自己写代码。
面试官:事件的不同成分,在句子中的距离可能会比较远,你的二阶HMM也只是tri-gram,怎么保证能抽取出来呢?(这个问题要问的是啥?当时有点没弄明白。于是出现了下面的回答。。。囧)
我:就和N元模型,一般只用三元模型一样,一方面是训练数据不够多,再多元的话,训练不出健壮的模型,没意义。另一方面是再多元的话,硬件要求也会比较高。(答的什么玩意儿啊。。。完全答非所问。纠其原因,还是没有回顾一下自己做的东西,对于一些细节已经忘了,以至于没有搞明白面试官在问啥。)
面试官:我不是问这个,我是问。。。(把问题又说了一遍)。
我:。。。(忘了回答的什么了,反正又是答非所问了)
面试官:哦(估计面试官放弃这个问题了。囧)。这就是你做的,是吧?
我:这个只是统计模型,现在不是都统计与规则相结合吗,我在统计模型之后,还用K-means算法对错误实例进行聚类,得出一系列纠错规则。
面试官:怎么聚类的?
我:一个事件成分,提取它周围的特征,让后利用这些特征,计算距离,进行聚类。(感觉说的好烂。。。完全没有说清楚。。。还是把自己做的东西的细节忘记了。)
面试官:cos距离?欧式距离?
我当时想了半天用的啥距离都没想起来,想了想公式的样子,说:欧氏距离。这些距离不都是一个简单的公式吗,说的很高大上的样子。
面试官:是。
我:我做的这个就是前边用统计模型,后边用规则进行纠错的方法。
面试官:嗯,可以。你看你有什么问题吗?
我:。。。(沉默一会儿,因为我真不知道问啥。),我没啥问题,你跟我说说呗。(我在本科班级群里说了这个之后,祥子说,你应该问一些问题,否则面试官会觉得你来这个公司的意愿不是很强烈。万老板说知乎上看到过这个,应该问问这个职位在公司的发展之类的。。。。。囧,我还真不知道有这回事。)
面试官:我也没啥问题了。那就这样吧,你回去等我们通知吧。
======================30分钟的面试就这么结束了===================
出来之后,和ZZH聊了会,从他那得知,ZYW过了一面,在进行二面。这才知道,你回去等我们通知吧=你的一面挂了,走好不送。
然后在万老板的带领下,逛了逛华科,去华科的百景园食堂蹭了顿饭(才让万老板破费30多元。。。囧),还挺好吃的。聊了聊华科、聊了聊武科大,自己默默对比了一下,一句话,说多了都是泪。
饭后踏上返校的公交,第一次在公交上睡着了,还好是终点站(囧),睡醒之后,转车回到了学校,that’s all.
=======================================================
后来想了想,在自我介绍的过程中,没有提到简历中几个我参与的项目经验(可以多扯点),对本科自己动手做的东西也没有说(至少能体现一点动手能力吧)。
总之,就是面试之前应该好好准备准备,至少对自己做过的东西也应该比较清楚。
这就是第一次面试的经验,其他形式的面试也没经历过。
![字节跳动内推](https://img2020.cnblogs.com/blog/323808/202004/323808-20200415172728571-1992447742.jpg)
找我内推: 字节跳动各种岗位
作者:
ZH奶酪(张贺)
邮箱:
cheesezh@qq.com
出处:
http://www.cnblogs.com/CheeseZH/
*
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。