本节主要讲利用机器学习做细碎图斑识别的技术路线,我们以后将按照这个技术路线完成整个过程。

首先看看整个技术路线图:

整个流程总共分成七个步骤,这七个步骤也是项目分析类任务的标准流程,下面我们简单来解释一下七个步骤的内容。

首先,作为任何一个项目,最重要的当然是对项目需求的理解,正所谓的“名不正则言不顺,言不顺则事不成”,所以第一件事就是要理解咋们准备干嘛。

在数据分析类的项目中,以机器学习一类的项目最为繁琐,因为机器学习的项目里面,对于数据的特征选择和模型的训练,都非常的耗费时间,如果不能很好的理解任务,不能很好的限定项目的边界,随意的去试错,会带来很严重的成本开销,这一点是无法忍受的。

我们对这个项目的理解,分为如下内容:

1、需要做些什么事情?

咱们这个项目,主要是为了在一系列地类图斑里面,去识别出一些特殊的图斑,包括了细碎、形状怪异、严重不规则的、可以省略掉的等(用客户粑粑的话来说,就是去掉一切“不顺眼”的图斑)。

2、怎么样才能算成功了?如何定义成功的标准。

只要把大部分“不顺眼”的图斑都挑出来,就算成功了。

(题外话:仅仅需要我们把那些不顺眼的图斑给标识出来,不需要删除掉,也不需要进行融合,只需要识别出来,之后怎么处理,是后面要做的事情)

3、目前有些什么有利和无利的条件,如何来应对?

当然,首先肯定是要有数据,给了一系列的数据(几十万个地类图斑)。

其次,我们选定了技术手段,采用机器学习的方式,利用基于随机森林的分类算法(当然,以后也可也尝试用其他的分类算法),识别哪些是“不顺眼”的,哪些是“顺眼”的。

问题是,这些数据里面,那些图斑属于“不顺眼”的图斑,在具体看见之前,不知道,没有指标,没有阈值。

4、结果怎么表达?

把识别出来的图斑进行信息统计,然后做可视化出来就可以了。

5、步骤和里程碑分别是什么?

整个项目分成7个阶段,其中设计实际技术实现一共有六个阶段,每个阶段的内容如下:

1、数据处理阶段

获取、清洗、理解数据。数据是客户提供的,以及完成了地类图斑建库的数据,所以清洗就不用了,但是我们还需要把数据处理为程序可以识别的数据,作为空间数据,最简单的就直接采用shapefile进行承载即可。

之后需要对数据进行简要的探索性分析,确定各种极值以及分布情况。

2、特征库构建

选定哪些特征指标,来对图斑进行表达,这是机器学习里面最重要的一个步骤,特征工程是机器学习的基础,如何进行特征库构建,也是机器学习从业者水平的一个硬性标尺。

特征库的构建,包括了特征选择、特征提取、特征量化等多个步骤,特征工程的好坏,直接决定了原始数据能够在机器学习项目中发挥多大的效能,大部分时候好的特征库对算法和性能的提升,都远大于在模型构建的投入——根据奥卡姆剃刀原理:如无必要,勿增实体,越简约越好,所以,很多时候,复杂的模型反而不如简单模型的效果更好。

3、样本库的构建

既然无法把“不顺眼”这个形容词用量化的方式进行固定,样本库就只能通过人工的方式进行分类识别。通过人工的方式,把一批“不顺眼”的图斑给挑出来,作为训练样本和验证样本。

4、模型训练

这一步就是通过算法来实现了,本来可以用ArcGIS Pro提供的随机森林分类工具来实现的,不过鉴于很多同学用不了ArcGIS Pro,所以选择更普世的工具:Python 的sklearn包来实现分类模型的训练和验证。

5、模型的优化

对模型进行反复迭代,并且统计每次迭代的新模型的情况,验证模型的有效性,通过观察误差样本,分析误差产生的原因(是参数的问题还是算法选择的问题,是特征的问题还是数据本身的问题 …)来对模型进行调整和优化。

在这一步的时候,可以尝试使用真实数据(而非挑选出来的样本)进行尝试了,并且人工验证模型性能,并且适量的添删样本库里面的样本信息,并且重新训练模型。

6、执行模型。

执行模型,完成分类识别。

之后对结果进行自动检验(统计分析方法)和人工检验(随机抽检)。并且进行制图和可视化。

以上六个步骤,就是我们整个项目实战的详细技术步骤,后面我们将逐步展开,把每个步骤的实现方式给大家逐一讲解,以揭开机器学习这个普适性技术“神秘”的面纱。

(大家猜猜上图是哪个电影里面的场景,可以在文后留言)

待续未完。

