精华内容
下载资源
问答
  • 计算机网络教程 高传善 课后答案

    热门讨论 2011-06-14 21:53:36
    计算机网络教程 高传善 课后答案 计算机网络教程 高传善 课后答案 计算机网络教程 高传善 课后答案
  • 计算机网络教程,第五版,谢希仁

    热门讨论 2010-09-12 23:12:55
    计算机网络教程,第五版,谢希仁计算机网络教程,第五版,谢希仁计算机网络教程,第五版,谢希仁计算机网络教程,第五版,谢希仁计算机网络教程,第五版,谢希仁
  • 《计算机网络教程》第四版谢希仁课后答案 找了很久才找到,把他共享出来
  • Docker 配置网络教程 - host 网络

    千次阅读 2018-11-01 14:34:49
    这部分教程中,独立容器直接连接到 Docker 主机的网络,没有网络隔离。 1. 目标 这个教程的目的是启动一个直接绑定到 Docker 主机的 80 端口的 Nginx 容器。从网络角度来看,这跟 Nginx 进程直接运行在 Docker ...

    https://blog.csdn.net/kikajack/article/details/79460255

    这部分教程中,独立容器直接连接到 Docker 主机的网络,没有网络隔离。

    1. 目标

    这个教程的目的是启动一个直接绑定到 Docker 主机的 80 端口的 Nginx 容器。从网络角度来看,这跟 Nginx 进程直接运行在 Docker 主机上而不是容器中具有相同等级的隔离。然而,其他方面,比如存储,进程命名空间和用户命名空间,Nginx 还是和主机隔离的。

    2. 先决条件

    • 此过程要求端口 80 在 Docker 主机上可用。要使 Nginx 在不同的端口上侦听,请参阅 nginx 镜像文档
    • host 网络驱动程序只在 Linux 主机上工作,其他类似 Mac、Windows 的平台无法使用

    3. 过程

    3.1 创建并将容器启动为后台进程

    docker run --rm -itd --network host --name my_nginx nginx
    • 1

    3.2 在浏览器中输入 http://localhost:80/ 访问 Nginx

    3.3 检查网络堆栈

    • 检查所有网络接口并验证新接口创建成功
    ip addr show
    • 1
    • 通过 netstat 命令验证哪个进程绑定到了 80 端口。因为进程属于 Docker 守护进程用户,这里需要使用 sudo 才能看到名字和 PID。
    sudo netstat -tulpn | grep :80
    • 1

    3.4 停止容器

    ··· 
    docker container stop my_nginx 
    docker container rm my_nginx 
    ···

    展开全文
  • 在本教程中,您将学习如何使用称为空间变换器网络的视觉注意机制来扩充您的网络。你可以在 DeepMind paper阅读有关空间变换器网络的更多内容。 空间变换器网络是对任何空间变换的差异化关注的概括。空间变换器网络...

    译者:冯宝宝

    作者: Ghassen HAMROUNI

    https://pytorch.org/tutorials/_images/FSeq.png

    在本教程中,您将学习如何使用称为空间变换器网络的视觉注意机制来扩充您的网络。你可以在 DeepMind paper阅读有关空间变换器网络的更多内容。

    空间变换器网络是对任何空间变换的差异化关注的概括。空间变换器网络(简称STN)允许神经网络学习如何在输入图像上执行空间变换,以增强模型的几何不变性。例如,它可以裁剪感兴趣的区域,缩放并校正图像的方向。它可能是一种有用的机制,因为CNN对于旋转和缩放以及更一般的仿射变换并不是不变的。
    关于STN的最棒的事情之一是能够简单地将其插入任何现有的CNN,只需很少的修改。

    # License: BSD
    # 作者: Ghassen Hamrouni
    
    from __future__ import print_function  
    import torch  
    import torch.nn as nn  
    import torch.nn.functional as F  
    import torch.optim as optim  
    import torchvision  
    from torchvision import datasets, transforms  
    import matplotlib.pyplot as plt  
    import numpy as np  
    
    plt.ion()   # 交互模式
    
    

    加载数据

    在这篇文章中,我们尝试了经典的MNIST数据集。使用标准卷积网络增强空间变换器网络。

    阅读全文/改进本文

    展开全文
  • 循环神经网络教程-第一部分 RNN介绍

    千次阅读 2016-12-29 15:11:02
    循环神经网络教程-第一部分 RNN介绍循环神经网络(RNNs)是非常流行的模型,它在许多NLP任务上都表现出了巨大的潜力。虽然它很流行,但是详细介绍RNNs以及如何实现RNNs的文章却很少。这篇教程旨在解决上述问题,教程...

    循环神经网络教程-第一部分 RNN介绍

    循环神经网络(RNN)是非常流行的模型,它在许多NLP任务上都表现出了巨大的潜力。虽然它很流行,但是详细介绍RNN以及如何实现RNN的文章却很少。这篇教程旨在解决上述问题,教程分为4部分:
    1. 介绍RNN(这篇教程)
    2. 用Tensorflow实现RNN
    3. 理解BPTT后向传播算法以及梯度消失/爆炸问题
    4. 实现GRU/LSTM
    作为教程的一部分,我们将会实现一个基于RNN的语言模型。语言模型的应用有两个方面:首先,它允许我们根据句子在现实世界出现的可能性对任意的句子进行打分,这给了我们一种衡量句子语法和语义正确性的方法(也就是说看一句话是不是正常人说的,句子越正常,分数就越高)。这种模型通常是机器翻译系统的一部分。第二,我们可以用语言模型生成文本(我认为这是更加酷炫的应用)。在莎士比亚的著作上训练语言模型可以生成莎士比亚风格的文章。Andrej Karpathy的这篇有趣的博客演示了可以用基于RNN的字符级的语言模型做些什么。

    如果你对基本的神经网络不熟悉的话,你可能想从头开始实施一个神经网络 ,这篇博客会介绍基本神经网络的概念以及具体实施。

    WHAT IS RNN?

    RNN的想法是利用序列信息。在传统的神经网络中,我们假设输入(和输出)
    是相互独立的,但是对于很多任务来说,这种方法很不好。如果你想要在一个句子中预测下一个词,那么你最好知道这个词的前一个词是什么。RNN称为“复现”,因为它对句子中的每一个元素都执行相同的任务,其输出依赖于前面的计算。另一种思考RNN的方式是认为它有“记忆”的功能,可以捕捉先前已经计算过的信息。从理论上来讲,RNN可以利用任意长度序列中的信息,但是在实际上在它们仅限于回顾几步(在后面做详细介绍)。典型的RNN是这个样子:
    一个循环神经网络以及涉及到前向计算中的计算时间的展开.

    上图展示了展开到完整网络的RNN。展开只是意味着我们为完整的序列写出了网络。例如,如果我们关心的是有5个词的句子,网络将会展开成一个5层的网络,每一个词对应着一个网络。RNN中的计算公式如下:

    • xttx1onehot
    • stt""st 是根据上一时刻的隐层状态和当前的输入计算的: st=f(Uxt+Wst1) 。函数 f 通常是非线性,例如 tanhReLUs10
    • ot 是t时刻的输出。例如,如果我们想预测句子中的下一个单词,那么它将会是一个概率向量,向量中的每一个值代表着词表中对应单词的概率。 ot=softmax(Vst)

    需要注意以下几点:

    • 我们可以认为 st 是网络的记忆单元, st 捕捉前面所有时刻发生的信息。输出 ot 仅根据时刻t的记忆进行计算。正如上面简要提到的那样,在实践中稍微有点复杂,因为 st 通常情况下不能捕捉很久之前时刻的信息。
    • 和传统的深度神经网络在每一层都使用不同的参数不同的是,RNN在的所有的步骤中都使用同样的参数( U,V,W )。这反应了我们在每一步都用不同的输入执行同样的任务这一事实。这极大地减少了我们需要学习的参数的数量。
    • 上图在每一步都有输出,但是根据任务来说这不是必须的。例如,当预测一个句子的情感的时候,我们只关心最终的输出,而不是每一个单词的情感。同样地,我们也不需要在每一步都有输入。RNN最大的特征就是它的隐藏状态,其捕捉了句子的某些信息。

    WHAT CAN RNNS DO?

    RNN在许多NLP任务上都取得了巨大的成功。在这一点上我要说明的是大多数用RNN的类型都是LSTM,LSTM可以比原始的RNN更好地捕捉长期依赖。但是不要担心,LSTM本质上和RNN一样,只不过是在隐藏层的计算方式不一样,我们会在后面的教程里讲解。下面是RNN在NLP上面的一些应用(不包含全部)

    构建语言模型&生成文本

    给定一个词语序列我们想要预测给定前一个词时每一个词的概率。语言模型可以让我们评价一个句子的可能性,这对于机器翻译来说是很重要的(因为概率越高的句子越正确).预测下一个词的副作用就是我们可以得到一个生成模型,这使得我们通过输出概率中采样生成新的文本。基于我们的训练数据,我们可以生成各种各样的东西。在语言建模中,我们的输入是一个词语序列(例如被编码为one-hot向量),我们的输出是预测的词语序列。当训练网络是,我们设置 ot=xt+1 , 因为我们想让 t 时刻的输出就是下一个单词。

    关于语言模型与生成文本的相关论文:

    机器翻译

    机器翻译和语言模模型的相似之处在于输入都是一个源语言(e.g.德语)的词语序列,我们想要的输出是目标语言(e.g.英语)的词语序列。关键的不同在于机器翻译的输出要在完成整个输入之后才开始生成,因为翻译句子的第一个单词可能需要整个输入序列的信息。

    RNN for Machine Translation.

    关于机器翻译的论文:

    语言识别

    给定来自声波的声学信号的输入序列,我们可以预测语音段的序列及其概率。

    语言识别的论文

    生成图像描述

    和卷积神经网络一起,RNN被用来作模型的一部分以生成对未标注的图像的描述。这项工作是相当惊人的。组合模型甚至可以将生产的词语图像中找到的特征对齐。
    用于生成图像描述的深视觉语义对齐

    训练RNN

    训练RNN类似于训练传统的神经网络,我们也利用后向传播算法,但是有一点不同。因为网络中每一步的参数都相同,每一个输出的梯度不仅依赖于当前的时刻,也依赖于前面是时刻。例如,为了计算在 t=4时刻的梯度,我们需要反向传播前3个时刻并将梯度求和,这就是所谓的BPTT,不要担心,后面的博客对此会有详细的介绍。现在我们只需要知道一般的用BPTT训练的RNN会有长期依赖的困难(e.g. 相距很远的时刻之间的依赖性)。现在存在一些机制解决这些问题,某些RNN类型(比如说LSTM)就是专门用来解决这个问题的。

    RNN 扩展

    多年来,研究人员开发了更复杂的RNN类型来处理vanilla RNN模型的一些缺点。我们将在后面的文章中更详细地介绍这些内容,本部分作为简要概述,以便您熟悉模型的分类。

    双向RNN是基于这样的想法,在t时刻的输入也许不仅仅依赖于序列中的前一个元素,可能也依赖于后面的元素。例如:为了预测序列中的一个缺失词,你也许想要查看左边和右边的上下文。双向RNN非常简单,它们只是堆叠在彼此顶部的两个RNN,然后基于两个RNN的隐藏状态计算输出。
    双向RNN

    深度(双向)RNN和双向RNN类似,只是现在在每一个时刻都有了多层。实践当中这给了我们更高的学习能力(但同时我们也需要很多训练数据)。
    深度RNN

    LSTM 网络如今非常流行,上面我们已经简要介绍过LSTM,它和RNN没有本质的区别,但是它们两个用了不同的函数计算隐层的状态。LSTM中的记忆被称作细胞,你也可以吧它们当做黑匣子,它们用上一个时刻的状态ht1 和当前的输入 xt 作为输入。内部的这些单元决定从记忆中记住什么(遗忘什么)。然后它们组成了先前的状态,当前的记忆以及输入。事实证明这些类型的单元在捕捉长期依赖当中非常有效。

    总结

    我希望你对RNN是什么以及他们能做什么有一个基本的了解。在下一篇文章中,我们将使用Python和Theano实现我们的语言模型RNN的第一个版本。

    展开全文
  • 递归神经网络教程(1)-RNN介绍

    千次阅读 2017-01-16 22:27:15
    递归神经网络教程(1)-RNN介绍Source: http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/递归神经网络(RNNs)作为一种流行的模型,已经在NLP问题上显示巨大的应用...

    递归神经网络教程(1)-RNN介绍

    Source: http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/

    递归神经网络(RNNs)作为一种流行的模型,已经在NLP问题上显示巨大的应用前景。尽管最近很流行,但是对RNNs原理以及如何实施进行全面解释的资源却很少。因此就有了这个教程。这个教程将包含以下四个部分:

    1. RNNs介绍
    2. 使用Python和Theano实现RNN
    3. 理解BPTT算法和梯度消失问题
    4. GRU和LSTM的实现

    作为本教程的一部分,我们将实现一个基于RNN的语言模型。这个语言模型的应用是双重的:首先,使用它我们可以基于现实可能性对任意句子评分。这也可以用来衡量句子语法与语义的正确性。这样的模型通常也是机器翻译系统的一部分。第二点,使用这个语言模型可以生成新的文本(这个应用会更酷)。比如说,我们使用莎士比亚作品训练模型将能生成与莎士比亚相似的文本。Andrej Karpathy的博客给出了基于RNNs的字符级语言模型可以实现的很多任务。

    这里假定你已经对神经网络基础有一定了解。如果没有,你可以阅读我写的这个博客,这个博客给出了非递归网络的原理与实现。

    RNNs是什么?

    RNNs的背后原理是利用序列信息。在传统的神经网络中,我们假定所有的输入与输出都是相互独立的。但是对于很多问题,这是一个非常糟糕的想法。如果你想预测一个句子中的先一个单词,你最好知道它之前的单词。RNNs被称为递归神经网络是因为它对一个序列中的每个节点执行相同的任务,而且输出依赖于前面的计算。理解RNNs的另外一个方式是认为RNNs存在一个“记忆”,它能够捕获已经计算出的信息。理论上,RNNs可以利用任意长序列中的信息,但是实际上它们仅仅能够利用前面极少步的信息(后面会解释)。经典的RNNs如下所示:

    RNNs
    递归神经网络以及它在时间步长上展开的前向计算图(来源:Nature)

    上面的图将RNNs展开成一个全网络。通过展开,我们得到了全序列的网络。例如,如果我们研究的是5单词的句子序列,网络将被展开成5层神经网络,每一层对应一个单词。RNNs计算图中的公式如下:

    • xt 是在 t 步的输入。例如,x1对应是句子序列中的第二个单词的one-hot词向量。
    • st 是在 t 步的隐含层状态。它是网络的“记忆”。st通过上一步的隐含层状态与当前步的输入来进行计算: st=f(Uxt+Wst1) 。函数 f 通常是非线性的,比如tanhReLU。为了计算第一步的隐含层状态,必须要知道s1,通常它被全部初始化为0。
    • ot 是在 t 步的的输出。例如,如果我们想预测句子中的下一个单词,它将是词汇表上的一个概率向量:ot=softmax(Vst)

    有几点需要注意:

    • 你可以将 st 看做网络的记忆。 st 捕获了所有前面步中的计算信息。而输出 ot 的计算仅仅利用在 t 步的记忆。正如前面提及的那样,实际上处理st有点复杂,因为通常它不能捕获很多前面时间步的信息。
    • 传统的深层网络每层的参数是不同的,但是RNNs所有时间步上共享相同的参数( U,V,W )。这说明我们每个时间步执行相同的任务,仅仅是输入不同。这也大大减少了我们需要学习的参数总数。
    • 在上面的图中每个时间步都有输出,但是对于某些任务这可能不是必要的。例如,当做句子情感分析时,我们可能只关心最终的输出,而不是每个时间步的输出。同样,我们可能不需要在每个时间步都有输入。RNN的主要特征是它的隐含层状态能够捕获一个序列的一些信息。

    RNNs可以做什么?

    RNNs在NLP问题上已经取得了很大成功。此时,必须要说明的是最常用的RNNs模型是LSTMs,相比基本RNNs,它能够更好地捕获长期依赖。但是不要担心,LSTMs本质上与RNNs相同,在之后我们将会介绍,它们仅仅使用了一种计算隐含层状态的不同方法。后面的教程会详细介绍LSTMs。这里列出RNNs在NLP上的一些应用实例(并不是全部):

    语言建模和生成文本

    给定一个单词序列,我们想预测每个单词在给定前面的单词后的概率。语言模型允许我们衡量句子的可能性,这是机器翻译的一个重要输入(由于高概率的句子一般正确)。能预测下一个单词带来一个好处是我们可以得到一个生成模型,这允许我们可以通过输出概率进行抽样而生成新的文本。训练数据不同,我们可以得到各种各样的模型。语言建模的输入通常是单词序列(例如使用one-hot向量编码),输出是预测单词的概率。训练网络时,我们令 ot=xt+1 ,因为我们希望每一步的输出恰好是实际的下一个单词。

    语言建模和生成文本的相关论文如下:

    机器翻译

    机器翻译与语言建模的相同之处是源语言(比如德语)的输入也是单词序列。我们想要的输出是对应目标语言(比如英语)的单词序列。一个关键差别在于当我们看到了所有的输入后才开始输出,因为在翻译的句子中的第一个单词要依赖于从整个输入序列中捕获的信息。

    Machine Translation
    递归神经网络用于机器翻译(来源:http://cs224d.stanford.edu/lectures/CS224d-Lecture8.pdf

    机器翻译的相关论文如下:

    语音识别

    输入一个声波的声信号序列,我们可以预测一个语音序列以及它们的概率。

    语音识别方面的相关论文如下:

    生成图像描述

    结合卷积神经网络,RNNs已经被用于无标记图像描述生成模型的一部分。很惊奇的是其实现的效果。组合模型甚至将生成的文字描述与图像中的特征对其。

    Generating Image Descriptions
    用于生成图像描述的深层视觉语义对齐(来源:http://cs.stanford.edu/people/karpathy/deepimagesent/

    训练RNNs

    训练RNNs与训练传统神经网络类似。我们同样使用反向传播算法(BP),但是需要一些变化。因为网络中的参数在所有的时间步上是共享的,每个输出的梯度不仅仅与当前时间步的计算相关,而且依赖于前面的时间步。比如,为了计算 t=4 时的梯度我们必须反向传播到前面的 3 个时间步,然后总和这些梯度。这被成为通过时间的反向传播(BPTT)。如果这些介绍还很难理解,不用担心,后面会有一整篇文章详细介绍BPTT。现在,你要知道普通RNNs通过BPTT训练很难学习到长期依赖(比如在很远时间步间的依赖),这是由于梯度消失或者爆炸问题。存在一些方法来解决这些问题,还有些特定的RNNs(如LSTMs)是专门用来解决这类问题。

    RNN扩展

    多年来,研究人员开发了更复杂的RNN来处理普通 RNN模型的一些缺点。我们将在后面的文章中更详细地介绍这些内容,而这部分只作为简要概述,以便你熟悉这些模型的分类。

    双向RNNs基于这样的创想,即在时间t的输出不仅取决于序列中的先前元素,而且还取决于未来元素。例如,要预测序列中缺少的单词,你要了解上下文。双向RNNs非常简单。它们只是两个RNN相互堆积而成。然后基于两个RNN的隐含层状态计算输出。

    Bidirectional RNNs

    深层双向RNNs与双向RNNs相似,只是每个时间步是多层网络。因此实际上,它将有更高的学习能力(但是你也需要更大的训练样本)

    Deep bid RNNs

    LSTM网络在最近很受欢迎,我们在前面简单地介绍过。 LSTM与RNN基本架构相同,但是它们使用不同的函数来计算隐含层状态。 LSTM中的记忆称为单元,你可以将它们视为黑箱,其输入是前一状态 ht1 和当前输入 xt 。内部的这些单元决定记忆中哪些部分保存与遗忘。然后,它们组合先前的状态,当前记忆和输入。事实证明,这些类型的单元在捕获长期依赖性方面非常有效。 LSTMs在刚开始接触时非常难懂,但如果你感兴趣,你可以从这篇文章中学习到更多。

    结语

    目前为止一切都很好。我希望你已经对RNNs是什么以及能做什么有一个基本的了解。在下一篇文章我们将使用Python和Theano实现RNN语言模型的第一个版本。请在评论里提问题!

    展开全文
  • 1.网络层向上提供的服务有哪两种?试比较其优缺点。 解答:面向连接的虚电路服务和无连接的数据报服务。 2.请简述网络层的转发和选路两个重要功能的区别和联系。 答:转发指从路由器的输入链路接收分组,根据转...
  • Netica用于构建贝叶斯网络教程

    万次阅读 2019-05-29 15:13:33
    最近在尝试构建贝叶斯网络,找了很多方式,发现用Netica工具是最容易上手的。构建成的贝叶斯网络节点的变量是离散型(连续型在构建的过程中Netica会用区间的形式化为离散) 以下是找到的参考资料: 1.Netica下载...
  • 史上最详细的Kali Linux破解Wifi无线网络教程

    万次阅读 多人点赞 2018-07-14 19:01:17
    有人说,我会用WiFi万能钥匙就是懂破解了?这想法的确是有点天真,如果说出去可能会被人取笑。首先今天给大家讲解下Wifi破解的原理。 1、Wifi万能钥匙的工作原理是共享收集 ...查看更详细的视频教程>>
  • 解决方法 通过设置带来解决 更多
  • 虽然计算机网络与电信网络和有线电视网络一样,都是一种通信基础设施,但与这两个网络最大的不同在于计算机网络的端设备是功能强大且具有智能的计算机。利用计算机网络这个通信基础设施,计算机上运行的各种应用程序...
  • 在树莓派上搭建ad-hoc网络教程

    千次阅读 2016-12-01 13:38:42
    最近实验室做的一些工作需要使用树莓派并且使用其无线网卡的ad-hoc模式,于是笔者上网搜了一下相关教程。发现大部分的教程都是直接介绍在ubuntu或者windows下的设置,对于树莓派介绍的比较少,因此笔者整理了自己...
  • 用Word制作的《算机网络》(谢希仁)第二版 教案
  • 文章目录群晖安装Docker启用open switchDocker创建桥接网卡创建Arm环境创建甜糖常见问题甜糖提示离线,或者无网络等问题手机搜索不到,如何生成二维码群晖重启后,甜糖会一直循环重启 群晖安装Docker 在套件中心...
  • 参考文章 更多内容
  • 卷积神经网络教程与学习资料整理

    千次阅读 2016-11-15 15:21:25
     自己学习卷积神经网络也有大半个月了,现在想想整个过程还是很坎坷的。其中的一部分原因应该是自己比较依赖中文博客,倒不是因为写得不好,更多的是因为内容不完整和系统化。就像如果我连卷积神经网络是三维结构都...
  • 虽然计算机网络与电信网络和有线电视网络一样,都是一种通信基础设施,但与这两个网络最大的不同在于计算机网络的端设备是功能强大且具有智能的计算机。利用计算机网络这个通信基础设施,计算机上运行的各种应用程序...
  • 第5章 ...当位于网络边缘部分的两台主机使用网络核心部分的功能进行端到端的通信时,只有主机的协议栈才有运输层,而网络核心部分中的路由器在转发分组时都只用到下三层的功能。 虽然网络层实现了...
  • 计算机网络(可简称为网络)把许多计算机连接在一起,而互联网则把许多网络连接在一起。因特网是世界上最大的互联网。 以小写字母i开始的internet(互联网或互连网)是通用名词,它泛指由多个计算机网络互连而成的网络...
  • 重难点微课视频 目录 GBN协议【回退N帧协议】 SR 协议【选择重传协议】 ...转载自 《计算机网络教程第五版|微课版》著者:谢钧、谢希仁 点我回顶部 ☚               Fin.
  • tf.summary.scalar('Generator_loss', g_loss) tf.summary.scalar('Discriminator_loss_real', d_loss_real) tf.summary.scalar('Discriminator_loss_fake', d_loss_fake) images_for_tensorboard = generator(z_...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 411,132
精华内容 164,452
关键字:

网络教程