深度学习
文章平均质量分 64
JIN_嫣熙
Life is sad at times, but it is up to you to make your own life happy.
展开
-
深度学习之卷积神经网络
本文的主要目的,是简单介绍时下流行的深度学习算法的基础知识,本人也看过许多其他教程,感觉其中大部分讲的还是太过深奥,于是便有了写一篇科普文的想法。博主也是现学现卖,文中如有不当之处,请各位指出,共同进步。本文的目标读者是对机器学习和神经网络有一定了解的同学(包括:梯度下降、神经网络、反向传播算法等),机器学习的相关知识强烈推荐吴恩达大神的机器学习课程 深度学习简介深度学习是指多层神...转载 2018-07-26 21:14:44 · 747 阅读 · 0 评论 -
强化学习之原理详解、算法流程及Python代码
开头先附上强化学习(reinforcement learning)的学习视频:https://morvanzhou.github.io/tutorials/machine-learning/reinforcement-learning/,赶紧进行强化学习吧!1.强化学习就是程序或智能体(agent)通过与环境不断地进行交互学习一个从环境到动作的映射,学习的目标就是使累计回报最大化。2.强化...转载 2019-01-25 16:58:54 · 6090 阅读 · 0 评论 -
tensorflow分布式训练之同步更新和异步更新
1、同步更新在同步更新的时候, 每次梯度更新,要等所有分发出去的数据计算完成后,返回回来结果之后,把梯度累加算了均值之后,再更新参数。这样的好处是loss的下降比较稳定, 但是这个的坏处也很明显, 处理的速度取决于最慢的那个分片计算的时间。2、异步更新在异步更新的时候, 所有的计算节点,各自算自己的, 更新参数也是自己更新自己计算的结果, 这样的优点就是计算速度快,计算资源能得到充分利...原创 2019-01-21 13:49:20 · 6179 阅读 · 0 评论 -
PCA与LDA两种降维方法原理的简要对比
1、PCA(主成分分析)无监督的,选择的是投影后数据方差最大的方向。因此PCA假设方差越大,代表的信息量越大,使用主成分来表示原始数据可以去除冗余的维度,达到降维的目的。2、LDA(线性判别分析)有监督的,选择的是投影后类内方差小、类间方差大的方向。用到了类别标签信息,为了找到数据中具有判别性的维度,使原始数据在这些方向上投影后,不同类别尽可能区分开来。 例如:语音设别中,如果...原创 2019-01-22 23:09:24 · 2125 阅读 · 1 评论 -
深度神经网络的分布式训练概述:常用方法和技巧全面总结
论文地址:https://arxiv.org/abs/1810.11787深度学习已经为人工智能领域带来了巨大的发展进步。但是,必须说明训练深度学习模型需要显著大量的计算。在一台具有一个现代 GPU 的单台机器上完成一次基于 ImageNet 等基准数据集的训练可能要耗费多达一周的时间,研究者已经观察到在多台机器上的分布式训练能极大减少训练时间。近期的研究已经通过使用 2048 个 GPU 的...转载 2019-01-30 09:49:38 · 2050 阅读 · 0 评论 -
Docker 的基本原理及快速入门
什么是dockerDocker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。Docker 自开源后受到广泛的关注和讨论,以至于 dotCloud 公司后来都改名为 Docker Inc...转载 2019-01-30 15:46:12 · 231 阅读 · 0 评论 -
目标检测算法DSSD的原理详解
论文地址:https://arxiv.org/abs/1701.06659Github 源码(caffe版):https://github.com/chengyangfu/caffe/tree/dssd 1、文章概述 DSSD(Deconvolutional Single Shot Detector)是SSD算法改进分支中最为著名的一个,SSD的其他改进还包括RSSD(htt...转载 2019-02-22 14:47:28 · 6219 阅读 · 0 评论 -
【Hadoop】快速入门与搭建完全分布式Hadoop的步骤
一、Hadoop快速入门支持平台GNU/Linux是产品开发和运行的平台。 Hadoop已在有2000个节点的GNU/Linux主机组成的集群系统上得到验证。 Win32平台是作为开发平台支持的。由于分布式操作尚未在Win32平台上充分测试,所以还不作为一个生产平台被支持。所需软件Linux和Windows所需软件包括:JavaTM1.5.x,必须安装,建议选择Sun公司发...原创 2019-02-28 17:23:57 · 319 阅读 · 0 评论 -
【深度学习】语音识别之CTC算法原理解释与公式推导
不搞语音识别得人开这个论文确实有点费劲,结合上图,思考一下语音识别的场景,输入是一段录音,输出是识别的音素, 输入的语音文件的长度和输出的音素个数之间没有一一对应关系,通常将语音文件「分片」之后,会出现多对一的关系。这个场景在「翻译问题」和「OCR问题」中也普遍存在。本文的特点是,提出来一种end-to-end的方法,直接将语音转问音素。不需要添加规则/后处理等过程。文章目录[隐藏]...转载 2019-02-28 23:00:39 · 1826 阅读 · 0 评论 -
详解随机神经网络结构搜索 (SNAS)
本文出自商汤研究院(SenseTime Research)。原论文发表于ICLR 2019,及arXiv:1812.09926神经网络结构搜索(Neural Architecture Search, NAS)是自动机器学习(AutoML)中的热点问题之一。通过设计经济高效的搜索方法,自动获得泛化能力强、硬件友好的神经网络结构,可以大量节省人工,解放研究员的创造力。经典的NAS方法[1]中,一个...转载 2019-04-17 23:14:29 · 2635 阅读 · 0 评论 -
解读高效的神经架构搜索ENAS
1. 简介神经架构搜索(NAS)已成功用来设计图像分类和语言建模模型架构 (Zoph & Le, 2017; Zoph et al., 2018; Cai et al., 2018; Liu et al., 2017; 2018)。在 NAS 中,RNN 控制器进行循环训练:控制器首先采样候选架构,即一个子模型(child model),接着训练它收敛以测量其在所需任务上的表现。...转载 2019-04-17 23:16:33 · 2092 阅读 · 4 评论 -
一网打尽深度学习之卷积神经网络的经典网络(LeNet-5、AlexNet、ZFNet、VGG-16、GoogLeNet、ResNet)
看过的最全最通俗易懂的卷积神经网络的经典网络总结,在此分享,供更多人学习。一、CNN卷积神经网络的经典网络综述下面图片参照博客:http://blog.csdn.net/cyh_24/article/details/51440344二、LeNet-5网络输入尺寸:32*32 卷积层:2个 降采样层(池化层):2个 全连接层:2个 输出层:1个。10个类...转载 2019-04-22 23:11:07 · 1482 阅读 · 1 评论 -
【Pytorch】ResNet-18实现Cifar-10图像分类
一、ResNet-18网络结构 ResNet全名Residual Network残差网络。Kaiming He 的《Deep Residual Learning for Image Recognition》获得了CVPR最佳论文。他提出的深度残差网络在2015年可以说是洗刷了图像方面的各大比赛,以绝对优势取得了多个比赛的冠军。而且它在保证网络精度的前提下,将网络的深度达到了1...转载 2019-04-23 23:32:28 · 25839 阅读 · 20 评论 -
【深度学习】初识tensorflow之分布式训练
情况一、单机单卡单机单卡是最普通的情况,当然也是最简单的,示例代码如下:#coding=utf-8#单机单卡#对于单机单卡,可以把参数和计算都定义再gpu上,不过如果参数模型比较大,显存不足等情况,就得放在cpu上import tensorflow as tf with tf.device('/cpu:0'):#也可以放在gpu上 w=tf.get_variable('w'...转载 2019-01-18 13:44:43 · 276 阅读 · 0 评论 -
【TensorFlow】ValueError: Shape must be rank 1 but is rank 0 for ' ’ with input shapes: [].问题
基于TensorFlow训练mnist数据集出现如下错误:检测代码,发现是偏置设置格式错误导致。1、错误代码: # 定义权重和偏置n_input = 784n_output = 10weights = { 'wc1': tf.Variable(tf.random_normal([3, 3, 1, 64], stddev=0.1)), 'wc2': tf.Va...原创 2018-12-18 18:15:44 · 9329 阅读 · 1 评论 -
PCA(主成分分析)降维的概念、作用及算法实现
1、PCA降维的概念Principal Component Analysis(PCA):主成分分析法,是最常用的线性降维方法。它的目标是通过某种线性投影,将高维的数据映射到低维的空间中表示,即把原先的n个特征用数目更少的m个特征取代,新特征是旧特征的线性组合。并期望在所投影的维度上数据的方差最大,尽量使新的m个特征互不相关。从旧特征到新特征的映射捕获数据中的固有变异性。以此使用较少的数据维度,...原创 2018-11-06 11:18:53 · 6663 阅读 · 0 评论 -
hog训练流程及源码分析
一、网上一些参考资料 在博客目标检测学习_1(用opencv自带hog实现行人检测) 中已经使用了opencv自带的函数detectMultiScale()实现了对行人的检测,当然了,该算法采用的是hog算法,那么hog算法是怎样实现的呢?这一节就来简单分析一下opencv中自带 hog源码。 网上也有不少网友对opencv中的hog源码进行了...转载 2018-11-12 16:12:31 · 1104 阅读 · 1 评论 -
基于Spatial CNN的车道线检测和交通场景理解
SCNN车道线检测--(SCNN)Spatial As Deep: Spatial CNN for Traffic Scene Understanding(论文解读)Spatial As Deep: Spatial CNN for Traffic Scene Understanding收录:AAAI2018 (AAAI Conference on Artificial Intelligen...转载 2018-11-20 18:25:16 · 5871 阅读 · 4 评论 -
最推荐的深度学习课程
深度学习工程师 - 吴恩达给你的人工智能第一课。https://mooc.study.163.com/smartSpec/detail/1001319001.htm原创 2018-11-15 10:28:23 · 1549 阅读 · 0 评论 -
AI算法工程师必备技术,快快积累!
技术计算机基础重要程度:**本部分大多出现在笔试中,面试中也略有出现。计算机基础虽然不是重点,但是很容易被忽略掉的内容,一来是本科学的课程,研究生早忘光了;二来很多同学觉得我是搞算法的,这些不是开发问的问题么?殊不知计算机基础是非常重要的部分,算法工程师首先要是一个工程师,对计算机不够了解怎么做出更鲁棒的网络结构,怎么能提高计算效率?这部分主要是4门最重要的基础课和对linux...转载 2018-11-15 10:42:56 · 2131 阅读 · 0 评论 -
Tensorflow初学者之搭建神经网络基本流程
本文是学习这个视频课程系列的笔记,课程链接是 youtube 上的,讲的很好,浅显易懂,入门首选, 而且在github有代码,想看视频的也可以去他的优酷里的频道找。Tensorflow 官网神经网络是一种数学模型,是存在于计算机的神经系统,由大量的神经元相连接并进行计算,在外界信息的基础上,改变内部的结构,常用来对输入和输出间复杂的关系进行建模。神经网络由大量的节点和之间的联系构成...转载 2018-11-30 14:40:19 · 1262 阅读 · 0 评论 -
TensorFlow之conv2d函数解析
TensorFlow中函数conv2d主要实现了输入张量与设定卷积核的卷积操作,其函数形式如下:tf.nn.conv2d( input, filter, strides, padding, use_cudnn_on_gpu=True, data_format='NHWC', dilations=[1, 1, 1, 1], nam...转载 2018-12-07 16:07:55 · 36886 阅读 · 0 评论 -
【深度学习】我的第一个基于TensorFlow的卷积神经网络
基于MNIST数据集实现简单的卷积神经网络,熟悉基于TensorFlow的CNN的流程和框架。#1、导入相关库import numpy as npimport tensorflow as tfimport matplotlib.pyplot as pltimport input_data#2、加载数据集mnist = input_data.read_data_sets('dat...原创 2018-12-10 09:36:15 · 369 阅读 · 0 评论 -
【Python】raise ValueError("Too many dimensions: %d > %d." % (ndim, ndmax))问题
在基于tensorf跑猫狗识别CNN代码时, example, l = sess.run([image,label])#在会话中取出image和labelimg=Image.fromarray(example, 'P') #这里Image是之前提到的代码运行到上面两行时,出现如下错误:暂时还在研究为什么出错,等搞明白会继续更新原因和解决办法。有明白的欢迎指教。...原创 2018-12-21 09:59:56 · 7672 阅读 · 12 评论 -
两句话讲清楚CNN中的Pooling和Dropout
池化(Pooling)用于减少特征数量。最大值池化(Max Pooling)可提取图片纹理,均值池化(Average Pooling)可保留背景特征。舍弃(Dropout),在神经网络训练过程中,将一部分神经元按照一定概率从神经网络中舍弃,使用时被舍弃神经元恢复链接。...原创 2018-12-11 10:35:22 · 2967 阅读 · 4 评论 -
【深度学习】2个经典的练手CNN源码与MNIST数据集测试结果
对刚入门深度学习的童鞋,这2个简单的工程可快速入门。建议手敲一遍,可快速熟悉代码和CNN的实现流程。#1、导入相关库import numpy as npimport tensorflow as tfimport matplotlib.pyplot as pltimport input_data#2、加载数据集mnist = input_data.read_data_sets('...原创 2018-12-17 16:22:09 · 687 阅读 · 1 评论 -
【TensorFlow】TFRecord数据集的制作:读取、显示及代码详解
在跑通了官网的mnist和cifar10数据之后,笔者尝试着制作自己的数据集,并保存,读入,显示。 TensorFlow可以支持cifar10的数据格式, 也提供了标准的TFRecord 格式。 tensorflow 读取数据, 官网提供了以下三种方法:1 Feeding: 在tensorflow程序运行的每一步, 用python代码在线提供数据;2 Reader : 在一个计算图(tf...转载 2018-12-18 09:15:39 · 792 阅读 · 0 评论 -
【TensorFlow】PyCharm中无法识别tensorflow、numpy等Python库问题的解决办法
参考博客https://blog.csdn.net/WIinter_FDd/article/details/72835939,准备使用猫狗数据集练习TensorFlow构建自己的图片数据集TFrecords。使用pycharm敲入代码后,提示无法识别Python库的问题。1、问题现象如下:2、问题原因Python是通过Anaconda3 (64-bit)安装的,而打开的pychar...原创 2018-12-18 10:53:59 · 4925 阅读 · 2 评论 -
详解可微神经网络架构搜索框架(DNAS)
【论文】FBNet: Hardware-Aware Efficient ConvNet Designvia Differentiable Neural Architecture Search【地址】https://arxiv.org/pdf/1812.03443关键思想:将Loss函数设计为这种形式:然后证明交叉熵项和延时项对于网络基本结构的选择是可微分的,然后通过梯度下降方法...转载 2019-04-19 22:16:44 · 5377 阅读 · 0 评论