利用机器学习识别细碎图斑实战(2):技术路线相关推荐

  1. 利用机器学习识别细碎图斑实战(1):前言

    在做自然资源类项目的时候,因为各种原因,会产生大量的细碎图斑,这些图斑可能是外业采集的时候本身就是细碎的,也有可能是因为各种后期处理生成的(比如用村界去切割地类图斑的时候,也会生成大量的细碎图斑)如下 ...

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

    先对数据进行声明: 本文使用的数据已经经过了一系列脱密处理,不代表任何区域位置的真实信息,仅能用于学习和练习,提供者不对真实性负责,也不得用于任何盈利性的活动或者公开.出版等用途. 本来应该是要写数据 ...

  3. 利用机器学习识别验证码(从0到1)

    最近喜欢先把测试结果图放前面.大家可以先看下效果. 识别速度并不是很快,代码并没有进一步优化. 本篇主要讲的是 从制作验证码开始,到我们利用机器学习识别出来结果的过程. 利用机器学习识别验证码的思路是 ...

  4. 大数据早报:路桥率先利用“人脸识别”技术监管医保 亚马逊与微软联合开发人工智能,打造服务大众的AI(10.19)

    数据早知道,上乐投网看早报! 『数据安全』微软内部Windows漏洞数据库曾被入侵:后果可怕 作为这个星球上覆盖率最高的操作系统,Windows的一举一动都影响着大家的使用体验,对于它的安全微软也是相 ...

  5. 美国银行将 AI 应用于企业应收账款处理;联合国或将利用机器学习技术帮助救灾工作...

    8 月 24 日消息,据外媒报道,美国银行(Bank of America)与 Fintech 创业公司 High Radius达成合作,将人工智能应用于企业应收账款处理.该应用程序专为大型.复杂的公 ...

  6. NLP的介绍和如何利用机器学习进行NLP以及三种NLP技术的详细介绍

    文章目录 什么是NLP? 为什么要学习NLP? 深度学习 技术1:文本嵌入(Text Embeddings) 技术2:机器翻译 技术3:会话 易水寒 发表于 2018-06-10 10:26:10 本 ...

  7. Cardign利用人像识别技术,开启iPhone手机社交新模式

    Cardign是一款刚刚推出的iOS系统下的应用软件.它是一家多伦多的创业公司开发的.这款应用的创新之处在于,它利用人像识别的方法,通过iPhone拍摄的照片检索用户的联系资料. Cardign的创始 ...

  8. python机器学习手写字体识别_Python 3 利用机器学习模型 进行手写体数字检测

    0.引言 介绍了如何生成手写体数字的数据,提取特征,借助 sklearn 机器学习模型建模,进行识别手写体数字 1-9 模型的建立和测试. 用到的几种模型: 1. LR,Logistic Regres ...

  9. 用机器学习识别不断变化的股市状况—隐马尔可夫模型(HMM)股票指数预测实战

    "了解不同的股市状况,改变交易策略,对股市收益有很大的影响. 弄清楚何时开始或何时止损,调整风险和资金管理技巧,都取决于股市的当前状况. ▼ 有些策略在波澜不惊的股市中表现良好,而有些策略可 ...

最新文章

  1. PHP开发如何实现多线程?
  2. Oracle DBLink的简单运用
  3. java取内核数_在Java中查找内核数
  4. 《迷人的8051单片机》---- 1.2小元器件有大智慧
  5. Javascript常用的设计模式详解
  6. php修改学生信息代码_值得收藏的CRM软件客户管理系统(包括JAVA/PHP)
  7. [转贴]基于HTTP的QQ协议
  8. 域用用户怎么允许共享_w7如何共享打印机 w7共享打印机步骤【详细介绍】
  9. 二元函数连续与偏导数存在的关系_《高等数学》微课视频“二元函数的全微分求积”录音...
  10. 管理感悟:公司内斗,肯定是闲着的斗干活的
  11. getch方法_如何实现getch()函数的功能
  12. 大数据之路之交通大数据应用总体架构设计
  13. 华擎主板安装linux系统,华擎B365主板安装win7详细步骤
  14. js定义对象时属性名是否加引号问题
  15. 当保险行业不再是压舱石,平安保险还保险吗?
  16. java七牛获取访问路径_七牛回调及回调鉴权
  17. MacTeX新手学习笔记
  18. 利用scp 在linux之间传输文件
  19. 扫描二维码如何实现从微信内直接跳转外部浏览器打开指定页面
  20. 物联网体系的系统构架和用途

热门文章

  1. pip安装python包-使用豆瓣,清华,阿里云等镜像源
  2. 阅读圣经丨测试上下文理解
  3. 计算机音乐刚好遇见你乐谱,李玉刚《刚好遇见你》歌谱
  4. 使用阿里云IoT Studio建立物模型可视化界面
  5. 生成验证码、模拟登录、手机号屏蔽
  6. 12月7日即将讲解激发态与非绝热分子动力学
  7. 国产单片机GD32系列开坑,带你零死角玩转GD32 第一章
  8. 几款适用的Android手机软件:电子名片、OO信息、OO电话本
  9. 计算机二维辅助设计课程设计的目的,cad实习目的
  10. Fiddler抓包工具使用(一)