独家 | 如何利用大规模无监督数据建立高水平特征?

简介:

46695fe26570a42a3df4d69e24581969f31d67d5

GIF来自:https://giphy.com/gifs/features-7BldZFcv2pof6

如何构建更厉害的特征检测器?我们可以通过无监督学习来做到这一点吗?

请注意,本文是一篇我自己留档用的回顾总结材料。

042f892fbcde8c898b40576f2cd25a3ebd16b893

Paper来自此网站:

https://arxiv.org/pdf/1112.6209.pdf

摘要

622b79be574009b3cefdffa04253302e67796349

这篇文章的作者们喜欢利用未标记数据制作特定的分类特征识别器。(例如,使用未标记的人脸图像制作人脸识别器。)为实现这一目标,作者在大型数据集上制作了一个9层的自动稀疏编码器。与普遍的认知相反,这可以在没有任何标签数据的情况下构建面部检测器,而且优于ImageNet数据的最新性能。 (在2012年)。

介绍

9a41de7e7f94811f82a5b521f4c3669b2c794d66

这篇文章的目的是只依靠未标记图像构建一个特定的分类特征识别器,同时这也是神经科学的构想:“人类大脑中存在高度特定类的神经元”,通常被非正式地称为“母神经元”。在传统的计算机视觉中,大多数研究人员使用标记数据来获得这些识别器,然而大量数据时就比较困难。这个实验的成功说明,可以从未标记数据中学习高级特征和母神经元。大多数这些方法(如自动稀疏编码器)仅仅可以用于低级特征,如边缘或斑点(edges or blobs)。

作者假设深度学习花费如此多时间的原因是由于缺少高级特征,例如,图像被重新调整得更小,这样的降级会破坏高级特征的学习。作者没有缩小图像,也没有使用大量计算能力。经证明,有可能从未标记的数据中学习更高级别的特性。最后,使用学习过滤器,他们能够超越ImageNet数据集的最新技术性能。(2012年)。

数据集结构/算法

e140ccddb695b31ae0f825ab549d95829aa85341

如上所述,来自1000万个Youtube视频随机选择的片段,他们通过使用OpenCV脸部识别得出结论,在1000万个采样片段中,面部出现的概率不到3%。

这里使用的算法的灵感来自不同类型的无监督学习算法的成功。(RBM,稀疏自动编码器等......)。作者的目的是学习更高水平的特征,而不仅仅是低水平。

d2728975559d2f283dcde85e84f991b29711c1fa

如上所述,作者使用的架构可以被认为是深度自动的稀疏编码器,带有一些转动(twist)同时它们也是局部感受器,池和局部响应归一化(使用了L2池)。堆叠(stacking)一系列统一模块,大脑所采用的架构是在选择性和允差层(tolerance layers)之间转换。有一件需要注意的重要的事是,虽然网络使用局部感受器,但是它们并不是卷积的(参数在图像中的不同位置不可共享),这在生物学上更合理。

学习和优化

7ffcc6d4a4d2e5c6999d0cfaa9f75e66d4776a89

在学习期间第二子层会被固定为均匀的权重,所有编码器和解码器中的其他权重通过上面的成本函数来处理。优化问题也称为重建地形独立成分分析(Topographic ICA),基本上第一项确保编码中关于数据的重要信息,第二项鼓励将有相似特征的特性组合在一起以实现方差。

这篇文章的作者使用了异步随机梯度下降(ASGD),并使用1000簇机器对网络进行了为期三天的处理。

面部实验

870e94eb398ea95d96bb8ba3f4decb342dc1d5f6

这个测试数据由37,000个来自Labeled FacesIn the Wild数据集和ImageNet数据集的图像组成。经过训练之后,作者使用测试集来测量每个神经元检测面部的表现。令人惊讶的是,最好的神经元能够以81.7%的准确度检测到面部。对于没有局对比度归一化的层,精度会降低至78.5%。

67647f2b4a98d0b44b4145f59b4844745651c83c

他们将激活值转化为直方图得到上面的图表,可以明显看出,即使没有标记数据,也是有可能训练人脸检测器的。

fe2d4784821c1eeaec7199efa9af3baa4031ebdb

作者通过使用两种技术使神经元的刺激最大化。(使测试集里响应最积极的刺激物可视化,最大化数值以找到最佳刺激物)。这样可以验证神经元是否确实在寻找一张脸。并且通过额外的实验,结果显示已知的权重会对应不同的方差,例如,垂直方向或左右方向旋转和缩放。

猫和人体探测器

0bf283f47d03587826c9faf37e4f3ee541560f03

