[深度学习系列3] Mariana CNN并行框架与图像识别 本文是腾讯深度学习系列文章的第三篇,聚焦于腾讯深度学习平台Mariana中深度卷积神经网络Deep CNNs的多GPU模型并行和数据并行框架. 将深度卷积神经网络(Convolutional Neural Networks, 简称CNNs)用于图像识别在研究领域吸引着越来越多目光.由于卷积神经网络结构非常适合模型并行的训练,因此以模型并行+数据并行的方式来加速Deep CNNs训练,可预期取得较大收获.Deep CNNs的单机多GPU…
[深度学习系列2]Mariana DNN多GPU数据并行框架  本文是腾讯深度学习系列文章的第二篇,聚焦于腾讯深度学习平台Mariana中深度神经网络DNN的多GPU数据并行框架.   深度神经网络(Deep Neural Networks, 简称DNN)是近年来机器学习领域中的研究热点[1][2],产生了广泛的应用.DNN具有深层结构.数千万参数需要学习,导致训练非常耗时.GPU有强大的计算能力,适合于加速深度神经网络训练.DNN的单机多GPU数据并行框架是Mariana的一部分,Marian…
这是<GPU学习深度学习>系列文章的第三篇,主要是接着上一讲提到的如何自己构建深度神经网络框架中的功能模块,进一步详细介绍 Tensorflow 中 Keras 工具包提供的几种深度神经网络模块.本系列文章主要介绍如何使用 腾讯云GPU服务器 进行深度学习运算,前面主要介绍原理部分,后期则以实践为主. 往期内容: GPU 学习深度学习系列Part 1:传统机器学习的回顾 GPU 学习深度学习系列Part 2:Tensorflow 简明原理 上一讲中,我们用最简单的代码,实现了最简单的深度学习框…
PaddlePaddle垃圾邮件处理实战(二) 前文回顾   在上篇文章中我们讲了如何用支持向量机对垃圾邮件进行分类,auc为73.3%,本篇讲继续讲如何用PaddlePaddle实现邮件分类,将深度学习方法运用到文本分类中. 构建网络模型   用PaddlePaddle来构建网络模型其实很简单,首先得明确paddlepaddle的输入数据的格式要求,知道如何构建网络模型,以及如何训练.关于输入数据的预处理等可以参考我之前写的这篇文章[深度学习系列]PaddlePaddle之数据预处理.首先我们…
转自:https://www.qcloud.com/community/article/598765?fromSource=gwzcw.117333.117333.117333 这是<使用腾讯云 GPU 学习深度学习>系列文章的第二篇,主要介绍了 Tensorflow 的原理,以及如何用最简单的Python代码进行功能实现.本系列文章主要介绍如何使用 腾讯云GPU服务器 进行深度学习运算,前面主要介绍原理部分,后期则以实践为主. 往期内容: 使用腾讯云 GPU 学习深度学习系列之一:传统机器学…
最近除了工作以外,业余在参加Paddle的AI比赛,在用Paddle训练的过程中遇到了一些问题,并找到了解决方法,跟大家分享一下: PaddlePaddle的Anaconda的兼容问题 之前我是在服务器上安装的PaddlePaddle的gpu版本,我想把BROAD数据拷贝到服务器上面,结果发现我们服务器的22端口没开,不能用scp传上去,非常郁闷,只能在本地训练.本机mac的显卡是A卡,所以只能装cpu版本的,安装完以后,我发现运行一下程序的时候报错了: import paddle.v2 as…
深度学习(一)——CNN(卷积神经网络)算法流程 参考:http://dataunion.org/11692.html 0 引言 20世纪60年代,Hubel和Wiesel在研究猫脑皮层中用于局部敏感和方向选择的神经元时发现其独特的网络结构可以有效地降低反馈神经网络的复杂性,继而提出了卷积神经网络(Convolutional Neural Networks-简称CNN).现在,CNN已经成为众多科学领域的研究热点之一,特别是在模式分类领域,由于该网络避免了对图像的复杂前期预处理,可以直接输入原始…
前面介绍过了Tensorflow的基本概念,比如如何使用tensorboard查看计算图.本篇则着重介绍和整理下Constant相关的内容. 基于TensorFlow的深度学习系列教程 1--Hello World! 常量的概念 在tensorflow中,数据分为几种类型: 常量Constant.变量Variable.占位符Placeholder.其中: 常量:用于存储一些不变的数值,在计算图创建的时候,调用初始化方法时,直接保存在计算图中 变量:模型训练的参数,比如全连接里面的W和bias 占…
针对深度学习(神经网络)的AI框架调研 在我们的AI安全引擎中未来会使用深度学习(神经网络),后续将引入AI芯片,因此重点看了下业界AI芯片厂商和对应芯片的AI框架,包括Intel(MKL CPU).谷歌(TPU).NVidia(GPU).华为和寒武纪,发现所有的AI芯片都支持TensorFlow框架. 从收集到的信息来看: 1.目前TensorFlow在智能边缘计算中是主流,例如TensorFlow提供了移动端应用开发API,参考资料中包含了示例. 2.AI芯片对深度学习的加速效果,其中NVI…
深度学习之卷积神经网络CNN及tensorflow代码实例 什么是卷积? 卷积的定义 从数学上讲,卷积就是一种运算,是我们学习高等数学之后,新接触的一种运算,因为涉及到积分.级数,所以看起来觉得很复杂. 我们称 其连续的定义为: 其离散的定义为: 这两个式子有一个共同的特征: 这个特征有什么意义呢? 我们令,当n变化时,只需要平移这条直线 在上面的公式中,是一个函数,也是一个函数,例如下图所示即 下图即 根据卷积公式,求即将变号为,然后翻转变成,若我们计算的卷积值, 当n=0时: 当n=1时:…
深度学习之卷积神经网络CNN及tensorflow代码实现示例 2017年05月01日 13:28:21 cxmscb 阅读数 151413更多 分类专栏: 机器学习 深度学习 机器学习   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/cxmscb/article/details/71023576 一.CNN的引入 在人工的全连接神经网络中,每相邻两层之间的每个神经元之间都是有边相连的…
深度学习调用TensorFlow.PyTorch等框架 一.开发目标目标 提供统一接口的库,它可以从C++和Python中的多个框架中运行深度学习模型.欧米诺使研究人员能够在自己选择的框架内轻松建立模型,同时也简化了这些模型的产品离子化. 支持TensorFlow.PyTorch.TorchScript和Keras等深度学习框架. 使用一个API从任何支持的框架运行模型,运行TensorFlow模型看起来就像运行PyTorch模型. x = np.array([1, 2, 3, 4]) y =…
上篇文章我们给出了用paddlepaddle来做手写数字识别的示例,并对网络结构进行到了调整,提高了识别的精度.有的同学表示不是很理解原理,为什么传统的机器学习算法,简单的神经网络(如多层感知机)都可以识别手写数字,我们要采用卷积神经网络CNN来进行别呢?CNN到底是怎么识别的?用CNN有哪些优势呢?我们下面就来简单分析一下.在讲CNN之前,为避免完全零基础的人看不懂后面的讲解,我们先简单回顾一下传统的神经网络的基本知识. 神经网络的预备知识      为什么要用神经网络? 特征提取的高效性.…
上周我们用PaddlePaddle和Tensorflow实现了图像分类,分别用自己手写的一个简单的CNN网络simple_cnn和LeNet-5的CNN网络识别cifar-10数据集.在上周的实验表现中,经过200次迭代后的LeNet-5的准确率为60%左右,这个结果差强人意,毕竟是二十年前写的网络结构,结果简单,层数也很少,这一节中我们讲讲在2012年的Image比赛中大放异彩的AlexNet,并用AlexNet对cifar-10数据进行分类,对比上周的LeNet-5的效果. 什么是AlexN…
上篇文章我们给出了用paddlepaddle来做手写数字识别的示例,并对网络结构进行到了调整,提高了识别的精度.有的同学表示不是很理解原理,为什么传统的机器学习算法,简单的神经网络(如多层感知机)都可以识别手写数字,我们要采用卷积神经网络CNN来进行别呢?CNN到底是怎么识别的?用CNN有哪些优势呢?我们下面就来简单分析一下.在讲CNN之前,为避免完全零基础的人看不懂后面的讲解,我们先简单回顾一下传统的神经网络的基本知识. 神经网络的预备知识      为什么要用神经网络? 特征提取的高效性.…
导读 怎么样来理解近期异常火热的深度学习网络?深度学习有什么亮点呢?答案事实上非常简答.今年十月份有幸參加了深圳高交会的中科院院士论坛.IEEE fellow汤晓欧做了一场精彩的报告,这个问题被汤大神一语道破,他说深度学习网络说白了就是一个多层的神经网络. 同20年前相比,计算机硬件性能提升非常多,有了实现处理大数据和并行运算的能力,deep learning才被又一次重视起来.这里,再反复一遍CNN的实质:CNN就是一个更深层次.具有很多其它节点的ANN网络.但与简单的ANN相比:CNN主要是…
上周在搜索关于深度学习分布式运行方式的资料时,无意间搜到了paddlepaddle,发现这个框架的分布式训练方案做的还挺不错的,想跟大家分享一下.不过呢,这块内容太复杂了,所以就简单的介绍一下paddlepaddle的第一个"hello word"程序----mnist手写数字识别.下一次再介绍用PaddlePaddle做分布式训练的方案.其实之前也写过一篇用CNN识别手写数字集的文章,是用keras实现的,这次用了paddlepaddle后,正好可以简单对比一下两个框架的优劣.  …
 申明:本文非笔者原创,原文转载自:http://www.sigvc.org/bbs/thread-2187-1-3.html 4.2.初级(浅层)特征表示 既然像素级的特征表示方法没有作用,那怎样的表示才有用呢? 1995 年前后,Bruno Olshausen和 David Field 两位学者任职 Cornell University,他们试图同时用生理学和计算机的手段,双管齐下,研究视觉问题. 他们收集了很多黑白风景照片,从这些照片中,提取出400个小碎片,每个照片碎片的尺寸均为 1…
