机器学习与数据分析

【数据清洗】

异常检测

孤立森林(Isolation Forest)从原理到实践
效果评估:F-score
【1】 保护隐私的时间序列异常检测架构

概率后缀树 PST – (异常检测)

【1】 UEBA架构设计之路5: 概率后缀树模型
【2】 基于深度模型的日志序列异常检测
【3】 史上最全异常检测算法概述

后缀树 – (最长公共子串)

【1】 【1】 【1】 【1】 【1】后缀树 - 字符串问题
【2】 后缀树应用5 – 最长的公共子字符串
【2】 【2】后缀树构造、C++代码
【3】 python库 suffix_tree

机器学习与数据分析_第1张图片

风控

【1】 风控策略产品经理:案例蚂蚁金服-支付宝的风控策略(浅析)

一致性检测

【1】 【推荐】样本/数据一致性检验的方法:Kappa检验、ICC组内相关系数、Kendall W协调系数
【2】 一致性检验 Kappa、Kendell
机器学习与数据分析_第2张图片
机器学习与数据分析_第3张图片
机器学习与数据分析_第4张图片

冲突识别

【时间序列预测分析】

AR / MA / ARMA / GARCH 模型

  • AR模型:自回归模型,是一种线性模型.AR模型是一种线性预测,即已知N个数据,可由模型推出第N点前面或后面的数据(设推出P点),所以其本质类似于插值。
  • MA模型:移动平均法模型,其中使用趋势移动平均法建立直线趋势的预测模型。
  • ARMA模型:自回归滑动平均模型,拟合较高阶模型。模型参量法高分辨率谱分析方法之一。这种方法是研究平稳随机过程有理谱的典型方法。它比AR模型法与MA模型法有较精确的谱估计及较优良的谱分辨率性能,但其参数估算比较繁琐。
  • GARCH模型:广义回归模型,是ARCH模型的拓展,对误差的方差建模,适用于波动性的分析和预测。

SARIMA 模型 (seasonal ARIMA)

用Python预测「周期性时间序列」的正确姿势
SARIMA季节项时间序列分析流程+python代码:模型定阶 枚举法

Python - 时序

  • pandas处理时间序列(2):DatetimeIndex、索引和选择、含有重复索引的时间序列、日期范围与频率和移位、时间区间和区间算术
  • seasonal_order定阶

【A/B 实验】

【1】 干货!22道AB实验面试题,涵盖95%常考知识点『中篇』

累计去重口径

Q:在进行AB实验评估时,选择指标的「累计去重口径」还是「非累计去重口径」更为科学呢?
A:答案是「累计去重口径」,在分组用户均衡的情况下,累计去重口径可以保证样本量的均衡,不会受到实验策略对留存的干扰,避免用户出现有偏的情况。

举个例子:
第一日来了100个用户,第二日来了100个用户,两日中有50个用户是重复的。
两日累计去重口径用户数 = 100+100-50=150
两日非累计去重口径用户数 = 100+100=200人。

实验周期的确定

最小样本量 = 每天进入实验的样本量 × 实验天数
= (实验层的总流量 × 实验流量占比) × 实验天数

在实际的业务操作过程当中,业务都存在一些效应,例如新奇效应、改变厌恶等等,另外我们也需要考虑一个完整的业务周期,因为就大多数APP而言,周中和周末的人群行为表现是存在差异的,因此我们一般会尽量通过调整实验流量配比来满足7天的实验天数。

第八章 【集成学习】

【1】

1. (串行 - 偏差)【Boosting算法】 – Adaboost

机器学习与数据分析_第5张图片

boosting的算法过程如下:

对于训练集中的每个样本建立权值wi,表示对每个样本的关注度。当某个样本被误分类的概率很高时,需要加大对该样本的权值。

进行迭代的过程中,每一步迭代都是一个弱分类器。我们需要用某种策略将其组合,作为最终模型。(例如AdaBoost给每个弱分类器一个权值,将其线性组合最为最终分类器。误差越小的弱分类器,权值越大)

2. (并行 - 方差)【Bagging算法】

【1】【2】
机器学习与数据分析_第6张图片
bagging的算法过程如下:

