利用机器学习识别细碎图斑实战(3):探索性数据分析

 先对数据进行声明:

    本文使用的数据已经经过了一系列脱密处理,不代表任何区域位置的真实信息,仅能用于学习和练习,提供者不对真实性负责,也不得用于任何盈利性的活动或者公开、出版等用途。


本来应该是要写数据处理的,因为本项目的情况特殊,数据都是从标准库中导出来的,基本上可以排除掉错误、遗漏、缺失、等等一系列的问题……但是真实的数据分析类项目里面,这些问题都是有可能存在的,具体问题就得具体处理了。

 

为什么要对数据进行探索性分析呢?主要的目的就是所谓的“知己知彼”,你得知道你手上的数据具体情况是什么?显性的指标(直接在数据中蕴含的指标,比如面积周长边数内角个数等这些直接能够计算出来的指标,我们认为就是显性指标)有哪些,隐性的指标(有些无法直接查看,需要复杂计算的指标,比如临近要素均值、不规则度指标等,认为是隐性指标)又有哪些?而且我们对数据进行识别,识别多少出来,比较合理……等等,这些东西,我们都需要通过探索性数据分析来进行了解。

 

下面我们一起来看看数据情况。(大家不要去纠结这个真实的数据是哪里,因为保密的原因,我已经把它们弄得面目全非了)

利用机器学习识别细碎图斑实战(3):探索性数据分析

因为数据量非常庞大,所以我们先用属性来进行一系列的可视化,了解一下数据:

先从最简单的面积周长入手:

 

利用机器学习识别细碎图斑实战(3):探索性数据分析

利用机器学习识别细碎图斑实战(3):探索性数据分析

 

对周长和面积做了一个简单的频数和频率分析,就发现整个数据有严重的长尾效应,也就是说有个别地块大得吓人,整个数据呈现了严重的泊松分布。

 

从数量和面积对比情况来看,大部分的地块都是中小型地块,大地块数量极少,而我们要处理的所谓的“不顺眼”的地块,又大多数是散、碎、怪的地块,所以主要处理的工作量还是挺大的。

 

下面我们用空间的方法来做一下,首先做一下疏密分析,直接用地块的中心点做一个点密度即可:

 

利用机器学习识别细碎图斑实战(3):探索性数据分析

左边是通过面积加权的,右边是无加权的。

 

无加权的仅表示地块的数量的多少,颜色越深的地方,表示地块的细碎化越严重。通过面积加权的,代表地块的覆盖程度,颜色越深的,表示农地越密集

如果我们仅仅是要处理所谓“碎片”地块,那么重点去处理无加权那种分析图里面,颜色比较深的地方就好了,但是现在要处理的是所谓的“不顺眼”的图斑,所以就不能简单的用面积和周长这种属性了,所以下面我们再扫描两个几何特征属性:是否是凹(凸)多边形和多边形顶点数量

 

一般来说,凸多边形被认为是比较规则的多边形,而所谓的“不顺眼”的多边形,一般都是凹多边形,所以我们可以看看凹凸多边形的数量。

 

另外多边形的顶点可以决定很多几何性质,比如内角和,又比如边数等,所以也是多边形的一个重要特征,下面我们通过这两个指标来进行一下分析:

 

利用机器学习识别细碎图斑实战(3):探索性数据分析

 

这里发现,大部分的多边形,顶点数都在33以内,占到总数的75%+,但是顶点数最多的一个多边形,居然有2240个顶点……如果内业绘制出来的,这一个多边形就能把人给画费了……

 

凹凸多边形的情况,还算比较理想,接近二八开,一般来说,凸多边形都比较顺眼(当然,不是绝对的)。

 

以上是对整个数据做的探索性分析,当然,还有很多指标没有展现出来,而且前面我们也说过,特征工程是机器学习中最具技术含量和深度的东西,也是从业人员基本功的体现,下一期我们将进入特征构建工作。

 

文中的数据和代码:

https://github.com/allenlu2008/PythonDemo

 

更多内容,关注虾神公众号:虾神daxialu

 

利用机器学习识别细碎图斑实战(3):探索性数据分析

待续未完。