20180908 2018-2019-2 《密码与安全新技术专题》第5周作业
课程:《密码与安全新技术专题》
班级: 1892
姓名: 杨晨曦
学号:20189208
上课教师:谢四江
上课日期:2019年3月26日
1.本次讲座的学习总结
一、密码分析与机器学习(machine learning)
专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。
机器学习的步骤:
数据源-分析-特征选择-向量化-拆分数据集-训练-评估-文件整理-接口封装-上线
密码分析与机器学习相似,机器学习在密码分析的应用:
破解DES遗传算法、用于侧信道分析的支撑向量机算法等
二、深度学习
深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。
深度学习是机器学习中一种基于对数据进行表征学习的方法。观测值(例如一幅图像)可以使用多种方式来表示,如每个像素强度值的向量,或者更抽象地表示成一系列边、特定形状的区域等。而使用某些特定的表示方法更容易从实例中学习任务(例如,人脸识别或面部表情识别)。深度学习的好处是用非监督式或半监督式的特征学习和分层特征提取高效算法来替代手工获取特征。
深度学习模型:
有监督学习-如:卷积神经网络(Convolutional neural networks,简称CNNs)
无监督学习-如-深度置信网(Deep Belief Nets,简称DBNs
其中卷积神经网络(CNN:ConvolutionalNeural Networks)、循环神经网络(RNN:RecurrentNeuralNetworks)、 生成对抗网络(GAN:GenerativeAdversarialNetworks)等在大数 据分析、图像识别、机器翻译、视频监控中取得了较大进步。
视觉大数据时代模型学习的突破:端到端深度学习
不再区分特征提取和模式分类
通过深度神经网络(DNN)非线性模拟从pixel到label的;映射关系
适用于解决大数据时代复杂多百年的视觉感知任务
特征学习:仿人脑的层级表达
应用包括自动上妆、imageQA、图像风格图像验证码、美感评价、
三、深度学习与密码分析
一方面生成人可能设置的密码、一方面去识别设定密码的是人还是机器。
(1)基于卷积神经网络的侧信道攻击
(2)基于循环神经网络的明文破译
(3)基于生成对抗网络的口令破解
(4)基于深度神经网络的密码基元识别
利用深度学习破解数学难题为基础的密码。
四、深度学习与密码设计
利用深度学习设计新的高强度密码-生成对抗网络GAN:Generative Adversarial Network
其他应用:
GAN–二次元人物頭像鍊成
GAN–真实图像生成
2.学习中遇到的问题及解决
- 问题1:深度学习能否取代人脑?
- 问题1解决:基于大量数据样本的计算要求数据可信且数量巨大。人脑在小样本事件和常识面前更有优势
- 问题2: 深度学习发展方向
- 问题2解决: 半监督学习和极小样本学习(one-shot learning):这能够减少训练所需的数据,使人工智得到更广泛的应用。
3.本次讲座的学习感悟
深度学习还有好多需要发展的领域呢未来也许能够可靠地学习如何控制机器人的强化学习算法,学习如何学习的算法,以及普适深度学习算法(可以重新设计它们自己的架构,自行优化超参数的算法)。现在,我们依然需要人类专家来运行“学习如何学习”的算法,未来这一过程可能被简化,而那些当前与AI关联甚少的行业也能受益于AI的成果。
服务于网络安全的机器学习,以及机器学习自身的网络安全:越来越多的网络攻击使用机器学习来生成恶意软件,这些软件能有效率地躲过漏洞模糊测试。同时,更多的网络防守软件也会用到机器学习,从而给出比人类更快的反应,检测更多细微的入侵。不同阵营的机器学习算法会互相欺骗对方,进行攻防大战。
未来深度学习会继续在大众文化中扩张,我们会看到越来越多的艺术家和流行文化引领者们用深度学习去做我们意想不到的事。我认为Alexei Efros的实验室和像CycleGAN这样的项目就是这个潮流的开端。
4.Deep Learning最新研究现状
一、Dropout: a simple way to prevent neural networks from overfitting
具有大量参数的深度神经网络是非常强大的机器学习系统。然而,过度拟合是这种网络中的严重问题。大型网络使用起来也很慢,因此在测试时通过组合许多不同的大型神经网络的预测很难处理过度拟合。Dropout是一种解决此问题的技术。关键思想是在训练期间从神经网络中随机丢弃单位(及其连接)。这可以防止单位共同适应太多。在训练期间,从指数数量的不同“稀疏”网络中抽取样本。在测试时,通过简单地使用具有较小权重的单个未加网络的网络,很容易近似平均所有这些稀疏网络的预测的效果。这显着减少了过度拟合,并且比其他正则化方法有了重大改进。辍学提高了神经网络在视觉,语音识别,文档分类和计算生物学中监督学习任务的性能,在许多基准数据集上获得了最先进的结果。
二、DeepWalk: online learning of social representations
介绍了DeepWalk,这是一种用于学习网络中顶点的潜在表示的新方法。这些潜在的表示在连续向量空间中编码社会关系,这很容易被统计模型利用。DeepWalk概括了语言建模和无监督特征学习(或深度学习)从单词到图形序列的最新进展。
DeepWalk使用从截断的随机游走中获取的本地信息,通过将步行视为句子的等效来学习潜在表示。演示了DeepWalk针对社交网络(如BlogCatalog,Flickr和YouTube)的多个多标签网络分类任务的潜在表示。结果表明,DeepWalk优于具有挑战性的基线,这些基线允许全球网络视图,尤其是在缺少信息的情况下。当标记数据稀疏时,DeepWalk的表示可以比竞争方法提供高达10%的F1分数。在一些实验中,DeepWalk的表示能够胜过所有基线方法,同时使用的训练数据减少60%。
DeepWalk也是可扩展的。它是一种在线学习算法,可以构建有用的增量结果,并且可以简单地并行化。这些特性使其适用于广泛的现实世界应用,例如网络分类和异常检测。
三、TensorFlow: a system for large-scale machine learning
TensorFlow是一种机器学习系统,可在大规模和异构环境中运行。Tensor-Flow使用数据流图来表示计算,共享状态以及改变该状态的操作。它将数据流图的节点映射到集群中的多台计算机上,并映射到跨多个计算设备的计算机内,包括多核CPU,通用GPU和定制设计的ASIC(称为张量处理单元(TPU))。这种架构为应用程序开发人员提供了灵活性:在以前的“参数服务器”设计中,共享状态的管理内置于系统中,TensorFlow使开发人员能够尝试新颖的优化和训练算法。TensorFlow支持各种应用程序,重点是深度神经网络的训练和推理。一些Google服务在生产中使用TensorFlow,已将其作为开源项目发布,并且已广泛用于机器学习研究。在本文中,我们描述了TensorFlow数据流模型,并展示了TensorFlow为多个实际应用程序实现的引人注目的性能。
四、node2vec: Scalable Feature Learning for Networks
在网络中的节点和边缘上的预测任务需要在学习算法所使用的工程特征方面花费精力。最近在更广泛的表征学习领域的研究通过学习特征本身在自动化预测方面取得了重大进展。然而,目前的特征学习方法不足以捕获网络中观察到的连接模式的多样性。提出node2vec,一个算法框架,用于学习网络中节点的连续特征表示。在node2vec中,学习了节点到特征的低维空间的映射,这最大化了保留节点的网络邻域的可能性。定义了一个灵活的节点网络邻域概念,并设计了一个有偏差的随机游走程序,它有效地探索了不同的社区。我们的算法推广了基于网络邻域的严格概念的先前工作,探索邻域的额外灵活性是学习更丰富表示的关键。
展示了node2vec在多个领域的多个真实网络中对多标签分类和链路预测的现有最先进技术的有效性。代表了一种有效学习复杂网络中最先进的任务无关表示的新方法。
五、Learning deep structured semantic models for web search using clickthrough data
潜在的语义模型(例如LSA)意图在基于关键字的匹配经常失败的语义级别将查询映射到其相关文档。在本研究中,开发一系列具有深层结构的新潜在语义模型,该模型将查询和文档投影到一个共同的低维空间中,其中给定查询的文档的相关性很容易计算为它们之间的距离。通过使用点击数据最大化给定查询的点击文档的条件可能性,对所提出的深度结构化语义模型进行区别训练。为了使模型适用于大规模Web搜索应用程序,还使用了一种称为单词散列的技术,该技术可以有效地扩展语义模型,以处理在此类任务中常见的大型词汇表。使用真实世界的数据集在Web文档排名任务上评估新模型。结果表明,最佳模型明显优于其他潜在语义模型,这些模型在本文所述工作之前的性能中被认为是最先进的。
参考资料
- Dropout: a simple way to prevent neural networks from overfitting
- DeepWalk: online learning of social representations
- TensorFlow: a system for large-scale machine learning
- node2vec: Scalable Feature Learning for Networks
- Learning deep structured semantic models for web search using clickthrough data