传统算法为什么没有达到深度学习的精度?|公司调研

在许多学术领域,与非深度学习算法相比,深度学习的性能通常有 20-30% 的提升。很多大公司也逐渐开始对这个算法进行投资,并组建了自己的深度学习团队,其中谷歌投资最多。2008 年 6 月,Google Brain 项目被披露。2014 年 1 月,谷歌收购了 DeepMind,2016 年 3 月,其开发的 Alphago 算法在围棋挑战赛中击败了韩国九段棋手李世石,证明深度学习设计的算法可以打败世界最强棋手。

硬件方面,英伟达最先做的是显示芯片,但从 2006 年和 2007 年开始,主要推广通用计算的 GPU 芯片,特别适合深度学习中的大量简单重复计算。目前很多人选择英伟达的 CUDA 工具包进行深度学习软件开发。

自 2012 年起,微软将深度学习用于机器翻译和中文语音合成。在其人工智能 Cortana 的背后,是一套用于自然语言处理和语音识别的数据算法。

百度于2013年宣布成立百度研究院,其中最重要的是百度深度学习研究院,聘请了著名科学家于凯博士。然而,于凯离开百度,创办了另一家公司地平线,从事深度学习算法的开发。

Facebook 和 Twitter 也都进行了深度学习研究。前者与纽约大学教授Yann Lecun合作建立了自己的深度学习算法实验室;2015 年 10 月,Facebook 宣布开源其深度学习算法框架 Torch 框架。Twitter 于 2014 年 7 月收购 Madbits,为用户提供高精度的图像检索服务。

前深度学习时代:计算机视觉

当然,互联网巨头看重深度学习并不是为了学术,主要是因为它可以带来巨大的市场。那么为什么在深度学习问世之前,传统算法未能达到深度学习的准确率呢?

在深度学习算法问世之前,对于视觉算法,大致可以分为以下五个步骤:特征感知、图像预处理、特征提取、特征筛选、推理预测和识别。在机器学习的早期,占主导地位的统计机器学习社区不太关心特征。

在我看来,计算机视觉可以说是机器学习在视觉领域的应用,所以当计算机视觉采用这些机器学习方法时,前四个部分就得自己设计了。

但这对任何人来说都是一项更艰巨的任务。传统的计算机识别方法将特征提取和分类器设计分开,然后在应用中将它们结合起来。例如,如果输入的是摩托车图像,首先要有一个特征表达或特征提取的过程,然后将表达出来的特征放入学习算法中进行分类学习。

在过去的 20 年里,出现了许多优秀的特征算子,比如最著名的 SIFT 算子,即所谓的尺度旋转不变性。它广泛用于图像比较,特别是在所谓的运动结构应用中,并且有一些成功的应用示例。另一个是HoG算子,可以提取物体,具有更鲁棒的物体边缘,在物体检测中起到重要作用。

这些算子还包括 Textons、Spin image、RIFT 和 GLOH,它们在深度学习诞生之前或深度学习真正流行之前就已经占据了视觉算法的主流。

几个(半)成功的例子

这些特征和一些具体的分类器组合已经取得了一些成功或半成功的例子,基本满足了商业化的要求,但还没有完全商业化。

一种是1980年代和1990年代的指纹识别算法,非常成熟。一般是在指纹图案上搜索一些关键点,找到具有特殊几何特征的点,然后比较两个指纹的关键点来判断。匹配。

然后是 2001 年基于 Haar 的人脸检测算法,在当时的硬件条件下能够实现实时人脸检测。我们手机摄像头中的所有人脸检测都是基于它或其变体。

第三个是基于HoG特征的物体检测,结合对应的SVM分类器就是著名的DPM算法。DPM算法在目标检测方面超越了所有算法,取得了比较好的效果。

但是这方面成功的例子太少了,因为手工设计特征需要大量的经验,需要对领域和数据有特别的了解,再设计特征需要大量的调试工作。说白了,需要一点运气。

另一个难点是你不仅需要手工设计特征,还要有基于它们的更合适的分类器算法。同时设计特征,然后选择分类器,将两者结合起来达到最佳效果,这几乎是不可能完成的任务。

从仿生学的角度进行深度学习

如果我不手动设计特征并选择分类器,还有其他解决方案吗?是否可以同时学习特征和分类器?也就是在输入某个模型时,输入只是一张图片,输出是它自己的标签。比如输入一个明星的头像,得到的标签是一个50维的向量(如果要识别50个人的话),其中明星对应的向量为1,其他位置为0。

这一设置符合人类脑科学的研究成果。

