数据分析笔试题(网易,阿里,京东...)

网易

https://blog.csdn.net/weixin_44915703/article/details/97245622
https://www.nowcoder.com/discuss/211212?type=post&order=time&pos=&page=1
https://www.nowcoder.com/discuss/211215?type=all&order=time&pos=&page=1
1. 推荐系统评价指标和实验方法
a. 评价指标:
1)用户满意度:只能通过用户调查或在线实验获得。
对于用户调查方式,用调查问卷方式;对于在线实验方式,主要通过一些对用户行为的统计得到。
对于用户行为,可分为显性和隐性之分。若用户购买了推荐的商品,则说明在一定程度上满意,可用购买率度量。还可用用户反馈界面收集,通过统计两种按钮的单击情况度量。更一般的情况下,用点击率、用户停留时间和转化率等指标度量。

点击率: 指您的广告所获得的点击次数除以其展示次数所得的比值。
转化率: 指在一个统计周期内,完成转化行为的次数占推广信息总点击次数的比率。分为广告转换率和网站转换率。对于广告转换率,转换指的是网民的身份产生转变的标志,如网民从普通浏览者升级为注册用户或购买用户等。转化标志一般指某些特定页面,如注册成功页、购买成功页、下载成功页等,这些页面的浏览量称为转化量。广告用户的转化量与广告到达量的比值称为广告转化率。
2 ) 预测准确度:离线实验测评
表示一个推荐算法预测用户行为的能力。如果是 评分预测模型(即打分)一般用RMSE(均方根误差)和MAE(平均绝对误差)计算。如果是Top N推荐(即个性化推荐),一般用准确率(precision)和召回率(recall)计算。

准确率(accuracy)= 预测对的/所有 = (TP+TN)/(TP+FN+FP+TN) = 70%
精确率(precision) = TP/(TP+FP) = 80%
召回率(recall) = TP/(TP+FN) = 2/3
3 )多样性
满足用户广泛的兴趣需求。描述了推荐列表中物品两两之间的不相似性。多样性和相似性对应。
b. 实验方法:
1)离线实验
需要有一个日志数据集,不需一个实际的系统来供它实验。
优点:不需真实用户参与,直接快速、方便,可测试大量算法。
缺点:无法获得很多商业上关注的指标,如点击率、转化率等。
2 ) 用户调查
在上线测试前需做一次用户调查。
优点:得到与用户主观感受有关的指标,相对在线实验风险很低,出现错误后很容易弥补。
缺点:调查成本很高,需用户花大量时间完成一个任务并回答相关问题。需花钱雇佣测试用户,大多数情况下很难进行大规模的用户调查,得出的结果大多没有统计意义。
3)在线实验
在离线实验和用户调查后将推荐系统上线做AB测试,将新系统和旧算法进行比较。将用户随机分成几组,对不同组用户采用不同算法,比较不同算法性能。
优点:可公平获得不同算法实际在线时的性能指标,包括商业上关注的指标
缺点:周期较长,需进行长期实验才能得到可靠的结果。故只测试在离线实验和用户调查中表现较好的算法。

一般来说,一个新推荐算法上线要完成上述的3个实验。首先,须通过离线实验证明它在很多离线指标上优于现有的算法;然后,通过用户调查确定它的用户满意度不低于现有的算法;最后,通过在线AB测试确定它在我们关心的指标上优于现有的算法,指标包括准确度、覆盖度、新颖度、惊喜度、信任度、透明度等。
A/B测试: A/B测试是一种流行的网页优化方法,可以用于增加转化率注册率等网页指标。简单来说,就是为同一个目标制定两个方案(比如两个页面),将产品的用户流量分割成 A/B 两组,一组试验组,一组对照组,两组用户特点类似,并且同时运行。试验运行一段时间后分别统计两组用户的表现,再将数据结果进行对比,就可以科学的帮助决策。比如在这个例子里,50%用户看到 A 版本页面,50%用户看到 B 版本页面,结果 A 版本用户转化率 23%,高于 B 版本的 11%,在试验流量足够大的情况下,我们就可以判定 A 版本胜出,然后将 A 版本页面推送给所有的用户。

