面试技巧

关注公众号 jb51net

关闭
IT专业知识 > IT职场规划 > 面试技巧 >

数据分析岗面试题与参考答案解析

小力子~

1.怎么做恶意刷单检测?

a. 选取特征利用机器学习方法做分类。
特征: 结合商家特征和环境特征做商家恶意刷单分类预测,结合用户行为特征和环境特征做用户恶意刷单分类预测。
1)商家特征:商家历史销量、信用、产品类别、发货快递公司等。
2)用户行为特征:用户信用、下单量、下单路径、浏览店铺行为、支付账号。
3)环境特征(主要是避免机器刷单):地区、ip、手机型号等。
注:构造特征。刷单的评论文本可能套路较为一致,计算与已标注评论文本的相似度作为特征。
机器学习方法: 决策树, 感知机, 逻辑回归, 支持向量机, 随机森林
b. 异常检测:ip地址经常变动(固定时间内变动次数)、账号近期交易成功率上升(固定时间内交易成功率)------利用箱型图进行结构化检测。
机器学习中的异常检测手段:
1)总体来讲,异常检测问题可以概括为两类:一是对结构化数据的异常检测,二是对非结构化数据(通过对图像目标检测,识别出异常点)的异常检测。
2)对结构化数据的异常检测的解决思想主要是通过找出与正常数据集差异较大的离群点,把离群点作为异常点。常常面临的问题有二:一是需要定义一个清晰的决策边界,从而界定正常点与异常点;二是维数灾难及交叉指标计算之间的高频计算性能瓶颈。
3)结构化的数据的异常检测手段:图形位置分布(箱型图), 统计方法检测(切比雪夫不等式的方法能够有效地划分出三个类别,包括正常数据、异常数据、未知数据)+距离检测(距离位置检测有一个非常强的假设:正常的数据都比较集中,有较多的邻居,而异常数据都特立独行。未知数据的簇里面寻找出与正常数据更不相似的,或者和异常数据更相似的数据就可以了。)

2.K-means算法

a. k-means原理: 随机选择k个中心点,把每个数据点分配到离它最近的中心点,重新计算每个簇的质心,直到质心不发生变化。
b. 改进
1) kmeans++:初始随机点选择尽可能远,避免陷入局部解。
2 ) ISODATA:对于难以确定k的时候,使用该方法。思路是当类下的样本小时,剔除;类下样本数量多时,拆分。
3 )kernel kmeans:kmeans用欧氏距离计算相似度,也可以使用kernel映射到高维空间再聚类。
c. 遇到异常值:
1 )局部异常因子LOF:如果点p的密度明显小于其邻域点的密度,那么点p可能是异常值.。
2 ) 使用PCA或自动编码机进行异常点检测:使用降维后的维度作为新的特征空间,其降维结果可以认为剔除了异常值的影响(因为过程是保留使投影后方差最大的投影方向)。
3 ) winsorize:对于简单的,可以对单一维度做上下截取。
d. 评估聚类算法的指标