1981年诺贝尔医学生理学奖授予了神经生物学家大卫·休贝尔。他的主要研究成果是发现了视觉系统的信息处理机制,证明了大脑的视觉皮层是分层的。他的主要贡献有两点,一是他认为人的视觉功能是抽象的、迭代的。抽象是对非常具体的图像元素,即原始光像素和其他信息进行抽象,以形成有意义的概念。这些有意义的概念会向上迭代,成为人们可以感知的更抽象的概念。

像素没有抽象意义,但人脑可以将这些像素连接成边缘,边缘相对于像素成为更抽象的概念;然后边缘形成球体labview 声源定位 时间差算法,球体,然后是气球,这是另一个抽象过程。最后我知道那是一个气球。

模拟人脑识别人脸也是一个抽象的迭代过程。从第一个像素到第二层的边缘,再到人脸的一部分,再到整个人脸,是一个抽象的迭代过程。

另一个例子是看到图片中的摩托车。我们的脑海中可能只有几微秒,但经过大量神经元抽象迭代之后。计算机首先看到的根本不是摩托车,而是一张 RGB 图像的三个通道上的不同数字。

所谓特征或视觉特征,就是将这些数值以统计或非统计的形式组合起来,来表达摩托车的各个部分或整个摩托车。在深度学习普及之前,大部分设计图像特征都是基于此,即全面展示一个区域内的像素级信息,有利于后续的分类学习。

如果要完全模拟人脑,还需要模拟抽象和递归迭代的过程,将信息从最微不足道的像素级抽象到“种类”的概念,这是人们可以接受的。

深度学习的工业应用:缺陷检测

1. 应用背景

随着机器视觉和工业自动化的快速发展,工业4.0的概念被提上了日程。许多需要人工操作的传统工作逐渐被机器取代。当然,这也是人类技术进步和发展的必然趋势。说到底,工业进步还是为人类服务的,给人类带来了高品质的生活体验,而不是整天做着枯燥无味的工作。

图:自动化车间

我想在这里讨论的主题是关于缺陷检测机器的自动化。先说说现在的情况吧。富士康、Bourne Optical、Lens、Truly等几家国内知名半导体厂商的朋友一定看过下图。

近年来,随着智能手机、平板电脑以及各种触控设备的快速发展,推动了玻璃半导体产业的巨大需求。不乏环顾四周的朋友。平均而言,每个人至少拥有 2 部移动设备,一部手机和一部平板电脑。但是用户没有想过这些电子产品的组成。我们以屏幕和内部芯片为例。

每个智能触摸设备都带有一个屏幕,其中包括一个盖板玻璃。盖板玻璃在安装到触控设备上之前,已经在车间经历了几道检验程序,其中最关键的一道工序需要无数QC质检眼睛帮我们去除有缺陷的玻璃,最终到达我们的手中用户。玻璃完美无瑕,或基本上完美无瑕。当我们看到工作坊的场景时,是不是想用当今的高科技来拯救他们繁琐无趣的工作?

2. 传统的视觉检查

在机器学习和深度学习发展如此火热之前,国外制作的几款非常优秀的可视化软件业内人士应该很清楚了。例如:NIVISION、Halcon、Visionpro、Cognix、MIL等是业界使用最广泛、最成功的视觉软件。其中很多模块具有定位、测量、检测等功能。

然而,这些传统的缺陷检测方法大多依赖于人体特征工程,从形状、颜色、长度、宽度、纵横比等方面来判断检测到的目标是否符合标准,最后定义一系列规则来检测缺陷。当然,这种方法已经在一些简单的案例中得到了很好的应用。唯一的缺点是随着检测对象的变化,所有的规则和算法都必须重新设计和开发,即使是同一个产品,不同批次的变化也会造成无法重复使用的现实。

总结:传统的机器视觉算法通常处理容易提取、容易量化的特征:颜色、面积、圆度、角度、长度等。

3. 深度学习检测

随着机器学习和深度学习的发展,很多人眼难以直接量化的特征都可以通过深度学习来解决。这就是深度学习给我们带来的优势和前所未有的吸引力。很多我们通过传统算法无法量化或者难以实现的特征,都可以通过深度学习来完成。特别是在图像分类和目标检测方面取得了显着的进步。下图展示了近年来深度学习在图像分类方面的成就。

下图展示了近几年深度学习算法在物体检测方面的发展。

提出上述算法是因为这些算法为其他领域提供了很多参考和参考。比如本文讨论的缺陷检测,上面很多网络的特点和方法都给了我们很多启发。我们在设计网络结构时,会根据部署在产线的硬件性能,设计适合项目的网络结构。