2. 电商推荐系统冷启动期与高峰期的数据分析有什么不同,可举例说明。
a. 冷启动该问题主要分三类:
1 ) 用户冷启动:如何给新用户做个性化推荐。
2 ) 物品冷启动:如何将新的物品推荐给可能对它感兴趣的用户这一问题。
3 ) 系统冷启动:如何在一个新开发的网站上设计个性化推荐系统。
b. 冷启动问题的解决方案:
1 ) 提供非个性化的推荐:热门排行榜,当用户数据收集到一定的时候,再切换为个性化推荐
2 ) 利用用户注册时提供的年龄、性别等数据做粗粒度的个性化,做个用户画像,基于用户的登录信息,利用历史特征下某种特征喜欢某种物品的喜好程度进行个性化推荐。
3 ) 利用用户的社交网络帐号登录,导入用户在社交网站上的好友信息,然后给用户推荐其好友喜欢的物品。
3. 事务与锁机制有什么关系?
事务的隔离级别通过锁的机制来实现。
https://blog.csdn.net/hackxiaoF/article/details/50264939
4. 从数字集合{1,2,3,4,… ,20}中选出3个数字的子集,如果不允许两个相连的数字出现在同一集合中,那么能够形成多少个这种子集?
此问题等价于从20本书排列好的书中取出3本不相邻的书,等价于想17本排列好的书中插入3本不想邻的书,利用插空法的思想为C18,3。
5. 将4个不一样的球随机放入5个杯子中,则杯子中球的最大个数为3的概率是?
从4个球里取出三个放进5个杯子中的任意一个,剩下的一个球放入剩下的四个杯子里的任意一个
(C43 * C51* C41)/5^4
6. 已知y=f(x)的均差f(x0, x1, x2)=14/3,f(x1, x2, x3)=15/3,f(x2,x3,x4)=91/15,f(x0, x2, x3)=18/3,那么均差f(x4, x2, x3)=( 91/15)
(对称性)差商与插值节点的顺序无关。
在这里插入图片描述
7. 一个快递公司对同一年龄段的员工,进行汽车,三轮车,二轮车平均送件量的比较,结果给出sig.=0.034,说明。
按照0.05显著性水平,拒绝H0,说明三类交通工具送件量有显著差异。
8. 小明在一次班干部二人竞选中,支持率为百分之五十五,而置信水平0.95以上的置信区间为百分之五十到百分之六十,请问小明未当选的可能性有可能是(3%)
95%落在百分之五十到六十,落在百分之50以下和百分之60以上的概率分别为2.5%,所以不当选的概率(落在百分之50以下)为2.5%约等于3%。
9. 销售员需统计以下公式所示数据=SUM(SUMIF(C2:C9,{"<10","<6"})*{1,-1}), 请问,该公式返回值为14
在这里插入图片描述
C2:C9按照"<10","<6"条件分别求和,再按照1,-1求和,即23-9=14。
小于10的乘以1,小于6的乘以-1,再求和。
(4+5+6+8)*1+(4+5)*1=14
10. SQL语句执行的顺序是
1.FROM
2.JOIN ON
3.WHERE
4.GROUP BY
5.HAVING
6.SELECT
7.ORDER BY
11. 设随机变量X和Y都服从正态分布,且它们不相关,则( X与Y未必独立)
补充:只有当(X,Y) 服从二维正态分布时,X与Y不相关⇔X与Y独立
若X和Y都服从正态分布且相互独立,则(X,Y)服从二维正态分布
12. 某地区每个人的年收入是右偏的,均值为5000元,标准差为1200元。随机抽取900人并记录他们的年收入,则样本均值的分布为(近似正态分布,均值为5000元,标准差为40元)
中心极限定理,样本量N只要越来越大,抽样样本n的样本均值会趋近于正态分布,并且这个正态分布以u为均值,sigma^2/n为方差。

左偏分布(负偏态)中:mean(平均数)<median(中位数)<mode(众数)。
右偏分布(正偏态)中:mode(众数)<median(中位数)<mean(平均数)。
左右偏态的定义:
https://baike.baidu.com/item/正偏态/6639492?fr=aladdin
13. 抽取30个手机用户,计算出他们通话时间的方差。要用样本方差推断总体方差,假定前提是所有用户的通话时间应服从(正态分布)
一个总体的方差的区间估计其前提条件是总体服从正态分布。用卡方分布构造总体方差的置信区间。
14. 命题A:随机变量X和Y独立,命题B:随机变量X和Y不相关。A是B的
__充分不必要__条件。

