暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

『字节』数据科学岗面试真题(含答案)

数据攻略 2022-08-18
555

点击上方蓝色【数据攻略】关注+星标~

第一时间获取最新内容


哈喽大家好,我是六哥~
近期收到很多私信说
想了解『数据科学岗』都考点啥

本篇,就以字节面经作为切入点
挑选几道该岗位的典型题型
带大家体验一下『数据科学岗』的面试真题
(含参考答案+备考Tips)


------正文手动分割线------

本文结构速览:

一、SQL题

二、机器学习与概率论

三、AB实验

ps.文末有备考Tips



  SQL题 


面试真题1:
SQL的三种排序方式及其区别?
参考答案

考查窗口函数中的序号函数

  • ROW_NUMBER()函数会依次进行排序且序号不相同

  • RANK()函数会依次排序如结果一样序号相同且会跳跃排名

  • DENSE_RANK()会依次排序如结果一样序号相同且不会跳跃排名

假设现有一张学生成绩表:



下面应用不同的排序方式进行排名:

    select 
    course_name
    ,student_name
    ,score
    ,ROW_NUMBER()over(partition by course_name order by score desc) AS `row_number`
    ,RANK()over(partition by course_name order by score desc) AS `rank`
    ,DENSE_RANK()over(partition by course_name order by score desc) AS `dense_rank`
    from course_score
    ;



    Tips:

    为方便大家练习,提供表数据集

      drop table course_score;
      CREATE TABLE course_score
      (course_name varchar(45)
      ,student_name varchar(45)
      , score INT
      )
      ;


      INSERT INTO course_score (course_name, student_name, score) VALUES
      ('英语','张三',80)
      ,('英语','李四',70)
      ,('英语','赵五',90)
      ,('英语','高六',60)
      ,('数学','张三',70)
      ,('数学','李四',90)
      ,('数学','赵五',90)
      ,('数学','高六',40)
      ;



      面试真题2:

      假设一个表有一列数字1,2,3,4,5,如何转成一行

      如下图所示:


      参考答案

      考查CASE WHEN和聚合函数

        SELECT 
        max(case when number=1 then number end) AS is_number1
        ,max(case when number=2 then number end) AS is_number2
        ,max(case when number=3 then number end) AS is_number3
        ,max(case when number=4 then number end) AS is_number4
        ,max(case when number=5 then number end) AS is_number5
        FROM table_number


        Tips:

        为方便大家练习,提供表数据集

          CREATE TABLE table_number (number int);
          INSERT INTO table_number(number) VALUES (1),(2),(3),(4),(5);




          机器学习&概率论


          面试真题1:

          随机森林和XGBoost的区别是什么?
          参考答案
          • 随机森林和XGBoost在树生成的原理上存在差异

          • 在避免过拟合问题上的处理也存在较大差异。

          下面重点说明一下在避免过拟合问题上,两者算法的处理手段。

          ① 随机森林

          利用随机采样,对数据样本和特征分别进行抽样,训练出多个树分类器,每个树的生产相互独立。为了避免过拟合:

          • 对训练样本数据进行有放回的抽样,生成K棵分类回归树

          • 假设特征空间有n个特征,每棵树的节点处随机抽取m个特征(m < n)

          • 每棵树最大限度生长,不做任何剪枝

          • 通过多棵树组成森林,分类结果按树分类器投票多少决定


          ② XGBoost

          XGBoost原理可参考 -》XGBoost原理解析

          XGBoost本质可以理解为GBDT算法的改进,为了避免过拟合

          • 借鉴了随机森林的做法,支持列抽样,不仅能降低过拟合,还能减少计算

          • 在目标函数中加入了正则项,用于控制模型的复杂度

          • 先从顶到底建立所有可以建立的子树,再从底到顶反向进行剪枝,这样不容易陷入局部最优解;

          • 不仅使用到了一阶导数,还使用二阶导数,损失更精确,还可以自定义损失函数;



          面试真题2:

          主成分分析的原理以及应用?

          参考答案

          主成分分析的原理【数据分析岗】机器学习(二)

          使用场景

            • 维度灾难:也就是变量多,在训练集保持不变的情况下,使用的变量越多,待估参数就越多,学习量上升、学习效率下降。

            • 变量之间的相关性高:变量之间的相关性高,说明数据是有冗余的,数据中的信息是有重叠的。

          业务场景举例

            • 人脸识别

            • 人口统计学

            • 数学建模



          AB 实验


          ▌面试真题1

          现在抖音在推荐模块的底层推荐算法进行了优化,预计短视频的完播率会有明显的提升。针对这个问题,如何进行验证?

          参考答案

          可以通过AB实验进行效果验证。


          面试真题2

          针对这个问题如何进行实验构造?介绍一下你检验的过程

          参考答案

          针对打开抖音推荐模块的用户进行随机分组

          然后通过假设检验进行验证。

          ① 实验设计

            • 对照组:老推荐算法模型。

            • 实验组:新推荐算法模型

          ② 建立假设

            • 原假设H0:实验组和对照组的人均完播的视频数量无差异。

            • 备择假设H1:实验组和对照组的人均完播的视频数量有差异。

          ③ 选择检验统计量

            • 假设每个用户的短视频播放相互独立,根据中心极限定理可知,实验组及对照组的人均完播的视频数量均服从正态分布,根据正态分布的可加性,可得到检验统计量

            •      

          ④ 选择显著性水平

            • 一般选择第一类错误5%是业界最常用的标准。接下来将两组样本的观看时长均值、方差、样本量计算出检验统计量z中,计算出z的取值结果。

            • |z|≥1.96时,认为在第一类错误5%的情况下,新推荐算法对用户人均观看时长有差异。

            • |z|<1.96时,认为在第一类错误5%的情况下,新推荐算法对用户人均观看时长无差异


          面试真题3

          视频的完播率,可以通过沿用前面的检验统计量的构造思路码?

          参考答案

          不可以。实验组和对照组的完播率计算的样本不满足样本独立性,所以实验组和对照组的完播率不服从正态分布。



          ▌备考Tips

          除常规对简历进行深挖以外

          字节『数据科学岗』相比一般的数据分析岗

          机器学习模型因果推断原理要求比较高

          可以看看下面的校招数科岗JD要求:



          由于字节是典型的注重用数据驱动增长的公司

          每天线上会同时运行大量实验快速验证、迭代策略

          所以日常工作中会接触到大多因果推断的工作内容

          因此无论是在JD要求上,还是面试的时候

          也会着重考核AB测试相关的知识


          建议大家务必要对AB实验原理进行熟练掌握

          会举一反三,归纳、演绎变体考法

          争取做一题,会一类,提高备战效率



          以上AB实验面试真题还可衍生其他考点,例如:

          • 该实验的指标如何选取?
          • 实验周期如何确定?
          • 如何确保实验和对照组用户在测试前无差异?
          • ...等等



          📌AB实验相关文章推荐阅读:

          AB高频考点!大白话讲懂『多重检验』

          数据分析岗 | AB实验之实验分流(三)

          【数据分析岗】| AB实验之方案设计(二)

          数据分析岗 | AB实验框架+高频考点(一)



          如若盼 追更 求职类干货系列 

          欢迎大家转发,点亮在看
          你的鼓励,是对创造者最大的支持~
          也可以在公众号后台找到我,说说你的困惑 ~



          往期好文推荐 
          求职类
          【数据分析岗】面试该如何做准备
          大厂面试官唠唠『优秀简历』长啥样?
          【数据分析岗】常见笔试题型梳理(附case)
          【数据分析岗】字节面试真题(含答案)+送100道面试题库
          日常学习类
          警惕数据分析中的『幸存者偏差』陷阱
          2种方法快速分析群体差异(附case)!
          『指标异动』贡献度定量归因之法,带你知因又知果!
          讲懂高频Hive:窗口函数(一)


          更多 『求职干货』 & 『日常学习』 系列好文,等你发现~



          Ps. 微信推文改了规则

          看完记得设置为 “ 星标 ” 

          不然我会消失的



          点个在看,肝『干货』更有动力
          文章转载自数据攻略,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

          评论