2017年网易游戏数据挖掘/机器学习实习生笔试回忆

2017年网易游戏数据挖掘/机器学习实习生笔试回忆

笔试题回忆 7道简答+1道编程

  1. 大意是已知: 1. 机器良好情况下产品合格的概率;2. 机器非良好情况下产品合格的概率;3. 机器调整良好的概率。 求: 产品合格时机器良好的概率。

    思路:一道利用贝叶斯公式和全概率公式求解的概率题,只要套用公式,不是很难

  2. 有一枚密度不均匀的硬币,设计一种方法,使得可以等概率随机产生1到3之间的整数。

    思路:

    1. 可以运用编码的方法,有1到3有三个整数,设置抛掷硬币三次,每次正面朝上为1,反面朝上为0; 则三次的结果 001表示1,010表示2,100表示3,等概率产生
      比较麻烦的方法: 实验若干次,估计得到正面朝上和反面朝上的概率,然后利用n重伯努利分布公式,计算P(Xk)=13P(Xh)=13中的k和h,然后抛掷n次,正面朝上小于等于k产生1,大于k小于h产生2,大于等于h产生3.
      有类似的题目,比如一个可以等概率随机产生1到m的random(),如何等概率随机产生1到n(n不等于m),也是采用编码的方式
  3. 简述贝叶斯公式,并且叙述朴素贝叶斯分类器的原理和步骤。

    虽然是学习过的知识,但真让总结写出来的时候,想写好,并不是容易的事

  4. 大意是,已知用户的一些profile(如性别、年龄、喜好等),已知某个人观看了一个视频,选择具有相似的profile的人,向该人也推荐此视频。 请简要叙述此种算法的优缺点。

    这是一道推荐算法的题,是基于用户内容的推荐算法。

  5. 大意是: 有A抽奖活动和B抽奖活动,A活动可得到a碎片,B活动可以得到b碎片。 每个人可以独立反复的参加A活动和B活动,无次数限制,但不同人之间的碎片不能交换。 同一个人,5个a碎片可以换一个b碎片,50个a碎片加10个b碎片可以换一个节日礼物。 现在有活动当天统计的两张表格,t1是A活动的记录表,有三列:user_id,finished_time, num; 分别表示参加人的id, 完成的时间和得到的a碎片数。 t2是B活动的记录表,和t1类似。活动仅限节日当天有效。 请使用sql语言,得到活动当天产生的最多的节日礼物数。

    这是一道考察sql语言的题,但不仅仅考察sql语言,其中还有求礼物最大化的算法,用sql语言挺麻烦的

  6. 一道根据用户浏览视频网站的记录,给用户打标签的题,要求写出算法设计思路和步骤,核心算法还要求用伪代码写出。

    这道题比较长,题目很绕

  7. 现在需要从1000万用户中挑选10万用户来进行广告投放,可以得到这1000万用户的视频观看信息(观看类容、时长等)在此之前,已经完成了10万真实用户的测试。 请设计合适的算法,挑选出10万用户进行广告投放,并写出思路和方法。

    这是基于协同滤波的推荐算法题。
    我的思路是:

    1. 从已测试的10万用户中找出对该广告感兴趣的用户群;
    2. 分析该用户群的视频观看信息,通过特征工程提取出合适的特征向量;
    3. 提取1000万用户的特征向量,和感兴趣用户群的特征向量进行相关度度量。挑选出相关度排在前10万的用户群,向其推荐广告。
  8. 编程题: 死亡游戏。 有n个人按顺序并排站,每次随机选择一个奇数位置的人死亡,死亡后后面的人顺序补位,剩下最后一个人时游戏结束。请计算一开始站在m位置的人最后存活的概率

反思和体会

  1. 网易游戏的笔试题一向很难,不仅是研发岗的四道编程题,还是数据挖掘岗的7道简答加一道编程题,如果想过网易游戏的笔试,还是需要好好的打好基本功和编程能力
  2. 对于数据挖掘/机器学习实习岗,题目的设计都是来源于实际应用场景,比如视频推荐、广告推荐等,平时应该涉猎广泛。
  3. 可以看出,该岗位对贝叶斯估计、推荐算法、概率论考察较多,还会涉及道数据库语言sql。
  4. 简答题和编程题是分开的,只能进入一次,所以是先做简答还是编程需要慎重。 我就是打算先做编程,但十多分钟没有合适的方案后,我就马上放弃, 去做简答题了。 耽搁了不少时间
  5. 简答题是可以在草稿纸上手写,然后拍照上传的,对于需要推导计算的题目,建议手写上传,键盘打实在是很难受。

你可能感兴趣的:(实习工作,算法编程)