首页 > 技术 > 电力信息化 > IT互联网 > 正文

如何用深度学习实现网络安全

2018-08-20 10:55:25 来源:网络

二、前馈神经网络概述

人工神经网络的灵感来自生物神经网络。神经元是生物神经系统的基本单元。每一个神经元由树突、细胞核和轴突组成。它通过树突接收信号,并通过轴突进行传递(图1)。计算在核中进行。整个网络由一系列神经元组成。

AI研究人员借用这个原理设计出人工神经网络(Artificial Neural Network,ANN)。在这样的设置下,每个神经元完成三个动作:

  • 它收集来自其他不同神经元的输入或者经过加权处理的输入
  • 它对所有的输入进行求和
  • 基于求和值,它调用激活函数

因此,每个神经元可以把一组输入归为一类或者其他类。当仅使用单个神经元时,这种能力会受到限制。但是,使用一组神经元足以使其成为分类和序列标记任务的强大机制。

一个生物神经元和一个人工神经元

图1:我们能获得的最大灵感来自大自然——图中描绘了一个生物神经元和一个人工神经元

可以使用神经元层来构建神经网络。网络需要实现的目标不同,其架构也是不同的。常见的网络架构是前馈神经网络(Feed ForWard Neural Network,FFN)。神经元在无环的情况下线性排列,形成FFN。因为信息在网络内部向前传播,它被称为前馈。信息首先经过输入神经元层,然后经过隐藏神经元层和输出神经元层(图2)。

具有两个隐藏层的前馈网络

图2:具有两个隐藏层的前馈网络

与任何监督学习模型一样,FFN需要使用标记的数据进行训练。训练的形式是通过减少输出值和真值之间的误差来优化参数。要优化的一个重要参数是每个神经元赋予其每个输入信号的权重。对于单个神经元来说,使用权重可以很容易地计算出误差。

然而,在多层中调整一组神经元时,基于输出层算出的误差来优化多层中神经元的权重是具有挑战性的。反向传播算法有助于解决这个问题[6]。反向传播是一项旧技术,属于计算机代数的分支。这里,自动微分法用来计算梯度。网络中计算权重的时候需要用到梯度。

在FFN中,基于每个连接神经元的激活获得结果。误差逐层传播。基于输出与最终结果的正确性,计算误差。接着,将此误差反向传播,以修正内部神经元的误差。对于每个数据实例来说,参数是经过多次迭代优化出来的。

三、案例研究:使用深度学习检测TOR流量

网络攻击的主要目的是窃取企业用户数据、销售数据、知识产权文件、源代码和软件秘钥。攻击者使用加密流量将被盗数据混夹在常规流量中,传输到远程服务器上。

朋友圈热传垃圾分类列表 官方发声:错的!权威指南在这里朋友圈热传垃圾分类列表 官方发声:错的!

近期,一张包含103种垃圾的垃圾分类列表在网上热传,在湿垃圾干垃圾有害垃圾和可回收物这4个分类下,每一类都列出了20多种垃圾。因为内容详[详细]