五、挖掘建模

建模:分类和预测(监督)、聚类(非监督)、关联规则、时序模式、偏差检测等

一、分类与预测(sklearn.linear_model,keras)

常用算法:
1. 回归分析(线性回归、非线性回归、logistic回归、岭回归、主成分回归)sklearn.linear
2. 决策树(非线性分析) sklearn.tree
3. 人工神经网络(非线性分析)keras
4. 贝叶斯网络 sklearn.naive_bayes
5. 支持向量机(高维空间进行线性分析)sklearn.svm

(1)回归分析
logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。 Logistics回归模型中因变量只有1-0,两种取值。

逻辑回归步骤:
1. 特征筛选(f_regression选择f值大或者p值小的特征、递归特征消除、稳定性选择(随机逻辑回归randomizedlogisticregression))
2. 利用特征建立逻辑回归模型logisticregression

(2)决策树

决策树算法:
ID3算法:利用信息增益方法作为属性的选择标准
C4.5算法:利用信息增益率作为选择标准
CART算法:非参数分类和回归方法。

(3)人工神经网络(有指导学习)
常用的人工神经网络算法:
BP神经网络:δ学习规则 二乘误差函数 按误差逆传播算法训练的多层前馈网络
人工神经元模型:

激活函数:0-1函数(sigmoid),relu函数,分段函数、非线性转移函数

步骤:
1.权值和阈值的初始化(小的随机数,【-1,1】)
2.取学习样本作为输入信号
3.中间层-输出层输出计算
4.误差计算
5.判断误差是否小于上限
6.中间层和输出层权值更新,输出层阈值更新
7.输出层和中间层权值更新,中间层阈值更新

二、聚类分析(sklearn.cluster)

定义:建立在没有给定划分类别的情况下,根据数据相似度进行分组
原则:组内间距最小化,组间间距最大化
常用聚类分析算法:
k-means算法、k-中心点算法(K-MEDOIDS)、系统聚类(多层次聚类)

1.k-means算法:
数据类型及相似度度量:
(1)连续属性:欧几里得距离、曼哈顿距离、闵可夫斯基距离
(2)文档数据:余弦相似性-先整理为文档-词矩阵形式
(3)目标函数:使用误差平法和SSE度量聚类质量

from sklearn.cluster import KMeans
model=KMeans(n_cluster=k,n_jobs=4,max_iter=iterations)
model.fit(data)
model.label_方法给出聚类结果的标签

聚类可视化工具:TSNE(用于给数据降维)

from sklearn.manifold import TSNE
tsne = TSNE()
tsne.fit_transform(data_zs) #进行数据降维

三、关联规则

常用算法:
* Apriori(挖掘频繁项集)步骤:自连接,剪枝,无时序先后性,候选项多。
* Apriori ALL:区分最后两个元素的前后
* AprioriSome跳跃式计算候选,产生的候选比较多,可能在回溯阶段前占满内存,如果内存满了,就被迫去计算最后一组的候选。适用于较低支持度较长的序列
* GPS算法:类Apriori算法,用于在候选项集中发现具有时序先后性的频繁项集,每次计算支持度,都需要扫描全部的数据集(很多候选序列)
* SPADE算法:改进的GPS算法,规避多次对数据集进行全表扫描的问题、
* FreeSpan算法:频繁模式投影的序列模式挖掘,核心思想是分治算法。减小候选序列产生的花销,但是可能产生许多投影数据库。
* FP-tree(不产生候选频繁项集)
* Eclat(深度优先算法,垂直数据表现形式,利用基于前缀的等价关系,将搜索空间划分为子空间)
* 灰色关联算法(分析各个因素之间的影响程度)
强规则:满足最小支持度阈值和最小置信度阈值的规则
频繁项集:项集I的相对支持对满足最小支持度

四、时序模式

时间序列算法:
* 平滑法(趋势分析和预测,使得短期随机波动的序列平滑化)
* 趋势拟合法(时间自变量,相应的序列观察值作为因变量,线性/曲线拟合)
* 组合模型
* AR模型(以前P期的序列值为自变量,观察值为因变量的线性回归模型)
* MA模型(和以前序列值无关,观察值与前期的随机扰动的线性回归模型)
* ARMA模型(自回归移动平均模型取值与前期和扰动有关)
* ARIMA模型(差分平稳序列:非平稳序列差分后为平稳序列)
* ARCH模型(模拟时间序列波动性变化,适用于序列具有异方差性并且异方差函数短期自相关)
* GARCH模型(实际序列中的长期记忆性)

时间序列的预处理(纯随机性、平稳性)
1.平稳性定义:时间序列在某常数附近波动,且范围有限,��常数均值和方差。
平稳性检验:时序图检验(有明显趋势或周期的非平稳)、
自相关图检验(自相关系数趋近0)
构造检验统计量(单位根检验:存在即非平稳序列,单位根显著大于0.05)
非平稳一定不是白噪声检验

2.纯随机性检验:
自协方差为0

平稳时间序列分析:ARMA模型:短期预测
1.AR(P阶自回归模型):认为xt主要受过去p期序列值得影响
性质:均值、方差:常数
自相关系数(ACF):拖尾性
偏自相关系数(PACF):p阶截尾性
2.MA模型(q阶自回归模型):认为xt主要受过去q期误差项的影响
性质:均值、方差:常数
自相关系数(ACF):q阶截尾(快速收敛于0)
偏自相关系数(PACF):拖尾(缓慢衰退的趋势但是不都为0)
3.ARMA模型(自回归移动平均模型):认为xt受过去p期序列值和q期误差项的影响
性质:均值、方差:常数
自相关系数(ACF):拖尾
偏自相关系数(PACF):拖尾

平稳时间序列建模步骤:
(1)计算出该序列的自相关系数(ACF)和偏相关系数(PACF),判断是否平稳
(2)模型识别,也成模型定阶。
根据系数情况从AR(p)模型,MA(q)模型、ARMA(p,q)、ARIMA(p,d,q)模型中选择合适模型,其中p为自回归项,d为差分阶数,q为移动平均项数。
(3)估计模型中的未知参数的值并对参数进行检验
(4)模型检验;
(5)模型优化
(6)模型应用:进行短期预测

五、离群点检测

一.方法
* 基于统计(概率分布模型:一元正态分布、混合模型的离群点检测)
* 基于邻近度
* 基于密度(两种定义:1.密度为到最近k个最邻近距离的平均距离的倒数,越小越高;DBSCAN:该对象指定距离d内的对象个数)
* 基于聚类
1. 丢弃远离其他簇的小簇(丢弃某个小于最小阈值的所有簇);
2. 基于原型的聚类(首先聚类所有的对象,然后评估对象属于簇的程度)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值