当然,用于检测的深度学习方法也有其自身的诸多不足。例如:数据量要求大,工业数据采集成本高。然而,随着数据增强技术和无监督学习的不断进步,在一些应用场景中,这些缺点逐渐被隐藏起来。比如学术界在研究什么,自动网络结构设计,自动数据标注等等。因此,笔者认为随着技术的发展,这个领域会得到很大的提升,人工检测最终会被机器检测所取代。那么你看到的无人工厂就会更加无人化。

深度学习在缺陷检测中的意义

随着自动化技术的飞速发展,工业生产中许多需要人工操作的环节正逐渐由机器完成,工业生产自动化也将越来越多的工人从繁琐的工作中解放出来,让他们发挥更大的价值。

产品表面缺陷检测是工业生产中的重要环节,是产品质量控制的关键步骤。借助缺陷检测技术,可以有效提高生产质量和效率。但由于设备、工艺等因素的影响,产品表面缺陷的种类往往五花八门,如织物生产过程中的污渍、破损、金属制品上的划痕、裂纹、凹凸不平,以及各类缺陷,如下图所示。显示:

单个图像中的缺陷多种多样,不同缺陷的表现形式也不同,给缺陷的自动检测带来了困难。

接下来说一下传统算法。

传统的表面缺陷检测算法结构通过图像预处理得到易于检测的图像,然后利用统计机器学习的方法提取图像特征,从而达到缺陷检测的目的。

图像预处理通常包括直方图均衡化、滤波去噪、灰度二值化、再次滤波得到前景和背景分离的简化图像信息;然后利用数学形态学、傅里叶变换、Gabor变换等算法和机器学习模型完成缺陷的标记和检测。

上述传统算法在一些具体应用中取得了不错的效果,但仍存在很多不足。例如,图像预处理步骤多,针对性强,鲁棒性差;各种算法计算量大,无法准确检测缺陷的大小和形状。在深度学习中,可以通过学习数据直接更新参数,避免了复杂算法流程的人工设计,具有极高的鲁棒性和准确性。

基于深度学习检测的案例及实现

目前,基于深度学习的缺陷检测已应用于金属固件、布丝织物、建筑裂缝、钢材裂缝等领域,并取得了良好的效果。下面结合具体案例对实现方法进行说明。

1. 裂纹缺陷检测

建筑材料(如磁砖等)的外观变化(如裂缝或腐蚀等)与建筑结构的安全密不可分,依靠检验员目视检查的效果是有限的。相比之下,基于计算机视觉的结构损伤检测更可靠、更方便。

Fast RCNN的作用是对图像中的缺陷位置进行定位和分类,其结构过程如上图所示。

从输入图像中提取特征图并获得感兴趣区域(ROI);在 ROI pooling 中,预先计算的感兴趣区域覆盖在特征图上,并提取固定大小的特征向量;得到的向量被输入到完全连接的层中,以计算边界框的位置并对框中的对象进行分类。

2. 破损缺陷检测

在电气化铁路等行业中,存在许多对安全至关重要的固件,检测这些固件中的缺陷非常重要。

利用深度卷积神经网络SSD等网络方法构建一个从粗到细的级联检测网络,包括固件定位、缺陷检测和分类,实现过程如下图所示:

(1)紧固件提取

借助在速度和准确性方面表现良好的 SSD 框架对图像中的悬臂节点进行定位;

(2)固件缺陷检测与分类

根据第二阶段紧固件的检测判断缺陷;它具有良好的鲁棒性和适应性,有利于快速检测,因此该方法在紧固件缺陷的检测和分类中具有很好的应用前景。

3. 散斑缺陷检测

散斑缺陷检测常见于纺织、木材、瓷砖等诸多行业,其纹理的一致性通常用于检测目的。近年来,利用深度学习视觉检测技术检测表面缺陷在相关行业引起广泛关注。

4. 划痕缺陷检测

划痕缺陷检测通常用于金属制品的表面缺陷检测。随着生活质量的提高,人们对产品的外观完整性和美观性提出了越来越高的要求。因此,可以准确地检测到产品外观上的划痕。标记等缺陷在生产过程中非常重要。

总的来说,利用基于深度学习的算法可以快速准确地实现缺陷检测,应用范围很广,可以灵活地应用于建筑、金属固件、布丝面料等众多行业的生产过程中。

机器视觉行业发展现状

(1)从业人员与人才市场现状

目前深度学习从业者的薪酬处于高位,属于人才紧缺的行业,就业前景广阔。基本掌握深度学习的视觉工程师,月起薪至少3W元。纵观近年,呈逐渐上升趋势。

(2)国家政策扶持刺激AI产业经济