15. 假定树根的深度为0,则高度为6的二叉树最多有___64___个叶节点。
一棵树当中没有子结点(即度为0)的结点称为叶子结点。所以2^6=64。
注:某节点的深度是指从根节点到该节点的最长简单路径边的条数,而高度是指从该节点到叶子节点的最长简单路径边的条数。树的高度和深度是相等的。最深的叶结点的深度就是树的深度。
在这里插入图片描述
假定树深度为0,上图中二叉树的高度和深度为3
16. 已知一棵树具有10个节点,且度为4,根节点的高度为1,那么(该树的高度至多是7)
X的子女数目称为X的度。
17. 对于以下关键字{55,26,33,80,70,90,6,30,40,20},增量取5的希尔排序的第一趟的结果是:(55,6,30,40,20,90,26,33,80,70)
{55,26,33,80,70,90,6,30,40,20} 增量为5, 从55开始每隔5个距离取值分为1组,共分为5组,分别为{55,90} {26,6}{33,30}{80,40}{70,20}
先组内排序取最小值:55,6,30,40,20,后取剩余值:90,26,33,80,70。
18. 设二叉排序树中关键字由1到999的整数构成,现要查找关键字为321的节点,下面关键字序列中,不可能出现在二叉排序树上的查找序列是(888、231、911、244、898、256、362、366)
补:
1) 二叉排序树的特点就是:
A. 若左子树不空,则左子树上所有结点的值均小于或等于它的根结点的值
B. 若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值
C. 左、右子树也分别为二叉排序树
2 ) 看B选项的最后两个数,321 和 362 比较以后,明显321< 362 ,必然会去寻找362的左子树,此时应该去寻找362的左子树,但是366大于362肯定不是左子树。
3)二叉排序树的算法就是
首先将待查关键字key与根节点关键字t进行比较:
A.如果key = t, 则返回根节点指针。
B.如果key < t, 则进一步查找左子树。
C.如果key > t, 则进一步查找右子树。
19. 用13的瓷砖密铺320的地板有几种方式?(1278)
一共可能有2,5,8,11,14,17块砖头竖着放((20-2)%3==0其余数字同理。)
竖着放代表长度为3的边刚好接触。A6,6代表6!也等于6的阶乘
当有2块竖着放,一共有8(2+(20-2)/3=8)块转,其中6块为竖着放,2块横着。A8,8/(A6,6A2,2)=28;
当有5块竖着放,一共有10块转,其中5块为竖着放,5块横着。A10,10/(A5,5
A5,5)=252;
当有8块竖着放,一共有12块转,其中8块为竖着放,4块横着。A12,12/(A8,8A4,4)=495;
当有11块竖着放,一共有14块转,A14,14/(A11,11
A3,3)=364;
当有14块竖着放,一共有16块转,A16,16/(A14,14A2,2)=120;
当有17块竖着放,一共有18块转,A18,18/(A17,17
A1,1)=18;
当有20块竖着放,结果为1;
以上加总为1278;
令f(n)为3n的铺法,那么先取出一块:如果这一块竖着铺,则3n变成了3*(n-1),也就是f(n-1);如果这一块横着普,而又因为只有三行,所以下面的两块也只能横着铺,则3n变成了3(n-3)。综上可以得到f(n)=f(n-1) + f(n-3)。
递推获得f(20)即可。
20. 有20个人去看电影,电影票50元。其中只有10个人有50元钱,另外10个人都只有一张面值100元的纸币,电影院没有其他钞票可以找零,问有多少种找零的方法?
卡特兰数问题,关于这个了解甚少就做一个基本介绍,其实这里如果用卡特兰数来做还得有一个条件就是且一人只买一张票,也就是说每一个有50块钱的人要先去付钱,然后再是拿着100块钱的人去付钱,然后这里我们看成是出栈和入栈操作,把出栈次序和进栈次序构成40个数字的序列(进表示收取50元可用1表示。出表示收取100元,找零50元,可用0表示。),因为要进栈和出栈都算在这个序列里面,然后就可以用卡特兰数来求解了,我们这里可以直接用公式C(n,2n)/(n+1)=C(10,20)/11=16796,这个公式是卡特兰数的一般公式。
https://blog.csdn.net/Hackbuteer1/article/details/7450250

  1. 考拉海购始终以用户为中心,为用户提供高品质的商品,帮助用户“用更少的钱,过更好的生活”。为了满足不同用户的需求(比如新客户的要求可能跟老客户不同,流失客户需要特殊的关怀) ,请你设计一套具体的方案,合理划分不同用户,并能给出相应的建议。
    1、新用户——引导性信息收集
    任何电商品牌都有一套属于自己的推荐算法,但是对于新用户和新商品这种冷启动问题一般还是没有很好的解决方法。实际上,新商品有很多性能参数,可以根据相近商品进行预测,而新用户对于算法来说是一个完全空白的样本,不利于探测客户需求,所以建议在新用户注册时设计一套能够捕捉购买方向和趋势的问卷,并配合问卷选择发放一些对应的优惠券,这样一方面可以引导新用户在情愿的情况下给出真是的购买意愿,另一方面也能够在最快的时间内捕捉到该用户的一些信息,再一方面促进了用户购买商品的几率。
    2、规律用户——捕捉规律行为
    大部分用户的购买行为存在周期性,比如优惠周期,使用周期,系统可以根据用户在过去的购买和浏览行为探索用户购买周期,然后预测下一个购买周期,并且发送优惠信息,这样既让用户享受到了优惠,又实现了营销。
    3、流失用户——捕捉细节
    万事皆有原因,一个用户流失要么是在这里吃过亏,要么是觉得买不到想要的,要么是别的平台更便宜,无非这三大类原因,所以应该捕捉用户最后的浏览信息,浏览表明有购买意愿,针对这些商品基于一些优惠,吸引用户再次浏览,根据一次次吸引浏览来判断不购买原因,再对症下药。
    注:要区分流失用户和规律用户,这两类行为存在很大的相似性,但是后者其实并不需要太多优惠或行为进行挽留。

  2. bootstrap 是什么原理—有放回的从N个样本中抽样n个。
    bootstrap方法是从大小为n的原始训练数据集中随机选择n个样本点组成一个新的训练集,这个选择过程独立重复B次,然后用这B个数据集对模型统计量进行估计(如均值、方差等)。由于原始数据集的大小就是n,所以这B个新的训练集中不可避免的会存在重复的样本。

  3. 用户消费表中时间格式是“年-月-日-时-分-秒”,在MySQL中获取“年-月-日”的函数是(A)
    A DATE --返回日期
    B GETDATE —返回日期和时间
    C DAY()–1、day(date_expression) 返回date_expression中的日期值
    D GETDAY()—无此函数

  4. 假设使用较短的时间在一个足够大的数据集上训练决策树,可以采用什么办法(C)
    A 增加树的深度
    B 增加学习率
    C减少树的深度
    D 减少树的数量
    解析: 增加树的深度, 会导致所有节点不断分裂, 直到叶子节点是纯的为止. 所以, 增加深度, 会延长训练时间.决策树没有学习率参数可以调. (不像集成学习和其它有步长的学习方法)决策树只有一棵树, 不是随机森林。

  5. 需要删除表user的数据,但是保留表结构且不释放空间,以下哪个语句可以实现(D)
    A DELETE TABLE user
    B REMOVE TABLE user
    C DROP TABLE user
    D TRUNCATE TABLE user
    在SQL中,能快速删除数据表中所有记录,但保留数据表结构的语句是Truncate。
    使用Truncate删除所有行,该语句总是比不带条件的DELETE语句要快,因为DELETE语句要记录对每行的删除操作,而Truncate 语句只记录整个数据页的释放。Truncate语句立即释放由该表的数据和索引占用的所有空间,所有索引的分发页也将释放。
    Delete 删除 表中的行
    DROP删除整个表,包括表结构和表定义
    REMOVE没有这个查询定义

  6. 某抽卡公司出示出SSR的概率是0.1,用户画符500次,得到45个符,问在5%的显著水平下,能够认为游戏商在谎报概率吗?(不能)
    对于统计检验来说,这里设置的是a=0.05, Ho 假设如果计算的概率p>a大于显著水平,即是没有足够的证据去拒绝原假设,即尚不能拒绝H0(原假设为某抽卡公司出示出SSR的概率是0.1), 如果p<a,即可以拒绝原假设H0。设X为用户得到的字符数(检验统计量), 根据原假设得到X~B(500, 0.1), P(X<=45) = C500,45(0.1)^45(0.9) ^(500-45) = 0.255> 0.05, 故接受原假设。二项分布式的计算如下。

from scipy.stats import binom

pi = 0.1; n = 500
k = 45; m = 50

# 求成功次数为i的概率
pk = 0
for i in range(n):
    p = binom( n, pi ).pmf( i )
    if i <= k:
        pk += p
        print( 'P(x = {0:d}) = {1:.4f}'.format( i , p ))

# 求成功小于k次的概率
print('-'*20)
p = binom
  • 4
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值