二十多年来,自动发现裸体图片一直是计算机视觉中的中心问题,并且由于其悠久的历史和直接的目标,它成为该领域如何发展的一个很好的例子。在这篇博文中,我将使用裸露检测问题来说明现代卷积神经网络(convnets)的训练与过去的研究有何不同。

警告和免责声明:这篇文章包含了裸露的可视化效果,以用于科学目的。如果您未满18岁,或者被裸露冒犯,请勿继续阅读。)

1996年

该领域的开创性著作是Fleck等人的恰当命名为“ Finding Naked People”。它于90年代中期出版,为计算机视觉研究人员在卷积网络接管之前进行的这类工作提供了一个很好的例子。

2014年

深度学习研究人员没有设计正式的规则来描述输入数据应如何表示,而是设计了网络体系结构和数据集,使AI系统可以直接从数据中学习表示形式。但是,由于深度学习研究人员没有确切指定网络在给定输入下的行为,因此出现了一个新问题:如何理解卷积网络在激活什么?

了解卷积网络的操作需要在各个层次上解释要素活动。在本文的其余部分中,我们将通过将活动从顶层向下映射到输入像素空间来检查NSFW模型的早期版本。这将使我们能够看到是什么输入模式最初在功能图中导致了给定的激活(即,为什么将图像标记为“ NSFW”)。

触觉敏感度

为了在左侧建立热图,我们将每个窗口发送到convnet并平均每个像素的“ NSFW”得分。当卷积网看到作物充满了皮肤时,往往会预测为“ NSFW”,这会导致莉娜身体上的大红色区域。为了在右侧创建热图,我们系统地遮住了原始图像的一部分,并报告1减去平均“ NSFW”得分(即“ SFW”得分)。当大多数NSFW区域被遮挡时,“ SFW”得分会增加,并且我们会在热图中看到更高的值。为了清楚起见,下图举例说明了上述两个实验分别将哪种图像馈入卷积网络:

这些遮挡实验的优点之一是,当分类器是一个完整的黑匣子时,可以执行它们。这是一个通过我们的API再现这些结果的代码片段:

# NSFW occulsion experimentfrom StringIO import StringIOimport matplotlib.pyplot as plt
import numpy as np
from PIL import Image, ImageDraw
import requests
import scipy.sparse as spfrom clarifai.client import ClarifaiApiCLARIFAI_APP_ID = '...'
CLARIFAI_APP_SECRET = '...'
clarifai = ClarifaiApi(app_id=CLARIFAI_APP_ID,app_secret=CLARIFAI_APP_SECRET,base_url='https://api.clarifai.com')def batch_request(imgs, bboxes):"""use the API to tag a batch of occulded images"""assert len(bboxes) < 128#convert to image bytesstringios = []for img in imgs:stringio = StringIO()img.save(stringio, format='JPEG')stringios.append(stringio)#call api and parse responseoutput = []response = clarifai.tag_images(stringios, model='nsfw-v1.0')for result,bbox in zip(response['results'], bboxes):nsfw_idx = result['result']['tag']['classes'].index("sfw")nsfw_score = result['result']['tag']['probs'][nsfw_idx]output.append((nsfw_score, bbox))return output

尽管这些类型的实验提供了一种显示分类器输出的简单方法,但它们的一个缺点是生成的可视化效果通常很模糊。这使我们无法获得对网络实际运行情况的有意义的洞察力 。

反卷积网络

在给定的数据集上训练了网络之后,我们希望能够拍摄图像和课程,并向卷积网络提出类似的要求 :

这是当我们使用deconvnet可视化如何修改Lena的照片 (注意:此处使用的deconvnet需要一个正方形图像才能正常运行-我们填充了完整的Lena图像以获得正确的外观比):

根据我们的deconvnet,我们可以通过增加红色来修饰芭芭拉,使其看起来更像PG:

这张詹姆斯·邦德电影《无博士》中乌斯拉·安德列斯(Hors Rider)饰演的《蜜月骑士》(Honey Rider)在2003年的一项英国调查中被评选为“屏幕历史上最伟大的100个性感时刻”的第一名:

上述实验的一个显着特征是,卷积神经网络学习了红唇和肚脐,表示“ NSFW”。这可能意味着我们在“ SFW”训练数据中没有包含足够的红唇和肚脐图像。如果我们仅通过检查精度/召回率和ROC曲线(如下所示-测试集大小:428,271)来评估模型,我们将永远不会发现此问题,因为我们的测试数据也存在相同的缺点。这凸显了基于训练规则的分类器与现代AI研究之间的根本区别。与其手动设计功能,不如重新设计训练数据,直到发现的功能得到改善为止。

