深度神经网络

卷积神经网络(二)深度卷积网络:实例探究

半城伤御伤魂 提交于 2019-12-04 14:08:46
1、经典网络: (1)LeNet-5:识别手写数字 (2)AlexNet: (3)VGG-16: 2、Residual networks(ResNets 残差网络): (1)Residual block(残差块): 多个残差块构成一个残差网络: (2)残差网络的优势: 理论上,随着神经网络的深入,训练误差会越来越小,但实际上,层数越多训练的难度越大,因此层数过多误差也会增大. 但残差网络适用于深层的神经网络,误差随着层数的增多而减小. (3)为什么残差网络性能更好? 3、网络中的网络和1*1卷积: (1)作用: 对于二维效果不佳,仅仅是矩阵乘数字: 对于三维,实现了多个通道乘积再求和的功能: (2)应用:压缩 n C 使用32个1*1卷积,将192通道压缩为32通道. 4、Inception网络: (1)作用:决定过滤器的大小. (2)Inception块: 将各个可能使用的过滤器合并,让系统自行学习并选择合适的过滤器. 以28*28*32块为例,说明 computational cost 问题: 乘法计算次数:28*28*32*5*5*192 ≈ 120 Million 而使用了1*1卷积压缩后:中间的层成为“bottleneck layer”,即瓶颈层. 乘法计算次数:2*28*16*192 + 28*28*32*5*5*16 ≈ 2.4 Million + 10.0

手写神经网络Python深度学习

一个人想着一个人 提交于 2019-12-03 09:42:23
import numpy import scipy.special import matplotlib.pyplot as plt class neuralNetWork: def __init__(self,inputnodes,hiddennodes,outputnodes,learningrate): self.inodes = inputnodes self.hnodes = hiddennodes self.onodes = outputnodes self.wih = numpy.random.normal(0.0,pow(self.inodes, -0.5),(self.hnodes,self.inodes)) self.who = numpy.random.normal(0.0,pow(self.hnodes, -0.5),(self.onodes,self.hnodes)) self.lr = learningrate self.activation_function = lambda x: scipy.special.expit(x) # 激活函数 def train(self,inputs_list,targets_list): inputs = numpy.array(inputs_list,ndmin=2).T targets = numpy.array

语义分割卷积神经网络快速入门

匿名 (未验证) 提交于 2019-12-03 00:20:01
原文地址: https://blog.goodaudience.com/using-convolutional-neural-networks-for-image-segmentation-a-quick-intro-75bd68779225 语义分割的目的是将图像中的每个像素映射至一个目标类。样例如下: 上图中所有车辆被标记为相同的颜色,每个目标类都分别进行了分割,相比于分类,分割是一个更加复杂的问题。 我们使用全卷积网络(FCNs)对图像进行分割,全卷积网络首次在 这篇文章 中提出,这是为数不多的可读的研究论文之一,它不会用数学符号、专业名词和深奥的术语压垮你。如果你之前使用过卷积神经网络(CNNs),一定要阅读一番。 我会介绍两个重要的技巧,使你能够将用于图像分类的预训练 CNN 转换为 FCN 来执行图像分割。 将全连接层(FC)转换为卷积层(CONV) FC 和 CONV 层唯一的不同在于 CONV 层中的神经元仅仅和输入中的局部区域相连接,CONV 块中的很多神经元共享参数。然而,这两个层中的神经元仍然要计算点积,所以它们的函数形式是相同的。因此,在 FC 和 CONV 层之间进行转换是可行的。 来源: cs231n lecture notes 假设你的卷积层输出大小为7x7x512,紧跟一个有 4096 个神经元的 FC 层,则对于一个单独的输入图像来说,FC

zz先睹为快:神经网络顶会ICLR 2019论文热点分析

匿名 (未验证) 提交于 2019-12-02 23:55:01
先睹为快:神经网络顶会ICLR 2019论文热点分析 - lqfarmer的文章 - 知乎 https://zhuanlan.zhihu.com/p/53011934 作者:lqfarmer 链接:https://zhuanlan.zhihu.com/p/53011934 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 ICLR-2019(International Conference on Learning Representations 2019),将于2019年5月9日在美国路易斯安那州的新奥尔良举行,这也是2019年最新的一个国际性的AI顶会。目前,ICLR-2019的最新接受的论文已经Release出来了,本文对本届会议接受的论文进行整理,按照统计方法,抽取出了其中集中程度最高的27个主题,并抽样了每个主题下的一些最新论文,提供给需要的朋友周末充电。 ICLR-2019接受全部论文地址 https:// openreview.net/group? id=ICLR.cc/2019/Conference#accepted-oral-papers 主题热点 Deep reinforcement learning Generative adversarial networks Deep learning Deep neural Network

应用深度神经网络预测学生期末成绩

匿名 (未验证) 提交于 2019-12-02 23:49:02
基本思路: 首先,将学生成绩(平时成绩x、期末成绩y:csv格式)装载; 接着,将成绩数据标准化。(PS:虽然这里的成绩已经[0~100]之间了,本文是为了学习DNN,故不省略这一步) 接着,将平时成绩x,期末成绩y进一步拆分(按比例,如20%)为训练数据和测试数据。PS:测试数据用来检验训练出的模型性能 接着,创建DNN模型。依次设置一系列的参数。 接着,训练模型(fit函数)。model1.fit(x_train, y_train) 接着,评估模型性能。用测试集数据评估,还可以用训练集数据。 如果性能不好,则调参(第四步) 先设置DNN每层计算方式,先设置每个隐层、最后设置输出层 + 隐层。设置参数:激活函数(Sigmoid、ReLU: Rectifier)、计算单元数量units + 输出层。Layer("Linear") 学习速率: learning_rate=0.02 random_rate = 2019 : 用来再现相同的数据 模型允许最大迭代次数:n_iter = 10

卷积神经网络实战(一) mnist 手写数字预测

匿名 (未验证) 提交于 2019-12-02 23:35:02
学了这么久机器学习和深度学习,应该来个小项目练练手。 于是选择了最经典的数据集MNIST来锻炼下自己卷积神经网络的熟练度。 我采用了比较简单的结构,没有用强大的GooLeNet(…实则是电脑带不动),两个卷积层加一个最大池化层,然后加一个大小为64的全连接层,最后是softmax输出。其实这个结构也是看了n遍了,这次来手写一下代码,顺便熟悉熟悉tensorflow的函数。 话不多说,上代码(python 3.7) import tensorflow as tf import numpy as np def reset_graph(seed=42):#设置一下随机数种子 tf.reset_default_graph() tf.set_random_seed(seed) np.random.seed(seed) height = 28 #长 width = 28 #宽 channels = 1 #通道数为1 n_inputs = height * width #图片大小为784像素 conv1_fmaps = 32 #卷积核的数量 conv1_ksize = 3 #卷积核的大小 conv1_stride = 1 #第一卷积层步长为1 conv1_pad = "SAME" #padding采用same conv2_fmaps = 64 #64个卷积核 conv2_ksize = 3

特伦斯・谢诺夫斯基《深度学习:智能时代的核心驱动力量》

匿名 (未验证) 提交于 2019-12-02 23:05:13
特伦斯・谢诺夫斯基《深度学习:智能时代的核心驱动力量》 特伦斯・谢诺夫斯基是全球最大在线学习平台 Coursera 最受欢迎课程《学习如何学习》(Learning how to learn)主理人,该课程学习人数已经超过了300万。 作为神经网络的先驱,早在1986年,特伦斯就与杰弗里・辛顿共同发明了 玻尔兹曼 机。 2004年,特伦斯・谢诺夫斯基担任索尔克研究所Francis Crick教授,以及克里克-雅各布理论和计算生物学中心主任。 编辑推荐 ★ 【不是所有写深度学习的书你都能读得懂。】以堪比文学书的流畅,引领你了解人工智能井喷式发展的真相。 ★ 【深度学习会扩大你的认知,人工智能不是生存威胁。】这本书所讲的内容,与每个人的生活息息相关。AlphaGo、自动驾驶、语音识别、智能翻译、AI医疗、图像识别……你所看到的各种形式的人工智能,背后都是深度学习在发挥作用。这本书将告诉你,深度学习有哪些神奇之处,并对你产生哪些影响。 ★ 【人工智能大牛作者重磅作品】世界十大AI科学家之一、美国“四院院士”(全美在世仅3位)、全球人工智能专业会议NIPS基金会主席特伦斯・谢诺夫斯基(Terrence/Terry Sejnowski)力作。 ★ 【AI女神、AI教父联袂推荐】谷歌前云AI负责人、斯坦福大学HAI研究院联合创始人 李飞飞、AI教父杰弗里・辛顿诚挚推荐 ★ 【风靡全球

torch_07_卷积神经网络案例分析

北慕城南 提交于 2019-12-02 16:39:19
1. LeNet(1998) 1 """ 2 note: 3 LeNet: 4 输入体:32*32*1 5 卷积核:5*5 6 步长:1 7 填充:无 8 池化:2*2 9 代码旁边的注释:卷积或者池化后的数据的尺寸 10 """ 11 import torch 12 import torch.nn as nn 13 14 15 class LeNet(nn.Module): 16 def __init__(self): 17 super(LeNet,self).__init__() 18 layer1 = nn.Sequential() 19 layer1.add_module('conv1',nn.Conv2d(1,6,5,1,padding=0))# 没有填充 ,b,6,28*28 20 layer1.add_module('pool1',nn.MaxPool2d(2,2)) # 6,14*14 (28-2)/2+1 = 14 21 self.layer1= layer1 22 23 layer2 = nn.Sequential() 24 layer2.add_module('conv2', nn.Conv2d(6, 16, 5, 1, padding=0)) # 没有填充 b,16,10*10 25 layer2.add_module('pool2', nn

综述类解读

一曲冷凌霜 提交于 2019-12-02 16:12:21
1. 深度学的优劣 Gary Marcus 曾经说过,深度学习是 贪婪,脆弱,不透明和浅薄 的。这些系统很贪婪,因为它们需要大量的训练数据;它们是脆弱的,因为当神经网络应用在一些不熟悉的场景时,面对与训练中使用的示例不同的场景,它并不能很好的完成任务;它们是不透明的,因为与传统的可调试代码不同,神经网络的参数只能根据它们在数学中的权重来解释,因此,它们是黑盒子,其输出很难解释;它们是浅薄的,因为它们的训练缺乏先天知识,对世界没有常识。 https://www.jiqizhixin.com/articles/2019-07-16-6 来源: https://www.cnblogs.com/ying-chease/p/11753731.html

26、深度学习训练结果诊断

a 夏天 提交于 2019-12-02 16:03:09
1、学习曲线 在神经网络的训练过程中,一定要养成绘制训练曲线的习惯,从而监测自己的神经网络是否存在欠拟合或过拟合的问题: 如果训练损失明显小于测试损失,那么网络很有可能存在过拟合,此时需要应用regularization或更换归一化方法; 如果训练损失和测试损失都很大,那么网络有可能存在欠拟合,此时可以尝试增加网络容量或迭代次数; 如果像下图一样存在一个反超点,那么可能需要提前停止。 2、学习率 选择了合适的学习率会在一定程度上降低网络收敛到的损失。需要注意的是,学习率是与迭代次数、batch size、优化方法等协同工作的。 不同学习率对应的训练曲线的趋势: 来源: https://www.cnblogs.com/ai-learning-blogs/p/11753299.html