网络安全 从零基础到精通,收藏这篇就够了!

网络安全学习路线,小白必备 趁着今天下班,我花了几个小时整理了下学习路以及我的学习心得,非常不易,希望大家可以点赞收藏支持一波,谢谢。 阅读详情

2024网络安全从入门到精通(超详细)学习路线,看这一篇就够了!

首先看一下学网络安全有什么好处:

1、可以学习计算机方面的知识

在正式学习网络安全之前是一定要学习计算机基础知识的。只要把网络安全认真的学透了,那么计算机基础知识是没有任何问题的,操作系统、网络架构、网站容器、数据库、前端后端等等,可以说不想成为计算机方面的专家都难。

2、可以伪装成酷酷的黑客

学习网络安全之后就可以接触到一些比较强大,外行人“看不懂”的软件的操作系统,这些东西在外行人眼里都是非常炫酷的。比如在Linux系统里面,终端打开,黑框框里,一顿命令猛如虎,如果这时候你身边有外行的异性经过,那么绝对可以收获大量的崇拜目光。

3、可以得到一份不错的收入

网络安全从业人员的收入还是非常不错的,和很多其他行业比起来,还要远高于很多行业。如果想要转变发展领域,或者想增加一下自己的收入,可以考虑拿出一段时间来安心的学习网络安全知识。我自己就是这种情况,了解到了市场需求和岗位情况之后,果断转行。

随着国家信息化的发展,我国对于网络安全人才的需求量也大大增加,而现在一个科班出身的网络安全人才真的很难找。要不就是有的自称网络安全工程师侃侃而谈,一旦让他在Linux下配置,还真的未必能会配。所以,哪个甲方不愿意找一个懂得更多的人呢?

4、为了“爱和正义”

从事网络安全的工作,提升到情怀的层面来说,这项工作确实也是可以保护一方平安的,虽然对于网络安全的工作来说,没有消息就是最好的消息,确实网络安全的工作都是在幕后,但是幕后也有大英雄。就像《三体》里面的执剑者罗辑一样,当人们都习以为常,甚至不曾觉得他的存在,但是他的存在在保护着地球的平安,直到后来被圣母程心接棒以后,人们才感觉到了罗辑的重要性。幕后的英雄有合适的机会也会走到台前,接受鲜花和掌声。就像《孤勇者》的歌词里写的:谁说站在光里的才算英雄。如果没有一点点的情怀,没有热爱,学习网络安全,一定会产生枯燥的情绪。但我们要体会的是那种干了拯救地球的事情之后,还能表现出深藏功与名的淡然。

网络安全学什么?

1、网络安全法

网络并不是狂徒张三的法外之地,在学习网络安全技术之前,首先要学会如何在法律范围之内行事。在2017年6月1日,我国第一部网络安全法《中华人民共和国网络安全法》正式实施,我国网络安全管理迈入法治新阶段。所以,我们学习的第一课就是网络安全的普法课程。

所以,在法律的界限里,先要知道底线在哪里,以前没有网络安全法的时候,有些界限是模糊的,现在我们要严格在网络安全法的范围内活动,不然真的如江湖传言:网络安全,从入门到入狱;Kali学的好,局子进的早;渗透学得好,牢饭吃到饱。

2、黑客守则

听到黑客这个词,肯定觉得和犯罪沾边,但是现在的黑客并不是这样,千万不要觉得黑客是罪犯,其实“黑客”这个词语在刚出来的时候,就像内裤外穿的超人一样,是正义的化身,是一个褒义词。可是近几年,随着一些不讲武德的人占比越来越高,使得这个词语被无情丑化。我们学习网络安全的初心是正义和爱,这个是坚持100年甚至一直不动摇的初心使命,所以我们也要有一些规矩。

3、技术

阶段一:基础部分

Windows部分

基础命令、PowerShell的使用和简单脚本编写

组件:注册表、组策略管理器、任务管理器、事件查看器

另外,可以先学习一下怎么在Windows上搭建虚拟机,学会安装系统,为接下来学习Linux做准备

Linux部分

主要学习如何使用,学习文本编辑、文件、网络、权限、磁盘、用户等相关的命令,要建立一个Linux的基本认知。

这个阶段的误区就是小白很容易一上来就学Kali,连基本的概念都没懂,就去学习使用工具,属于典型的本末倒置。

计算机网络部分