图片[1]-传统算法为什么没有达到深度学习的精度?|公司调研-老王博客

2017年,两届“人工智能”首次被纳入政府工作报告,人工智能板块引领市场反弹,无疑将带动人工智能在多个领域的全面发展。

2016年,投资国内人工智能企业约284家。在被投企业中,A轮(Pre-A、A、A+)企业占比最高,111家企业获得融资。汇顶科技完成IPO上市,募集资金8.74亿元。

(3)技术和企业应用爆炸式发展迅速

目前,我国人工智能企业在图像和语音识别两大类企业中占比较高,人脸识别技术水平处于领先地位。每个创业公司都从专注研究逐渐发展到探索合适的商业模式,从“互联网+”向“人工智能+”的转变。

人工智能爆发的两个重要时间点:

2011年labview 声源定位 时间差算法,基于深度学习的人工智能技术已广泛应用于微软、Facebook、百度等顶级互联网公司。微软和百度使用的FPGA,基于海量数据训练的深度学习系统,可以完成更快更准确的判断。同年,苹果发布了语音助手 Siri。

在 2016 年 4 月给股东的一封信中,谷歌 CEO Sundar Pichai 称赞机器学习是人工智能和计算的真正未来。

这一切似乎印证了2011年和2016年AI兴起和爆发式增长的原因。行业巨头的全面布局也带动了国内AI初创公司的快速发展。

传统视觉和深度学习检测存在哪些问题?

小编大致总结了现阶段机器视觉缺陷检测还存在以下几个主要的行业发展问题,具体如下:

(1)受环境、光照、生产工艺、噪声等多重因素影响,检测系统信噪比普遍偏低,弱信号难以检测或无法有效区分噪声. 如何构建一个稳定、可靠、鲁棒的检测系统能否适应光照、噪声等外界干扰的变化是需要解决的问题之一。

(2)由于检测对象、表面缺陷、形状、背景复杂等原因,很多缺陷类型的机理与其外在表现的关系尚不明确,导致缺陷描述不充分。,缺陷特征提取效果不佳,缺陷目标分割困难;同时,难以找到“标准”图像作为参考,给缺陷的检测和分类带来困难,导致识别率仍然不高。有待改进。

(3)机器视觉表面缺陷检测,尤其是在线检测,其特点是数据量大、冗余信息多、特征空间维数高,同时考虑到对象的多样性和面临的问题真实机器视觉算法从海量数据中提取有限缺陷信息的能力不足,实时性不高。

(4)虽然与机器视觉表面检测密切相关的人工智能理论得到了长足的发展,但如何模拟人脑的信息处理功能来构建智能机器视觉系统,还需要进一步的理论研究。基于良好的检测生物视觉理解和引导机器视觉也是研究人员的难点之一。

(5)从机器视觉表面检测的准确率来看,虽然一系列优秀的算法不断出现,但在实际应用中的准确率与满足实际应用的需要还有一定的差距。如何解决准确识别问题 模糊特征、实时性和准确性之间的矛盾仍然是当前的难点。

传统算法在一些具体应用中取得了不错的效果,但仍然存在很多不足。例如,图像预处理步骤多,针对性强,鲁棒性差;各种算法计算量大,无法准确检测缺陷的大小和形状。在深度学习中,可以通过学习数据直接更新参数,避免了复杂算法流程的人工设计,具有极高的鲁棒性和准确性。

国内知名企业如何解决?

康耐视:一家大型视觉系统供应商,2017 年收购了瑞士制造的深度学习机器视觉软件 ViDi Systems,每套售价 150,000 台。

德国MVTec:Halcon视觉软件,从2018年开始加入深度学习模块,可以使用CPU进行缺陷检测。

美国NI公司:2018年起,视觉模块增加深度学习模块,支持TensorFlow相关版本的模型调用。

并且由于LabVIEW具有图形化编程、易学易用的特点,在自动化行业非常流行,其TensorFlow模型推理库经过CPU优化编译,可以满足工业缺陷的实际需求检测。

为此,为了帮助众多开发者解决对Python、C#等编程语言不熟悉、短时间内难以上手、学习效率低的问题,小编特地推出了一套不需要任何 Python 和 C# 的语言基础,可以一键使用。《龙哥教你学视觉——LabVIEW深度学习简明教程》课程,可以满足机电工程师、研究生、相关互联网从业者将深度学习应用于机器视觉项目的能力。

目前,该LabVIEW可视化课程已上线华秋众筹项目。立即注册,享受全网限时最低众筹价格。

您希望本次众筹能帮到您什么?

课程目标:

1. 让没有任何Python和TensorFlow基础的同学学习如何搭建深度学习训练平台;