从原始样本集中使用Bootstraping方法(自助法,是一种有放回的抽样方法)随机抽取n个训练样本,共进行k轮抽取,得到k个训练集。(k个训练集之间相互独立,元素可以有重复)

对于k个训练集,我们训练k个模型。(这k个模型可以根据具体问题而定,比如决策树等)

对于分类问题:由投票表决产生分类结果;对于回归问题:由k个模型预测结果的均值作为最后预测结果。(所有模型的重要性相同)

随机森林

  • 优点

1) 训练可以高度并行化,对于大数据时代的大样本训练速度有优势。个人觉得这是的最主要的优点。

2) 由于可以随机选择决策树节点划分特征,这样在样本特征维度很高的时候,仍然能高效的训练模型。

3) 在训练后,可以给出各个特征对于输出的重要性

4) 由于采用了随机采样,训练出的模型的方差小,泛化能力强。

5) 相对于Boosting系列的Adaboost和GBDT, RF实现比较简单。

6) 对部分特征缺失不敏感。

  • 缺点

1)在某些噪音比较大的样本集上,RF模型容易陷入过拟合。

2) 取值划分比较多的特征容易对RF的决策产生更大的影响,从而影响拟合的模型的效果。

3. Adaboost & Bagging 区别

1)样本选择:
Bagging采用的是Bootstrap随机有放回抽样;
Boosting每一轮的训练集是不变的,改变的只是每一个样本的权重。

2)样本权重:
Bagging使用的是均匀取样,每个样本权重相等;
Boosting根据错误率调整样本权重,错误率越大的样本权重越大。

3)预测函数:
Bagging所有的预测函数的权重相等;
Boosting中误差越小的预测函数其权重越大。

4)并行计算:
Bagging各个预测函数可以并行生成,不存在强依赖关系;
Boosting各个预测函数必须按顺序迭代生成,存在强依赖关系。

5)计算效果:
Bagging主要减小了variance,Boosting主要减小了bias,而这种差异直接推动结合二者的MultiBoosting的诞生

下面是将决策树与这些算法框架进行结合所得到的新的算法:
1)Bagging + 决策树 = 随机森林
2)AdaBoost + 决策树 = 提升树
3)Gradient Boosting + 决策树 = GBDT

*)GBDT vs XGBoost (eXtreme Gradient Boosting)极致梯度提升:基本思想相同,但是XGBoost做了一些优化,比如二阶导数使损失函数更精准;正则项避免树过拟合;Block存储可以并行计算等。
机器学习与数据分析_第7张图片
机器学习与数据分析_第8张图片

第九章 【高斯过程】

【1】
【2】

第十章 【半监督学习】

1. 协同训练(多视图半监督)

机器学习与数据分析_第9张图片

2. 图 · 半监督

3. 半监督SVM

【1】【2】

直推式支持向量机「TSVM」与半监督支持向量机「S3VM」:

  • S3VM 基于聚类假设,试图通过探索未标记数据来规范、调整决策边界,为了利用未标记的数据,则需要在现有的支持向量机「SVM」上,增加两个对未标记的数据点限制。
  • TSVM 主要用于二分类问题,其试图考虑对未标记样本进行可能的标记指标(Label Assignment),即尝试将每个未标记样本分别作为正例或反例,并在对应的结果中寻求间隔最大化的划分超平面

第十章 【神经网络 & 深度学习】

4. 卷积神经网络 CNN

【1】Sigmoid和Relu激活函数的对比

第十二章 【强化学习】

【1】

Q-learning

【激活函数】

【1】 python:激活函数及其导数画图sigmoid/tanh/relu/Leakyrelu/swish/hardswish/hardsigmoid
【2】 SquarePlus:可能是运算最简单的ReLU光滑近似

  • R e L u = m a x { 0 , x } ReLu = max\{0,x\} ReLu=max{0,x}
  • S o f t P l u s = l o g ( e x + 1 ) SoftPlus = log(e^x+1) SoftPlus=log(ex+1)
  • 在这里插入图片描述

机器学习与数据分析_第10张图片

经典面试题目

数据分析

机器学习

集成学习

【1】 珍藏版 | 20道XGBoost面试题
【2】 机器学习算法之XGBoost
决策树\RF\XGB\GBDT之间的关系

你可能感兴趣的:(机器学习,数据分析,人工智能)