2020/01/04
《百面
机器学习-算法工程师带你去面试》读书笔记
《No.4: p33~p39》第二章 模型评估
Q15 为何一些场景中,要使用余弦相似度而不是欧式距离?
1. 余弦相似度,为两个向量夹角的余弦,关注的是向量之间的角度关系而不关心绝对大小。其取值范围为[-1,1],主要体现方向上的相对差异。
2. 欧式距离体现数值上的绝对差异。
3. 若要分析两个用户对于不同视频的偏好,使用余弦距离比较好。
4. 若要分析用户活跃度,采用欧式距离比较好。
5. Word2Vec,其向量的模长是经过归一化的,此时欧式距离与余弦距离有单调的关系。
Q16 余弦距离是否是一个严格定义的距离?
1. 距离的三条公理: 正定性、对称性、三角不等式)
2. 余弦距离只满足正定性和对称性。但不满足三角不等式
3. 还有KL距离(Kullback-Leibler Divergence),也叫做相对熵,用于计算两个分布之间的差异,不满足”对称性”及”三角不等式”。
Q17 模型已经做了充分的离线评估,为何还要做A/B测试?
1. 离线评估无法完全消除模型过拟合的影响。
2. 离线评估无法完全还原线上的工程环境。
3. 离线评估无法计算线上系统的某些商业指标。
Q18 如何进行线上A/B测试?
1. A/B测试主要手段是进行用户分组,将用户分为”实验组”及”对照组”。
2. 实验组: 使用新模型;对照组: 使用旧模型
3. 分组时需注意,抽样无偏性(随机)及独立性。
Q19 如何划分实验组及对照组
题目: 系统中”美国用户”开发推荐模型
将所有美国用户根据use-id个位数划分为实验组和对照组,并分别施以模型A和B。