1. 神经网络原理 神经网络模型,是上一章节提到的典型的监督学习问题,即我们有一组输入以及对应的目标输出,求最优模型.通过最优模型,当我们有新的输入时,可以得到一个近似真实的预测输出. 我们先看一下如何实现这样一个简单的神经网络: 输入 x = [1,2,3], 目标输出 y = [-0.85, 0.72] 中间使用一个包含四个单元的隐藏层. 结构如图: 求所需参数 w10w10 w20w20 b10b10 b20b20, 使得给定输入 x 下得到的输出 ,和目标输出 y^y^ 之间的平均均方误…
上个月发布了四篇文章,主要讲了深度学习中的"hello world"----mnist图像识别,以及卷积神经网络的原理详解,包括基本原理.自己手写CNN和paddlepaddle的源码解析.这篇主要跟大家讲讲如何用PaddlePaddle和Tensorflow做图像分类. 在卷积神经网络中,有五大经典模型,分别是:LeNet-5,AlexNet,GoogleNet,Vgg和ResNet.本文首先自己设计一个小型CNN网络结构来对图像进行分类,再了解一下LeNet-5网络结构对图像做分类…
上周我们用PaddlePaddle和Tensorflow实现了图像分类,分别用自己手写的一个简单的CNN网络simple_cnn和LeNet-5的CNN网络识别cifar-10数据集.在上周的实验表现中,经过200次迭代后的LeNet-5的准确率为60%左右,这个结果差强人意,毕竟是二十年前写的网络结构,结果简单,层数也很少,这一节中我们讲讲在2012年的Image比赛中大放异彩的AlexNet,并用AlexNet对cifar-10数据进行分类,对比上周的LeNet-5的效果. 什么是AlexN…
写这个系列写了两个月了,对paddlepaddle的使用和越来越熟悉,不过一直没找到合适的应用场景.最近百度搞了个AI大赛,据说有四个赛题,现在是第一个----综艺节目精彩片段预测 ,大家可以去检测一下最近的学习成果啊!还有丰厚的奖金10W元软妹币哦! 这是啥比赛? 我们希望参赛选手使用PaddlePaddle深度学习框架.利用BROAD数据集.利用K-Lab,着手解决行业中的真实问题,从而让AI真正应用于行业.真正服务于行业.本次大赛,我们将目光放在电视综艺行业,希望选手们利用BROAD中全球…
上篇文章我们讲了如何对模型进行可视化,用的keras手动绘图输出CNN训练的中途结果,本篇文章将讲述如何用PaddlePaddle新开源的VisualDL来进行可视化.在讲VisualDL之前,我们先了解一下常用的Tensorflow的可视化工具---Tensorboard. Tensorflow的可视化 Tensorboard是Tensorflow自带的可视化模块,我们可以通过Tensorboard直观的查看神经网络的结构,训练的收敛情况等.要想掌握Tensorboard,我们需要知道一下几点…
在前面的文章中,我们通常是拿到一个任务,譬如图像分类.识别等,搜集好数据后就开始直接用模型进行训练,但是现实情况中,由于设备的局限性.时间的紧迫性等导致我们无法从头开始训练,迭代一两百万次来收敛模型,所以这个时候迁移学习就派上用场了. 什么是迁移学习? 迁移学习通俗来讲,就是运用已有的知识来学习新的知识,核心是找到已有知识和新知识之间的相似性,用成语来说就是举一反三.由于直接对目标域从头开始学习成本太高,我们故而转向运用已有的相关知识来辅助尽快地学习新知识.比如,已经会下中国象棋,就可以类比着来…
小伙伴们,终于到了实战部分了!今天给大家带来的项目是用PaddlePaddle进行车牌识别.车牌识别其实属于比较常见的图像识别的项目了,目前也属于比较成熟的应用,大多数老牌厂家能做到准确率99%+.传统的方法需要对图像进行多次预处理再用机器学习的分类算法进行分类识别,然而深度学习发展起来以后,我们可以通过用CNN来进行端对端的车牌识别.任何模型的训练都离不开数据,在车牌识别中,除了晚上能下载到的一些包含车牌的数据是不够的,本篇文章的主要目的是教大家如何批量生成车牌. 生成车牌数据 1.定义车牌数…
PaddlePaddle垃圾邮件处理实战(一) 背景介绍   在我们日常生活中,经常会受到各种垃圾邮件,譬如来自商家的广告.打折促销信息.澳门博彩邮件.理财推广信息等,一般来说邮件客户端都会设置一定的关键词屏蔽这种垃圾邮件,或者对邮件进行归类,但是总会有一些漏网之鱼.   不过,自己手动做一个垃圾邮件分类器也并不是什么难事.传统的机器学习算法通常会采用朴素贝叶斯.支持向量机等算法对垃圾邮件进行过滤,今天我们主要讲如何用PaddlePaddle手写一个垃圾邮件分类器.当然,在讲PaddlePadd…
验证码的生成与识别 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/10755361.html 目录 1.验证码的制作 2.卷积神经网络结构 3.训练参数保存与使用 4.注意事项 5.代码实现(python3.5) 6.运行结果以及分析 1.验证码的制作 深度学习一个必要的前提就是需要大量的训练样本数据,毫不夸张的说,训练样本数据的多少直接决定模型的预测准确度.而本节的训练样本数据(验证码:字母和数字组成)通过调…
卷积神经网络(CNN)详解与代码实现 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/10430073.html 目录 1.应用场景 2.卷积神经网络结构 2.1 卷积(convelution) 2.2 Relu激活函数 2.3 池化(pool) 2.4 全连接(full connection) 2.5 损失函数(softmax_loss) 2.6 前向传播(forward propagation) 2.7 反向…
最近看到一份不错的深度学习资源--Stanford中的CS20SI:<TensorFlow for Deep Learning Research>,正好跟着学习一下TensorFlow的基础,还是收获颇丰,随手整理成博客随时翻阅. 为什么选择TensorFlow? 自从12年AlexNet获得ImageNet大赛的冠军后,深度学习开始流行起来,也因为硬件的快速发展GPU并行计算配合易用的API,让深度学习以及神经网络大放光彩. 深度学习的框架其实有很多,目前来说最火的还要数Pytorch.Te…
       https://arxiv.org/pdf/1705.06394.pdf         将深度学习与时尚预测联系在一起,是一个很有趣但是估计结果会没什么成效的话题.因为,时尚预测这一领域,与股票金融房价之类的预测不一样,不是一个结合街区环境,经济环境,天气等客观情况就能预测综合走向的,而是依据某些fashion icon的主观性,时尚编辑的意向或是某些时尚大集团的设计师风格,面料厂商的库存量,广告等,做出的吸引普通大众去购买从而引领潮流.相传前两年,特别流行丹宁风就是因为某大厂相…