python卷积神经网络人体图像识别相关推荐

  1. 卷积神经网络的Python实现,python卷积神经网络训练

    如何才能自学好python? 对于想要自学Python的小伙伴,这里整理了一份系统全面的学习路线,按照这份大纲来安排学习可以少走弯路,事半功倍. 第一阶段:专业核心基础阶段目标:1.熟练掌握Pytho ...

  2. 卷积神经网络的python实现,python卷积神经网络图像

    怎样用python构建一个卷积神经网络模型 上周末利用python简单实现了一个卷积神经网络,只包含一个卷积层和一个maxpooling层,pooling层后面的多层神经网络采用了softmax形式的 ...

  3. python卷积神经网络代码,python卷积神经网络分类

    怎样用python构建一个卷积神经网络模型 上周末利用python简单实现了一个卷积神经网络,只包含一个卷积层和一个maxpooling层,pooling层后面的多层神经网络采用了softmax形式的 ...

  4. Python 卷积神经网络 ResNet的基本编写方法

    ResNet(Residual Network)是由微软亚洲研究院提出的深度卷积神经网络,它在2015年的ImageNet挑战赛上取得了第一名的好成绩.ResNet最大的特点是使用了残差学习,可以解决 ...

  5. CNN卷积神经网络及图像识别

    CNN卷积神经网络及图像识别 前言 神经网络(neual networks)是人工智能研究领域的一部分,当前最流行的神经网络是深度卷积神经网络(deep convolutional neural ne ...

  6. python卷积神经网络图像,卷积神经网络python实现

    怎样用python构建一个卷积神经网络模型 上周末利用python简单实现了一个卷积神经网络,只包含一个卷积层和一个maxpooling层,pooling层后面的多层神经网络采用了softmax形式的 ...

  7. 手把手教你完成图像分类实战——基于卷积神经网络的图像识别

    在很多的项目中,都会用到图像识别技术.我在智能电子秤的项目中,就使用了简单的图像识别算法来完成对果蔬的分类(三分类). 图像识别中,最常用的框架就是TensorFlow,我们今天就使用这个框架,手把手 ...

  8. python卷积神经网络cnn的训练算法_【深度学习系列】卷积神经网络CNN原理详解(一)——基本原理...

    上篇文章我们给出了用paddlepaddle来做手写数字识别的示例,并对网络结构进行到了调整,提高了识别的精度.有的同学表示不是很理解原理,为什么传统的机器学习算法,简单的神经网络(如多层感知机)都可 ...

  9. lenet5卷积神经网络_tensorflow图像识别入门实战:使用LeNet5模型实现猫狗分类

    LeNet5介绍 LeNet-5是一种高效的卷积神经网络,在论文<Gradient-Based Learning Applied to Document Recognition>中 有详细 ...

最新文章

  1. 零基础学习WinCE开发
  2. Android投屏(屏幕共享)设计需要考虑的关键因素
  3. 解决MSDN安装正常,却无法访问。
  4. 机器学习和数据挖掘的联系与区别
  5. MybatisPlus自定义sql分页和分页失效问题解决
  6. Semantic UI 之 按钮 button
  7. 如何在Excel中仅复制可见单元格
  8. 六轴传感器icm20602的自检和校准学习
  9. Dispatch(01)
  10. 2023广东海洋大学计算机考研信息汇总
  11. 树链剖分 --算法竞赛专题解析(30)
  12. 荣耀智慧屏x1和小米4a哪个好?
  13. python定义一个dog类 类属性有名字毛色体重_全面了解python中的类,对象,方法,属性...
  14. 商品评论情感分析——基于商品评论建立的产品综合评价模型(1)
  15. layui.table(表格)跨页多选
  16. RuoYi-App启动教程
  17. Accuracy, Precision, Recall和F1-score解释
  18. 写给认真学习却进步缓慢的大一学生
  19. java77-GUL下拉菜单框和滚动条
  20. 使用频率最高的美语口语296句(本人精心整理,按使用频率排序)

热门文章

  1. 常见的SAP ERP系统大概要多少钱?
  2. 素描嘴巴注意这几个点,轻松画出头像神韵~
  3. Unity刘海屏幕适配
  4. MAtlab wavefront,MATLAB:像Wavefront算法一样制作矩阵
  5. 北京精雕现状_6秒精密加工,日本走下神坛,北京精雕也做了一个!
  6. seo和sem是什么意思
  7. SDN网络编排与服务
  8. AIX 操作系统安全配置指南
  9. QQ空间|qq人气号怎么赚钱?
  10. C/C++中的逻辑右移和算术右移