目前平台处于试运行阶段,如有任何问题或建议,请发送邮件至 service@dataju.cn 或加入QQ群 565136792 联系管理员。

满足不同角色需求:领域专家 数据管理者 数据科学家 科研人员、高校教师及研究生 数据分析爱好者

暂无

暂无

  • 线性核函数C-SVC分类方法

    线性核函数C-SVC模型,是采用线性核函数的C-SVC模型。C-SVC模型是支持向量机模型(Support Vector Machine)的一种,针对有监督学习(Supervised Learning)中的二分类(Binary Classification)问题。使用线性决策函数$ f(x) = w^T \cdot x +b $,对二分类数据尽可能进行划分。其求解最优化问题的原始问题如下: $$ \begin{equation} \begin{split} \min_{w, \xi} & \quad \frac{1}{2} \|w\|^2 + C \sum_{i=1}^{n} { \xi_i } \\ s.t. & \quad y_i (w^T \cdot x_i + b) \geq 1 - \xi_i, \\ & \quad \xi_i \geq 0, i=1,2,..,n. \end{split} \label{svmOriginal} \end{equation} $$

    在原始问题 \eqref{svmOriginal} 中,建模对象数量为$n$,每个建模实例为$x_i$。最终的决策函数为 $ f(x) = w^T \cdot x +b $。


  • 高斯径向核函数C-SVC分类方法

    RBF核函数C-SVC模型,是采用线性核函数的C-SVC模型。C-SVC模型是支持向量机模型(Support Vector Machine)的一种,针对有监督学习(Supervised Learning)中的二分类(Binary Classification)问题。为了解决线性核函数无法处理线性不可分的情形,引入函数$\Phi( )$对将原始空间映射到高维空间,以使数据在高维空间得以划分,如公式\eqref{equ:kernalFun}。 $$ \begin{equation} \begin{split} &~~ R^n \rightarrow \mathscr{ H } \\ &~~ x \rightarrow \Phi (x) \end{split} \label{equ:kernalFun} \end{equation} $$ 对应求解最优化问题的原始问题为: $$ \begin{equation} \begin{split} \min & \quad \frac{1}{2} w^Tw + C \sum_{i=1}^{n} { \xi_i } \\ s.t. & \quad y_i (w^T \cdot \Phi( x_i ) + b) \geq 1 - \xi_i, \\ & \quad \xi_i \geq 0. \end{split} \label{equ:svmOriginal} \end{equation} $$ 其中,建模对象数量为$n$,每个建模实例为$x_i$。最终的决策函数为 $ f(x) = w^T \cdot \Phi( x ) +b $。由于函数$\Phi(x)$ 并非预先给定,这里就需要用到SVM中的小技巧,将原始问题\eqref{equ:svmOriginal}转化为其对偶问题,对偶问题的形式为: \begin{equation} \begin{split} \min_{\alpha} & \quad \frac{1}{2} \sum_{i=1}^{n} \sum_{i=1}^{n} y_i y_j ( \Phi(x_i) \cdot \Phi(x_j) ) \alpha_i \alpha_j - \sum_{i=1}^{n} \alpha_j \\ s.t. & \quad \sum_{i=1}^{n} y_i \alpha_i = 0, \\ & \quad 0 \leq \alpha_i \leq C, i=1,2,..,n. \end{split} \label{equ:svmNonlinDual} \end{equation} 其中,建模对象数量为$n$,$\alpha_i$为原始问题不等式约束所对应的拉格朗日乘子。更重要的是,公式\eqref{equ:svmNonlinDual}中的$\Phi(x_i) \cdot \Phi(x_j)$就可使用核函数$K(x_i,x_j)$来代替。相应的决策函数变为$f(x)=$ 当选取RBF核函数时, $$ K( x_i, x_j ) = \exp( -\frac{\|x_i-x_j\|^2}{2\sigma^2} ) $$

  • C4.5决策树分类方法

    决策树是一类常用的分类方法,以树状结构拟合数据从而构建预测模型,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。其核心问题有两个: 1. 如何确定哪个特征被优先选择用来分类。 根据某一个特征划分数据集,其划分前后信息熵会有变化。优先选择的特征是让给让信息熵变化最大或者信息熵增益比最大的特征。 不过,从另外一方面来说,也要避免选择日期或者非常特殊的特征来做决策点,因为这些特征不具备任何的泛化能力。 2. 如何避免过拟合。 对于决策树来说,如果树的高度过高,或者某个叶子节点的数据特别少,或者叶子节点非常多(后两者有关联),就有可能是过拟合,在匹配被预测数据的时候就不会有很好的性能。避免决策树学习中的过度拟合问题,通常通过两种方法: (1)及早停止树增长,比如发现树的高度过高,叶节点过多,或者节点内数据过少。这是sci-kit learn库目前的做法。 (2)通过后剪枝减少决策树的节点的个数。 尽管上面第一种方法可能看起来更直接,但是对过度拟合的树进行后修剪被证明在实践中更成功。这是因为在第一种方法中精确的估计何时停止树增长很困难。后剪枝的算法基本上就是合并同一个根节点下面所有的叶节点成为一个大的节点,而选择哪些节点做合并则需要根据节点内部数据个数。 选取能够得到最大信息增益(information gain)的特征为数据划分归类,直到全部划分结束而不对树的规模进行任何控制。 等树生成之后,执行后剪枝。 信息增益的潜在问题是,比如有一个数据集含有一个特征是日期或者ID,则该特征会得到最大的信息增益,但是显然在验证数据中不会得到任何的结果。C45的信息增益比就是解决这个问题的。

  • 逻辑回归(Logistic Regression)分类方法

    Logistic回归也称Logit回归或Logit模型,是一个因变量是分类值的回归模型。

    Logistic模型是特殊情况下的一般线性模型(General linear model),可用来预测二值因变量的概率。其预测函数中使用到了Logistic Function (见公式 \eqref{equ:logisticFun}),所以称其为Logistic Regression。

    $$ \begin{equation} \begin{split} logistic(x)= \frac{L}{1+\mathrm{e}^{-k(x-\mu)}} \end{split} \label{equ:logisticFun} \end{equation} $$ 当$L=1,k=1,\mu=\textbf{0}$时,logistic regression的预测函数为 $$ \begin{equation} \begin{split} h_{\theta}(x)=logistic(\theta^T \cdot x)= \frac{1}{1+\mathrm{e}^{ -\theta^T \cdot x }} \end{split} \label{equ:logisticOriginal} \end{equation} $$ 当响应值$y \in \{0,1\}$时 $$ \begin{equation} \begin{split} & P(y=1|x;\theta)=h_\theta(x) \\ & P(y=0|x;\theta)=1-h_\theta(x) \end{split} \label{equ:responseProb} \end{equation} $$ 将两种情况综合起来, $$ \begin{equation} \begin{split} P(y|x;\theta)=(h_\theta(x))^y(1-h_\theta(x))^{1-y} \\ \end{split} \label{equ:responseProbInOne} \end{equation} $$ 取\eqref{equ:responseProbInOne}似然函数 $$ \begin{equation} \begin{split} L(\theta)=\prod^n_{i=1}P(y_i|x;\theta)=\prod^n_{i=1}(h_\theta(x_i))^{y_i}(1-h_\theta(x_i))^{1-y_i} \end{split} \label{equ:likehoodLogistic} \end{equation} $$

  • K近邻分类方法

    k近邻居法(k Nearest Neighbor)是一种用于分类和回归的非参数据建模方法,是一种基于实例的学习,或称是局部近似和惰性学习方法。k-近邻算法是最简单的机器学习算法中之一。 在KNN分类中,输出是一个分类标签。对象的分类是由其邻居的“多数表决”确定的,k个最近邻居(k为正整数,通常较小)中最常见的分类决定了赋予该对象的类别。若k = 1,则该对象的类别直接由最近的一个节点赋予。 在KNN回归中,输出是该对象的属性值。该值是其k个最近邻居的值的平均值。 最近鄰居法採用向量空間模型來分類,概念為相同類別的案例,彼此的相似度高,而可以藉由計算與已知類別案例之相似度,來評估未知類別案例可能的分類。 无论是分类还是回归,衡量邻居的权重都非常有用,使较近邻居的权重比较远邻居的权重大。例如,一种常见的加权方案是给每个邻居权重赋值为1/ d,其中d是到邻居的距离。 邻居都取自一组已经正确分类(在回归的情况下,指属性值正确)的对象。虽然没要求明确的训练步骤,但这也可以当作是此算法的一个训练样本集。

  • ID3决策树分类方法

    决策树是一类常用的分类方法,以树状结构拟合数据从而构建预测模型,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。其核心问题有两个: 1. 如何确定哪个特征被优先选择用来分类。 根据某一个特征划分数据集,其划分前后信息熵会有变化。优先选择的特征是让给让信息熵变化最大或者信息熵增益比最大的特征。 不过,从另外一方面来说,也要避免选择日期或者非常特殊的特征来做决策点,因为这些特征不具备任何的泛化能力。 2. 如何避免过拟合。 对于决策树来说,如果树的高度过高,或者某个叶子节点的数据特别少,或者叶子节点非常多(后两者有关联),就有可能是过拟合,在匹配被预测数据的时候就不会有很好的性能。避免决策树学习中的过度拟合问题,通常通过两种方法: (1)及早停止树增长,比如发现树的高度过高,叶节点过多,或者节点内数据过少。这是sci-kit learn库目前的做法。 (2)通过后剪枝减少决策树的节点的个数。 尽管上面第一种方法可能看起来更直接,但是对过度拟合的树进行后修剪被证明在实践中更成功。这是因为在第一种方法中精确的估计何时停止树增长很困难。后剪枝的算法基本上就是合并同一个根节点下面所有的叶节点成为一个大的节点,而选择哪些节点做合并则需要根据节点内部数据个数。

  • Random Forest 多分类方法

    随机森林(Random Forests,RF)是一个以决策树为基础分类器的集成分类器。大量文件及实证研究表明,随机森林比单棵的决策树更稳健,泛化性能能好。它可以被看成是Boost aggregating与特征随机选取两者思想结合而来。从算法上看随机森林的训练、分类过程并不复杂。首先,从给定的训练集通过多次随机的可重复的采样得到多个 bootstrap 数据集。接着,对每个 bootstrap 数据集构造一棵决策树。然后,在每个叶节点处通过统计训练集中达到此叶节点的分类标签的直方图经验的估计此叶节点上的类分布。这样的迭代训练过程一直执行到用户设定的最大树深度或者直到不能通过继续分割获取更大的信息增益为止。

  • Simple Naive Bayes 分类方法

    Simple Naive Bayes Classifier即简单朴素贝叶斯分类器,是Naive Bayes Classifier(朴素贝叶斯分类器)的一种。其构建分类器的思想是,在各个属性互相之间两两独立的假设前提下,运用贝叶斯定理构建统计分类器。 给定训练样本($\textbf{x}={x_1,x_2,...,x_n}$),分类问题是判断概率$p(C_k|\textbf{x})=p(C_k|x_1,x_2,...,x_n)$。根据贝叶斯定理, \begin{equation} \begin{split} \label{svmTotal} P(C_k|\textbf{x})= \frac{p(C_k, \textbf{x})}{p(\textbf{x})} = \frac{p(C_k)p(\textbf{x}|C_k)}{p(\textbf{x})} \\ \end{split} \end{equation} \begin{equation} \begin{split} p(C_k,\textbf{x}) &= p(C_k)p(x_1,x_2,...,x_n|C_k) \\ &= p(C_k)p(x_1|C_k)p(x_2,x_3,...,x_n|C_k,x_1) \\ &= p(C_k)p(x_1|C_k)p(x_2|C_k,x_1,x_2)p(x_3,x_4,...x_n|C_k,x_1,x_2) \\ &= p(C_k)p(x_1|C_k)p(x_2|C_k,x_1,x_2)...p(x_n|C_k,x_1,x_2,...x_{n-1}) \end{split} \end{equation} 由于各属性之间两两独立,有以下等式存在 \begin{align} & p(\textbf{x})=p(x_1,x_2,...,x_n)=p(x_1)p(x_2)...p(x_n) \\ & p(x_i|C_k,x_j)=p(x_i|C_k)\\ & p(x_i|C_k,x_j,x_q)=p(x_i|C_k)\\ & p(x_i|C_k,x_j,x_q,x_s)=p(x_i|C_k) \end{align} 因此, \begin{align} p(C_k|\textbf{x}) & = \frac{p(C_k,\textbf{x})}{p(\textbf{x})} \\ & = \frac{ p(C_k)p(x_1|C_k)p(x_2|C_k,x_1)...p(x_n|C_k,x_1,x_2,..x_{n-1})}{p(x_1)p(x_2)...p(x_n)} \\ & = \frac{ p(C_k) \prod_{i=1}^{n}{p(x_i|C_k)} }{p(x_1)p(x_2)...p(x_n)} \end{align}

  • 线性核函数NPSVM分类方法

    线性核函数非平行SVM分类方法,采用两条直线进行分类划分,求解以下两个优化问题: $$ \begin{equation} \begin{split} \min_{ w_{+}, b_{+}, \eta_{+}, \xi_{-}, \gamma } & \quad \frac{1}{ 2 } \eta_{+}^T \eta_{+} + c_1 e_{-}^T \xi_{-} + \frac{1}{ 2 } c_2 ( \| w_{+} \|_{2}^{2} + b_{+}^2 ) \\ s.t. & \quad -(Bw_{+} + b_{+}e_{-}) + \xi_{-} \geq e_{-}, \\ & \quad Aw_{+} + b_{+}e_{+} = \eta_{+}, \\ & \quad \xi_{-} \geq 0 \\ \end{split} \end{equation} $$ 和 $$ \begin{equation} \begin{split} \min_{ w_{-}, b_{-},\eta_{-}, \xi_{+}, \gamma } & \quad \frac{1}{ 2 } \eta_{-}^T \eta_{-} + c_3 e_{+}^T \xi_{+} + \frac{1}{ 2 } c_4 ( \| w_{-} \|_{2}^{2} + b_{-}^2 ) \\ s.t. & \quad Aw_{-} + b_{-}e_{+} + \xi_{+} \geq e_{+}, \\ & \quad Bw_{-} + b_{-}e_{-} = \eta_{-}, \\ & \quad \xi_{+} \geq 0 \\ \end{split} \end{equation} $$

  • 分类回归决策树(CART)

    决策树是一类常用的分类方法,以树状结构拟合数据从而构建预测模型,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。其核心问题有两个: 1. 如何确定哪个特征被优先选择用来分类。 根据某一个特征划分数据集,其划分前后信息熵会有变化。优先选择的特征是让给让信息熵变化最大或者信息熵增益比最大的特征。 不过,从另外一方面来说,也要避免选择日期或者非常特殊的特征来做决策点,因为这些特征不具备任何的泛化能力。 2. 如何避免过拟合。 对于决策树来说,如果树的高度过高,或者某个叶子节点的数据特别少,或者叶子节点非常多(后两者有关联),就有可能是过拟合,在匹配被预测数据的时候就不会有很好的性能。避免决策树学习中的过度拟合问题,通常通过两种方法: (1)及早停止树增长,比如发现树的高度过高,叶节点过多,或者节点内数据过少。这是sci-kit learn库目前的做法。 (2)通过后剪枝减少决策树的节点的个数。 尽管上面第一种方法可能看起来更直接,但是对过度拟合的树进行后修剪被证明在实践中更成功。这是因为在第一种方法中精确的估计何时停止树增长很困难。后剪枝的算法基本上就是合并同一个根节点下面所有的叶节点成为一个大的节点,而选择哪些节点做合并则需要根据节点内部数据个数。 分类与回归树(CART——Classification And Regression Tree) 是一种有效的非参数分类和回归方法。它通过构建二叉树达到预测目的。 CART 模型最早由Breiman等人提出,已经在统计领域和数据挖掘技术中普遍使用。它采用与传统统计学完全不同的方式构建预测准则,它是以二叉树的形式给出,易于理解、使用和解释。由CART 模型构建的预测树在很多情况下比常用的统计方法构建的代数学预测准则更加准确,且数据越复杂、变量越多,算法的优越性就越显著。模型的关键是预测准则的构建,准确的。 CART使用基尼不纯度(Gini Impurity)来决定划分。Gini Impurity和information gain ratio的理解和区分在这里: 它和C45基本上是类似的算法,主要区别:1)它的叶节点不是具体的分类,而是是一个函数,该函数定义了在该条件下的回归函数。2)CART是二叉树,而不是多叉树。

  • 线性核函数C-SVR回归方法

    线性核函数C-SVC模型,是采用线性核函数的C-SVR模型。C-SVR模型是支持向量机模型(Support Vector Machine)的一种,针对有监督学习(Supervised Learning)中的归回或称函数拟合(Regression)问题。使用线性函数$ f(x) = w^T \cdot x +b $对数据进行拟合。求解最优化问题的原始问题如下: $$ \begin{equation} \begin{split} \min_{w, \xi} & \quad \frac{1}{2} \|w\|^2 + C \sum_{i=1}^{n} { (\xi_i+\xi_i^*) } \\ s.t. & \quad (w^T \cdot x_i + b) - y_i \leq \epsilon + \xi_i, \\ & \quad y_i - (w^T \cdot x_i + b) \leq \epsilon + \xi_i, \\ & \quad \xi_i \geq 0, \xi_i^* \geq 0, i=1,2,..,n. \end{split} \label{equ:svrOriginal} \end{equation} $$ 其中,建模对象数量为$n$,每个建模实例为$x_i$。最终的归回拟合函数为 $ f(x) = w^T \cdot x +b $。 原始问题\ref{equ:svrOriginal}对应的对偶问题为 $$ \begin{equation} \begin{split} \min_{\alpha} & \quad \frac{1}{2} \sum_{i=1}^{n}\sum_{j=1}^{n} (\alpha_i^* - \alpha_i)(\alpha_j^* - \alpha_j)(x_i \cdot x_j) \\ & \quad + \epsilon \sum_{i=1}^n(\alpha_i^* + \alpha_i) - \sum_{i=1}^{n} y_i(\alpha_i^* - \alpha_i) \\ s.t. & \quad \sum_{i=1}^{n} (\alpha_i-\alpha_i^*) = 0, \\ & \quad 0 \leq \alpha_i \leq C, 0 \leq \alpha_i^* \leq C, i=1,2,..,n. \end{split} \label{equ:svrDual} \end{equation} $$ 其中,建模对象数量为$n$,$\alpha_i,\alpha_i^*$为原始问题不等式约束对应的拉格朗日乘子。相应的拟合函数为 $ f(x) = w^T \cdot x + b =\sum_{i=1}^n( \alpha_i^* - \alpha_i )( x_i \cdot x ) + b$。

  • 高斯径向核函数C-SVR回归方法

    线性核函数C-SVR模型,是采用线性核函数的C-SVR模型。C-SVR模型是支持向量机模型(Support Vector Machine)的一种,针对有监督学习(Supervised Learning)中的归回或称函数拟合(Regression)问题。当采用线性核函数时候,拟合函数结果$f(x)$也是线性的。通过引入函数$\Phi( )$对将原始空间映射到高维空间,使拟合结果可以是非线性的情形,相应映射为\eqref{equ:kernalFun}。 $$ \begin{equation} \begin{split} &~~ R^n \rightarrow \mathscr{ H } \\ &~~ x \rightarrow \Phi (x) \end{split} \end{equation} $$ 当引入核函数后,C-SVR原始问题\eqref{equ:svrOriginal}变为: \begin{equation} \begin{split} \label{equ:svrNonlinOriginal} \min_{w, \xi} & \quad \frac{1}{2} \|w\|^2 + C \sum_{i=1}^{n} { (\xi_i+\xi_i^*) } \\ s.t. & \quad (w^T \cdot \Phi(x_i) + b) - y_i \leq \epsilon + \xi_i, \\ & \quad y_i - (w^T \cdot \Phi(x_i) + b) \leq \epsilon + \xi_i, \\ & \quad \xi_i \geq 0, \xi_i^* \geq 0, i=1,2,..,n. \end{split} \end{equation} 其中,$C,\epsilon$为预先设定的参数,建模对象数量为$n$,每个建模实例为$x_i$。最终的归回拟合函数为 $ f(x) = w^T \cdot \Phi(x) +b $。 相应的对偶问题变为: \begin{equation} \begin{split} \label{equ:svrNonlinDual} \min_{\alpha} & \quad \frac{1}{2} \sum_{i=1}^{n}\sum_{j=1}^{n} (\alpha_i^* - \alpha_i)(\alpha_j^* - \alpha_j)( \Phi(x_i) \cdot \Phi(x_j) ) \\ & \quad + \epsilon \sum_{i=1}^n(\alpha_i^* + \alpha_i) - \sum_{i=1}^{n} y_i(\alpha_i^* - \alpha_i) \\ s.t. & \quad \sum_{i=1}^{n} (\alpha_i-\alpha_i^*) = 0, \\ & \quad 0 \leq \alpha_i \leq C, 0 \leq \alpha_i^* \leq C, i=1,2,..,n. \end{split} \end{equation} 最终的拟合函数为$ f(x) = w^T \cdot \Phi(x) + b =\sum_{i=1}^n( \alpha_i^* - \alpha_i )K(x_i, x ) + b$。

  • 高斯过程回归(Guassian Process Regression)

    高斯过程回归是基于贝叶斯理论和统计学习理论发展起来的一种全新机器学习方法,适于处理高维数、小 样本和非线性等复杂回归问题.在阐述该方法原理的基础上,分析了其存在的计算量大、噪声必须服从高斯分布等问题,并给出了改进方法.与神经网络、支持向量机相比,该方法具有容易实现、超参数自适应获取、输出具有概率意义等优点,方便与预测控制、自适应控制、贝叶斯滤波等相结合.最后总结了其应用并展望了其未来发展方向。

  • 分类回归决策树(CART)

    决策树是一类常用的分类方法,以树状结构拟合数据从而构建预测模型,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。其核心问题有两个: 1. 如何确定哪个特征被优先选择用来分类。 根据某一个特征划分数据集,其划分前后信息熵会有变化。优先选择的特征是让给让信息熵变化最大或者信息熵增益比最大的特征。 不过,从另外一方面来说,也要避免选择日期或者非常特殊的特征来做决策点,因为这些特征不具备任何的泛化能力。 2. 如何避免过拟合。 对于决策树来说,如果树的高度过高,或者某个叶子节点的数据特别少,或者叶子节点非常多(后两者有关联),就有可能是过拟合,在匹配被预测数据的时候就不会有很好的性能。避免决策树学习中的过度拟合问题,通常通过两种方法: (1)及早停止树增长,比如发现树的高度过高,叶节点过多,或者节点内数据过少。这是sci-kit learn库目前的做法。 (2)通过后剪枝减少决策树的节点的个数。 尽管上面第一种方法可能看起来更直接,但是对过度拟合的树进行后修剪被证明在实践中更成功。这是因为在第一种方法中精确的估计何时停止树增长很困难。后剪枝的算法基本上就是合并同一个根节点下面所有的叶节点成为一个大的节点,而选择哪些节点做合并则需要根据节点内部数据个数。 分类与回归树(CART——Classification And Regression Tree) 是一种有效的非参数分类和回归方法。它通过构建二叉树达到预测目的。 CART 模型最早由Breiman等人提出,已经在统计领域和数据挖掘技术中普遍使用。它采用与传统统计学完全不同的方式构建预测准则,它是以二叉树的形式给出,易于理解、使用和解释。由CART 模型构建的预测树在很多情况下比常用的统计方法构建的代数学预测准则更加准确,且数据越复杂、变量越多,算法的优越性就越显著。模型的关键是预测准则的构建,准确的。 CART使用基尼不纯度(Gini Impurity)来决定划分。Gini Impurity和information gain ratio的理解和区分在这里: 它和C45基本上是类似的算法,主要区别:1)它的叶节点不是具体的分类,而是是一个函数,该函数定义了在该条件下的回归函数。2)CART是二叉树,而不是多叉树。

  • Linear Ridge Regression

    Linear Ridge Regression

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

  • 混淆矩阵 (confusion matrix)

    混淆矩阵 (confusion matrix是分类问题最常见的评价方法之一,根据分类预测值和实际值,对 $ n $ 类的分类问题生成 $ n \times n$ 的整数值矩阵,矩阵元素的值是预测类别与实际类别一致的个数。图1红框展示了二分类的混淆矩阵,图2红框展示了多分类的混淆矩阵。

    1

    图1  二分类混淆矩阵

    对于二分类方法而言,基本的评价指标都是由混淆矩阵中的元素计算所得,以下是一些常见评价指标。

    1、真正,正类预测正确的数量 $$ true~positive~(TP),~hit = (1) $$

    2、真负,负类预测正确的数量 $$ true~negative~(TN),~correct~rejection = (4) $$

    3、假正,正类预测错误的数量,统计学上的第一类错误 $$ false~positive~(FP),~false~alarm,~Type~I~error = (3) $$

    4、假负,负类预测错误的数量,统计学上的第二类错误 $$ false~negative~(FN),~miss,~Type~II~error = (2) $$

    5、假正召回率 $$ false~positive~rate~(FPR),~fall-out = \frac{(3)}{(3)+(4)} = \frac{(3)}{(6)} $$

    6、假正精准率 $$ false~discovery~rate~(FDR) = \frac{(3)}{(1)+(3)} = \frac{(3)}{(7)} $$

    7、准确率、正确率 $$ accuracy = \frac{(1) + (4)}{(1)+(2)+(3)+(4)} = \frac{(1) + (4)}{(9)} $$

    8、正类精准率 $$ positive~predictive~value~(PPV), precision = \frac{(1)}{(1)+(3)} = \frac{(1)}{(7)} $$

    9、正类召回率、敏感度 $$ sensitivity,~true~positive~rate~(TPR), hit~rate, recall = \frac{(1)}{(1)+(2)} = \frac{(1)}{(5)} $$

    10、负类召回率 $$ specificity~(SPC),~true~negative~rate (TNR) = \frac{(4)}{(3)+(4)} = \frac{(4)}{(6)} $$

    11、负类精准率 $$ negative~predictive~value~(NPV) = \frac{(4)}{(2)+(4)} = \frac{(4)}{(8)} $$

    12、F值、精准率与召回率的调和平均数 $$ F1~score,~harmonic~mean~of~precision~and~recall = \frac{ 2 }{ \frac{1}{precision} + \frac{1}{recall} } = \frac{ 2 \times (1) }{ 2 \times (1) + (2) + (3) } = \frac{ 2 \times (1) }{ (5) + (7) } $$

    多分类情形下的混淆矩阵如图2红框部分所示,同样是从预测值与实际值之间的匹配程度两个维度生成矩阵,对角线上元素为分类模型预测正确的数量,其它位置元素为不同种类的预测错误情况。

    2

    图2  N分类混淆矩阵


  • ROC曲线

    ROC曲线 (Receiver operating characteristics) 是一条二维坐标系中的曲线,用以刻画二分类模型的分辨能力,进而比较不同二分类模型之间的差异,如图1所示。曲线的两个维度是二分类模型结果的混淆矩阵所衍生出的两个指标: True positive rateFalse positive rate

    对给定的测试数据,二分类模型的直接输出主要有两类。一类是直接输出最终的预测类别,形式为 $ output = \{ T, F,..., T \} $,如:决策树等。另一类并未直接输出预测类别,而是类别的倾向性度量,形式为 $ output = \{ 1.25, -0.89,..., 2.18 \} $,如:支持向量机、逻辑回归分类、贝叶斯分类等。

    Roccurves

    图1  ROC曲线示例

    对于第一类二分类模型,在模型和测试数据集固定的前提下,由于模型直接输出就是分类结果,其对应唯一的混淆矩阵,所以每个模型在ROC坐标空间中是一个点,如图2所示 A、B、C、D、E 为5个不同模型对应的ROC空间点。

    对于第二类二分类模型,在模型和测试数据集固定的前提下,由于模型直接输出是分类偏好值,通过设定不同的阈值可以得到不同的混淆矩阵,进而得到多个ROC坐标空间中的点,这些点相连就形成了ROC曲线。所以每个模型在ROC坐标空间中是一条曲线,如图1所示红、绿、黑色的曲线为3个不同的模型对应的ROC曲线。

    2

    图2  每个混淆矩阵结果对应ROC空间中的一个点

    在ROC坐标空间中,越靠近左上角的点或者曲线所对应模型的判别能力越强,而对于互相交叉的ROC曲线,一般还会参考 AUCPRC 曲线。实际应用中需根据具体的应用场景来进行权衡选择,随机模型的ROC曲线是ROC空间的对角线,形态如图3所示。

    4

    图3  随机模型的ROC曲线


  • AUC值

    AUC值 (Area under curve) 一般指的是ROC曲线下的面积,介于0.5到1之间的实数值,用以在ROC曲线的基础上比较二分类模型的判别能力。


暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

暂无

目前平台处于试运行阶段,如有任何问题或建议,请发送邮件至 service@dataju.cn 或加入QQ群 565136792 联系管理员。