作者还想知道网络是否能够学习更高级别的特性例如猫和人体等。如上所述,网络中的一些神经元能够检测到更高级别特征的形状例如猫或人体。在他们自己的数据集上测试的结果显示在猫和人体上分别达到74.8%和76.7%。

通过ImageNet进行图像识别

f78084105cd0437880e1953a78eb7a88fcacf473

在经过训练后的权重上添加一对所有逻辑分类器后,他们在ImageNet数据集上重新训练网络(此方法也称为无监督预训练),能够比当时的基线(2012年)表现得更好。在具有22,000类别的ImageNet上,它超越了其他最高结果70%。同时所有的表现都可以在上面的表格看到。

结论

88ea056776f3ed41edaed6363687f2e4a9cab838

总结来看,使用大量数据和计算机力量,有可能实现仅使用未标签数据识别脸部和身体高级性能。另外,这种方法会比2012年ImageNet数据集的基准线表现要优越。

尾声

这是一个非常酷的实验,但是所需的数据量特别大(以及计算能力),也许这就是它没有实现的原因。


原文发布时间为:2018-10-23

本文作者:Jae Duk Seo

本文来自云栖社区合作伙伴“数据派THU”,了解相关信息可以关注“数据派THU”。

相关文章
|
存储 SQL 定位技术
ArcGIS三种筛选提取要素的方法
ArcGIS三种筛选提取要素的方法
5174 0
|
11月前
|
SQL 安全 网络安全
网络安全与信息安全:防范措施与加密技术解析
【10月更文挑战第9天】在数字化时代,网络安全与信息安全已成为我们日常生活中不可或缺的一部分。本文将深入探讨网络安全漏洞、加密技术和安全意识等方面的内容,以帮助读者更好地了解和应对网络安全威胁。通过分享相关知识和案例分析,我们希望提高大家对网络安全的认识和重视程度,共同维护一个安全、可靠的网络环境。
798 0
|
8月前
|
弹性计算 运维 自然语言处理
产品测评 | 感受操作系统智能助手OS Copilot新功能带来的运维效率飞升
近期,我再次评测了阿里云OS Copilot的新版本,发现其在命令执行、任务自动化、文件处理及知识问答等方面表现出色,特别是-t参数显著提升了70%的效率。使用过程中,我发现它不仅简化了复杂任务的处理,还提供了中文解释配置文件的功能,极大地方便了初学者。总结来看,OS Copilot极大地提升了Linux运维效率,但仍需在自然语言理解、用户界面优化和错误处理机制等方面进一步改进。未来若能支持更多操作系统并集成更多实用工具,必将成为Linux用户的得力助手。
|
9月前
|
人工智能 Kubernetes 安全
赋能加速AI应用交付,F5 BIG-IP Next for Kubernetes方案解读
赋能加速AI应用交付,F5 BIG-IP Next for Kubernetes方案解读
180 13
|
9月前
|
设计模式 人工智能 算法
使用低代码平台,让复杂的应用开发变得更轻松
在企业数字化转型中,低代码平台通过模块化设计、智能化对接及丰富的插件生态,大幅提升了开发效率和系统灵活性。平台支持单体与微服务架构,内置多种设计模式和算法优化,提供五大技术引擎和四大应用服务,兼容多种数据库,支持AI模型对接,具备丰富的底层组件和自定义功能,实现快速开发和跨平台兼容,助力企业高效应对复杂业务场景。
|
9月前
|
数据可视化
阿里云产品十一月刊来啦
阿里云百炼上线新模型可支持100万超长上下文,通义灵码支持代码逻辑可视化,多款产品能力新升级,详情请点击阿里云产品十一月刊
162 6
|
SQL 关系型数据库 MySQL
MySQL DDL DML DQL DCL 通用语法
MySQL DDL DML DQL DCL 通用语法
157 0
|
数据采集 搜索推荐 算法
基于B站视频评论的文本分析,采用包括文本聚类分析、LDA主题分析、网络语义分析
本文通过Python爬虫技术采集B站视频评论数据,利用LDA主题分析、聚类分析和语义网络分析等方法,对评论进行深入的文本分析,挖掘用户评论的主题、情感倾向和语义结构,旨在为商业决策提供支持,优化内容创作和用户满意度。
1806 2
基于B站视频评论的文本分析,采用包括文本聚类分析、LDA主题分析、网络语义分析
|
存储 文件存储
LabVIEW使用项目管理器
LabVIEW使用项目管理器
186 0
|
缓存 JSON 资源调度
前端包管理器的依赖管理原理
本文主要探究前端包管理器的依赖管理原理,希望对读者有所帮助。
808 0
前端包管理器的依赖管理原理

热门文章

最新文章