从局域网出发,了解计算机通信的基本网络——以太网

局域网如何通信?

集线器、交换机之间的区别?

MAC地址、IP地址、子网、子网掩码的作用?

随后就要了解广域网、互联网,通过七层和四层模型快速建立起计算机网络的基础概念,各层协议的作用,分别有哪些协议,这些协议在当今的互联网中具体是怎么应用的。

Web基础部分

学习网络安全,就离不开web。Web安全是网络渗透中非常重要的一个组成部分。

掌握HTML+CSS+JS的开发使用

这一部分需要自己动手的会多一些,比如熟悉掌握Javascript、了解Ajax、学习JQuery

数据库基础部分

主要学习一些理论知识,重点掌握库、表、索引概念,学习SQL编写,学会增删改查数据

阶段二:进一步学习基础

Web进阶

学习Apache和Linux的基本知识

动态网页基本原理

CGI/Fast-CGI过渡到ASP/PHP/ASPX/JSP等动态网页技术,了解它们的发展历史,演变过程和基础的工作原理。

Web开发中的基础知识:表单的操作、Session/Cookie、JWT、LocalStorage等等,了解这些基本的术语都是什么意思,做什么用,解决了什么。

PHP编程

选择PHP是因为它更放方便我们研究安全问题。

需要学习:语法基础,基本的后端请求处理,数据库访问,然后再接触一下常用的ThinkPHP框架

计算机网络进阶

HTTP/HTTPS以及抓包分析

inux上的tcpdump必须掌握,包括常见的参数配置

学习Wireshark分析数据包,用Fiddler抓取分析加密的HTTPS流量。

加解密技术

包括base64编码、对称加密、非对称加密、哈希技术等等。

阶段三:中级技术

Web安全入门

Web安全领域内几大典型的攻击手法:SQL注入、XSS、CSRF、各种注入、SSRF、文件上传漏洞等等,每一个都需要详细学习,一边学习理论,一边动手实践。

这里需要自己在虚拟机中搭建一些包含漏洞的网站,如果在互联网上的网站来攻击是会被请去喝茶的。

网络扫描与注入

学习如何寻找攻击点,获取目标信息

信息包括:目标运行了什么操作系统,开放了哪些端口,运行了哪些服务,后端服务是什么类型,版本信息是什么等等,有哪些漏洞可以利用,只有获取到了这些信息,才能有针对性的制定攻击手段,拿下目标。

需要学习常用的扫描工具以及它们的工作原理。

信息搜集与社会工程学

whois信息用来查询域名信息,shodan、zoomeye、fofa等网络空间搜索引擎检索IP、域名、URL等背后的信息,Google Hacking利用搜索引擎来检索网站内部信息,这些东西都是在网络信息搜集中经常用到的技能。

暴力破解

学习爆破工具hydra、超级弱口令、mimikatz

阶段四:安全防御和检测

WAF技术

需要学习web应用防火墙。掌握WAF工作原理,找到弱点绕过检测,或者加强安全检测和防御能力

需要学习当下主流的WAF软件所采用的架构比如openresty、modsecurity,以及主要的几种检测算法:基于特征的、基于行为的、基于机器学习的等等。

网络协议攻击 & 入侵检测

掌握TCP劫持、DNS劫持、DDoS攻击、DNS隧道、ARP欺骗、ARP泛洪等等传功经典攻击手段的原理

日志技术

系统登录日志(Windows、Linux)、Web服务器日志、数据库日志等

Python编程

学习编程开发,编写爬虫、数据处理、网络扫描工具、漏洞POC等等

浏览器安全

需要重点掌握IE、Chrome两款最主流的浏览器特性,浏览器的沙盒机制是什么,同源策略和跨域技术等等。

阶段五:高级技术

第三方组件漏洞

学习目前互联网服务中实际使用的一些工程组件,比如Java技术栈系列Spring全家桶、SSM、Redis、MySQL、Nginx、Tomcat、Docker等等。

内网渗透

学习在渗透过程中如何转移,在攻下一个点之后,控制更多的节点。这个部分理论少,实战多,需要搭建靶场环境模拟学习

操作系统安全技术 & 提权技术 & 虚拟化技术

阶段六:成熟阶段

CobalStrike & MetaSploit

通过这两个神奇可以对前面学习的信息扫描、漏洞攻击、内网渗透、木马植入、端口反弹等等各种技术进行综合运用,融会贯通。

