Support Vector Machine
线性可分类
这里只介绍两类的线性可分问题,我们的任务就是设计一个超平面来划分数据集。 设\(\mathbf{x}_i, i=1,2,\ldots,N\)是训练集\(X\)中的特征向量。这些类来自于类\(\omega_1, \omega_2\),并且假设是线性可分的。那么我们设计的超平面可以用这条公式来描述:
\[g(x) = \mathbf{\omega}^T \mathbf{x} + \omega_0\]
Logistic Regression
logistic regression 和 perceptron 其实是比较像的,都是只能对线性可分的数据建模,也是基于神经科学的神经元模型得来的,神经元模型图如下。不过 logistic regression 的输出结果值具有一定的解释性,可以把它理解为概率。另外一方面,logistic regression 可以很容易地扩展到对多个类建模,而 percptron 只能作为二元分类器。 logistic regression 使用 sigmoid 激活函数
\[\sigma = \frac{1}{1 + \exp^{-z}}\]
K-means Clustering
k-means 算法源于信号处理中的一种矢量量化方法,现在则更多地作为一种聚类分析方法流行于数据挖掘领域。k-means 聚类的目的是:把 n 个点(可以是样本的一次观察或一个实例)划分到 k 个聚类中,使得每个点都属于离他最近的均值(此即聚类中心)对应的聚类,以之作为聚类的标准。详细介绍可以查看维基百科的解释
K Nearest Neighborhood
下面引用下维基百科对 KNN 的描述,具体点击这里
在模式识别领域中,最近邻居法(KNN 算法,又译 K-近邻算法)是一种用于分类和回归的非参数统计方法。在这两种情况下,输入包含特征空间中的 k 个最接近的训练样本。
- 在 k-NN 分类中,输出是一个分类族群。一个对象的分类是由其邻居的“多数表决”确定的,k 个最近邻居(k 为正整数,通常 较小)中最常见的分类决定了赋予该对象的类别。若 k = 1,则该对象的类别直接由最近的一个节点赋予。
- 在 k-NN 回归中,输出是该对象的属性值。该值是其 k 个最近邻居的值的平均值。
Back Propagation Neural Network
模型架构
BP 神经网络是一种多层的前馈神经网络,其主要的特点是:信号是前向传播的,而误差是反向传播的。BP 神经网络的过程主要 分为两个阶段,第一阶段是信号的前向传播,从输入层经过隐含层,最后到达输出层;第二阶段是误差的反向传播,从输出层 到隐含层,最后到输入层,依次调节隐含层到输出层的权重和偏置,输入层到隐含层的权重和偏置。其架构如图所示Decision Tree
决策树模型
下面引用下维基百科对决策树的描述:
机器学习中,决策树是 一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应 从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。 数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。
Naive Bayes
这次实验主要使用朴素贝叶斯算法做分类,除了分类外贝叶斯算法还可以用来做回归。使用朴素贝叶斯的一个前提条件是各个事件都是独立的,这一点在实际应用中是必须要记住的
贝叶斯模型
在贝叶斯模型中我们对信度(beliefs)比较关心,这个从贝叶斯方式来说可以解释为概率。对于某一事件\(A\),我们通常有这个 事件\(A\)的先验知识。比如下雨这一事件,我们知道在夏天发生的可能性要大于冬天,这就是一种先验知识。 对于事件\(A\)和事件\(X\),贝叶斯公式如下: