网络模型

一文理清深度学习前馈神经网络

杀马特。学长 韩版系。学妹 提交于 2019-12-03 15:15:08
🚙 Index 多层感知机(MLP)介绍 深度神经网络的激活函数 深度神经网络的损失函数 多层感知机的反向传播算法 神经网络的训练技巧 深度卷积神经网络 前馈神经网络(feedforward neural network)是一种最简单的 神经网络 ,各神经元分层排列。每个神经元只与前一层的神经元相连。接收前一层的输出,并输出给下一层.各层间没有反馈。是目前应用最广泛、发展最迅速的 人工神经网络 之一。研究从20世纪60年代开始,目前理论研究和实际应用达到了很高的水平 ——百度百科 而深度学习模型,类似的模型统称是叫 深度前馈网络(Deep Feedforward Network) ,其目标是拟合某个函数f,由于从输入到输出的过程中不存在与模型自身的反馈连接,因此被称为“前馈”。常见的深度前馈网络有:多层感知机、自编码器、限制玻尔兹曼机、卷积神经网络等等。 01 多层感知机(MLP)介绍 说起 多层感知器(Multi-Later Perceptron) ,不得不先介绍下 单层感知器(Single Layer Perceptron) ,它是最简单的神经网络,包含了输入层和输出层,没有所谓的中间层(隐含层),可看下图: 也就是说,将输入向量赋予不同的权重向量,整合后加起来,并通过激活函数输出1或-1,一般单层感知机只能解决线性可分的问题,如下图: 我选择了0个隐含层

yolov2

折月煮酒 提交于 2019-12-03 14:16:54
在这篇文章中,作者首先在YOLOv1的基础上提出了改进的YOLOv2,然后提出了一种检测与分类联合训练方法,使用这种联合训练方法在COCO检测数据集(用于检测)和ImageNet分类数据集(用于分类)上训练出了YOLO9000模型,其可以检测超过9000多类物体。 所以,这篇文章其实包含两个模型:YOLOv2和YOLO9000,不过后者是在前者基础上提出的,两者模型主体结构是一致的。 YOLOv2相比YOLOv1做了很多方面的改进,这也使得YOLOv2的mAP有显著的提升,并且YOLOv2的速度依然很快,保持着自己作为one-stage方法的优势,YOLOv2和Faster R-CNN, SSD等模型的对比如图1所示。 可以看到在速度比Faster RCNN快的情况下,YOLOV2的精度可以比Faster RCNN高。 1 YOLOv2的改进策略 YOLOv1虽然检测速度很快,但是在检测精度上却不如R-CNN系检测方法,YOLOv1在物体定位方面(localization)不够准确,并且召回率(recall)较低。YOLOv2共提出了几种改进策略来提升YOLO模型的定位准确度和召回率,从而提高mAP,YOLOv2在改进中遵循一个原则:保持检测速度,这也是YOLO模型的一大优势。YOLOv2的改进策略如图2所示,可以看出,大部分的改进方法都可以比较显著提升模型的mAP

Hinton胶囊网络后最新研究:用“在线蒸馏”训练大规模分布式神经网络

醉酒当歌 提交于 2019-12-03 05:24:13
Hinton胶囊网络后最新研究:用“在线蒸馏”训练大规模分布式神经网络 朱晓霞 发表于 目标检测和深度学习 订阅 457 广告 关闭 11.11 智慧上云 云服务器企业新用户优先购,享双11同等价格 立即抢购 新智元报道 来源:arXiv 编译:肖琴、克雷格 【新智元导读】 深度学习领域的大牛、多伦多大学计算机科学教授Geoffrey Hinton近年在distillation这一想法做了一些前沿工作。今天我们介绍的是Hinton作为作者之一,谷歌大脑、DeepMind等的研究人员提交的distillation的更进一步工作:通过online distillation进行大规模分布式神经网络训练。该工作提出了Codistillation的概念,通过大规模实验,发现codistillation方法提高了准确性并加快了训练速度,并且易于在实践中使用。 论文地址:https://arxiv.org/pdf/1804.03235.pdf 在提出备受瞩目的“胶囊网络”(Capsule networks)之后,深度学习领域的大牛、多伦多大学计算机科学教授Geoffrey Hinton近年在 distillation 这一想法做了一些前沿工作,包括Distill the Knowledge in a Neural Network等。今天我们介绍的是Hinton作为作者之一,谷歌大脑

KVM虚拟化的四种简单网络模型介绍及实现(二)

匿名 (未验证) 提交于 2019-12-03 00:34:01
接上篇,介绍NAT网络模型和桥接模型。 三、NAT模型 NAT模型其实就是SNAT的实现,路由中虚拟机能将报文发送给外部主机,但是外部主机因找不到通往虚拟机的路由因而无法回应请求。但是外部主机能同宿主机通信,所以在宿主机上添加一个NAT转发,从而在外部主机请求虚拟机时,将虚拟机的IP地址转换为宿主机上的某个地址,从而实现外部网络与虚拟机的通信,其实际上只是通过iptables的nat表的POSTROUTING链实现地址转换罢了。 实现方法: 1、编写虚拟机启动脚本 [root@kvm-node1 ~]# cat /opt/tools/qemu-natup #!/bin/bash bridge=br0 net="192.168.122.1/24" checkbr(){ if brctl show |grep -i $1;then return 0 else return 1 fi } initbr(){ brctl addbr $bridge ip link set $bridge up ip addr add $net dev $bridge } enable_ip_forward(){ sysctl -w net.ipv4.ip_forward=1 sysctl -p } setup_nat(){ checkbr $bridge if [ $? -eq 1 ];then

深度学习中Dropout原理解析

匿名 (未验证) 提交于 2019-12-03 00:30:01
“微信公众号” 本文同步更新在我的微信公众号里,地址:https://mp.weixin.qq.com/s/3nKXlu3jy-0sNgAHxaxGmQ 本文同步更新在我的知乎专栏里,地址:https://zhuanlan.zhihu.com/p/38200980 1. Dropout简介 1.1 Dropout出现的原因 在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象。在训练神经网络的时候经常会遇到过拟合的问题,过拟合具体表现在:模型在训练数据上损失函数较小,预测准确率较高;但是在测试数据上损失函数比较大,预测准确率较低。 过拟合是很多机器学习的通病。如果模型过拟合,那么得到的模型几乎不能用。为了解决过拟合问题,一般会采用模型集成的方法,即训练多个模型进行组合。此时,训练模型费时就成为一个很大的问题,不仅训练多个模型费时,测试多个模型也是很费时。 综上所述,训练深度神经网络的时候,总是会遇到两大缺点: (1)容易过拟合 (2)费时 Dropout可以比较有效的缓解过拟合的发生,在一定程度上达到正则化的效果。 1.2 什么是Dropout 在2012年,Hinton在其论文《Improving neural networks by preventing co-adaptation of feature detectors

Faster-rcnn详解

匿名 (未验证) 提交于 2019-12-03 00:27:02
Faster R-CNN算法是在Fast R-CNN算法的基础上,将RPN与Fast R-CNN结合到一个深度神经网络中Faster R-CNN由候选区域框网络(Region Proposal Network,简称 RPN )和Fast R-CNN网络两部分组成。整体网络框架如图3-1所示。 图 3-1 Faster R-CNN RPN是全卷积神经网络,用于提取候选框;Fast R-CNN用于对RPN中提取的候选区域进行检测并识别候选区域中的目标。Faster R-CNN算法大概可以分为:特征提取、生成候选区域框、分类回归三个步骤。 3.2.1 特征提取网络 基于卷积神经网络在图像特征提取中的优越性能,Faster R-CNN 算法的特征提取网络就采用卷积神经网络,这个特征提取网络是可替换的,可以根据实际要求选择适合深度Faster RCNN 原文中使用的是VGG16 网络 【】 VGG16 的特点是网络深度较深,从而可以提取更深层次的图像特征,取得更好的检测效果。 训练数据的数量是决定网络模型性能的关键因素,训练数据越多,训练出来的网络各方面性能就会越好;相反,如果训练数据的数量过少,即使是设计很好的网络,训练出来的模型性能也不一定好。因此在深度学习中,通常把在海量数据中已经训练好的模型应用到自己的网络中,然后利用目标数据对目标网络进行微调以提高网络的Image

卷积神经网络的网络结构――GoogLeNet

匿名 (未验证) 提交于 2019-12-03 00:26:01
《Going deeper with convolutions》 2014,Google,GoogLeNet(向早期的LeNet致敬),Inception V1 Google Inception Net首次出现在ILSVRC 2014的比赛中(和VGGNet同年),就以较大的优势取得了第一名。它最大的特点是控制了计算量和参数量的同时,获得了非常好的分类性能―top5的错误率6.67%。Inception V1有22层深,比AlexNet的8层或者VGGNet的19层还要更深,但其计算量和参数量仅为AlexNet的1/12,却可以达到远胜于AlexNet的准确率。 (1)Inception V1降低参数量的目的有两点,第一,参数越多模型越庞大,需要供模型学习的数据量就越大,而目前高质量的数据非常昂贵;第二参数越多,耗费的计算资源也会更大。 (2)Inception V1参数少但效果好的原因除了模型层数更深、表达能力更强外,还有两点:一是去除了最后的全连接层,用全局池化层(即将图片尺寸变为1*1)来取代它。全连接层几乎占据了AlexNet或VGGNet中90%的参数量,而且会引起过拟合,去除全连接层后模型训练更快并且减轻了过拟合。二是Inception V1中精心设计的Inception Module提高了参数的利用效率。 1.动机和思考: 一般来说

从LeNet-5到NasNet

匿名 (未验证) 提交于 2019-12-03 00:25:02
LeNet-5 : input:输入图片,32*32像素; C1:5*5卷积核,生成6个feature maps,共需要(6*5*5 + 6)=156个参数; S2:2*2个像素相加,然后乘以一个参数,加上一个偏置,共计2*6=12个参数; C3:5*5卷积核,生成16个feature maps,每个feature map由S2中若干个feature maps卷积得到,如图Table1所示; S4:和S2相同的操作,共计16*2 = 32个参数; C5:与S4全连接,共计(5*5*16*120+120)=48120个参数; F6:与C5全连接,共计(120*84+84) = 10164 个参数; output: 与F6全连接。 附:下图是keras自动生成的网络图,正如图所示在平均池化层中是没有参数的。这与Le net原始论文不同。 Alex net: VGGNet: 堆叠多个小的卷积核而不使用池化操作可以增加网络的表征深度,同时限制参数的数量。 vgg16和vgg19都有5个block块,每个block块有一个MaxPooling2D,是特征图缩小两倍。共缩小32倍。卷机层与全连接层相连接时先进行了扁平化处理,然后连接看了两个4096的全连接,最后再接一个softmax分类函数。如果不加全连接层,在keras中会对特征进行全局平均池化以防止过拟合。 优点: 1.参数量减少了 81

DeepLearning | Broad Learning System : 高效增量式浅层神经网络

匿名 (未验证) 提交于 2019-12-03 00:22:01
Broad Learning System (BLS,宽度学习系统) 是澳门大学的 陈俊龙 教授在2017年TNNLS上基于 随机向量函数链接神经网络(RVFLNN) 和 单层前馈神经网络(SLFN) 提出的一种单层增量式神经网络。这个模型相比于传统的深层网络模型,它在保证一定精度的同时,具有快速、简洁,同时支持增量式的在线模型更新等比较好的性质。我在复现以后发现模型在一些数据集上的表现确实是不错的,在与陈教授做了关于一些模型细节讨论后,打算开这篇博客按照论文里的内容系统的介绍一下这个模型。在博客的最后会附上我写的 BLS模型 python 代码链接还有论文里公布的matlab代码链接,感兴趣的可以试一试效果 深层结构神经网络在许多领域得到应用,并在大规模数据处理上取得了突破性的成功。目前,最受欢迎的深度网络是深度信任网络(Deep Belief Networks,DBN),深度玻尔兹曼机器(Deep Boltzmann Machines,DBM)和卷积神经网络(Convolutional neural Networks,CNN)等。虽然深度结构网络非常强大,但大多数网络都被极度耗时的训练过程所困扰。其中最主要的原因是,上述深度网络都结构复杂并且涉及到大量的超参数,这种复杂性使得在理论上分析深层结构变得极其困难。另一方面,为了在应用中获得更高的精度

QoS概述

匿名 (未验证) 提交于 2019-12-03 00:21:02
服务质量QoS(Quality of Service)用于评估服务方满足客户服务需求的能力。通过配置QoS,对企业的网络流量进行调控,避免并管理网络拥塞,减少报文的丢失率,同时也可以为企业用户提供专用带宽或者为不同的业务(语音、视频、数据等)提供差分服务。 网络带宽: 网络带宽是指在单位时间(一般指的是1秒钟)内能传输的数据量。 网络时延: 传输时延:一个数据位从发送方到达接收方所需要的时间。该时延取决于传输距离和传输介质,与带宽无关。 串行化时延:指发送节点在传输链路上开始发送报文的第一个比特至发完该报文的最后一个比特所需的时间。该时延取决于链路带宽以及报文大小。 处理时延:指路由器把报文从入接口放到出接口队列需要的时间。它的大小跟路由器的处理性能有关。 队列时延:指报文在队列中等待的时间。它的大小跟队列中报文的大小和数量、带宽以及队列机制有关。 抖动: 丢包: 丢包率是指在网络传输过程中丢失报文占传输报文的百分比。丢包可用于衡量网络的可靠性。 丢包(packetloss)可能在所有环节中发生,例如: 处理过程:路由器在收到报文的时候可能由于CPU繁忙,无法处理报文而导致丢包; 排队过程:在把报文调度到队列的时候可能由于队列被装满而导致丢包; 传输过程:报文在链路上传输的过程中,可能由于种种原因(如链路故障等)导致的丢包。 少量的丢包对业务的影响并不大,例如,在语音传输中