其他安全技术拓展

到了网络渗透的后期阶段,想成为一个安全高手,绝不只是固步自封在自己擅长的领域,需要多学习网络安全的其他领域,拓展自己的知识面。

比如二进制漏洞攻击、逆向工程、木马技术、内核安全、移动安全、侧信道攻击等等,当然在学习的时候,不用像专业方向的同学那么深入,但需要涉猎了解,丰富自己的知识面,构建全方位的网路安全知识技能栈。

三、一些学习感悟

其实网络安全的知识都非常有趣,如果你能够认真学习,那么网络安全的很多知识点都会让你沉迷其中,学完之后大喊:好爽…原来电脑如此有趣。当然,学习任何东西刚开始都是不容易的,刚开始都是比较吃力的,特别是许久不怎么学习的同学,心理上是有点排斥,也很难进入学习状态。

但是遇到困难,进不去状态的时候不能放弃,因为学习其实就是自己和自己对抗的过程,用专业一点的解释来说,就是人类的大脑里面有个零件叫伏隔核,静不下心来学习就是这个东西在从中作梗,而我们每个人的脑中都有这样的东西。所以,每个人都会面临这样的困难,面对困难我们应该想办法解决。这里给大家一个小方法,对我来说比较有用,可以先欺骗自己,心里想着:就学习几分钟,几分钟之后就可以刷抖音刷番,还可以约上朋友一起喝着啤酒吃着烧烤。但是通常情况下,几分钟之后心就静下来了,就可以继续认真学习了。

其实我学习网络安全尝试过很多种方式,最开始就是自学。在这个过程中碰到的最大的问题就是不知道从何下手,通常情况下在网上找到的学习路线都是不完整或者过时的,而且就算找到了合适的学习路线大纲,找相关知识点的内容也比较麻烦。自学的时候我通常自嘲网络安全其实只需要学两点:这也要学、那也要学。由于内容过于冗杂,所以导致了学习的过程更加艰难。

但是这些问题后来都变成了一些小问题,因为我最终还是放弃了周期长的自学,选择培训。在培训学习期间,老师已经根据当下市场情况和企业用人需求以及我们的基本情况整理了非常完整的学习大纲。上面所说的难以进入学习状态的问题也引刃而解,大家在一个教室里面上课,在浓厚的学习氛围的烘托下,只会越学越带劲。

网络安全入门的时候也非常容易眼高手低,有些相关书籍看完之后觉得非常高大上,知道的理论也非常前沿,但是一旦开始动手操作就开始犯难。在Linux下手动配一个IP地址也不会…要么就是会一些基本操作,系统的网络安全知识框架还是零碎的,未组件的。

后来能够跟着老师学习,能够系统的学习网络安全知识,能够动手操作之后,这些困惑似乎也都不是什么大事了。不管是通过什么方式学习网络安全,不管以前有没有基础,都从头开始学习,一定是没错的。在学习的时候能够把知识更加科学合理的梳理一下,更能够巩固知识。

黑客/网络安全学习包

资料目录

  1. 成长路线图&学习规划

  2. 配套视频教程

  3. SRC&黑客文籍

  4. 护网行动资料

  5. 黑客必读书单

  6. 面试题合集

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

1.成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

2.视频教程

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。


因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

3.SRC&黑客文籍

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:

黑客资料由于是敏感资源,这里不能直接展示哦!

4.护网行动资料

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

5.黑客必读书单

**

**

6.面试题合集

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。

更多内容为防止和谐,可以扫描获取~

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

网络安全学习路线图(2023版详解) 近期,大家在网上对于网络安全讨论比较多,想要学习的人也不少,但是需要学习哪些内容,按照什么顺序去学习呢?其实我们已经出国多版本的网络安全学习路线图,一直以来效果也比较不错,本次我们针对市场需求,整理了一套系统的网络安全学习路线图,供大家学习参考。希望大家按照路线图进行系统学习不仅可以更高效的完成上岸,还能够系统化学习,提升自己的后期竞争力。 阅读详情

相关推荐

基于深度学习的干扰识别

本文是记录我上半年仿真和复现干扰识别的过程,展示的主要是一些需要注意的点以及仿真的相关结果。

qq_55218335的博客 1702

网络安全学习路线+自学笔记(超详细) 自学网络安全看这一篇就够了

本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。脱离这个基础,就容易陷入纸上谈兵的境地,出现“知其然,不知其所以然”的情况,这在安全职业道路上难以取得长远成就。在这一阶段,我们有多种选择,例如优快云、知乎、B站等平台上有许多人分享他们的学习资料。许多免费分享的教程零散而杂乱,缺乏前后衔接,学习过程中容易感到困惑,这也是我在自学过程中亲身体会到的。然而,随着学习深入或者工作经验的积累,不同方向的技术耦合逐渐增加,要求在各个方向都能有一定的了解。

Galaxy_0的博客 3427

深入浅出:.sh文件在Linux系统中的实战应用与技巧

本文深入浅出地介绍了.sh文件在Linux系统中的实战应用与技巧。从基础概念入手,详细讲解了Bash脚本的运行方法、权限管理,并通过编写自动化备份脚本等实例,展示了如何利用Shell脚本提升工作效率。文章还涵盖了脚本调试、错误处理以及函数、参数解析等进阶技巧,帮助读者从入门到精通,掌握这一强大的自动化工具。

weixin_29243279的博客 346

安全圈最被低估的10个神器:一个比一个强大,大佬都在偷偷用!零基础入门到精通,看这篇就够了!赶紧收藏!

这些冷门的网络安全工具是你工具箱中的强大补充,它们提供了独特的功能,覆盖从侦察到漏洞利用的多个环节。虽然像 Nmap 和 Burp Suite 这样的工具不可或缺,但探索像 CyberChef、BloodHound 和 Impacket 这样的“宝藏工具”能让你在网络安全工作中更加高效和灵活。

baimao__Ch的博客 4673

Ollama-OCR实战:5分钟搞定PDF文档转Markdown(附qwen2.5vl模型配置)

本文详细介绍了如何利用Ollama本地部署多模态大模型qwen2.5vl,结合OCR技术,实现PDF文档到Markdown的端到端智能转换。通过解析传统OCR的局限与AI方案的优势,并提供从环境搭建、提示词工程到处理复杂表格的完整实战指南,帮助用户高效构建自动化文档处理流水线,彻底重塑文档处理工作流。

yog99的博客 603

Spring AI Alibaba实战训练营-13语音生成应用开发指南

本文介绍了如何基于Spring AI Alibaba创建DashScope语音应用,支持文本转语音(TTS)和语音转文本(STT)功能。主要内容包括:1)环境准备要求Java 17+、Maven 3.6+及阿里云DashScope API Key;2)通过Spring Initializr创建项目并配置相关依赖;3)设置API密钥的安全配置方法;4)实现语音合成的同步和流式功能,包括创建控制器类、调用API接口及保存语音文件。文章提供了详细的代码示例和配置说明,帮助开发者快速搭建语音处理应用。

program哲学 402

网络安全这点事儿,从零基础到精通,收藏这篇就够了!

网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。

HUANGXIN9898的博客 1155

(一)深入理解Bluez协议栈之蓝牙Mesh的支持(1/5)

BlueZ是Linux官方蓝牙协议栈。它是一个基于GNU General Public License (GPL)发布的开源项目,从Linux 2.4.6开始便成为Linux 内核的一部分。如果你是linux平台开发蓝牙的的工程师,肯定会接触过Bluez协议栈,hciconfig,hciattach,hciconfig等工具都是很好用的工具。

3321

网络安全面试30问,从零基础到精通,收藏这篇就够了!

1.解释:XSS攻击,就是黑客往你信任的网站里“掺沙子”,注入恶意脚本,在你浏览器里执行。。XSS分三种:反射型、存储型、DOM型,都是磨人的小妖精!解释:CSRF攻击,就是。比如,伪装成银行链接骗你点,然后偷偷转账,简直防不胜防!解释:文件上传功能如果没做好安全措施,就等于给黑客开了后门。他们可以上传恶意文件(比如带病毒的脚本),。解释:如果你的应用允许用户直接访问内部对象(比如数据库记录),又没有严格的权限控制,黑客就能,偷偷溜进去,访问不该看的数据。解释:服务器或应用的配置如果出了岔子,就可能。

QIANDXX的博客 1783

第4章--CANoe library开发 - 诊断功能

因为专栏要做的是汽车ECU自动化测试程序,测试的是ECU的诊断和刷新,因此就需要利用CANoe的接口,开发一些方便使用的诊断报文收发函数。

j187067046的博客 1396

【入门AUTOSAR网络管理测试】RSS-PBM状态转换

随着智能电动汽车行业的快速发展,目前AUTOSAR网络管理也得到了广泛应用,AUTOSAR网络管理测试也是汽车网络测试中非常重要的环节,NM问题导致的汽车ECU不能唤醒、电瓶亏电等问题,对于新入门AUTOSAR网络管理测试的同学不清楚如何开展测试,那么本章节就主要给大家介绍网络管理中RSS-PBM状态转换如何测试。【入门AUTOSAR网络管理测试】AUTOSAR网络管理规范需求解读。

测试领域技术分享 869

网络安全【聊聊CTF比赛】,从零基础到精通,收藏这篇就够了!

逆向工程(Reverse):题目就是一个软件,但通常没有软件的源代码,需要利用工具对软件进行反编译甚至反汇编,从而理解软件内部逻辑和原理,找出与flag计算相关的算法并破解这个算法,获取flag。漏洞挖掘与漏洞利用(PWN、EXPLOIT):访问一个本地或远程的二进制服务程序,通过逆向工程找出程序中存在的漏洞,并利用程序中的漏洞获取远程服务器的部分或全部权限,拿到flag。这也是耗费了大白近四个月的时间,吐血整理,文章非常非常长,觉得有用的话,希望粉丝朋友帮忙点个**「分享」

Python_0011的博客 1175

SAP Word 模板与 ABAP XML 数据流合并机制深度解析

Office Open XML 标准把一个.docx拆分成多个部件(document.xml、customXml\item1.xml 等),天然支持命名空间与 XPath;Word 在渲染时,会扫描<w:sdt>(结构化文档标签)与来确定绑定关系;在 ABAP 端,通过简单字符串替换与 XSLT 变换即可完成数据灌入,无需 COM Automation,安全且易于调试。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 371

什么是网络安全?零基础入门到精通,看这篇就够了!赶紧收藏!

网络安全是指用于防止网络攻击或减轻其影响的任何技术、措施或做法。网络安全旨在保护个人和组织的系统、应用程序、计算设备、敏感数据和金融资产,使其免受简单而不堪其绕的计算机病毒、复杂而代价高昂的勒索软件攻击,以及介于两者之间的各种攻击。网络攻击能够扰乱企业经营,损害企业利益,甚至让企业瘫痪,而且受害者付出的代价还在不断上升。

2401_84578953的博客 1241

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

2025,网络安全的惊涛骇浪与破局之道,从零基础到精通,收藏这篇就够了!

零日漏洞(未被公开或修复的漏洞)数量激增,攻击者利用自动化工具(如AI驱动的漏洞扫描)快速定位并攻击企业系统。综上,2025年全球网络安全形势严峻,针对企业的网络攻击呈现智能化、复杂化和高破坏性特点。在科技飞速发展的 2025 年,网络世界看似一片繁荣,实则暗潮涌动,网络安全领域正面临着前所未有的严峻挑战。这也是耗费了大白近四个月的时间,吐血整理,文章非常非常长,觉得有用的话,希望粉丝朋友帮忙点个**「分享」,借 AI 钓鱼、伪造绕过防御,加密关键供应链数据,威胁公开敏感信息,瘫痪企业、冲击行业。

leah126的博客 760

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

【2025版】最新事关网络安全,这些弱口令别用了!从零基础到精通,收藏这篇就够了!

如果用户在这些系统中设置了“弱口令”,极易成为黑客利用密码字典进行自动撞库攻击的目标,一旦账户被非法访问,不仅个人隐私信息面临泄露的风险,还可能导致财产损失,甚至对学校声誉和形象造成不良影响。如果我们在多个平台同时使用同一个弱口令,一旦密码被泄露,攻击者即可尝试使用这个密码登录其他平台上的账户,可能导致数据泄露、财务损失等风险。6.不要使用同一个口令:在多个帐户之间使用不相同的口令,同时尽量至少90天内更换一次口令,防止未被发现的入侵者继续使用该口令。往下看,对照一下,你的密码符合吗?

leah126的博客 1212

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

上一篇: RAG优化大法:20+招式助你玩转大模型应用!从零基础到精通,收藏这篇就够了!
下一篇: 小白入门网络攻防?从零基础到精通,收藏这篇就够了!
程序员_大白
博客等级 码龄5年 1万+粉丝 4001原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值