caffe 数据的标准化方式

(1) 减去均值方式1

从caffe 给的 models/bvlc_reference_caffenet/下的训练协议train_val.prototxt

  transform_param {
    mirror: true
    crop_size: 227
    mean_file: "data/ilsvrc12/imagenet_mean.binaryproto"
  }
# mean pixel / channel-wise mean instead of mean image
#  transform_param {
#    crop_size: 227
#    mean_value: 104
#    mean_value: 117
#    mean_value: 123
#    mirror: true
#  }

以及,给定的分类示例:

mu = np.load(caffe_root + 'python/caffe/imagenet/ilsvrc_2012_mean.npy')
mu = mu.mean(1).mean(1) # average over pixels to obtain the mean (BGR) pixel values
print 'mean-subtracted values:', zip('BGR', mu)
# create transformer for the input called 'data'
transformer = caffe.io.Transformer({'data': net.blobs['data'].data.shape})
transformer.set_transpose('data', (2,0,1)) # move image channels to outermost dimension
transformer.set_mean('data', mu) # subtract the dataset-mean value in each channel
transformer.set_raw_scale('data', 255) # rescale from [0, 1] to [0, 255]
transformer.set_channel_swap('data', (2,1,0)) # swap channels from RGB to BGR

我们看到,减去均值文件的方式是:

img - [104,117,123];

即三个通道,每个通道减去对应的值。

(2) 减均值方式2

就是我们通常意义上的减去均值,即

img - mean(img_all);

img 和 mean(img_all)拥有同样的size。

(3) 减去均值在除以标准差

假定图像中每一个位置的像素为一个随机变量,那么标准化的方式为:

xμσ

img = img - mean(img_all);
img = img ./ std(img_all);

三种处理数据的方式,在识别率上有啥差距呢?有空做一下调查。当然,对于图像来说,进行标准化是好的,曾经做过一个实验,使用标准化和未标准化数据相差大约10个百分点。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
行业标准-人工智能 一、人工智能产业发展现状 人工智能作为新一轮产业变革的核心驱动力,将催生新的技术、产品、产业、 业态、模式,从而引发经济结构的重大变革,实现社会生产力的整体提升。麦肯锡预计 ,到2025年全球人工智能应用市场规模总值将达到1270亿美元,人工智能将是众多智能 产业发展的突破点。 通过对人工智能产业分布进行梳理,提出了人工智能产业生态图,主要分为核心业态、 关联业态、衍生业态三个层次。 下面将重点对核心业态包含的智能基础设施建设、智能信息及数据、智能技术服务、智 能产品四个方面展开介绍,并总结人工智能行业应用及产业发展趋势。 二、智能基础设施 智能基础设施为人工智能产业提供计算能力支撑,其范围包括智能传感器、 智能芯片、分布式计算框架等,是人工智能产业发展的重要保障。 1、智能芯片 智能芯片从应用角度可以分为训练和推理两种类型。从部署场景来看,可以分为云端和 设备端两步大类。训练过程由于涉及海量的训练数据和复杂的深度神经网络结构,需要 庞大的计算规模,主要使用智能芯片集群来完成。与训练的计算量相比,推理的计算量 较少,但仍然涉及大量的矩阵运算。目前,训练和推理通常都在云端实现,只有对实时 性要求很高的设备会交由设备端进行处理。 按技术架构来看,智能芯片可以分为通用类芯片(CPU、GPU、FPGA)、基于 FPGA的半定制化芯片、全定制化 ASIC 芯片、类脑计算芯片(IBM TrueNorth)。 另外,主要的人工智能处理器还有 DPU、BPU、NPU、EPU 等适用于不同场景 和功能的人工智能芯片。 随着互联网用户量和数据规模的急剧膨胀,人工智能发展对计算性能的要求迫切增长, 对 CPU 计算性能提升的需求超过了摩尔定律的增长速度。同时,受限于技术原因,传统处理器 性能也无法按照摩尔定律继续增长,发展下一代智能芯片势在必行。未来的智能芯片主 要是在两个方向发展:一是模仿人类大脑结构的芯片,二是量子芯片。智能芯片是人工 智能时代的战略制高点,预计到 2020 年人工智能芯片全球市场规模将突破百亿美元。 2、智能传感器 智能传感器是具有信息处理功能的传感器。智能传感器带有微处理机,具备采集、处理 、交换信息等功能,是传感器集成化与微处理机相结合的产物。智能传感器属于人工智 能的神经末梢,用于全面感知外界环境。各类传感器的大规模部署和应用为实现人工智 能创造了不可或缺的条件。不同应用场景,如智能安防、 智能家居、智能医疗等对传感器应用提出了不同的要求。未来,随着人工智能应用领域 的不断拓展,市场对传感器的需求将不断增多,2020 年市场规模有望突破4600亿美元。未来,高敏度、高精度、高可靠性、微型化、集成化 将成为智能传感器发展的重要趋势。 3、分布式计算框架 面对海量的数据处理、复杂的知识推理,常规的单机计算模式已经不能支撑。 所以,计算模式必须将巨大的计算任务分成小的单机可以承受的计算任务,即云计算、 边缘计算、大数据技术提供了基础的计算框架。目前流行的分布式计算框架如 OpenStack、Hadoop、Storm、Spark、Samza、Bigflow 等。各种开源深度学 习框架也层出不穷,其中包括 TensorFlow、Caffe、Keras、CNTK、Torch7、MXNet、 Leaf、Theano、DeepLearning4、Lasagne、Neon 等等。 三、智能信息及数据 信息数据是人工智能创造价值的关键要素之一。我国庞大的人口和产业基数带来了数据 方面的天生优势。随着算法、算力技术水平的提升,围绕数据的采集、 分析、处理产生了众多的企业。目前,在人工智能数据采集、分析、处理方面的企业主 要有两种:一种是数据集提供商,以提供数据为自身主要业务,为需求方提供机器学习 等技术所需要的不同领域的数据集;另一种是数据采集、分析、处理综合性厂商,自身 拥有获取数据的途径,并对采集到的数据进行分析处理,最终将处理后的结果提供给需 求方进行使用。对于一些大型企业,企业本身也是数据分析处理结果的需求方。 四、智能技术服务 智能技术服务主要关注如何构建人工智能的技术平台,并对外提供人工智能相关的服务 。此类厂商在人工智能产业链中处于关键位置,依托基础设施和大量的数据,为各类人 工智能的应用提供关键性的技术平台、解决方案和服务。目前, 从提供服务的类型来看,提供技术服务厂商包括以下几类: (1)提供人工智能的技术平台和算法模型。此类厂商主要针对用户或者行业需求,提供人 工智能技术平台以及算法模型。用户可以在人工智能平台之上, 通过一系列的算法模型来进行人工智能的应用开发。此类厂商主要关注人工智能的通用 计算框架、算法模型、通用技术等关键领域。 (2)提供人工智能的整体解决方案。此类厂商主要针对用户或者行业需求,

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值