精华内容
下载资源
问答
  • 万物皆数学。 近期计划汇总整理些实际工作中会用到分析方法、模型和算法,计划从方法/模型/算法适用情况、实现原理、结果及其检验标准、Python调用方法、以及可视化呈现这几个... 如何检验方法模型是好,...

    万物皆数学。

    近期计划汇总整理些实际工作中会用到分析方法、模型和算法,计划从方法/模型/算法适用的情况、实现原理、结果及其检验标准、Python调用方法、以及可视化呈现这几个方面入手来整理。

    希望能对数据科学分析和挖掘有个系统全面的方法论认识。也起到一个方法参考手册的作用。

    方法/模型名称 什么情况下适用 实现方法/模型 得到什么系数或结果 如何检验方法或模型是好的,标准如何,如何解读输出 Python实现调用的模型或接口方法 Python方法调用如何解读输出结果、评价效果优劣 可视化呈现 大类 有无监督 备注
    参数估计
    Parameter Estimation
    用样本统计量去估计总体参数的方法(如均值、方差)等。                  
    假设检验
    Hypothesis Testing
                       
    Z检验                    
    F检验(见方差分析 ANOVA) 在两样本t检验中要用到F检验。其中要判断两总体方差是否相等,就可以用F检验。       from sklearn.feature_selection import SelectKBest  sklearn.feature_selection.univariate_selection import f_classif
    model1 = SelectKBest(f_classif, k=2)#选择k个最佳特征  
    model1.fit_transform(X,y)
             
    T检验 比较样本均值是否有明显差异或者来自同一样本总体。
    T检验,越接近于0,样本均值越不同,P值越接近于1,样本均值越相同。
    注意:配对样本用ttest_rel,不可用ttest_ind,两者结果P值相差很大。
    stats.ttest_ind(a,b) 独立样本检验
    stats.ttest_rel(a,b) 配对样本检验或者相关样本检验
    stats.ttest_1samp(data, E) 比较样本的均值是否显著为E。
    stats.ttest_rel(d1, d2) 等同于stats.ttest_1samp(d1- d2, 0)
    注意:两个样本的方差不同时,如果样本量相差较大,equal_var设置True和False时,P值差异可能会很大。比较时抽样样本量尽量相同。 
    结果解读:T统计量和P值
    1)T统计量的绝对值小于等于置信度对应的T分布临界值时,接受原假设,否则拒绝原假设
    2)P值小于置信度alpha时,拒绝原假设,否则接受原假设
      scipy.stats.ttest_ind()
    scipy.stats.ttest_rel()
    scipy.stats.ttest_1samp()
    当样本量相差较大时,如果方差也不同,此时T检验的P值很有可能反映不出样本均值的真实差异情况。所以,取样样本量要尽可能一致。        
    极大似然估计法- MLE 
    (Maximum Likelihood Estimate)
    估计均值、估计方差、估计概率密度函数                  
                         
                         
    非参数检验方法 总体分布不要求服从正态分布或总体分布情况不明时,用来检验样本数据是否来自同一总体的统计检验方法                  
    皮尔逊Pearson卡方检验
    (Pearson's Chi-Square Statistic)
    主要用于对两个定类变量之间关系的分析,一般是对检验问题进行转化,通过考察频数与其期望频数之间的吻合程度,达到检查目的。检验还依赖于卡方分布的自由度,自由度定义为类别数量与限制数量之差。
    应用场景:(注意每种情况的条件)
    (1)四格表资料的卡方检验
    (2)行*列表资料的卡方检验
    (3)R*C列联表资料的卡方检验
    要求满足条件:
    1、每个单元格中的数据都是确切的频数而非占比
    2、类别不可相互交织
    3、所有的期望频数应都不小于1
    4、至少80%的期望频数都不小于5
    否则,要么用蒙特卡洛(Monte Carlo)模拟的方法来计算P值,要么对数据进行重新分类。
    P值<0.05拒绝原假设  
    from sklearn.feature_selection import SelectKBest 
     from sklearn.feature_selection import chi2 
    model1 = SelectKBest(chi2, k=2)#选择k个最佳特征  
    model1.fit_transform(X,y)
             
    费希尔Fisher确切检验   stats.fisher_exact(table) , table是2*2的表 P值<0.05拒绝原假设              
    Mann-Whitney秩检验
    (又称 U检验)
    它假设两个样本分别来自除了总体均值以外完全相同的两个总体,目的是检验这两个总体的均值是否有显著的差别。

    使用条件:
    比较没有配对的两个独立样本,样本可具有不同的大小。
    仅在每个样本中的观察次数> 20且有2个独立的等级样本时使用。
    stats.mannwhitneyu(x, y[, use_continuity, alternative])
    思想:
    首先,混合两组数据,对所有数据排序。
    按照数值大小给定一个值叫做秩。最小的值秩为1,最大的为N(假定两个样本总共有N个观察值)。 如果有相同的值,就得到相同的秩。相同的值的秩是他们的秩的平均值。
    如果两组的秩的和差距比较大,就会得出较小的p值,认为这两组间有显著差异。
                   
    符号检验     P值<0.05拒绝原假设              
    威尔科克森Wilcoxon符号秩检验 使用条件:
    由于正态近似用于计算,因此使用的样本应该很大。一般是要求n> 20。
    成对检验,数据是配对的。(x,y长度一致)。
    stats.wilcoxon(x,y,zero_method='wilcox', correction=False)
    注意:当样本量太少<=20,或者当两个样本的长度即样本量不同时,都会报错
    P值<0.05拒绝原假设              
    威尔科克森Wilcoxon的秩和检验(又称为Mann-Whitney-Wilconxon Test),简称 MWW检验     P值<0.05拒绝原假设              
    克鲁斯卡尔-沃利斯Kruskal-Wallis检验
    (又称 H检验
    使用条件:
    具有卡方分布的假设,每组中的样本数量不能太小。(n>5)
    比较没有配对的两个独立样本,样本可具有不同的大小。(x,y长度可以不一致)
    stats.kruskal(x, y)
    假设两个分布的样本中位数相等,用于检验样本是否来源于相同的分布。它用于比较两个或多个相同或不同样本大小的独立样本。它扩展了Mann-Whitney U检验,该检验仅用于比较两组。Kruskal-Wallis检验的参数等价物是单因素方差分析 (ANOVA)。
    P值<0.10拒绝原假设   stats.kruskal(x, y)          
    Kolmogorov-Smirnov test 
    (又称 KS检验)
    适用:连续分布,拟合优度
    单样本检验时,常用作拟合优度检验,检验样本是否符合期望的分布。两个样本检验时,用作检查两个样本是否来自同一个连续分布。
    1、检验一个样本是否符合某种分布,比如正态分布
    stats.kstest(sample, 'norm',alternative='greater')
    alternative可选'two-sided','less','greater'

    2、检验2个样本是否来自同一个连续分布
    stats.ks_2samp(rvs1,rvs2)
    统计量D值相当于实际值与拟合的函数值之间的距离。
    P值小于0.05时拒绝alternative设置的原假设
                 
    方差分析法-ANOVA
    (Analysis of Variance)
    分类型自变量对数值型因变量是否有显著影响的统计检验方法。最初有Fisher 提出,也称为F检验。
    虽然分析变化的指标是均值,但判断均值是否有差异时需要借助于方差。通过对数据误差的考察来判断不同总体的均值是否相等,进而明确数据误差从何而来。
    差异可分解为:组间变异误差、组内变异误差。组间变异,反应处理因素的作用;组内变异误差,反应随机误差的作用。反应全体数据误差大小的成为总变异。
    方差分析前应保证: 
    1、每个总体服从正态分布,即对每个自变量,它的观察值都是正态分布的。
    2、各个观察数据值都是相互独立的。
    3、各组总体方差相等,即方差齐性,即各观察值都是具有相同方差σ²的正态分布。
    通过均值、方差判断正态分布。
    按照类别将数据分组,统计判断类别对数据的均值是否有影响。如果每个分组的均值相等,说明分组变量对数据没有显著影响,否则说明对数据有显著影响。要检验的对象成为因子,因子的具体表现,称为水平或处理。每个因子具体表现处理下的数据称为观察值 或总体。比如城市水平对电商人群的消费是否有影响,城市水平就是待研究的因子,城市水平的一线、二线、三线、四线就是因子的具体表现,而按照表现划分出的数据就是观察值,这样就得到4个总体。
    总变异SS(T)(总离均差平方和),组间变异SS(A)(组间离均差平方和),组内变异SSE(组内离均差平方和)。
    关系:SS(T)=SS(A)+SS(E)。
    离均差平方和只能反映变异的绝对大小,变异程度还和自由度有关,各部分离均差平方和须除以相应的自由度才能比较,称为均方差(MS(A)=SS(A)/df(A) , MS(E)=SS(E)/df(E)),反映各部分变异的平均大小。
    dfT(总自由度) = dfA(各组间自由度)+dfE(组内自由度)
    F =MSA/MSE。
    方差检验的P值。
    如果因子对数据没有影响,那么组间误差就只包含随机误差,那么就和组内误差很接近,比值F接近于1。
    如果因子对数据的影响很大,那么组间误差就会包含系统误差和随机误差,这样组间均方差就会大于组内均方差,比值F就会>1,当F大于一定程度时,就认为因子的不同处理/水平间存在明显的差异,即自变量对因变量有显著影响。
    借助F分布可推断各研究因素对实验结果有无影响。
    方差分析表:
    SS、df、MS、F值、P值

    当P值小于多少时,认为差异有统计学上的意义,接受该因子变量。
    F统计量F=MSA/MSE,显著水平a下的临界值Fa, 如 F>Fa,小概率事件发生了,拒绝原假设,变量的差异是显著的。F<Fa,不拒绝原假设,没有证据表明各个均值间有显著差异。
    两个变量间的关系强度用R^2表示,R^2 = SSA/SST。
    AOV()          
    单因素方差分析
    (One Way ANOVA)
    只有一个因子的方差分析。涉及两个变量:一个是分类型的自变量,一个是数值型的因变量。 强度测量:经过方差分析发现自变量对因变量有显著影响,如何定量评判影响的强度。
    判断系数R^2=SS(A)/SS(T)。组间离均差平方和/总离均差平方和 作为自变量和因变量之间的关系强度。这个百分比的大小可以看作这个自变量对因变量差异解释的比例。
    import scipy
    from scipy import stats
    stats.f_oneway(A1,A2,A3,A4)
                 
    双因素方差分析-无交互作用的分析 涉及两个分类型自变量时,两个影响因素对于因变量的作用是独立的。
    设计实验时主动地对实验对象进行配伍,即运用随机区组设计方案。做法:先按影响试验结果的自变量(非处理因素)将实验对象配成区组,再将各区组内的对象随机分配到不同的处理组,实验对比各组均值差异有无统计学意义,以推断处理因素的效应。
    SS(T)=SS(A)+SS(B)+SS(E)
    总离均差平方和 =列因素A导致的组间离均差平方和 + 行因素B导致的区块组间离均值平方和 +随机误差平方和。
    df(T)=df(A)+df(B)+df(E),
    F(A)=MS(A)/MS(E),对自变量A构造F统计值,
    F(B) =MS(B)/MS(E),对自变量B构造F统计值。
    from statsmodels.formula.api import ols
    from statsmodels.stats.anova import anova_lm
    formula = '销量~ 广告+价格'
    anova_results = anova_lm(ols(formula,df).fit())
    print(anova_results)
    当P值小于0.05时有显著影响水平,认为该自变量对因变量有影响。 AOV(x~A+B)          
    双因素方差分析-有交互作用的分析 自变量除了独自的作用外,它们的组合也会对因变量产生新的影响。
    如何从统计学的意义上看两个因素是相互影响的?交互作用图。
    交互作用图用于描述多因素间相互影响的一种非常有用的统计图形。交互作用图中,如果两个因素间没有交互作用,结果是两条不相交的折线或分段平行线,否则如果两条直线有交点,表示它们之间存在交互作用,而且两条折线越不平行,表示它们之间的交互作用越大
    SS(T)=SS(E)+SS(A)+SS(B)+SS(A*B)
    F(A)=MS(A)/MS(E)
    F(B)=MS(B)/MS(E)
    F(A*B)=MS(A*B)/MS(E)
    分成4部分,主要因素、交互因素、随机误差。
    formula = '射程~ 燃料*推进器'
    #等同于: formula = '射程~ 燃料+推进器+燃料*推进器'
    anova_results = anova_lm(ols(formula,df).fit())
    print(anova_results)
      AOV(x~A*B)
    interation.plot() 交互作用图
    采用基于线性回归的双因素方差分析,函数lm()
             
    多重比较
    (Multiple Comparison Procedure)
    通过对总体均值之间的配对比较来进一步检验到底哪些均值间存在差异。                  
    多重t检验 对自变量的每个可能处理下的数据均值进行两两比较       pairwise.t.test()
    p.adjust.method
    不同P值修正方法对应的效果比较及适用场景。
             
    Dunnett检验 进行多个实验组与一个对照组均值差别的多重比较。       引入multcomp包
    glht()函数
      图形化展示Dunnett检验结果      
    Tukey的HSD检验 HSD检验比多重t检验保守,但要求所有的样本均值来自容量相等的样本。 from statsmodels.stats.multicomp import pairwise_tukeyhsd
    print(pairwise_tukeyhsd(df.销量, df.广告))
        TukeyHSD()函数          
    Newman-Keuls检验
    (或简称 SNK检验法)
    SNK是对HSD检验的一种修正。 将g个样本均值从小到大排列,对步长为r的两个均值Xi,Xj,距离r步的均值间的临界值是W(r),如果满足|Xi - Xj| >= W(r)   就认为两者有显著差异。     SNK.test()          
    方差齐性检验 方差分析的一个前提是相互比较的样本总体方差相等,即具有方差齐性。所以方法分析前都要做一个方差齐性检验。                  
    Bartlett检验法 对于正态分布总体,采用Bartlett法检验齐方差性 stats.bartlett()                
    Levene检验法 levene检验检验所有输入样本来自具有相同方差的总体。与Bartlett法相比,Levene检验法在多样本方差齐性检验时,所分析的资料可不具有正态性。即当样本与正态性有明显的偏差时,Levene检验是Bartlett检验的一种替代方法。该检验法的本质是对由随机变量Y的均值(或中位数、或切位均值)离差构成的新分组数据进行单因素方差分析 stats.levene() P值小于0.05时方差有明显差异,样本来自不同的总体。   levene.test()          
    回归分析法     判断系数R^2=回归平方和/总离差平方和。
    比值越小,说明回归线和样本拟合的越好,反之,拟合的不好。
                 
    一元线性回归 总体回归方程
    Y_i=E(Y)+e_i =b0 + b1*X_i + u_i
    线性回归模型的基本假定:
    1、零均值假定  2、同方差假定
    3、相互独立性  4、因变量和自变量间满足线性关系
    线性回归模型的4张统计图形。
    1、残差对拟合值的散点图。(横坐标是拟合值,纵坐标是残差值) 该图用于检验回归模型是否合理、是否有异方差性以及是否存在异常值。附加线是采用局部加权回归散点修云法绘制的(Lowess,locally weighted scatterplot smoothing)。如果残差的分布大致围绕X轴,则模型基本是无偏的。另外,如果残差的分布范围不随预测值的改变而大幅变化,则可以认为同方差假设成立。
    2、标准化残差的QQ图。即将每个残差都除以残差标准差,然后再将结果与正态分布做比较。理想的结果是QQ图中的散点排列成一条直线。如果图中散点的分布较大的偏离了直线,表明残差的分布是非正态的或不满足同方差性,那么随机干扰的正态性也不满足。
    3、作用与图1大致相同。X轴是拟合值,Y轴是相应的标准化残差值绝对值的平方根,如果平方根大于1.5,则说明该样本点位于95%置信区间外。中间的线偏离水平直线的程度较大,意味着异方差性。
    4、标准化残差对杠杆值的散点图,作用是检查样本点中是否有异常值。如果删除样本点中的一条数据,由此造成回归系数变化过大,就表明这条数据对回归系数的计算产生了明显的影响,这条数据就是异常值。需要好好考虑是否在模型中使用这条数据。帽子矩阵对角线元素就是杠杆值(Leverage)。杠杆值用于评估第i个观测值离其余n-1个观测值的距离有多远。对于一元回归来说,杠杆值h_ii = 1/n +(X_i - avg(X))^2 / sum(X_i - avg(X))^2。图中还有LOWESS曲线和库克距离曲线。库克距离用于诊断各种回归分析中是否存在异常数据。库克距离太大的样本点可能是模型的强影响点或异常值点,需要进一步检验。通常当库克距离大于1时就需要引起注意。
    最小残差平方和 来确定参数 b0,b1
    回归模型基本假定随机扰动符合一个均值时0,方差为sigma^2的正态分布,又称为总体方差。
    对总体方差的无偏估计:从残差e_i平方和来估计,sigma^2=(sum(e_i ^2)) /(n-2)

    估计参数b0,b1的概率分布和95%置信区间。

    平方和除以相应的自由度称为均方差。
    验证模型优劣的评估方法:
    1、拟合优度的检验
    总离差平方和(Total Sum of Squares),即SS_total
    残差平方和(Residual Sum of Squares),即SS_residual
    回归平方和(Regression Sum of Squares),即SS_regression
    总离差平方和公式:
    SS_total = SS_residual + SS_regression
    回归平方和/总离差平方和之比称为样本判定系数:R^2 = SS_regression/SS_total 
    判断系数R^2是一个回归直线与样本观察值拟合优度的指标,值越大拟合度越好,值越小拟合度越差。
    注意两个值:Multiple R-squared ,和 Adjusted R-squared。一般认为调整判定系数会比判定系数更好的反映回归直线与样本点的拟合优度。
    2、整体性假定检验
    此处定义的自由度是平方和中独立观察值的个数,总离差平方和的自由度是 n-1,回归平方和的自由度是1。SS_total的自由度 = SS_regresion自由度 + SS_residual自由度
    均方差之比服从相应自由度的F分布,利用F统计量对总体线性的显著性进行检验。也可以查看F统计量对应的P值。如果F大于给定的显著水平的临界值,或者P值小于显著水平,则说明解释变量对因变量是有影响的,即回归总体是显著线性的。反之,回归总体不存在线性关系,即解释变量对因变量没有显著的影响关系。
    3、单个参数的检验
    检验自变量对因变量的影响是否是显著的,即线性关系是不是显著的。通过P值判断。

    预测--回归模型的应用:对于给定的点,估计它的取值,或者预测可能取值的区间。
    1、点预测,
    2、区间预测
    绘制图形的代码:plot(Std_Residuals ~ Leverage)
    lines(lowess(Std_Residuals ~Leverage))
    得到P值
    得到F值
    判定系数、调整判定系数
    参数的置信区间
    总体方差无偏估计
    预测predict
             
    多元线性回归
    (是变量线性、参数也线性的回归模型)
    多个解释变量的回归模型。
    Y=Xb + u 用矩阵形式表示的多元线性总体回归模型
    要求多元线性回归模型满足线性关系外需要遵守以下假定:
    1、零均值假定
    2、同方差假定
    3、相互独立性 , cov(u_i,u_j) =0 ,i!=j
    4、无多重共线性假定
    第一步:使用散点图阵列来考察变量与被解释变量之间的线性关系。注意解释变量之间线性关系是否显著,是否有多重共线性的可能。
    第二步:构建多元线性回归模型,解读结果。
    第三步:参数估计
    第四步:多元回归模型检验
    (1)线性回归的显著性检验,F值,P值检验
    (2)回归系数的显著性检验,T值,P值检验
    第五步:利用回归方程进行预测
    (1)个别值的区间预测
    (2)总体均值的区间预测
    回归模型拟合优度R^2,调整判定系数R^2_adj 多元回归模型检验:
    如果解释变量的个数为k,则回归平方和的自由度为k。
    1、线性回归的显著性
    2、回归系数的显著性

    多元线性回归模型预测


     
               
    双对数模型以及生产函数
    (变量非线性的回归模型)
                       
    倒数模型与菲利普斯曲线
    (变量间非线性的模型)
                       
    多项式回归模型
    (Polynomial Regression Model)
                       
    岭回归                    
    Lasso回归                    
    逻辑回归   梯度、逻辑函数                
    回归模型的评估与选择                    
    嵌套模型选择                    
    赤池信息准则                    
    逐步回归方法                    
    梯度下降                    
    聚类分析-也称无监督的分类 聚类分为划分聚类、层次聚类。划分聚类是将数据集划分成不重叠的子集,层次聚类是允许划分子集中有子子集。依据数据特性和期望的结果定义分簇个数。取决于数据中发现的描述特征及其关系。 相似取决于选取的相似度计算方法 将相似对象归于同一簇中,不相似对象归到不同簇中 组内的相似性越大,组间差别越大,聚类越好       聚类 无监督的  
    k-means聚类 不能处理非球形簇、不同尺寸和不同密度的簇。对包含离群点的数据聚类也会有问题,需要检测和删除离群点。 k-means均值算法。
    1、随机K个质心位置初始化,初始位置会影响迭代次数。初始质心可以选平均值或中位数。
    2、停止迭代方法:(1)仅有1%的点发生簇的改变(2)总距离值达到一个最小值,或者变化极小。(3)质心不再改变 

    相似度度量方法:
    1、闵科夫斯基距离:包括欧式距离、曼哈顿距离。数值越小,距离越近。
    2、夹角余弦距离:夹角越小,余弦越大,越相近,1时方向相同。夹角越大,余弦越小,-1时完全相反。
    3、Jaccard相似系数:衡量两个集合的相似度,即重合度。交集/并集。可用在社交网络分析中,通过共同好友,为另一人推荐可能认识的人的分析。
    K个质心的位置和每个元素距离哪个质心最近。 如何解读这K个质心所聚成的类是什么意思呢?或者怎么挖掘这K个簇是什么特征或有什么描述呢?       聚类 无监督的  
    EM方法-最大期望算法(Expectation Maximization) 清楚数据应该有几个不同的类别,每个类别有自己的分布,希望找出每个类别的分布参数是什么,并且判断每个用户属于哪个分布。
    EM算法是解决存在隐含变量优化问题的有效方法。
    EM算法:
    1、本质思想:在各个类别中随机猜一个类别的分布参数,基于这个猜测将每个元素分组归类,根据极大似然估计重新得到各类别的分布参数,重复上述步骤迭代,直到参数基本不改变。实践中,当似然函数L变化很小时可停止迭代。
    问题:算法能否迭代到参数不变?即参数是否可收敛?
    如何确定有几类?如何知道每个类别符合什么分布,又有什么样的参数可以用来定义这个类别,和判断数据元素在这样的参数下如何属于和不属于这个类别?
    得到各个分类的参数,及每个元素属于哪个分类。 似然函数L变化很小时停止迭代,如何解读似然函数的数值大小的含义。 Mclust()   用不同的颜色和形状二维图呈现聚类效果;      
    高斯混合模型-GMM
    (Gaussian Mixture Model)
    EM算法的一种现实应用。实践应用中常假设数据是具有不同参数控制的数个符合正态分布的数据。高斯混合模型是假设数据样本符合高斯分布?
    指的是正态分布和多项式分布?
              用不同的颜色和形状二维图呈现聚类效果;
    绘制二维概率密度图;
    绘制三维概率密度图;
         
                         
    支持向量机-有监督的                    
                         
                         
    线性可分的支持向量机                    
    近似线性可分、非线性可分、核函数                    
                         
    SVM算法                    
                         
                         
                         
    分类-有监督的分类 分类的目标已知                  
                         
                         
                         
    神经网络-有监督的                    
                         
    adaboost算法                    
    决策树                    
    关键指标                    
                         
                         
    贝叶斯分类                    
    全概率公式                    
    贝叶斯定理                    
                         
                         
                         
                         
                         
    随机森林                    
                         
                         
    常见损失函数                    
                         
                         
    常用的距离函数                    
                         
                         
                         
    K最近邻算法(KNN)
    (K-Nearest Neighbor)
    有两种形式:回归法,分类法
    选择未知样本一定范围内确定个数的K个样本,该K个样本大多数属于某一类型,则未知样本判定为该类型。
    k近邻法最简单的实现是线性扫描(穷举搜索),即要计算输入实例与每一个训练实例的距离。计算并存储好以后,再查找K近邻。
    算法基本步骤:
    1)计算待分类点与已知类别的点之间的距离
    2)按照距离递增次序排序
    3)选取与待分类点距离最小的k个点
    4)确定前k个点所在类别的出现次数
    5)返回前k个点出现次数最高的类别作为待分类点的预测分类

    如何选择K?
    1、猜测K。2、使用启发式选择K   3、使用算法优化
        from scipy.spatial import KDTree
    from sklearn.metrics import mean_absolute_error
    from sklearn import neighbors
    knn = neighbors.KNeighborsClassifier(n_neighbors=5, weights='uniform')
        分类 有监督的  
                         
                         
                         
    隐马尔可夫模型                    
                         
                         
    特征选择                    
    特征转换                    
                         
                         
                         
    群集                    
                         
                         
    Bagging算法                    
                         
                         
                         
    展开全文
  • 模型的统计检验

    千次阅读 2016-12-20 08:53:52
    常用的检验方法就是统计学检验,主要分为两块: 拟合优度检验 模型显著性检验 拟合优度检验残差平方和和什么东西一除,就得到个拟合优度 R2R^2,怎么得来的百科里面都,书上也很容易能找到;总之这个 R2R^2 是一个...

    研究从假设来,推导出了模型,就一定要用可靠的检验方法来验证它的可靠性。常用的检验方法就是统计学检验,主要分为两块:

    1. 拟合优度检验
    2. 模型显著性检验

    拟合优度检验

    残差平方和和什么东西一除,就得到个拟合优度 R2,怎么得来的百科里面都有,书上也很容易能找到;总之这个 R2 是一个在 (0,1) 之间的量,越接近1说明拟合得越好。

    模型显著性检验

    顾名思义,这个检验是要验证模型是否能够很明显地表示出现实情况。

    F检验

    F检验的流程大致如此:提出一个假设,“我认为这个模型对于解释某种现象没有显著作用“,或者说我认为这个模型没用,进行检验此假设,拒绝假设说明模型是显著的,接受假设说明模型不显著。

    检验假设需要用到统计学上的F检验。首先查表得到 Fα(k,nk1) 的值,α 表示显著水平,一般取0.05, k 是变量的个数,n 是样本量;一般在用eviews或者其他软件建立模型以后会出现一大堆的英文名词和数字,在里面找到F检验,如果这个值大于 Fα(k,nk1) ,那么我们拒绝最初的假设,说明模型存在显著性。

    最初的假设简称“原假设“,老师们喜欢说简称,显得高端,一般他们会这么说:“F检验的值大于标准值,我们拒绝原假设,认为模型存在显著性。“

    一般拟合优度高的模型F检验都能通过。

    t检验

    t检验也是属于显著性检验的范围,它和F检验的区别在于:F检验是总体来看模型是否有显著性,而t检验研究某个变量的显著性,因此t检验多用于多元回归分析中。

    t检验应对的情况是模型整体有显著性,需要找出是否有“滥竽充数“的变量,所以t检验都是对于某个变量进行的,你会听到读到的都是“对某某变量进行t检验“,“某某变量的t检验结果显示…“。

    用eviews或者其他软件建立模型以后会出现一大堆的英文名词和数字,里面就包含了t检验值,如果 |t|>tα/2(nk1) 说明变量存在显著性,反之不存在。n,k 代表什么上面说过了。

    展开全文
  • 多元线性回归模型是社会科学中常用的模型,但其实这个模型很多的要求,在应用模型前必须要了解背后的假设,然后来判断在自己的变量上应用这个模型是否适切,如果某些地方违背,我们可以通过一些统计的方法来修正...

    49397bd37da8dbc2cef08113037aba27.png

    多元线性回归模型是社会科学中常用的模型,但其实这个模型有很多的要求,在应用模型前必须要了解背后的假设,然后来判断在自己的变量上应用这个模型是否适切,如果某些地方有违背,我们可以通过一些统计的方法来修正。

    多元线性回归模型的假设

    比较重要的假设有5个,至少要同时满足这5个才是一个好的多元线性回归模型。

    1. 既然是线性模型,那关系必然是线性的。
    2. 误差与自变量不相关
    3. 方差齐性 homoscedasticity (equal variance of ui)
    4. 误差之间不相关
    5. 误差正态分布 normality disturbance

    下面逐个解释

    1.自变量与因变量呈线性关系

    7167dc5e235761654ca37ea6c0a2f110.png

    通过散点图可以大致看出,左图是个曲线,但是右图可能是直线。因此右图就更加适合线性模型。如果非把曲线关系用线性模型来呈现,那么这个斜率其实是没有意义的,因为曲线模型的斜率一直是变化的,我们做这个模型预测得出的因变量会非常不准确。

    2.误差项(u)与自变量不相关

    误差项是自变量以外,解释因变量变异的部分。因为我们无法测量,所以称为误差。

    导致误差项和自变量相关的几种情况:

    • 影响因变量的自变量没有放入模型中
    • 因果关系倒置(reverse causation): 因变量成了自变量,可不就与误差相关了吗?因为误差本来就是解释因变量变异的
    • 自变量的测量误差(measurement erros): 没有完美的测量工具,measurement error必然存在,只有当测量误差比较大,或与自变量相关时,才有问题。例如,

    误差项与自变量相关会导致什么问题?

    3.方差齐性

    不同的自变量X取值,对应的因变量Y的变化,应该是类似的,也就是Y的方差变化不能太大。如果因变量方差变化太大,也就是方差不齐,会导致几个后果: 1)斜率没有偏倚unbiased,但是斜率的误差变大了。 2)统计检验会出问题

    4.不同个案之间的误差不相关 errors across cases are not correlated

    也就是说,个案之间是相互独立,互不影响的。常见的影响个案独立性的群组效应,例如同一个班级的学生对某位老师的看法可能类似、同一个家庭的生活习惯也可能相似。追踪数据也会出现观察值之间有关联的问题,因为毕竟都是同一个人的数据,一个人在不同时期的体重可能具有很高的相关度。

    如果个案之间相互影响,斜率依然没有偏倚unbiased,但是斜率的误差会变大(通常是变小),也会带来统计检验的问题。(why???)

    5.正态分布

    误差是正态分布的。

    多元线性回归模型的检验 Detection of assumption violation

    具体解释:

    1.检验线性关系

    1)偏回归图: 在简单线性回归(一个X一个Y)中,我们画出自变量和因变量的散点图大致可以判断是否为线性关系。但是在多元线性回归中,我们不能再用这种一个自变量和一个因变量的bivariate plot,因为它没有控制其他自变量的影响,而是应该用偏回归图。什么是偏回归图?partial regression plots (residuals of Y on the remaining explanatory variables vs residuals of the target explanatory variable on the remaining explanatory variables)

    2) 检验多项式; 如果X的平方、X的三次方在多元线性回归方程中也显著,说明X和Y不是线性关系。

    3) 检验虚拟变量dummy variables: 把X划分为几个虚拟变量,然后检验这几个虚拟变量和Y的关系如何。如果虚拟变量和Y的关系类似,那么比较有可能是线性,如果几个虚拟变量和Y之间的关系差异比较大,那么X和Y之间更有可能是非线性关系。例如,探讨年龄和幸福感之间的关系,把年龄分为6-19儿童,20-40青年,41-60中年,61以上老年几个年龄段,儿童的幸福感随着年龄的增长而提高,但青年和中年的幸福感可能随着时间而降低,老年时人的幸福感可能又会提高。

    2.自变量与误差不相关

    理论与逻辑推断

    3.检验方差齐性

    1) 偏回归图;

    2) 自变量和因变量的散点图

    7d0d87d3d6aee7d1af98f549d9c69d84.png

    如图就是一个方差不齐的例子,可以看到点越来越分散了,离散程度越来越大。

    3)在stata中检验方差是否整齐:

    • Breusch-Pagan test, stata 命令: hettest (只用于检验线性的方差异质性)
    • White's general test, stata命令:首先ssc install whitetest 安装程序,然后whitetst.( 除了可以检验线性的异质性,还可以检验曲线的方差的异质性,也就是检验X平方、X三次方的方差是否整齐)

    4.误差之间不相关

    注意时间序列数据、群组数据,这些数据可能会有误差相关的问题

    多元线性回归模型的修正 Remedies of assumption violation

    1.线性关系:用正确的模型,如果是曲线关系应该用log转化,或平方项,或虚拟变量(见用多元线性回归模型表示曲线关系)

    2.误差与自变量不相关:

    1)增加遗漏的变量

    2)如果有因果倒置reverse causation的问题: 2SLS

    3)如果有measurement errors, multilevel models

    3. 方差不齐:

    robust standard error:也就是用white standard error, 在stata中只要reg y x1 x2, robust即可(具体原理待补充)

    加权最小二乘法weighted least square:如果方差是整齐的,那么每一个数据都是被同等对待的,权重是一样的;如果方差不齐,那么我们就给方差小的数据更多的权重,给方差大的数据更少的权重(因为方差大意味着偏离整体的程度高)

    4. 误差不相关:

    1)multilevel/mixed model

    2)autoregressive model

    展开全文
  • 多元线性回归模型是社会科学中常用的模型,但其实这个模型很多的要求,在应用模型前必须要了解背后的假设,然后来判断在自己的变量上应用这个模型是否适切,如果某些地方违背,我们可以通过一些统计的方法来修正...

    0ffc91136c8c568c84cde1468d9c0304.png

    多元线性回归模型是社会科学中常用的模型,但其实这个模型有很多的要求,在应用模型前必须要了解背后的假设,然后来判断在自己的变量上应用这个模型是否适切,如果某些地方有违背,我们可以通过一些统计的方法来修正。

    多元线性回归模型的假设

    比较重要的假设有5个,至少要同时满足这5个才是一个好的多元线性回归模型。

    1. 既然是线性模型,那关系必然是线性的。
    2. 误差与自变量不相关
    3. 方差齐性 homoscedasticity (equal variance of ui)
    4. 误差之间不相关
    5. 误差正态分布 normality disturbance

    下面逐个解释

    1.自变量与因变量呈线性关系

    f7ccf7f1469c574c19cdb5827a51bd7c.png

    通过散点图可以大致看出,左图是个曲线,但是右图可能是直线。因此右图就更加适合线性模型。如果非把曲线关系用线性模型来呈现,那么这个斜率其实是没有意义的,因为曲线模型的斜率一直是变化的,我们做这个模型预测得出的因变量会非常不准确。

    2.误差项(u)与自变量不相关

    误差项是自变量以外,解释因变量变异的部分。因为我们无法测量,所以称为误差。

    导致误差项和自变量相关的几种情况:

    • 影响因变量的自变量没有放入模型中
    • 因果关系倒置(reverse causation): 因变量成了自变量,可不就与误差相关了吗?因为误差本来就是解释因变量变异的
    • 自变量的测量误差(measurement erros): 没有完美的测量工具,measurement error必然存在,只有当测量误差比较大,或与自变量相关时,才有问题。例如,

    误差项与自变量相关会导致什么问题?

    3.方差齐性

    不同的自变量X取值,对应的因变量Y的变化,应该是类似的,也就是Y的方差变化不能太大。如果因变量方差变化太大,也就是方差不齐,会导致几个后果: 1)斜率没有偏倚unbiased,但是斜率的误差变大了。 2)统计检验会出问题

    4.不同个案之间的误差不相关 errors across cases are not correlated

    也就是说,个案之间是相互独立,互不影响的。常见的影响个案独立性的群组效应,例如同一个班级的学生对某位老师的看法可能类似、同一个家庭的生活习惯也可能相似。追踪数据也会出现观察值之间有关联的问题,因为毕竟都是同一个人的数据,一个人在不同时期的体重可能具有很高的相关度。

    如果个案之间相互影响,斜率依然没有偏倚unbiased,但是斜率的误差会变大(通常是变小),也会带来统计检验的问题。(why???)

    5.正态分布

    误差是正态分布的。

    多元线性回归模型的检验 Detection of assumption violation

    具体解释:

    1.检验线性关系

    1)偏回归图: 在简单线性回归(一个X一个Y)中,我们画出自变量和因变量的散点图大致可以判断是否为线性关系。但是在多元线性回归中,我们不能再用这种一个自变量和一个因变量的bivariate plot,因为它没有控制其他自变量的影响,而是应该用偏回归图。什么是偏回归图?partial regression plots (residuals of Y on the remaining explanatory variables vs residuals of the target explanatory variable on the remaining explanatory variables)

    2) 检验多项式; 如果X的平方、X的三次方在多元线性回归方程中也显著,说明X和Y不是线性关系。

    3) 检验虚拟变量dummy variables: 把X划分为几个虚拟变量,然后检验这几个虚拟变量和Y的关系如何。如果虚拟变量和Y的关系类似,那么比较有可能是线性,如果几个虚拟变量和Y之间的关系差异比较大,那么X和Y之间更有可能是非线性关系。例如,探讨年龄和幸福感之间的关系,把年龄分为6-19儿童,20-40青年,41-60中年,61以上老年几个年龄段,儿童的幸福感随着年龄的增长而提高,但青年和中年的幸福感可能随着时间而降低,老年时人的幸福感可能又会提高。

    2.自变量与误差不相关

    理论与逻辑推断

    3.检验方差齐性

    1) 偏回归图;

    2) 自变量和因变量的散点图

    2716a440d63318ac3956db80474847fa.png

    如图就是一个方差不齐的例子,可以看到点越来越分散了,离散程度越来越大。

    3)在stata中检验方差是否整齐:

    • Breusch-Pagan test, stata 命令: hettest (只用于检验线性的方差异质性)
    • White's general test, stata命令:首先ssc install whitetest 安装程序,然后whitetst.( 除了可以检验线性的异质性,还可以检验曲线的方差的异质性,也就是检验X平方、X三次方的方差是否整齐)

    4.误差之间不相关

    注意时间序列数据、群组数据,这些数据可能会有误差相关的问题

    多元线性回归模型的修正 Remedies of assumption violation

    1.线性关系:用正确的模型,如果是曲线关系应该用log转化,或平方项,或虚拟变量(见用多元线性回归模型表示曲线关系)

    2.误差与自变量不相关:

    1)增加遗漏的变量

    2)如果有因果倒置reverse causation的问题: 2SLS

    3)如果有measurement errors, multilevel models

    3. 方差不齐:

    robust standard error:也就是用white standard error, 在stata中只要reg y x1 x2, robust即可(具体原理待补充)

    加权最小二乘法weighted least square:如果方差是整齐的,那么每一个数据都是被同等对待的,权重是一样的;如果方差不齐,那么我们就给方差小的数据更多的权重,给方差大的数据更少的权重(因为方差大意味着偏离整体的程度高)

    4. 误差不相关:

    1)multilevel/mixed model

    2)autoregressive model

    展开全文
  • 在对特定分析对象进行建模分析时,一般假设该模型变量服从正态分布,然后采用符合该变量的...该类方法主要通过对分析数据建立直观图形判断是否服从正态分布,常用的图形分析方法主要:直方图、Q-Q图及箱形图; 2.
  • 在前面的文章中讲过,很多模型的假设条件都是数据是服从正态...常用的方法有Q-Q图、P-P图、直方图、茎叶图。1.1 Q-Q图此Q-Q非用于聊天的QQ,Q是quantile的缩写,即分位数。分位数就是将数据从小到大排序,然后切成1...
  • 模型评估

    千次阅读 2019-06-09 20:20:32
    在机器学习领域中,为了检验训练好的模型性能,需要对模型进行评估。而且不同类型的模型所使用的评估方法也会有所差异。只有选择与问题相匹配的评估方法,才能快速地发现模型选择或训练过程中出现的问题,迭代地对...
  • 二元逻辑回归介绍定义Logistic回归主要用于因变量为分类变量(如是否等)的回归分析,自变量可以为分类变量,也可以为连续变量。...Logistic 回归模型的假设检验——常用的检验方法有似然比检验(likelihood ratio ...
  • 总第177篇/张俊红在前面的文章中讲过,很多模型的假设条件都是数据是服从正态分布的。...常用的方法有Q-Q图、P-P图、直方图、茎叶图。1.1 Q-Q图此Q-Q非用于聊天的QQ,Q是quantile的缩写,即分位数。分位数就是...
  • 时间序列之单位根检验(1)

    千次阅读 2020-11-17 13:47:53
    单位根检验统计检验方法有ADF检验、PP检验、NP检验。最常用的是ADF检验。 无法区分哪个是自变量,哪个是因变量,需要对所有的变量做检验。 1). ADF检验 ADF检验全称 是 Augmented Dickey-Fuller test,ADF是 Dic...
  • 在前面的文章中讲过,很多模型的假设条件都是数据是服从正态...常用的方法有Q-Q图、P-P图、直方图、茎叶图。1.1 Q-Q图此Q-Q非用于聊天的QQ,Q是quantile的缩写,即分位数。分位数就是将数据从小到大排序,然后切成1...
  • 本文主要记录几种常用的模型检验方法:ROC、AUC、Gini系数,KS曲线。重点在R语言的使用上,暂时不包括检验方法的原理。博主刚开始使用R语言不久,因此也借此机会整理记录自己的学习过程。如不当,欢迎指正。
  • 正态性检验

    2019-11-09 16:49:29
    总第177篇/张俊红在前面的文章中讲过,很多模型的假设条件都是数据是服从正态分布...常用的方法有Q-Q图、P-P图、直方图、茎叶图。1.1 Q-Q图此Q-Q非用于聊天的QQ,Q是quantile的缩写,即分位数。分位数就是将数据从小...
  • 其他常用方法相比,该模型构建简单,预测准确。说明本文提出的方法是行之有效。在实际应用中,可以通过增加训练数据量、对数据进行归一化处理等操作,进一步提高预测精度。总之,BP神经网络用于丝状真菌生长...
  • 不同进度测量方法可供用于建筑项目。 它们范围从传统模型到现代模型(例如3维和4维模型)不等。 本文研究了加纳建筑业目前使用进度测量方法。 从文献中确定了八种常用方法,并由62名建筑专业人士对一级建筑...
  • 评分卡模型python实现

    千次阅读 2019-06-19 10:32:50
    评分卡模型 首先来介绍几个名词 变量分析:确定变量之间是否存在共线性,如存在高度...常用的有等距分段、等深分段、最优分段。 单因子分析:检测各变量的强度,常用方法为:WOE、IV。 单因子分析 WOE(We...
  • 针对目前常用的特征量关联维数和近似熵这两个指标在应用中存在不足,提出了一种新的替代数据法对时间序列中的非线性特性进行检测。替代数据法由零假设和检验特征量两部分组成。笔者提出将模糊熵作为特征量引入到...
  • 决策树模型(1)

    2017-05-26 00:54:24
    分类通过已的训练集,输入相应的模型中训练拟合,在通过检验集进行进行验证,从而预测未知样本类; 常用的分类法决策树分类,基于规则的分类,神经网络,支持向量机, 朴素贝叶斯分类法,通常每一种分类方法都...
  • R语言常用计量分析包CRAN任务视图:计量经济学线形回归模型(Linearregressionmodels)线形模型可用stats包中lm()函数通过OLS来拟合,该包中也各种检验方法用来比较模型,如:summary()和anova()。lmtest包里...
  • 水力压裂是煤层气增产改造的常用手段,对压裂效果好坏重要意义,对比压裂前后瞬变电磁探测数据是一种对其有效评价方法。探讨了瞬变电磁波场变换理论,实现了对瞬变电磁信号中波场特性提取,提出了基于虚拟波场...
  • 1. 离线评估 ...最基础,最常用的离线评估方法,它将原始的样本集合随机划分为训练集和测试集两部分,所以 Holdout 检验的关键词就是“随机”。 缺点:评估的结果一定随机性。且样本比较少时,训
  • Matlabautocorr自相关函数

    万次阅读 多人点赞 2016-02-23 22:50:58
    对序列的平稳性的检验两种检验方法:一种是根据时序图和自相关图的特征作出判断的图检验,该方法操作简单,应用广泛,缺点是带主观性;另一种是构造检验统计量进行的方法,目前最常用的方法是单位根检验,这个...
  • 原标题:如何判断数据是否符合正态分布?在前面的文章中讲过,很多模型的假设条件都是数据是...常用的方法有Q-Q图、P-P图、直方图、茎叶图。1. Q-Q图此Q-Q非用于聊天的QQ,Q是quantile的缩写,即分位数。 分位数就...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 200
精华内容 80
关键字:

常用的模型检验方法有