大家好！欢迎来到Weka与数据挖掘。这里是新西兰。
在第四部分,我们来学习一些很酷的机器学习方法。
我们将要学习线性回归、回归分类、逻辑回归、
支持向量机和集成学习法。最后几个是当代的方法，
问世不久，是最先进的机器学习
方法。
记得吗，这门课共5部分，下周是第五部分，也就是最后一部分。
我们会整理、总结学过的知识。我们已经学了过半的内容，
大家都做得不错，只需要坚持下去。
这节课，我们将要学习不同机器学习方法的分类边界。
我们将要使用Weka的Boundary Visualizer（分界可视化工具），
一个新的Weka工具。
我们来看一个二维数据集，
iris.2d.arff。这是鸢尾花数据集的二维版本。
我删除了两个鸢尾花数据集的属性
（花萼长和花萼宽） 得到这个二维数据集，以及鸢尾花的种类。
我们来使用Boundary Visualizer。点击Weka Chooser，就可以看到
可视化菜单。Weka包含很多工具，我们
现在只用Boundary Visualizer。我要使用Boundary Visualizer
打开同样的文件，二维鸢尾花数据集。这里我们可以看到数据的图形。
花瓣宽是y轴，花瓣长是x轴。
这就是这个数据集的可视化图，图中有三种鸢尾花：红色是鸢尾花setosa，绿色是versicolor，
蓝色是virginica。
下面来选分类器，首先使用OneR分类器，在rules目录下。
我们用训练数据作图，等它散开。
这个有色图标显示了决策分界线，而训练数据叠加在分界之上。
我们来看
Explorer中OneR是如何处理这个数据集的。
OneR选择从花瓣宽分支。
如果花瓣宽小于某个值，就是鸢尾花setosa；如果值居中，就是鸢尾花versicolor；
如果高于上限，就是鸢尾花virginica。
这和图中标示的一样。我们以花瓣宽分支。如果小于
某个值，就是鸢尾花setosa；如果值居中，就是鸢尾花versicolor；
如果在顶端，就是鸢尾花virginica。
这就是OneR产生的决策分界线的空间表示法，
即Boundary Visualizer的功能，标示决策分界线。
它显示OneR在这里选择一个属性（花瓣宽度）分支。
它还可以选择花瓣长度，那么我们就会得到纵向的决策分界线。
不论哪种方式，我们都会通过OneR得到些条形。
我们再来看一些其他分类器的分界线。
我们来看IBk，一个lazy分类器。
这是上一部分我们讲到的基于实例的分类器。
运行。
我们得到了不同的图形。
先来停止运行。
我们得到了对角线图形。
这条对角线下是鸢尾花setosa，中间区域是鸢尾花versicolor，
而鸢尾花virginica大体在右上角。
这就是IBK的工作原理。
它根据一个测试实例。
比方说这个实例，在分界线的这边，红色的区域。
然后，IBK选择离它最近的实例。
我猜是这个点。
比那个点近些。
这是一个红点。
如果跨越分界线去找，它会选择绿色分类，
因为绿色是最近的实例。
如果你认真去看，会发现这条分界线划在最近的红点和
绿点之间。
同样的，如果在这里找一个点，我想最近的两个实例会是这个蓝点
和这个绿点。
蓝点更近一些。
这回，分界线沿着这条直线。
可以看到这不只是一条线，而是逐段的线。
分界线的这部分穿过离它最近的两点中间。
再往下，分界线穿过这两点的正中间。
它是两点连线的中垂线。
我们得到的是由一小段一小段组成的是逐段线性分界线。
如果我们改变参数，结果会很有趣：如果我们
把最近的点数改为5，而不是1。
现在我们得到了一张稍微模糊的图表，因为在下面纯红的区域
距离这点最近的5个点都是红点。如果我们看中间区域，
离这点最近的点为（这会是5个点中之一），
这可能是另一点，可能还有两三点在这里。
这里是过渡色，IBK投票来决定。
如果有三个红点、两个绿点，就会是红色区域，
也就是这个深红色的区域。
反之，如果绿点比红点多，就会是绿色区域。
因此，我们会得到模糊的分界。
这就是对分界的概率化的描述。
我们来把k值改为20，看会发生什么。
现在我们得到了同样的形状，但分界更为模糊。
如果你愿意，我们可以说分界可视化显示了
机器学习法的工作原理。
是数据集的内在形式的表达。
可视化帮助我们像机器学习法一样思考。
我们来选择另一种方法，
NaiveBayes。
当介绍NaiveBayes时，我们只提到过离散属性。
针对连续属性，我们要选择一个监督离散方法（supervised discretization method）。
不用担心这些细节，这是使用NaiveBayes处理数值属性的
最常用的方法。
我们来看图表。
非常有意思。
NaiveBayes认为两个属性
平等而独立地参与决策。
它算出针对这个属性的值和针对另一个属性的值
再把两者相乘。
还记得NaiveBayes中乘法么。
当相乘这些数时，我们用一个概率的棋盘格局，
来将它们相乘。
这是因为所有属性都被认为是独立的。
这和我们之前见到的基于实例的方法的决策分界线完全不同。
这就是分界可视化的好处，它可以帮助我们思考
内部的运作方法。
我们再来看一个例子。
我要用J48，在trees目录下。
我们得到了这样的图形。
选择J48，来看Explorer中的处理结果。
我们来看这个小决策树，首先以花瓣宽分支，如果值小于0.6，
就是鸢尾花setosa。
再以花瓣宽分支，如果值大于1.7,就是鸢尾花virginica。
然后，在中间，先以花瓣长，再以花瓣宽分支，得到
鸢尾花versicolor和鸢尾花virginica的混合。
我们先以花瓣宽划分，就是这个分支。
竖轴表示花瓣宽。
如果小于这个值，就是鸢尾花setosa。
然后我们在同一个坐标轴再次划分。
如果大于这个值，就是鸢尾花virginica。
如果在中间区域，我们以另一个轴划分，也就是花瓣长。
这个区域是鸢尾花versicolor。我们再以花瓣宽划分。
我们来更改参数minNumObj，它控制叶节点最小实例数。
如果加大，会得到一个较简单的树。
我们在第三部分的某节课中讲到过这个参数。
运行，得到一个较为简单的树，和通过这个参数得到的
较为简单的规则一致。
我们还可以给参数设更大的值，例如10，再次运行。
我们得到更为简单的规则，和OneR产生的规则很相似。
我们学习了分类分界线。
分类器在实例空间创建分界线，不同的分类器
创建实例空间的方式不同。
这就叫做分类器的偏差 （不同的创建实例空间
的方法）。
我们学习了OneR、IBk、NaiveBayes和J48，看到了完全不同的偏差，
完全不同的创建实例空间的方式。
当然，这种可视化仅限数值属性和二维视图。
这不是一个可以广泛使用的工具，但却能够帮助你学习不同的分类器。
请阅读教材17.3章分类边界。
请做这节课的课后练习。
祝好运！回头见！
再见！