2. 学习使用ImgLabel软件给图片打标签,弄清楚如何给物体贴标签;

3. 将使用LabVIEW调用TensorFlow来训练SSD/Faster-rcnn模型;

4. 学习使用LabVIEW观察模型训练过程的Loss曲线;

5. 学习使用LabVIEW调用TensorFlow评估SSD/Faster-cnn模型;

6. 学习使用LabVIEW观察模型评估结果图像;

7. 学习使用LabVIEW导出TensorFlow冻结图模型文件pb;

8.学习使用LabVIEW将TensorFlow冻结图模型文件pb导出为OpenVINO模型文件IR;

9. 学习使用LabVIEW加载TensorFlow/OpenVINO模型pb/IR文件;

10.学习使用LabVIEW实现TensorFlow/OpenVINO模型pb/IR文件的图像测试目标检测;

11. 案例:猫狗数据集、引脚缺陷检测数据集、金属切削缺陷检测数据集、胶水缺陷检测数据集、元器件缺陷检测数据集、开关缺陷检测数据集、药丸缺陷检测数据集;

12. 动态测试用例:硬件缺陷检测。

课程主要知识点:

1. Tensorflow-GPU环境搭建;

2. Tensorflow Object 环境搭建;

3. 学习如何标注图片;

4. LabVIEW如何通过迁移学习快速训练自己的模型;

5. 如何使用LabVIEW生成优化的OpenVINO模型IR;

6. 如何使用LabVIEW调用训练好的PB模型和IR模型进行目标检测。

众筹课程介绍和教学大纲目录

针对很多不知道如何在LabVIEW中调用TensorFlow来训练和调用深度学习模型的同学,推出了一整套简洁易学的视频课程,让同学们学习如何训练和调用深度学习没有任何深度学习理论基础和不了解 Python 编程语言的模型。使用 LabVIEW 训练和部署深度学习模型,并附有相关案例视频。

课程目录:

众筹课程有哪些亮点?

1.全网第一个LabVIEW深度学习训练和模型部署的完整教程,满足从业者使用LabVIEW完成相关编程的需求;

2.本套课程对LabVIEW可视化编程基础要求不高,学生可以学;

3.本套课程不需要很强的Python语言编程基础,学生可以学习;

4. LabVIEW在CPU上优化推理深度学习模型,运行速度和效率优于Python平台;

5.课程不仅讲授了环境配置、LabVIEW训练和编程方法,还讲解了大量案例,帮助学生学习如何在LabVIEW中应用深度学习;

6. 课程呈现相关的工业图像数据集,其价值远大于课程本身。

参与众筹后你会得到什么好处?

1.全网唯一的LabVIEW调用深度学习的完整视频教程,大大提高了学生的技术水平;

2.掌握最有前途的深度学习技术,让自己的技术在未来5-10年内走上高端水平;

3.目前深度学习缺陷检测岗位的薪资水平处于高位,学习后可以找到更高薪资的岗位;

4. 800分钟视频教程,2年观看期;

5. 500M 深度学习数据样本;

6.LabVIEW调用深度学习训练部署全网唯一完整源码,比NI官网更全面。

适合学习人群

1. 适合LabVIEW行业从业者使用LabVIEW进行深度学习应用;

2. 适合PLC电气工程师使用LabVIEW进行深度学习应用编程;

3. 适合机械工程师使用LabVIEW进行深度学习应用编程;

4. 适合大学生和研究生使用LabVIEW实现课程设计和项目研究;

5. 适合IT互联网行业人士快速掌握TensorFlow训练流程。

(1)学生或新手可以学习吗?

学生或新手可以直接学习。该课程不涉及Python编程,不需要Python基础,或涉及理论理解。课程将一步步教学生如何配置环境和调用训练,让学生直接掌握深度学习和动手实践的能力。只需按照视频了解如何应用它。

(2)老手有必要入手吗?

老手必须入手,深度学习一定是未来5-10年的高端技术,针对自动化或互联网行业的全新有效解决方案,针对传统视觉算法需要人工设计特征提取方法的弊端,深度学习模拟人脑的神经网络运算模型,通过计算机强大的计算能力,可以拟合出比传统算法更具适用性的模型,解决行业难题。国内外大型自动化企业都在积极开发深度学习技术。作为老手,我们必须尽快更新技术,不被时代抛弃,保持竞争力。

如何报名参加众筹课程?

了解课程详情/获取课程目录信息,请加微信助教。

木木助教:18123773580

免费直播

题目:龙哥讲解LabVIEW深度学习的工业应用

时间:(周二)08/18 19:50

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论